实验五 流水线的使用

本次实验旨在通过Verilog HDL实现流水线加法器和乘法器,以理解流水线设计思想。实验中详细展示了两个模块的设计:一个四位流水线加法器`add_pp`,它利用时钟边沿触发实现逐位加法;另一个是四位流水线乘法器`mul_pp`,采用流水线技术进行逐位乘法和累加。实验还包括随机数生成以模拟不同输入,并提供了实验过程的截图和视频教程链接。
摘要由CSDN通过智能技术生成

1.实验目的:
(1)进一步掌握行为级语法。
(2)掌握流水线的设计思想和设计方法。
(3)学会使用流水线改进设计。

2.实验涉及语法:
(1)第4章行为级建模语法。
(2)第7章可综合模型设计部分流水线的概念。

  1. 实验内容:Verilog HDL数字系统设计仿真 十一章 实验五:
    本实验要完成一个流水线加法器的设计。
    4.实验代码如下:
    第一个:
    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={$random (seed3) }/2;
#60;
end
initial clock=0;

always #15 clock=~clock;

add_pp myadd(add1,add2,add_cin,add_sum, add_cout,clock);

endmodule

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

第二

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值