《数电课设乘法器.doc》由会员分享,可在线阅读,更多相关《数电课设乘法器.doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、电子技术课程设计报告题目:4位2进制乘法器学生姓名 尹汭 同组人员 邵奕天 专 业 自动化 学 号 指导教师 周跃庆 日 期 -1231 摘要本实验利用两位二进制数乘法中乘数各位与被乘数相乘后移位相加的原理,拓展得到两个四位二进制数相乘原理。在max+plus2上进行原理图设计和软件仿真,软件通过后,下载到EPF10K10中,在GW48系列EDA/SOC实验开发系统完成硬件调试。关键词:四位二进制乘法器;max+plus2;移位相加; Abstract This experiment was based on the principle of two binary multiplication
2、 that each multiplier times multiplicand then let the result shift and plus the result of the last, we expand it and get the principle of four binary multiplication. We design the schematic and simulate through max+plus2, then we load the programme to EPF10K10 after the debugging of the software. At
3、 the last we finished the hardware debugging in GW48 series EDA/SOC experimental development system.Key words:four binary multiplier;max+plus2;shift and sum一、完成课题的工作基础和实验条件1工作基础:数字电子技术课程、数字电子技术实验、max+plus 2软件2实验条件:(1)GW48系列EDA/SOC实验开发系统(提供有目标芯片FPGA-型号EP1K30TC144-3、数码显示器、二极管、三极管、钮子开关、晶振等资源);(2)电路设计器件
4、:74161(可预置四位二进制计数器)、74138(3-8线译码器)、74199(八位移位寄存器)、74116(双四位锁存器)、74194(四位双向通用移位寄存器)、(位二进制全加器),74148(8线-3线八进制优先编码器),74381(算术逻辑单元),74147(10线-4线优先编码器),74276(四jk触发器)。二、设计目的:1)应用数字电子课程所学的知识,结合实验室硬件,进行数字电子电路的实践训练,锻炼动手能力,提高分析和解决问题能力。2)掌握max+plus2软件使用方法,熟练进行电路原理设计及仿真。3)熟悉软件设计仿真硬件调试的开发模式。三、设计任务:输入两个十六进制数(范围0至
5、15),并在数码管显示;按下乘法按键,在两个数码管显示结果(16进制显示);运算结果超出范围255,蜂鸣器响起提示结果溢出。四、乘法器组成:乘法运算部分:译码器、计数器、移位寄存器、加法器、锁存器;时钟周期部分:8hz、16hz、1024hz方波(由实验台晶振提供)。四、乘法器原理:1.总电路图:图1说明:三个clock接口:clk8,clk16,clk1024分别外接8hz,16hz,1024hz的时钟,用来驱动乘法器。a0a7为输入端口,a0a3输入乘数,a4a7输入被乘数(高电平有效)。输入完毕后,通过给mul端口低电平,启动乘法器进行运算。outc0outc7为输出端口。2.乘法器内部
6、电路下图为mutiplier内部原理图,按照功能分为五个模块。 图2包括:总时序控制电路,输入锁存电路,运算电路,辅助时序控制电路,结果锁存/输出电路 总共五个模块。总时序控制电路:a.给74161输入8HZ的方波并作为总控制时序周期,74161的输出经74138译码后对应出7个周期:b.第0周期时Y0N产生低电平,使输入锁存电路的74166打开。c.第1周期时Y0N产生高电平以锁存住输入的数据。d.第2周期Y2N产生的低电平使74194及运算电路的74199置位从而把74166锁存住的数据读入到运算电路中。然后第36周期为运算周期.e.第6周期得出结果并锁存住结果。如果要从新运算,需要从清零
7、端clean输入低电平对74161,74194,74116清零。图3时序控制电路:输入锁存电路:4为二进制乘数通过双四位锁存器74116输给74194,被乘数输给74199。 图3输入锁存电路运算电路主时钟周期上升沿时,74199和74194移位:a.74199在第35周期共执行3次右移移位,以使得被乘数能移位相加以实现乘法运算。b.74194在第35周期共执行3次左移移位,因此从QA端口将依次输出乘数的4位以决定每个周期移位后的被乘数是否与上一周期的结果相加,1则移位相加,0则只移位不相加。c.主时钟周期高电平时,右侧的8位D触发器74mx_383打开,读入两个4位加法器74283的输出。主
8、时钟周期低电平时,右侧的8位D触发器74mx_383锁存。并且在主时钟周期保持低电平的时段中,辅助时钟周期产生一个脉冲输入给左侧的74mx_383使其在下一个主时钟周期高电平到来前将本周期的8位运算结果锁存住,以在下一周期作为被加数。从而构成一个移位,然后相加的大循环。图4运算电路结果锁存/输出电路图5结果锁存/输出电路注:74mx_383为自己封装的8位D触发器,内部电路如右图所示。G为控制端,高电平打开,低电平锁存。 图6 图774mx_188为自己封装的8位置零开关,内部电路如上图所示。En为控制端,高电平正常输出,低电平输出全置零。其作用主要为消除乘法器的初始不定态,即在主时钟周期第2
9、周期的低电平时为左侧的74mx_383清零。辅助时序控制电路给下方的74161输入16HZ的方波并作为辅助控制时序周期,并通过逻辑电路使其只在主时钟周期地点平时产生脉冲以实现对左侧的74mx_383的打开和锁存。图8辅助时序控制电路主时钟周期和辅助时钟周期的时序关系如下图所示:图93.时钟转换电路 图10主要负责产生主时钟周期和辅助时钟周期的差值 图11下图为两片74161构成的16进制计数器,由1024hz时钟驱动,作为一个计时器,使clk2在clk低电平持续1/64s后触发。 图12五、实验与调试原理图设计通过max+plus2完成,simulator仿真,得出逻辑时序图,分析结果,找到逻
10、辑和设计错误后,回到原理图修改,经多次调试,最终成功设计出乘法器。软件仿真成功后,将文件下载到EP1K30TC144-3,进行引脚分配。选择实验结构图1,输入两个4位二进制数后,按下触发键,即可在数码管上显示16进制表示的结果。六、实验总结:1)许多芯片第一次使用,查找数据手册又很费时间,我们利用学过的数电知识,通过对内部原理图的分析并结合相似芯片的功能得出芯片的使用方法,并用max+plus2进行仿真验证,提高了效率。2)有些74系列芯片不在元件库中,有的芯片不能达到我们的设计要求。一方面我们对相似功能芯片进行组合,设计出满足要求的可替代模块; 另一方面我们对已有的芯片内部结构进行改进,然后
11、进行封装。3)因为芯片很多,逻辑关系复杂,再加上我们缺乏设计经验,结果信号在传输中造成了严重的竞争冒险现象。通过软件仿真中时钟脉冲的调配,找到了合理的脉冲频率,避免了竞争冒险现象。4)EDA实验台只能提供几种固定的时钟频率,为了满足实验设计的时钟条件,我们又利用1024hz的时钟设计了一个计时器,配合乘法器8hz和16hz的主控时钟来使用,精确控制时钟打开关断时间。5)我们以小组合作的形式完成了这次实验,为加快工作效率,我们对模块电路进行分工,自己完成相应功能的模块后,封装好,然后放到总电路中再调试。我体会到了这种模块化设计的方便,它更易于发现解决问题,同时也意识到团队合作的重要性。6)由于是自己确定的题目,需要的知识储备相对较多,从网上搜寻了很多资料,比如74系列芯片列表部分型号芯片的数据手册。我们学会了利用网络途径解决遇到的问题。参考文献:1周跃庆.数字电子技术基础教程.M天津:天津大学出版社,2006.9 2王萍.电子技术实验教程.M北京:机械工业出版社,2009.1