VHDL Verständnis

Gast #2501935
Lesenswert?
• ▲
▼
Hey Leute,

ihr müsstet mir einmal weiterhelfen. Und zwar habe ich folgende Aufgabe. 
Soweit nicht schwer, bis zum Punkt "else Reg <= Reg(2 downto 0) & 
(Reg(3) xor Reg(2));

Dieses habe ich mal wie folgt in eine boolsche Gleichung umgeformt:
R(3) = R(2)
R(2) = R(1)
R(1) = R(0)
R(0) = (R(3) und nicht R(2)) oder (nicht R(3) und R(2)),

Ist dieses soweit richtig?
Wenn ja wie geh ich bei der Zeichnung vor? Das die ersten beiden Signale 
auf 1 sein müssen, weil das Restesignal auf 1 ist habe ich verstanden, 
den Rest aber leider nicht. Könnte mir das einer erklären?
Wäre Euch sehr dankbar :)
LG Sebastian
Angehängte Dateien:
Moderator (Firma: Titel) Persönliche Seite #2501982
Lesenswert?
• ▲
▼
Sebastian schrieb:
> Dieses habe ich mal wie folgt in eine boolsche Gleichung umgeformt:
Getaktete Bauteile lassen sich so nicht durch Boolsche Gleichungen 
beschreiben...

Was du da hingeschrieben hast, sollte eigentlich so lauten:
R(3)' = R(2)
R(2)' = R(1)
R(1)' = R(0)
R(0)' = (R(3) und nicht R(2)) oder (nicht R(3) und R(2)),

Und dieser Tic (') bedeutet: der Wert am Eingang des Registers, der dann 
mit der nächsten Taktflanke übernommen wird.
Du rechnest mit deinen Formeln also immer das aus, was bei der kommenden 
Taktflanke am Ausgang des Registers erscheinen wird. Wenn R3 ungleich R2 
ist, dann wird der nächste Wert vom R0 '1' sein, wenn die beiden Gleich 
sind, kommt eine '0' ins R0. Und die anderen Bits werden mit jedem Takt 
einfach weitergeschoben...
Gast #2502205
Lesenswert?
• ▲
▼
R(3)' = R(2)
Aber das bedeutet doch, dass das 2. Bit von R dem 3. Bit von R 
zugewiesen wird also R(3) bekommt den Wert von R(2) oder habe ich gerade 
einen Fehler im Vorgang?
Sprich ich bearbeite erst R(3), R(2), R(1) und lese daraus ab was R(0) 
ergeben soll?
So ganz leuchtet mir das ganze noch nicht ein. :)
Gast #2502526
Lesenswert?
• ▲
▼
Wäre vielleicht ganz toll wenn Du mir das Schrittweise erklären könntest 
:) Schreibe morgen die Klausur und das ist das einzige was ich noch 
nicht verstehe. Aber es scheint nicht schwer zu sein nur vom Verständnis 
her...
Moderator (Firma: Titel) Persönliche Seite #2502816
Lesenswert?
• ▲
▼
Naja, die R(3..0) sind Register = Flipflops (weil da ein Takt mit im 
Spiel ist). Und so ein Flipflop übernimmt mit der passenden Taktflanke 
den Zustand am Eingang und schaltet den auf den Ausgang durch.
Die Gleichunge, die du gechrieben hast, sind Richtig, allerdings bezieht 
sich alles rechts vom Gleichheitszeichen auf den Ausgang eines 
Flipflops/Registers. Und das, was links vom Gleichheitszeichen steht 
wird aus dem Ausgängen berechnet und liegt an den Eingängen an. Die 
nächste Taktflanke speichert die "neuen" Pegel im Register und das Spiel 
beginnt von vorn...

Du berechnset also "jetzt" den Wert, der "nach" der nächsten Taktflanke 
am Registerausgang erscheinen wird.
Gast #2502857
Lesenswert?
• ▲
▼
Ich glaube ich bin zu blöd :) Also was du da geschrieben hast ergibt 
Sinn, allerdings steh ich immernoch auf dem Schlauch wie ich vorgehen 
muss um das einzuzeichnen. Waren bei Reg(3) die ersten 3 Takte auf 1 
sind, dann 3 auf 0 und dann wieder aber nur einer auf 1...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren