欢迎来到天天文库
浏览记录
ID:50300133
大小:916.50 KB
页数:84页
时间:2020-03-07
《EDA技术实用教程(第二版) 教学课件 作者 潘松 黄继业 第2版第5章_VHDL设计进阶.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章VHDL设计进阶EDA技术实用教程5.14位加法计数器的VHDL描述5.1.14位加法计数器【例5-1】ENTITYCNT4ISPORT(CLK:INBIT;Q:BUFFERINTEGERRANGE15DOWNTO0);END;ARCHITECTUREbhvOFCNT4ISBEGINPROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THENQ<=Q+1;ENDIF;ENDPROCESS;ENDbhv;5.1.2整数、自然数和正整数数据类型整数常量的书写方式示例如下:1十进制
2、整数0十进制整数35十进制整数10E3十进制整数16#D9#十六进制整数8#720#八进制整数2#11010010#二进制整数5.14位加法计数器的VHDL描述5.1.34位加法计数器的另一种表达方式【例5-2】LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT4ISPORT(CLK:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));END;ARCHITECT
3、UREbhvOFCNT4ISSIGNALQ1:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THENQ1<=Q1+1;ENDIF;Q<=Q1;ENDPROCESS;ENDbhv;5.1.34位加法计数器的另一种表达方式4位加法计数器由两大部分组成:图5-14位加法计数器RTL电路5.1.34位加法计数器的另一种表达方式5.14位加法计数器的VHDL描述图5-24位加法计数器工作时序5.1.34位加法计数器的另一种
4、表达方式5.14位加法计数器的VHDL描述数据类型:整数类型INTEGER、自然数类型、正整数类型POSITIVE。BUFFER模式:BUFFER表达特定端口的特定功能,并非是特定的端口结构。重载函数:程序包STD_LOGIC_UNSIGNED含有加号(+)和其他运算符的重载函数。计数器结构:加法计数由两部分组成:加1组合电路和寄存器时序电路。1.变量2.省略赋值操作符(OTHERS=>X)为了简化表达才使用短语“(OTHERS=>X)”,这是一个省略赋值操作符,它可以在较多位的位矢量赋值中作省略化的赋值
5、,如以下语句:SIGNALd1:STD_LOGIC_VECTOR(4DOWNTO0);VARIABLEa1:STD_LOGIC_VECTOR(15DOWNTO0);...d1<=(OTHERS=>'0');a1:=(OTHERS=>'0');5.2不同工作方式的时序电路设计5.2.1相关语法5.2.2带有复位和时钟使能的10进制计数器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT10ISPORT
6、(CLK,RST,EN:INSTD_LOGIC;CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);COUT:OUTSTD_LOGIC);ENDCNT10;ARCHITECTUREbehavOFCNT10ISBEGINPROCESS(CLK,RST,EN)VARIABLECQI:STD_LOGIC_VECTOR(3DOWNTO0);BEGINIFRST='1'THENCQI:=(OTHERS=>'0');--计数器复位ELSIFCLK'EVENTANDCLK='1'THEN--检测时钟上升沿
7、IFEN='1'THEN--检测是否允许计数IFCQI<"1001"THENCQI:=CQI+1;--允许计数ELSECQI:=(OTHERS=>'0');--大于9,计数值清零ENDIF;ENDIF;ENDIF;IFCQI="1001"THENCOUT<='1';--计数大于9,输出进位信号ELSECOUT<='0';ENDIF;CQ<=CQI;--将计数值向端口输出ENDPROCESS;ENDbehav;【例5-3】5.2不同工作方式的时序电路设计5.2.2带有复位和时钟使能的10进制计数器图5-3例
8、5-3的RTL电路5.2不同工作方式的时序电路设计5.2.2带有复位和时钟使能的10进制计数器图5-4例5-3的工作时序5.2.3带有并行置位的移位寄存器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYSHFRTIS--8位右移寄存器PORT(CLK,LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(7DOWNTO0);QB:OUTSTD_LOGIC);E
此文档下载收益归作者所有