VHDL: Definieren von unbenutzten Ports

Gast #2214404
Lesenswert?

Hallo Zusammen,

Wie kann ich bei einem std_logic_vector (port) bei welchem nur einige 
wenige Bits beschrieben werden (jedoch an komplett verschieden Orten), 
die unbenutzten Bits elegant auf einen definierten Wert setzten (alle 
auf '0' )?

Beispiel:
1
entity test is
2
    Port ( clock        : in  std_logic;
3
           reset        : in  std_logic;
4
           slv_reg0     : out  std_logic_vector(0 to 31);
5
           );
6
end test;
7

8
architecture Behavioral of test is
9

10
begin
11

12
slv_reg0(4) <= gugus;
13
.....
14
...
15
slv_reg0(15) <= foo;
16
..
17
....
18
     
19
slv_reg0 <= ?????
20
-- setzte alle unbenutzten auf '0'
21

22
end Behavioral;

Vielen Dank für eure Antworten.

Grüsse
Blaufisch
Gast #2214680
Lesenswert?

wenn du die zuweisung ein einem prozess machst kannst du einen default 
wert angeben

process(foo,gugus)
begin
   slv_reg0 <= (others => '0'); --default values

   slv_reg0(4) <= gugus;
   slv_reg0(15) <= foo;
end process;
Gast #2214903
Lesenswert?

Warum braucht ein moderner Simulator überhaupt noch eine 
Sensitivity-List?  Es ist doch algorithmisch nicht wirklich kompliziert, 
automatisch zu ermitteln von welchen Signalen die "Ausgabesignale" eines 
Prozesses abhängen.
Moderator (Firma: Titel) Persönliche Seite #2215045
Lesenswert?

Klaus schrieb:
> Warum braucht ein moderner Simulator überhaupt noch eine
> Sensitivity-List?  Es ist doch algorithmisch nicht wirklich kompliziert,
> automatisch zu ermitteln von welchen Signalen die "Ausgabesignale" eines
> Prozesses abhängen.
Die Synthese macht das schon lange. Nur die Sprache VHDL gab das bisher 
nicht her. Aber seit VHDL 2008 ist auch sowas möglich:
1
process (all) begin
2
   :
3
end process;

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