1、实验目的
掌握一位全加器的工作原理和逻辑功能
掌握串行进位加法器的工作原理和进位延迟
掌握减法器的实现原理
掌握加减法器的设计方法
掌握 ALU 基本原理及在 CPU 中的作用
掌握 ALU 的设计方法
2、实验内容
任务 1:原理图方式设计 4 位加减法器
任务 2:实现 4 位 ALU 及应用设计
3、实验过程
任务 1:原理图方式设计 4 位加减法器
1.创建工程并绘制原理图
建立工程 MyAdder,创建原理图文件 Adder1b,按原理图绘制
创建原理图文件 Adder4b,按原理图绘制
创建原理图文件 AddSub1b,按原理图绘制
创建原理图文件 AddSub4b,按原理图绘制,并点击 Create Schematic Symbol,生成.sym 文件
2.原理图仿真
建立基准测试波形文件,输入仿真激励信号,在 Process 窗口中 选择 Simulate Behavioral Model,可以得到仿真波形图:
AddSub1b:
AddSub4b:
任务 2:实现 4 位 ALU 及应用设计
1. 创建工程并创建好模块
建立工程 MyALU,top level source type 使 用 HDL , 复 制 AddSub4b.sch 和.sym 文件到目录,将 AddSub4b 中用到的模块也一并 复制过来。 接下来创建好工程所需要的模块
第一个模块:myAnd2b4
创建原理图文件 myAnd2b4,按原理图绘制
第二个模块:myOr2b4
创建原理图文件 myOr2b4,按原理图绘制
第三个模块:myALU
创建原理图文件 myALU,按原理图绘制
创建 Verilog Test Fixture 文件,输入仿真激励信号,在 Process 窗口中选择 Simulate Behavioral Model,可以得到仿真波形图:
第四个模块:CreateNumber
创建 Verilog 代码文件 CreateNumber,输入 Verilog 代码
第五个模块:pbdebounce
创建 Verilog 代码文件 pbdebounce,输入 Verilog 代码
第六个模块:clkdiv
将实验七的 clkdiv 文件复制到工程目录
2. 设计顶层模块 top
创建 Verilog 代码文件 top,输入 Verilog 代码
3.为模块的端口指定引脚分配
建立引脚约束文件 K7.ucf,输入代码,为每个输入输出端口分配 引脚。
4.生成 bit 文件并下载到开发板
4、实验结果
补充一个东西,之前忘记写了
在仿真代码中那个UUT就是连接的Verilog Module文件接口,比如说top.v文件调整了,多了一个output wire test,那么在top_sim.v文件中也需要做相应的调整,否则仿真出来的结果是有问题的