Der vorliegenden Erfindung liegt
daher die Aufgabe zugrunde, eine möglichst schnelle Konvertieranordnung
bzw. ein möglichst
schnelles Konvertierverfahren zur Umsetzung eines Thermometercodes
in einen binären
Code bereitzustellen, eine im Vergleich zu herkömmlichen Konvertierern vereinfachte
Anordnung zur Verfügung
zu stellen, und einen Analog-Digital-Wandler mit einer schnellen
Konvertieranordnung anzugeben.
Diese Aufgabe wird erfindungsgemäß durch
eine Konvertieranordnung gemäß Patentanspruch
13 und einen Analog-Digital-Wandler gemäß Patenntanspruch 19 gelöst.
Demgemäß ist vorgesehen:
Eine
Konvertiereranordnung zum Konvertieren eines binären Eingangssignals entsprechend
einem n-Bit Thermometercode in einen davon verschiedenen binären Ausgangscode,
- – mit
einer ersten Anzahl ODER-Gatterschaltungen, in deren Eingänge Bits
des Thermometercodes einkoppelbar sind,
- – mit
einem den ODER-Gatterschaltungen nachgeschalteten ersten Addierer,
in dessen Eingängen
die Ausgangssignale der ODER-Gatterschaltungen einkoppelbar sind
und der an seinen Ausgängen
zumindest ein binäres
Ausgangssignal für
den Ausgangscode bereitstellt,
- – mit
einer zweiten Anzahl Multiplexerschaltungen, in deren Eingänge Bits
des Thermometercodes und in deren Multiplexer-Auswahlanschlüsse die
Ausgangssignale des ersten Addierers einkoppelbar sind,
- – mit
einem den Multiplexerschaltungen nachgeschalteten zweiten Addierer,
in dessen Eingängen
die Ausgangssignale der Multiplexerschaltungen einkoppelbar sind
und der an seinen Ausgängen
zumindest ein weiteres binäres
Ausgangssignal für
den Ausgangscode bereitstellt. (Patentanspruch 1)
Ein Verfahren zum Konvertieren eines
binären
Eingangssignals entsprechend einem Thermometercode in einen davon
verschiedenen binären
Ausgangscode mit den Verfahrensschritten,
- (a)
Es wird ein n-Bit Thermometercode bereitgestellt;
- (b) Der n-Bit Thermometercode wird in m Segmente unterteilt;
- (c) Die Bits zumindest der m – 1 höherwertigen Segmente werden
jeweils ODER-verknüpft;
- (d) Die zumindest m – 1
Ausgangssignale aus der ODER-Verknüpfung werden
aufaddiert, wobei das binäre Ergebnis
aus dieser Addition einen ersten, höherwertigen Teil des Ausgangscodes
bildet;
- (e) Bits unterschiedlicher Segmente, die aber innerhalb des
jeweiligen Segments dieselben MSB- bzw. LSB-Wertigkeit aufweisen,
werden miteinander gemultiplext, wobei als Multiplexauswahlsignal
der erste Teil des Ausgangscodes verwendet wird;
- (f) Die gemultiplexten Ausgangssignale werden aufaddiert, wobei
das binäre
Ergebnis aus dieser Addition einen zweiten, niedrigerwertigen Teil
des Ausgangscodes bildet. (Patentanspruch 13)
Der Kern der vorliegenden Erfindung
besteht darin, eine Matrix, die verschiedene Thermometercodes mit
einem jeweils aufsteigenden Codewert aufweist, jeweils in der horizontalen
wie auch vertikalen Projektion in sogenannte Segmente zu unterteilen.
Die einzelnen Segmente weisen dabei die gleiche Bitanzahl auf. Durch
die erfindungsgemäße, sehr
vorteilhafte Verknüpfung
einzelner Bits aus der so in Segmente unterteilten Matrix und anschließender Addition
aus dem Ergebnis dieser logischen Verknüpfung lässt sich auf sehr einfache
sowie sehr effektive und schnelle Weise der entsprechende binäre Ausgangscode
bereitstellen.
Der vorliegenden Erfindung liegt
dabei die Erkenntnis zugrunde, dass der Thermometercode im Grunde
eine – im
Unterschied zu einem herkömmlichen
binären
Code – sehr
regelmäßige Struktur
aufweist. Daher lassen sich durch einfache ODER-Verknüpfungen,
Addierern und Multiplexern die gewünschten Ausgangssignale sehr
schnell bereitstellen.
Ursache dafür ist, dass an den Eingängen der
ODER-Verknüpfungen
die einzelnen Bitsignale des Thermometercodes parallel anliegen
und somit deren Ausgangssignale mehr oder weniger zeitgleich in
einem ersten Addierer eingekoppelt werden. Da auch bei den Multiplexern
die jeweiligen Eingangssignale parallel anliegen, können die
entsprechenden Kanäle
der verschiedenen Multiplexer mittels der rückgekoppelten Ausgangssignale
des ersten Addierers mehr oder weniger zeitgleich ausgewählt werden.
Somit liegen unmittelbar nachdem die Ausgangssignale des ersten
Addierers zur Verfü gung
stehen, auch die Ausgangssignale des zweiten Addierers und damit
der vollständige
Binärcode
am Ausgang des Konvertierers bereit.
Dadurch dass die Bits des Thermometercodes
mehr oder weniger parallel verarbeitet werden, ist die gesamte Konvertierschaltung
geeignet für
sehr hohe Frequenzen im Bereich von 500 MHz und größer. Die Konvertierschaltung
lässt sich
damit vorteilhafterweise bei heute verwendeten 0,18 μm-Technologien einsetzen.
Die erfindungsgemäße Konvertierschaltung
lässt sich
damit beispielsweise bei Anwendungen für die drahtlose Datenkommunikation,
Videoanwendungen und Breitbandanwendungen (z.B. ADSL, VDSL, UMTS, etc.),
die bei den genannten hohen Frequenzen betrieben werden, einsetzen.
Die Erfindung eignet sich besonders
vorteilhaft für
Thermometercodes mit einer sehr hohen Bitzahl, beispielsweise einem
32-Bit- oder 16-Bit-Thermometercode, da hier der Vorteil aufgrund
der sehr schnellen Konvertiergeschwindigkeit im Vergleich zu herkömmlichen
Konvertierverfahren bzw. Konvertieranwendungen besonders groß ist. Darüber hinaus
eignet sich die Erfindung selbstverständlich auch sehr vorteilhaft
bei Thermometercodes mit geringerer Bitzahl, beispielsweise bei
4-Bit- bzw. 8-Bit-Thermometercodes. Die Erfindung sei jedoch nicht
ausschließlich
auf 4-Bit-, 8-Bit-, 16-Bit-, 32-Bit-Thermometercodes
beschränkt,
sondern lässt sich
selbstverständlich
auf eine beliebige Bitanzahl erweitern.
Vorteilhafte Ausgestaltungen und
Weiterbildungen sind den Unteransprüchen sowie der Beschreibung unter
Bezugnahme auf die Zeichnung entnehmbar.
In einer Ausgestaltung der Erfindung
ist die Anzahl der ODER-Gatterschaltungen und/oder die Anzahl der
Multiplexerschaltungen bzw. die Anzahl deren Eingangsanschlüsse durch
den in Segmente unterteilten Thermometercode festgelegt.
In einer Ausgestaltung sind pro Segment
vier Bits vorgesehen, wobei die Segmente des Thermometercodes typischerweise
jeweils eine gleiche Bitbreite aufweisen.
In einer Ausgestaltung werden in
die Eingangsanschlüsse
einer jeweiligen ODER-Gatterschaltung jeweils nur Bits eines einzigen
Segments eingekoppelt.
In einer Ausgestaltung werden in
die Eingangsanschlüsse
einer jeweiligen Multiplexerschaltung jeweils nur Bits unterschiedlicher
Segmente, die aber innerhalb des jeweiligen Segments dieselben MSB-
bzw. LSB-Wertigkeit aufweisen, eingekoppelt.
In einer Ausgestaltung ist das niedrigstwertige
Segment, also das Segment mit den ersten vier Bits des Thermometercodes,
stets aktiv gesetzt. Diese Erkenntnis kann genutzt werden, um den
Schaltungsaufwand zur Berechnung der Segmentanzahl im Addierer zu
reduzieren, indem lediglich die Ausgänge der die drei höherwertigen
Segmente repräsentierenden
ODER-Gatter aufsummiert
werden. Im Falle von m-Segmenten beträgt damit die erste Anzahl m,
insbesondere m – 1.
In einer sehr vorteilhaften Ausgestaltung
ist das niedrigstwertige Bit (LSB) eines jeweiligen aktiven Segments
stets auf „Eins" gesetzt. Dies reduziert
vorteilhafterweise den Schaltungsaufwand und damit auch den Rechenaufwand,
da lediglich die drei höherwertigen
Bits eines aktiven Segments gemultiplext und dann aufaddiert werden
müssen.
Im Falle einer Bitbreite k eines Segmentes beträgt dann die zweite Anzahl k,
insbesondere k – 1.
In einer Ausgestaltung beträgt im Falle
von m-Segmenten der Bitbreite k = 4 die Anzahl der Eingangsanschlüsse der
Addierer maximal m, vorteilhafterweise m – 1. Für den Fall m = 4 kann im letzteren
Fall vorteilhafterweise zumindest einer der Addierer als Voll-Addierer
ausgebildet sein. Ein Voll-Addierer weist drei Eingänge sowie
zwei Ausgänge
auf. Der Voll-Addierer
addiert somit drei Bits und stellt an seinem Ausgang zwei Bits und
damit vier mögliche
Ausgangswerte bereit. Selbstverständlich wäre hier auch ein Halb-Addierer
denkbar, beispielsweise bei der Verarbeitung eines lediglich 8-Bit
breiten Thermometercodes.
In einer sehr vorteilhaften Ausgestaltung
sind die Addierer, die ODER-Gatter bzw. die Multiplexer als standardmäßige Bibliothekenzellen
ausgebildet. Diese Bibliothekenzellen können aus einer herkömmlichen Bibliothek,
welche eine Vielzahl von Grundschaltungen, insbesondere Grundgatterschaltungen,
enthält,
entnommen sein. Diese Ausgestaltung erlaubt es ferner, dass bei
einem Übergang
zu einer neuen Chip-Technologie die entsprechende Konvertiererschaltung
auf sehr einfache Weise an die neue Technologie angepasst werden
kann, indem lediglich die Standardbibliothekzellen ausgetauscht
werden. Ein zusätzlicher
Aufwand für ein
angepasstes Schaltungslayout bzw. Schaltungsdesign ist hier nicht
mehr erforderlich, so dass der Entwicklungsaufwand und damit auch
die Entwicklungskosten im Falle eines erforderlichen Technologietransfers
minimal bleibt.
In einer Ausgestaltung weist der
Konvertierer maximal n Eingangsanschlüsse sowie maximal m Ausgangsanschlüsse auf.
Typischerweise handelt es sich bei
dem binären
Ausgangscode um einen Binärcode
oder einen Hexadezimalcode.
In einer besonders vorteilhaften
Ausgestaltung wird bei der erfindungsgemäßen Konvertierschaltung auf
eigens für
die Fehlerbeseitigung im Falle von Übergangs-Bitfehlern vorgesehene
Mittel verzichtet. Die Erfindung geht hierbei von der Erkenntnis
aus, dass solche Übergangs-Bitfehler
außerordentlich
selten auftauchen und insbesondere bei Thermometercodes mit einer
hohen Bitanzahl das Ergebnis nur unwesentlich verfälschen.
Darüber
hinaus spiegelt sich in speziellen Fällen ein durch einen Übergangs-Bitfehler
hervorgerufener Fehler im binären
Ausgangscode gar nicht wieder. Ursache dafür ist, dass mittels der erfindungsgemäßen Anordnung
bzw. des erfindungsgemäßen Verfahrens
die Bits spezieller Segmente, die nicht aktiv erkannt werden, gar
nicht bei der Berechnung des ausgegebenen binären Codes mitberücksichtigt
werden. Fällt
in ein solches Segment der Übergangs-Bitfehler,
dann eröffnet
die Erfindung die Möglichkeit,
dass dieser Fehler nicht berücksichtigt
wird und somit ein fehlerbereinigtes binäres Ausgangssignal bereitsteht.
Dadurch, dass außerdem
auf den sehr umfangreichen Schaltungsaufwand zur Fehlerkorrektur
bzw. Fehlerbeseitigung, wie er beispielsweise bei Konvertierschaltungen
nach dem Stand der Technik erforderlich ist, verzichtet wird, ist
der gesamte Schaltungsaufwand sehr gering und die Leistungsfähigkeit
dementsprechend verbessert.
Die erfindungsgemäße Konvertieranordnung wird
vorteilhafterweise in einem Analog-Digital-Wandler, insbesondere
in einem Parallel-Analog-Digital-Wandler oder einem Flash-Analog-Digital-Wandler,
eingesetzt.
Die Erfindung wird nachfolgend anhand
der in den Figuren der Zeichnung angegebenen Ausführungsbeispiele
näher erläutert. Es
zeigt dabei:
1 eine
Tabelle, aus der anhand eines Beispiels für einen 16-Bit-Thermometercode
die Umwandlung in einen 4-Bit-Binärcode mittels der erfindungsgemäßen Segmentierung
dargestellt wird;
2 ein
schematisches Blockschaltbild für
eine erfindungsgemäße Konvertieranordnung,
anhand der das erfindungsgemäße Konvertierverfahren
dargestellt wird;
3 eine
Tabelle, anhand der die Konvertierung eines 16-Bit-Thermometercodes
in einen 4-Bit-Binärcode im
Falle eines vorhandenen Übergangs-Bitfehlers
dargestellt wird;
4 ein
Beispiel für
einen Analog-Digital-Wandler mit einer erfindungsgemäßen Konvertiereranordnung
gemäß 2.
In allen Figuren der Zeichnung sind
gleiche bzw. funktionsgleiche Elemente und Signale – sofern nichts
anderes angegeben ist – gleich
bezeichnet worden. Die in Klammern in den 2 und 4 angegebenen Zahlen
bezeichnen jeweils die Bitposition begonnen jeweils vom niedrigstwertigen
Bit (LSB). Bei der Darstellung der Bitzahl wird jeweils bei Null
als dem niedrigstwertigen Bit (LSB = least significant bit) begonnen
und im Falle eines 16-Bit-Thermometercodes bei 15 als dem höchstwertigen
Bit (MSB = most significant bit) aufgehört.
Die Tabelle in 1 zeigt einen kompletten 16-Bit-Thermometercode,
den entsprechenden binären Code
sowie den entsprechenden dezimalen Wert des Thermometercodes bzw.
binären
Codes. In der letzten Spalte ist ferner die Segmentnummer p des
jeweils aktiven Segmentes in binärer
Schreibweise dargestellt.
Das Beispiel in 1 gilt für ein 4-Bit-Ausgangssignal,
welches somit den Bitbereich von 0 bis 15 darstellt. Die Anzahl
der Eingangssignale beträgt
somit 15, wobei zur vereinfachten Berechnung eine zusätzliche Spalte
hinzugefügt
wurde, die stets auf Eins gesetzt ist und somit das niedrigstwertige
Bit (LSB) des Thermometercodes enthält.
Der Eingangs-Thermometercode in 1 definiert demgemäß eine Matrix,
die sowohl in vertikaler als auch horizontaler Richtung jeweils
16 Bits aufweist und damit eine 16 × 16-Matrix darstellt.
Diese 16 × 16-Matrix wird nun unterteilt
in eine Vielzahl von 4 Bit-breiten Segmenten und zwar sowohl in
vertikaler als auch in horizontaler Richtung. Die l6 × 16-Matrix
weist somit vier Spaltensegmente sowie vier Zeilensegmente auf.
Diese Segmentierung wurde in der Tabelle in 1 durch entsprechende Leerzeilen bzw. Leerzeichen
zwischen benachbarten Segmenten dargestellt.
Für
die weitere Beschreibung der Erfindung wird folgende Nomenklatur
festgelegt:
Ein Bit mit dem Wert Eins wird nachfolgend als „aktives
Bit" bezeichnet.
Ein aktives Segment ist ein Segment innerhalb eines Thermometercodes,
welches zumindest ein aktives Bit aufweist.
Um nun erkennen zu können, ob
innerhalb eines Segments eines Thermometercodes aktive Bits existieren,
wird jeweils eine ODER-Verknüpfung
mit vier Eingängen
und einem Ausgang für
jedes Segment verwendet. Ist ein aktives Segment vorhanden, dann
ist das Ergebnis dieser ODER-Verknüpfung eine Eins, wohingegen
sich bei einem nicht-aktiven Segment eine Null ergibt. Die verschienen
Ergebnisse der ODER-Verknüpfungen
werden addiert und ergeben damit die Anzahl der aktiven Segmente.
Infolge der Tatsache, dass das niedrigstwertige
Segment (LSS = least significant segment), also das Segment mit
den Bitnummern 0 bis 3, stets aktiv ist, kann hier vorteilhafterweise
auf eine ODER-Verknüpfung verzichtet
werden, da das Ergebnis dieser Verknüpfung ohnehin immer ein Eins
wäre. Dies
reduziert den Rechenaufwand zusätzlich,
da statt vier Ausgangsbits nur 3 aufaddiert werden müssen.
Wie bereits oben erwähnt, weist
der Thermometercode wie auch der binäre Code jeweils eine hohe Regulariät auf. Diese
Tatsache kann vorteilhafterweise bei der weiteren Ermittlung des
binären
Ausgangscodes verwendet werden. So zeigt die Tabelle in 1, dass die beiden MSB-Bits
des binären
Ausgangscodes genau der binären
Segmentnummer (siehe letzte Spalte in 1)
entsprechen. Ferner kann aus der Tabelle entnommen werden, dass
die beiden LSB-Bits des binären
Ausgangscodes pro vertikalem Segment jeweils dasselbe Muster aufweisen.
Ursache dafür
ist, dass die beiden LSB-Bits des binären Ausgangscodes jeweils das
aktive Segment innerhalb des Thermometercodes wiedergeben, in dem
der Bitübergang
von Null auf Eins erfolgt.
Diese Erkenntnis kann zum Multiplexen
der jeweiligen Bits innerhalb dieses Segments genutzt werden, da
durch die bereits durchgeführte
ODER-Verknüpfung
und Addition bekannt ist, in welchem Segment der Bitübergang
stattfindet. Durch Multiplexen erhält man so diejenige Reihe der
aktiven Bits innerhalb des aktiven Segments, in welchem der Bitübergang
stattfindet. Diese Bits können
dann addiert werden und bilden die beiden LSB-Bits des binären Ausgangscodes.
Die Tabelle in 1 zeigt diesen Zusammenhang. 1 zeigt ferner, dass das
LSB-Bit innerhalb dieses aktiven Segments stets auf „Eins" gesetzt ist. Diese
Erkenntnis kann dazu genutzt werden, dass beim Multiplexen und Addieren
lediglich die drei MSB-Bits innerhalb des aktiven Segments addiert
werden, so dass statt der Verwendung von 4 Multiplexern lediglich
3 verwendet werden können.
Dies reduziert zusätzlich
den Rechenaufwand.
2 zeigt
ein schematisches Blockschaltbild für eine Schaltungsanordnung
zum Umsetzen eines 16-Bit-Thermometercodes
in einen 4-Bit-binären
Ausgangscode.
In 2 ist
der Konvertierer mit Bezugszeichen 1 bezeichnet. Der Konvertierer 1 weist
vier Ausgänge 10–13 auf,
an denen der binäre
Ausgangscode out (0)–out
(3) abgreifbar ist. Der Konvertierer 1 weist ferner eine
Vielzahl von Ein gangsanschlüssen,
in die die Bits des Thermometercodes in(0) –in(15) einkoppelbar sind, auf.
Der Konvertierer 1 enthält drei
parallel zueinander angeordnete ODER-Gatter 2, 3, 4,
wobei jeweils ein ODER-Gatter 2, 3, 4 vier
Eingänge
und einen Ausgang aufweist. Ausgangsseitig ist den ODER-Gattern 2, 3, 4 ein
Voll-Addierer 5 nachgeschaltet. Der Voll-Addierer 5 weist
drei Eingangsanschlüsse
A, B, C und zwei Ausgangsanschlüsse
CO, S auf, wobei jeweils ein Eingangsanschluss A, B, C mit einem
Ausgang eines ODER-Gatters 2, 3, 4 verbunden
ist. An den beiden Ausgangsanschlüssen CO, S liegen die beiden
Ausgangssignale out(3), out(2) an, die den beiden MSB-Bits des binären Ausgangssignals
entsprechen.
Der Konvertierer 1 weist
ferner drei Multiplexer 6, 7, 8, die
jeweils vier Eingänge
und einen Ausgang aufweisen, auf. Die Multiplexer 6, 7, 8 weisen
ferner zwei Auswahleingänge
S0, S1 auf, die mit den Ausgangsanschlüssen CO, S des Voll-Addierers 5 verbunden
sind und in die somit die binären
Ausgangssignale out(3), out(2) einkoppelbar sind. Den parallel zueinander
angeordneten Multiplexern 6, 7, 8 ist
ausgangsseitig ein zweiter Voll-Addierer 9 angeordnet.
Der zweite Voll-Addierer 9 weist drei Eingänge A, B,
C sowie zwei Ausgänge
CO, S auf, wobei die drei Eingänge
A, B, C jeweils mit einem Ausgang der Multiplexer 6, 7, 8 verbunden sind.
Die beiden Ausgänge CO, S des ersten Voll-Addierers 5 bilden
gleichermaßen
die beiden Ausgangsanschlüsse 13, 12,
an denen die beiden MSB-Bits des binären Ausgangscodes anliegen,
wohingegen die beiden Anschlüsse
CO, S des zweiten Voll-Addierers 9 die
beiden anderen Ausgangsanschlüsse 11, 10 bilden, an
denen die beiden LSB-Bits des binären Ausgangscodes abgreifbar
sind.
Aus 2 geht
ferner hervor, dass nicht alle 16 Bits des Thermometercodes in(0)– in(15),
wie bereits oben erwähnt, für die Konvertierung
verwendet werden. Dies reduziert auf sehr vorteilhafte Weise den
gesamten Schaltungsaufwand. Die Konvertierschaltung 1 gemäß 2 ist somit dazu geeignet,
einen Thermometercode in(0)–in(15)
entsprechend 1 sehr
einfach und schnell in einen binären
Ausgangscode out(0)–out(3)
zu wandeln.
Nachfolgend sei die Funktionsweise
des Konvertierers 1 kurz erläutert:
Um feststellen
zu können,
wie viele aktive Segmente in einem jeweiligen Thermometercode vorhanden
sind, werden die Bits in(4)–in(15)
der oberen drei Segmente (p = 1–p
= 3), also der drei MSS-Segmente, segmentweise in die drei ODER-Gatter 2, 3, 4 eingekoppelt.
Hat ein jeweiliges Segment zumindest ein aktives Bit, dann wird
durch die ODER-Verknüpfung
das Ausgangssignal zu „Eins". So kann die Anzahl
der aktiven Segmente festgestellt werden. Da im niedrigsten Segment
stets ein aktives Bit vorhanden ist, kann auf eine solche ODER-Verknüpfung verzichtet
werden, da die Eingangsbits an den ODER-Gattern 2, 3, 4 parallel
anliegen, liegen an den Ausgängen
der ODER-Gatter 2, 3, 4 mehr oder weniger
parallel die Eingangssignale für
den ersten Voll-Addierer 5 bereit. Dieser muss lediglich
diese drei Bits aufaddieren und erzeugt daraus die beiden MSB-Bits
des binären
Ausgangscodes out(2), out(3), die an den Ausgangsanschlüssen 12, 13 anliegen.
Diese Ausgangssignale out(2), out(3) werden dann genutzt, um bei
den Multiplexern 6, 7, 8 die jeweils
gewünschten Eingänge I0–I3 auszuwählen. Die
Eingänge
I0–I3
eines jeweiligen Multiplexers 6, 7, 8 sind
so arrangiert, dass dem ersten Multiplexer 6 ausschließlich die
höchsten
MSB-Bits der vier Segmente, dem zweiten Multiplexer 7 die
zweithöchsten
MSB-Bits der vier Segmente und dem dritten Multiplexer 8 die
dritthöchsten
MSB-Bits der vier Segmente zugeführt
werden. Über
die an den Ausgangsanschlüssen 12, 13 anliegenden
beiden MSB-Bits des binären
Ausgangscodes, die in die Auswahlanschlüsse S1, S0 der Multiplexer 6, 7, 8 eingekoppelt werden, lässt sich
dasjenige Segment auswählen,
in dem gerade der Bitübergang
stattfindet, d.h. von den Multiplexern 6, 7, 8 werden
lediglich diejenigen Eingangsbits durchgelassen, die in dem jeweiligen
aktiven Segment mit einem Bitübergang
angeordnet sind. Diese drei Ausgangssignale der Multiplexer 6, 7, 8 werden
von dem zweiten Voll-Addierer 9 aufaddiert, so dass an
den Ausgangsanschlüssen 10, 11 die
beiden LSB-Bits
des binären
Ausgangscodes out(0), out(1) abgreifbar sind.
Auf einen vierten Multiplexer, an
dessen Eingangsanschlüssen
die LSB-Bits eines jeweiligen Segments anliegen, kann verzichtet
werden, da innerhalb eines aktiven Segments und insbesondere innerhalb
des Segments, in dem der Bit-Übergang
stattfindet, das LSB-Bit stets auf „Eins" gesetzt ist.
Durch die Konvertierschaltung 1 entsprechend 2 kann sehr einfach und
sehr schnell der binäre Ausgangscode
out(0) –out(3)
aus dem 16-Bit-Thermometercode in(0)–in(15) gewonnen werden. Dies
daher, da die ODER-Gatter 2, 3, 4 sowie
die Multiplexer 6, 7, 8 jeweils parallel
zueinander angeordnet sind, so dass deren Ausgangssignale mehr oder
weniger gleichzeitig anliegen. Im Unterschied zum Stand der Technik,
wo die gesamten 16 Bits nacheinander addiert werden müssen, um
den binären
Ausgangscode zu gewinnen, müssen
hier die Voll-Addierer 5, 9 jeweils nur drei Bits
aufaddieren. Dies erfolgt im Vergleich zum Stand der Technik sehr
viel schneller.
3 zeigt
eine Tabelle, anhand der die Konvertierung eines 16-Bit-Thermometercodes
in einen 4-Bit-Binärcode
im Falle eines vorhandenen Übergangs-Bitfehlers
dargestellt ist.
Die Tabelle in 3 zeigt, dass durch den erfindungsgemäßen Konvertierer 1 entsprechend 2 ein durch einen Übergangsbit-Fehler
verursachter Fehler im binären
Ausgangs code nicht ganz verhindert werden kann. Es zeigt sich aber,
dass ohne das Vorhandensein einer eigens dafür vorgesehenen Fehlerkorrekturschaltung
sich bisweilen ein Übergangsbit-Fehler im binären Ausgangscode
gar nicht bemerkbar macht. Dies ist durch die Tatsache zu erklären, dass
nicht alle Bits des Thermometercodes für die Konvertierung genutzt werden.
4 zeigt
ein Beispiel für
einen Analog-Digital-Wandler mit einer erfindungsgemäßen Konvertiereranordnung
gemäß 2.
Der Analog-Digital-Wandler ist hier
mit Bezugszeichen 20 bezeichnet worden. Der Analog-Digital-Wandler 20 weist
einen Eingang 21 sowie vier Ausgänge 10–13,
welche den Ausgängen
des Konvertierer 1 entsprechen, auf. In den Eingangsanschluss 21 wird
ein analoges Eingangssignal VI eingekoppelt. Der Analog-Digital-Wandler 20 weist
eine mit dem Eingang 21 verbundene Eingangsstufe 22,
an deren Ausgängen analoge
Teilsignale D0–D15
anliegen, auf. Der Eingangsstufe 22 ist eine Referenzstufe 23 zur
Erzeugung des Thermometercodes in(0)–in(15) nachgeschaltet. Die
Referenzstufe 23 ist ferner mit einer Referenzspannungsquelle 24 zur
Bereitstellung verschiedener Referenzpotenziale gekoppelt. Der Referenzstufe 23 ist
ausgangsseitig eine Konvertierschaltung 1, deren Aufbau
beispielsweise der in 2 entspricht,
nachgeschaltet.
Die vorliegende Erfindung wurde anhand
eines Konvertierers zum Konvertieren eines 16-Bit-Thermometercodes
in einen 4-Bit-binären Ausgangscode
beschrieben. Die Erfindung sei jedoch nicht auf diese 16-Bit- auf
4-Bit-Konvertierung beschränkt,
sondern lässt
sich auf eine beliebige Bitzahl des Thermometercodes, beispielsweise
auf 32 Bit, 8 Bit, 4 Bit erweitern. Eine Reduzierung der Bitzahl,
beispielsweise von 16 auf 8, hätte zur
Folge, dass lediglich ein ODER-Gatter 2, 3, 4 erforderlich
wäre. Die
Multiplexer 6, 7, 8 hätten in diesem Falle lediglich
zwei Eingänge.
Entsprechend müssten
bei einem für
mehr als 16 Bits ausgelegten Konvertierer 1 auch eine größere Anzahl
an ODER-Gatter 2, 3, 4 verwendet werden,
wobei die Multiplexer 6, 7, 8 hier auf eine
größere Anzahl
an Eingängen
ausgelegt sein müssten.
Zusammenfassend kann also festgestellt
werden, dass durch das erfindungsgemäße Verfahren bzw, die erfindungsgemäße Anordnung
auf sehr einfache, jedoch nichts desto Trotz sehr effektive und
schnelle Weise eine Konvertierung eines Thermometercodes in einen
binären
Ausgangscode realisiert werden kann.