Gast
#3829024
Wie kann ich bitte dieses setzen counterx ="0000000001"; wenn es : signal Addr : integer range 0 to 800 :=800; ist counterxmax <= "1" when counterx ="0000000001"; Danke. Gruss
|
Anzeige
|
Integer in Logigwert umsetzen?
Gast
#3829024
Wie kann ich bitte dieses setzen counterx ="0000000001"; wenn es : signal Addr : integer range 0 to 800 :=800; ist counterxmax <= "1" when counterx ="0000000001"; Danke. Gruss Welche Datentypen haben die ganzen angesprochenen Signale? Und was ist was und wird wofür verwendet?
Gast
#3829294
Hallo... das sind die Signale: signal counterxmax : std_logic_vector (0 downto 0); signal counterx : std_logic_vector (9 downto 0); signal Addr : integer range 0 to 800 :=800; counterxmax <= "1" when counterx =...addr... Danke.Gruss Wenn du jetzt noch schreibst was du machen willst dann können wir dir helfen. Du kannst da sehr viele Bedingungen formulieren aber je nach Anwendungsfall sind einige sinnlos. Also was soll das Ergebnis sein? peter schrieb: > signal counterxmax : std_logic_vector (0 downto 0); Warum nimmst du da nicht einem einfachen std_logic? Und wo ist jetzt nochmal das Problem?
Gast
#3829350
Weil ich später die bestimmten Bits wieder rausholen muss. Quäle mich damit ab, unten das Verilog umzusetzen in Vhdl. Für mich ist das Umsetzen ein Horror..., diese ganzen Umwandlungen. Vielleicht ist das für Euch eine Leichtigkeit...? Danke. Gruss
Gast
#3829377
Ich kann dir da auch nicht helfen weil du zwar code postest, aber nicht beschreibst was wie seien oder funktionieren soll. Wie wäre es wenn du in ruhe VHDL lernst, das kostet etwas Zeit, aber dann kannst du deine Probleme auch selber Lösen, also ohne verilog anderer ohne eigenes Verständnis zu übersetzen.
Gast
#3829436
------------------------------------------ Ich kann dir da auch nicht helfen weil du zwar code postest, aber nicht beschreibst was wie seien oder funktionieren soll. Wie wäre es wenn du in ruhe VHDL lernst, das kostet etwas Zeit, aber dann kannst du deine Probleme auch selber Lösen, also ohne verilog anderer ohne eigenes Verständnis zu übersetzen. ------------------------------------------ Daran hat man sich schon die Zähne ausgebissen an dieser Textausgabe in VGA mit VHDL. Darum wollte ich es umsetzen. Aber diese Umwandlungen von int nach vec und wieder zurück usw ist eine Zumutung , so etwas kann man nicht in kurzer Zeit lernen. Ich bin kein Student mehr der das aus dem Hämdsärmeln schüttelt mit 65 Jahren, darum frage ich hier. Danke. Gruss
Gast
#3829439
Ps: Dieser Thread kann geschlossen werden bitte vom Mod. Danke Gruss peter schrieb: > reg [9:0] CounterX; // 10 Bit, range 0..799 > ... > assign CounterXmaxed = (CounterX==800); Bei Verilog bekommst du die Umwandlung eines Vektors in eine Zahl (Vorzeichenlos oder Zweierkomplement?) ohne explizite Konvertierungen. Bei VHDL nimmst du am leichtesten einen Integer als Zähler und dann kannst du ebenfalls einfach mit klar leserlichen Integerzahlen hantieren. peter schrieb: > assign CounterXmaxed = (CounterX==800); > ... > if(CounterXmaxed) Das könntest du sicher auch in einer Zeile so schreiben: if(CounterX==800) Und damit ist die Umsetzung in VHDL ein Leichtes. Wobei auch ich nicht verstehe, warum du mit Verilog UND VHDL rumhampelst. Mir reicht eine einzige Beschreibungssprache locker aus. Schreiben und Denken tue ich in VHDL, und Lesen und grob Verstehen kann ich Verilog auch... peter schrieb: > Daran hat man sich schon die Zähne ausgebissen an dieser Textausgabe in > VGA mit VHDL. Darum wollte ich es umsetzen. Ich noch nicht. Aber evtl. haben wir einen strengen Winter und ich ein paar Abende Zeit... > Aber diese Umwandlungen von int nach vec und wieder zurück usw ist > eine Zumutung , so etwas kann man nicht in kurzer Zeit lernen. Das muss man eben einfach Üben. Und es gibt nur 4 Konvertierungsfunktionen in der numeric_std. Da wird das ganz einfach: http://www.lothar-miller.de/s9y/categories/16-Numeric_Std peter schrieb: > Ps: Dieser Thread kann geschlossen werden bitte vom Mod. Peter, ein "Schließen" von Threads gibt es hier nicht. Geschlossen werden Threads nur, wenn Beleidigungen, Pöbeleien und Flamewares losgehen.
Gast
#3830349
hier noch eine PDF wo die Umwandlungen von numeric_std und std_logic_arith verglichen werden. Mir hat diese PDF die Augen geöffnet, warum die numeric_std lib wirklich so gut ist! Ganz klare Regeln wie und weshalb man wie konvertieren und benutzen muss ;-) http://www.synthworks.com/papers/vhdl_math_tricks_mapld_2003.pdf Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|