输入中的TTL取景器/输出

时间:2014-11-11 23:02:49

标签: output vhdl

我想创建一个具有两个输入时钟和一个使能的电路 和三个输出。我想要这个电路做的是它有一个 变量(续)从“00”变为“11”和两个输出 (sal_1和sal_2)取cont(0)和cont(1)的值并转到 输入ttl(AND,OR,XOR)然后输出ttl ic 返回到电路并在此之后保存(结果)矢量 根据ttl ic输出的不同结果创建的是 与已预定义的矢量进行比较,找到匹配的矢量 它并返回值。

我很难用输出然后输入时间,似乎 有一种特殊的方法可以做到这一点。

这是我的代码:

library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.numeric_std.all;
use IEEE.std_logic_unsigned.all;

use IEEE.std_logic_arith.all;

entity ttl_finder is
  port( clk, ena, sal_ttl : in  std_logic;
      sal_1, sal_2      : out std_logic;
      sal_f          : out std_logic_vector(3 downto 0));

end entity;

architecture ttl_tester of ttl_finder is

signal cont : std_logic_vector(1 downto 0) := "00";
signal results : std_logic_vector(3 downto 0) := "0000";

begin

process(clk, ena)


variable c : std_logic;
variable d : std_logic;
variable e : std_logic;

begin

if ena = '1' then

  if cont < "11" then

    sal_1 <= cont(0);
    sal_2 <= cont(1);

    if rising_edge(clk) then

      results(conv_integer(cont)) <= sal_ttl;

    end if;

    cont <= cont + 1;

  else

    sal_1 <= cont(0);
    sal_2 <= cont(1);

    if rising_edge(clk) then

      results(conv_integer(cont)) <= sal_ttl;

    end if;

    cont <= "00";

  end if;

end if;

end process;

sal_f <= results;

end ttl_tester;

0 个答案:

没有答案