12数字逻辑5-2.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 时序电路举例 ENTITY r1 IS PORT ( d : in BIT; clk : in BIT; q : out BIT); END r1; ARCHITECTURE reg1 OF r1 IS SIGNAL a, b : BIT; 信号 BEGIN PROCESS (clk) BEGIN IF rising_edge(clk) THEN -- CLKEVENT AND CLK=1 q = b; b = a; a = d; END IF; END PROCESS; END reg1; 注意三个END! * 4位可逆计数器 ENTITY count_4 IS PORT (clk, rst, updn : in std_logic; q : out std_logic_vector(3 downto 0)); END count_4; ARCHITECTURE logic OF count_a IS BEGIN PROCESS(rst, clk) SIQNAL tmp_q : std_logic_vector(3 downto 0); BEGIN IF rst = ‘0’ THEN tmp_q = 0; (异步复位) ELSIF rising_edge(clk) THEN IF updn = 1 THEN tmp_q = tmp_q + 1; ELSE tmp_q = tmp_q - 1; END IF; q = tmp_q; END IF; END PROCESS; END logic; * 4位加法计数器的VHDL描述 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; USE IEEE.STD_LOGIC_UNSIGNED.ALL ; ENTITY CNT4 IS PORT ( CLK : IN BIT ; Q : BUFFER INTEGER RANGE 15 DOWNTO 0 ) ; END ; ARCHITECTURE bhv OF CNT4 IS BEGIN PROCESS (CLK) BEGIN IF CLKEVENT AND CLK = 1 THEN Q = Q + 1 ; END IF; END PROCESS ; END bhv; * 带有复位功能的10进制计数器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT10 IS PORT (CLK,RST : IN STD_LOGIC; COUT : OUT ); END CNT10; ARCHITECTURE behav OF CNT10 IS BEGIN PROCESS(CLK) VARIABLE C_Q : STD_LOGIC_VECTOR(3 DOWNTO 0); ---定义当前状态 * ARCHITECTURE behav OF CNT10 IS BEGIN PROCESS(CLK) VARIABLE C_Q : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN ----续上页 IF RST = ‘1’ THEN C_Q := ‘0’ ; --上升沿无关,异步复位 END IF; IF CLK‘EVENT AND CLK=’1‘ THEN -- 上升沿 IF C_Q = “1001”, THEN C_Q :=‘0’ -- 计数0到9, COUT = ‘1’; -- 进位信号,次态为零 ELSE C_Q := C_Q + 1 ; END IF; END IF; END PROCESS; END behav; * 例题: 用VHD

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档