Hi, Leute. Erstmal möchte ich sagen, dass ich nicht wirklich viel Erfahrung mit VHDL und Co habe, arbeite damit seit ca. 3 Monaten. Nun zur meiner Frage. Ich habe ein std_logic_vector(0 to 1024) und eine Zahl n. Ich möchte nun jedes n-te bit im Vektor auf 1 setzen. Dazu habe ich folgenden Code: p : process (go_bit) --go_bit wird einen clock lang auf 1 gesetzt als startsignal begin if go_bit = '1' then for i in 0 to (1024-n)/n my_vector(n + (i*n)) <= '1'; end loop; end if; end process; Danach folgt noch einiges, was hier eher unwichtig ist, nur so viel: ich gebe am Ende den Vektor Stück für Stück über jtag aus (die Ausgabe funktioniert auch bei anderen Bausteinen, da ist also der Fehler ausgeschlossen). Nun, bei der Ausgabe kriege ich 1024 x 0. Meine Frage daher, was mache ich falsch? Ist es überhaupt möglich so etwas zu machen? Irgendwie stehe ich da voll auf dem Schlauch. Helft mir, schlaue Menschen. Danke schon mal im Vorraus ;-)
MiniBob schrieb: > Ich habe ein std_logic_vector(0 to 1024) und eine Zahl n. Also hat der Vektor eine Länge von 1025 Bits. Du gibst aber nur 1024 Bits aus: > Nun, bei der Ausgabe kriege ich 1024 x 0. Seis drum. > Ich habe ein std_logic_vector(0 to 1024) und eine Zahl n. Woher kommt die "n"? Ist die Zahl zur Laufzeit veränderbar? > ich gebe am Ende den Vektor Stück für Stück über jtag aus Wie gibst du den über JTAG aus? Das FPGA ist wohl eher ein JTAG Slave und kann von sich aus nichts ausgeben. Irgendwer muss den Vektor also abholen... > die Ausgabe funktioniert auch bei anderen Bausteinen Welchen Baustein verwendest du? Und bei welchen "anderen" funktioniert es? > Dazu habe ich folgenden Code Dieser Code ist mit Verlaub ein Krampf, denn er beschreibt schlimmstenfalls 1025 Latches. > Meine Frage daher, was mache ich falsch? Du beschreibst nicht dein Problem, sondern deinen Lösungsansatz. Du gibst nur Bruchteile der nötigen Information, die zudem in sich inkonsistent sind. Lies einfach deine Frage nochmal so durch, als ob du dein Problem nicht kennen würdest. Wird dir klar, was dein Problem ist? Nein? Ebenso geht es allen anderen...
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.