Forum: FPGA, VHDL & Co. Wo sind hier die Syntax / Type errors ?


von timboc (Gast)


Lesenswert?

beschreibung des programms siehe code. hier die fehlermeldung:

(45,7-45,11) ERROR: (VHDL-1261) syntax error near loop
(46,14-46,25) ERROR: (VHDL-1272) type error near korrigierer ; expected 
type  void
(47,5-47,17) ERROR: (VHDL-1261) syntax error near architecture
(47,18-47,26) ERROR: (VHDL-1272) type error near behavior ; expected 
type  void

1
entity ham_korrigierer is
2
3
port(  AE: in std_logic_vector (4 downto 0);  -- eingegebene bits
4
       AF: in std_logic_vector (4 downto 0);  -- fehlerhafte bits
5
       AK: out std_logic_vector (4 downto 0)  -- korrigierte bits auf Dioden D1 - D5
6
    );
7
  end ham_korrigierer;
8
  
9
architecture behavior of ham_korrigierer is
10
begin
11
  korrigierer: process (AE, AF) is
12
  begin
13
  
14
    for i in 4 downto 0 loop
15
    
16
      if (AF(i) = '1') then
17
        if (AE(i) = '1') then
18
          AK(i) <= '0';
19
        end if;
20
        if (AE(i) = '0') then
21
          AK(i) <= '1';
22
      end if;
23
      
24
      if (AF(i) = '0') then
25
        AK(i) <= AE(i);
26
      end if;
27
      
28
    end loop;
29
  end process korrigierer;
30
end architecture behavior;

ich wäre dankbar für hinweise wo genau ich etwas ändern müsste

von timboc (Gast)


Lesenswert?

-- Beschreibung:
-- die per schalter S1-S5 eingegebenen bits AE werden, wenn bei AF
-- ein fehler markiert wurde (mit 1), umgedreht.
-- in der ausgabe AK werden die korrigierten bits ueber die Dioden D1-D5
-- ausgegeben. Wenn AF = 0 soll AE direkt an AK ausgegeben werden.
------------------------------------------------------------------------ 
-----

von Sven P. (Gast)


Lesenswert?

Da fehlt ein 'end if'.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Mach mal das is hinter den process raus. Das ist da nicht nötig...

> hier die fehlermeldung:
Von wem kommen die Meldungen und was ist die Zeile 46?

von timboc (Gast)


Lesenswert?

dies sind die zeilen 45-47
    end loop;
  end process korrigierer;
end architecture behavior;

man hätte ich auch selber drauf kommen können: danke sven, es war das 
fehlende "end if" in der mitte...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.