手机版

Verilog数字系统设计4

发布时间:2024-11-12   来源:未知    
字号:

数字系统设计 (Verilog)——简单的纯组合逻辑模块

深圳大学信息工程学院

本章提要加法器 乘法器 比较器 多路器 总线和总线操作 流水线设计技术深圳大学信息工程学院

加法器Ai Bi C i-1 S i 0 0 0 0 Si =1 Ci 1 真 0 0 1 1 & 0 1 0 1 Ci 值 0 1 1 0 & ≥1 1 0 0 1 & 表 1 0 1 0 1 1 0 0 表达式: 1 1 1 1 Si Ai BiCi 1 Ai BiCi 1 Ai BiCi 1 Ai BiCi 1 Ai Bi Ci 1Ci Ai BiCi 1 Ai BiCi 1 Ai BiCi 1 Ai BiCi 1

Ai Bi

=1

Ci 0 0 0 1 0 1 1 1

Ai Bi Bi Ci-1 Ai Ci-1

深圳大学信息工程学院

用一位全加器组成四位全加器module FullAdder (A, B, Cin, SUM, Cout); input A, B, Cin; output SUM, Cout; assign SUM = A ^ B ^ Cin; assign Cout = (A & B) | (A & Cin) | (B & Cin); endmodule

用一位全加器组成四位全加器module ADDER4BIT ( Ain, Bin, SUM, OVF); input [3:0] Ain, Bin; output [3:0] SUM; wire [2:0] CY; outputOVF; FullAdder U0 (Ain[0], Bin[0], 0, SUM[0], CY[0]); FullAdder U1 (Ain[1], Bin[1], CY[0], SUM[1], CY[1]); FullAdder U2 (Ain[2], Bin[2], CY[1], SUM[2], CY[2]); FullAdder U3 (Ain[3], Bin[3], CY[2], SUM[3], OVF); endmodule

加法器module add_4(x,y,sum,c); input [3:0] x,y; output[3:0] sum; 拼接 output c; assign {c,sum}=x+y; endmodule

加法器 多位加法器

串行进位加法器 超前进位加法器 pipelined加法器S2S1S0

例:四位串行进位加法器CS3

si c i c i 1

si c i c i 1

si c i c i 1

si c i c i 1

A 3 B3

A 2 B2

A1 B1

A0

B0

结构简单,加数、被加数并行输入,和数并行输出;特点 各位全加器间的进位需串行传递,速度较慢。

加法器例:四位超前进位加法器S3

各位的进位输出信号只 与两个相加数有关,而与 低位进位信号无关。S1S0

S2

C

si c i c i 1进位 电路

si c i c i 1进位 电路

si c i c i 1

si c i c i 1

进位 电路

A3

B3

A 2 B2

A1

B1

A 0 B0

1-1-1-1 MASH实 现电路

深圳大学信息工程学院

Pipelined 加法器

乘法器分类: 并行乘法器 移位相加乘法器 查找表乘法器 加法树乘法器

深圳大学信息工程学院

乘法器1)并行乘法器 module mult(x,y,product) ; input[3:0] x , y ; output[7:0] product ; assign product = x * y ; endmodule并行乘法器可以看作是纯 组合逻辑电路,依靠组合 逻辑实现两数相乘,这种 方法能在输入数据改变时 立即得到相乘结果,延时 很短,但是耗用的资源随 操作数位数的增加而迅速 变多。并行乘法器实现代 码非常简短,适用于器件 内有嵌入式硬件乘法器的 情况。13

2)移位相加乘法器

Top Modulemodule Mult2(DataA,LA,DataB,LB,clk,reset,start,p,Done); input [7:0] DataA,DataB; input LA,LB,clk,reset,start; output [15:0] p; output Done; wire EA,EB,EP,ER,psel,qb,zb; wire [15:0] qa,sum; multshift_cntrl f0(.clock(clk),.reset(reset),.s(s

tart),.z(zb),.b0(qb),.ea(EA),.eb(EB), .ep(EP),.psel(psel),.done(Done)); shifta f1(.r(DataA),.l(LA),.e(EA),.clk(clk),.q(qa)); shiftb f2(.r(DataB),.l(LB),.e(EB),.clk(clk),.q0(qb),.z(zb)); sum f3(.a(qa),.p(p),.psel(psel),.sum(sum)); reg16 f4(.r(sum),.clk(clk),.rst(reset),.e(EP),.q(p)); endmodule 深圳大学信息工程学院

2)移位相加乘法器在不使用嵌入式硬件乘法器的情况下,移位 相加乘法器相比于并行乘法器更节省资源, 这随操作数位数的增加而越发明显。而其缺 点则在于,由于需要进行逐步移位,因而需 要一定的时间来完成两数相乘操作。

深圳大学信息工程学院

Verilog数字系统设计4.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
    ×
    二维码
    × 游客快捷下载通道(下载后可以自由复制和排版)
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
    × 常见问题(客服时间:周一到周五 9:30-18:00)