- 1、本文档共35页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
乘法器电路设计
9.2 乘法器设计;9.2.1 并行乘法器;【例9.4】8位并行乘法器
module mult( outcome, a, b);
parameter size = 8;
input[size:1] a, b; // 源操作数
output[2*size:1] outcome; // 乘积
assign outcome = a*b; // 相乘
endmodule;8位并行乘法器RTL图;9.2.2 移位相加乘法器;【例9.16】8位二进制数的乘法
module mult_for( outcome, a, b );
parameter size = 8;
input[size:1] a, b;
output[2*size:1] outcome;
reg[2*size:1] outcome;
integer i;;always @( a or b )
begin
outcome = 4’h0;
for( i = 1; i = size; i = i+1 )
if( b[i] ) outcome = outcome + ( a (i-1) );
end
endmodule;乘法器的功能仿真波形图;9.2.3 查找表乘法器; 设计思路; 8位查找表乘法器
Y = A×B
A = A1×24+A2
B = B1×24+B2
则 Y = ( A1×24+A2 )×( B1×24+B2 )
= A1×B1×28
+ A1×B2×24 + A2×B1×24
+ A2×B2;【例9.5】 8×8查找表乘法器
/********** 2×2查找表乘法器 *********/
module lookup( out, a, b, clk );
output[3:0] out; // 乘积
input[1:0] a, b; // 操作数
input clk;
reg[3:0] out;
reg[3:0] address; // 存储器地址;always @( posedge clk )
begin
address = { a, b };
case( address )
4h0: out = 4b0000;
4h1: out = 4b0000;
4h2: out = 4b0000;
4h3: out = 4b0000;
4h4: out = 4b0000;
4h5: out = 4b0001;
4h6: out = 4b0010;
4h7: out = 4b009;; 4h8: out = 4b0000;
4h9: out = 4b0010;
4ha: out = 4b0100;
4hb: out = 4b090;
4hc: out = 4b0000;
4hd: out = 4b009;
4he: out = 4b090;
4hf: out = 4b1001;
default: out = 4bx;
endcase
end
endmodule;/*************** 4×4查找表乘法器 ****************/
module mult4x4( out, a, b, clk );
output[7:0] out; // 乘积
input[3:0] a, b; // 操作数
input clk;
reg[7:0] out;
reg[1:0] firsta, firstb; // 操作数高2位
reg[1:0] seconda, secondb; // 操作数低2位
wire[3:0] outa, outb, outc, outd; // 乘积每2位1组;always @( posedge clk )
begin
firsta = a[3:2];
seconda = a[1:0];
firstb = b[3:2];
secondb = b[1:0];
end;lookup m1( outa, firsta, firstb, clk ), // 元件调用
m2( outb, firsta, secondb, clk ),
m3( outc, seconda, firstb, clk ),
m4( outd, seconda, secondb, clk );
always @( posedge clk )
begin
ou
您可能关注的文档
- 主题班会_中秋会.ppt
- 主题班会_中学生如何正确使用手机.ppt
- 主题班会_如何做一名文明的中学生.ppt
- 主题班会_争先创优从个人做起.ppt
- 主题班会[我是校园文明小主人]1.ppt
- 主题班会_广州亚运介绍.ppt
- 主题班会_理解与回报.ppt
- 主题班会_我的理想.ppt
- 主题班会_青春励志.ppt
- 主题班会_爱国_从我做起.ppt
- 【可行性报告】2023年戊二酸二甲酯项目可行性研究分析报告 .pdf
- 《油画风景写生》教学大纲优选x .pdf
- 【可行性报告】2023年电线线缆项目可行性研究分析报告 .pdf
- 《易错题》初中七年级数学下册第五章《相交线与平行线》经典练习(专题.pdf
- 《为人民服务》教案(共五篇) .pdf
- 【Java入门提高篇】Day32Java容器类详解(十四)ArrayDeque详解.pdf
- 一等奖鲁迅《祝福》教学设计(真题8篇) .pdf
- 《“鱼米之乡”——长江三角洲地区》推荐教学设计(第2课时) .pdf
- 【可行性报告】2023年普通车床行业项目可行性分析报告 .pdf
- 【可行性报告】2023年生发剂行业项目可行性分析报告 .pdf
文档评论(0)