eda课程设计报告5位整数乘法器设计.docVIP

  • 10
  • 0
  • 约9.98千字
  • 约 15页
  • 2019-09-03 发布于上海
  • 举报
哈尔滨工业大学(威海) 信息科学与工程学院 EDA课程设计报告 有符号5位整数乘法器设计与制作 指导老师: 学生班级: 学生姓名: 学生学号: 目 录 TOC \o 1-3 \h \z \u 1.课程设计的性质、目的和任务 3 2.题目要求 3 3.设计步骤 4 3.1整体原理框图: 4 3.2乘法器整体电路原理图: 4 3.3输入模块: 4 3.4运算模块: 5 3.5显示控制模块: 8 3.6显示模块: 9 4.整体仿真 14 5. 调试中遇到的问题及解决的方法 15 6.心得体会 15 7.建议: 15 1.课程设计的性质、目的和任务 创新精神和实践能力二者之中,实践能力是基础和根本。这是由于创新基于实践、源于实践,实践出真知,实践检验真理。实践活动是创新的源泉,也是人才成长的必由之路。 通过课程设计的锻炼,要求学生掌握电路的一般设计方法,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,培养学生的创新精神。 2.题目要求 设计一个两个5位数相乘的乘法器。用发光二极管显示输入数值,用7段显示器显示十进制结果。乘数和被乘数分两次输入。在输入乘数和被乘数时,要求显示十进制输入数据。输入显示和计算结果显示,采用分时显示方式进行,可参见计算器的显示功能 时钟结果寄存累加器相乘逻辑移位寄存移位寄存被乘数乘数 时钟 结果寄存 累加器 相乘逻辑 移位寄存 移位寄存 被乘数 乘数 3.设计步骤 3.1整体原理框图: 输入模块 输入模块 运算模块 显示控制模块 显示模块 3.2乘法器整体电路原理图: 3.3输入模块: 模块说明:由 CH,DH控制数据的输入,由SHUJU端输入数据,当CH,DH为0,0时输入被乘数,由输出端A输出,当按下“乘号键CH”即CH,DH为1,0时输入乘数,由输出端B输出,当RESET为0时输出端清零。 VHDL程序代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY shuru IS PORT(CH,DH,RESET,CLK:IN STD_LOGIC; shuju:IN STD_LOGIC_VECTOR(4 DOWNTO 0); A,B:OUT STD_LOGIC_VECTOR(4 DOWNTO 0)); END shuru; ARCHITECTURE behave OF shuru IS BEGIN PROCESS(CH,DH,shuju,RESET,CLK) BEGIN IF CLKEVENT AND CLK=1 THEN IF RESET=1 THEN A=00000; B=00000; ELSE IF CH=0 AND DH=0 THEN A=shuju; ELSIF CH=1 AND DH=0 THEN B=shuju; ELSE NULL; END IF; END IF; END IF; END PROCESS; END behave; 3.4运算模块: 模块说明:分别由AO和BO端接收被乘数和乘数,由CJ端输出带符号位的二进制乘积结果。此模块由三个子模块组成:“数字与符号分离子模块”,“乘法运算子模块”及“数字与符号重组子模块”。 VHDL程序代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY yunsuan IS PORT(A0:IN STD_LOGIC_VECTOR(4 DOWNTO 0); B0:IN STD_LOGIC_VECTOR(4 DOWNTO 0); CJ:OUT STD_LOGIC_VECTOR(8 DOWNTO 0)); END yunsuan; ARCHITECTURE BEHAVE OF yunsuan IS COMPONENT sffl PORT(A,B:IN STD_LO

文档评论(0)

1亿VIP精品文档

相关文档