user schrieb:
> es geht auch das
Beweisen!
1 | shiftreg <= ((255 downto 63) => shiftreg(255 downto 63), others => '0');
|
Ich bekomme mit XST für diese Zuweisungszeile den Fehler
ERROR:HDLCompiler:806 - : Syntax error near ")".
Und dafür bekomme ich diesen Fehler auch:
1 | shiftreg <= ((63 downto 0) => '0') & shiftreg(255 downto 64);
|
Beidesmal logisch: da dürfen in der Klammer nur konstante Literale
vorkommen, die zudem zum Typ passen müssen.
Nur sowas simples geht:
1 | signal shiftreg : std_logic_vector(255 downto 0) := (63 downto 0 => '1', others=> '0');
|
Und das:
1 | signal shiftreg : std_logic_vector(255 downto 0) := ('1', '0', '1', 237 => '1', 127 downto 0 => '1', others=> '0');
|
Aber sowas schon nicht mehr:
1 | signal shiftreg : std_logic_vector(255 downto 0) := (x"1234", 63 downto 0 => '1', others=> '0');
|