《单周期CPU的设计与实现》-实验指导书(4)

2018-12-05 20:44

计算机组成原理实验单周期CPU的设计与实验

图4-9模块MUX32_2_1综合结果

? Step 4:仿真(Simulation)

在工程管理区任意位置单击鼠标右键,在弹出的菜单中选择New Source命令,会弹出如图4-10所示的New Source Wizard对话框:Select SourceType。在图4-10选择Verilog Test Fixture,输入测试文件名:MUX32__2_1_tb,单击Next按钮,进入下一个对话框,如图4-11所示。

图4-10创建仿真模块(1)

图4-11创建仿真模块(2)

在图4-11中工程中所有的模块名都会显示出来(由于目前工程中只有一个模块,故只显示了一个模块名),选择要测试的模块MUX32_1,点击Next按钮,再点击Finish按钮,ISE会在源代码编辑区自动生成测试模块的代码,如图4-12所示。

计算机科学与工程学院

14

计算机组成原理实验单周期CPU的设计与实验

图4-12Verilog Test Fixture– MUX32_1

在图4-12中示了刚生成的MUX32_1_tb模块,在该模块中添加如下测试代码:

?

// Add stimulus here

A <= 32'haaaa0000;

B <= 32'hbbbb1111; Sel <= 1'b0;

#100;

Sel <= 1'b1; end

endmodule

完成测试文件编辑后,确认工程管理区中View选项设置为Simulation,并选中MUX32_2_1_tb模块。这时在过程管理区会显示与仿真有关的进程,如图4-13中Processes栏所示。

图4-13选择仿真行为

在图4-13中右键单击其中的Simulate Behavioral Model项,选择弹出菜单中的Process Properties项,会弹出如图4-14所示的属性设置对话框,其中Simulation Run Time就是仿真时间的设置,可将其修改为任意时长。

计算机科学与工程学院 15

计算机组成原理实验单周期CPU的设计与实验

图4-14Process Properties对话框

仿真参数设置完后,就可以进行仿真。首先在工程管理区选中测试代码,然后在过程管理区双击Simulate Behavioral Model,ISE将启动ISE Simulator,可以得到仿真结果,如图4-15所示。

图4-15模块MUX32_1仿真效果

? Step 5:约束(Constraints)与实现(Implementation)

要实现设计,还需要为模块中的输入/输出信号添加管脚约束,这就需要在工程中添加UCF(User Constraints File)文件。在工程管理区单击鼠标右键,点击New Source,弹出如图4-6所示对话框,在类型中选择Implementation Constraints File,输入文件名:MUX32_2_1_ucf,选择关联模块:MUX32_2_1。系统会生成一个空白的约束文件并打开。我们就可以为设计添加各种约束。

本实验中用Anvyl中的8个Switch对应2组4位二进制输入,用4个LED发光二极管对应输出,BTN0按钮对应选择信号Sel。因为是组合电路,不需要时钟。具体约束内容如下:

NET Sel LOC = E6;

#switches

NET A<0> LOC= V5;

计算机科学与工程学院

16

计算机组成原理实验单周期CPU的设计与实验

NET A<1> LOC= U4; NET A<2> LOC= V3; NET A<3> LOC= P4; NET B<0> LOC= R4; NET B<1> LOC= P6; NET B<2> LOC= P5; NET B<3> LOC= P8;

#Leds

NET O<0> LOC=W3; NET O<1> LOC=Y4; NET O<2> LOC=Y1; NET O<3> LOC=Y3;

约束完成后,下一个步骤就是实现(Implementation)。所谓实现,是指将综合输出的逻辑网表翻译成所选器件的底层模块和硬件原语,将设计映射到器件结构上,进行布局布线,达到在选定器件上实现设计的目的。

在ISE中,执行实现过程,会自动执行翻译、映射和布局布线过程:也可单独执行。在过程管理区双击Implementation Design选项,就可以自动完成实现的3个步骤,如图4-16所示。

图4-16Running Synthesis

完成Place & Route后,在图4-16中双击Generate Programming File项生成二进制比

特文件mux32_2_1.bit。

? Step 5:流代码生成与下载

完成Place & Route后,在图4-16中双击Generate Programming File项生成二进制比

特文件mux32_2_1.bit。

将Anyvl开发板与计算机通过USB线连接好,开发板加电,启动Digilent Adept软件,系统开始自动连接FPGA设备,成功检测到设备后,会显示出JTAG链上所用芯片,如图4-17所示。

计算机科学与工程学院 17

计算机组成原理实验单周期CPU的设计与实验

图4-17Digilent Adept软件

在图4-17中点击Browse按钮,找到刚才生成的二进制比特文件mux32_1.bit,然后点击Program按钮开始下载,下载成功后会在图4-17下面的状态栏中显示Programming Successful。同学们可在开发板上拨动开关SW0S~SW7和按钮BTN0,并观察LED0~LED3的显示,思考一下观察的结果与设计是否一致。

4.2 32位4选1选择器的设计与实现

32位4选1选择器的逻辑框图如图4-18所示。

Sel[1:0] Function:

A[31:0] B[31:0] C[31:0] D[31:0] M U X Sel[1:0]= 00:O = A

O[31:0]

Sel[1:0]= 01:O = B Sel[1:0]= 10:O = C Sel[1:0]= 11:O = D

图4-18 32位4选1逻辑框图

32位4选1选择器的模块设计步骤可参考32位2选1选择器的设计步骤,下面给出32位4选1选择器的模块代码。

module MUX32_4_1(

input [31:0] A, input [31:0] B, input [31:0] C, input [31:0] D, input [1:0] Sel, output[31:0] O

计算机科学与工程学院

18


《单周期CPU的设计与实现》-实验指导书(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:新苏教版小学四年级数学上册单元测试试题 全册精品

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: