1、0计算机设计与实践实验课程教学大纲Design and Practice on Computer课程编码:DZ240122 适用专业:集成电路设计与集成系统先修课程:计算机组成与设计 学 分 数:4总学时数:64 实验(上机)学时:64考核方式:系考执 笔 者:刘有耀 编写日期: 2012-7-6 一、课程性质和任务本课程主要是通过实验来进一步巩固和扩大计算机组成与设计课程所学的内容,为设计计算机系统打下坚实的基础。通过实验深入理解 MIPS 指令系统,进一步熟悉 DE2-70 开发平台,较熟练地掌握 Quartus 使用方法和技巧,提高运用 Verilog HDL 语言来设计硬件系统的能力,
2、掌握 MIPS 寄存器组、运算器、桶形移位器、状态机、组合逻辑控制器的设计方法,掌握单周期 MIPS CPU 基本设计方法。理解 MIPS CPU 与编译器、操作系统的关系。二、实验教学内容及要求主要内容:本实验课程通过对 CPU 中的运算单元、寄存器组、控制单元电路的设计,然后设计实现单周期 CPU,最后设计存储器、总线控制器。基本要求:通过可实验课程学生加深对 CPU 结构和功能的理解,并锻炼设计实现 CPU 的基本能力,为 SoC 设计打下基础。重点:单周期 CPU 和多周期 CPU 设计、微程序控制器设计。难点:单周期和多周期 ALU 控制器设计、微程序控制器状态机设计。实验一:寄存器
3、组设计主要内容:根据实验原理框图完成一个由 32 个寄存器组成的字长为32 位的寄存器组设计,并在 Quartus II 上模拟实现。根据实验原理框图完成一个由 16 个寄存器组成的字长为 4 位的寄存器组设计,并在Altera DE2-70 开发板实现。基本要求:通过此实验使学生了解寄存器组工作原理,学会用 FPGA实现寄存器组电路,掌握寄存器组在 CPU 中的工作原理。1重点:CPU 中寄存器组工作原理。难点:寄存器组控制电路设计。实验二:静态随机存储器设计主要内容:用 Verilog HDL 语言来编写实现一种静态随机存储器器,并在 Altera DE2-70 开发板实现。基本要求:通过
4、此实验使学生理解静态随机存储器工作原理,学会用FPGA 实现静态随机存储器电路,掌握静态随机存储器的工作原理及其电路设计。重点:理解整数乘法器工作原理。难点:整数乘法器的设计。实验三:32 位桶形移位器设计主要内容:设用 Verilog HDL 语言来描述 32 位桶形移位器设计,在Quartus II 上实现模拟仿真,并在 Altera DE2-70 开发板实现 8 位的桶形移位器,使其能够正常工作。基本要求:通过此实验使学生理解桶形移位器工作原理,学会用FPGA 实现桶形移位器电路,掌握桶形移位器的工作原理及其电路设计。重点:桶形移位器的工作原理。 难点:桶形移位器的电路设计。实验四:总线
5、控制器设计主要内容:用 Verilog HDL 语言来编写实现一种总线控制器,并在Altera DE2-70 开发板实现。基本要求:通过此实验使学生理解总线控制器工作原理,学会用FPGA 实现总线控制器电路,掌握总线控制器的工作原理及其电路设计。重点:理解整数乘法器工作原理。难点:整数乘法器的设计。实验五:整数的乘法运算部件主要内容:用 Verilog HDL 语言来编写实现一种 32 位整数乘法器,并在 Altera DE2-70 开发板实现。基本要求:通过此实验使学生理解整数乘法器工作原理,学会用2FPGA 实现整数乘法器电路,掌握整数乘法器的工作原理及其电路设计。重点:理解整数乘法器工作
6、原理。难点:整数乘法器的设计。实验六:算术逻辑单元设计主要内容:设计 ALU 电路,用 Verilog HDL 语言描述 32 位的 ALU 的电路设计,并在 Altera DE2-70 开发板实现 ALU,使其能够支持基本的指令。基本要求:通过此实验使学生理解 ALU 工作原理,学会用 FPGA 实现ALU,掌握 ALU 的工作原理及其电路设计。重点:ALU 基本工作原理。难点:ALU 电路设计。实验七:单时钟周期 CPU 的设计主要内容:用 Verilog HDL 语言来描述单周期 CPU 设计,能够完成规定的指令,并在 Altera DE2-70 开发板实现。基本要求:通过此实验使学生理
7、解单周期 CPU 工作原理,学会用FPGA 实现单周期 CPU 电路,掌握单周期 CPU 的工作原理及其电路设计。重点:单周期 CPU 的工作原理。难点:单周期 CPU 的控制通路和数据通路设计。实验八:多时钟周期 CPU 的设计主要内容:用 Verilog HDL 语言来描述多周期 CPU 设计,能够完成规定的指令,并在 Altera DE2-70 开发板实现。基本要求:通过此实验使学生理解多周期 CPU 工作原理,学会用FPGA 实现单周期 CPU 电路,掌握多周期 CPU 的工作原理及其电路设计。重点:多时钟周期 CPU 的工作原理与逻辑功能实现。难点:单周期 CPU 的控制通路和数据通
8、路设计。实验九:微程序控制器设计主要内容:设计微程序控制器电路,用 Verilog HDL 语言描述微程序控制器的电路设计,并在 Altera DE2-70 开发板实现,使其能够支持基3本的指令。基本要求:通过此实验使学生理解微程序控制器的工作原理,学会用FPGA 实现微程序控制器,掌握微程序控制器的工作原理及其电路设计。重点:微程序控制器工作原理。难点:微程序控制器电路设计。三、各教学环节的学时分配四、实验部分教学内容和要求:(含课内实验的课程填写本部分)1、实验项目及学时分配其中:演示性实验 0 %,验证性实验 0 %,设计性实验 47 %,综合性实验 53 %学时分配项目章节主要内容 讲
9、课习题课实验上机合计第一章 寄存器组设计 1 4 5第二章 静态随机存储器设计 1 4 5第三章 32 位桶形移位器设计 1 2 3第四章 总线控制器设计 1 2 3第五章 整数的乘法运算部件 2 4 6第六章 算术逻辑单元设计 2 6 8第七章 单时钟周期 CPU 的设计 2 12 14第八章 *多时钟周期 CPU 的设计 2 18 20第九章 *微程序控制器设计 2 18 20合计 14 50 644实验类型序号实验项目名称 实验内容及要求学时 演示验证设计综合1实验一:寄存器组设计根据实验原理框图完成一个由 m 个寄存器组成的字长为 2n 位的寄存器组的设计,并在 Altera DE2-
10、70 开发板实现。5 2实验二:静态随机存储器设计用 Verilog HDL 语言来编写实现一种静态随机存储器器,并在 Altera DE2-70 开发板实现。5 3实验三:32 位桶形移位器设计用 Verilog HDL 语言来描述 32 位桶形移位器设计,在 Quartus II 上实现模拟仿真,并在 Altera DE2-70 开发板实现 8 位的桶形移位器,使其能够正常工作。3 4实验四:总线控制器设计用 Verilog HDL 语言来编写实现一种总线控制器,并在 Altera DE2-70开发板实现。3 5实验五:整数的乘法运算部件用 Verilog HDL 语言来编写实现一种 32
11、 位整数乘法器,并在 Altera DE2-70 开发板实现。6 6实验六:算术逻辑单元设计设计 ALU 电路,用 Verilog HDL 语言描述 32 位的 ALU 电路设计,并在 Altera DE2-70 开发板实现 ALU,使其能够支持基本的指令。8 7实验七:单时钟周期 CPU 的设计用 Verilog HDL 语言来描述单周期CPU 设计,能够完成规定的指令,并在 Altera DE2-70 开发板实现。14 8*实验八:多时钟周期 CPU 的设计用 Verilog HDL 语言来描述多周期CPU 设计,能够完成规定的指令,并在 Altera DE2-70 开发板实现。20 9*
12、实验九:微程序控制器设计设计微程序控制器电路,用 Verilog HDL 语言描述微程序控制器的电路设计,并在 Altera DE2-70 开发板实现,使其能够支持基本的指令。20 合计64 30 345比例100%46.88%53.12%注:带“*”的实验八和实验九二选一。2、实验所需设备及材料每组需要的主要仪器设备每组需要的主要实验材料序号实验项目名称每组人数设备名称数量材料名称数量性质FPGA 开发板 35 / / /EDA 软件 35 / / /1 所有实验 1PC 机 1 / / /五、本课程与其它课程的联系本课程先修课:计算机组成与设计、FPGA 课程设计本课程后续课:微处理器设计课程设计、基于 FPGA 的嵌入式系统设计六、建议教材及参考资料建议教材:1 蒋丽华.基于 EDA 技术的单周期 CPU 设计与实现计算机组成原理实践.北京:清华大学出版社.2012 年 6 月参考资料:1杨军.基于 Quartus II 的计算机组成与体系结构综合实验教程.北京:科学出版社.2011 年 1 月2张泽生. 计算机组成原理实验教程. 待出.