Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

FPGA Praktikum WS 00/01 Linear Rückgekoppelte Schieberegister und Tristate Treiber.

Ähnliche Präsentationen


Präsentation zum Thema: "FPGA Praktikum WS 00/01 Linear Rückgekoppelte Schieberegister und Tristate Treiber."—  Präsentation transkript:

1 FPGA Praktikum WS 00/01 Linear Rückgekoppelte Schieberegister und Tristate Treiber

2 Gewöhnlicher Zähler zRipple-Carry Zähler werden mit zunehmender Größe langsamer. ≠DFF& ≠ & ≠ & ≠ & 1

3 Alternative zManchmal gibt es eine Alternative zu Ripple- Carry Zählern zLFSR: yLinear Feedback Schift Register yLinear Rückgekoppelte Schieberegister zBestimmte Bits eines Schieberegisters werden über ein XNOR an den Eingang Rückgekoppelt

4 Beispiel 4-Bit LFSR DFF =

5 Nachteile LFSR zDurchläuft nur 2 n -1 Zustände zVerschiedene Schrittgrößen sind nicht möglich (+3, etc) zDie Reihenfolge ist ziemlich zufällig yKein effizienter Vergleich „>“ möglich.

6 Vorteile LFSR zExtrem schnell und klein yNur ein LUT auch bei 168-Bit Zählern zRückwärts zählen ist möglich zMit Zusatzaufwand ist eine Erweiterung auf 2 n Zustände möglich zDie Reihenfolge ist ziemlich zufällig yRauschgenerator (z.B. C64 SID) yZufallsmuster z.B. für Selbsttest (BIST)

7 Paramter zEs gibt keine geschlossene Form, um auszurechnen, welche Bits rückgekoppelt werden müssen. zEs gibt Tabellen z.B. von Xilinx yBitsXNOR fromBitsXNOR from 33,2 99,5 44,31010,7 55,31111,9 66,51212,6,4,1 77,61313,4,3,1 88,6,5,41414,5,3,1

8 Tristate Treiber zEin normales Gatter treibt an seinen Ausgang immer entweder 0 oder 1. yDer Zustand ‘X‘ in der Simulation bedeutet nur, daß der Simulator nicht weis, welchen Wert der Ausgang hat. zTristate Treiber können zusätzlich als dritten Zustand den Ausgang ausschalten. yDiesen Zustand nennt man „hochohmig“, „tristated“ oder „high impedance“ yAbgekürzt wird er mit ‘Z‘

9 Tristate Treiber Eigenschaften zSo sieht ein Tristate Treiber im Schaltplan aus: zDie Wertetabelle sieht so aus:  Enable In Out Z 0 1 Z zVorsicht: Es gibt auch Treiber mit invertiertem Enable Enable In Out

10 Anwendung 1: Bidirektionale Signale Write/notRead output input zSo werden beispielsweise RAMs an Prozessoren angeschlossen yDas selbe Signal wird zum lesen und Schreiben von Daten verwenden. yDer Prozessor teilt dem RAM mit einem zusätzlichen Signal die Richtung der Datenübertragung mit.

11 Anwendung 2: Große Multiplexer zStandard N-zu-1 Multiplexer aus 2-zu-1 Muxes zKosten: yN-1 LUTs yN-2 zusätzliche Signale ySignallaufzeit O(log(N)) zKodierte Eingänge

12 Anwendung 2: Große Multiplexer zN-zu-1 Multiplexer aus Tristate Treibern zKosten: y0 LUTs yN Tristate Treiber (Bei Xilinx praktisch gratis) y0 zusätzliche Signale ySignallaufzeit O(1), bei kleinen Muxes jedoch größer als die LUT Variante. zDekodierte Eingänge... In1 In2 InN Sel1 Sel2 SelN

13 Anwendung 2: Wired-OR (Open Collector) zDie Eingänge treiben den Ausgang auf 1 oder Z, nie jedoch auf 0. zWenn beide Eingänge auf Z treiben, kann der schwache Widerstand das Signal auf 0 ziehen. zDie Schaltung berechnet also ein ODER aus allen Eingängen. zSie ist relativ langsam und wird vor allem auf Platinen verwendet, wenn die Anzahl der Eingänge nicht im Voraus bekannt ist. (z.B. Steckkarten) zIm FPGA macht diese Technik Sinn, wenn ein ODER aus sehr vielen Eingängen berechnet werden soll. zWired-AND geht über die DeMorgan Regel gnd out R b a

14 Tristate in VHDL zIn VHDL könnt ihr einem IEEE.STD_LOGIC Signal den Wert ‘Z‘ zuweisen. zEin Tristate Treiber sieht dann z.B. so aus: yif enable=‘1‘ then out <= in; else out <= ‘Z‘; end if; zBidirektionale Ports werden als „inout“ deklariert.


Herunterladen ppt "FPGA Praktikum WS 00/01 Linear Rückgekoppelte Schieberegister und Tristate Treiber."

Ähnliche Präsentationen


Google-Anzeigen