安徽省大学生竞赛:FPGA实现逻辑与CPU设计项目详解

需积分: 9 0 下载量 18 浏览量 更新于2024-09-04 收藏 653KB DOCX 举报
本题是关于FPGA平台的编程和设计竞赛题目,主要考察参赛者的硬件设计与软件实现能力。竞赛分为三个部分: 1. **简单逻辑题(20分)** - **七段数码管译码器**:要求设计一个能够将最右侧4位开关输入转换为十六进制显示在最右侧数码管的电路,包括编写Verilog HDL代码(3分)、仿真(3分)以及实际硬件上板验证(4分)。这涉及到基本的数字逻辑和接口电路设计。 - **数码管动态扫描**:需设计一个电路,能同时显示十六个开关的十六进制值在四个数码管上,同样涉及代码(3分)、仿真(3分)和验证(4分)。 2. **综合逻辑题(40分)** - **有限状态机设计**:针对给定的序列“001101101”,设计一个状态机来检测“10”序列,状态转移图绘制(6分)、基于图的电路实现(6分),以及仿真(6分)和硬件上板验证(8分)。接着扩展状态机以检测“1011”序列,涉及相应图示、代码、仿真和验证(各4分)。 3. **CPU设计题(40分)** - **MIPS微处理器设计**:参赛者需对一个32位MIPS微处理器进行定制,补充算术逻辑单元(ALU)、指令存储器(IM)和控制器(CTRL)的设计。设计须支持MIPS32-C7指令集,如addu、subu、ori、lw、sw、beq、jal。参赛者需提供设计报告(详细说明指令格式和设计方案)、Verilog HDL代码,以及针对提供的测试用例MIPS汇编程序段Test.asm的机器指令代码和地址(5分)。设计完成后,还需模拟并记录程序执行结果及涉及的寄存器和数据存储器的状态。 这些题目涵盖了基础的数字逻辑设计、状态机原理、高级微处理器架构设计以及系统级编程实践,要求参赛者具备扎实的硬件设计技能和软件编程理解。通过解决这些问题,参赛者不仅能够检验自己的逻辑思维和编程能力,还能提升在实际硬件环境中的工程实践经验。