【2023集创赛】芯原杯一等奖作品:基于芯原DSP核的智能语音SoC设计

本文为2023年第七届全国大学生集成电路创新创业大赛(“集创赛”)芯原杯一等奖作品分享,参加极术社区的【有奖征集】分享你的2023集创赛作品,秀出作品风采,分享2023集创赛作品扩大影响力,更有丰富电子礼品等你来领!

团队介绍

参赛单位:东南大学
队伍名称:一口气全队
指导老师:黄见秋
参赛队员:黎颖,李欣欣,甘云汉
总决赛奖项:一等奖

项目概述

本项目旨在设计一款基于芯原DSP (数字信号处理器)核ZSPNano的智能语音识别SoC芯片,基于芯原自主半导体IP搭建的技术平台,可以快速设计出满足不同应用的SoC产品,实现自主可控国产SoC芯片,帮助缩短产品的上市时间。该SoC芯片采用芯原公司自主研发的DSP核作为主控芯片,集成了高性能的语音信号采集、处理、识别等功能模块,实现语音信号的采集、处理和识别功能,将能够支持基于深度神经网络模型的智能语音识别算法和传统的语音识别算法。同时,该芯片还具备低功耗、低延迟、高精度等特点,适用于各种智能语音识别场景,可广泛应用于智能音箱、车载语音系统、语音翻译、智能家居、智能安防、智能手表、智能音箱等场景。该项目旨在为用户提供一种更加高效、便捷、安全的本地语音识别解决方案,推动智能语音识别技术的发展。

本项目的设计和开发基于ZSPNano的语音处理SoC设计平台和现有系统框架完成,配合现有DSP核、语音处理单元、存储器、I2C、I2S、PDM麦克风、WDT等功能模块,设计了能够满足系统需求的AMBA总线,实现音频数据输入输出、音频的数据处理与关键字判断识别、低功耗设计与综合。我们设计的基于芯原DSP核ZSPNano的智能语音识别SoC芯片包括以下内容:

  • 基于Design Spec规定的memory mapping,完成了AHB Bus的设计
  • 基于Design Spec规定的memory mapping,完成了APB Bus及AHB2APB Bridge的设计。
  • 完成了必要的功能验证及结果输出
  • 基于系统环境验证可靠,完成了低功耗及其唤醒的实现,其中包含低功耗软件实现与MFCC硬件加速实现。
  • 完成了对低功耗实现的验证与评估

硬件概述

在本项目中,硬件设计主要包含两部分,一部分是AMBA总线系统的设计,包括AHB总线矩阵以及AHB转APB桥;另一部分是语音梅尔倒谱系数(Mel-scaleFrequency Cepstral Coefficients,下文以MFCC代替)提取硬件电路,包括硬件基2蝶形FFT运算单元、梅尔滤波器组以及离散余弦变换(DCT)运算单元等数字系统构成。
我们的AMBA总线设计如下图所示
在这里插入图片描述

MFCC硬件设计如下图所示,该MFCC硬件包含5大模块:预处理模块、(512点)傅里叶变换模块、梅尔滤波器组、对数运算模块以及离散余弦变换模块,对其进行封装后,将总体模块根据数据流连接,并将输入输出寄存器组和控制寄存器映射到APB总线上。
在这里插入图片描述

为了实现对硬件电路的自动化验证,我们编写了一套从MATLAB定点化模型的输出输出到Verilog仿真模型的数据对比测试代码,分别在每一个计算模块的testbench中加入这些数据源输入、硬件输出捕获以及输出与MATLAB模型对比的task实现自动化仿真,并将出错的数据地址显示在终端中,以便轻松检查电路的设计是否有错误以及快速定位错误位置。

软件概述

在本项目中,系统流程如下图所示,分为初始化,sleep,ZSP_nano wake,system wake,结束(回到sleep)四个状态。
其中初始化状态对i2c和PDM进行初始化;
sleep状态根据赛题要求,仅开启PDM时钟,ZSPNano进入低功耗状态并保持;
倘若PDM读取中断且读满1帧数据,就由sleep状态进入ZSP_nano wake状态进行唤醒;
在ZSP_nano wake状态中,经过三层判断:第一层通过“短时能量、短时过零率双门限端点检测法”判断读取数据是否为有效;第二层通过MFCC特征提取,判断处理数据是否为语音;第三层通过关键词唤醒方法判断是否为“Hi Verisilicon”。倘若判定结果为否,则返回sleep状态,对任意一层皆适用;倘若前两层判断为是则进入下一层,最后一层判断为是则进入system wake状态唤醒。
system wake状态会开启外设时钟和i2s初始化并输出正弦波。在输出完后重新回到sleep状态。如此,一次完整的低功耗唤醒流程结束。
在这里插入图片描述

参赛感悟与总结

首先,非常感谢集创赛给了我们这样一个可以在实践中学习SoC设计的机会,也非常感谢指导老师的有力支持。

其次,我觉得我们团队是幸运的,不仅仅是我们的付出得到了肯定,更重要的是,在长达8个月的赛程中,我们信赖彼此,相互支持,共同成长,收获了珍贵的友谊、回忆,这些并肩作战的日子想必在遥远的以后也依然温热。

在赛程的每个阶段,我们都分工明确,每一个队员都能够在完成自己负责的部分的基础上,进行深入的思考:如何优化才能提高识别速度?有没有更多更好实现低功耗的方法?在通过讨论提出更好的方法后,我们能够将其落地实现。这些积极负责的态度也是我们团队能够走到最后的原因吧。

最后,衷心祝愿屏幕前的朋友能够找到志同道合的伙伴,享受比赛过程中挑战困难带来的快乐 o((>ω< ))o

参加极术社区的【有奖征集】分享你的2023集创赛作品,秀出作品风采,分享2023集创赛作品扩大影响力,更有丰富电子礼品等你来领!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/143166.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++之va_start、vasprintf、va_end应用总结(二百二十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

MASA MAUI iOS 文件下载与断点续传

文章目录 背景介绍方案及代码1、新建MAUI项目2、建立NSUrlSession会话连接3、使用NSUrlSessionDownloadTask 创建下载任务4、DidWriteData 监听下载5、DidFinishDownloading 完成下载6、CancelDownload (取消/暂停)下载7、ResumeDownload 恢复下载8、杀死进程-恢复下载 效果图总…

登录业务实现 - token登录鉴权

登录业务实现&#xff1a; 登录成功/失败实现 -> pinia管理用户数据及数据持久化 -> 不同登录状态的模板适配 -> 请求拦截器携带token&#xff08;登录鉴权&#xff09; -> 退出登录实现 -> token失效&#xff08;401响应拦截&#xff09; 1. 登录成…

Spring Boot 3.0:构建下一代Java应用的新方法

文章目录 Spring Boot 3.0&#xff1a;一览1. **模块化应用程序**2. **更强大的自动化工具**3. **更强大的安全性**4. **更好的性能和扩展性** 如何开始使用Spring Boot 3.01. 安装Spring Boot CLI2. 创建新项目3. 配置应用程序4. 编写业务逻辑5. 测试应用程序6. 构建和部署 结…

记录使用iText7查找PDF内容关键字坐标,加盖电子签名、印章

一、前言 项目以前签字都是由C端那边进行合成操作&#xff0c;最近项目要求把那块功能&#xff0c;由后端进行实现&#xff0c;其中包含坐标、关键字、任意位置进行签字操作&#xff0c;坐标是最容易实现的&#xff0c;曾经也写过类似的功能在&#xff08;添加图片印章到PDF&a…

印章篆刻小程序商城的作用是什么

印章的需求度也有很高市场需求&#xff0c;处理办公印章外&#xff0c;还有艺术类的&#xff0c;而对爱好者来说&#xff0c;需要找到一家靠谱的品牌制作&#xff0c;包括材料、样式、内容等都有较高要求&#xff0c;线上可以接触到更多雕刻商家。 而对品牌来说&#xff0c;需…

org.postgresql.util.PSQLException: Bad value for type long

项目用 springbootmybatis mybatisplus&#xff0c; 数据库是&#xff1a;postgresql 。 执行查询时候返回错误。 org.springframework.dao.DataIntegrityViolationException: Error attempting to get column city_id from result set. Cause: org.postgresql.util.PSQLExce…

华为云Stack的学习(七)

八、华为云Stack存储服务介绍 1.云硬盘EVS 云硬盘&#xff08;Elastic Volume Service&#xff0c;EVS&#xff09;&#xff0c;又名磁盘&#xff0c;是一种虚拟块存储服务&#xff0c;主要为ECS&#xff08;Elastic Cloud Server&#xff09;和BMS&#xff08;Bare Metal Se…

RabbitMQ消息可靠性保证机制--发送端确认

发送端确认机制 ​ RabbitMQ后来引入了一种轻量级的方式&#xff0c;叫发送方确认(publisher confirm)机制&#xff0c;生产者将信息设置成confirm&#xff08;确认&#xff09;模式&#xff0c;一旦信道进入了confirm模式&#xff0c;所有在该信道上面发送的消息都会被指派成…

对比接口测试工具在自动化测试优缺点:Jmeter、Python、Postman

一、JMeter 总结&#xff1a;适合对代码不敏感的使用人员&#xff0c;不会代码也可以完成接口自动化&#xff0c;设计框架。适合紧急迭代的项目。 JMeter接口测试的优势 小巧轻量级&#xff0c;并且开源免费&#xff0c;社区接受度高&#xff0c;比较容易入门支持多协议&…

数字音频工作站FL Studio 21中文版下载及电音编曲要用乐理吗 电音编曲步骤

FL Studio 21是一款强大的数字音频工作站&#xff08;DAW&#xff09;软件&#xff0c;为您提供一个完整的软件音乐制作环境。它是制作高质量的音乐、乐器、录音等的完整解决方案。该程序配备了各种工具和插件&#xff0c;帮助你创建专业的虚拟乐器&#xff0c;如贝斯、吉他、钢…

Unity vscode 官方debug

把这个先unlock 再升级到最新的 然后重新生成 project files 打开 launch.json {"version": "0.2.0","configurations": [{"name": "Attach to Unity","type": "vstuc","request": "a…

如何一键提取微信背景图?

微信图文中的背景图&#xff0c;就像室内装修中的墙纸。使用不同颜色、图案的背景图能让文章更有质感&#xff0c;更立体&#xff0c;能给读者带来不一样的视觉体验。那看到其他公众号用的背景图很好看&#xff0c;自己也想用&#xff0c;怎么办&#xff1f;&#xff08;以速排…

香港云服务器和日本云服务器哪个好?(详细对比)

​  购置海外服务器时&#xff0c;您是在乎网络速度?价格?稳定性?当这几个因素同时存在&#xff0c;我们该如何选择?本篇针对海外热门的两个地区&#xff0c;中国香港和日本&#xff0c;这两种云服务器谁优谁劣?各有什么亮点?逐一进行对比分析。 一、速度上来看 中国香…

下划线在键盘上怎么打?这3个方法快收藏!

“我最近的工作中好像很多文件里都有下划线&#xff0c;但是我不知道在键盘上应该怎么把下划线打出来&#xff0c;有没有知道的朋友呀&#xff1f;” 在计算机文档和编程中&#xff0c;下划线是一个常见的特殊字符。很多用户在使用电脑时可能也经常需要用到下划线。但是下划线在…

前端开发之服务器的基本概念与初识Ajax

1&#xff0c;服务器的基本概念与初识Ajax 1.1 URL地址的组成部分 1.2 客户端与服务器的通信过程 1.3 网页中如何请求数据 1.4 $.get()函数 1.4.1 $.get()函数的语法 // jQuery 中 $.get() 函数的功能单一&#xff0c;专门用来发起 get 请求&#xff0c;从而将服务器上的资源…

接口测试——接口协议抓包分析与mock_L2

目录&#xff1a; 抓包工具charles抓包工具fiddler抓包工具证书配置app抓包实战练习接口测试实战练习 1.抓包工具charles 工具介绍 支持 SSL 代理支持流量控制支持重发网络请求&#xff0c;方便后端调试支持修改网络请求参数支持网络请求的截获并动态修改可以自动将 json 或…

as 加载aar(包含so文件)遇到问题的解决方法

""" r java.lang.UnsatisfiedLinkEnror :No implementation found for void com.example.myapplication2.Model.init(java.lang .Storing, java.lang .string) 原来是so文件里的Model类的所属的包名&#xff0c;跟我java里的不一样。linux里&#xff0c;可以用 …

C++11之可变参数模板

可变参数模板 可变参数模板概念可变参数模板定义参数包展开方式递归展开参数包逗号表达式展开参数包 STL容器中的emplace相关接口函数 可变参数模板概念 C11的新特性可变参数模板能够让您创建可以接受可变参数的函数模板和类模板&#xff0c;相比C98/03&#xff0c;类模版和函…

铁红面建筑模板:木质之美与实用性的结合

铁红面建筑模板&#xff0c;又称为铁红面板或酚醛面建筑模板&#xff0c;是一种常用的建筑施工材料。其主要特点是选用进口辐射松、樟子松或国内的马尾松旋切木材作为面皮&#xff0c;经过胶机上的面胶和热压机的压合而成。这种建筑模板在施工中发挥着重要的作用&#xff0c;并…