第五章 组合逻辑电路的VHDL语言描述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LIBRARY IEEE ; --2输入与非门 USE IEEE.STD_LOGIC_1164.ALL ;
NAND2
ENTITY cynand2 IS
PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cynand2 ; ARCHITECTURE behavioral OF cynand2 IS BEGIN dataout <= datain1 NAND datain2 ; END ARCHITECTURE behavioral ; --行为描述
第5章 组合逻辑电路的VHDL描述
仿真波形
第5章 组合逻辑电路的VHDL描述
5.1.4 2输入异或门电路
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY cyxor2 IS PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ;
第5章 组合逻辑电路的VHDL描述
ARCHITECTURE behavioral_2 OF cynxor2 IS BEGIN PROCESS ( datain1, datain2 ) VARIABLE comb : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN comb := datain1 & datain2 ; CASE comb IS WHEN "00" => dataout <= '1' ; WHEN "01" => dataout <= '0' ; WHEN "10" => dataout <= '0' ; WHEN "11" => dataout <= '1' ; WHEN OTHERS => dataout <= 'X' ; END CASE ; END PROCESS ; END ARCHITECTURE behavioral_2 ;
第5章 组合逻辑电路的VHDL描述
ARCHITECTURE behavioral_2 OF cynor2 IS BEGIN PROCESS ( datain1, datain2 ) VARIABLE comb : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN comb := datain1 & datain2 ; CASE comb IS WHEN "00" => dataout <= '1' ; WHEN "01" => dataout <= '0' ; WHEN "10" => dataout <= '0' ; WHEN "11" => dataout <= '0' ; WHEN OTHERS => dataout <= 'X' ; END CASE ; END PROCESS ; END ARCHITECTURE behavioral_2 ;
第5章 组合逻辑电路的VHDL描述
仿真波形
第5章 组合逻辑电路的VHDL描述
5.1.3 反相器电路
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ;
NOT
inst4
ENTITY cynot IS
PORT ( datain : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cynot ; ARCHITECTURE behavioral OF cynot IS BEGIN dataout <= NOT datain ; END ARCHITECTURE behavioral ;
第5章 组合逻辑电路的VHDL描述
第五章 VHDL基本描述语句
5.1 基本逻辑门电路
5.2 选择器电路
5.3 编码器与译码器电路 5.4 三态门及总线缓冲器电路 5.5 加法器电路 5.6 求补器电路
5.7 乘法器电路
5.8 数值比较器电路 5.9 移位器电路
第5章 组合逻辑电路的VHDL描述
5.1 基本逻辑门电路
第5章 组合逻辑电路的VHDL描述
仿真波形
第5章 组合逻辑电路的VHDL描述
5.1.6 多输入门电路
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ;
OR3
ENTITY cyor3 IS
PORT ( datain1, datain2, datain3 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cyor3 ; ARCHITECTURE behavioral OF cyor3 IS BEGIN dataout <= datain1 OR datain2 OR datain3 ; END ARCHITECTURE behavioral ;
XNOR
inst6
dataout <= NOT ( datain1 XOR datain2 ) ;
END ARCHITECTURE behavioral ;
第5章 组合逻辑电路的VHDL描述
LIBRARY IEEE ;
USE IEEE.STD_LOGIC_1164.ALL ;
ENTITY cynxor2 IS PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cynxor2 ;
第5章 组合逻辑电路的VHDL描述
仿真波形
第5章 组合逻辑电路的VHDL描述
5.1.5 2输入同或门电路
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY cynxor2 IS PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cynxor2 ; ARCHITECTURE behavioral OF cynxor2 IS BEGIN
XOR
inst5
END ENTITY cyxor2 ;
ARCHITECTURE behavioral OF cyxor2 IS BEGIN dataout <= datain1 XOR datain2 ; END ARCHITECTURE behavioral ;
第5章 组合逻辑电路的VHDL描述
LIBRARY IEEE ;
USE IEEE.STD_LOGIC_1164.ALL ;
ENTITY cyxor2 IS PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cyxor2 ;
第5章 组合逻辑电路的VHDL描述
inst3
第5章 组合逻辑电路的VHDL描述
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ;
ENTITY cynor2 IS
PORT ( datain1, datain2 : IN STD_LOGIC ; OUT STD_LOGIC ) ; END ENTITY cynor2 ; dataout :
第5章 组合逻辑电路的VHDL描述
ARCHITECTURE behavioral_2 OF cynand2 IS BEGIN PROCESS ( datain1, datain2 ) VARIABLE comb : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN comb := datain1 & datain2 ; CASE comb IS WHEN “00” => dataout <= ‘1’ ; --结构描述 WHEN "01" => dataout <= '1' ; WHEN "10" => dataout <= '1' ; WHEN "11" => dataout <= '0' ; WHEN OTHERS => dataout <= 'X' ; END CASE ; END PROCESS ; END ARCHITECTURE behavioral_2 ;
第5章 组合逻辑电路的VHDL描述
仿真波形
第5章 组合逻辑电路的VHDL描述
5.1.2 2输入或非门
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ;
NOR2
ENTห้องสมุดไป่ตู้TY cynor2 IS
PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cynor2 ; ARCHITECTURE behavioral OF cynor2 IS BEGIN dataout <= datain1 NOR datain2 ; END ARCHITECTURE behavioral ;
inst1
第5章 组合逻辑电路的VHDL描述
LIBRARY IEEE ; --2输入与非门
USE IEEE.STD_LOGIC_1164.ALL ;
ENTITY cynand2 IS PORT ( datain1, datain2 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cynand2 ;
inst
第5章 组合逻辑电路的VHDL描述
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY cyor3 IS PORT ( datain1, datain2, datain3 : IN STD_LOGIC ; dataout : OUT STD_LOGIC ) ; END ENTITY cyor3 ; ARCHITECTURE behavioral_2 OF cyor3 IS BEGIN PROCESS ( datain1, datain2, datain3 )
基本门电路用VHDL语言来描述十分方便。为方便起见, 在下面的两输入模块中,使用VHDL中定义的逻辑运算符, 同时实现一个与门、或门、与非门、或非门、异或门及反 相器的逻辑。 这些基本逻辑门电路都组织成基本元件的形式,编程 时可直接调用 。
第5章 组合逻辑电路的VHDL描述
5.1.1 2输入与非门电路
BEGIN
PROCESS ( a, datain ) BEGIN IF ( datain = '1' ) THEN dataout <= '0' ; ELSE dataout <= '1' ; END IF ; END PROCESS ; END ARCHITECTURE behavioral_2 ; --RTL描述方式 ,MAX中需要加入时钟a
ARCHITECTURE behavioral_2 OF cyxor2 IS BEGIN PROCESS ( datain1, datain2 ) VARIABLE comb : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN comb := datain1 & datain2 ; CASE comb IS WHEN "00" => dataout <= '0' ; WHEN "01" => dataout <= '1' ; WHEN "10" => dataout <= '1' ; WHEN "11" => dataout <= '0' ; WHEN OTHERS => dataout <= 'X' ; END CASE ; END PROCESS ; END ARCHITECTURE behavioral_2 ;
第5章 组合逻辑电路的VHDL描述
LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ;
ENTITY cynot IS
PORT ( a, datain : IN STD_LOGIC ; END ENTITY cynot ; ARCHITECTURE behavioral_2 OF cynot IS dataout : OUT STD_LOGIC ) ;
相关文档
最新文档