文档详情

[第四章VHDL设计初步.ppt

发布:2017-01-05约1.74万字共54页下载文档
文本预览下载声明
4.2.2 D触发器VHDL描述的语言现象说明 4. 上升沿检测表式和信号属性函数EVENT 关键词EVENT是信号属性,VHDL通过以下表式来测定某信号的跳变边沿: 信号名EVENT Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 5. 不完整条件语句与时序电路 【例4-9】 ENTITY COMP_BAD IS PORT( a1 : IN BIT; b1 : IN BIT; q1 : OUT BIT ); END ; ARCHITECTURE one OF COMP_BAD IS BEGIN PROCESS (a1,b1) BEGIN IF a1 b1 THEN q1 = 1 ; ELSIF a1 b1 THEN q1 = 0 ;-- 未提及当a1=b1时,q1作何操作 END IF; END PROCESS ; END ; 4.2.2 D触发器VHDL描述的语言现象说明 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 5. 不完整条件语句与时序电路 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 5. 不完整条件语句与时序电路 【例4-10】 ENTITY COMP_GOOD IS PORT(a1 : IN BIT; b1 : IN BIT; q1 : OUT BIT ); END ; ARCHITECTURE one OF COMP_GOOD IS BEGIN PROCESS (a1,b1) BEGIN IF a1 b1 THEN q1 = 1 ; ELSE q1 = 0 ; END IF; END PROCESS ; END Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 4.2.3 实现时序电路的VHDL不同表达方式 【例4-11】 ... PROCESS (CLK) BEGIN IF CLKEVENT AND (CLK=1) AND (CLKLAST_VALUE=0) THEN Q = D ; --确保CLK的变化是一次上升沿的跳变 END IF; END PROCESS ; 【例4-12】 ... PROCESS (CLK) BEGIN IF CLK=1 AND CLKLAST_VALUE=0 -- THEN Q = D ; END IF; END PROCESS ; Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 4.2.3 实现时序电路的VHDL不同表达方式 【例4-13】 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY DFF3 IS PORT (CLK : IN STD_LOGIC ; D : IN STD_LOGIC ; Q : OUT STD_LOGIC ); END ; ARCHITECTURE bhv OF DFF3 IS SIGNAL Q1 : STD_LOGIC; BEGIN PROCESS (CLK) BEGIN IF rising_edge(CLK) -- CLK的数据类型必须是STD_LOGIC THEN
显示全部
相似文档