www.wikidata.de-de.nina.az
Ein Schieberegister ist ein logisches Schaltwerk Mehrere in Reihe geschaltete Flipflops schieben ihren Speicherinhalt je 1 Bit bei jedem Arbeitstakt um ein Flipflop weiter anschaulich gesehen ahnlich einer Eimerkette Die Anzahl der im Register vorhandenen Speicherplatze ist konstant Schaltzeichen fur ein 4 Bit SchieberegisterSchieberegister arbeiten nach dem FIFO Prinzip Das zuerst eingespeicherte Bit verlasst den Speicher zuerst Das Hinein und Herausschieben das Ein und das Auslesen geschehen dabei synchron ein Schieberegister kann nur bedingt als Warteschlange genutzt werden Oft erweitert man Schieberegister mit zusatzlicher Logik bestehend aus mehreren Logikgattern Diese kann dafur sorgen dass das hochste Bit in das niedrigste Bit geschoben wird es findet also eine Rotation statt man spricht auch von einem Rundschiebe Register dass man es bidirektional betreiben kann die Richtung der Verschiebung also variabel ist dass festgelegt werden kann ob das freiwerdende Bit gesetzt oder geloscht werden soll und oder dass man das Register parallel beschreiben oder auslesen kann Inhaltsverzeichnis 1 Aufbau 1 1 Data In und Data Out 1 2 Clock 1 3 Load 1 4 Enable 1 5 Aufbau eines bidirektionalen Schieberegisters 2 Verwendung 2 1 Serialisierung und Parallelisierung von Bitmustern 2 2 Bitverschiebung in Maschinensprachen 2 3 Multiplikation von Binarzahlen 2 4 Verwendung als Puffer 2 5 Erzeugung von Pseudozufallszahlen 2 6 Zyklische Redundanzprufung 3 Bausteine 4 Siehe auch 5 Literatur 6 WeblinksAufbau Bearbeiten nbsp Die einfachste Form eines Schieberegisters besteht aus der Hintereinanderschaltung von vier Master slave D Flipflops nbsp Aufbau eines 4 Bit Schieberegisters mit seriellem sowie parallelem Ein und Ausgang Ausgangspuffer am parallelen AusgangDas in dieser Abbildung gezeigte 4 Bit Schieberegister basiert im Wesentlichen auf dem eigentlichen Schieberegister bestehend aus den Flip Flops D00 D10 D20 und D30 Die Anschlusse sind wie folgt definiert Uber die Anschlusse d0 bis d3 kann ein Wert parallel eingelesen werden Uber die Anschlusse Q0 bis Q3 kann der im Schieberegister gespeicherte Wert parallel ausgelesen werden Uber den Data In Anschluss DI kann ein Wert seriell eingelesen werden und uber den Data Out Anschluss DO seriell ausgelesen werden Zur Ansteuerung werden die Anschlusse Clock CLK Load LD und Enable EN verwendet Data In und Data Out Bearbeiten Die Data In und Data Out Anschlusse konnen je nach Beschaltung verschiedene Funktionen erfullen Serielles Lesen am Data In Anschluss und serielles Ausgeben von Daten am Data Out Anschluss Aufbau eines Ringregisters durch Verbinden des Data Out mit dem Data In Anschluss Serielle Erweiterung des Schieberegisters um weitere Schieberegister um grossere Wortbreiten verarbeiten zu konnen Dazu wird der Data Out Anschluss mit dem Data In Anschluss des nachfolgenden Schieberegisters verbunden Clock Bearbeiten Bei einer positiven Flanke am Clock Eingang wird das in den jeweiligen Flip Flops gespeicherte Bit am Ausgang ausgegeben dadurch an das nachfolgende Eingabe Gatter D00 D11 D10 D21 etc weitergegeben und so lange gehalten bis erneut eine positive Flanke am Clock Eingang auftritt Load Bearbeiten Ist der Load Eingang auf High gesetzt so werden die an den Eingabe Gattern D01 D11 D21 und D31 angelegten Bits der vorgeschalteten Flip Flops bzw des DI Eingangs eingelesen Ist der Load Eingang hingegen auf Low so wird das Bit des vorgeschalteten Flip Flops bzw DI Eingangs ignoriert und stattdessen das Bit am zugehorigen parallelen Eingang eingelesen Das eingelesene Bit wird dabei an das nachfolgende Flip Flop bzw DO Ausgang weitergegeben Ist ein paralleles Einlesen nicht erforderlich so konnen die Gatter D01 D11 D21 und D31 sowie die Eingange d0 bis d3 weggelassen werden und die Ausgange der Flip Flops bzw Data Out direkt mit den Eingangen der nachfolgenden Flip Flops bzw Data In verbunden werden Enable Bearbeiten Der Enable Eingang steuert den Ausgangspuffer bestehend aus den Gattern D02 D12 D22 und D32 an Bei einer positiven Flanke wird das im Schieberegister gespeicherte Bitmuster vom Ausgangspuffer ubernommen und am parallelen Ausgang mit den Anschlussen Q0 bis Q3 ausgegeben Der Wert wird so lange gehalten bis eine erneute positive Flanke am Enable Eingang anliegt Wird kein Ausgangspuffer gefordert so konnen der Enable Eingang und die Gatter D02 D12 D22 und D32 weggelassen werden Die Ausgange Q0 bis Q3 werden in diesem Fall direkt am Ausgang der zugehorigen Schieberegister Flip Flops angeschlossen Aufbau eines bidirektionalen Schieberegisters Bearbeiten Um ein bidirektionales Schieberegister zu realisieren werden entweder zwei Schieberegister benotigt oder Tristate Gatter die die internen Verbindungen des Registers dynamisch umschalten konnen Bei der Realisierung mit Hilfe von zwei Schieberegistern wird der parallele Eingang des einen Registers in gekreuzter Weise mit dem parallelen Eingang des anderen Registers verbunden und umgekehrt Dadurch kann der Wert aus dem nach links schiebenden Register in das nach rechts schiebende Register kopiert werden und umgekehrt Verwendung BearbeitenSerialisierung und Parallelisierung von Bitmustern Bearbeiten Schieberegister sind Bestandteil von Wandlern zwischen seriellen und parallelen Daten Mittels Schieberegistern lasst sich also eine Serialisierung oder Parallelisierung von Bitmustern realisieren Bei einer Serialisierung muss es dabei moglich sein das jeweilige Bitmuster parallel in das Schieberegister zu laden d h jedes Flipflop benotigt einen Lade Eingang Ansonsten lage ja bereits eine serielle Reprasentation vor Bei einer Parallelisierung muss entsprechend jedes Flipflop uber einen lesbaren Ausgang verfugen damit zu einem bestimmten Zeitpunkt die Werte des gesamten Schieberegisters parallel ausgelesen werden konnen Bei der in den meisten µ Controllern befindlichen Schnittstelle SPI handelt es sich um ein Schieberegister basierendes Bussystem mit welchem direkt SR Logikbausteine als parallele Ausgange Ports genutzt werden konnen Bitverschiebung in Maschinensprachen Bearbeiten Die meisten Maschinensprachen verfugen uber einen Shift Befehl auf den Registern Damit kann man in Maschinensprache durch Schieben und Addieren oft sogar schneller multiplizieren als uber den generischen Multiplikationsbefehl Multiplikationsalgorithmus So multipliziert man zum Beispiel schneller mit 320 indem man erst das Register kopiert dann das eine Register um 8 bits schiebt Multiplikation mit 256 und das andere Register um 6 bits schiebt Multiplikation mit 64 und dann die beiden Register addiert Des Weiteren fallt beim Schieben das herausgefallene Bit dabei nicht weg sondern meist in ein Flag des Flag Registers und kann dann weiterverarbeitet werden Man unterscheidet beim Schieben das logische und das arithmetische Schieben Beim arithmetischen Schieben bleiben dabei positive Zahlen positiv und negative Zahlen negativ Dazu wird das hochstwertige Bit nicht verandert Multiplikation von Binarzahlen Bearbeiten Die Multiplikation zweier Binarzahlen erfolgt durch Verschieben und Addieren z B durch den Booth Algorithmus In Mikroprozessoren wird dies durch Schieberegister erreicht Es wird also ein Datensignal weitergeschoben Ist z B ein Signalzustand high vorhanden so wird dieser an das nachste Bit weitergeschoben Verwendung als Puffer Bearbeiten Zur Filterung von digitalisierten Signalen puffert ein Signalprozessor eine feste Zahl von Werten Dies kann in Schieberegistern erfolgen Erzeugung von Pseudozufallszahlen Bearbeiten Zur Erzeugung von Pseudozufallszahlen konnen linear ruckgekoppelte Schieberegister verwendet werden Zyklische Redundanzprufung Bearbeiten Die zyklische Redundanzprufung englisch cyclic redundancy check CRC kann mit einem durch Exklusiv Oder Gatter ruckgekoppelten Schieberegister in Hardware ausgefuhrt werden Bausteine Bearbeiten nbsp Toshiba TC4015BP im DIL Gehause Dual 4 Stage Static Shift Register mit serieller Ein und Ausgabe In der folgenden Tabelle sind beispielhaft einige handelsubliche Schieberegister aufgelistet Ungepufferte Schieberegister mit serieller und paralleler Ein und Ausgabe Wortbreite Logikfamilie BeschreibungTTL ECL CMOS4 Bit 74LS194A 10141 40194 in out serial parallel8 Bit 74LS16474LS299 74HC595 4014 serial in parallel outparallel in serial out16 Bit 74LS673 40068 1 16 Bit Am29525 Siehe auch BearbeitenRingzahler EimerkettenspeicherLiteratur BearbeitenUlrich Tietze Christoph Schenk Halbleiter Schaltungstechnik 12 Auflage Springer Heidelberg 2002 ISBN 3 540 42849 6 Weblinks BearbeitenSchaubilder zur Erklarung der Funktionsweise eines serial in parallel out SchieberegistersNormdaten Sachbegriff GND 4124131 9 lobid OGND AKS Abgerufen von https de wikipedia org w index php title Schieberegister amp oldid 231601530