Sequentielle Anweisung: Takt wird nicht richtig verarbeitet

Gast #4602001
Lesenswert?

Hallo,

ich habe gerade versucht eine meiner ersten Schaltungen in einen FPGA 
(Altera Cyclone IV EP4CE6E22C8N) zu programmieren. Ich wollte zum Testen 
einfach die Taster des Entwicklungsboards mit den LEDs verbinden. Die 
ersten beiden Taster/LEDs sind direkt verbunden. Der dritte Taster wird 
in einem Prozess mit der dritten LED verbunden. Dieser Funktioniert aber 
nicht so wie ich mir das vorgestellt habe. Ich versuche schon lange den 
Fehler zu finden. Es sieht nach ein Problem mit dem Takt aus. Muss ich 
diesen bei der Pin-Zuweisung irgendwie anders als die normalen Pins 
behandeln damit er korrekt funktionert? Ich komme nicht mehr weiter.

1
library ieee;
2
use ieee.std_logic_1164.all;
3
use ieee.std_logic_1164.all;
4

5
entity display is
6
  port(
7
    CLK    : in  std_logic;
8
    RESET  : in  std_logic;
9
    INPUT  : in  std_logic_vector (2 downto 0);
10
    OUTPUT : out std_logic_vector (2 downto 0)
11
  );
12
end display;
13

14
architecture bhv of display is
15
begin
16
  process (CLK, RESET)
17
  begin
18
    if (RESET = '1') then
19
      -- reset
20
    elsif (rising_edge(CLK)) then
21
      OUTPUT(2) <= INPUT(2);
22
    end if;
23
  end process;
24
  OUTPUT(1 downto 0) <= INPUT(1 downto 0);
25
end bhv;
Angehängte Dateien:
Gast #4602167
Lesenswert?

Klakx schrieb:
> Setz mal einfach statt input ein 0 und im Reset alles auf eins.
> Vielleicht siehst du ob der im Reset hängt oder kein Takt anliegt.

Ich habe das Design jetzt dank deiner Hinweise zum Laufen gebracht. Ich 
habe tatsächlich die ganze Zeit an der falschen Stelle gesucht. Es lag 
wie von dir vermutet am Reset.

vielen Dank für die Hilfe!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren