VHDL设计串行数据检测器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VHDL程序设计:
library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity h32 is
port(x,cp:in std_logic;
y:out std_logic);
end h32;
architecture w of h32 is
type state is(s0,s1,s2,s3);--状态机signal p:state;
signal n:state;
begin
s:process(cp)
begin
if cp'event and cp='1'then
p<=n;
end if;
end process s;
c:process(x,p)
begin
case p is
when s0=>if x='1'then
n<=s1;
else
n<=s0;
end if;
y<='0';
when s1=>if x='1'then
n<=s2;
else
n<=s0;
end if;
y<='0';
when s2=>if x='1'then
n<=s3;
y<='0';
else
n<=s0;
y<='0';
end if;
when s3=>if x='1'then
n<=s3;
y<='1';
else
n<=s0;
y<='0';
end if;
when others=>null; end case;
end process c;
end w;