2021-06-25 女生实验 电子书Verilog HDL (第2版)数字系统设计及仿真 女生实验 第十一章 实验五(流水线的使用)

一、实验要求:用Modlsim进行设计仿真实验
二、实验内容
1、实验书本及实验题目:电子书Verilog HDL (第2版)数字系统设计及仿真 ,第十一章 实验五(流水线的使用)
2、相关内容:本实验要完成一个流水线加法器的设计。
实验内容一:请为此模块编写测试平台,输入的加数和被加数使用随机数产生,请观察得到的仿真波形结果,在输出结果部分的波形是否有你不理解的异常变化?如果有,请分析原因。
实验内容二:请使用三行代码完成四个临时结果的相加操作,要求最后电路实现时,是流水线结构
实验内容三:为该流水线乘法器编写测试模块,验证功能。验证功能无误后,可以利用FPGA来进行硬件测试,请参考实验三的内容来完成整个FPGA设计流程。
实验内容四:将正确的代码下载到FPGA中,观察实际结果。
三、实验目的
1、(1)进一步掌握行为级语法。
(2)掌握流水线的设计思想和设计方法。
(3)学会使用流水线改进设计。
2、实验涉及语法
(1)行为级建模语法。
(2)可综合模型设计部分流水线的概念
四、与实验相关图
1、电路结构图在这里插入图片描述2、FPGA的管脚配置图在这里插入图片描述五、实验工具
pc机、moelsim软件等
六、实验视频

实验二

七、实验仿真结果图
功能仿真波形图
在这里插入图片描述
乘法器仿真波形图
在这里插入图片描述

八、实验代码
1、功能仿真代码
module add_pp (a,b, cin, sum, cout,clock) ;
input [7:0]a,b;
input cin,clock;
output [7:0]sum;
output cout;
reg c1o;
wire c1;
always @ (posedge clock)
c1o<=c1;
assign {cout,sum[7:4]}=a[7:4]+b[7:4]+c1o;
assign {c1,sum[3:0]}=a[3:0]+b[3:0]+cin;
endmodule
测试代码
module tbs51;
reg [7:0] add1,add2;
reg clock;
reg add_cin;
wire [7:0] add_sum;
wire add_cout;
integer seed1=9, seed2=12,seed3=15;
always
begin
add1={KaTeX parse error: Expected 'EOF', got '}' at position 15: random(seed1) }̲%128; add2={random(seed2) }%128;
add_cin={KaTeX parse error: Expected 'EOF', got '}' at position 16: random (seed3) }̲/2; #60; end in…random(seed1);
mul_b=$random(seed2);
#30;
end
initial
begin
reset_n=1;clock=0;
#20 reset_n=0;
#10 reset_n=1;
end
always #15 clock=~clock;
mul_pp mymul (mul_a,mul_b,clock,reset_n,mul_out);
endmodule
九、软件下载地址
Modelsim 10.x软件下载链接:https://pan.baidu.com/s/1PoKk4W_SG7Zqp9KNuwLdTQ提取码:m7ja

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值