VHDL Generate

Gast #4177943
Lesenswert?
• ▲
▼
Hallo zusammen,
ich bin VHDL Anfänger daher die Frage.
Ich habe einen Array von 128 Bytes.

in C kann man mit einer for Schleife das Feld mit einem Byte füllen:
1
for(i=0; i<128; i++)
2
 Array[i] = data;
wie geht das in VHDL?
Geht das irgendwie hier auch mit generate? (Bei mir gibt es Fehler)
Oder muss ich doch alles selber schreiben
Array(0) <= data;
Array(1) <= data;
..
Array(127) <= data;?

Vielen Dank für die Hilfe
Gast #4178027
Lesenswert?
• ▲
▼
type t_byte is std_logic_vector(7 downto 0);
type t_byte_array is array(127 downto 0) of t_byte;


signal byte_array : t_byte_array := (others => data);

Kommt darauf wofür und wann man das array gefüllt haben möchte.
#4178739
Lesenswert?
• ▲
▼
Nur am Rande: Es gibt natürlich auch normale for-Schleifen in VHDL, mit 
der man das Array wie in C füllen kann, das hat noch nichts mit 
for-generate zu tun. Diese Schleifen lassen sich natürlich auch in HW 
umsetzen, verhindern durch die Parallelität aller Zuweisungen aber, dass 
im FPGA ein echtes RAM benutzt wird *) Stattdessen wird für jedes Bit 
eine Logikzelle geopfert... Wenn der Code nur in der Testbench laufen 
muss, kann einem das aber völlig egal sein.

*) Da gibts ohnehin noch mehr DOs and DONTs dazu...
Gast #4181830
Lesenswert?
• ▲
▼
Dumme Frage: Hat der TO überhaupt was von Synthese gesagt? Könnte sich 
ja auch um eine Testbench handeln, oder?

Und die machen ja eh' den größten Teil eines Designs aus, oder?

... nein, bei mir auch nicht.

Grüße,
 Stefan

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.