Forum: FPGA, VHDL & Co. VHDL Strukurbeschreibung - Funktion der Komponenten bestimmen


von Tester (Gast)


Angehängte Dateien:

Lesenswert?

Hi Leute,

habe eine Frage bezüglich der Strukturbeschreibung in VHDL.
Wenn man folgenden VHDL Code sich anschaut, kommt die im Anhang 
dargestellte Struktur.
Es geht nicht um den Sinn der Schaltung, aber ich verstehe noch nicht 
ganz man verbindet die Komponenten miteinander, aber an welcher Stelle 
definiere ich denn letztendlich, ob es sich um ein AND- bzw. OR-Gatter 
handelt. Der Aufbau der Komponente ist ja zunächst gleich.

entity test is
    port(   a: in std_logic;
            b: in std_logic;
            y: out std_logic);

end test;


architecture STRUCTURE of test is

    component AND2 is
        port(   a   : in std_logic;
                b   : in std_logic;
                y   : out std_logic);
    end component AND2;


    component OR2 is
        port(   a   : in std_logic;
                b   : in std_logic;
                y   : out std_logic);
    end component OR2;


signal s1: std_logic;
signal s2: std_logic;

begin

M1: AND2
    port map (a, b, s1);


M2: AND2
    port map (a, b, s2);


M3: OR2
    port map (s1, s2, y);

end STRUCTURE;

von Klakx (Gast)


Lesenswert?

da brauchst du noch eine weitere Beschreibung für AND2 und OR2

Zum Beispiel so:
1
entity and2 is
2
    port(   a: in std_logic;
3
            b: in std_logic;
4
            y: out std_logic);
5
end;
6
7
architecture behavior of and2 is
8
9
begin
10
11
y <= a and b;
12
13
end behavior;

von Tester (Gast)


Lesenswert?

Hi danke für die Antwort,

kann ich die entity bzw. Verhaltensbeschreibung in der selben, ich sag 
mal vhdl Datei, schreiben?

von Duke Scarring (Gast)


Lesenswert?

Tester schrieb:
> kann ich die entity bzw. Verhaltensbeschreibung in der selben, ich sag
> mal vhdl Datei, schreiben?
Ja.

von Parcher (Gast)


Lesenswert?

Tester schrieb:
> kann ich die entity bzw. Verhaltensbeschreibung in der selben, ich sag
> mal vhdl Datei, schreiben?


Kann man schon machen, schön ist es aber nicht. Ich würde immer pro 
Komponente eine eigene Datei vorsehen. Eine Komponente enthält bei mir 
die Entity und die Architecture. Optional kann man Entity und 
Architecture in eigenen Dateien verwalten, dies ist aber m.E. nur bei 
größeren Modulen sinnvoll.

Wenn du alles in einer Datei haben willst, dann kannst Du Dich von den 
Komponenten lösen und die AND2 bzw. OR2 Anweisungen jeweils in einem 
eigenen Prozess implementieren.

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


Lesenswert?

Parcher schrieb:
> Kann man schon machen, schön ist es aber nicht.
Die Toolchain dröselt das heutzutage selber auf und bildet die 
Hierarchie korrekt ab, egal ob eine Datei mehrere oder nur eine Entity 
enthält.

Aber solche Trivialfunktionen würde ich eigentlich gar nicht in ein 
eigenes Modul auslagern.

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.