eda技术与vhdl实验教案内容摘要:

coutt : OUT STD_LOGIC)。 END ENTITY quen4b。 ARCHITECTURE one OF quen4b IS COMPONENT TESTCTL PORT ( CLKK : IN STD_LOGIC。 CNT_EN,RST_CNT,LOAD : OUT STD_LOGIC)。 END COMPONENT。 COMPONENT t10 PORT (clk : IN STD_LOGIC。 clr : IN STD_LOGIC。 enb : IN STD_LOGIC。 outy : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 cout : OUT STD_LOGIC)。 END COMPONENT。 COMPONENT REG4B PORT ( LOAD : IN STD_LOGIC。 DIN : IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 DOUT : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 END COMPONENT。 SIGNAL a_ena, b_rst,c_load,cout1,cout2,cout3 : STD_LOGIC。 SIGNAL outy1,outy2,outy3,outy4 : STD_LOGIC_VECTOR(3 DOWNTO 0)。 BEGIN u1 : TESTCTL PORT MAP(clkk=clkin, CNT_EN=a_ena, RST_CNT=b_rst, LOAD=c_load)。 u2 : t10 PORT MAP(clk=fin, clr=b_rst, enb=a_ena, outy=outy1, cout=cout1)。 u3 : t10 PORT MAP(clk=cout1, clr=b_rst, enb=a_ena, outy=outy2, cout=cout2)。 u4 : t10 PORT MAP(clk=cout2, clr=b_rst, enb=a_ena, outy=outy3, cout=cout3)。 u5 : t10 PORT MAP(clk=cout3, clr=b_rst, enb=a_ena, outy=outy4, cout=coutt)。 u6 : REG4B PORT MAP(LOAD=c_load, DIN=outy1, DOUT=out1)。 u7 : REG4B PORT MAP(LOAD=c_load, DIN=outy2, DOUT=out2)。 u8 : REG4B PORT MAP(LOAD=c_load, DIN=outy3, DOUT=out3)。 u9 : REG4B PORT MAP(LOAD=c_load, DIN=outy4, DOUT=out4)。 END ARCHITECTURE one。 四位十进制频率计仿真波形( clkin:1s, fin:300us) 四位十进制频率 管脚锁定 实验模式: NO: 5 设计实体 I/O 标识 I/O 来源 /去向 信号名 芯片管脚序号 clkin Clock1 Clock1 55 fin Clock0 Clock0 54 out1 数码管 1 PIO16~PIO19 30~33 out2 数码管 2 PIO20~PIO23 36~39 out3 数码管 3 PIO24~PIO27 4 4 6 67 out4 数码管 4 PIO28~PIO31 6 6 70、 72 coutt 二极管 D1 PIO8 20 实验 七 数字秒表 VHDL 文本输入设计。 实验目的 熟悉 Quartus II 的使用。 学习时序电路的设计、仿真和硬件测试,进一步熟悉 VHDL 设计技术。 实验仪器 电脑, 实验开发系统 设计任务 设计一个计时范围为 秒 ~1 小时的数字秒表,应具有停表、恢复、清零功能。 实验要求 画出 系统的原理框图,说明系统中各主要组成部分的功能。 编写各个 VHDL 源程序。 根据选用的软件编好用于系统仿真的测试文件。 根据选用的软件及 EDA实验开发装置编好用于硬件验证的管脚锁定文件。 记录系统仿真、硬件验证结果。 记录实验过程中出现的问题及解决办法。 实验内容 3MHz→ 100Hz分频器( ) LIBRARY IEEE。 USE。 ENTITY CLKGEN IS PORT(CLK: IN STD_LOGIC。 NEWCLK: OUT STD_LOGIC)。 END ENTITY CLKGEN。 ARCHITECTURE ART OF CLKGEN IS SIGNAL CNTER:INTEGER RANGE 0 TO 1059999。 BEGIN PROCESS(CLK)IS BEGIN IF CLK39。 EVENT AND CLK=39。 139。 THEN IF CNTER=1029999 THEN CNTER=0。 ELSE CNTER=CNTER+1。 END IF。 END IF。 END PROCESS。 PROCESS(CNTER)IS BEGIN IF CNTER=1029999 THEN NEWCLK=39。 139。 ELSE NEWCLK=39。 039。 END IF。 END PROCESS。 END ARCHITECTURE ART。 六进制计数器( ) LIBRARY IEEE。 USE。 USE。 ENTITY CNT6 IS PORT(CLK:IN STD_LOGIC。 CLR:IN STD_LOGIC。 ENA:IN STD_LOGIC。 CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 CARRY_OUT:OUT STD_LOGIC)。 END ENTITY CNT6。 ARCHITECTURE ART OF CNT6 IS SIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0)。 BEGIN PROCESS(CLK,CLR,ENA)IS BEGIN IF CLR=39。 139。 THEN CQI=0000。 ELSIF CLK39。 EVENT AND CLK=39。 139。 THEN IF ENA=39。 139。 THEN IF CQI=0101THEN CQI=0000。 ELSE CQI=CQI+39。 139。 END IF。 END IF。 END IF。 END PROCESS。 PROCESS(CQI)IS BEGIN IF CQI=0000THEN CARRY_OUT=39。 139。 ELSE CARRY_OUT=39。 039。 END IF。 END PROCESS。 CQ=CQI。 END ARCHITECTURE ART。 十进制计数器( ) LIBRARY IEEE。 USE。 USE。 ENTITY CNT10 IS PORT(CLK:IN STD_LOGIC。 CLR:IN STD_LOGIC。 ENB:IN STD_LOGIC。 OUTY:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 COUT:OUT STD_LOGIC)。 END ENTITY CNT10。 ARCHITECTURE ART OF CNT10 IS SIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0)。 BEGIN PROCESS(CLK,CLR,ENB)IS BEGIN IF CLR=39。 139。 THEN CQI=0000。 ELSIF CLK39。 EVENT AND CLK=39。 139。 THEN IF ENB=39。 139。 THEN IF CQI=1001THEN CQI=0000。 ELSE CQI=CQI+39。 139。 END IF。 END IF。 END IF。 END PROCESS。 PROCESS(CQI)IS BEGIN IF CQI=0000THEN COUT=39。 139。 ELSE COUT=39。 039。 END IF。 END PROCESS。 OUTY=CQI。 END ARCHITECTURE ART。 数字秒表( ) LIBRARY IEEE。 USE。 ENTITY TIMES IS PORT(CLR:IN STD_LOGIC。 CLK:IN STD_LOGIC。 ENA:IN STD_LOGIC。 DOUT:OUT STD_LOGIC_VECTOR(23 DOWNTO 0))。 END ENTITY TIMES。 ARCHITECTURE ART OF TIMES IS COMPONENT CLKGEN IS PORT(CLK:IN STD_LOGIC。 NEWCLK:OUT STD_LOGIC)。 END COMPONENT CLKGEN。 COMPONENT CNT10 IS PORT(CLK,CLR,ENB:IN STD_LOGIC。 OUTY:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 COUT:OUT STD_LOGIC)。 END COMPONENT CNT10。 COMPONENT CNT6 IS PORT(CLK,CLR,ENA:IN STD_LOGIC。 CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 CARRY_OUT:OUT STD_LOGIC)。 END COMPONENT CNT6。 SIGNAL S0:STD_LOGIC。 SIGNAL S1,S2,S3,S4,S5:STD_LOGIC。 BEGIN U0:CLKGEN PORT MAP(CLK=CLK,NEWCLK=S0)。 U1:CNT10 PORT MAP(S0,CLR,ENA,DOUT(3 DOWNTO 0),S1)。 U2:CNT10 PORT MAP(S1,CLR,ENA,DOUT(7 DOWNTO 4),S2)。 U3:CNT10 PORT MAP(S2,CLR,ENA,DOUT(11 DOWNTO 8),S3)。 U4:CNT6 PORT MAP(S3,CLR,ENA,DOUT(15 DOWNTO 12),S4)。 U5:CNT10 PORT MAP(S4,CLR,ENA,DOUT(19 DOWNTO 16),S5)。 U6:CNT6 PORT MAP(S5,CLR,ENA,DOUT(23 DOWNTO 20))。 END ARCHITECTURE ART。 数字秒表 管脚锁定 实验模式: NO: 5 设计实体 I/O 标识 I/O 来源 /去向 信号名 芯片管脚序号 clr 键 1 PIO0 8 ena 键 2 PIO1 9 clk Clock0 Clock0 54 Dout(0)dout(3) 数码管 1 PIO16~PIO19 30~33 Dout(4)dout(7) 数码管 2 PIO20~PIO23 36~39 Dout(8)dout(11) 数码管 3 PIO24~PIO27 4 4 6 67 Dout(12)dout(15) 数码管 4 PIO28~PIO31 6 6 70、 72 Dout(16)dout(19) 数码管 5 PIO32~PIO35 7 7 7 80 Dout(20)dout(23) 数码管 6 PIO36~PIO39 8 8 8 86 实验 八 用状态机实现序列检测器的设计 一、实验目的: 掌握状态机的编程方法和步骤; 掌握用状态机设计序。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。