数字逻辑课程设计---基于fpga的简单运算器内容摘要:

KADD) BEGIN IF RSTN=39。 039。 THEN TKADD=39。 039。 ELSIF (KADD39。 EVENT AND KADD=39。 139。 )THEN TKADD=39。 139。 END IF。 END PROCESS。 PROCESS(RSTN,KSUB) BEGIN IF RSTN=39。 039。 THEN TKSUB=39。 039。 ELSIF (KSUB39。 EVENT AND KSUB=39。 139。 )THEN TKSUB=39。 139。 END IF。 END PROCESS。 PROCESS(RSTN,KAND) BEGIN IF RSTN=39。 039。 THEN TKAND=39。 039。 ELSIF (KAND39。 EVENT AND KAND=39。 139。 )THEN TKAND=39。 139。 END IF。 END PROCESS。 PROCESS(RSTN,KXOR) 数字逻辑课程设计报告 11 BEGIN IF RSTN=39。 039。 THEN TKXOR=39。 039。 ELSIF (KXOR39。 EVENT AND KXOR=39。 139。 )THEN TKXOR=39。 139。 END IF。 END PROCESS。 PROCESS(RSTN,KEQU) BEGIN IF RSTN=39。 039。 THEN TKEQU=39。 039。 ELSIF (KEQU39。 EVENT AND KEQU=39。 139。 )THEN TKEQU=39。 139。 END IF。 END PROCESS。 PROCESS(RSTN,CLK,TKADD,TKSUB,TKAND,TKXOR,TKEQU,TA,TB) BEGIN IF RSTN=39。 039。 THEN YSF=00。 EN=39。 039。 XSYSF=00100000。 ELSIF(CLK39。 EVENT AND CLK=39。 139。 ) THEN IF TKADD=39。 139。 THEN YSF=00。 XSYSF=00101011。 A=TA。 B=TB。 END IF。 IF TKSUB=39。 139。 THEN YSF=01。 XSYSF=00101101。 A=TA。 B=TB。 END IF。 IF TKAND=39。 139。 THEN YSF=10。 XSYSF=00101010。 A=TA。 C=TB。 END IF。 IF TKEQU=39。 139。 THEN EN=39。 139。 END IF。 END IF。 END PROCESS。 PROCESS(TA,TB,CLK) BEGIN IF(CLK39。 EVENT AND CLK=39。 139。 )THEN CASE TA IS WHEN 0000=XA=00110000。 WHEN 0001=XA=00110001。 WHEN 0010=XA=00110010。 数字逻辑课程设计报告 12 WHEN 0011=XA=00110011。 WHEN 0100=XA=00110100。 WHEN 0101=XA=00110101。 WHEN 0110=XA=00110110。 WHEN 0111=XA=00110111。 WHEN 1000=XA=00111000。 WHEN 1001=XA=00111001。 WHEN 1010=XA=01000001。 WHEN 1011=XA=01000010。 WHEN 1100=XA=01000011。 WHEN 1101=XA=01000100。 WHEN 1110=XA=01000101。 WHEN 1111=XA=01000110。 WHEN OTHERS =NULL。 END CASE。 CASE TB IS WHEN 0000=XB=00110000。 WHEN 0001=XB=00110001。 WHEN 0010=XB=00110010。 WHEN 0011=XB=00110011。 WHEN 0100=XB=00110100。 WHEN 0101=XB=00110101。 WHEN 0110=XB=00110110。 WHEN 0111=XB=00110111。 WHEN 1000=XB=00111000。 WHEN 1001=XB=00111001。 WHEN 1010=XB=01000001。 WHEN 1011=XB=01000010。 WHEN 1100=XB=01000011。 WHEN 1101=XB=01000110。 数字逻辑课程设计报告 13 WHEN 1110=XB=01000101。 WHEN 1111=XB=01000110。 WHEN OTHERS=NULL。 END CASE。 END IF。 END PROCESS。 END ARCH。 按键模块仿真波形 数字逻辑课程设计报告 14 按键模块电路封装图 按键模块功能 实现对按键的设定及控制,得以把运算数据输入电路。 控制信号产生模块 控制模块 VHDL 程序 LIBRARY IEEE。 USE。 USE。 USE。 ENTITY CP3 IS PORT(RSTN,CLK:IN STD_LOGIC。 CP,CPT,CPMUX:BUFFER STD_LOGIC。 SADD,SSUB,SAND,SXOR:OUT STD_LOGIC_VECTOR(1 DOWNTO 0))。 数字逻辑课程设计报告 15 END CP3。 ARCHITECTURE BEHAVIORAL OF CP3 IS TYPE STATE1 IS(S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,S11)。 SIGNAL PRES1,NXS1:STATE1。 TYPE STATE2 IS(SS0,SS1,SS2,SS3)。 SIGNAL PRES2,NXS2:STATE2。 BEGIN PROCESS(CLK,RSTN) BEGIN IF (RSTN=39。 039。 )THEN PRES1=S0。 ELSIF(CLK39。 EVENT AND CLK=39。 139。 )THEN PRES1=NXS1。 END IF。 END PROCESS。 PROCESS(PRES1) BEGIN CASE PRES1 IS WHEN S0= CP=39。 139。 CPMUX=39。 039。 CPT=39。 039。 NXS1=S1。 WHEN S1= CP=39。 039。 CPMUX=39。 039。 CPT=39。 039。 NXS1=S2。 WHEN S2= CP=39。 039。 CPMUX=39。 139。 CPT=39。 039。 NXS1=S3。 WHEN S3= CP=39。 139。 CPMUX=39。 139。 CPT=39。 039。 NXS1=S4。 WHEN S4= CP=39。 139。 CPMUX=39。 039。 CPT=39。 039。 NXS1=S5。 WHEN S5= CP=39。 039。 CPMUX=39。 039。 CPT=39。 039。 NXS1=S6。 WHEN S6= 数字逻辑课程设计报告 16 CP=39。 039。 CPMUX=39。 139。 CPT=39。 039。 NXS1=S7。 WHEN S7= CP=39。 139。 CPMUX=39。 139。 CPT=39。 039。 NXS1=S8。 WHEN S8= CP=39。 139。 CPMUX=39。 139。 CPT=39。 039。 NXS1=S9。 WHEN S9= CP=39。 039。 CPMUX=39。 139。 CPT=39。 139。 NXS1=S10。 WHEN S10= CP=39。 039。 CPMUX=39。 139。 CPT=39。 139。 NXS1=S11。 WHEN S11= CP=39。 139。 CPMUX=39。 139。 CPT=39。 139。 NXS1=S11。 END CASE。 END PROCESS。 PROCESS(CP,RSTN) BEGIN IF (RSTN=39。 039。 )THEN PRES2=SS0。 ELSIF(CP39。 EVENT AND CP=39。 039。 )THEN PRES2=NXS2。 END IF。 END PROCESS。 PROCESS(PRES2) BEGIN CASE PRES2 IS WHEN SS0= SADD=00。 SSUB=00。 SAND=00。 SXOR=00。 NXS2=SS1。 WHEN SS1= SADD=01。 SSUB=00。 SAND=00。 SXOR=00。 NXS2=SS2。 WHEN SS2= 数字逻辑课程设计报告 17 SADD=00。 SSUB=01。 SAND=10。 SXOR=11。 NXS2=SS3。 WHEN SS3= SADD=00。 SSUB=01。 SAND=10。 SXOR=11。 NXS2=SS3。 END CASE。 END PROCESS。 END BEHAVIORAL。 控制模块仿真波形 控制模块电路封装图 数字逻辑课程设计报告 18 控制模块功能 实现对电路 运算 的控制。 修正模块 修正模块 VHDL 程序 LIBRARY IEEE。 USE。 USE。 USE。 ENTITY XZJG IS PORT(RSTN:IN STD_LOGIC。 S:IN STD_LOGIC_VECTOR(1 DOWNTO 0)。 CLK,OVER,COUT:IN STD_LOGIC。 T:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 FH:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)。 SH,SL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0))。 END XZJG。 ARCHITECTURE BEHAVIORAL OF XZJG IS SIGNAL OC:STD_LOGIC_VECTOR(1 DOWNTO 0)。 SIGNAL TH,TL:STD_LOGIC_VECTOR(3 DOWNTO 0)。 BEGIN PROCESS(RSTN,CLK,OVER,COUT) BEGIN IF(CLK39。 EVENT AND CLK=39。 139。 )THEN OC=OVERamp。 COUT。 数字逻辑课程设计报告 19 END IF。 END PROCESS。 PROCESS(OC,CLK) BEGIN IF(RSTN=39。 039。 )THEN TH=0000。 TL=0000。 ELS。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。