课赛结合

当前位置: 首页 >> 本科教学 >> 学科竞赛 >> 课赛结合 >> 正文

2022-2023-1学期《微处理器设计课程设计》课赛结合总结报告

发布时间:2023年03月07日 14:52      浏览次数:[]

1、基本情况

2022-2023学年第一学期,依托《微处理器设计课程设计》课程,在电路20级开展了第二届RSIC-V处理器设计竞赛,本次课赛由山蕊、朱筠、杨博文和李鑫4位老师负责,电路20级所有142名学生参加了比赛,参赛学生围绕RISC-V处理器展开设计,完成一个五级流水线处理器设计,并以所设计的处理器为核心完成一个最小数字系统的设计及应用程序开发,详细设计题目自拟。本次课赛共评选出一等奖5名、二等奖11名、三等奖14名,获奖学生共计30名,获奖比例为21.1%。全体学生参与的RSIC-V处理器设计竞赛,引发了学生对本课程的学习兴趣,加强了学生的数字系统设计能力与实践创新能力。

2、实施过程

课程开始时任课教师下达了课赛通知,使学生有充分的时间做准备,课程的实施,为学生所需的背景知识打下了理论和实验基础。课程比赛分为班级预赛和年纪决赛两个部分。班级预赛由代课老师完成参赛学生作品的验收及答辩,并在班级内评选出不超过10名同学参加年级决赛。年级决赛由山蕊、朱筠、杨博文和李鑫4位老师主持完成。每组学生在答辩前完成系统的调试,录制演示视频,制作讲解PPT,每位学生根据题目撰写报告,演示视频、PPT和实验报告均上传到学习通系统。

课程结束后,2023年1月3日,由山蕊、朱筠、杨博文和李鑫4位老师为评审老师,对所有参赛作品进行了决赛答辩,为每名学生打分,评选出了获奖学生,2023年1月3日公布了获奖名单。

3、获奖题目及获奖学生名单

2022年电路20级《微处理器设计课程设计》RISC-V处理器设计竞赛获奖名单

获奖级别

题目

参赛队员

一等奖

基于RISC-V流水线处理器的神经网络部署

卜思豪

一等奖

基于RISC-V流水线处理器的pwm波输出设计

孙思原

一等奖

基于RISC-V流水线处理器的简易交通灯设计

胡佳豪

一等奖

基于五级流水线RISC-V CPU可控的交通灯设计

柳冠杰

一等奖

基于五级流水线RISC-V CPU的可控流星灯设计

雷惟戈

二等奖

基于RISC-V流水线处理器的科学计算器

朱凯鹏

二等奖

基于RISC-V的肤色识别

黄立宏

二等奖

基于RISC-V流水线处理器的交通灯控制系统

王蒙

二等奖

基于RISC-V流水线处理器的正弦函数计算

孔维杰

二等奖

基于RISC-V的交通灯设计

李宗霖

二等奖

基于RISC-V的按键冒泡排序数码管显示

于笑杰

二等奖

基于RISC-V处理器的数字时钟

张卓

二等奖

基于RISC-V处理器的流水灯数码管显示系统设计

王臻华

二等奖

基于五级流水线RISC-V CPU的交通灯设计

韩昱波

二等奖

基于五级流水线RISC-V CPU的可变花型流水灯设计

陈静静

二等奖

基于五级流水线RISC-V CPU的可调节状态密码锁设计

张露尹

三等奖

基于RISC-V的sobel边缘检测

田海刚

三等奖

基于RISC-V流水线处理器的灰度图像二值化

唐玉涛

三等奖

基于RISC-V流水线处理器的流水灯

蒋典

三等奖

基于RISC-V的按键切换花型的流水灯设计

程琦

三等奖

基于RISC-V五级流水线的计时数码管流水灯设计

殷欣蕊

三等奖

基于RISC-V五级流水线的简易流水灯设计

贺冰倩

三等奖

基于RISC-V的五级流水线简单流水灯设计

马丁

三等奖

基于RISC-V处理器的简易流水灯设计

曾若琪

三等奖

基于Risc-v处理器的流水灯控制系统设计

杜佳航

三等奖

基于RISC-V处理器的流水灯控制系统设计

何滨乾

三等奖

基于RISC-V处理器的简易流水灯设计

李强

三等奖

基于risc_v的微处理器设计和简单流水灯设计

张璐

三等奖

基于五级流水线RISC-V CPU的 可控速率的数码管流水灯设计

渠元健

三等奖

基于五级流水线RISC-V CPU的循环花型的流水灯设计

林文豪

4、存在的问题及改进措施

存在的问题:1)此次课程比赛由于疫情原因,课程设计在家完成,部分学生没有开发板,导致没有完成板级验证;2)学生参赛作品相对比较简单,作品完整性一般。

改进措施:下一届比赛考虑采用分组参赛的形式,通过团队方式强化作品的复杂性和综合性。

5、部分答辩及颁奖过程记录

6、获奖学生作品展示

作品一:基于RISC-V处理器的神经网络部署

在完成了RISC-V五级流水线处理器的基础上添加了冒险检测、数据转发、分支预测等扩展功能,能够检测并解决常见的数据冒险和结构冒险。除此之外,基于设计的流水线处理器,实现了CNN卷积神经网络的部署,将图片数据和神经网络需要用到的参数数据经过处理之后初始化进RAM存储器中,采用汇编语言搭建整体网络结构,通过读取指令将数据从RAM中读出输入卷积、池化、全连接等模块进行一系列运算,最终实现对输入图片的数字识别。

图1系统架构 图2下板子结果演示

图3输入的图像数据 图4识别并输出的图像

作品二:基于RISC-V处理器的肤色识别系统

本系统基于RISC-V指令集,总共支持37条指令,支持分支预测、数据前递。系统接对图像数据进行转化和二值化,然后将经过肤色识别后的图像通过HDMI输出。图像通过coe文件初始化在外部ROM中,通过计数每像素点数据依次送入RGB转YCBCR模块,输出的Cb和Cr分量存储至CPU的数据存储器中。CPU输出二值化后RGB数据,送入HDMI模块中输出显示。

图1系统结构 图2下板子结果

作品三:基于RISC-V流水线处理器的流水灯

基于RISC-V指令集,实现17条指令的五级流水线结构处理器,支持冒险预测机制,采用转发避免数据冒险。基于设计的处理器,完成了一种可切换花型的流水灯设计,通过四个按键控制流水灯的花型,每按下一个按键形成一个四位二进制数,处理器通过IO口读取四个按键的数据,进而切换流水灯的花型。由处理器计算出的结果来显示流水灯。

图1系统架构 图2下板子结果演示

作品四:基于RISC-V处理器的正弦函数计算系统

基于RISC-V指令集,实现16条指令的五级流水线结构处理器,支持利用数据前递解决数据冒险,支持利用冲刷流水线和停顿解决控制冒险,基于设计的处理器,完成了正弦函数的计算系统的设计,通过两个按键分别表示为十位和个位输入角度数据,增设一个zhi_0按键,按下可使输入的数据置零,增设cpu_start按键来控制cpu模块的运行,按下即可计算出当前输入数据对应的正弦值,处理器通过IO口读取输入的数据,进而计算输入角度的正弦值,将计算的结果传给动态数码管模块使其可视化。

图1系统架构 图2 sin30°的计算结果

作品五:基于RISC-V流水线处理器的pwm波输出设计

基于RISC-V指令集,实现21条指令的五级流水线结构处理器,可处理数据冒险和控制冒险。输入信号通过统一编址通过lw指令输入进寄存器堆,输出信号通过由数据寄存器写信号与地址控制的MUX应用sw指令输出。通过5个拨码开关切换五种波形,可以切换为控制舵机旋转的五个角度。将输出的波形通过GIOP接口传给逻辑分析仪,使其采样到相应的波形,并通过电脑屏幕进行显示,来验证该应用程序正确。

图1系统结构 图2下板子结果

作品六:基于RISC-V流水线处理器的灰度图像二值化

采用五级流水线设计基于RISC-V处理器,支持五种指令类型共33条指令,同时支持数据冒险和控制冒险。基于该处理器实现了灰度图像的二值化过程。它将灰度图片数据初始化在数据存储器中,经过处理器处理后输出二值化后的数据,然后将二值化数据进行hdmi接口输出。

图1系统结构 图2仿真结果

作品七:基于RISC-V处理器的sobel边缘检测数码管显示

基于RISC-V指令集,实现15条指令的五级流水线结构处理器,采用数据前递避免数据冒险。基于所设计的RISC-V处理器,完成了sobel边缘检测数码管显示的设计,通过按键控制图像亮度分量Y存储模块向CPU数据存储器输入数据,输入一个矩阵的数据后,CPU开始工作,将处理完的结果输入到数码管模块,数码管模块将数据转为8421BCD码后输出。

图1系统结构 图2下板计算结果

作品八:基于RISC-V流水线处理器的交通灯控制系统

基于RISC-V指令集,实现22条指令的五级流水线结构处理器,通过数据前递解决数据冒险,通过阻塞解决Load-use冒险。基于设计的处理器,完成交通灯控制系统设计,通过两个数码管和四个流水灯显示交通灯的实时状况,通过一个按键实现对两条路交通信号的交替显示。处理器通过IO口输出交通灯倒计时数据给数据处理模块,数据处理好之后驱动数码管和LED灯实现对交通信号的显示。

图1系统结构 图2下板子结果

作品九:基于RISC-V处理器的科学计算器

基于RISC-V指令集,实现27条指令的五级流水线结构处理器,采用直通技术避免数据冒险。基于流水线处理器设计的科学计算器,在输入两个数和操作数之后,处理器在进行相应的运算之后会输出结果。可以进行的运算有加,减,乘,除,逻辑移位,算数移位,与,或,异或,阶乘以及次方。用四个拨码开关一组,分别输入两个数字的千,百,十,个位和操作数,并且每输入一位数,就会在数码管上显示,在运算完之后,结果也会显示在数码管上。

图1系统结构

作品十:基于RISC-V处理器的简易流水灯设计

基于RISC-V指令集,实现20条指令的五级流水线结构处理器,通过暂停控制信号的方法解决控制冒险与load_use冒险,采用添加提前写回通路的方法避免数据冒险。基于设计的处理器,完成了一个简易的流水灯设计。通过汇编指令构建一个周期为1s的计时器,每计够1s,对相应的寄存器进行移位,直到达到循环的最后一个状态后跳回初始值。在外部电路里将相应数据从处理器的ram里取出来赋给4个led灯与数码管,则可实现一种状态的花型(从左到右依次亮)的流水灯设计。

图1下板子结果演示

作品十一:基于RISC-V流水线处理器的简易交通灯设计

本次设计是基于RISC-V指令集,实现30条指令的五级流水线结构处理器,支持冒险检测,数据前递,load&use冒险处理和分支缩减机制,采用数据前递技术解决数据冒险,使用硬件插入气泡的方法检测和解决结构冒险和load&use冒险。基于此处理器,完成了简易交通灯的设计,通过两个可变色led彩灯和四个普通led灯和两个拨码开关实现交通灯的设计。Led彩灯有红绿蓝三种颜色,用来模拟交通灯的红绿黄三种颜色。一个模拟东西方向,一个模拟南北方向。四个普通led灯进行慢闪、快闪和常亮的操作,用于红绿灯倒计时,黄灯倒计时和紧急情况下的使用。四个灯分别用来表示东西南北四个方向。两个拨码开关分别用来复位和模拟紧急情况的发生。

处理器可通过IO口检测危险信号,当无危险信号时,电路正常工作,先是东西方向彩灯亮红灯,南北亮绿灯,四个方向的普通led灯皆慢闪,持续30S。接着东西方向亮红灯,南北亮蓝灯,此时东西方向灯慢闪,南北方向快闪,持续5S。然后东西方向亮绿灯,南北亮红灯,此时四个方向灯皆慢闪,持续20S。最后东西方向亮蓝灯,南北亮红灯,东西方向快闪,南北方向慢闪,持续5S。接着循环上述过程。当危险信号出现时,东西和南北指示灯皆亮红灯,四个方向的led灯皆保持常亮,直至危险信号消失时,恢复到信号出现前的状态继续运行。

图1系统总体结构图

图2下板验证图

作品十二:基于RISC-V处理器的数码管显示按键控制冒泡排序

基于RISC-V指令集,实现的五级流水线结构处理器,基于处理器排序,利用数码管和按键来显示排序前后的数,控制排序的开始以及数字大小的调整。

图1系统架构 图2下板子结果演示

作品十三:基于RISC-V处理器的数字时钟

基于RISC-V指令集,实现20条指令的五级流水线结构处理器,指令类型覆盖R型、I型、S型、B型、U型以及J型,支持静态预测机制,采用直通技术避免数据冒险。基于设计的处理器,完成了数字时钟设计,通过TFT显示屏显示。

图1系统架构 图2下板子结果演示

作品十四:基于五级流水线RISC-V CPU的交通灯设计

基于RISC-V指令集,实现29条指令的五级流水线结构处理器,支持静态预测机制,可以解决数据冒险与load_use冒险。基于设计的处理器,完成了交通灯的系统设计。交通灯分别控制南北灯与东西灯倒计时与交通灯红黄蓝三种状态,其中绿灯30s,黄灯5s,红灯25s。依据倒计时的控制,交通灯状态在绿黄—绿红—黄绿—红绿中循环,实现了现实中交通灯的作用。

图1系统架构 图2下板子结果演示

作品十六:基于五级流水线RISC-V CPU的可调节状态密码锁设计

在基于RISC-V指令集,实现26条指令的五级流水线结构处理器的基础上增加外设和应用程序,完成了一个可调节状态的密码锁设计。处理器支持静态预测机制解决控制冒险问题,采用前递和停顿解决数据冒险问题。实现功能有设置密码,验证密码,并进行正确与否的判断。输入:通过10个拨码开关输入二进制密码;2个拨码开关输入不同状态,选择设置或验证密码的功能;由于一次只能输入一个值,所以用1个拨码开关选择输入状态或密码。输入的值经过数据选择器后写回CPU。输出:数码管进行输出。复位输出0;设置密码后输出1;验证密码正确输出R,错误输出E。

图1系统架构 图2下板子结果演示

 


上一条:2022-2023-1学期《微电子学实验》课程竞赛总结
下一条:2022-2023-1学期2020级《数字逻辑与FPGA设计基础》课赛结合总结报告

关闭

联系电话:029-88166273

Email : telecom@xupt.edu.cn

通讯地址:西安市长安区韦郭路西安邮电大学二号实验楼318办公室

Copyright ?2015 西安邮电大学电子工程学院 版权所有