hallo, wie kann ich in vhdl einen std_logic_vector(15 downto 0) mit einem einzigen Signal verUNDen, ohne dabei jedes element des vectors mit einem normalen "and" mit diesem signal zu verbinden? also wie kann ich das mit einem kurzen "befehl" machen? geht sowas in vhdl oder muss ich doch jedes signal einzeln verbinden bzw das ganze in einer if abfrage machen? mfg Andi
> wie kann ich in vhdl einen std_logic_vector(15 downto 0) mit einem > einzigen Signal verUNDen Bitte genauer. Man kann nicht einfach so 1 Bit mit 1 Vektor verunden. Da psst die Breite nicht zusammen. Oder meinst du das: Wenn das Signal '0' ist, dann soll der Vektor "00...00" sein? Dann geht es so:
1 | |
hallo, ja sowas meinte ich. diese lösung hatte ich auch schon im kopf. allerdings dachte ich eher an einen befehl der eben alles auf einmal verundet. naja diese lösung ist denk ich besser. danke Andi
Sorry, ich kann mir das manchmal nicht verkneifen. Das Folgende ist off-topic und ich bitte schonmal im voraus um Entschuldigung. Aber wie würdest Du das in C schreiben? So: ausgang = signal ? eingang : 0; Und genau so schreibt man das auch in Verilog. Da muss man dann auch keine Nullen abzählen.
Harald Flügel schrieb: > Da muss man dann auch keine Nullen abzählen.
1 | |
So auch nicht. :)
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.