8位比较器的VHDL代码

甚高密度脂蛋白 这篇文章介绍了一个8位比较器的代码。 74F521是一个8位身份比较器,如果有两个8位输入,则提供低输出 are matched. 

以下是真相表和 比较器 .

甚高密度脂蛋白 code for  比较器
真相表

甚高密度脂蛋白 code for  比较器
比较器的逻辑符号

甚高密度脂蛋白 code for  比较器
逻辑图(来自 74L521数据表 )

甚高密度脂蛋白 比较器的代码:

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
-- 甚高密度脂蛋白 project: 甚高密度脂蛋白 code for  比较器 
-- fpga4student.com FPGA projects, Verilog projects, 甚高密度脂蛋白 projects
实体 比较器 港口 ( 时钟 : std_logic ; -同步时钟 A,B : std_logic _vector (7 向下 0 ); -两个输入 IAB : std_logic ; -扩展输入(低电平有效) 输出量 : std_logic -当A = B时输出= 0 ); 结束 比较器 ; 建筑 行为的 比较器 信号 AB : std_logic _vector (7 向下 0 ); -临时变量 信号 结果 : std_logic ; 开始 AB ( 0) <= ( 一种( 0 )) 异或 ( B( 0 )); -组合电路 AB ( 1) <= ( 一种( 1 )) 异或 ( B( 1 )); AB ( 2) <= ( 一种( 2 )) 异或 ( B( 2 )); AB ( 3) <= ( 一种( 3 )) 异或 ( B( 3 )); AB ( 4) <= ( 一种( 4 )) 异或 ( B( 4 )); AB ( 5) <= ( 一种( 5 )) 异或 ( B( 5 )); AB ( 6) <= ( 一种( 6 )) 异或 ( B( 6 )); AB ( 7) <= ( 一种( 7 )) 异或 ( B( 7 )); -fpga4student.com FPGA项目,Verilog项目,VHDL项目 处理 (时钟) 开始 如果 (rising_edge(clock)) 然后 如果 (AB = x “ FF” IAB = '0') 然后 -检查A = B且IAB = 0 结果 <= '0'; 其他 结果 <= '1'; 结束 如果 ; 结束 如果 ; 结束 处理 ; 输出量 <= 结果; 结束 行为的 ;

测试台VHDL 比较器的代码:

--------------------------------------------------------------------
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
-fpga4student.com FPGA项目,Verilog项目,VHDL项目
-- 甚高密度脂蛋白 project: 甚高密度脂蛋白 code for  比较器 
ENTITY tb_comparator IS
END tb_comparator;
ARCHITECTURE behavior OF tb_comparator IS 
    -- Component Declaration for the Unit Under Test (UUT)
    COMPONENT  比较器 
    PORT(
          时钟  : IN    std_logic  ;
         A : IN     std_logic _vector  (7  向下  0 ); 
         B : IN     std_logic _vector  (7  向下  0 ); 
          IAB  : IN    std_logic  ;
          输出量  : OUT    std_logic  
         ); 
    END COMPONENT;
   --Inputs
    信号   时钟  :   std_logic   := '0';
    信号  A :    std_logic _vector  (7  向下  0) := (others => '0' ); 
    信号  B :    std_logic _vector  (7  向下  0) := (others => '0' ); 
    信号   IAB  :   std_logic   := '0';
 --Outputs
    信号   输出量  :   std_logic  ;
   -- Clock period definitions
   constant  时钟 _period : time := 10 ns;
 BEGIN
  -- Instantiate the Unit Under Test (UUT)
   uut:  比较器  PORT MAP (
           时钟  =>  时钟 ,
          A => A,
          B => B,
           IAB  =>  IAB ,
           输出量  =>  输出量 
         ); 
   -- Clock  处理  definitions
    时钟 _process : 处理 
    开始 
  时钟  <= '0';
 wait for  时钟 _period/2;
  时钟  <= '1';
 wait for  时钟 _period/2;
    结束   处理 ;
    -- Stimulus  处理 
   stim_proc:  处理 
    开始  
      -- hold reset state for 100 ns.
      wait for 100 ns; 
 A <= x"AA";
 B <= x"BB";
      wait for  时钟 _period*10;
 B <= x"AA";
      --  在 sert stimulus here 
      wait;
    结束   处理 ;
-fpga4student.com FPGA项目,Verilog项目,VHDL项目
END;

比较器的仿真波形:

用于8位比较器的verilog / 甚高密度脂蛋白代码
Recommended 甚高密度脂蛋白 projects:
1. 什么是FPGA? 甚高密度脂蛋白如何在FPGA上工作
2. 甚高密度脂蛋白 code for FIFO memory
3. 甚高密度脂蛋白 code for FIR Filter
4. 8位微控制器的VHDL代码
5. 矩阵乘法的VHDL代码
6. 开关尾环计数器的VHDL代码
7. FPGA上数字闹钟的VHDL代码
8. 8位比较器的VHDL代码
9. 如何使用VHDL将文本文件加载到FPGA中
10。  甚高密度脂蛋白 code for D Flip Flop
11。  甚高密度脂蛋白 code for Full Adder
12  具有可变占空比的VHDL中的PWM发生器
13  甚高密度脂蛋白 code for ALU
14。  带测试平台的计数器的VHDL代码
15  甚高密度脂蛋白 code for 16-bit ALU
16。  Shifter Design 在 甚高密度脂蛋白
17。  甚高密度脂蛋白中的非线性查找表实现
18岁  甚高密度脂蛋白中的密码协处理器设计

FPGA Verilog 甚高密度脂蛋白 courses

没意见:

发表评论

热门FPGA项目