Forum: FPGA, VHDL & Co. Integer Ausgabe


von Sebastian J. (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ist es eigentlich möglich, den Wert eines Zählers, der meinet wegen von
0 bis 15 oder auch höher zählt, binär auszugeben ohne riesigen aufwand
zu betreiben?

ich dachte mir das so: siehe Anhang

Das geht ja aber nicht, da TS als integer ausgegeben wird und somit
keine zuweisung auf verschiedene Pins möglich ist.

Wie kann ich das recht einfach realisieren? Eine andere, die mir aber
irgendwie zu aufwendig erschien:
Eine Statemachine mit 11 Stati basteln und in jedem Zustand TS direkt
den entsprechend hoch gezählten Wert zuweisen. geht, dauert aber ...
hm, hat jemand ne klevere Idee?

Gruß Sebastian!

von Xenu (Gast)


Lesenswert?

Und wieso machst Du dann nicht einfach einen std_logic_vector daraus?

Mehr als std_logic und std_logic_vector brauchst Du sowieso nicht.

von Sebastian J. (Gast)


Lesenswert?

... wenn ich den Zählerwert als typ integer definiere, kann ich später
den zählerwert nicht einfach auf das signal TS kopieren, da die beiden
Signaltypen nicht kompatibel sind ... hat zumindestens bei mir nicht
funktioniert.

von Sebastian J. (Gast)


Lesenswert?

Nachtrag: ich bräuchte also eine integer nach binär Wandlung ... geht
das ohne viel aufwand? ich meine, zahl ist zahl. die zahl 32 z.B. ist
immer eine 32, egal ob binär oder dezimal. sie muss ja eh binär
verarbeitet werden. ich möchte halt nur, dass die 6bits dann an
bestimmten ausgängen ausgebene werden ...

von Ines (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Sebastian,

ich habe Deinen Code mal überarbeitet, hoffentlich habe ich richtig
verstanden, was Du willst.

Du solltest den generierten Clock clk übrigens nicht als "echten"
Clock verwenden, d.h. nicht mit rising_edge abfragen, sondern so, wie
ich es beschrieben habe.

Zu Deinem letzten Beitrag. Was meinst Du mit der Zahl 32 bzw. 6 Bit? Du
zählst doch nur bis 10 => 4 Bit. Oder war das nur als Beispiel gedacht?

Gruß
Ines

PS: Mein Code ist NICHT getestet!!!

von Xenu (Gast)


Lesenswert?

>wenn ich den Zählerwert als typ integer definiere, kann ich später
>den zählerwert nicht einfach auf das signal TS kopieren

Selbstverständlich geht das, mit conv_std_logic_vector().

Und was spricht dagegen, das Du einfach anstatt Integer
std_logic_vector benutzt? Ich benutze Integer nur bei Konstanten.

von Sebastian J. (Gast)


Lesenswert?

@Ines: das war nur als Beispiel gedacht. den code werd ich mir
anschauen.

@Xenu: integer habe ich für den Zähler verwendet, für die Ausgabe hatte
ich erst sts_logic_vector, da aber o.g. Problem. der Befehl
conv_std_logic_vector war mir bisher nicht bekannt, arbeite noch nicht
so lange mit vhdl ... werd ich alles mal austesten ...

Danke!

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
Noch kein Account? Hier anmelden.