WO2004021630A1 - Parallelverarbeitung der decodierung und der zyklischen redundanzüberprüfung beim empfang von mobilfunksignalen - Google Patents

Parallelverarbeitung der decodierung und der zyklischen redundanzüberprüfung beim empfang von mobilfunksignalen Download PDF

Info

Publication number
WO2004021630A1
WO2004021630A1 PCT/DE2003/002111 DE0302111W WO2004021630A1 WO 2004021630 A1 WO2004021630 A1 WO 2004021630A1 DE 0302111 W DE0302111 W DE 0302111W WO 2004021630 A1 WO2004021630 A1 WO 2004021630A1
Authority
WO
WIPO (PCT)
Prior art keywords
shift register
bits
output
input
redundancy check
Prior art date
Application number
PCT/DE2003/002111
Other languages
English (en)
French (fr)
Inventor
Jens Berkmann
Wolfgang Haas
Thomas Herndl
Gerald Hodits
Armin Häutle
Sasha Simeunovic
Original Assignee
Infineon Technologies Ag
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Infineon Technologies Ag filed Critical Infineon Technologies Ag
Publication of WO2004021630A1 publication Critical patent/WO2004021630A1/de
Priority to US11/063,949 priority Critical patent/US7461324B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0059Convolutional codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0046Code rate detection or code type detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes

Definitions

  • the present invention relates to methods for decoding and cyclical redundancy checking of mobile radio signals according to the preamble of the independent claims and corresponding devices for carrying out the method according to the invention.
  • CRC code Cyclic Redundancy Check, cyclic redundancy check
  • the CRC codes are generated by multiplying a useful data signal sequence by a so-called generator polynomial. After receiving the code word, it is divided by the generator polynomial. If the received codeword was transmitted correctly, then no remainder arises in the division. Conversely, if a remainder is output in the division, it is determined that the transmission was incorrect.
  • the cyclic codes like the CRC codes are particularly interesting for the application because the multiplication and division of polynomials can be realized relatively easily with the help of so-called linear feedback shift registers (LFSR, Linear Feedback Shift Register).
  • LFSR Linear Feedback Shift Register
  • code words can be generated by dividing these code words the original information word is restored and the result is checked for errors at the same time.
  • US Pat. No. 5,748,652 describes a circuit for the cyclical redundancy check for detecting and correcting errors in a data stream. The data stream in the receiver is entered into a linear feedback shift register, in which a division is realized by the generator polynomial.
  • the data to be transmitted are subjected to a channel coding method on the transmitter side, in which redundancy is specifically added to the data to be transmitted.
  • a channel coding method on the transmitter side, in which redundancy is specifically added to the data to be transmitted.
  • the efficient Viterbi algorithm is generally used at the receiving end in the decoder. It has been shown that a low error rate can be achieved by first performing a CRC block coding process, whereupon a convolutional coding process is carried out on the block-coded data. In such a concatenated channel coding method, a few CRC bits are generally first added to the information to be transmitted by means of a block code.
  • the information coded in this way is then transmitted using a Convolutional encoder.
  • the data sequence fed to the convolutional encoder on the transmitter side is then recursively concluded in a decoder by means of the Viterbi feedback algorithm ("traceback").
  • a CRC code is added on the transmitter side for each transport block of a set of transport blocks of the same size. There are four in the CRC code generator
  • the selection of one of these polynomials is determined by deciding a higher physical level on the transmitter side.
  • the bit that has the highest exponent in Eq. (6) appears in the vector b m at the least significant point.
  • the useful signal bits appear in the less significant positions in the vector b m and the CRC parity bits, on the other hand, appear in the more significant positions.
  • the CRC partial bits are mapped onto the vector b m in their natural order, that is, the coefficients that are the lower
  • Exponents in the residual polynomial are mapped to the lower-order positions of b m .
  • the coefficient p m ⁇ which corresponds to the highest exponent in the residual polynomial, is mapped to the most significant bit position of b m .
  • the channel decoding on the receiver side can be carried out in various ways.
  • the data signals of a block are recovered in the order in which they were sent to the convolutional encoder on the transmitter side.
  • the data signals of a block are recovered in the reverse order as they were fed to the convolutional encoder on the transmitter side, ie in the order given on the right-hand side of Eq. (8)
  • the problem now is that the useful signal bits and parity bits occurring in this order cannot be fed directly to a conventional CRC error determination circuit constructed from a shift register with linear feedback.
  • the so-called hard decision sequence resulting from the Viterbi traceback from recovered signal data corresponding to the vector b m is first stored in a buffer memory for one block or for the complete set of combined blocks.
  • the data signals are then retrieved from the buffer memory in the correct order and shifted into the shift register of the CRC error detection circuit.
  • the intermediate storage of the values is, on the one hand, expensive in terms of hardware, since appropriate storage space must be made available, and on the other hand, it is time-consuming because the data must be stored in the memory and called up again from it.
  • bit sequence extracted from the decoding process can also occur if the above-mentioned "sliding-indow" method is used as Viterbi traceback.
  • the parity or redundancy check bits may be added to the data block in a manner or on the receiving side of the decoding process that the bit sequence does not allow the user data and parity bits to be fed directly to the shift register with linear feedback for the polynomial division.
  • bit order provided by the decoding process is completely inverse to the order of bits in which it is a conventional shift register for a cyclic
  • Redundancy checks would have to be carried out in order to carry out a correct polynomial division. Again, the bits therefore only temporarily stored in a buffer memory in a complex manner.
  • Redundancy checking of mobile radio signals is based on the situation known per se, in which in each block a useful signal bit sequence and a redundancy checking bit sequence such as a CRC bit sequence are generated on the transmitter side and fed to a channel encoder, the bit sequences being decoded in a decoder on the receiving side be determined, which determines the sequence supplied to the channel encoder and outputs the determined values such that the bit sequence for the immediate implementation of a cyclical redundancy check, ie for the immediate input of the determined bits into one provided shift register with linear feedback (LFSR) is not suitable per se.
  • LFSR shift register with linear feedback
  • the present invention provides two methods which make it possible for the bit sequences supplied by the decoder to be supplied with decoded useful signal and redundancy check bits to an LFSR without first having to be buffered in a buffer memory ,
  • the delivered bit sequence can, for example, be such that although a first group of bits occurs in a suitable order, a second group of bits is not suitably positioned relative to the first group and is also an unsuitable, i.e. has inverse order. Accordingly, in a first method according to the invention it is provided that some of the bits are fed to the shift register from a front end and another part of the bits to the shift register from a rear end.
  • the bit order supplied can also be such that it is inverted overall compared to a bit order as would be required for a direct input into a conventional LFSR for the purpose of carrying out an ordinary polynomial division.
  • a second method according to the invention can be used, according to which - as will be explained in more detail below - the bits are either all inserted one after the other from behind into an essentially conventional LFSR with unchanged coefficient assignment of the multipliers, or the bits all in succession be inserted into an LFSR from the front in a conventional manner, but the coefficient assignment of the multipliers is inverted.
  • the bits can be supplied to the LFSR by suitable devices without using buffer memories. After the last bit of the data block has been inserted into the LFSR, the polynomial division is carried out in the LFSR and thus the cyclical redundancy check is carried out.
  • a device for carrying out the first method contains a distributor device which has an input and two outputs and a shift register with linear feedback, a first output of the
  • Distribution device is connected to a first input of the shift register and a second output of the distribution device is connected to a second input of the shift register.
  • the hard decision output values from the decoder are input into the input of the distribution device.
  • a control signal is fed to the distributor device, through which the data signals are fed to either the first or the second output.
  • the first input of the shift register is on one side of the shift register chain and carries the
  • the second method according to the invention assumes that the bit order supplied by the decoding process is inverted. Accordingly, the method provides for the bit sequence for the redundancy check to be fed to a shift register with linear feedback without using a distributor as described above, but either the bits to the shift register from its rear end with an unchanged order of the coefficient assignment feed the multiplier or feed the bits to the shift register from its front end, but invert the order of coefficient assignment of the multipliers.
  • the invention ensures that the bits supplied by a Viterbi decoder or another trellis-based decoder can be made available directly to the CRC checking process. These bits can be inserted immediately into the shift register of the CRC circuit and do not need to be buffered in a buffer memory provided for this purpose in order to be subsequently loaded into the shift register from this buffer memory. This means that there is no need to provide a buffer memory in terms of hardware, and the time required for storing the bits and calling them up from the memory can be saved.
  • the implementation of the present invention thus also means parallel processing of decoding and cyclical redundancy checking within a data block or a set of data blocks. If, for example, a Viterbi decoder or another trellis-based decoder ascertains the data sequence transmitted to the channel encoder recursively by means of a traceability operation, it can already forward the determined bits to the CRC checking circuit so that they can be inserted there into the shift register. If the trace bit of the Viterbi decoder causes the last bit of a
  • Fig.l shows a device for performing the first method with a shift register and an upstream distribution device
  • FIG. 2 shows a device for performing the second method with a conventional shift register with front-side bit feeding and inversion of the coefficient assignment.
  • Fig.l occur at the input of the CRC circuit, the decoded bits supplied by a Viterbi decoder operating according to an exact Viterbi traceback, as generated by the traceback operation for a transport block m.
  • the bits thus occur at the input as a result of their determination backwards in time in the decoder in the sequence p mX , ..., p mL , a, ⁇ , ..., a m ⁇ ,
  • the device according to the invention first has a distributor device 1, through which the bits are distributed to two different outputs D1 and D2.
  • a control signal ctrl is supplied to the distribution device 1 in order to switch the signal output between D1 and D2.
  • the outputs D1 and D2 of the distributor device 1 are each one with the front and the rear input Linear feedback shift registers (LFSR) 10 connected.
  • LFSR Linear feedback shift registers
  • the LFSR 10 has a number of memory cells 2, which store the value arriving at the input in each clock step and pass on the previously stored value at the output. Between the memory cell 2 with the designation S 2 and the memory cell 2 with the designation S L _ ⁇ shown at the right end of the shift register there can be further memory cells 2, as indicated by the points.
  • Each memory cell 2 has its own reset input, by means of which, for example, all memory cells 2 can be set to zero at the beginning of a processing process.
  • Exclusive-OR gates 3 are connected between the memory cells 2, by means of which the value of the respectively upstream memory cell 2 is added to the output value of multipliers 4.
  • the value at the input is multiplied by a coefficient g n from the quantity ⁇ 0.1 ⁇ and the product is output.
  • Coefficients g n correspond to the coefficients of the generator polynomial selected on the transmitter side.
  • the memory cells 2 are also connected to an OR gate 5.
  • the content of the memory cells 2 after the completion of the CRC check operation determines whether the polynomial division has yielded a remainder. If this is not the case and thus all memory cells 2 have the value zero, the OR gate 5 outputs the value zero at its output, so that it can be determined that the transfer of the data block was carried out correctly.
  • the CRC circuit also has contact switches 6 and 7, with which contact between the outermost memory cell 2 of the LFSR 10 and the input or output of the LFSR 10 can be established or interrupted.
  • the CRC circuit works as follows:
  • both contact switches 6 and 7 are set to switch position A, whereby the LFSR 10 is set up for shifting the bits from right to left.
  • the distributor device 1 activates the output D2 and deactivates the output Dl and is controlled accordingly by the control signal ctrl.
  • the CRC parity bits Pmi, ..., P m i first enter the LFSR 10 at its right input and are pushed through the LFSR 10 from right to left.
  • the output D1 of the distribution device 1 is activated and the output D2 is deactivated for the next A clock cycles.
  • the information bits a mA , ..., a m ⁇ are now inserted into the LFSR 10 from the left side and shifted from left to right, the feedback line of the LFSR 10 due to the switch position of the contact switch 7 in switch position B. is activated.
  • the switchover of the distribution device 1 to the output D1 has in turn been triggered by a corresponding control signal ztrl. 5.
  • the result of the CRC check of the checked data block is available at the output of the OR gate 5.
  • FIG. 2 shows an exemplary embodiment of a device for carrying out the second method according to the invention. This method is used when the bit order of the supplied bits is completely inverted from a bit order as would be required when using a conventional LFSR.
  • This device has a shift register 20 with linear feedback.
  • Exclusive-OR gates 3 are connected between the series-connected memory cells 2 with the designations S 0 to S L - ⁇ , the two inputs of which are each connected to the outputs of multipliers 4 and the outputs of the respective upstream memory cells 2.
  • a feedback line connected to the last memory cell S L - ⁇ is connected to all multipliers 4.
  • the first multiplier 4 is connected to a first exclusive-OR gate 3 connected in front of the first memory cell 2, the second input of which is supplied with the bit sequence supplied by the decoding process.
  • a bit sequence p mL , ..., p m ⁇ , a m a, ..., a ra ⁇ from A useful signal and L
  • Redundancy check bits is provided.
  • the coefficient assignment is such that the multiplier 4 loaded with the coefficient g L is connected to the first exclusive OR gate 3 on the input side and the multiplier 4 loaded with the coefficient g is connected to the last exclusive OR gate 3 on the output side and in the one in between Processing stages the coefficients are supplied to the multipliers 4 in the natural order of the indices. If this coefficient assignment is not already preset, it can be changed in the manner described by a device (not shown) connected to the shift register 20.
  • Decoding process with an order p mL , ..., p m i / a-nA, • • •, a ml from the bit sequence supplied from A useful signal and L redundancy check bits is mirror-symmetrical to the device shown in FIG. 2, with the bits from the right can be entered in an exclusive OR gate, which is linked with the
  • S L - X designated memory cell is connected.
  • the bits are shifted from right to left through the shift register.
  • the feedback line is connected on the left side to the output of the memory cell labeled S 0 .
  • the method according to the invention can be used particularly advantageously in connection with a special mode of the 3GPP standard, blind transport format detection (BTFD, Blind Transport Format Detection).
  • BTFD Blind Transport Format detection
  • This mode is based on the fact that both the size A of a transport block and the number M of transport blocks are dynamic quantities that can vary between the transmission time intervals (TTI, Transmission Time Interval).
  • TTI Transmission Time Interval
  • Transport format is transmitted. However, the recipient may also be asked to blindly detect the current transport format, which is done by performing the channel decoding and CRC decoding for a selected set of all possible transport formats of the transport format set.
  • An example of a BTFD mode algorithm is given in Appendix A of the 3GPP TS 25.212 standards "Channel Coding and Multiplexing" described. Since a plurality of traceback operations must therefore be carried out in the Viterbi decoder in this mode, each of which must be followed by CRC checks, it is particularly advantageous for this mode if the total process time for the channel and the CRC -Decoding can be reduced.

Abstract

Je nach der durch den Viterbi-Traceback gelieferten Reihenfolge der decodierten Nutzsignal- (am1, ..., amA) und Redundanzüberprüfungs-Bits (pm1, ..., pmL) werden diese entweder vermittels einer Verteilereinrichtung (1) teilweise von vorne und teilweise von hinten in ein Schieberegister mit linearer Rückkopplung (10) eingeführt, oder sie werden in ein Schieberegister mit linearer Rückkopplung (20) alle von hinten bei unveränderter Koeffizientenbelegung oder von vorne bei invertierter Koeffizientenbelegung eingeführt. Auf diese Weise kann in dem Schieberegister (10; 20) ohne Zwischenspeicherung der von dem Decodierprozess gelieferten Bits ein Redundanzüberprüfungsprozess eines übertragenen Datenblocks durchgeführt werden.

Description

Beschreibung
Parallelverarbeitung der Decodierung und der zyklischen Redundanzüberprüfung beim Empfang von Mobilfunksignalen
Die vorliegende Erfindung betrifft Verfahren zur Decodierung und zyklischen Redundanzüberprüfung von Mobilfunksignalen nach dem Oberbegriff der unabhängigen Patentansprüche und entsprechende Vorrichtungen zur Durchführung der erfindungsgemässen Verfahren.
Bei digitalen Datenübertragungen werden häufig zyklische Redundanzüberprüfungen zur Erfassung von Fehlern vorgenommen, die während des Datenübertragungsprozesses auftreten können. Dabei werden Datensignale blockweise übertragen und aus den Daten in jedem Block ein redundanter Code erzeugt und für eine Fehlererfassung oder Korrektur dem Block hinzugefügt . In den meisten Fällen wird aus den Nutzdaten in einem Block unter Verwendung eines vorbestimmten Algorithmus ein sogenannter CRC-Code (Cyclic Redundancy Check, zyklische Redundanzüberprüfung) als ein zyklischer redundanter Code hergeleitet . Die CRC-Codes werden durch Multiplikation einer Nutzdatensignalfolge mit einem sogenannten Generator-Polynom erzeugt . Nach dem Empfang des Codewortes wird dieses durch das Generator-Polynom geteilt. Falls das empfangene Codewort korrekt übertragen wurde, dann entsteht bei der Division kein Rest. Wenn umgekehrt bei der Division ein Rest ausgegeben wird, so wird festgestellt, dass die Übertragung fehlerhaft war.
Die zyklischen Codes wie die CRC-Codes sind vor allem deshalb für die Anwendung sehr interessant, weil die Multiplikation und Division von Polynomen mit Hilfe von sogenannten linearen rückgekoppelten Schieberegistern (LFSR, Linear Feedback Shift Register) relativ einfach realisiert werden kann. Durch die Multiplikation mit dem Generator-Polynom lassen sich also Codewörter generieren, durch die Division dieser Codewörter wird das ursprüngliche Informationswort wieder hergestellt und das Ergebnis gleichzeitig auf Fehler geprüft. Die U.S. -PS 5 748 652 beschreibt beispielsweise einen Schaltkreis für die zyklische Redundanzüberprüfung zum Detektieren und Korrigieren von Fehlern in einem Datenstrom. Dabei wird der Datenstrom im Empfänger in ein lineares rückgekoppeltes Schieberegister eingegeben, in welchem eine Division durch das Generator-Polynom realisiert wird. Wird ein gestörtes Codewort in dieser Schaltung dividiert, dann bleibt der bei der Division durch das Generator-Polynom entstehende Rest in den Speicherzellen des Schieberegisters stehen, nachdem das Codewort abgearbeitet ist. Nur wenn ein korrektes Codewort eingegeben wurde, ist der Wert in allen Speicherzellen nach der Division Null. Dieser Divisionsrest, der auch Syndrom(polynom) genannt wird, wird dann einem ODER-Glied zugeführt, dessen Ausgangssignal einem Decoder als AktivierungsSignal zugeführt wird. Das Syndrom wird dem Decoder zugeführt und im Falle der Aktivierung des Decoders in einer EXKLUSIV-ODER-Schaltung mit dem Eingangsdatenwort verknüpft und somit ein korrigierter Datenstrom erzeugt.
Um die Übertragungs- und Abhörsicherheit zu erhöhen, werden die zu übertragenden Daten senderseitig einem Kanalcodierungsverfahren unterzogen, bei welchem den zu übertragenden Daten gezielt Redundanz hinzugefügt wird. Wird als Codierungsverfahren die sogenannte Faltungscodierung eingesetzt, bei welcher die Redundanz kontinuierlich durch Verknüpfung (Faltung) der Information gebildet wird, so wird empfangsseitig im Decoder in der Regel der effiziente Viterbi-Algorithmus eingesetzt. Es hat sich gezeigt, dass eine geringe Fehlerrate erzielt werden kann, indem zuerst ein CRC-Blockcodierungsprozess ausgeführt wird, woraufhin mit den blockcodierten Daten ein Faltungscodierungsprozess ausgeführt wird. Bei einem derartigen verketteten Kanalcodierverfahren • werden in der Regel zuerst der zu übertragenden Information einige CRC-Bits mittels eines Blockcodes hinzugefügt. Anschließend wird die so codierte Information mittels eines Faltungscodierers codiert. Auf der Empfangsseite wird dann in einem Decodierer mittels des Viterbi-Rückführungsalgorithmus ("Traceback") rekursiv auf die dem Faltungscodierer auf der Senderseite zugeführte Datenfolge geschlossen.
Im Folgenden werden die in dem 3GPP-UMTS-Standard TS 25.212 festgelegten Verarbeitungsschritte näher erläutert. Auf der Senderseite wird für jeden Transportblock eines Satzes von Transportblöcken jeweils gleicher Größe ein CRC-Code angefügt. Hierfür stehen im CRC-Code-Generator vier
Generator-Polynome mit den Polynomgraden 8, 12, 16 und 24 zur Verfügung, welche wie folgt darstellbar sind:
(1) gcRC8(D) = 1 + D + D3 + D4 + D7 + D8, (2) gCRci2(D) = 1 + D + D2 + D3 + D11 + D12,
(3) gCRcιs(D) = 1 + D5 + D12 + D16,
(4) gCRC24(D) = 1 + D + D5 + Ds + D23 + D24.
Die Auswahl eines dieser Polynome wird durch Entscheidung einer höheren physikalischen Ebene auf der Senderseite festgelegt .
Ausgehend von dem m-ten Transportblock (eines Satzes von Transportblöcken) als Vektor der Bit -Länge A
5) am — (amι, am , ... , a,^) ,
wird gemäß dem oben genannten Standard eine systematische CRC-Codierung derart durchgeführt, dass das Polynom
( 6 ) zm (D) = pmL + Pm ( -i) D + . . . + PmiD11"1 + a^D11 + . . . am2DA+L_2 +
einen Rest gleich 0 aufweist, wenn es durch das Generator- Polynom g(D) geteilt wird. Die Bits in dem Nutzsignalvektor am und die dem Restpolynom ( 7 ) pm (D) = pmIj + pm ( -i) D + . . . + PmiDL"x
entsprechenden Bits werden auf einen Vektor bm wie folgt abgebildet :
(8) bm = (bmι, bm2, ■ • • / bm(A+ )) = (aml, ... , 3-vaA ι Pm / ■ - • / Pml)
Dabei ist festzustellen, dass dasjenige Bit, welches dem höchsten Exponenten in Gl . (6) entspricht, im Vektor bm an der geringwertigsten Stelle erscheint. Die Nutzsignal-Bits erscheinen auf den geringerwertigen Positionen in dem Vektor bm und die CRC-Paritäts-Bits erscheinen dagegen auf den höherwertigen Positionen. Die CRC-Partitäts-Bits werden jedoch auf dem Vektor bm in ihrer natürlichen Reihenfolge abgebildet, d.h. die Koeffizienten, die den niedrigen
Exponenten in dem Restpolynom entsprechen, werden auf den geringerwertigen Positionen von bm abgebildet. Insbesondere wird der Koeffizient pmχ, der dem höchsten Exponenten in dem Restpolynom entspricht, auf der bedeutensten Bit-Position von bm abgebildet.
Anschließend wird eine Anzahl von solchermaßen mit CRC- Paritäts-Bits versehenen M Transportblöcken miteinander verkettet und an den Kanalcodierer geliefert.
Die empfängerseitige Durchführung der Kanaldecodierung kann auf verschiedene Arten durchgeführt werden. Bei dem bekannten „sliding-window-Verfahren" werden die Datensignale eines Blocks in der Reihenfolge wiedergewonnen, wie sie senderseitig dem Faltungscodierer zugeführt worden waren. Bei der von der Anmelderin bevorzugten sogenannten exakten Viterbi-Traceback-Operation, bei welcher der Viterbi-Decoder die Traceback-Daten über den gesamten Trellis abspeichert, werden dagegen die Datensignale eines Blocks in der umgekehrten Reihenfolge wiedergewonnen, wie sie senderseitig dem Faltungscodierer zugeführt worden waren, d.h. in der auf der rechten Seite der Gl.(8) angegebenen Reihenfolge. Das Problem ist nun, dass die in dieser Reihenfolge auftretenden Nutzsignal-Bits und Paritäts-Bits nicht unmittelbar einem konventionellen, aus einem Schieberegister mit linearer Rückkoppelung aufgebauten CRC-Fehlerermittlungsschaltkreis zugeführt werden können. Aus diesem Grund wird die bei dem Viterbi-Traceback anfallende sogenannte Hard-Decision-Sequenz aus zurückgewonnenen Signaldaten entsprechend dem Vektor bm zunächst für einen Block oder für den kompletten Satz von zusammengefassten Blöcken in einem Pufferspeicher abgespeichert . Anschließend werden die Datensignale aus dem Pufferspeicher in der richtigen Reihenfolge abgerufen und in das Schieberegister des CRC-Fehlerermittlungsschaltkreises geschoben. Das Zwischenspeichern der Werte ist einerseits hardwaremässig aufwendig, da entsprechender Speicherplatz zur Verfügung gestellt werden muss und andererseits ist es mit Zeitaufwand verbunden, da die Daten in den Speicher abgelegt und aus diesem wieder aufgerufen werden müssen.
Das beschriebene Erfordernis der Zwischenspeicherung vor der Durchführung der Redundanzüberprüfung aufgrund der dem
Decodierprozess entnommenen Bitreihenfolge kann jedoch ebenso auftreten, wenn als Viterbi-Traceback das oben genannte „sliding- indow"-Verfahren angewandt wird. Auch in diesem Fall kann es gegeben sein, dass die Paritäts- oder Redundanzüberprüfungsbits auf eine Weise dem Datenblock hinzugefügt werden bzw. empfangsseitig von dem Decodier- Prozess geliefert werden, dass die Bitreihenfolge es nicht gestattet, die Nutzdaten- und Paritätsbits direkt dem Schieberegister mit linearer Rückkopplung zur Polynomdivision zuzuführen.
Des Weiteren kann der Fall auftreten, dass die von dem Decodierprozess gelieferte Bitreihenfolge vollständig invers zu der Reihenfolge von Bits ist, in der diese einem konventionellen Schieberegister für eine zyklische
Redundanzüberprüfung zuzuführen wären, um eine korrekte Polynomdivision durchzuführen. Auch hier werden die Bits deshalb erst in aufwendiger Weise in einem Pufferspeicher zwischengespeichert .
Es ist demgemäß Aufgabe der vorliegenden Erfindung, an die von dem Decodierprozess gelieferten Reihenfolge von Nutzdaten- und Paritätsbits angepasste Verfahren zur zyklischen Redundanzüberprüfung von Mobilfunksignalen und entsprechende Vorrichtungen zur Durchführung der Verfahren anzugeben, durch welche der Implementierungsaufwand reduziert und die Latenzzeit verringert werden und im Prinzip eine Parallelverarbeitung zwischen Decodierung und zyklischer Redundanzüberprüfung ermöglicht werden kann. Insbesondere ist es Aufgabe der vorliegenden Erfindung, die bei der Decodierung ermittelten Datensignale unmittelbar und ohne Zwischenspeicherung einem Schieberegister für die zyklische Redundanzüberprüfung zuzuführen.
Diese Aufgabe wird durch die kennzeichnenden Merkmale der unabhängigen Patentansprüche gelöst. Vorteilhafte Weiterbildungen und Ausgestaltungen sind in den Unteransprüchen angegeben. Weiterhin sind in den Patentansprüchen Vorrichtungen zur Durchführung der erfindungsgemässen Verfahren angegeben.
Die erfindungsgemäßen Verfahren zur zyklischen
Redundanzüberprüfung von Mobilfunksignalen nach den unabhängigen Patentansprüchen gehen von der an sich bekannten Situation aus, in welcher blockweise jeweils eine Nutzsignal- Bitfolge und eine Redundanzüberprüfungs-Bitfolge wie eine CRC-Bitfolge senderseitig erzeugt und einem Kanalcodierer zugeführt werden, wobei empfangsseitig die Bitfolgen in einem Decodierer decodiert werden, welcher die dem Kanalcodierer zugeführte Sequenz ermittelt und die ermittelten Werte derart ausgibt, dass die Bitreihenfolge für die unmittelbare Durchführung einer zyklischen Redundanzüberprüfung, d.h. für die unmittelbare Eingabe der ermittelten Bits in ein dafür vorgesehenes Schieberegister mit linearer Rückkopplung (LFSR) an sich nicht geeignet ist.
Je nach der von dem Decodierprozess gelieferten Bitreihenfolge stellt die vorliegende Erfindung zwei Verfahren bereit, die es ermöglichen, dass die von dem Decodierer gelieferten Bitfolgen decodierter Nutzsignal- und Redundanzüberprüfungs-Bits einem LFSR zugeführt werden können, ohne dass sie zuvor in einem Pufferspeicher zwischengespeichert werden müssen.
Die gelieferte Bitreihenfolge kann beispielsweise derart sein, dass zwar eine erste Gruppe von Bits in einer geeigneten Reihenfolge auftritt, eine zweite Gruppe von Bits jedoch relativ zur ersten Gruppe nicht geeignet positioniert ist und in zudem in sich eine ungeeignete, d.h. inverse Reihenfolge aufweist. Demzufolge ist in einem ersten erfindungsgemässen Verfahren vorgesehen, einen Teil der Bits dem Schieberegister von einem vorderen Ende und einen anderen Teil der Bits dem Schieberegister von einem hinteren Ende zuzuführe .
Die gelieferte Bitreihenfolge kann auch derart sein, dass sie gegenüber einer Bitreihenfolge, wie sie für eine direkte Eingabe in ein konventionelles LFSR zwecks Durchführung einer gewöhnlichen Polynomdivision benötigt würde, insgesamt invertiert ist. In diesem Fall kann ein zweites erfindungsgemässes Verfahren angewandt werden, nach welchem - wie weiter unten noch im Detail ausgeführt werden wird - die Bits entweder alle nacheinander von hinten in ein im wesentlichen herkömmliches LFSR bei unveränderter Koeffizientenbelegung der Multiplikatoren eingeschoben werden, oder die Bits alle nacheinander von vorne in herkömmlicher Weise in ein LFSR eingeschoben werden, jedoch die Koeffizientenbelegung der Multiplikatoren invertiert wird. In beiden genannten Fällen können die Bits durch geeignete Vorrichtungen ohne Verwendung von Pufferspeichern dem LFSR zugeführt werden. Nach dem Einschieben des letzten Bits des Datenblocks in das LFSR ist die Polynomdivision in dem LFSR und somit die zyklische Redundanzüberprüfung durchgeführt.
Eine Vorrichtung zur Durchführung des ersten Verfahrens enthält eine Verteilereinrichtung, welche einen Eingang und zwei Ausgänge aufweist und ein Schieberegister mit linearer Rückkoppelung, wobei ein erster Ausgang der
Verteilereinrichtung mit einem ersten Eingang des Schieberegisters und ein zweiter Ausgang der Verteilereinrichtung mit einem zweiten Eingang des Schieberegisters verbunden ist. In den Eingang der Verteilereinrichtung werden die Hard-Decision-Output-Werte aus dem Decodierer eingegeben. Der Verteilereinrichtung wird ein Kontrollsignal zugeführt, durch welches die Datensignale entweder dem ersten oder dem zweiten Ausgang zugeführt werden. Der erste Eingang des Schieberegisters befindet sich auf einer Seite der Schieberegisterkette und führt die
Datensignale auf dieser Seite dem Schieberegister zu, während der zweite Eingang des Schieberegisters sich auf der anderen Seite der Schieberegisterkette befindet und Datensignale auf dieser Seite dem Schieberegister zuführt. An beiden Eingängen des Schieberegisters befinden sich KontaktSchalter, die geöffnet oder geschlossen werden können, um wahlweise Signal- Bits durch den ersten Eingang oder durch den zweiten Eingang in das Schieberegister zu schieben.
Das zweite erfindungsgemässe Verfahren geht davon aus, dass die von dem Decodierprozess gelieferte Bitreihenfolge invertiert ist. Demzufolge sieht das Verfahren vor, die Bitfolge für die Redundanzüberprüfung einem Schieberegister mit linearer Rückkoppelung ohne Verwendung einer wie oben beschriebenen Verteilereinrichtung zuzuführen, jedoch entweder die Bits dem Schieberegister von seinem hinteren Ende bei unveränderter Reihenfolge der Koe fizientenbelegung der Multiplizierer zuzuführen oder die Bits dem Schieberegister von seinem vorderen Ende zuzuführen, jedoch die Reihenfolge der Koeffizientenbelegung der Multiplizierer zu invertieren.
Durch die Erfindung nach ihren beiden Aspekten wird erreicht, dass die von einem Viterbi-Decodierer oder einem anderen trellisbasierten Decodierer gelieferten Bits unmittelbar dem CRC-Überprüfungsprozess bereitgestellt werden können. Diese Bits können sofort in das Schieberegister des CRC- Schaltkreises eingeschoben werden und brauchen nicht in einem eigens dafür vorgesehenen Pufferspeicher zwischengespeichert werden, um anschließend aus diesem Pufferspeicher in das Schieberegister geladen zu werden. Somit kann auf die hardwaremäßige Bereitstellung eines Pufferspeichers verzichtet werden und es kann die für das Abspeichern der Bits und deren Aufruf aus dem Speicher benötigte Zeit eingespart werden.
Die Implementierung der vorliegenden Erfindung bedeutet somit auch eine Parallelverarbeitung von Decodierung und zyklischer Redundanzüberprüfung innerhalb eines Datenblocks oder eines Satzes von Datenblöcken. Wenn also beispielsweise ein Viterbi-Decodierer oder ein anderer trellisbasierter Decodierer durch eine Rückverfolgungs-Operation die dem Kanalcodierer übermittelte Datenfolge rekursiv ermittelt, kann er die ermittelten Bits bereits an den CRC- Überprüfungsschaltkreis weiter liefern, damit diese dort in das Schieberegister eingeschoben werden können. Wenn durch den Traceback des Viterbi-Decodierers das letzte Bit eines
Datenblocks ermittelt und an den CRC-Decodierer weitergeleitet worden ist, so sind die bereits vorher ermittelten Bits bereits in dem Schieberegister auf die entsprechenden Plätze geschoben worden und nach Einschieben des letzten Bits kann unmittelbar das Ergebnis des CRC- Überprüfungsprozesses durch das ODER-Glied ausgegeben werden. Durch diese Art der Parallelverarbeitung kann somit weitere Prozesszeit auf der Empfangsseite eingespart werden.
Im Folgenden werden die beiden Aspekte des erfindungsgemässen Verfahrens anhand von zwei entsprechenden Ausführungsbeispielen für entsprechende Vorrichtungen in Verbindung mit den Zeichnungsfiguren näher erläutert.
Es zeigen :
Fig.l eine Vorrichtung zur Durchführung des ersten Verfahrens mit einem Schieberegister und einer vorgeschalteten Verteilereinrichtung;
Fig.2 eine Vorrichtung zur Durchführung des zweiten Verfahrens mit einem konventionellen Schieberegister mit vorderseitiger BitZuführung und Invertierung der Koeffizientenbelegung .
Entsprechend Fig.l treten am Eingang des CRC-Schaltkreises die von einem nach einem exakten Viterbi-Traceback arbeitenden Viterbi-Decodierer gelieferten decodierten Bits auf, wie sie durch die Traceback-Operation für einen Transportblock m erzeugt werden. Wie aus der obigen Gleichung (8) deutlich wird, treten die Bits somit am Eingang infolge ihrer zeitlich rückwärts gerichteten Ermittlung im Decodierer in der Sequenz pmX, ... , pmL, a,^, ... , amι auf.
Die erfindungsgemäße Vorrichtung weist als erstes eine Verteilereinrichtung 1 auf, durch die die Bits auf zwei verschiedene Ausgänge Dl und D2 verteilt werden. Der Verteilereinrichtung 1 wird ein Kontrollsignal ctrl zugeführt, um den Signalausgang zwischen Dl und D2 umzuschalten.
Die Ausgänge Dl und D2 der Verteilereinrichtung 1 sind jeweils mit dem vorderen und dem hinteren Eingang eines Schieberegisters mit linearer Rückkoppelung (LFSR) 10 verbunden. Mit dem LFSR 10 wird in an sich bekannter Weise eine Polynom-Division durchgeführt, um zu überprüfen, ob der Datenblock korrekt übertragen wurde. Das LFSR 10 weist eine Anzahl Speicherzellen 2 auf, welche in jedem Taktschritt den am Eingang ankommenden Wert speichern und den zuvor gespeicherten Wert am Ausgang weitergeben. Zwischen der Speicherzelle 2 mit der Bezeichnung S2 und der am rechten Ende des Schieberegisters gezeigten Speicherzelle 2 mit der Bezeichnung SL_ι können sich - wie durch die Punkte angedeutet ist - weitere Speicherzellen 2 befinden. Jede Speicherzelle 2 weist einen eigenen Rücksetzeingang auf, durch den beispielsweise am Beginn eines Verarbeitungsprozesses sämtliche Speicherzellen 2 auf Null gesetzt werden können. Zwischen den Speicherzellen 2 sind Exklusiv-ODER-Glieder 3 geschaltet, durch die der Wert der jeweils vorgeschalteten Speicherzelle 2 mit dem Ausgangswert von Multiplizierern 4 addiert wird. In den Multiplizierern 4 wird der am Eingang anliegende Wert mit einem Koeffizienten gn aus der Menge {0,1} multipliziert und das Produkt wird ausgegeben. Die
Koeffizienten gn entsprechen den Koeffizienten des senderseitig ausgewählten Generator-Polynoms . Die Speicherzellen 2 sind weiterhin mit einem ODER-Glied 5 verbunden. Wie eingangs anhand der US-PS-5 748 652 erläutert, wird durch den Inhalt der Speicherzellen 2 nach Abschluss der CRC-Überprüfungsoperation bestimmt, ob die Polynom-Division einen Rest ergeben hat . Wenn dies nicht der Fall ist und somit alle Speicherzellen 2 den Wert Null aufweisen, so gibt das ODER-Glied 5 an seinem Ausgang den Wert Null aus, so dass die Feststellung getroffen werden kann, dass die Übertragung des Datenblocks korrekt durchgeführt wurde. Andernfalls, d.h. wenn auch nur eine der Speicherzellen 2 den Wert 1 aufweist, so ist der Rest der Polynom-Division ungleich 0 und das ODER- Glied 5 gibt an seinem Ausgang den Wert 1 aus, so dass eine fehlerbehaftete Datenübertragung festgestellt wird. Der CRC-Schaltkreis weist zudem Kontaktschalter 6 und 7 auf, mit welchen ein Kontakt der jeweils äußersten Speicherzelle 2 des LFSR 10 mit dem Ein- bzw. Ausgang des LFSR 10 hergestellt oder unterbrochen werden kann.
Die Arbeitsweise des CRC-Schaltkreises ist wie folgt:
1. Zunächst werden beide Kontaktschalter 6 und 7 auf die Schalterposition A gestellt, womit der LFSR 10 für das Verschieben der Bits von rechts nach links eingerichtet wird.
2. Für die ersten L Taktzyklen aktiviert die Verteilereinrichtung 1 den Ausgang D2 und deaktiviert den Ausgang Dl und wird durch das Kontrollsignal ctrl entsprechend gesteuert. Somit treten zuerst die CRC- Paritäts-Bits Pmi, ... , Pmi, in den LFSR 10 an dessen rechtem Eingang ein und werden von rechts nach links durch den LFSR 10 durchgeschoben.
Dann werden die Kontaktschalter 6 und 7 auf die Kontaktposition B gestellt, so dass der LFSR 10 dafür eingerichtet wird, die Datenbits nunmehr von links nach rechts zu verschieben.
4. Dann wird der Ausgang Dl der Verteilereinrichtung 1 aktiviert und der Ausgang D2 wird deaktiviert für die nächsten A Taktzyklen. Damit werden nun die Informations- Bits amA, ..., amι von der linken Seite in den LFSR 10 eingeschoben und in diesem von links nach rechts verschoben, wobei infolge der Schalterstellung des Kontaktschalters 7 auf Schalterposition B die Rückkoppelungsleitung des LFSR 10 aktiviert ist. Die Umschaltung der Verteilereinrichtung 1 auf den Ausgang Dl ist wiederum von einem entsprechenden Kontrollsignal ztrl veranlasst worden. 5. Nachdem die Informations-Bits eingeschoben worden sind, ist das Resultat der CRC-Überprüfung des überprüften Datenblocks an dem Ausgang des ODER-Gliedes 5 erhältlich.
6. Falls der Code-Block mehr als einen Transportblock enthält, wird wieder bei 1. begonnen.
In der Fig.2 ist ein Ausführungsbeispiel für eine Vorrichtung zur Durchführung des zweiten erfindungsgemässen Verfahrens dargestellt. Dieses Verfahren kommt dann zur Anwendung, wenn die Bitreihenfolge der gelieferten Bits vollständig invertiert gegenüber einer Bitreihenfolge ist, wie sie bei Verwendung eines konventionellen LFSR benötigt werden würde.
Diese Vorrichtung weist ein Schieberegister 20 mit linearer Rückkopplung auf. Zwischen den hintereinander geschalteten Speicherzellen 2 mit den Bezeichnungen S0 bis SL-ι sind Exklusiv-ODER-Glieder 3 geschaltet, deren zwei Eingänge jeweils mit den Ausgängen von Multiplizierern 4 und den Ausgängen der jeweils vorangeschalteten Speicherzellen 2 verbunden sind. Eine mit der letzten Speicherzelle SL-ι verbundene Rückkoppelungsleitung ist mit allen Multiplizierern 4 verbunden. Der erste Multiplizierer 4 ist mit einem ersten, vor der ersten Speicherzelle 2 geschalteten Exklusiv-ODER-Glied 3 verbunden, deren zweitem Eingang die von dem Decodier-Prozess gelieferte Bitfolge zugeführt wird. In dem gezeigten Ausführungsbeispiel wird angenommen, dass von dem Decodier-Prozess eine Bitreihenfolge pmL, ..., pmι, ama, ... , araι aus A Nutzsignal- und L
Redundanzüberprüfungsbits geliefert wird. Die Koeffizientenbelegung ist derart, dass der mit dem Koeffizienten gL beaufschlagte Multiplizierer 4 mit dem ersten eingangsseitigen Exklusiv-ODER-Glied 3 verbunden ist und der mit dem Koeffizienten g beaufschlagte Multiplizierer 4 mit dem letzten ausgangsseitigen Exklusiv-ODER-Glied 3 verbunden ist und in den dazwischen liegenden Verarbeitungsstufen die Koeffizienten in der natürlichen Reihenfolge der Indizes den Multiplizierern 4 zugeführt werden. Falls diese Koeffizientenbelegung nicht bereits voreingestellt ist, kann sie durch eine nicht dargestellte, mit dem Schieberegister 20 verbundene Einrichtung in der beschriebenen Weise verändert werden.
Eine alternative, im Grunde genommen der in Fig.2 gezeigten Vorrichtung äquivalente Vorrichtung zur Durchführung des zweiten Verfahrens unter der Annahme einer von dem
Decodierprozess mit einer Reihenfolge pmL, ... , pmi/ a-nA, • • • , aml aus A Nutzsignal- und L Redundanzüberprüfungsbits gelieferten Bitreihenfolge ist spiegelsymmetrisch zu der in Fig.2 gezeigten Vorrichtung, wobei die Bits von rechts in ein Exklusiv-ODER-Glied eingegeben werden, welches mit der mit
SL-X bezeichneten Speicherzelle verbunden ist. Die Bits werden von rechts nach links durch das Schieberegister geschoben. Die Rückkopplungsleitung ist auf der linken Seite mit dem Ausgang der mit S0 bezeichneten Speicherzelle verbunden.
Das erfindungsgemäße Verfahren lässt sich besonders vorteilhaft in Verbindung mit einem speziellen Modus des 3GPP-Standards, der blinden Transportformatdetektion (BTFD, Blind Transport Format Detection) anwenden. Dieser Modus beruht darauf, dass sowohl die Größe A eines Transportblocks als auch die Anzahl M von Transportblöcken dynamische Größen sind, die zwischen den Übertragungszeitintervallen (TTI, Transmission Time Interval) variieren können. Für gewöhnlich sind dem Empfänger diese Parameter bekannt, da auf einem Kontrollkanal das von dem Sender ausgewählte aktuelle
Transportformat übermittelt wird. Es kann jedoch auch die Aufforderung an den Empfänger ergehen, das aktuelle Transportformat blind zu detektieren, welches dadurch geschieht, dass die Kanaldecodierung und die CRC-Decodierung für einen ausgewählten Satz aller möglicher Transportformate des Transportformatsatzes durchgeführt wird. Ein Beispiel für einen Algorithmus des BTFD-Modus ist in dem Anhang A des Standards 3GPP TS 25.212 "Channel Coding and Multiplexing" beschrieben. Da somit in diesem Modus eine Mehrzahl von Traceback-Operationen in dem Viterbi-Decodierer durchgeführt werden müssen, die jeweils durch CRC-Überprüfungen gefolgt werden müssen, ist es gerade für diesen Modus von größtem Vorteil, wenn die Gesamtprozessdauer für die Kanal- und die CRC-Decodierung verringert werden kann.

Claims

Patentansprüche
1. Verfahren zur zyklischen Redundanzüberprüfung empfangener und decodierter Mobilfunksignale, welche einen CRC-Code enthalten, bei welchem Verfahren
- ein von einem Decodierprozess gelieferter Datenblock enthaltend Nutzsignal- (amι, ... , a,^) und
Redundanzüberprüfungs-Bits (pm_, ..., PI_L) für die zyklische Redundanzüberprüfung einem Schieberegister mit linearer Rückkopplung zugeführt wird, d a d u r c h g e k e n n z e i c h n e t, dass
- ein Teil der Bits dem Schieberegister von einem vorderen Ende und ein anderer Teil der Bits dem Schieberegister von einem hinteren Ende zugeführt werden.
2. Verfahren nach Anspruch 1, d a d u r c h g e k e n n z e i c h n e t, dass
- die Bits einer Verteilereinrichtung (1) zugeführt werden, welche zwei Ausgänge (Dl, D2) aufweist, welche jeweils mit dem vorderen und dem hinteren Ende des Schieberegisters
(10) verbunden sind, wobei
- die Verteilereinrichtung (1) durch ein Kontrollsignal (ctrl) gesteuert wird, um die Ausgänge (Dl, D2) zu aktivieren oder zu deaktivieren.
3. Verfahren nach Anspruch 1 oder 2 , d a d u r c h g e k e n n z e i c h n e t, dass
- eine erste zusammenhängende Gruppe der gelieferten Bits am hinteren Ende in das Schieberegister (10) eingeschoben werden, und
- eine zweite zusammenhängende Gruppe der bereitgestellten Bits am vorderen Ende in das Schieberegister (10) eingeschoben werden.
4. Verfahren nach Anspruch 3, d a d u r c h g e k e n n z e i c h n e t, dass - die von dem Decodierprozess gelieferten Bits die Bitreihenfolge pmι, ..., pmL, a,^, ..., ami aufweist, und
- die erste Gruppe der gelieferten Bits, nämlich die Redundanzüberprüfungs-Bits (pmι, ... , pmL) , am hinteren Ende in das Schieberegister (10) eingeschoben werden, und anschliessend
- die zweite Gruppe der bereitgestellten Bits, nämlich die Nutzsignal-Bits (aml, ... , aπ^) , am vorderen Ende in das Schieberegister (10) eingeschoben werden.
5. Verfahren nach Anspruch 2 , d a d u r c h g e k e n n z e i c h n e t, dass
- bei Aktivierung der Ausgänge (Dl, D2) diese durch Öffnen oder Schließen von KontaktSchaltern (6, 7) mit dem vorderen oder dem hinteren Ende des Schieberegisters gekoppelt werden .
6. Verfahren nach Anspruch 5 , d a d u r c h g e k e n n z e i c h n e t, dass - beim Schließen eines mit einem ersten Ausgang (Dl) der Verteilereinrichtung (1) verbundenen ersten Kontaktschalters (6) gleichzeitig ein mit einem zweiten Ausgang (D2) der Verteilereinrichtung (1) verbundener zweiter Kontaktschalter (7) geöffnet wird und gleichzeitig durch den zweiten Kontaktschalter (7) das hintere Ende des Schieberegisters mit einem zwischen dem ersten Ausgang (Dl) und dem ersten KontaktSchalter (6) angeordneten Exklusiv- ODER-Glied (3) verbunden wird.
7. Verfahren zur zyklischen Redundanzüberprüfung empfangener und decodierter Mobilfunksignale, welche einen CRC-Code enthalten, bei welchem Verfahren
- ein von einem Decodierprozess gelieferter Datenblock enthaltend Nutzsignal- (amι, ... , aπή) und Redundanzüberprüfungs-Bits (pmι, ..., pmι,) für die zyklische Redundanzüberprüfung einem Schieberegister mit linearer Rückkopplung zugeführt wird, d a d u r c h g e k e n n z e i c h n e t, dass
- die Bits dem ersten Eingang eines ersten Exklusiv-ODER- Glieds (3) zugeführt werden, dessen zweiter Eingang mit dem Ausgang eines mit dem Koeffizienten gL des CRC- Generatorpolynoms beaufschlagten Multiplizierers (4) verbunden ist, und
- der Ausgang des ersten Exklusiv-ODER-Glieds (3) mit dem Eingang einer ersten eingangsseitigen Speicherzelle (2) verbunden ist, und in nachfolgenden Verarbeitungsstufen die Ausgänge der Speicherzellen (2) mit ersten Eingängen von Exklusiv-ODER-Gliedern (3) verbunden sind, deren zweite Eingänge mit Ausgängen von Multiplizierern (4) verbunden sind, die mit den Koeffizienten gL-ι, g_,-_, •••/ gi in dieser Reihenfolge beaufschlagt werden, und - der Ausgang einer letzten ausgangsseitigen Speicherzelle (2) mit einer Rückkopplungsschleife verbunden ist, welche mit den Eingängen der Multiplizierer (4) verbunden ist.
8. Verfahren nach Anspruch 7 , d a d u r c h g e k e n n z e i c h n e t, dass
- die von dem Decodierprozess gelieferten Bits die Bitreihenfolge pmL, ... , pmι, a^, ... , aml aufweist.
9. Vorrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 6, g e k e n n z e i c h n e t d u r c h
- eine Verteilereinrichtung (1) , welche einen Eingang und zwei Ausgänge (Dl, D2) aufweist, und
- ein Schieberegister (10) mit linearer Rückkoppelung, wobei - ein erster Ausgang (Dl) der Verteilereinrichung (1) mit einem ersten Eingang des Schieberegisters (10) verbunden ist und ein zweiter Ausgang (D2) der Verteilereinrichtung (1) mit einem zweiten Eingang des Schieberegisters (10) verbunden ist .
10. Vorrichtung nach Anspruch 9, d a d u r c h g e k e n n z e i c h n e t, dass - zwischen dem ersten Ausgang (Dl) der Verteilereinrichtung (1) und dem ersten Eingang des Schieberegisters (10) ein Kontaktschalter (6) geschaltet ist, und
- zwischen dem zweiten Ausgang (D2) der Verteilereinrichtung (1) und dem zweiten Eingang des Schieberegisters (10) ein zweiter Kontaktschalter (7) geschaltet ist.
11. Vorrichtung nach Anspruch 10, d a d u r c h g e k e n n z e i c h n e t, dass - der zweite Kontaktschalter (7) in einer ersten
Schalterstellung (A) den zweiten Ausgang (D2) der Verteilereinrichtung (1) mit dem zweiten Eingang des Schieberegisters (10) verbindet und in einer zweiten Schalterstellung (B) den zweiten Eingang des Schieberegisters (10) mit einem zwischen dem ersten Ausgang (Dl) der Verteilereinrichtung (1) und dem ersten Kontaktschalter (6) geschalteten Exlusiv-ODER-Glied (3) verbindet .
12. Vorrichtung nach einem der Ansprüche 9 bis 11, d a d u r c h g e k e n n z e i c h n e t, dass die Speicherzellen (2) des Schieberegisters mit einem ODER- Glied (5) verbunden sind.
13. Vorrichtung zur Durchführung des Verfahrens nach Anspruch 7 oder 8 , g e k e n n z e i c h n e t d u r c h
- ein Schieberegister (20) mit linearer Rückkoppelung, welches eine Anzahl hintereinander geschalteter Speicherzellen (2) aufweist, zwischen denen jeweils
Exklusiv-ODER-Glieder (3) geschaltet sind, deren Ausgänge mit der jeweils nachgeschalteten Speicherzelle (2) verbunden sind und deren jeweils zwei Eingänge mit dem Ausgang der jeweils vorgeschalteten Speicherzelle (2) und dem Ausgang eines Multiplizierers (4) verbunden sind, wobei mit dem Ausgang der letzten Speicherzelle (2) eine Rückkopplungsleitung verbunden ist, die mit den Eingängen der Multiplizierer (4) verbunden ist, wobei der mit dem Koeffizienten gL beaufschlagte Multiplizierer (4) mit dem ersten eingangsseitigen Exklusiv-ODER-Glied (3) verbunden ist und der mit dem Koeffizienten gx beaufschlagte Multiplizierer (4) mit dem letzten ausgangsseitigen Exklusiv-ODER-Glied (3) verbunden ist.
PCT/DE2003/002111 2002-08-23 2003-06-25 Parallelverarbeitung der decodierung und der zyklischen redundanzüberprüfung beim empfang von mobilfunksignalen WO2004021630A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/063,949 US7461324B2 (en) 2002-08-23 2005-02-23 Parallel processing for decoding and cyclic redundancy checking for the reception of mobile radio signals

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10238841.5 2002-08-23
DE10238841A DE10238841B4 (de) 2002-08-23 2002-08-23 Parallelverarbeitung der Decodierung und der zyklischen Redundanzüberprüfung beim Empfang von Mobilfunksignalen

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/063,949 Continuation US7461324B2 (en) 2002-08-23 2005-02-23 Parallel processing for decoding and cyclic redundancy checking for the reception of mobile radio signals

Publications (1)

Publication Number Publication Date
WO2004021630A1 true WO2004021630A1 (de) 2004-03-11

Family

ID=31501911

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2003/002111 WO2004021630A1 (de) 2002-08-23 2003-06-25 Parallelverarbeitung der decodierung und der zyklischen redundanzüberprüfung beim empfang von mobilfunksignalen

Country Status (4)

Country Link
US (1) US7461324B2 (de)
CN (1) CN100508440C (de)
DE (1) DE10238841B4 (de)
WO (1) WO2004021630A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601913B (zh) * 2003-09-23 2010-04-28 旺宏电子股份有限公司 平行化循环冗余码计算方法及系统
WO2010144539A1 (en) 2009-06-09 2010-12-16 Microchip Technology Incorporated Programmable crc unit

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7712009B2 (en) * 2005-09-21 2010-05-04 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US7802166B2 (en) * 2006-09-27 2010-09-21 Qimonda Ag Memory controller, memory circuit and memory system with a memory controller and a memory circuit
US7836386B2 (en) 2006-09-27 2010-11-16 Qimonda Ag Phase shift adjusting method and circuit
US8379738B2 (en) * 2007-03-16 2013-02-19 Samsung Electronics Co., Ltd. Methods and apparatus to improve performance and enable fast decoding of transmissions with multiple code blocks
US8386878B2 (en) 2007-07-12 2013-02-26 Samsung Electronics Co., Ltd. Methods and apparatus to compute CRC for multiple code blocks
US7853857B2 (en) 2007-09-14 2010-12-14 Motorola Mobility, Inc. Multi-layer cyclic redundancy check code in wireless communication system
KR101462211B1 (ko) * 2008-01-30 2014-11-17 삼성전자주식회사 이동통신 시스템의 복호 장치 및 방법
US7987384B2 (en) * 2008-02-12 2011-07-26 International Business Machines Corporation Method, system, and computer program product for handling errors in a cache without processor core recovery
CN101854222B (zh) * 2009-03-31 2014-04-02 华为技术有限公司 一种数据处理的方法、通信装置和系统
CN102006084A (zh) * 2010-09-26 2011-04-06 东南大学 一种适用于ofdm-uwb系统的crc编码方法
CN102546089B (zh) * 2011-01-04 2014-07-16 中兴通讯股份有限公司 循环冗余校验crc码的实现方法及装置
US8856609B2 (en) * 2011-11-21 2014-10-07 Broadcom Corporation Accelerated cyclical redundancy check
US9286159B2 (en) * 2013-11-06 2016-03-15 HGST Netherlands B.V. Track-band squeezed-sector error correction in magnetic data storage devices
US10552258B2 (en) 2016-09-16 2020-02-04 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device, electronic device, and driving method thereof
US10223194B2 (en) 2016-11-04 2019-03-05 Semiconductor Energy Laboratory Co., Ltd. Storage device, semiconductor device, electronic device, and server system
TW202032368A (zh) * 2019-02-27 2020-09-01 智原科技股份有限公司 電子裝置中起始載入程式的執行方法
EP3939194A4 (de) * 2019-03-13 2022-06-29 ZTE Corporation Multipilot-referenzsignale

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748652A (en) * 1995-06-29 1998-05-05 Hyundai Electronics Ind. Co., Ltd. Apparatus for detecting and correcting cyclic redundancy check errors

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5784377A (en) 1980-11-14 1982-05-26 Nippon Denso Co Ltd Device for detecting obstacle
JPH03214809A (ja) * 1990-01-19 1991-09-20 Nec Corp リニアフィードバック・シフトレジスタ
US5103451A (en) * 1990-01-29 1992-04-07 Motorola, Inc. Parallel cyclic redundancy check circuit
JPH04140677A (ja) * 1990-10-01 1992-05-14 Toshiba Corp 半導体集積回路
US5390199A (en) * 1991-07-19 1995-02-14 Anritsu Corporation Advanced code error detection apparatus and system using maximal-length pseudorandom binary sequence
US5920593A (en) * 1993-11-29 1999-07-06 Dsp Telecommunications Ltd. Device for personal digital cellular telephones
JP2996615B2 (ja) * 1996-01-08 2000-01-11 松下電器産業株式会社 ビタビ復号装置及びその方法
US6272187B1 (en) * 1998-03-27 2001-08-07 Lsi Logic Corporation Device and method for efficient decoding with time reversed data
JP4071879B2 (ja) * 1998-12-09 2008-04-02 富士通株式会社 誤り検出器、この誤り検出器を備えた通信システム、および誤り検出方法
US6327691B1 (en) * 1999-02-12 2001-12-04 Sony Corporation System and method for computing and encoding error detection sequences
KR100659265B1 (ko) * 2000-11-10 2006-12-20 삼성전자주식회사 패리티비트가 역순으로 부가된 씨.알.씨. 코드의에러검출장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748652A (en) * 1995-06-29 1998-05-05 Hyundai Electronics Ind. Co., Ltd. Apparatus for detecting and correcting cyclic redundancy check errors

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"3RD GENERATION PARTNERSHIP PROJECT (3GPP);TECHNICAL SPECIFICATION GROUP RADIO ACCESS NETWORK MULTIPLEXING AND CHANNEL CODING (FDD) (3G TS 25.212 VERSION 3.0.0)", 3G TS 25 212 V3.0.0, XX, XX, October 1999 (1999-10-01), pages COMPLETE54, XP002149187 *
KITSOS P ET AL: "A reconfigurable linear feedback shift register (LFSR) for the bluetooth system", IEEE, vol. 2, 2 September 2001 (2001-09-02), pages 991 - 994, XP010563159 *
SHU LIN, D.J. COSTELLO: "Error control coding: Fundamentals and Applications", 1987, PRENTICE HALL, ENGLEWOOD CLIFFS, XP002255882 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601913B (zh) * 2003-09-23 2010-04-28 旺宏电子股份有限公司 平行化循环冗余码计算方法及系统
WO2010144539A1 (en) 2009-06-09 2010-12-16 Microchip Technology Incorporated Programmable crc unit
US8543888B2 (en) 2009-06-09 2013-09-24 Microchip Technology Incorporated Programmable cyclic redundancy check CRC unit

Also Published As

Publication number Publication date
DE10238841A1 (de) 2004-03-11
CN100508440C (zh) 2009-07-01
US20050229075A1 (en) 2005-10-13
DE10238841B4 (de) 2010-01-28
CN1679267A (zh) 2005-10-05
US7461324B2 (en) 2008-12-02

Similar Documents

Publication Publication Date Title
DE10238841B4 (de) Parallelverarbeitung der Decodierung und der zyklischen Redundanzüberprüfung beim Empfang von Mobilfunksignalen
DE10139116B4 (de) Kombination aus Reed-Solomon- und Turbo-Codierung
DE19630343B4 (de) Verfahren und Paket-Übertragungssystem unter Verwendung einer Fehlerkorrektur von Datenpaketen
DE69925151T2 (de) Effiziente normalisierung vom trelliszustandsmetrischem wert
DE19815597B4 (de) Datenübertragungssystem, mobile Station und Verfahren zum Verringern der Rahmenfehlerrate bei einer in Form von Datenrahmen erfolgenden Datenübertragung
DE69838451T2 (de) Verfahren und schaltung zur adaptiven kanalkodierung
DE69735200T2 (de) Verfahren zu metrikbestimmung in einem übertragungssystem
DE19846721B4 (de) Verfahren zur Kodierung und Dekodierung und Vorrichtung zum Kodieren oder Dekodieren
DE69929652T2 (de) Datenfehlerkorrektursystem
DE3231956A1 (de) Anordnung zum uebertragen von binaerdaten ueber eine vielzahl von kanaelen mit hilfe eines faltungscodes
DE60124851T2 (de) Vorrichtung und Verfahren zur Fehlererkennung in einem CRC Code mit invertierten Paritätsbits
EP0545498B1 (de) Verfahren und Schaltungsanordnung zum Decodieren von RS-codierten Datensignalen
DE69916726T2 (de) Kodierungsvorrichtung und -Verfahren
EP0737389A1 (de) Übertragungssystem mit soft-output-dekodierung bei reduziertem speicherbedarf
DE69930911T2 (de) Übertragungssystem mit adaptivem kanalkodierer und -dekoder
DE69735982T2 (de) Datenempfänger
DE4105860A1 (de) Schaltungsanordnung zum erkennen und korrigieren von fehlern in datenworten
DE19539343C2 (de) Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird
DE102013201422B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/ oder beschädigter Daten
DE19520987A1 (de) Verfahren zur Terminierung des Trellis bei rekursiven systematischen Faltungscodes
DE4130907A1 (de) Schaltungsanordnung zur erzeugung zyklischer codes
DE102015205290B4 (de) Verfahren zur Übertragung von binären Daten über einen Kanal, insbesondere über einen optischen Freiraum-Datenübertragungskanal
DE102011102503B3 (de) Verfahren zum Berichtigen beschädigter Daten
EP1016236B1 (de) Schnelle decodierung von partiell empfangenen faltungscodierten daten
EP0748055B1 (de) Verfahren zur Decodierung von mit einem RDS-Empfänger empfangenen Datenblöcken

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE FR GB

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 20038199866

Country of ref document: CN

Ref document number: 11063949

Country of ref document: US

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP