hallo ich habe einen component mit einem 5 bit vectore ausgang ( 4 downto 0) und einen mux mit 2 eingänge jeweils (3 downto 0) das heisst ich kann 4 bit von dem component mit einem eingang von dem mux verbinden aber wie soll ich der fünfte mit einem 4 bit vector verbinden ? ich habe ein signal deklariert so 000&fûnfte bit aber bei portmap es kommt immer die meldung die sind nicht gleichwertig ich bitte um hilfe oder wie kann machen dass ich das die 3 bit von dem vectore immer auf nul festlegen ich hoffe sie wissen was ich will danke
> ich hoffe sie wissen was ich will Nein, das ist noch nicht ganz klar. Evtl. könnte etwas VHDL-Code helfen...
nein ich will 4 bit mux weil ich das für bcd decoder brauche um diese 5 bit in hexa zahlen darstellen kann in 2 siebensegmenteanzeigen und das alles mit vhdl zusammenfassung 5 bit vector in 2 hexazahlen einmal (0000 BIS 1111)anzeige 1 und ( 0000 bis 0001)anzeige2
Du willst die Zahlen 0..63 im Vektor (5 downto 0) in zwei BCD-Zahlen umrechnen. Das geht nicht mit einem Mux. Hier habe ich Lösungen für die Aufgabe: http://www.lothar-miller.de/s9y/archives/33-Byte-nach-BCD.html Das ist zwar für einen 8-Bit Vektor, aber der Lösungsweg ist der selbe...
zuerst danke miller ich will binär in hexa umwandeln zb 11111 ist 1F hexa 01010 ist 1A hexa mit deinem decoder kann ich ZB 11111 umwandeln ;die 1111 in enem F umwandeln Und 1 bleibt 01010 ,1010 in A und 0 bleibt mux brauche ich nicht um zu decodieren aber die 2 anzeigen koennen nicht gleichtzeitig angeschaltet werden (beide miteinandere verbunden) aber hintereinandere , wenn man die umschlatung schnell mache 60 hz man glaubt das die 2 anzeigen sind beide ständig an .vielleicht kennen sie das mit einer dcf uhr vielleicht habe die frage kompliziert gemacht wenn einer der ausgange von meinem component zb heisst A ich will daraus ein vector (000A) eingang fuer den mux das ist alles
> ich will binär in hexa umwandeln Binär ist nur eine andere Schreibweise für Hex (und umgekehrt). Dann ist der Ansatz >>> 000&fûnfte bit schon richtig:
1 | signal ausgang : std_logic_vector( 4 downto 0); |
2 | signal hex : std_logic_vector( 4 downto 0); |
3 | signal digit : std_logic; |
4 | :
|
5 | hex <= ausgang(3 downto 0) when digit ='0' else "000"&ausgang(4); |
danke miller kann ich auch so machen einen component programmieren in dem der eingang ist der hexa zahl eingang :in std_logic_vector( 4 downto 0)-- hexazahl ausgang1: out std_logic_vector (3 downto 0) ausgang2 out std_logic_vectore( 3 downto 0) signal out1:std_logic_vectore ( 3 downto 0) --- mit eingang(3Downto 0)verbunden signal out2 :std_logic -- mit eingang (4) verbunden . . augang1 <= out1(3 downto 0) augang2 <= 000& out2 nachher sind ausgang1 und ausgang2 meine mux eingänge
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.