Auch wenn sich die Fragen mit eigener Recherche eventuell beantworten ließen, bin ich mal nicht so. Habe die ganze nach an einem Projekt programmiert, da tut es gut, mal zu schreiben

...
Zitat :
|
der ic ist also ein logisches Schaltwerk. wievile fehlt denn noch zu einem microcontroller ? |
Viel. Ein Prozessor kann aber ein Schieberegister in seiner Recheneinheit besitzen oder als Mikrokontroller welche besitzen, um z.B. eine serielle Schnittstelle zu betreiben. Da sind die Schieberegister i.d.R. direkt an den internen Daten- und Adressbus angeschlossen, muss aber nicht zwingend.
Von einem Schieberegister zu einer CPU ist es ein großer Schritt. Schau dir doch mal an, wie das Register intern aufgebaut ist, also aus welchen Grundelementen. Da sind ein paar FlipFlops, ein paar Gatter. Schon ein winziger Mikrokontroller baucht für die denkbar einfachsten Sachen zig tausende davon. Und natürlich die Verbindung zwischen den einzelnen Einheiten.
Zitat :
|
was könnte diesees ding realisieren ? |
Hab ich doch schon gesagt. Es wird hier vermutlich die Ein- oder Ausgänge des Prozessors kostengünstig erweitern. Dazu werden drei Leitungen vom Prozessor zum S-Reg. gelegt: Takt, Daten und ein Impuls zum Synchronisieren (wie das aussieht ist abhängig vom Bauteil - i.d.R. schreibt man mit einem kurzen Impuls die Daten in die Flipflops und taktet sie aus oder entsprechend andersrum bei seriell-zu-parallel-S-Reg.)
Zitat :
|
| Mal angenomen ich bekomme immer einen 8 bit langen satz am seriellen eingang. wird der jetzt mittels automaten entsprechend verarbeitet und an den entspechenden parallen ausgang übergeben (abh. vom befehl) ? |
Nur bei vorhandenem Takt passiert etwas an den Ausgängen. Prinzipiell etwa so: das Bit wird an den seriellen Eingang gelegt, der Clockeingang bedient - das Bit wandert ins erste D-FlipFlop, alle Bits wandern ins entsprechend nächste Register. Und das synchron, also mit dem Takt. Mache ich das nun 8 mal, dann landet das erste Bit an Position 8.
Zitat :
|
Was zum Teufel sind positive und neg. Flanken. |
Kann man sich das nicht denken? Positiv ist der Wechsel von Low nach High und negativ entsprechend andersrum. Solche Bausteine sind flankengetriggert - der Zustand der Leitungen ist sekundär, wichtig ist der richtige Wechsel der Pegel, sonst würde ja ein einfaches LOW z.B. irgendwelche Änderungen bewirken. Das ist aber nicht möglich.
Zitat :
|
Auf was deutet das Wort schieb... was wird verschoben und wozu. Vermutlich ein Bit in eine von 4-8 ausgängen ????
|
Hast du dir den Artiekl durchgelesen?
Zitat :
|
2-Multiplikation von Binärzahlen
3-Bitverschiebung in Maschinensprachen
|
In diversen Mikroprozessoren sind entsprechende Befehle vorhanden, um Registerwerte zu verschieben. Beispiel:
in Register $F steht binär ausgedrückt 01100011. Führe ich darauf jeztzt einen Befehl zum einmaligen Verschieben nach links aus, sieht das so aus (Pseudokode)
lsl $F
Logical Shift Left Register 15.
Der Inhalt wird: 11000110.
Es gibt aber unterschiedliche Schiebeinstruktionen. Da man damit auch dividieren und multiplizieren kann, gibts welche, die noch mit Carrybits arbeiten oder andere die das wichtigste Bit (MSB) berücktsichtigen und so vorzeichenbehaftete Operationen zulassen. Noch bessere Befehlssätze können auch sowas:
sl $F, $2
Shift Left Register $F (und zwar 2 Stellen nach links bzw. eine Multiplikation mit 4)
Zitat :
|
Als puffer für was bitte ? sagt jetzt nicht es könnte zig möglichkeiten geben
|
S-Regs. sind sowas von vielseitig und man kann sie für sehr vieles Benutzen. Speicher auch, nennt sich FIFO - first in - first out. Vorne werden die Daten reingetaktet, hinten kommen sie um n Taktzyklen wieder raus. Es gibt noch viele andere Möglichkeiten, z.B. indem man den Ausgang auf den Eingang rückkoppelt.
Aber der µC bei deinem Receiver wird das Register nicht dazu benutzen, der hat dazu interne Schieberegister, die wesentlich schneller an die CPU gebunden sind als deiner hier.
Das Internet spuckt denke ich mal weiterhin auch viel zum Thema aus...
Edit: Puh, 2 Stunden "Schalf" machen sich bemerkbar.
Ich vergas u.a. zu erwähnen, dass es unterschiedliche Schiebebefehle gibt. Logische, arithmetische und solche, die es ermöglichen, per Carrybit beliebig viele Register als Fifo zu benutzen. Alles abhängig von dem Befehlssatz. Einige fügen beim Linksschieben automatisch ins LSB eine 0 ein, das nahm ich beim Pseudokode als Greundlage....
_________________
[ Diese Nachricht wurde geändert von: DonComi am 8 Jul 2008 16:01 ]