随着近代网络技术的高速发展,互联网流量呈爆炸式增长,企业和家庭对网络带宽的要求日益提高。在这种趋势下,40G与100G网络时代到来,这需要交换机和路由器等网络设备具备极高的数据存储能力。而在网络设备对数据包的处理中,存储管理、调度占去了大部分时间,因此大多数存储器的低速缓存能力成为了限制网络处理器进一步提高的瓶颈。因此本赛题要求设计一款支持高速数据存储的SRAM管理模块,避免数据包的长度和存储器数据通道的数量对存储器资源的影响,并且可以通过内存回收动态调整空间节约达到存储资源的目的,提高数据存储效率,提升数据校验纠错的能力。
该赛题涉及的关键难点是网络交换领域亟需解决的问题,包括大容量交换、高速存储,覆盖规格设计、逻辑代码编写和验证环境搭建,该赛题为学生提供了一个芯片模块设计的全流程实践平台,可培养学生的数字电路逻辑思维和问题解决能力,同时让学生更深刻地理解和掌握电路原理,为高校达到锻炼人才的目的。此外该赛题还能促进该技术领域内技术人员的交流和技术沟通,推动国家集成电路产业的发展。
如上图,根据如下要求设计一款可对SRAM进行有效管理的SRAM控制器IP, 具体要求如下:
1. 支持管理不少于32块256K bit的SRAM单元,满足8M bit容量,时钟>250Mhz,支持高速缓存;
2. 支持16个端口同时读写缓存,每端口数据传输带宽可达到1G bps;
3. 每端口支持8个优先级队列,按队列缓存数据;
4. 支持按包缓存、调度数据,数据包长64-1024字节,每包帧格式含控制帧部分(包括但不限于目的地址、优先级);
帧格式
时序图
1. 支持多端口,多队列动态共享缓存。只要缓存未满,任意端口的任意队列数据都可写入缓存;
2. 允许多个端口同时写入,同时写出,每个端口独立工作,相互不影响。
3. 写出端口由目的端口域决定,支持单播、多播,支持按QoS(严格优先级、WRR)调度。
4. 支持内存回收,对已读出的内存空间进行重分配。
5. 支持数据校验。
作品提交需要包括如下三个方面:
1. Verilog 设计代码。验证测试 verilog/SV 代码和环境。
2. 详尽设计word 文档,包括
(1) 设计的interface详细描述, 寄存器定义以及架构图。
(2) SRAM管理算法以及架构实现。
(3) 验证方式,方法以及验证结果分析。
(4) 设计的优缺点,不足和待改进。
(5) (加分项,不强制要求) FPGA 验证方式方法: (FPGA 型号, emulation 平台型号, 验证方法过程与结果)。
3. 答辩介绍PPT
内容 | 分值 | 评分具体要求 |
1. 文件和报告完整性 | 20分 | 1. (10分) Verilog 设计代码。验证测试 verilog/SV 代码和环境。 2. (5分) 详尽设计 word 文档。 3. (5分) 答辩介绍 PPT。 |
2. 设计完成度及架构 | 50分 | 1. (10分) 是否支持SRAM管理功能,以及 SRAM管理 架构与实现。 2. (10分) 是否支持随机长度和优先级包存储功能,以及 数据包存储架构与实现。 3. (10分) 对 内存回收 和 校验纠错 的实现情况。 4. (10分) 设计架构。 5. (10分) 验证相关(验证架构,验证完整性)。 |
3. Coding Style, 代码可读性及可实现性。 | 10分 | 1. (10分) 是否有良好的代码编写风格,以及代码可读性及可实现性。 |
4. 答辩和现场演示 | 20分 | 1. (10分) 答辩 PPT 展示完整度。 2. (10分) 现场问答表现。 |
5. 附加分 (FPGA 验证) | 15分 | 1. (15分) 完成 FPGA 对设计验证。 |
1. 参加企业命题杯赛的作品,杯赛出题企业有权在同等条件下优先购买参加本企业杯赛及单项奖获奖团队作品的知识产权。
2. 大赛组委会和杯赛企业对参赛作品的提交材料拥有使用权和展示权。
3. 参赛项目可以参考现有公开发表的文献和论文内容,但应当在技术论文和答辩PPT中注明来源,且不能将参考的内容作为自己作品的创新部分。