2016年数字逻辑课程设计报告格式.doc_第1页
2016年数字逻辑课程设计报告格式.doc_第2页
2016年数字逻辑课程设计报告格式.doc_第3页
2016年数字逻辑课程设计报告格式.doc_第4页
2016年数字逻辑课程设计报告格式.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河北地质大学信息工程学院数字逻辑课程设计报告题 目 运算器的设计 姓 名 高伟东 学 号 414109070306 班 号 4141090703 指导老师 关文革 成 绩 2016年6月1. 设计内容键盘上有0-9及+-=按键,实现输入的2革个一位十进制数的加、减运算,有线性结构的键盘,有清除键。2. 系统总体设计3.(1) 系统顶层框图系统由七个模块组成,按键处理模块、操作数1寄存器、操作数2寄存器、操作符触发器、运算器模块、结果寄存器、控制器模块。(2) 系统逻辑框图4. 子模块1设计(1) 子模块元件图及输入输出描述(包括每个信号名字)按键器,用于输入数字及运算符LIBRARY ieee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_unsigned.ALL;USE ieee.std_logic_arith.ALL;ENTITY keypad IS PORT (key_0,key_1,key_2,key_3,key_4,key_5,key_6,key_7,key_8,key_9:IN STD_LOGIC;key_add,key_sub,key_equ,key_reset:IN STD_LOGIC;numout: OUT integer RANGE 0 TO 20;press_num: OUT STD_LOGIC;opout:OUT STD_LOGIC;press_op:OUT STD_LOGIC;press_equ:OUT STD_LOGIC);END ENTITY keypad;ARCHITECTURE arc1 OF keypad ISBEGINPROCESS(key_0,key_1,key_2,key_3,key_4,key_5,key_6,key_7,key_8,key_9,key_add,key_sub,key_equ)VARIABLE key:STD_LOGIC_VECTOR (9 DOWNTO 0);BEGINkey:=key_9 & key_8 & key_7 & key_6 & key_5 & key_4 & key_3 & key_2 & key_1 & key_0;CASE key ISWHEN 1111111110=numout=0;press_numnumout=1;press_numnumout=2;press_numnumout=3;press_numnumout=4;press_numnumout=5;press_numnumout=6;press_numnumout=7;press_numnumout=8;press_numnumout=9;press_numnumout=0;press_num=0;END CASE;IF key_add=0 THEN opout=0;press_op=1;ELSIF key_sub=0 THEN opout=1;press_op=1;ELSE opout=Z;press_op=0;END IF;IF key_equ=0 THEN press_equ=1;ELSE press_equ=0;END IF;END PROCESS;END ARCHITECTURE arc1;。寄存器,用以储存数据和运算结果Clk为脉冲端,reset为清零端,din为输入端,qout为输出端。LIBRARY ieee;USE ieee.std_logic_1164.ALL;USE ieee. std_logic_unsigned.ALL;USE ieee.std_logic_arith.ALL;ENTITY reg IS PORT ( clk,reset: IN STD_LOGIC; din:IN integer range 0 to 20; qout: OUT integer range 0 to 20); END ENTITY reg;ARCHITECTURE arc1 OF reg ISBEGIN PROCESS(clk) BEGINIF(reset=0)thenqout=0;ELSIF(clkevent and clk=1) THEN qout=din; END IF;END PROCESS;END ARCHITECTURE arc1; D触发器D触发器 Clk 脉冲端,Q运算符号输出端D 运算符号输入端LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY CFQ ISPORT(clk,D:IN STD_LOGIC; Q:OUT STD_LOGIC);END CFQ;ARCHITECTURE be_CFQ OF CFQ ISBEGIN PROCESS(clk) BEGIN IF(clkEVENT AND clk=1) THEN Q data:=ain+bin; IF data9 THEN result data:=ain-bin; END CASE; result=data; END PROCESS;END ARCHITECTURE arcl;转换器将输出结果分为两个一位数library ieee;use ieee.std_logic_1164.ALL;use ieee.std_logic_unsigned.ALL;use ieee.std_logic_arith.ALL;ENTITY FL IS PORT (qout:IN integer range 0 to 20; a,b:OUT integer range 0 to 20);END ENTITY FL;ARCHITECTURE arcl OF FL ISBEGIN PROCESS(qout) VARIABLE data:integer range 0 to 20; BEGIN a=qout/10; b=qout rem 10; END PROCESS;END ARCHITECTURE arcl;。6. 控制模块设计 控制器Reset启动端,clk脉冲端LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY KZQ IS PORT ( reset,clk,press_num,press_op,press_equ: IN STD_LOGIC; enreg1,enreg2,enop,enreg3: OUT STD_LOGIC );END KZQ;ARCHITECTURE one OF KZQ IS type state_type is (wait_num1,wait_op,wait_num2,wait_equ,outresult); signal state: state_type;BEGIN process(reset,clk) begin if reset=1 then state if press_num=1 then state if press_op=1 then state if press_num=1 then state if press_equ=1 then state state state enreg1=0;enreg2=0;enop=0;enreg3 enreg1=1;enreg2=0;enop=0;enreg3 enreg1=0;enreg2=0;enop=1;enreg3 enreg1=0;enreg2=1;enop=1;enreg3 enreg1=0;enreg2=0;enop=1;enreg3 enreg1=0;enreg2=0;enop=0;enreg3=0; end case; end process;end one; 7. 顶层模块连线设计(1) 顶层连线图(2)8. 总结 包括实验进行的是否顺利,说明实验过程中出现的问题、原因以及解决对策,或者实验失败的原因,本次实验的收获(可以与实验目的相呼应),以后应该注意的问题等。1.的过程中,遇到了清零端应该家在哪的问题,后来经过我们的讨论和请教老师

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论