二进制到格雷码转换.txt

来自「< 二进制到格雷码转换》绝对好用的EDA实验程序!已经通过测试」· 文本 代码 · 共 33 行

TXT
33
字号
-- 描述   :  二进制到格雷码的转换
-- Input (DATA_IN) width : 4
-- Enable (EN) active : high
--格雷码的特点:任意2个相邻的码之间只有一个数不同,大大地减少了由一个状态到下一个状态时逻辑的混淆。
--格雷码属于可靠性编码,是一种错误最小化的编码方式
library IEEE;
use IEEE.std_logic_1164.all;
 use ieee.std_logic_unsigned.all;
use work.all;
entity BIN2GRAY is
          port (
                    DATA_IN : in std_logic_vector (3 downto 0);     -- input data
                    EN      :      in  std_logic;                   -- enable the gray trans &led scan
                    LEDOUT : out std_logic_vector (3 downto 0);   -- 为方便仿真观察
                    DATAOUT : out std_logic_vector (3 downto 0)
                   
          );
end entity;

architecture bin2gary_arch of BIN2GRAY is
signal DATA_OUT :std_logic_vector (3 downto 0);
begin
          
          DATA_OUT(0) <= (DATA_IN(0) xor DATA_IN(1)) and EN;    -- GRAY CODE TRANS.
          DATA_OUT(1) <= (DATA_IN(1) xor DATA_IN(2)) and EN;
          DATA_OUT(2) <= (DATA_IN(2) xor DATA_IN(3)) and EN;
          DATA_OUT(3) <= DATA_IN(3) and EN;
          LEDOUT<=DATA_OUT;     --方便显示输出,LED静态显示和数码管静态显示
          DATAOUT<=DATA_OUT;
end architecture;


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?