pro.vhd

来自「vhdl的一个串行序列信号发生器的设计与实现」· VHDL 代码 · 共 37 行

VHD
37
字号
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity pro is 
port(
     clk:in std_logic;    --时钟
     set:in std_logic;    --预置
     reset:in std_logic;  --复位
     data:in std_logic_vector(7 downto 0);--数据输入
     sout:out std_logic   --显示输出
     );
end;
architecture pro_arth of pro is
signal check:std_logic;
signal da:std_logic_vector(7 downto 0);
signal sign:integer range 0 to 8; 
begin
process(clk,set,reset,sign)
begin
  if(set='1')then
    da<=data;                    
    check<=da(7)xor da(6)xor da(5)xor da(4)xor
     da(3)xor da(2)xor da(1)xor da(0);--偶校验位
    sign<=0;       --标志位
  elsif(reset='1')then           
    sign<=8;
    check<='0';
  elsif(clk'event and clk='1')then 
    if(sign=8)then   --8位输出完成
      sout<=check;   --输出偶校验位
    else
      sout<=da(sign);
      sign<=sign+1;  --继续输出数据
    end if;            
  end if;
end process;
end;

⌨️ 快捷键说明

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