没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
第四届
全国大学生集成电路创新创业大赛
CICIEC
项目设计
参赛题目: RISC-V 子赛题 2
队伍编号: BHL115476
团队名称: 燕子
2
目录
1 概述 .....................................................................................................................................................................5
2 需求分析 ............................................................................................................................................................5
2.1 项目要求 ...............................................................................................................................................5
2.2 硬件需求 ...............................................................................................................................................6
2.3 软件需求 ...............................................................................................................................................6
3 总体设计方案 ...................................................................................................................................................7
3.1 硬件平台 ..............................................................................................................................................8
3.2 蜂鸟 E203 SoC 概述 ...................................................................................................................... 10
3.3 硬件系统设计简介 ......................................................................................................................... 10
3.4 软件系统设计简介 ......................................................................................................................... 14
4 硬件分系统设计方案 .................................................................................................................................. 15
4.1 时钟 .................................................................................................................................................... 16
4.2 DDR3 内存扩展 ................................................................................................................................. 16
4.2.1 功能描述 ............................................................................................................................. 16
4.2.2 地址映射 ............................................................................................................................. 16
4.2.3 接口定义 ............................................................................................................................. 16
4.2.4 本系统在全局的位置 ...................................................................................................... 17
4.2.5 算法设计与实现框图 ...................................................................................................... 18
4.2.6 行为仿真 ............................................................................................................................. 20
4.2.7 FPGA 测试 ............................................................................................................................ 21
4.3 EMAC 外设 .......................................................................................................................................... 21
4.3.1 功能描述 ............................................................................................................................. 21
4.3.2 地址映射 ............................................................................................................................. 22
4.3.3 接口定义 ............................................................................................................................. 22
4.3.4 本系统在全局的位置 ...................................................................................................... 24
4.3.5 算法设计与实现框图 ....................................................................................................... 24
4.3.6 行为仿真 ............................................................................................................................. 24
4.3.7 FPGA 测试 ............................................................................................................................ 25
4.4 KNN 硬件加速电路 ......................................................................................................................... 26
4.4.1 功能描述 ............................................................................................................................. 26
4.4.2 地址映射 ............................................................................................................................. 27
4.4.3 接口定义 ............................................................................................................................. 27
4.4.4 本系统在全局的位置 ...................................................................................................... 27
4.4.5 算法设计与实现框图 ...................................................................................................... 28
4.4.6 行为仿真 ............................................................................................................................. 29
4.4.7 FPGA 测试 ............................................................................................................................ 30
4.5 VGA 显示控制电路 .......................................................................................................................... 30
4.5.1 功能描述 ............................................................................................................................. 30
4.5.2 地址映射 ............................................................................................................................. 30
4.5.3 接口定义 ............................................................................................................................. 31
4.5.4 本系统在全局的位置 ...................................................................................................... 31
4.5.5 算法设计与实现框图 ....................................................................................................... 31
3
4.5.6 FPGA 测试 ............................................................................................................................ 32
5 软件分系统设计方案 .................................................................................................................................. 33
5.1 UDP/IP 协议栈 ................................................................................................................................. 33
5.2 TFTP 客户端 .................................................................................................................................... 34
5.3 图像识别算法 ................................................................................................................................... 35
5.3.1 jpg 解码............................................................................................................................... 35
5.3.2 字符定位与分割 ................................................................................................................ 36
5.3.3 KNN 算法............................................................................................................................... 36
6 系统性能与测试 ........................................................................................................................................... 36
6.1 GPIO 测试 .......................................................................................................................................... 36
6.2 RISC-V 字符显示测试 ................................................................................................................... 39
6.3 以太网通信测试 ............................................................................................................................. 40
6.3.1 udp 报文环回实验 ............................................................................................................ 40
6.3.2 tftp 图片传输实验 ......................................................................................................... 40
6.4 身份证号识别任务测试................................................................................................................ 41
7 进一步工作 .................................................................................................................................................... 44
参考文献 .............................................................................................................................................................. 45
4
Figure 1:设计方案层次结构 ..........................................................................................................................8
Figure 2:自制 jtag pmod 转接板 .................................................................................................................9
Figure 3:项目整体硬件连接 ..........................................................................................................................9
Figure 4:E203 流水线结构 ........................................................................................................................ 10
Figure 5:E203Plus SoC 组成 ...................................................................................................................... 12
Table 1:E203Plus SoC 物理内存分配 .................................................................................................... 12
Table 2:E203Plus Soc 资源占用 .............................................................................................................. 13
Figure 6:程序流程图 .................................................................................................................................... 15
Table 3:ICB Bridge 模块 IO 接口定义.................................................................................................... 16
Figure 7:DDR3 内存扩容连接关系 ......................................................................................................... 18
Figure 8:ICB Bridge 实现框图 .................................................................................................................. 19
Figure 9:ICB Bridge 状态转移图 ............................................................................................................. 20
Figure 10:按字节存入数据行为仿真 ...................................................................................................... 20
Figure 11:按字节读出数据行为仿真 ...................................................................................................... 21
Figure 12:DDR 内存扩展 FPGA 原型测试 ............................................................................................ 21
Figure 13:EMAC 外设发送缓冲区地址映射 ........................................................................................ 22
Figure 14:EMAC 外设接收缓冲区地址映射 ......................................................................................... 22
Table 4:EMAC 外设寄存器 ........................................................................................................................ 22
Table 5:EMAC 模块 IO 接口定义 ............................................................................................................ 22
Figure 15:EMAC 模块连接关系 ................................................................................................................ 24
Figure 16:以太网发送行为仿真................................................................................................................ 24
Figure 17:以太网接收行为仿真................................................................................................................ 25
Figure 18:EMAC 外设 FPGA 原型测试 ................................................................................................... 26
Figure 19:KNN Accelerator 地址映射 ................................................................................................... 27
Figure 20:KNN Accelerator 连接关系 ................................................................................................... 28
Figure 21:KNN Accelerator 实现框图 ................................................................................................... 29
Figure 22:KNN Accelerator 状态转移图 ............................................................................................... 29
Figure 23: KNN XOR 与 COUNT 状态行为仿真................................................................................. 30
Figure 24:KNN SUM 与 RSP 状态行为仿真 .......................................................................................... 30
Table 6:VGA Controller 模块 IO 接口定义 .......................................................................................... 31
Figure 25:VGA Controller 连接关系 ...................................................................................................... 31
Figure 26:VGA 模块 FPGA 原型测试 ...................................................................................................... 33
Figure 27:GPIO 不按按键 .......................................................................................................................... 37
Figure 28:GPIO button0 对应红色 led ................................................................................................... 38
Figure 29:GPIO button1 对应绿色 led .................................................................................................. 38
Figure 30:GPIO button2 对应蓝色 led’ ................................................................................................. 39
Figure 31:RISC-V 字样显示测试 .............................................................................................................. 39
Figure 32:以太网 UDP 报文回传测试 .................................................................................................... 40
Figure 33:tftp 文件传输测试(下载) ................................................................................................... 41
Figure 34:tftp 文件传输测试(上传) ................................................................................................... 41
Figure 35:身份证号识别任务硬件连接 .................................................................................................. 42
Figure 36:身份证号识别任务 tftp 服务器 log .................................................................................... 43
Figure 37:身份证号识别任务 txt 结果................................................................................................... 43
Figure 38:身份证号识别任务显示器显示结果 .................................................................................... 44
5
1 概述
本设计完成了基于 ARTY A7 35T 开发平台和蜂鸟 E203 开源 CPU 的一个低
成本的身份证号识别嵌入式解决方案。开发板通过以太网从上位机的 tftp 服务
器中下载 jpg 文件。E203 CPU 运行 jpg 解码程序,完成待识别图片的解码,解
码为 RGB888 格式,之后对图片进行字符定位和二值化。最后将提取出来的包含
单个数字的标准图片传送到 KNN 加速电路进行加速计算,并得到最终的识别结
果。
本设计展现了一个在成本和资源受限的情况下,如何完成较复杂的图像识别
任务的思路与具体方案。开源和低成本是本设计的最大优势,通过减少对片外内
存的访问和对 KNN 算法进行硬件加速,我们也尽量提高了系统的整体运行效率。
硬件设计中,我们在原有 E203 SoC 的基础上,增加了 DDR3 控制器,EMAC,
VGA Controller 和 KNN Accelerator。用 ICB 总线将这些外设和 E203 内核连接
起来。我们建立了基于 modelsim 的全系统仿真平台,包括处理器内核,SoC 外
设,以及 DDR3 芯片,用于行为仿真。同时,我们对新添加的 SoC 外设都进行了
FPGA 测试。
软件设计中,我们在 EMAC 外设的基础上,建立了精简的 UDP/IP 协议栈,并
以此建立了 TFTP 客户端。Jpg 解码采用了开源的 picojpeg 项目。并且针对打印
字体大小形状规整的特点,采用 KNN 算法对字符进行了识别。
在最终的性能测试中,我们从上位机下载了 10 张图片,并对图片中的身份
证号进行识别,总用时为 34s,图像识别的结果全部正确。
2 需求分析
2.1 项目要求
经过总结,题目的要求为以下五点:
1)获取开源 risc-v IP,正确使用内部总线连接存储器与外设;
2)在硬件平台上正确编译,下载软件,能够操作 GPIO 外设;
3)编写软件实现 ftp/tftp 通信,能够传输图像,并在显示屏上显示;
剩余44页未读,继续阅读
优游的鱼
- 粉丝: 74
- 资源: 316
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0