本帖最后由 yuzhexian 于 2016-10-17 20:03 编辑
上面是周期信号/tg,下面是输入信号va,一个周期内,
输入信号有1到4个脉冲不等,怎样鉴相最后一个或者取出最后一个脉冲,求大神帮忙。
现在用d触发器鉴相,只能得到第一个脉冲的鉴相信号,求解决方法需要的信号是这样的:
已找到方法,编了一段程序
library IEEE;
use IEEE.std_logic_1164.all;
entity va4 is
port (
va: IN std_logic;
tg: IN std_logic;
q: OUT std_logic
);
end va4;
Architecture COUNT_3 of va4 is
signal q1: std_logic;
Begin
process(tg,va)
VARIABLE C: INTEGER RANGE 0 TO 4;
begin
if(tg='0') then
q1<='1';
elsif(va'event and va='1') then
C:=C+1;
if(C=4) then q1<='0'; C:=0;
ELSE q1<='1';
end if;
end if;
end process;
q<=q1;
END COUNT_3;
可惜不够灵活,va信号只能要求4个,不能1-4任意几个,实用价值不高,
在此谢谢大家的回复关注,先结贴了,以后慢慢讨论。
|