版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
9.4.2相加-移位乘法器设计1.设计题目
设计一4×4相加-移位结构乘法器,示意图如下图所示。当发出一个高电平的START信号以后,乘法器开始乘法运算,运算完成以后发出高电平的DONE信号。9.4.2相加-移位乘法器设计2.设计方案方案一:用ROM来设计乘法器;方案二:设计成组合逻辑电路;方案三:相加-移位结构的乘法器。8根地址线,8根数据线,其容量为256×8。需要列出8输入、8输出的真值表,复杂。从数字系统的角度来设计乘法器,通用性好。乘法运算过程:乘法运算可分解为加法和移位两种操作。
若Bi=0,部分积P右移1位后与0000相加,相当于只移位不累加;若Bi=1,部分积P右移1位后与A相加,最终的部分积P即为A与B的乘积。3.算法设计9.4.2相加-移位乘法器设计乘法器的算法流程图(类似程序流程图)控制器+数据处理单元数据处理单元:寄存器,加法器,计数器。控制器:状态机。9.4.2相加-移位乘法器设计4.顶层原理图设计右移:从高位到低位9.4.2相加-移位乘法器设计(1)REGA模块的设计
REGA模块为4位并行寄存器。当LD=0时,处于保持状态;当LD=1时,处于并行置数状态。5.底层模块设计moduleREGA(CP,LD,D,Q);input[3:0]D;inputCP,LD;output[3:0]Q;reg[3:0]Q;always@(posedgeCP)beginif(LD)Q<=D;end endmodule9.4.2相加-移位乘法器设计(2)REGB模块的设计5.底层模块设计moduleREGB(CP,DIR,S,D,Q);input[3:0]D;inputCP,DIR;input[1:0]S;output[3:0]Q;reg[3:0]Q;always@(posedgeCP)begincase(S)2'b01:Q<={DIR,Q[3:1]};2'b11:Q<=D;endcaseend endmodule右移置数9.4.2相加-移位乘法器设计(3)REGC模块的设计5位多功能移位寄存器。moduleREGC(CP,RD,DIR,S,D,Q);input[4:0]D;inputCP,RD,DIR;input[1:0]S;output[4:0]Q;reg[4:0]Q;always@(posedgeCPorposedgeRD)beginif(RD)Q<=5'b00000;异步清零右移置数9.4.2相加-移位乘法器设计elsebegincase(S)2'b01:Q<={DIR,Q[4:1]};2'b11:Q<=D;endcaseendend endmodule(4)CNT模块的设计5进制加法计数器。RD=1,异步清零。ET=1,允许计数。if(ET)beginif(Q==3'b100)Q<=3'b000;elseQ<=Q+3'b001;endendendalways@(Q)beginif(Q==3'b100)CO=1'b1;elseCO=1'b0;end endmodulemoduleCNT(CP,RD,ET,CO);inputCP,RD,ET;outputCO;regCO;reg[2:0]Q;always@(posedgeCPorposedgeRD)beginif(RD)Q<=3'b000;elsebegin异步清零计数允许计数进位输出9.4.2相加-移位乘法器设计(5)ADD4B模块的设计4位二进制加法运算。moduleADD4B(A,B,S);input[3:0]A;input[3:0]B;outputreg[4:0]S;always@(A,B)beginS=A+B;end endmodule9.4.2相加-移位乘法器设计(6)MULCON模块的设计状态BiDONERDCACB1CB0CC1CC0ETS0S1S2S2S3××01×1000001000010000100001001000100001100110S1:控制器发出高电平有效的RD信号,对REGC和CNT清零,并通过CA和CB0、CB1信号将被乘数和乘数分别置入REGA和REGB。S2:通过ET信号使能计数器加1。若Bi为0,不对REGC置数;若Bi为1,则把加法器的结果置入REGC。S3:通过CC1、CC0与CB1、CB0信号使寄存器REGC和寄存器REGB右移一位。S0:初始状态。9.4.2相加-移位乘法器设计moduleMULCON(START,I4,BI,CP,DONE,RD,CA,CB1,CB0,CC1,CC0,ET);inputSTART,I4,BI,CP;outputDONE,RD,CA,CB1,CB0,CC1,CC0,ET;regDONE,RD,CA,CB1,CB0,CC1,CC0,ET;parameterS0=2‘b00;
parameterS1=2'b01;parameterS2=2'b10;parameterS3=2'b11;reg[1:0]current_state;reg[1:0]next_state;MULCON的Verilog代码输入信号输出信号状态定义9.4.2相加-移位乘法器设计always@(current_stateorSTARTorBIorI4)beginDONE=1'b0;RD=1'b0;CA=1'b0;CB1=1'b0;CB0=1'b0;CC1=1'b0;CC0=1'b0;ET=1'b0;case(current_state)S0:beginDONE=1'b1;if(START==1'b1)next_state=S1;elsenext_state=S0; end输出信号初始化用always语句实现摩尔型状态机中的组合电路9.4.2相加-移位乘法器设计S2:beginif(BI==1’b1)beginCC1=1'b1;CC0=1’b1;endET=1'b1;next_state=S3;endalways@(posedgeCP)begincurrent_state<=next_state;endendmoduleS3:beginif(I4==1'b1)next_state=S0;elsenext_state=S2; CB0=1'b1;CC0=1'b1; endendcaseend S1:beginRD=1'b1;CA=1'b1;CB1=1'b1;CB0=1’b1;next_state=S2;end用always语句实现状态机中的触发器9.4.2相加-移位乘法器设计状态BiDONERDCACB1CB0CC1CCETS0S1S2S2S3××01×1000001000010000100001001000100001100110MULCON仿真结果9.4.2相加-移位乘法器设计6乘法器顶层原理图设计9.4.2相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高三毕业生自我鉴定
- 临床脑梗偏瘫、长期卧床病人“防压疮”护理要点
- 重症医学相关精神障碍药物合理使用专家共识
- 七年级上册语文背记手册-文言文
- 2026年橡胶软化剂行业分析报告及未来发展趋势报告
- 2026年随身HiFi播放器行业分析报告及未来发展趋势报告
- 2026年玻璃展示柜行业分析报告及未来发展趋势报告
- 2026年辛酰氯行业分析报告及未来发展趋势报告
- 2026年漆器工艺品行业分析报告及未来发展趋势报告
- 慢性肾小球肾炎(慢性肾炎)患者手册
- 2026年辽宁省二级建造师继续教育复习真题AB卷附答案详解
- 2026年农电工通关题库及参考答案详解【综合题】
- 2026 年山东中考历年英语作文合集十篇
- 2026安徽阜阳市金能投资有限公司工作人员招聘7人笔试模拟试题及答案解析
- 2026年卫生高级职称面审答辩(重症医学科)副高面审经典试题及答案
- 2025年冀人版三年级科学下册全套测试卷新版
- 2026年教案合集2026年春人教版八年级下册英语Unit 1~Unit 8全册教案新版
- 2026年新一轮海洋综合调查海底地形地质生态环境本底
- 2026年统编版小学二年级道德与法治下册(全册)教学设计(附目录)
- 客运防汛应急预案(3篇)
- 水泥助磨剂生产质量管理规程
评论
0/150
提交评论