DE102007024410B4 - Method for operating a counter and counter circuitry - Google Patents
Method for operating a counter and counter circuitry Download PDFInfo
- Publication number
- DE102007024410B4 DE102007024410B4 DE200710024410 DE102007024410A DE102007024410B4 DE 102007024410 B4 DE102007024410 B4 DE 102007024410B4 DE 200710024410 DE200710024410 DE 200710024410 DE 102007024410 A DE102007024410 A DE 102007024410A DE 102007024410 B4 DE102007024410 B4 DE 102007024410B4
- Authority
- DE
- Germany
- Prior art keywords
- memory
- data words
- words
- counter
- gray code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000015654 memory Effects 0.000 claims abstract description 150
- 238000006243 chemical reaction Methods 0.000 claims description 43
- 125000004122 cyclic group Chemical group 0.000 claims description 10
- 230000003936 working memory Effects 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 230000008707 rearrangement Effects 0.000 claims description 2
- 230000008859 change Effects 0.000 description 10
- 238000013461 design Methods 0.000 description 8
- 238000009826 distribution Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K21/00—Details of pulse counters or frequency dividers
- H03K21/40—Monitoring; Error detection; Preventing or correcting improper counter operation
- H03K21/403—Arrangements for storing the counting state in case of power supply interruption
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K23/00—Pulse counters comprising counting chains; Frequency dividers comprising counting chains
- H03K23/004—Counters counting in a non-natural counting order, e.g. random counters
- H03K23/005—Counters counting in a non-natural counting order, e.g. random counters using minimum change code, e.g. Gray Code
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Verfahren
zum Betreiben eines Zählers,
bei dem ein aktueller Zählerstand
jeweils in Form einer Gruppe von binären Speicherworten in einem
Speicher hinterlegt wird, wobei zur Inkrementierung oder Dekrementierung
des Zählerstands
jeweils folgende Verfahrensschritte durchgeführt werden:
a) Auslesen
der Speicherworte (SW) des Zählerstands
aus dem Speicher (2),
b) Umordnung von Bits der Speicherworte
(SW) unter Verwendung einer inversen Permutationsregel zur Erzeugung einer
Gruppe von dritten Datenworten (DW3), welche
jeweils in einem erweiterten Gray-Code codierte Ziffern eines in
einem Gray-Code codierten Zählerstand
repräsentieren,
c)
Konvertieren der einzelnen dritten Datenworte (DW3)
unter Verwendung einer inversen Ziffern-Kodierungsregel jeweils
in zweite Datenworte (DW2), welche jeweils
die Ziffern des im Gray-Code codierten Zählerstands repräsentieren,
d)
Konvertieren der Gruppe von zweiten Datenworten (DW2)
unter Verwendung einer inversen Zähler-Kodierungsregel zur Erzeugung
einer Gruppe von ersten Datenworten (DW1),
welche jeweils die Ziffern des durch eine Ordinalzahl zu einer Basis
n definierten Zählerstands
(ZS) repräsentieren,...Method for operating a counter, in which a current counter reading is stored in the form of a group of binary memory words in a memory, wherein the following method steps are carried out for incrementing or decrementing the counter reading:
a) reading the memory words (SW) of the counter reading from the memory (2),
b) rearranging bits of the memory words (SW) using an inverse permutation rule to generate a group of third data words (DW 3 ), each representing in an extended Gray code coded digits of a count coded in a Gray code,
c) converting the individual third data words (DW 3 ) using an inverse numerical coding rule into second data words (DW 2 ), which respectively represent the digits of the count coded in the Gray code,
d) converting the group of second data words (DW 2 ) using an inverse counter encoding rule to generate a group of first data words (DW 1 ) each representing the digits of the count (ZS) defined by an ordinal number to a base n, ...
Description
Die Erfindung betrifft ein Verfahren zum Betreiben eines Zählers, bei dem ein aktueller Zählerstand jeweils in Form einer Gruppe von binären Speicherworten in einem nichtflüchtigen Speicher hinterlegt wird. Darüber hinaus betrifft die Erfindung eine Zähler-Schaltungsanordnung, auch kurz „Zähler" genannt, mit einem nichtflüchtigen Speicher, um einen aktuellen Zählerstand jeweils in Form einer Gruppe von binären Speicherworten zu hinterlegen, und einer Recheneinheit mit einem Arbeitsspeicher, beispielsweise einem programmierbaren Logikbaustein oder einem programmierbaren Prozessor.The The invention relates to a method for operating a counter, in a current meter reading each in the form of a group of binary memory words in one nonvolatile Memory is deposited. About that In addition, the invention relates to a counter circuit arrangement, too short called "counter", with a nonvolatile Memory to a current count each to be deposited in the form of a group of binary memory words, and a computing unit with a working memory, for example a programmable logic device or a programmable one Processor.
Zähler der genannten Art werden vielfach in modernen Steuerungen und Regelungen verwendet. Um die Zählerstände persistent und unabhängig von der Stromversorgung zu speichern, werden diese vielfach in wiederbeschreibbaren Festwertspeichern wie z. B. EEPROMs abgelegt, deren Speicherzellen eine von der Anzahl der Schreibvorgänge abhängige begrenzte Lebensdauer haben. Die Zähler werden dabei in vielen Fällen mit einem Inkrement oder Dekrement von „1" verwendet. Bei einem herkömmlichen Binärzähler wird also fortgesetzt der Wert „1" zum Zählerstand addiert oder subtrahiert und dieser neue Zählerstand persistent gespeichert. Dabei ändert sich die niederwertigste Ziffer des Zählers am häufigsten, die Änderungen an den übrigen Ziffern nehmen logarithmisch zur gewählten Basis und mit der Anzahl der Stellen des Zählers ab. Werden nach einem Zählvorgang lediglich diejenigen Datenworte des Zählerstandes gespeichert, die geänderte Ziffern des Zählers enthalten, so wird die Lebensdauer des Zählers durch die Lebensdauer derjenigen Speicherzelle bestimmt, welche die niederwertigste Ziffer enthält.Counter of mentioned type are widely used in modern controls and regulations used. To keep the meter readings persistent and independent From the power supply, these are often in rewritable Read-only memory such. B. stored EEPROMs whose memory cells a by the number of writes dependent limited Have lifespan. The counters be in many cases used with an increment or decrement of "1." In a conventional one Binary counter is So the value "1" continues to count added or subtracted and this new meter reading persistently stored. It changes the least significant digit of the counter most often, the changes at the rest Numbers take logarithmically to the selected base and number the digits of the counter from. Become after a count only those data words of the count are stored, the modified Numerals of the counter included, so the life of the meter through the life that memory cell determines which is the least significant digit contains.
In
der
Die
Die
Die
Die
Es ist eine Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren zum Betreiben eines Zählers sowie einen entsprechenden Zähler anzugeben.It An object of the present invention is an improved method to operate a meter as well as a corresponding counter specify.
Diese Aufgabe wird durch ein Verfahren gemäß Patentanspruch 1 und eine Zähler-Schaltungsanordnung gemäß Patentanspruch 9 gelöst.These The object is achieved by a method according to claim 1 and a Counter circuitry according to claim 9 solved.
Das der Erfindung zugrunde liegende Prinzip beruht dabei darauf, dass der Zählerstand zunächst in drei nachfolgend erläuterten Stufen binär kodiert und in dieser konvertierten binären Form in dem nicht flüchtigen Speicher hinterlegt wird. Ausgegangen wird dabei zunächst von einem Zählerstand, der durch eine Ordinalzahl zu einer beliebigen Basis n definiert ist. Beispielsweise kann es sich um die Basis 10 handeln, dann ist der Zählerstand als Dezimalzahl definiert. Es kann sich aber auch um die Basis 16 handeln, so dass der Zählerstand in einer Hexadezimalform definiert ist. Da jegliche Rechnereinheiten wie Prozessoren, Logikbausteine etc. und auch Arbeitsspeicher nur binär arbeiten, sind dabei die einzelnen Ziffern der Ordinalzahl jeweils binär in Form von ersten Datenworten, beispielsweise mit einer Länge von 4 Bit, im Arbeitsspeicher hinterlegt und werden auch in dieser Form maschinell von einer Rechnereinheit, beispielsweise einem Logikbaustein oder einem programmierbaren Prozessor verarbeitet.The underlying principle of the invention is based on the fact that the count is first binary coded in three steps explained below and stored in this converted binary form in the non-volatile memory. The starting point is initially a count that is defined by an ordinal number to an arbitrary base n. For example, it may be the base 10, then the count is defined as a decimal number. However, it may also be the base 16, so that the count is defined in a hexadecimal form. Since all computer units such as processors, logic modules, etc. and also working memory only binary, while the individual digits of the ordinal are each binary in the form of first data words, for example, with a length of 4 bits, stored in memory and are also in this form of machine a computer unit, for example a logic module or a programmable processor verarbei tet.
Dieser zunächst durch die Ordinalzahl zur Basis n definierte Zählerstand wird dann in einer ersten Kodierungsstufe in einem Gray-Code kodiert. Dies erfolgt mit einer bestimmten Zähler-Kodierungsregel. Bei einem Gray-Code handelt es sich definitionsgemäß um einen Code, bei dem sich bei jeder Inkrementierung bzw. Dekrementierung einer Zahl um den Wert „1" jeweils nur eine der Ziffern der Zahl ändert. Aus diesem Grund wird ein Gray-Code oft auch als sog. „einschrittiger Code" bezeichnet. Bei einem Gray-Code unterscheiden sich folglich benachbarte Zahlen nur in einer einzigen Ziffer. Üblicherweise werden solche Gray-Codes als Kodierungsverfahren zur robusten Übertragung digitaler Größen über analoge Signalwege verwendet. Bei dem erfindungsgemäßen Verfahren wird dies vorteilhaft genutzt, damit sich bei einer Inkrementierung/Dekrementierung nur eine Ziffer der Ordinalzahlen zur Basis n des Codes ändert. Die einzelnen Ziffern des gray-kodierten Zählerstands werden dabei als binäre zweite Datenworte, die beispielsweise ebenfalls jeweils 4 Bit lang sind, digital innerhalb der Recheneinheit des Zählers verarbeitet und im Arbeitsspeicher hinterlegt.This first By the ordinal number to base n defined count is then in a coded first coding stage in a Gray code. this happens with a specific counter encoding rule. By definition, a Gray code is one Code where each increment or decrement occurs a number around the value "1" in each case only one the digits of the number changes. For this reason, a Gray code is often referred to as so-called "one-step Code ". In a Gray code, therefore, adjacent numbers differ only in a single digit. Usually such Gray codes as a coding method for robust transmission digital sizes over analog Signal paths used. This becomes advantageous in the method according to the invention used, so that in an increment / decrement only one Number of ordinal numbers to the base n of the code changes. The individual numbers of the gray-coded count are doing as binary second data words, which are also 4 bits long, for example, digitally processed within the arithmetic unit of the counter and in the working memory deposited.
Durch eine folgende weitere Konvertierung der einzelnen zweiten Datenworte, d. h. der einzelnen Ziffer des gray-kodierten Zählerstands, unter Verwendung einer Ziffern-Kodierungsregel werden dann die Ziffern des im Gray-Code kodierten Zähler stands in einem erweiterten Gray-Code in dritten Datenworten kodiert. Bei diesem Schritt wird dafür gesorgt, dass die einzelnen Ziffern in den dritten Datenworten so hinterlegt sind, dass sich beim Ändern einer Ziffer um den Wert „1" auch wieder nur ein Bit innerhalb des betreffenden dritten Datenworts, welches die jeweilige Ziffer darstellt, ändert. Durch diese doppelte Konvertierung, einmal des Zählerstands an sich und dann der einzelnen Ziffern, wird erreicht, dass sich in der gesamten Gruppe von dritten Datenworten, welche letztlich den Zählerstand in kodierter Form wiedergeben, bei der Inkrementierung/Dekrementierung des Zählerstands um den Wert „1" nur ein einzelnes Bit ändert. Dabei wird für die Ziffer-Kodierungsregel ein so genannter erweiterter Gray-Code genutzt, beispielsweise ein erweiterter ausgeglichener oder erweiterter reflektierter Gray-Code. Ein erweiterter Gray-Code ist hierbei so zu verstehen, dass es für verschiedene aufeinander folgende Zyklen, welche die binär kodierte Ziffer insgesamt durchlaufen kann (beispielsweise bei einer Hexadezimalziffer den Zyklus von 0 bis 15), unterschiedliche Zyklus-Kodierungsregeln bzw. Teil-Gray-Codes gibt, wobei diese Zyklus-Kodierungsregeln wiederum zyklisch bzw. reflektiert zyklisch nacheinander genutzt werden. Genaue Beispiele hierzu werden später noch erläutert. Durch den erweiterten Gray-Code kann dafür gesorgt werden, dass eine sehr günstige Verteilung der Änderungen der einzelnen Bits in den Ziffern auf die verschiedenen Bit-Stellen erfolgt.By a following further conversion of the individual second data words, d. H. the single digit of the gray-coded meter reading, using a digit encoding rule then becomes the digits of the gray code coded counter states coded in an extended Gray code in third data words. at this step will be for that made sure that the individual digits in the third data words do so are deposited that when changing a digit around the value "1" again only one bit within the third data word concerned, which is the represents each digit changes. Through this double conversion, once the meter reading itself and then The individual digits, that is achieved in the whole Group of third data words, which ultimately the meter reading in coded form, in the increment / decrement the meter reading around the value "1" only a single one Bit changes. It is for the digit encoding rule used a so-called extended Gray code, for example a extended balanced or extended reflected gray code. An extended Gray code is to be understood that it is for different consecutive cycles representing the binary coded digit in total can go through (for example, at a hexadecimal digit the Cycle from 0 to 15), different cycle coding rules or partial Gray codes in turn, these cycle coding rules in turn cyclically reflect be used cyclically one after the other. Exact examples of this will be later still explained. By The extended Gray code can be used to ensure that a very cheap Distribution of changes the individual bits in the digits to the different bit locations he follows.
Anschließend erfolgt in einem dritten Schritt unter Verwendung einer bestimmten Permutationsregel eine möglichst gleichmäßige Verteilung aller Bits dieser dritten Datenworte, welche die erweitert gray-kodierten Ziffern des gray-kodierten Zählerstands angeben, auf die Speicherworte. Dadurch wird dafür gesorgt, dass bei jeder Inkrementierung/Dekrementierung sich möglichst nur genau ein Speicherwort des Zählers ändert, und zwar weitgehend gleich verteilt über alle Speicherworte.Then done in a third step using a certain permutation rule one possible even distribution all bits of these third data words, which are the extended gray-coded ones Digits of the gray-coded count specify on the memory words. This ensures that every increment / decrement as possible only exactly one memory word of the counter changes, and Although largely equally distributed over all memory words.
Eine komplette Inkrementierung bzw. Dekrementierung des Zählerstands erfolgt dann erfindungsgemäß so, dass zunächst die Speicherworte des Zählerstands aus dem Speicher ausgelesen werden und dann gemäß der invertierten Permutationsregel die Bits der Speicherworte auf die dritten Datenworte verteilt werden. Diese dritten Datenworte werden dann unter Verwendung der inversen Ziffern-Kodierungsregel in die zweiten Datenworte konvertiert, welche die Ziffern (zur Basis n) des im Gray-Code kodierten Zählerstands in binärer Form repräsentieren. Schließlich erfolgt eine komplette Konvertierung der Gruppe von zweiten Datenworten, d. h. des gesamten Zählerstands an sich, unter Verwendung der inversen Zähler-Kodierungsregel, um die Gruppe von ersten binären Datenworten zu erzeugen, welche die Ziffern der Ordinalzahlen zur Basis n des Zählerstands repräsentieren. Dieser Zählerstand wird dann inkrementiert bzw. dekrementiert. Anschließend erfolgt wiederum eine Konvertierung der gesamten Gruppe von ersten Datenworten in die Gruppe von zweiten Datenworten unter Verwendung der Zähler-Kodierungsregel, dann die Konvertierung der einzelnen zweiten Datenworte jeweils in die dritten Datenworte unter Verwendung der genannten Ziffern-Kodierungsregel und schließlich wieder eine Umordnung der Bits der dritten Datenworte unter Verwendung der Permutationsregel zur Erzeugung der neuen Speicherworte des inkrementierten bzw. dekrementierten Zählerstands. Wie oben erläutert, hat sich bei einem solchen Vorgang vorzugsweise nur eines der Speicherworte geändert. Es werden dann die so erzeugten Speicherworte mit den im Speicher hinterlegten Speicherworten verglichen und es werden dann nur diejenigen Speicherworte bzw. nur dasjenige Speicherwort neu gespeichert bzw. überschrieben, welche(s) durch die Inkrementierung oder Dekrementierung geändert wurde(n).A complete incrementation or decrementation of the meter reading takes place according to the invention so that first the memory words of the meter reading are read from memory and then according to the inverted permutation rule the bits of the memory words are distributed to the third data words. These third data words are then using the inverse Digit encoding rule converted to the second data words, which the digits (base n) of the meter reading coded in Gray code in binary form represent. Finally done a complete conversion of the group of second data words, d. H. of the total meter reading in turn, using the inverse counter encoding rule to Group of first binary To generate data words that contain the numbers of the ordinal numbers Base n of the meter reading represent. This count is then incremented or decremented. Then done again a conversion of the entire group of first data words into the group of second data words using the counter encoding rule, then the conversion of the individual second data words respectively into the third data words using the mentioned digit encoding rule and finally again a rearrangement of the bits of the third data words using the permutation rule for generating the new memory words of incremented or decremented meter reading. As explained above, has become in such a process preferably only one of the memory words changed. It will then be the memory words generated with the memory deposited memory words compared and then only those Memory words or only that memory word newly stored or overwritten, which has been changed by incrementing or decrementing.
Das angegebene Verfahren ermöglicht es, Binärzähler in technischen Systemen derart zu implementieren, dass bei fortgesetztem Inkrementieren oder Dekrementieren die Anzahl der nötigen Schreibvorgänge auf die einzelnen Speicherworte des Zählers möglichst gleich verteilt ist. Damit wird bei Spei chermedien, deren Lebensdauer von der Anzahl der Schreibzugriffe auf einzelne Speicherworte begrenzt wird, die Anzahl möglicher Zählvorgänge und so die Lebensdauer des Speichermediums maximiert.The specified method makes it possible to implement binary counters in technical systems in such a way that, with continued incrementing or decrementing, the number of necessary write operations to the individual memory words of the counter is distributed as equally as possible. This is limited in memory media whose life is limited by the number of write accesses to individual memory words It maximizes the number of possible counts and thus the life of the storage medium.
Eine erfindungsgemäße Zähler-Schaltungsanordnung weist wie die bisherigen Zähler-Schaltungsanordnungen neben einem nicht flüchtigen Speicher, beispielsweise einem EEPROM oder ähnlichem Speicherbaustein, der dazu dient, den aktuellen Zählerstand jeweils in Form einer Gruppe von binären Speicherworten zu speichern, eine Recheneinheit mit einem Arbeitsspeicher auf. Bei der Recheneinheit kann es sich um ein oder mehrere Logikbausteine, beispielsweise um ein oder mehrere FPGAs oder ASICs, handeln, welche entsprechend programmiert sind. Alternativ kann es sich auch um einen oder mehrere mit einem entsprechenden Programm versehene Prozessoren handeln. Der Arbeitsspeicher ist dabei meist in dem Logikbaustein oder der Recheneinheit integriert. Dies ist aber nicht zwingend notwendig. Der Arbeitsspeicher kann auch auf andere Weise ausgebildet und von der Recheneinheit nutzbar sein.A inventive counter circuit arrangement has the same as the previous counter circuit arrangements next to a non-volatile memory, for example, an EEPROM or similar memory device, which serves the current meter reading each store in the form of a group of binary memory words, an arithmetic unit with a working memory. At the arithmetic unit it may be one or more logic devices, for example one or more FPGAs or ASICs, which act accordingly are programmed. Alternatively, it can also be one or more act with a corresponding program provided processors. The main memory is usually in the logic block or the arithmetic unit integrated. But this is not absolutely necessary. The working memory can also be formed in other ways and used by the computing unit be.
Die Recheneinheit umfasst hierbei, beispielsweise in Form von Softwaremodulen bzw. in Form von fest in den Logikbaustein einprogrammierten Modulen, folgende Komponenten:
- a) eine Leseschnittstelle zum Auslesen der Speicherworte des Zählerstands aus dem Speicher und Ablegen in dem Arbeitsspeicher,
- b) ein erstes Permutationsmodul zur Umordnung von Bits der Speicherworte unter Verwendung einer inversen Permutationsregel zur Erzeugung einer Gruppe von dritten Datenworten, welche jeweils in einem erweiterten Gray-Code codierte Ziffern eines in einem Gray-Code codierten Zählerstand repräsentieren,
- c) ein erstes Ziffern-Konvertierungsmodul zum Konvertieren der einzelnen dritten Datenworte unter Verwendung einer inversen zweiten Kodierungsregel jeweils in zweite Da tenworte, welche jeweils die Ziffern des im Gray-Code codierten Zählerstands repräsentieren,
- d) ein erstes Zählerstand-Konvertierungsmodul zum Konvertieren der gesamten Gruppe von zweiten Datenworten unter Verwendung einer inversen ersten Kodierungsregel zur Erzeugung einer Gruppe von ersten Datenworten, welche jeweils die Ziffern des durch eine Ordinalzahl zu einer Basis n definierten Zählerstands repräsentieren,
- e) ein Inkrementierungs-/Dekrementierungsmodul zum Inkrementieren oder Dekrementieren des Zählerstands,
- f) ein zweites Zählerstand-Konvertierungsmodul zum Konvertieren der gesamten Gruppe von ersten Datenworten unter Verwendung der ersten Kodierungsregel in eine Gruppe von zweiten Datenworten, wobei der durch eine Ordinalzahl zu einer bestimmten Basis n definierte Zählerstand wieder in einem Gray-Code kodiert wird und die zweiten Datenworte jeweils die Ziffern des gray-kodierten Zählerstands repräsentieren,
- g) ein zweites Ziffern-Konvertierungsmodul zum Konvertieren der einzelnen zweiten Datenworte unter Verwendung der zweiten Kodierungsregel jeweils in dritte Datenworte, wobei jeweils die Ziffern des im Gray-Code codierten Zählerstands in einem erweiterten Gray-Code in den dritten Datenworten kodiert werden,
- h) ein zweites Permutationsmodul zur Umordnung von Bits der dritten Datenworte unter Verwendung der Permutationsregel zur Erzeugung der Speicherworte, so dass die Bits der dritten Datenworte jeweils möglichst gleichmäßig auf die Speicherworte verteilt sind,
- i) ein Vergleichermodul zum Vergleichen der so im Arbeitsspeicher erzeugten Speicherworte mit den im nichtflüchtigen Speicher hinterlegten Speicherworten und
- j) eine Speicherschnittstelle zum Speichern bzw. überschreiben vorzugsweise nur derjenigen Speicherworte im nichtflüchtigen Speicher, welche durch die Inkrementierung oder Dekrementierung geändert wurden.
- a) a read interface for reading the memory words of the counter reading from the memory and storing in the working memory,
- b) a first permutation module for reordering bits of the memory words using an inverse permutation rule to generate a group of third data words each representing digits coded in an extended Gray code of a count coded in a Gray code,
- c) a first digit conversion module for converting the individual third data words using an inverse second coding rule respectively into second data words, which respectively represent the digits of the count code encoded in the Gray code,
- d) a first counter reading conversion module for converting the entire set of second data words using an inverse first coding rule to generate a group of first data words, each representing the digits of the count defined by an ordinal number to a base n,
- e) an increment / decrement module for incrementing or decrementing the meter reading,
- f) a second meter reading conversion module for converting the entire group of first data words into a group of second data words using the first coding rule, wherein the count defined by an ordinal number at a certain base n is coded again in a Gray code and the second ones Data words in each case represent the digits of the gray-coded meter reading,
- g) a second digit conversion module for converting the individual second data words using the second coding rule into third data words in each case, wherein in each case the digits of the count coded in Gray code are encoded in an extended Gray code in the third data words,
- h) a second permutation module for rearranging bits of the third data words using the permutation rule for generating the memory words, so that the bits of the third data words are each distributed as evenly as possible to the memory words,
- i) a comparator module for comparing the memory words thus generated in the main memory with the memory words stored in the nonvolatile memory, and
- j) a memory interface for storing or overwriting preferably only those memory words in the nonvolatile memory which have been changed by the incrementing or decrementing.
Dabei können das erste und das zweite Permutationsmodul, das erste und das zweite Ziffern-Konvertierungsmodul und das erste und das zweite Zählerstand-Konvertierungsmodul auch jeweils durch ein einzelnes Permutationsmodul, ein einzelnes Ziffern-Konvertierungsmodul bzw. ein einzelnes Zählerstand-Konvertierungsmodul realisiert sein, welche jeweils in der Lage sind, die Umordnung der Bits bzw. Konvertierung der Datenworte unter Anwendung der entsprechenden Permutationsregel bzw. Kodierungsregel direkt oder in inverser Form anzuwenden.there can the first and the second permutation module, the first and the second Digit conversion module and the first and second meter reading conversion module also each by a single permutation module, a single Digit conversion module or a single counter reading conversion module be realized which are each capable of rearranging the bits or conversion the data words using the appropriate permutation rule or Apply coding rule directly or in inverse form.
Wie bereits erwähnt, wird als Recheneinheit vorzugsweise ein programmierbarer Logikbaustein oder Prozessor verwendet, so dass die einzelnen Module in Form von Softwaremodulen realisiert werden können, die dann in dem jeweiligen Baustein einprogrammiert werden. Daher umfasst die Erfindung auch ein entsprechendes Computer-Programmprodukt, welches direkt in einen Speicher einer solchen programmierbaren Recheneinheit einer Zähler-Schaltungsanordnung ladbar ist, mit Programm-Codemitteln, um alle Schritte des genannten Verfahrens auszuführen, wenn das Programm auf dieser Recheneinheit ausgeführt wird. Grundsätzlich ist es aber auch möglich, eine solche Recheneinheit hardwaremäßig, beispielsweise innerhalb eines IC oder anderen Moduls, oder durch mehrere miteinander verschaltete, zusammenwirkende ICs oder sonstige Module zu realisieren. Dies ist letztlich eine Frage der konkreten Verwendung des Zählers, d. h. der technischen Umgebung, in welcher der Zähler genutzt werden soll, sowie des Aufwands und der Kosten.As already mentioned, a programmable logic module or processor is preferably used as the arithmetic unit, so that the individual modules can be realized in the form of software modules, which are then programmed into the respective module. Therefore, the invention also includes a corresponding computer program product, which is directly loadable into a memory of such a programmable arithmetic unit of counter circuitry, with program code means for carrying out all steps of said method when the program is executed on said arithmetic unit. In principle, however, it is also possible to implement such a computing unit in terms of hardware, for example within an IC or other module, or through a plurality of interconnected, cooperating ICs or other modules. This is ultimately a question of the concrete use of the meter, ie the technical environment in which the meter is to be used, as well as the effort and the cost th.
Die abhängigen Ansprüche enthalten jeweils besonders vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung, wobei insbesondere auch die erfindungsgemäße Zähler-Schaltungsanordnung entsprechend den abhängigen Verfahrensansprüchen weitergebildet sein kann.The dependent claims each contain particularly advantageous embodiments and developments of the invention, wherein in particular also the counter circuit arrangement according to the invention the dependent method claims can be trained.
Vorzugsweise wird die Ziffern-Kodierungsregel so gewählt, dass die Ziffern des gray-kodierten Zählerstands in den drit ten Datenworten in einem erweiterten ausgeglichenen Gray-Code kodiert sind. Dadurch kann eine besonders gute Verteilung der Bit-Änderungen innerhalb der einzelnen Ziffern gewährleistet werden.Preferably the digit encoding rule is chosen so that the digits of the gray-coded meter reading in the third data words in an extended balanced Gray code are encoded. This can be a particularly good distribution of bit changes within the individual digits.
Besonders bevorzugt ist der Ordinalzahl-Zählerstand und damit auch der gray-kodierte Zählerstand jeweils durch eine Ordinalzahl-Ziffer zu einer Basis n definiert, die eine Potenz von 2 ist, d. h. die Ziffern sind jeweils zu einer Basis 2m = n definiert. Beispielsweise kann n = 16 gewählt werden, so dass die Ziffern in Form von Hexadezimalzahlen definiert sind. Wie in einem Artikel von G. Bhat und C. D. Savage „Balance Gray-Codes" in der Zeitschrift „The Electronic Journal of Combinatorics", Vol. 3, Nr. 1, 1996, beschrieben wird, ist es möglich, einen 2n-Bit-Code zu konstruieren, in dem die Anzahl der Bit-Änderungen total ausgeglichen ist. Zwar gibt es für solche total ausgeglichene Gray-Codes in der Regel keine einfachen Abbildungsvorschriften zwischen den Ordinalzahlen und dem korrespondierenden ausgeglichenen Gray-Code. Daher ist es beispielsweise auch nicht auf einfache Weise möglich, den Zählerstand direkt in einen derartigen total ausgeglichenen Gray-Code zu konvertieren, da ansonsten jede Konvertierungsrichtung mit Hilfe sehr großer Tabellen konvertiert werden muss und schon bei einem einfachen üblichen 32-Bit-Zähler diese Tabellen den Rahmen der meisten technischen Systeme sprengen würde. Da jedoch hier lediglich die einzelnen Ziffern des bereits gray-kodierten Zählerstands in dem erweiterten ausgeglichenen Gray-Code kodiert sind (und beispielsweise übliche Hexadezimalziffern in einem einfachen 4-Bit-Datenwort jeweils kodiert sein können) reicht eine sehr einfache, kleine Tabelle zur Konvertierung der Ziffern zur Basis n = 2m in einem total ausgeglichenen Gray-Code aus. Daher wird vorzugsweise die Ziffern-Kodierungsregeln und somit auch die inverse Ziffern-Kodierungsregeln in einer Tabelle, beispielsweise einer üblichen Look-Up-Table, in einem Speicher der Rechnereinrichtung bzw. einem Speicher, auf den die Rechnereinheit Zugriff hat, hinterlegt.Particularly preferably, the ordinal number counter reading and thus also the gray-coded counter reading are respectively defined by an ordinal number to a base n, which is a power of 2, ie the digits are respectively defined to a base 2 m = n. For example, n = 16 can be chosen so that the digits are defined in the form of hexadecimal numbers. As described in an article by G. Bhat and CD Savage "Balance Gray Codes" in The Electronic Journal of Combinatorics, Vol. 3, No. 1, 1996, it is possible to use a 2 n- bit Code in which the number of bit changes is totally balanced. Although there are generally no simple mapping rules between the ordinal numbers and the corresponding balanced Gray code for such totally balanced Gray codes. Therefore, for example, it is not easy to convert the count directly into such a totally balanced Gray code, since otherwise every conversion direction using very large tables must be converted and even in a simple conventional 32-bit counter these tables would go beyond the scope of most technical systems. However, since only the individual digits of the already gray-coded counter reading are coded here in the extended balanced Gray code (and, for example, customary hexadecimal digits in a simple 4-bit data word can be coded in each case), a very simple, small table is sufficient for converting the Digits to base n = 2 m in a totally balanced Gray code. Therefore, preferably the number coding rules and thus also the inverse number coding rules are stored in a table, for example a usual look-up table, in a memory of the computer device or a memory to which the computer unit has access.
Grundsätzlich ist es aber auch möglich, den Zählerstand bzw. den gray-kodierten Zählerstand durch Ziffern zu einer Basis zu definieren, die nicht eine Potenz von 2 ist, beispielsweise als Dezimalzahlen. Dann ist der erweiterte Gray-Code, in dem die einzelnen Ziffern kodiert werden, zwar nicht vollständig ausgeglichen, jedoch ist die Verteilung der Bit-Änderungen auf die einzelnen Bit-Stellen im Datenwort schon erheblich besser als bei den bisher bekannten Zählern, so dass letztlich eine Lebensdauererhöhung des Zählers gegenüber herkömmlichen Zählern erreicht werden kann.Basically but it is also possible the counter reading or the gray-coded counter reading Digits to define a base that is not a power of 2 is, for example, as decimal numbers. Then the advanced one Gray code in which the individual digits are encoded, not Completely balanced, however, is the distribution of bit changes to the individual bit positions in the data already significantly better as with the previously known counters, so that ultimately a lifespan increase of the counter over conventional meters can be achieved.
Wie oben erwähnt, handelt es sich bei einem erweiterten Gray-Code um einen Code, bei dem die Ziffer-Kodierungsregel für eine Anzahl von aufeinanderfolgenden Zyklen, welche eine zu kodierende Ziffer durchläuft, jeweils unterschiedliche Zyklus-Kodierungsregeln umfasst, die nacheinander zyklisch oder reflektiert zyklisch angewendet werden. Dabei wird vorzugsweise dafür gesorgt, dass die Anzahl der Zyklus-Kodierungsregeln der Anzahl oder einem Vielfachen der Anzahl der Bits eines einzelnen der dritten Datenworte, d. h. der zur binären Speicherung des dritten Datenworts notwendigen Bits, entspricht. Um den erweiterten Gray-Code möglichst unkompliziert zu halten, ist es dabei bevorzugt, dass die Anzahl der Zyklus-Kodierungsregeln genau der Anzahl der Bits entspricht, d. h. es wird beispielsweise bei einer binären 4-Bit-Kodierung einer Hexadezimalziffer ein erweiterter Gray-Code mit genau vier verschiedenen Zyklus-Kodierungsregeln verwendet. Welche der Zyklus-Kodierungsregeln angewandt wird, hängt davon ab, in welchem Zählzyklus sich der Zähler bezüglich dieser Ziffer gerade befindet und in welcher Richtung der Zyklus gerade durchlaufen wird. Ein konkretes Beispiel hierzu wird noch in der Figurenbeschreibung erläutert.As mentioned above, an extended Gray code is a code that uses the digit encoding rule for one Number of consecutive cycles, one to be coded Number goes through, each comprises different cycle coding rules, one after the other cyclically or reflected cyclically. It is preferred ensured, that the number of cycle encoding rules is the number or one Multiples of the number of bits of a single one of the third data words, d. H. the to the binary Storage of the third data word necessary bits, corresponds. To the extended Gray code as possible To keep it straightforward, it is preferred that the number the cycle encoding rules correspond exactly to the number of bits, d. H. For example, in a 4-bit binary encoding, it becomes a hexadecimal digit an extended Gray code with exactly four different cycle encoding rules used. Which of the cycle encoding rules is used depends on in which counting cycle the counter regarding this Numeral is straight and in which direction the cycle is straight is going through. A concrete example for this is still in the Description of the figures explained.
Grundsätzlich können nahezu beliebig lange Datenworte genutzt werden. Da sich aber, wie bereits beschrieben, eine Repräsentation der einzelnen Ziffern des Zählerstands durch Ordinal zahlen zur Basis 16, d. h. in Form von Hexadezimalziffern besonders gut eignet, ist die Länge der ersten Datenworte, die Länge der zweiten Datenworte und die Länge der dritten Datenworte jeweils 4 Bit. Durch ein 4-Bit-Datenwort lässt sich eine Hexadezimalziffer optimal darstellen.Basically, almost Any length of data words are used. But, as already described, a representation the individual digits of the meter reading by ordinal pay to base 16, d. H. in the form of hexadecimal digits especially good, is the length the first data words, the length the second data words and the length the third data words each 4 bits. Through a 4-bit data word let yourself optimally represent a hexadecimal digit.
Um mit solchen 4-Bit-Datenworten einen Zählerstand eines üblichen 32-Bit-Zählers, wie er heutzutage in den meisten Fällen eingesetzt wird, zu kodieren, sind jeweils acht Datenworte in einer Gruppe, d. h. acht erste Datenworte, acht zweite Datenworte und acht dritte Datenworte erforderlich.Around with such 4-bit data words a count of a usual 32-bit counter, as it is used in most cases today to encode are each eight data words in a group, d. H. eight first data words, eight second data words and eight third data words required.
Da die meisten Speicher so aufgebaut sind, dass sie jeweils byte-weise beschrieben werden können, beträgt die Länge der Speicherworte vorzugsweise jeweils 1 Byte (d. h. 8 Bit), so dass zur Kodierung eines 32-Bit-Zählers vier Speicherworte erforderlich sind.There Most of the memories are constructed in such a way that they are each byte-wise can be described is the length the memory words are preferably each 1 byte (i.e., 8 bits), so that four memory words are required to encode a 32-bit counter are.
Grundsätzlich kann die Erfindung aber auch an Zählern mit anderen Speicherlängen bzw. Datenwortlängen und Speicherwortlängen eingesetzt werden. Beispielsweise könnte ein 20 Bit langer Zählerstand in vier Speicherworten mit je 5 Bit hinterlegt sein. Diese könnten dann zur Verarbeitung und Inkrementierung nach dem erfindungsgemäßen Verfahren in jeweils Gruppen von fünf ersten, zweiten und dritten Datenworten von jeweils 4 Bit Länge umgewandelt werden.Basically the invention but also on counters with other memory lengths or data word lengths and memory word lengths be used. For example, could be a 20-bit counter count be stored in four memory words with 5 bits each. These could then for processing and incrementing according to the inventive method in each groups of five converted first, second and third data words of 4 bits in length become.
Grundsätzlich kann auch die Zähler-Kodierungsregel in Form einer Look-Up-Table definiert sein, anhand derer der gesamte Zählerstand in einen gray-kodierten Zählerstand umgesetzt werden kann. Es kann dann ein beliebiger Gray-Code eingesetzt werden.Basically also the counter encoding rule be defined in the form of a look-up table, on the basis of which the entire meter reading in a gray-coded counter reading can be implemented. It can then be used any Gray code.
Bei einem bevorzugten Ausführungsbeispiel ist die Zähler-Kodierungsregel so gewählt, dass der durch eine Ordinalzahl zur Basis n definierte Zählerstand in einen zyklisch reflektierten Gray-Code kodiert wird. Die Anwendung eines solchen zyklisch reflektierten Gray-Codes kann den Vorteil haben, dass er einfacher berechenbar ist als andere Gray-Codes. Bei einem einfach berechenbaren, zyklisch reflektierten Gray-Code besteht beispielsweise die bevorzugte Möglichkeit, dass die Zähler-Kodierungsregel und die inverse Zähler-Kodierungsregel jeweils durch einen Berechnungsalgorithmus vorgegeben sind und zur Konvertierung der Gruppe von ersten Datenworten in die Gruppe von zweiten Datenworten und umgekehrt jeweils eine Berechnung mit Hilfe des entsprechenden Berechnungsalgorithmus durchgeführt wird. Das heißt, es ist dann nicht erforderlich, zur Konvertierung auf eine relativ große Look-Up-Table zuzugreifen, welches mehr Zeit erfordern würde als die Berechnung mit einer einfachen numerischen Kodierungsregel bzw. inversen Kodierungsregel. Es könnten dann auch sehr lange Zähler in einfachen technischen Systemen implementiert werden.at a preferred embodiment the counter encoding rule like this selected that the count defined by an ordinal number to the base n is encoded in a cyclically-reflected Gray code. The application Such a cyclically-reflected Gray code may have the advantage have it easier to calculate than other Gray codes. at an easily calculable, cyclically-reflected Gray code for example, the preferred way that the counter coding rule and the inverse counter encoding rule are each predetermined by a calculation algorithm and for Conversion of the group of first data words into the group of second data words and vice versa each calculation using help the corresponding calculation algorithm is performed. This means, It is then not necessary to convert to a relative size Look-Up-Table, which would take more time than that Calculation with a simple numerical coding rule or inverse coding rule. It could then very long counters be implemented in simple technical systems.
Die Erfindung wird im Folgenden unter Hinweis auf die beigefügten Figuren anhand von Ausführungsbeispielen noch einmal näher erläutert. Es zeigen:The The invention will be described below with reference to the attached figures based on embodiments once again closer explained. Show it:
Bei
dem in
Zur
Inkrementierung bzw. Dekrementierung werden die in
D. h. es wird zunächst der kodierte Zählerstand, welcher in den Speicherworten SW hinterlegt ist, eingelesen und es werden die einzelnen Bits dieses Zählerstands auf die dritten Datenworte DW3 gemäß einer bestimmten Permutationsregel verteilt. Diese einzelnen dritten Datenworte DW3 enthalten dann jeweils die einzelnen Ziffern des gray-kodierten Zählerstands in einem erweiterten Gray-Code. Danach erfolgt eine inverse Ziffern-Kodierung, so dass die einzelnen Ziffern wieder in ihre Ordinalzahlen zurückkonvertiert werden, die in Form der einzelnen zweiten Datenworte DW2 im Arbeitsspeicher hinterlegt sind. Die in den einzelnen zweiten Datenworten abgelegten Ziffern sind dann folglich die Ziffern des gray-kodierten Zählerstands. In einem weiteren Schritt erfolgt dann die Rückkodierung des kompletten Zählertands an sich, um diesen dann in Form von ersten Datenworten DW1 im Arbeitsspeicher zu hinterlegen. Dieser Zählerstand als Ordinalzahl wird dann inkrementiert bzw. dekrementiert. Anschließend erfolgt wieder eine Zählerkodierung zur Erzeugung der geänderten zweiten Datenworte DW2, eine Kodierung der einzelnen Ziffern zur Erzeugung der geänderten dritten Datenworte DW3 und schließlich die Permutation der Bits zur Verteilung der einzelnen Bits der dritten Datenworte DW3 auf die Speicherworte SW. Diese neuen Speicherworte werden dann mit dem ursprünglich hinterlegten Zählerstand verglichen, und es werden die Speicherworte überschrieben, die sich geändert haben.Ie. First, the encoded counter reading, which is stored in the memory words SW, is read in, and the individual bits of this counter reading are distributed to the third data words DW 3 in accordance with a specific permutation rule. These individual third data words DW 3 then each contain the individual digits of the gray-coded counter reading in an extended Gray code. This is followed by an inverse number coding, so that the individual digits are converted back into their ordinals, which are stored in the form of the individual second data words DW 2 in the main memory. The digits stored in the individual second data words are then the digits of the gray-coded meter reading. In a further step, the entire counter value is then recoded, in order to deposit it in the form of first data words DW 1 in the main memory. This counter reading becomes ordinal then incremented or decremented. Subsequently, a counter coding for generating the changed second data words DW 2 , a coding of the individual digits for generating the modified third data words DW 3 and finally the permutation of the bits for distribution of the individual bits of the third data words DW 3 to the memory words SW. These new memory words are then compared with the originally stored counter reading, and the memory words which have changed are overwritten.
Durch die erfindungsgemäße Kodierung ist dabei dafür gesorgt, dass sich bei jedem Inkrementionsschritt bzw. Dekrementionsschritt genau nur eines der Speicherworte ändert und dass bei einem Hochzählen des Zählers oder Runterzählen des Zählers die Änderungen auf alle Speicherworte gleich verteilt sind.By the coding according to the invention is there for it ensured that at each incrementation step or decrementing step exactly only one of the memory words changes and that when counting up the counter or counting down of the meter The changes are distributed equally to all memory words.
Eine
besonders bevorzugte Vorgehensweise und Kodierung wird im Folgenden
erläutert,
wobei hierzu der Weg von der Kodierung des Zählerstands als ursprüngliche
Ordinalzahl in den letztlich in den Speicherworten kodierten Zählerstand
beschrieben wird:
Wird ein Zähler fortlaufend inkrementiert,
so führt dies
zu einer Folge, bei der dasjenige Byte, welches die niederwertigste
Ziffer enthält,
sich am häufigsten ändert, das
Byte mit der nächst
höheren
Ziffer am zweithäufigsten
und das Byte mit der höchstwertigen Ziffer
am seltensten. Im Allgemeinen nimmt dabei die Anzahl der Änderungen
pro Ziffer logarith misch zur Basis der Zifferndarstellung ab. Weiterhin
kommt es zwangsläufig
dazu, dass sich gelegentlich mehr als eine Ziffer auf einmal ändern kann.
Beispielsweise ändern
sich beim Sprung von der Zahl 19999 auf die Zahl 20000 sämtliche
Ziffern. Somit würden
sich auch sämtliche
Bytes des Zählerstands ändern.A particularly preferred procedure and coding will be explained in the following, in which case the way from the coding of the counter reading as the original ordinal number in the counter reading ultimately coded in the memory words will be described:
If a counter is incremented continuously, this results in a sequence in which the byte containing the least significant digit changes most frequently, the byte with the next highest digit the second most, and the byte with the most significant digit the least. In general, the number of changes per digit decreases logarithmically from the base of the numerical representation. Furthermore, it inevitably happens that sometimes more than one digit can change at once. For example, during the jump from the number 19999 to the number 20000 all digits change. Thus, all bytes of the meter would change.
Dieser
letztere Effekt kann dadurch vermieden werden, dass der Zählerstand
in Form eines Gray-Codes abgespeichert wird. In einem Gray-Code
ist sichergestellt, dass sich aufeinanderfolgende Zählerstände jeweils
nur um ein Zeichen unterscheiden. Bei dem in
Ein zyklischer reflektierter Gray-Code zu einer beliebigen gegebenen Basis B kann definiert werden, indem eine Konstruktionsvorschrift angegeben wird, die aus einer gegebenen Ordinalzahl der Basis B die Darstellung als Gray-Code der Basis B eindeutig erzeugt und indem entsprechend eine inverse Konstruktionsvorschrift angegeben wird, die aus einem gegebenen Gray-Code die korrespondierende Ordinalzahl eindeutig erzeugt.One cyclic Gray reflected code to any given Base B can be defined by a design rule given from a given ordinal number of the base B the representation as Gray code of the base B is clearly generated and by accordingly indicating an inverse design specification becomes, from a given Gray code, the corresponding ordinal number clearly generated.
Als
Zähler-Kodierungsregel
zur Konvertierung einer Zahl Z in einen korrespondierenden Gray-Code
G kann vorzugsweise folgende Konstruktionsvorschrift verwendet werden:
Dabei ist m definiert als die Position der ersten Ziffer von Z mit geradzahliger Basis, falls Z aus Ziffern unterschiedlicher Basis besteht, und m:= n – 1, falls Z vollständig aus Ziffern ungeradzahliger Basis besteht.there m is defined as the position of the first digit of Z with even number Basis, if Z consists of numbers of different bases, and m: = n - 1, if Z is complete consists of digits of odd base.
Umgekehrt
kann als inverse Zähler-Kodierungsregel
folgende Konstruktionsvorschrift angegeben werden, die die Zahl
im Gray-Code G wieder in die korrespondierende Ordinalzahl Z zurückkonvertiert:
Die
Konstruktionsvorschrift (1) gilt für Ziffern beliebiger Basis
bzw. Zahlen mit beliebigem Basisvektor. Auch der in
Werden
nur Zahlen eingesetzt, deren Ziffern zu einer ungeradzahligen Basis
definiert sind, gilt folgende Konstruktionsregel:
Bei einem besonders bevorzugten Ausführungsbeispiel kann zur Realisierung eines 32-Bit-Zählers der Zählerstand in einer achtstelligen hexadezimalen Ordinalzahl repräsentiert werden, d. h. die einzelnen Ziffern sind jeweils Hexadezimalzahlen, die jeweils in einem 4 Bit langen Datenwort kodiert werden können.at a particularly preferred embodiment For example, to realize a 32-bit counter, the count may be in an eight-digit hexadecimal Ordinal number represents be, d. H. the individual numbers are each hexadecimal numbers, each of which can be coded in a 4-bit long data word.
Ein solcher 32-Bit-Zähler wird also mit vier Speicherworten à 8 Bit und jeweils acht 4 Bit langen ersten Datenworten DW1, zweiten Datenworten DW2 und dritten Datenworten DW3 realisiert.Such a 32-bit counter is thus realized with four 8-bit memory words each having eight 4-bit first data words DW 1 , second data words DW 2 and third data words DW 3 .
Durch diese Zählerkodierung der hexadezimalen Ordinalzahl des Zählerstands in den hexadezimalen reflektierten zyklischen Gray-Code bei der Umwandlung der Gruppe der ersten Datenworte DW1 in die Gruppe der zweiten Datenworte DW2 wird bereits sichergestellt, dass sich zwei aufeinander folgende Zählerstände nur um eine Ziffer unterscheiden. Jedoch ändert sich dabei nach wie vor die niederwertigste Ziffer am häufigsten und die Anzahl der Änderungen der anderen Ziffern nimmt logarithmisch zur Basis ab.By this counter coding of the hexadecimal ordinal number of the counter reading in the hexadecimal gray cyclic gray code during conversion of the group of first data words DW 1 into the group of second data words DW 2 , it is already ensured that two consecutive counter readings differ by only one digit. However, the least significant digit still changes most frequently and the number of changes in the other digits decreases logarithmically to the base.
Grundsätzlich wäre es nun möglich, die Ziffern innerhalb des Permutationsschritts so auf die verschiedenen Speicherworte zu verteilen, dass sich die Änderungen der niederwertigsten Ziffer auf die einzelnen Speicherworte aufteilen. Da jedoch die Ziffern selbst als Binärzahl gespeichert sind, werden oftmals mehrere Bits der Zifferndarstellung beim Inkrementieren geändert. Aus diesem Grund werden hier erfindungsgemäß auch die Ziffern des bereits gray-kodierten Zählerstands noch einmal mit einem Gray-Code kodiert. Dies erfolgt bei der Umwandlung mit Hilfe der Ziffer-Kodierungsregel der einzelnen zweiten Datenworte DW2 in die jeweils zugehörigen dritten Datenworte DW3. Hierzu wird ein erweiterter ausgeglichener Gray-Code verwendet, der in einer Look-Up-Table hinterlegt ist. Ein ausgeglichener Gray-Code ist dadurch definiert, dass die Anzahl der Bit-Änderungen beim Durchlaufen eines vollständigen Zyklus aus mehreren Sequenzen, beispielsweise bei einer Hexadezimalzahl von 0...15 und 15...0, gleich ist. Da im vorliegenden Ausführungsbeispiel einzelne hexadezimale Ziffern des Zählerstands ja bereits in einem zyklisch reflektierten Gray-Code kodiert sind, werden sie immer von 0 bis 15 und wieder zurück zur 0 gezählt.In principle, it would now be possible to distribute the digits within the permutation step to the different memory words in such a way that the changes of the least significant digit are distributed among the individual memory words. However, since the digits themselves are stored as a binary number, many bits of the digit representation are often changed on incrementing. For this reason, according to the invention, the digits of the already gray-coded meter reading are coded once again with a Gray code. This takes place during the conversion with the aid of the digit coding rule of the individual second data words DW 2 into the respectively associated third data words DW 3 . For this purpose, an extended balanced Gray code is used, which is stored in a look-up table. A balanced Gray code is defined as equaling the number of bit changes when passing through a complete cycle of multiple sequences, for example, at a hexadecimal number of 0 ... 15 and 15 ... 0. Since in the present embodiment individual hexadecimal digits of the count are already coded in a cyclically reflected Gray code, they are always counted from 0 to 15 and back to 0 again.
Ein
für die
praktische Realisierung der Erfindung verwendeter, erweiterter ausgeglichener Gray-Code
ist in
Die Verwendung solcher unterschiedlicher Zyklus-Kodierungsregeln für vier aufeinanderfolgende Zyklen sorgt dafür, dass sich bei einem viermaligen Durchlaufen des Gesamtzyklus (viermal von 0 bis 15 und jeweils wieder zurück) sämtliche Bits gleich oft ändern. Für eine einzelne Spalte des Gray-Codes, d. h. für eine einzige Zyklus-Kodierungsregel, ist dies nicht der Fall. Dies lässt sich leicht an der ersten (linken) Gray-Code-Spalte ersehen. Beim Durchlaufen dieses Gray-Codes von 0 bis 15 ändert sich das linke niederwertigste Bit sowie die beiden Bits in der Mitte jeweils genau viermal, wogegen sich das höchstwertige linke Bit nur dreimal ändert. Daher werden insgesamt vier Folgen dieses Gray-Codes reflektiert untereinandergeschrieben (welches hier dem mäanderförmigen Durchlaufen der Spalten des Gray-Codes entspricht) und dabei die Spalten in den jeweiligen Zyklen derart vertauscht (permutiert), dass die Spalte mit den wenigsten Bit-Wechseln einmal an jeder Bit-Position vorkommt. Dabei werden einzelne Bit-Spalten (jeweils durch einen Unterstrich markiert) so invertiert, dass nach dem ersten Heraufzählen von 0 bis 15 und dem anschließenden Herunterzählen von 15 bis 0 die Bit-Darstellung für die 15 in beiden Folgen übereinstimmt und beim nächsten Heraufzählen von 0 bis 15 die Bit-Darstellung der 0 übereinstimmt und beim letzten Herunterzählen von 15 bis 0 wieder die Bit-Darstellung der 15.The Use of such different cycle encoding rules for four consecutive cycles Cycles ensures that in a four-time through the entire cycle (four times from 0 to 15 and back again) change all bits the same number of times. For a single Column of the Gray code, d. H. For a single cycle coding rule, this is not the case. This is easy at the first (left) Gray code column. When going through this Gray code changes from 0 to 15 the left least significant bit as well as the two bits in the Center exactly four times, whereas the most significant left bit changes only three times. Therefore a total of four episodes of this Gray code are reflected in each other (which here meandering through the Columns of the Gray code corresponds) and thereby the columns in the respective cycles are so permuted (permuted) that the column with the fewest bit changes occurring once at each bit position. there are individual bit columns (each marked by an underscore) inverted so that after the first counting from 0 to 15 and the subsequent counting down of 15 to 0 the bit representation for the 15 in both episodes matches and the next incrementing from 0 to 15 the bit representation matches 0 and the last one countdown from 15 to 0 again the bit representation of the 15.
Dadurch wird sichergestellt, dass für einen kompletten Zählzyklus 0-15-0-15-0, wie er beim Inkrementieren des gray-kodierten Zählerstands in den einzelnen Ziffern jeweils vorkommt, die Anzahl der Bit-Wechsel für jedes Bit der Bit-Positionen 1 bis 4 gleich ist.This ensures that for a complete counting cycle 0-15-0-15-0, like when incrementing the gray-coded meter reading into the each digit occurs, the number of bit changes for each bit of the bit positions 1 to 4 is the same.
Wie
Bei
dem hier dargestellten Gray-Code zur Umrechnung einer Hexadezimalziffer
in einen 4 Bit langen Gray-Code gemäß
Lediglich für die höchstwertige Ziffer des Zählers lässt sich diese Position im Zyklus nicht so bestimmen, da es ja keine höherwertigere Ziffer gibt. Daher kann für die höchstwertige Ziffer immer ein zuvor festgelegter Zyklus, beispielsweise – ohne Beschränkung der Allgemeinheit – immer die erste Zyklus-Konvertierungsregel angenommen werden. Da jedoch der Gray-Code der einzelnen Ziffern bereits ausgeglichen ist, ist die Anzahl der Bit-Wechsel des höchstwertigen Bits, der höchstwertigen Ziffer des Zählers und damit auch die Änderung des zugehörigen Speicherworts bei einer Verteilung der einzelnen Bits der Ziffern auf die verschiedenen Speicherworte nur um 1 geringer als die der übrigen Bits bzw. Speicherworte. Dies ist jedoch bereits die ausgeglichenste Anzahl an Bit-Wechseln überhaupt, da z. B. bei einer Anzahl von 232 möglichen Zuständen eines 32 Bit-Zählers genau 232 – 1 Zustandswechsel auftreten können, genauso wie beim Hochzählen eines Dezimalzählers von 1 bis 10 genau neun Zustandswechsel eintreten.Only for the most significant digit of the counter, this position can not be determined in the cycle, since there is no higher-order digit. Therefore, for the most significant digit, a predetermined cycle can always be adopted, for example, without loss of generality, the first cycle conversion rule. However, since the Gray code of the individual digits is already balanced, the number of bit changes of the most significant bit, the most significant digit of the counter and thus the change of the associated memory word in a distribution of the individual bits of the digits to the various memory words only 1 less than the remaining bits or memory words. However, this is already the most balanced number of bit changes ever, since z. For example, in a number of 2 32 possible states of a 32-bit counter, exactly 2 32 - 1 state changes may occur, just as when incrementing a decimal counter from 1 to 10, exactly nine state changes occur.
Werden
dann, wie in
Anstelle eines ausgeglichenen erweiterten Gray-Codes kann aber auch ein beliebiger anderer erweiterter Gray-Code zur Darstellung der einzelnen Ziffern verwendet werden. Wird beispielsweise für die Zifferndarstellung kein erweiterter ausgeglichener, sondern z. B. ein erweiterter einfacher reflektierter Gray-Code verwendet, so ist die Anzahl der Bit-Änderungen der einzelnen Ziffern im Allgemeinen ebenfalls ausgeglichen. Nur bei Änderungen der höchstwertigen Ziffer wird die Anzahl der Bit-Änderungen unterschiedlich sein und logarithmisch zur gewählten Basis abnehmen. Bei Ziffern, die wie hier in dem bevorzugten Ausführungsbeispiel durch 4 Bit dargestellt werden, tritt dieser Fall erst bei der ersten Änderung der höchstwertigen Ziffer auf, also nach 228 Zustands wechseln. Auch nach allen 232 – 1 Zustandswechseln wird dasjenige Byte, welches das niederwertigste Bit der höchstwertigen Ziffer enthält, nur 16 Änderungen mehr erfahren haben als dasjenige Byte (Speicherwort), welches das höchstwertige Bit der höchstwertigen Ziffer enthält. Bei Zahlen dieser Größenordnung spielt das in der praktischen Realisierung keine Rolle mehr, so dass im realen Einsatz tatsächlich auch ein anderer erweiterter Gray-Code verwendet werden kann.Instead of a balanced extended Gray code, however, any other extended Gray code can also be used to represent the individual digits. For example, for the numerical representation no extended balanced, but z. For example, if an extended single-reflection Gray code is used, the number of bit changes of each digit is generally also balanced. Only when changing the most significant digit will the number of bit changes be different and decrease logarithmically to the chosen base. For digits that are represented by 4 bits as here in the preferred embodiment, this case occurs only at the first change of the most significant digit, so after 2 28 change state. Even after all 2 32 - 1 state changes, the byte containing the least significant bit of the most significant digit will only have undergone 16 more changes than the byte (memory word) containing the most significant bit of the most significant digit. In the case of numbers of this magnitude, this no longer plays a role in the practical implementation, so that actually another extended Gray code can also be used in real use.
Die
einzelnen Bits dieser Datenworte DW3 werden
dann von einem Permutationsmodul
Wie
bereits weiter oben erläutert,
erfolgen die Ziffernkonvertierung und die inverse Ziffernkonvertierung
mit Hilfe einer Look-Up-Table LUT, z. B. wie sie in
Die
Permutationsmodule
Der
im Arbeitsspeicher
Ein
kompletter Zählvorgang
an einem 32-Bit-Zähler
mit vier Speicherworten A, B, C, D (im Folgenden auch Speicher-Bytes
genannt) wird im Folgenden an den
Die
Kodierung der einzelnen Ziffern erfolgt gemäß dem oben angegebenen, anhand
von
Im Schritt Z(0) ist zunächst der Zählerstand noch in den vier Speicherworten D, C, B, A von jeweils 1 Byte Länge gespeichert. Die Buchstaben a0 bis a7, b0 bis b7, c0 bis c7 und d0 bis d7 geben dabei jeweils die Bit-Stelle in den einzelnen Speicherworten A, B, C, D an. Unmittelbar darunter ist als Beispiel ein binärer Wert eingetragen.In step Z (0) , the counter reading is initially stored in the four memory words D, C, B, A, each of 1 byte length. The letters a 0 to a 7 , b 0 to b 7 , c 0 to c 7 and d 0 to d 7 indicate in each case the bit position in the individual memory words A, B, C, D. Immediately below is a binary value as an example.
Im nächsten Schritt Z(1) sind dann die einzelnen Ziffern im ausgeglichenen Gray-Code nach Umsortierung der einzelnen Bit-Stellen auf die acht dritten Datenworte DW3 gezeigt, welche jeweils eine Länge von 4 Bit aufweisen. Wie hier zu sehen ist, enthält die niederwertigste Ziffer die Bits a0, b0, c0, d0, die nächsthöherwertige Ziffer die Bits a1, b1, c1, d1 usw.In the next step Z (1) , the individual digits in the balanced Gray code are then shown after re-sorting the individual bit positions to the eight third data words DW 3 , which each have a length of 4 bits. As can be seen here, the least significant digit contains the bits a 0 , b 0 , c 0 , d 0 , the next higher digit the bits a 1 , b 1 , c 1 , d 1 , etc.
Im nachfolgenden Schritt Z(2) sind dann die einzelnen Ziffern als binär kodierte Ordinalzahlen (in Form der zweiten Datenworte DW2) dargestellt, wie sie nach der Konvertierung aus dem ausgeglichenen Gray-Code mit Hilfe der inversen Ziffern-Kodierungsregel erzeugt werden können. Zusätzlich sind hier die einzelnen Ziffern auf der linken Seite über den Bit-Darstellungen der zweiten Datenworte DW2 dieses gray-kodierten Zählerstands als hexadezimale Ordinalzahlen angegeben.In the following step Z (2) then the individual digits are represented as binary coded ordinal numbers (in the form of the second data words DW 2 ), as they can be generated after the conversion from the balanced Gray code using the inverse digit encoding rule. In addition, here the individual digits on the left side over the bit representations of the second data words DW 2 of this gray-coded counter reading are given as hexadecimal ordinal numbers.
Im Schritt Z(3) wird dann der Zählerstand nach der inversen Zählerkonvertierung in Form der ersten Datenworte DW1 angegeben. Hierbei handelt es sich um den nicht gray-kodierten Original-Zählerstand als Ordinalzahl. Auch hier ist der Zählerstand wieder zusätzlich in Form von acht Hexadezimalziffern angegeben.In step Z (3) , the count after the inverse counter conversion is then specified in the form of the first data words DW 1 . This is the non-gray coded original counter stood as ordinal number. Again, the meter reading is additionally given in the form of eight hexadecimal digits.
Im nächsten Schritt Z(4) erfolgt dann eine Inkrementierung des Zählerstands um den Wert 1. Die durch diese Inkrementierung betroffenen Ziffern sind sowohl in der Hexadezimalform als auch in der Binärdarstellung jeweils durch ein umlaufendes Kästchen markiert. Wie hier zu sehen ist, wurde die drittniedrigste Ziffer von dem hexadezimalen Wert 5 auf den Wert 6 geändert, damit haben sich automatisch auch die beiden niederwertigeren Ziffern, welche vorher jeweils durch ein „f" dargestellt waren, auf den Wert „0" geändert. Dementsprechend sind auch die drei ganz rechten, diese Ziffern darstellenden binärkodierten ersten Datenworte DW1 geändert worden.In the next step Z (4) , the counter reading is then incremented by the value 1. The digits affected by this incrementing are marked in the hexadecimal form as well as in the binary representation by a circulating box. As can be seen here, the third lowest digit has been changed from the hexadecimal value 5 to the value 6, so that automatically the two lower order digits previously represented by an "f" have also been changed to the value "0". Accordingly, the three rightmost binary coded first data words DW 1 representing these numbers have also been changed.
Im
Schritt Z(5) werden diese ersten Datenworte
DW1 dann wieder mit Hilfe des zyklischen Gray-Codes,
wie er oben anhand der Berechnungsregel (
Im nächsten Schritt Z(6) werden nun die einzelnen Ziffern gemäß der ebenfalls oben angegeben Regel in einen erweiterten ausgeglichenen Gray-Code gebracht, d. h. die zweiten Datenworte DW2 werden jeweils wieder in die dritten Datenworte DW3 umgewandelt. Ein Vergleich des drittniedrigsten, durch die Inkrementierung geänderten dritten Datenworts DW3 mit dem entsprechenden dritten Datenwort DW3 im Schritt Z(1) zeigt, dass sich nun durch die Inkrementierung lediglich ein einzelnes Bit geändert hat.In the next step Z (6) , the individual digits are now brought into an extended, balanced Gray code in accordance with the rule also indicated above, ie the second data words DW 2 are respectively converted back into the third data words DW 3 . A comparison of the third lowest, modified by the incrementing third data word DW 3 with the corresponding third data word DW 3 in step Z (1) shows that now only a single bit has changed due to the incrementation.
Anschließend erfolgt wieder im Schritt Z(7) eine Verteilung der einzelnen Bits der dritten Datenworte DW3 auf die Speicherworte D, C, B, A. Da sich nur ein Bit eines dritten Datenworts DW3 durch die Inkrementierung geändert hat, ändert sich folglich durch die Inkrementierung auch nur eines der Zählerstand-Speicherworte SW, hier das Speicherwort C. Dieses muss dann im nichtflüchtigen Speicher überschrieben werden.Subsequently, again in step Z (7), the individual bits of the third data words DW 3 are distributed to the memory words D, C, B, A. Since only one bit of a third data word DW 3 has changed as a result of the incrementation, the result changes accordingly the incrementation of only one of the counter reading memory words SW, here the memory word C. This must then be overwritten in the non-volatile memory.
Bei der Rückkodierung in den reflektierten Gray-Code gibt es hier keine Änderungen. Ebenso ist bei der Kodierung dieser Ziffer in den erweiterten ausgeglichenen Gray-Code sichergestellt, dass sich wieder nur ein einzelnes Bit der gesamten Ziffern ändert. Entsprechend ändert sich bei den inkrementierten Zählerstand-Speicherworten wieder nur ein einzelnes Speicherwort SW, nämlich in diesem Fall das Speicherwort A.at the recoding There are no changes in the reflected Gray code here. Similarly, when coding this digit in the advanced balanced Gray code ensures that again only a single bit the entire digits changes. Correspondingly changes at the incremented counter reading memory words again only a single memory word SW, namely in this case the memory word A.
Wie hier gezeigt ist, kann mit dem erfindungsgemäßen Verfahren ein 32-Bit-Zähler realisiert werden, der nicht auf Bit-Ebene, sondern sogar auf Byte-Ebene ausgeglichen ist. Es wird also letztlich ein vierstelliger, total ausgeglichener Gray-Code zur Basis 28 = 256 zur Verfügung gestellt. Durch das dreistufige Verfahren ist dabei sichergestellt, dass die jeweiligen Konvertierungen relativ einfach durchgeführt werden können. So kann sowohl die Gray-Kodierung des Zählerinhalts in der ersten Stufe mit den oben beschriebenen Rechenregeln als auch die Konvertierung der einzelnen Ziffern in einen erweiterten ausgeglichenen Gray-Code mit Hilfe einer sehr kleinen Tabelle einfach und schnell durchführbar werden. Ein weiterer Vorteil kann darin bestehen, dass die Differenz in der Anzahl der Schreibzugriffe auf die einzelnen Speicherworte innerhalb eines nicht abgeschlossenen Teilzyklus durch die Anzahl der Ziffern-Bits bestimmt wird, d. h. der Bits, welche nötig sind, um eine einzelne Ziffer zu beschreiben. Durch eine entsprechende Wahl dieses Parameters, wie hier beispielsweise durch die Verwendung von 4-Bit-Ziffern, kann dementsprechend auch diese Differenz klein gehalten werden. Durch die schnelle und einfache Konvertierung können auch lange Zähler in den korrespondierenden Gray-Code bzw. in die korrespondierende Ordinalzahl umgesetzt werden.As shown here, the method of the present invention can realize a 32-bit counter that is balanced not at the bit level but even at the byte level. So it is ultimately a four-digit, totally balanced Gray code to base 2 8 = 256 provided. The three-stage process ensures that the respective conversions can be carried out relatively easily. Thus, both the gray coding of the counter content in the first stage with the above-described calculation rules and the conversion of the individual digits into an extended balanced Gray code with the help of a very small table can be made simple and fast. A further advantage may be that the difference in the number of write accesses to the individual memory words within an incomplete subcycle is determined by the number of digit bits, ie the bits which are necessary to describe a single digit. By an appropriate choice of this parameter, as here for example by the use of 4-bit digits, this difference can be kept small accordingly. Due to the quick and easy conversion even long counters can be converted into the corresponding Gray code or into the corresponding ordinal number.
Es wird abschließend noch einmal darauf hingewiesen, dass es sich bei dem vorhergehend detailliert beschriebenen Verfahrensablauf sowie bei dem dargestellten Zähler lediglich um Ausführungsbeispiele handelt, welche vom Fachmann in ver schiedenster Weise modifiziert werden können, ohne den Bereich der Erfindung zu verlassen. So kann die Erfindung insbesondere auch für unterschiedlichste Wortlängen der Datenworte bzw. der Speicherworte eines Speicherbausteins verwendet werden.It will be final once again noted that it is the previous one described in detail process flow as well as in the illustrated counter only to exemplary embodiments which is modified by the expert in ver different ways can be without departing from the scope of the invention. So can the invention especially for different word lengths the data words or the memory words of a memory module used become.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE200710024410 DE102007024410B4 (en) | 2007-05-25 | 2007-05-25 | Method for operating a counter and counter circuitry |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE200710024410 DE102007024410B4 (en) | 2007-05-25 | 2007-05-25 | Method for operating a counter and counter circuitry |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE102007024410A1 DE102007024410A1 (en) | 2008-11-27 |
| DE102007024410B4 true DE102007024410B4 (en) | 2009-04-23 |
Family
ID=39877165
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE200710024410 Expired - Fee Related DE102007024410B4 (en) | 2007-05-25 | 2007-05-25 | Method for operating a counter and counter circuitry |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE102007024410B4 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2180083A (en) * | 1985-09-06 | 1987-03-18 | Motorola Inc | Non-volatile electronic counters |
| DE69132626T2 (en) * | 1990-11-02 | 2002-04-18 | France Telecom, Paris | Binary coding method with uniform switching distribution of the binary elements and incrementing-decrementing method therefor |
| DE10144077A1 (en) * | 2001-09-07 | 2003-03-27 | Philips Corp Intellectual Pty | binary counter |
| US20040113822A1 (en) * | 2002-12-16 | 2004-06-17 | Hongato Jiang | Scalable gray code counter and applications thereof |
| US20040141580A1 (en) * | 2003-01-21 | 2004-07-22 | Maletsky Kerry D. | Method for counting beyond endurance limitations of non-volatile memories |
-
2007
- 2007-05-25 DE DE200710024410 patent/DE102007024410B4/en not_active Expired - Fee Related
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2180083A (en) * | 1985-09-06 | 1987-03-18 | Motorola Inc | Non-volatile electronic counters |
| DE69132626T2 (en) * | 1990-11-02 | 2002-04-18 | France Telecom, Paris | Binary coding method with uniform switching distribution of the binary elements and incrementing-decrementing method therefor |
| DE10144077A1 (en) * | 2001-09-07 | 2003-03-27 | Philips Corp Intellectual Pty | binary counter |
| US20040113822A1 (en) * | 2002-12-16 | 2004-06-17 | Hongato Jiang | Scalable gray code counter and applications thereof |
| US20040141580A1 (en) * | 2003-01-21 | 2004-07-22 | Maletsky Kerry D. | Method for counting beyond endurance limitations of non-volatile memories |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102007024410A1 (en) | 2008-11-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69323020T2 (en) | Decoder for variable length codes | |
| DE2725395C3 (en) | Device for real-time transformation of m words of bit length n arranged in rows into n words of bit length n arranged in columns | |
| DE69132626T2 (en) | Binary coding method with uniform switching distribution of the binary elements and incrementing-decrementing method therefor | |
| DE4314741C2 (en) | Decoder for units of Huffman encoded data | |
| DE69529546T2 (en) | Sequential interleaver and address generator with reduced memory requirements | |
| DE3525898C2 (en) | ||
| DE2264090B2 (en) | Data compression | |
| DE2031040B2 (en) | PROCEDURE FOR DETERMINING ACCESS OF SEVERAL USERS TO A UNIT OF A DATA PROCESSING SYSTEM AND ARRANGEMENT FOR PERFORMING THE PROCEDURE | |
| DE2805294C2 (en) | Coding transmission system for facsimile signals | |
| DE2900586C2 (en) | Arrangement for decoding code words of variable length | |
| DE102007051192B4 (en) | A memory device employing tri-level cells and associated method for managing | |
| DE2357654C2 (en) | Associative memory | |
| EP0029490B1 (en) | Method of converting linear-coded digital signals into non-linear coded digital signals according to a multiple segment characteristic responding to the a law or the mu law | |
| DE102007024410B4 (en) | Method for operating a counter and counter circuitry | |
| DE19917016A1 (en) | Circuit for conversion of parallel data stream into series one and vice versa and for intermediate storage and clocked transmission of data stream | |
| DE2158011C3 (en) | Digital display system | |
| EP0769853B1 (en) | Logic block for a viterbi decoder | |
| DE102008009768B4 (en) | Incrementing counter with extended write lifetime | |
| DE19718479C1 (en) | Chip card with memory access maximization and protocol | |
| DE102005042135B3 (en) | Random number generating device for e.g. smart card, has memory device storing bit issued from noise source in memory areas of device, and reading device to read bits from areas, if predetermined bits are stored in one of areas | |
| DE2233164B2 (en) | Partial amendment of stored data - using logic circuit transferring part of bit sequence between registers | |
| EP1293938B1 (en) | Binary counter with permuted storage | |
| DE1808159B2 (en) | DEVICE FOR CONVERTING DUAL NUMBERS IN BINARY CODED DECIMAL NUMBERS IN PARALLEL DISPLAY | |
| DE3417816A1 (en) | Programmable switching network | |
| DE2017879B2 (en) | Free access memory array |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| 8320 | Willingness to grant licenses declared (paragraph 23) | ||
| 8364 | No opposition during term of opposition | ||
| R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |