-
TECHNISCHES GEBIET
-
Die vorliegende Anmeldung betrifft Verfahren und Vorrichtungen zum Speichern von Parametern.
-
HINTERGRUND
-
Viele Blöcke oder Schaltungsteile elektronischer Schaltungen, beispielsweise analoge Blöcke oder Schaltungen, benötigen während des Betriebs passend eingestellte Parameter, um korrekt zu arbeiten. Beispielsweise können Analog-Digital-Wandler (A/D-Wandler) oder Digital-Analog-Wandler (D/A-Wandler) Parameter zur Kompensation eines Versatzes (Offset), zur Einstellung eines gewünschten Gains oder zum Erreichen einer gewünschten Linearität benötigen. Derartige Parameter können beispielsweise durch eine Kalibrierung gewonnen werden. Danach können diese Parameter in verschiedenen Arten von Speichern gespeichert werden, insbesondere nichtflüchtigen Speichern wie Flash-Speichern, Schmelzsicherungen, elektrisch programmierbaren Nur-Lese-Speichern (EPROMs; Electrically Programmable Read Only Memories) oder anderen nichtflüchtigen Speichern. Manchmal können diese Parameter auch aus nichtflüchtigen Speichern in flüchtige Speicher wie Speicher mit wahlfreiem Zugriff (RAM; Random-Access Memory) oder Register transferiert werden, um den Betrieb zu erleichtern.
-
Insbesondere werden bei manchen Anwendungen derartige Parameter zur digitalen Korrektur, beispielsweise vollständig digitalen Korrektur, von Bauelementen eingesetzt. Insbesondere können analoge Schaltungen beispielsweise gewisse Toleranzen aufweisen, welche dann beispielsweise durch digitale Berechnungen und Techniken korrigiert werden können. Bei einer derartigen digitalen Korrektur werden die analogen Komponenten beispielsweise so, wie sie hergestellt werden, akzeptiert, aber Informationen in der Schaltung werden in einem digitalen Teil modifiziert, beispielsweise, um Fehler zu korrigieren. Dem gegenüber würde eine analoge Korrektur typischerweise die Modifizierung analoger Komponenten umfassen, was aufwändig ist.
-
Beispielsweise würde ein Analog-Digital-Wandler mit einer analogen Implementierung, welche beispielsweise hohe Toleranzen aufweist, zunächst falsche digitale Ausgangscodes liefern, aber eine digitale Korrektur könnte benutzt werden, um diese Codes zu modifizieren, sodass das Gesamtsystem aus Analog-Digital-Wandler und digitaler Korrektur korrekt arbeitet. Beispielsweise kann eine Look-up Tabelle benutzt werden, welches die „falschen“ Codes, die von dem Analog-Digital-Wandler zunächst ausgegeben werden, in die „richtigen“ Codes übersetzt. Eine derartige Look-up Tabelle, bei welcher beispielsweise jedem Ausgangscodes des Analog-Digital-Wandlers ein korrigierter Code zugeordnet ist, stellt dann ein Beispiel für gespeicherte Parameter dar. Ähnliche Techniken können bei anderen Komponenten, beispielsweise Digital-Analog-Wandlern oder digital gesteuerten Oszillatoren, zum Einsatz kommen. Bei anderen Vorrichtungen können Parameter anders eingesetzt werden, beispielsweise im Rahmen von Berechnungen, um Ergebnisse zu korrigieren oder auch um die Vorrichtungen einzustellen und/oder anzupassen.
-
Herkömmlicherweise werden derartige Parameter als Digitalwerte gespeichert. Gewisse Fehlerereignisse können derartige gespeicherte Daten jedoch korrumpieren oder verändern, beispielsweise α-Teilchen, die auf eine Speicherzelle treffen, oder auch Stromausfälle oder Stromunterbrechungen. Wird ein derartiger Fehler nicht erkannt, kann sich das Verhalten der jeweiligen Vorrichtung deutlich ändern, da nach einem Ereignis dann beispielsweise veränderte Werte, beispielsweise mehr oder weniger zufällige Werte, als Parameter gespeichert sind. Dies kann zu Fehlfunktionen führen. Selbst wenn der Fehler detektiert wird, führt dies häufig zumindest zu einem kurzen Ausfall der Vorrichtung, bis beispielsweise eine Kalibrierung wiederholt wurde oder die Parameter auf andere Weise korrigiert wurden.
-
Aus der
EP 1 775 838 A1 ist ein Digital-Analog-Wandler bekannt, bei welchem höherwertige Bits und niederwertige Bits auf verschiedene Weise digital korrigiert werden. Hierzu können zwei Lookup-Tabellen zum Einsatz kommen. Diese können in verschiedenen Speichern mit wahlfreiem Zugriff (RAMs) gespeichert sein.
-
Aus der
DE 100 07 408 A1 ist es bekannt, Lookup-Tabellen für Analog-Digital-Wandler zu verwenden.
-
Die
US 2011/0227770 A1 offenbart einen Digital-Analog-Wandler mit verschiedenen Korrekturtabellen, insbesondere einer Vorverzerrungskorrekturtabelle.
-
Aus der
US 2007/0274059 A1 ist ein Speichermodul bekannt, welches durch eine Abschirmung vor elektromagnetischer Interferenz geschützt ist. Diese Abschirmung umschließt dabei im Wesentlichen das gesamte Speichermodul.
-
Es ist daher eine Aufgabe der vorliegenden Anmeldung, Möglichkeiten bereitzustellen, eine Fehleranfälligkeit von Vorrichtungen, welche gespeicherte Parameter verwenden, zu reduzieren oder zumindest Fehler, die dadurch entstehen können, dass gespeicherte Parameter korrumpiert werden, zu verringern.
-
KURZZUSAMMENFASSUNG
-
Es werden eine Vorrichtung nach Anspruch 1, sowie ein Verfahren nach Anspruch 12 bereitgestellt. Die Unteransprüche definieren weitere Ausführungsbeispiele.
-
Figurenliste
-
- 1 ist ein Blockdiagramm einer Vorrichtung zur Speicherung von Parametern gemäß einem Ausführungsbeispiel.
- 2 zeigt ein erstes Anwendungsbeispiel für eine Vorrichtung zum Speichern von Parametern gemäß Ausführungsbeispielen.
- 3 zeigt ein zweites Anwendungsbeispiel für eine Vorrichtung zum Speichern von Parametern gemäß Ausführungsbeispielen.
- 4 zeigt ein drittes Anwendungsbeispiel einer Vorrichtung zum Speichern von Parametern gemäß Ausführungsbeispielen.
- 5 zeigt ein Flussdiagramm zum Veranschaulichen eines Verfahrens gemäß einem Ausführungsbeispiel.
- 6 zeigt eine Wandlervorrichtung gemäß einem Ausführungsbeispiel.
- 7 zeigt ein Flussdiagramm zum Veranschaulichen eines Verfahrens gemäß einem Ausführungsbeispiel.
-
DETAILLIERTE BESCHREIBUNG
-
Im Folgenden werden verschiedene Ausführungsbeispiele detailliert erläutert. Es ist zu bemerken, dass diese Ausführungsbeispiele lediglich der Veranschaulichung dienen und nicht als einschränkend auszulegen sind. Auch wenn Ausführungsbeispiele beschrieben werden, welche eine Vielzahl von Elementen oder Komponenten aufweisen können, ist dies nicht dahingehend auszulegen, dass alle diese Elemente oder Komponenten wesentlich sind, da bei anderen Ausführungsbeispielen manche dieser Elemente oder Komponenten weggelassen sein können oder durch alternative Elemente oder Komponenten ersetzt sein können. Bei anderen Ausführungsbeispielen können zusätzliche Elemente oder Komponenten bereitgestellt sein.
-
Merkmale, Elemente oder Komponenten verschiedener Ausführungsbeispiele können miteinander kombiniert werden, sofern nichts anderes angegeben ist. Kopplungen oder Verbindungen zwischen Elementen oder Komponenten können direkte Verbindungen oder Kopplungen ohne dazwischen liegende Elemente oder indirekte Verbindungen oder Kopplungen mit einem oder mehreren dazwischen liegenden Elementen sein, solange die grundsätzliche Funktion der Verbindung oder Kopplung im Wesentlichen gleich bleibt, beispielsweise eine gewisse Information oder ein gewisses Signal zu übertragen.
-
Bei manchen Ausführungsbeispielen wird ein erster Parameterteilwert eines Parameters in einem ersten Speicher gespeichert und ein zweiter Parameterteilwert des Parameters in einem zweiten Speicher, der sich von dem ersten Speicher unterscheidet, insbesondere von diesem physikalisch getrennt ist, gespeichert. So kann der erste Speicher von einem anderen Typ, insbesondere einem sichereren Typ, als der zweite Speicher sein. Wenn der Parameter benötigt wird, kann dann der erste Parameterteilwert aus dem ersten Speicher ausgelesen werden, der zweite Parameterteilwert aus dem zweiten Speicher ausgelesen werden und dann ein Parameterteilwert des Parameters durch Kombination des ersten Parameterteilwerts mit dem zweiten Parameterteilwert (beispielsweise durch Addition oder Subtraktion) gewonnen werden.
-
Bei anderen Ausführungsbeispielen kann ein erster Parameterwert in einem ersten Speicher und ein zweiter Parameterwert in einem zweiten Speicher gespeichert werden. Basierend auf dem ersten Parameterwert kann ein Hauptnetzwerk einer Wandlervorrichtung korrigiert oder eingestellt werden, und basierend auf dem zweiten Parameterwert kann ein Korrekturnetzwerk der Wandlervorrichtung korrigiert oder eingestellt werden.
-
Beispielsweise kann in dem ersten Speicher ein allgemeiner und/oder idealer Wert des Parameters für einen bestimmten Vorrichtungstyp gespeichert sein, und in dem zweiten Speicher kann eine Abweichung und/oder Korrektur für die jeweils individuelle Vorrichtung gespeichert sein. Wenn beispielsweise durch ein Ereignis, wie kosmische Strahlung, der Inhalt des zweiten Speichers korrumpiert wird, kann dann bei manchen Ausführungsbeispielen der Betrieb mit gegebenenfalls geringerer Genauigkeit fortgesetzt werden, da der Parameterteilwert des ersten Speichers nach wie vor zur Verfügung steht. Bei anderen Ausführungsbeispielen können andere Techniken zum Einsatz kommen.
-
In 1 ist eine Vorrichtung gemäß einem Ausführungsbeispiel schematisch dargestellt. Die Vorrichtung der 1 umfasst einen ersten Speicher 12 und einen zweiten Speicher 13. Der erste Speicher 12 und der zweite Speicher 13 sind dabei verschiedene Speicher, beispielsweise physikalisch getrennte Speicher und/oder Speicher verschiedenen Typs. Beispielsweise kann der erste Speicher 12 ein Nur-Lese-Speicher (ROM) oder eine fest verdrahtete Logik umfassen. Der zweite Speicher 13 kann beispielsweise ein EPROM, einen Flash-Speicher, einen Speicher mit wahlfreiem Zugriff (RAM) und/oder ein Register umfassen. Ein RAM oder Register kann z.B. durch Kalibrierung oder durch Daten aus einem anderen Speicher belegt werden. Der erste Speicher 12 kann derart aufgebaut und/oder angeordnet sein, dass er weniger fehleranfällig ist als der zweite Speicher 13, z.B. weniger anfällig für unbeabsichtigte Änderungen des Speicherinhalts, beispielsweise durch α-Strahlen oder andere Arten von Strahlung.
-
Der erste Speicher 12 dient bei dem Ausführungsbeispiel der 1 zum Speichern eines ersten Parameterteilwerts p1 eines Parameters. Der zweite Speicher 13 dient zum Speichern eines zweiten Parameterteilwerts des Parameters. Auch wenn hier zur Veranschaulichung nur von einem Parameter die Rede ist, können in dem ersten Speicher 12 und dem zweiten Speicher 13 auch erste und zweite Parameterteilwerte mehrerer verschiedener Parameter gespeichert werden.
-
Wenn beispielsweise eine Verarbeitungseinrichtung 10 dann den Parameter benötigt, wird der erste Parameterteilwert p1 aus dem ersten Speicher 12 ausgelesen und der zweite Parameterteilwert p2 wird aus dem zweiten Speicher 13 ausgelesen. Um dann einen Parameterteilwert p des Parameters zu erhalten, wird der erste Parameterteilwert p1 mit dem zweiten Parameterteilwert p2 kombiniert, beispielsweise in einem Addierer 11 addiert oder subtrahiert. Der Parameterwert p kann dann in der Verarbeitungseinrichtung 10 benutzt werden, um ein Eingangssignal s1 unter Benutzung des Parameterwerts p zu verarbeiten und beispielsweise ein verarbeitetes Signal s2 auszugeben. Bei anderen Ausführungsbeispielen kann die Verarbeitungseinrichtung 10 auch nur ein Signal s2 ausgeben, welches unter Benutzung des Parameters p gewonnen wird.
-
Die Verarbeitungseinrichtung 10 kann dabei beispielsweise eine Analog-Digital-Wandler (A/D-Wandler)-Anordnung oder eine Digital-Analog-Wandler (D/A-Wandler)-Anordnung, einen Oszillator oder beispielsweise auch einen Sensor umfassen. Der Parameter mit dem Parameterwert p kann beispielsweise zur Kalibrierung und/oder Linearisierung der Verarbeitungseinrichtung 10 dienen, ist jedoch nicht darauf beschränkt. Bei manchen Ausführungsbeispielen können mehrere Parameter mit verschiedenen Parameterwerten p beispielsweise in Form einer Look-up Tabelle in dem ersten Speicher 12 und dem zweiten Speicher 13 hinterlegt sein, wobei beispielsweise möglichen Eingangswerten s1 mittels der Look-up Tabelle entsprechende Ausgangssignale s2 zugeordnet werden. Auch andere Verwendungen von Parametern, beispielsweise multiplikative Parameter oder Parameter, welche in anderer Weise für eine Berechnung in der Verarbeitungseinrichtung 10 verwendet werden, können auf diese Weise gespeichert werden.
-
Bei manchen Ausführungsbeispielen kann der Parameterteilwert p1 einem Durchschnittswert, einem Basiswert und/oder einem idealen Wert des Parameters entsprechen, und der zweite Parameterteilwert p2 kann eine Abweichung von diesem Durchschnittswert, Basiswert und/oder idealen Wert angeben. Beispielsweise kann in einem derartigen Fall der erste Parameterteilwert p1 ein Wert sein, welcher allgemein für eine bestimmte Bauart oder einen bestimmten Typ von Verarbeitungseinrichtung 10 ermittelt wurde. Der zweite Parameterteilwert p2 kann dann ein Korrekturwert für die jeweils individuelle Verarbeitungseinrichtung 10 sein.
-
Bei einem derartigen Ausführungsbeispiel kann beispielsweise, wenn der Inhalt des zweiten Speichers 13 und somit der zweite Parameterteilwert p2 durch ein Ereignis korrumpiert wird, beispielsweise durch ein α-Teilchen, die Verarbeitungseinrichtung auf Basis des ersten Parameterteilwerts p1 weiter arbeiten. Hierdurch können Ausgaben der Verarbeitungseinrichtung 10 (beispielsweise das Signal s2) bei manchen Implementierungen zwar ungenauer werden, sie können jedoch dennoch soweit brauchbar sein, dass beispielsweise eine Abschaltung oder Neukalibrierung zunächst vermieden werden kann. Bei manchen Ausführungsbeispielen sind die in dem zweiten Speicher 13 abgelegten Korrekturen, beispielsweise der zweite Parameterteilwert p2, relativ klein verglichen mit dem ersten Parameterteilwert p1, sodass durch eine Veränderung des zweiten Parameterteilwerts p2 nur eine vergleichsweise geringe Verfälschung des Parameterwerts p erfolgen kann.
-
Dies wird weiter unten anhand eines Beispiels noch näher erläutert.
-
Zu bemerken ist, dass bei anderen Ausführungsbeispielen der Parameterwert p auch in mehr als zwei Parameterteilwerten aufgeteilt werden kann und entsprechend in mehr als zwei getrennten Speichern gespeichert werden kann.
-
In 2 ist ein erstes Anwendungsbeispiel für eine Vorrichtung wie die in 1 gezeigte Vorrichtung dargestellt. 2 zeigt einen A/D-Wandleranordnung mit einem A/D-Wandler 20 und einer Codekorrekturschaltung 21. Der A/D-Wandler 20 empfängt ein Analogsignal sa und gibt ein erstes Digitalsignal sd1 aus. Der A/D-Wandler 20 kann eine beliebige Art von A/D-Wandler sein, beispielsweise ein SAR-Wandler (Success Approximation Register) oder ein Wandler mit einer Pipeline-Struktur. Die Codekorrekturschaltung 21 korrigiert mit Hilfe ein oder mehrerer gespeicherter Parameter das erste Digitalsignal sd1 zu einem zweiten Digitalsignal sd2. Die für die Codekorrekturschaltung verwendeten ein oder mehreren Parameter können, wie unter 1 diskutiert gespeichert sein, d.h., die Parameterwerte der ein oder mehreren Parameter können in erste Parameterteilwerte und zweite Parameterteilwerte aufgeteilt in einem ersten Speicher und in einem zweiten Speicher gespeichert werden. Erläuterungen und Varianten dieser Speicherung, welche unter Bezugnahme auf 1 erläutert werden, können auch bei dem Anwendungsbeispiel der 2 Anwendung finden.
-
Im Folgenden wird ein konkretes Beispiel für die Benutzung eines ersten Speichers und eines zweiten Speichers zum Speichern von Parameterteilwerten für das Anwendungsbeispiel der 2 erläutert. Dies dient jedoch nur zur Veranschaulichung, und insbesondere ist zu bemerken, dass Zahlenwerte, welche angegeben werden, lediglich als Beispiel dienen und je nach Implementierung auch anders sein können.
-
Als Beispiel wird angenommen, dass der A/D-Wandler 20 ein 8-bit SAR-Wandler ist. Bei einem idealen 8-bit SAR-Wandler weist das höchstwertigste Bit (MSB) einer Angabe des Wandlers einen Wert (Bitgewicht) von 1000 0000 auf, das nächste Bit weist einen Wert von 0100 0000 auf, gefolgt von 0010 0000 bis zu 0000 0001 für das niedrigstwertigste Bit (LSB). Ein Ausgangscode (entsprechend dem Signal sd1 in 2), wird durch Addieren aller Bitgewichte der Bits, welche durch einen Suchalgorithmus mit sukzessiver Approximation bestimmt werden, bestimmt. Die Addition der Bitgewichte ist in diesem Fall einfach, da z.B. ein Addieren aller Bitgewichte entsprechend einem SAR-Code von beispielsweise 0110 1100 zu einem Ausgangscode 0110 1100 führt, d.h., genau dem gleichen Code.
-
Bei einem nichtidealen 8-bit SAR-Wandler könnte beispielsweise das MSB einem Wert von 1000 0010 (2 LSBs größer als im idealen Fall), entsprechen, das nächste Bit könnten einem Wert von 0011 1111 (1 LSB kleiner als ideal) entsprechen etc. Auch in diesem Fall kann der korrekte Ausgangscode durch Addieren dieser Werte (Bitgewichte) gefunden werden. Das bedeutet, dass in diesem Fall ein SAR-Code von 1100 0000 von der Code-Korrekturschaltung 21 in 1000 0010 + 0011 1111 = 1100 0001 als Ausgangssignal sd2 korrigiert oder übersetzt werden würde.
-
Die Werte für die einzelnen Bits des SAR-Codes stellen dann Parameter dar, d.h. in dem obigen Beispiel 1000 0010 für das MSB und 0011 1111 für das nächste Bit und so weiter. Zur Ausgabe wird dann jedem Bit des Signals sd1 der 2 mittels dieser gespeicherten Parameter ein entsprechendes Bitgewicht zugeordnet, und diese Bitgewichte werden addiert, um das Signal sd2 zu erhalten.
-
Bei Ausführungsbeispielen der Erfindung werden Parameterwerte wie unter Bezugnahme auf 1 erläutert als mehrere, beispielsweise zwei, Parameterteilwerte in mehreren, beispielsweise zwei, verschiedenen Speichern abgelegt.
-
In dem obigen Beispiel können die Bitgewichte dann als ein erster Parameterteilwert, welcher beispielsweise einem idealen Wert entspricht, und einem zweiten Parameterteilwert, welcher einem Korrekturwert entspricht, gespeichert werden. Für die obigen Zahlenbeispiele kann dann bei einem Ausführungsbeispiel die Aufteilung in einen ersten Parameterteilwert und einen zweiten Parameterteilwert so aussehen:
- Für das MSB: erster Parameterteilwert 1000 0000; zweiter Parameterteilwert 0000 0010, was dem idealen Wert zuzüglich eines Korrekturwerts von +2 entspricht,
nächstes Wert Bit (MSB-1): erster Parameterteilwert 0100 0000; zweiter Parameterteilwert 1111 1111, was dem idealen Wert zuzüglich eines Korrekturwertes von -1 in Zweierkomplementdarstellung entspricht.
-
Für die anderen Bits kann entsprechend verfahren werden. Statt der Zweierkomplementdarstellung kann auch eine andere Darstellung, beispielsweise mit Vorzeichenbit, verwendet werden.
-
Bei dem obigen Beispiel wird sowohl der ideale Wert, als auch der Korrekturwert als 8-bit-Wert gespeichert. Bei vielen Anwendungen können die Korrekturwerte jedoch klein sein, wie in dem obigen Beispiel (Korrekturwerte von +2 bzw. -1). In diesem Fall kann der Korrekturwert auch mit weniger Bits, beispielsweise 3 Bits, gespeichert werden. Der Korrekturwert für das MSB würde dann bei dem obigen Beispiel z.B. als 010 und der Korrekturwert für das nächsthöchstwertige Bit z.B. in Zweierkomplementdarstellung als 111 gespeichert werden. Bei einem derartigen Ausführungsbeispiel kann beispielsweise der zweite Speicher 13 der 1 eine niedrigere Bitbreite aufweisen als der erste Speicher 12 der 1.
-
Wenn bei einem derartigen Ausführungsbeispiel, bei welchem Korrekturwerte als zweite Parameterteilwerte mit einer geringeren Anzahl von Bits gespeichert werden, die Korrekturwerte in dem zweiten Speicher durch ein Ereignis wie kosmische Strahlung oder dergleichen korrumpiert werden, kann der Fehler, der in dem Parameter entsteht, nicht größer als der maximale Korrekturwert werden (in dem Beispiel eines 3-bit Korrekturwerts, bei welchem negative Werte in Zweierkomplementdarstellung gespeichert werden, also beispielsweise in einem Bereich von -4 bis +3 LSB). Somit könnte eine entsprechende Vorrichtung wie die A/D-Wandlervorrichtung der 2 zumindest mit reduzierter Genauigkeit weiter arbeiten, wobei der maximale Fehler begrenzt wäre.
-
Die Bitbreite von 3 Bit für den Korrekturwert ist dabei nur als Beispiel zu verstehen, und bei anderen Ausführungsbeispielen können andere Bitbreiten verwendet werden. Bei manchen Ausführungsbeispielen kann eine Korrumpierung der Korrekturwerte auch detektiert werden und im Falle eines detektierten Fehlers nur die idealen Werte, welche in dem ersten Speicher 12 beispielsweise abgelegt sind, verwendet werden.
-
Die Anwendung der Parameterspeicherung mit mehreren Parameterteilwerten ist nicht auf Analog-Digital-Wandlervorrichtungen, wie in 2 dargestellt, begrenzt. Ein weiteres Anwendungsbeispiel in Form einer Digital-Analog-Wandlervorrichtung ist ein 3 dargestellt. Die Digital-Analog-Wandlervorrichtung der 3 weist einen Digital-Analog-Wandler (D/A-Wandler) 31 auf, welcher ein Digitalsignal sd2 in ein Analogsignal sa wandelt. Dabei kann der D/A-Wandler 31 ein nichtideales Verhalten aufweisen. Ein nichtideales Verhalten kann beispielsweise dazuführen, dass das Ausgangssignal sa für einen Wert sd2 von 1000 0000 nicht genau den doppelten Wert aufweist wie für ein Eingangssignal sd2 von 0100 0000. Um dies auszugleichen, wird bei dem Ausführungsbeispiel der 3 eine Vorverzerrungsschaltung 30 eingesetzt. Der Vorverzerrungsschaltung 30 wird ein zu wandelnder Digitalwert sd1 zugeführt. Ähnlich der Codekorrekturschaltung 21 der 2 übersetzt die Vorverzerrungsschaltung 30 mittels gespeicherter Parameter den Wert sd1 in einen Wert sd2. Hierdurch werden Ungenauigkeiten des D/A-Wandlers 31 zumindest teilweise ausgeglichen, sodass bei einer idealen Vorverzerrung das analoge Ausgangssignal sa möglichst genau einer analogen Version des digitalen Signals sd1 entspricht. Die Parameter für die Vorverzerrungsschaltung 30 können dabei, wie für die Codekorrekturschaltung 21 diskutiert, in Form einer Look-up Tabelle abgelegt sein, wobei beispielsweise für jeden Parameter ein erster Parameterteilwert in einem ersten Speicher und ein zweiter Parameterteilwert in einem zweiten Speicher wie unter Bezugnahme auf 1 erläutert, abgespeichert werden kann. Der erste Parameterteilwert kann dabei beispielsweise einen Wert für einen D/A-Wandler 31 eines bestimmten Typs umfassen, und der zweite Parameterteilwert kann einen individuellen Korrekturwert für den jeweils verwendeten D/A-Wandler umfassen, beispielsweise eine durch Kalibrierung für jedes Bauelement individuell erhaltene Korrektur. Auch andere Aufteilungen sind möglich. Variationen und Abwandlungen, welche unter Bezugnahme auf die 1 und 2 diskutiert wurden, sind auch auf das Beispiel der 3 anwendbar.
-
Ein weiteres Anwendungsbeispiel ist in 4 dargestellt. 4 zeigt eine Oszillatorvorrichtung mit einem digital gesteuerten Oszillator (DCO) 41. Der digital gesteuerte Oszillator 41 empfängt ein digitales Steuersignal ctrl2 und gibt ein oder mehrere Oszillatorsignale osc aus. Die ein oder mehreren Oszillatorsignale osc weisen dabei eine Frequenz auf, welche von dem Steuersignal ctrl2 steuerbar ist.
-
Je nach Implementierung des digital gesteuerten Oszillators 41 kann dabei ein Verhalten der Frequenz in Abhängigkeit von dem Steuersignal ctrl2 beispielsweise nichtlinear sein, während ein lineares Verhalten gewünscht wird. Beispielsweise kann gewünscht sein, dass sich bei einer Erhöhung des Steuersignals um ein LSB eine Frequenz des mindestens einen Oszillatorsignals osc immer um den gleichen Betrag erhöht.
-
Um ein derartiges lineares Verhalten zu erzeugen, wird bei dem Anwendungsbeispiel der 4 eine Vorverzerrungsschaltung 40 eingesetzt, welche ein Steuersignal ctrl1 in das Steuersignal ctrl2 derart übersetzt, dass beispielsweise eine Abhängigkeit einer Frequenz des mindestens einen Ausgangssignals osc von dem Steuersignal ctrl1 linear ist. Hierbei können Techniken wie bereits oben diskutiert zum Einsatz kommen. Insbesondere kann die Vorverzerrungsschaltung 40 ein Look-up Tabelle mit gespeicherten Parameterwerten umfassen, wobei die Parameterwerte aufgespaltet als erster Parameterteilwert in einem ersten Speicher wie dem ersten Speicher 12 der 1 und einem zweiten Parameterteilwert, welcher in einem zweiten Speicher wie dem zweiten Speicher 13 der 1 gespeichert ist, aufgeteilt werden. Der erste Parameterteilwert kann dabei wiederum einen allgemeinen für einen bestimmten Typ von digital gesteuerten Oszillator (DCO) verwendeten Wert entsprechen, und die zweiten Parameterteilwerte können Korrekturwerte für individuelle Bauelemente sein. Auch andere Aufteilungen sind möglich. Auch hier kann ein Betrieb mit einer gewissen Genauigkeit aufrechterhalten werden, wenn beispielsweise die zweiten Parameterteilwerte korrumpiert werden.
-
Die 2 und 4 dienen lediglich der Veranschaulichung der Tatsache, dass die unter Bezugnahme auf 1 diskutierten Techniken in vielen verschiedenen Anwendungsumgebungen eingesetzt werden können. Der Einsatz der unter Bezugnahme auf 1 diskutierten Techniken ist jedoch nicht auf die Anwendungsbeispiele der 2 bis 4 beschränkt, sondern können allgemein zum Einsatz kommen, wenn Parameter zum Betrieb einer Vorrichtung benötigt werden, z.B. auch in Sensorschaltungen.
-
In 5 ist ein Flussdiagramm zur Veranschaulichung eines Verfahrens gemäß einem Ausführungsbeispiel dargestellt. Das Verfahren der 5 kann beispielsweise mittels der unter Bezugnahme auf die 1 bis 4 diskutierten Vorrichtungen implementiert werden, ist jedoch nicht hierauf beschränkt. Während das Verfahren als Abfolge von Vorgängen oder Ereignissen beschrieben wird, ist die dargestellte Reihenfolge nicht als einschränkend auszulegen, da Vorgänge oder Ereignisse auch in anderer Reihenfolge als dargestellt und/oder parallel zueinander ausgeführt werden können.
-
Bei 50 in 5 wird ein erster Parameterteilwert aus einem ersten Speicher ausgelesen. Bei 51 wird ein zweiter Parameterteilwert aus einem zweiten Speicher ausgelesen. Der erste Parameterteilwert kann beispielsweise ein idealer Parameterwert eines Parameters sein, und der zweite Parameterteilwert kann ein Korrekturwert sein.
-
Der erste Speicher kann dabei getrennt von dem zweiten Speicher sein. Der erste Speicher kann eine größere Sicherheit gegenüber korrumpierenden Ereignissen wie kosmischer Strahlung aufweisen als der zweite Speicher. Beispielsweise kann der erste Speicher mittels einer fest verdrahteten Logik implementiert sein. Der zweite Speicher kann beispielsweise als EPROM, Flash-Speicher, RAM und/oder Register implementiert sein.
-
Bei 52 wird dann ein Parameterwert eines Parameters aus dem ersten Parameterteilwert und dem zweiten Parameterteilwert gebildet. Beispielsweise können der erste Parameterteilwert und der zweite Parameterteilwert addiert werden, oder der zweite Parameterteilwert kann von dem ersten Parameterteilwert subtrahiert werden. Bei wieder anderen Beispielen kann der zweite Parameterteilwert auch ein multiplikativer Korrekturfaktor für den ersten Parameterteilwert sein, sodass bei einem derartigen Ausführungsbeispiel das Bilden des Parameterwerts durch Multiplikation erfolgt.
-
Bei manchen Ausführungsbeispielen weist der zweite Parameterteilwert eine geringere Bitbreite auf als der erste Parameterteilwert. Bei Korrumpieren des zweiten Parameterteilwerts kann bei manchen Ausführungsbeispielen ein Einfluss auf den bei 52 gebildeten Parameterwert beschränkt werden.
-
Bei 53 wird dann eine Vorrichtung mit dem Parameterwert betrieben. Beispielsweise kann der Parameterwert zur Codekorrektur wie in dem Beispiel der 2 oder zur Vorverzerrung wie in den Beispielen der 3 und 4 dienen, ist jedoch nicht hierauf beschränkt.
-
Ein weiteres Ausführungsbeispiel ist in 6 dargestellt. 6 zeigt dabei ein Blockdiagramm einer Wandlervorrichtung 60, welche als Analog-Digital-Wandlervorrichtung oder als Digital-Analog-Wandlervorrichtung eingerichtet sein kann. Im Falle einer Analog-Digital-Wandlervorrichtung wandelt die Wandlervorrichtung 60 ein Analogsignal s1 in ein Digitalsignal s2. Im Falle einer Digital-Analog-Wandlervorrichtung wandelt die Wandlervorrichtung 60 ein Digitalsignal s1 in ein Analogsignal s2.
-
Die Wandlervorrichtung 60 umfasst ein Hauptnetzwerk 61 zur Implementierung des Wandlers (Analog-Digital-Wandler oder Digital-Analog-Wandler). In einem ersten Speicher 63 sind ein oder mehrere erste Parameterwerte ph zur Einstellung oder Kalibrierung des Hauptnetzwerks 61 gespeichert.
-
Zudem umfasst die Wandlervorrichtung 60 ein Korrekturnetzwerk 62, welches beispielsweise weitere analoge Elemente zur Erhöhung einer Genauigkeit oder Linearität des Hauptnetzwerks 61 umfasst und welches einen weiteren Wandler implementieren kann. Das Korrekturnetzwerk 62 kann durch einen oder mehrere zweite Parameterwerte pk, welche in einem zweiten Speicher 64 gespeichert sind, eingestellt werden.
-
Der erste Speicher 63 und der zweite Speicher 64 können dabei wie der erste Speicher 12 und der zweite Speiche 13 der 1 ausgestaltet sein, und Variationen und Abwandlungen, welche bezüglich des ersten Speichers 12 und des zweiten Speichers 13 erläutert wurden, sind in entsprechender Weise auch auf den ersten Speicher 63 und den zweiten Speicher 64 anwendbar.
-
Das Hauptnetzwerk 61 und das Korrekturnetzwerk 62 können, wie bereits erwähnt, dabei jeweils eine Wandlerschaltung (Analog-Digital-Wandlerschaltung oder Digital-Analog-Wandlerschaltung) umfassen, wobei dann ein Ergebnis einer Wandlung des Hauptnetzwerks durch ein Ergebnis einer Wandlung des Korrekturnetzwerks korrigiert wird. Das Einstellen basierend auf ein oder mehreren Parametern ph bzw. basierend auf den ein oder mehreren zweiten Parametern pk kann dann beispielsweise wie unter Bezugnahme auf die 2 und 3 erläutert, erfolgen. In anderen Worten können das Hauptnetzwerk 61 und das Korrekturnetzwerk 62 jeweils Codekorrekturschaltungen oder Vorverzerrungsschaltungen umfassen.
-
Ähnliche Konzepte können auch für eine Offset- oder Gainkorrektur verwendet werden.
-
In 7 ist ein Flussdiagramm eines Verfahrens gemäß einem weiteren Ausführungsbeispiel dargestellt. Das Verfahren der 7 kann beispielsweise mittels der Vorrichtung der 6 implementiert werden, ist jedoch nicht hierauf beschränkt. Variationen und Abwandlungen, welche für die Vorrichtung der 6 oben stehen erläutert wurden, sind auch auf das Verfahren der 7 anwendbar.
-
Das Verfahren der 7 umfasst bei 70 ein Auslesen eines ersten Parameterwerts aus einem ersten Speicher. Bei 71 umfasst das Verfahren ein Einstellen eines Hauptnetzwerks einer Wandlervorrichtung wie einer Digital-Analog-Wandlervorrichtung oder einer Analog-Digital-Wandlervorrichtung basierend auf dem ersten Parameterwert. Bei 72 umfasst das Verfahren ein Auslesen eines zweiten Parameterwerts aus einem zweiten Speicher. Der erste Speicher und der zweite Speicher können wie bereits unter Bezugnahme auf 1 erläutert, ausgestaltet sein. Bei 73 wird dann ein Korrekturnetzwerk einer Wandlervorrichtung basierend auf dem zweiten Parameterwert eingestellt.
-
Die verschiedenen Vorgänge, welche unter Bezugnahme auf 7 erläutert wurden, müssen dabei nicht notwendigerweise in der dargestellten Reihenfolge aufgeführt werden. Das Hauptnetzwerk und das Korrekturnetzwerk können wie unter Bezugnahme auf 6 erläutert, Analog-Digital-Wandlerschaltungen und/oder Digital-Analog-Wandlerschaltungen umfassen.
-
Die oben dargestellten Ausführungsbeispiele dienen lediglich der Veranschaulichung und sind nicht als einschränkend auszulegen.