GB2308044A - Decoding punctured codes - Google Patents
Decoding punctured codes Download PDFInfo
- Publication number
- GB2308044A GB2308044A GB9520091A GB9520091A GB2308044A GB 2308044 A GB2308044 A GB 2308044A GB 9520091 A GB9520091 A GB 9520091A GB 9520091 A GB9520091 A GB 9520091A GB 2308044 A GB2308044 A GB 2308044A
- Authority
- GB
- United Kingdom
- Prior art keywords
- frame
- symbol
- bit
- punctured
- rate
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0067—Rate matching
- H04L1/0068—Rate matching by puncturing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0054—Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Error Detection And Correction (AREA)
Abstract
Contiguous frames of data 70-72, each encoded at a different coding-rate, are sequentially received by a decoder and then converted to a constant K/n code-rate by inserting symbol markers (74-77) at appropriate, punctured bits in each frame. In response to identifying a number of such symbol markers during a predetermined time, an appropriate branch metric calculation is selected and applied by the Viterbi decoder to decode the frame, see also Fig.6 (not shown). The frames are convolutionally encoded for forward error correction in a GSM communication system.
Description
METHOD OF DECODING PVNCRID CODES
AND APPARATUS THEREFOR
Background of the Invention
This invention relates, in general, to a method and apparatus for decoding signals and is particularly, but not exclusively, applicable to decoding punctured convolutional codes.
Summarv of the Pnor Art
In communication protocols, such as those used in the pan-European
Groupe Speciale Mobile cellular communication system, forward error correction (FEC) of a physical radio channel, for example, is provided by means of signal encryption. More specifically, in the case of the GSM communication system, this encryption takes the form of convolutional coding. The complex nature of these codes requires extensive computational (processor) power, with the optimum decoding process provided by a Viterbi decoding algorithm.
With respect to a Viterbi state trellis (and algorithm), an output sequence is determined based upon the most likely path through a logical trellis of states consisting of logical "O"s and logical 1"s that are distributed over time. More particularly, at reception of a signal by a Viterbi decoder, a measurement of the most likely bit sequence for the signal is made by making distance measurements ("branch metric calculations") between received data bits and hypothesised data bits. In fact, measurements of an absolute distance between two alternative branch metrics determine a succession of logical states in adjacent branches of the trellis, which states are indicative of a survivor path through the trellis. Typically, the path offering the smallest distance (i.e. the largest branch metric) is selected as the survivor path.
In some instances, these convolutional codes also undergo an additional process designed to reduce the number of bits ultimately sent, e.g.transmitted or communicated, in the output group (sequence).
Specifically, so-called "punctured codes" are produced by omitting/ignoring bits from an output sequence generated initially from a rate k/n code, where the code rate indicates that an input signal having "k" consecutive input bits (otherwise referred to as "a group") produces an encoded output signal of an" consecutive bits (where k and n are integers). Indeed, when puncturing takes place, a rate k/n code may be reduced (according to a puncturing vector "p") by up to "p" bits (where 1 < p < n) to produce a k/(n-p) code, which puncturing advantageously reduces transmission bandwidth while maintaining some of the benefits of the coding gain afforded by the convolutional code. As such, each component in the puncturing vector p indicates the presence or absence of a corresponding bit in the output group.
Unfortunately, the use of punctured codes, although desirable, requires the operation of Viterbi decoders to be modified to make allowances for changes in coding rates. Existing Viterbi decoders utilise programmable registers that store relevant decoding algorithms for these different code rates. However, this prior art arrangement struggles to cope with contiguous frames of information that have been encoded at different rates.
More especially, the co-processor of the Viterbi decoder requires a rate-control register (and hence its decoding algorithm) to be up-dated whenever the code rate changes. However, the requirement for an up-date is undesirable (and problematic) in time-critical environments in which a control processor has insufficient bandwidth to periodically up-date the rate-control register. Furthermore, in some instances, the up-dating of the rate-control register, i.e. the adaptation of the decoding algorithm, is not performed by the processor in a timely manner, whereby the Viterbi algorithm "stalls" and the processing efficiency and throughput of the system is accordingly reduced. Some decoding systems accept the occurrence of stalls by utilising processor interrupt sequences or by using faster processors to mitigate against such stalls.However, the use of interrupts in a system often causes general synchronization problems (in relation to operation execution, bus contention or hardware conflict), whereas faster processor are more expensive (as a consequence of manufacturing tolerances).
Summary of the Invention
According to a first aspect of the present invention there is provided a method of decoding an encoded frame comprising bits of information that have been punctured to produce a variable coding rate of W(n-p) for the frame, where k, n and p are integers and p is a variable puncturing vector, the method comprising the steps of: receiving the bits of information; determining whether a bit is a punctured bit; inserting a symbol marker when the bit is a punctured bit to produce a predetermined code-rate of Wn; determining a number of symbol markers inserted into a frame; and selecting an appropriate branch metric in response to the number of symbol markers to decode the frame at the predetermined code-rate of Wn.
In a preferred embodiment the symbol marker is selected as a numeric value that falls outside a range of numeric values used as soft-decision symbol integer values.
In a second aspect of the present invention there is provided apparatus for decoding an encoded frame comprising bits of information that have been punctured to produce a variable coding rate of W(n-p) for the frame, where k, n and p are integers and p is a variable puncturing vector, the apparatus comprising: a memory having a plurality of branch metrics indexed by the variable puncturing vector; and a processor, responsive to the bits of information, and arranged to decode the encoded frame, the processor having: means for determining whether a bit is a punctured bit; means for inserting a symbol marker when the bit is a punctured bit to produce a predetermined code-rate of Wn; and means for determining a number of symbol markers inserted into a frame; and means for selecting an appropriate branch metric from the memory in response to the number of symbol markers to decode the frame at the predetermined code-rate of k/n.
In a preferred embodiment each branch metric of the plurality of branch metrics is further indexed by a relative bit position of symbol markers within the frame.
An exemplary embodiment of the present invention will now be described with reference to the accompanying drawings.
Bnef Descnption of the Drawings FIG. 1 is a pictorial representation of coding and puncturing of a bit sequence in accordance with known, prior art techniques.
FIG. 2 illustrates contiguous frames of information encoded at difference coding rates, as experienced in prior art transmission protocols.
FIG. 3 shows a prior art soft-decision symbol table.
FIG. 4 shows a modified soft-decision symbol table that may be utilised by a preferred embodiment of the present invention.
FIG. 5 illustrates, in accordance with a preferred embodiment of the present invention, a manipulation of contiguous frames of information encoded at difference coding rates.
FIG. 6 is a block diagram of a Viterbi decoder according to a preferred embodiment of the present invention.
FIG. 7 shows a flow diagram illustrating a process for de-puncturing a punctured code, as used by the Viterbi decoder of FIG. 6.
FIG. 8 shows a flow diagram illustrating a decoding algorithm used by the
Viterbi decoder of FIG. 6.
Detalled Descnption of a Preferred Embodlment Referring to FIG. 1, there is shown a pictorial representation of a coding and puncturing process for an input bit sequence according to prior art techniques. Specifically, a plurality of input bits (bo-bk) 10 are encoded by an encoder 12, such as a convolutional encoder. A plurality of output bits (Bg, Bun 1 Bn) 14, generated by the encoding process of the encoder 12, are subsequently subjected to a puncturing vector 16, which selectively negates (omits or deletes) particular bits from the output bits (Bo, Bn-1, Bn) 14 to produce an output group vector (or sequence) Q (also referenced by numeral 18). The output group vector 18 may therefore have any one of a range of coding rates from k/n to k/(n-p).The mechanism of FIG. 1 can alternatively be expressed mathematically, thus: b =(bo...bk) (eqn.1)
B = IBO...Bn) (eqn.2) P ={PO--Pn) (eqn.3) and Q = IBopo, BlPls BnPn} (eqn.4) where: b is the input group vector; B is the coded group vector; and p is the puncturing vector. And, pi = 0 > do not transmit Bs; pi = 1 > transmit
Bi; and at least one of piezo to n is set to 0.
FIG. 2 illustrates an arrangement of contiguous frames of information, each encoded at a different coding rate (as typically experienced in prior art transmission protocols). Particularly, only four (4) frames 30-36 have been illustrated for the sake of simplicity and brevity, with the frames respectively encoded at rates k/n, k/(n-pi), k/(n-p2) and k/(n-p3), thereby producing a requirement for variable-rate decoding. At the frame boundaries (e.g. at transitions 38 and 40 between frames 30 and 32 and 32 and 34, respectively), a prior Viterbi decoder using a rate-control register (not shown) would need to be up-dated (poked) with a code rate change, as previously described.
FIG. 3 shows a prior art soft-decision symbol table, in which a multitude of symbol values (levels) 50 indicate relative amounts of confidence in a received binary logical value (as will be understood). Explicitly, the multitude of levels 50 define states (symbol integer values 52) between K and -(K+1), with all states between 0 and K indicating increasing levels of confidence in the logical result of "1", and all states between -1 and -(K+1) indicating increasing levels of confidence in the logical result of "0". It will be noted that, in this instance, level 0 indicates the least confident result of a logical "1".
FIG. 4 shows a modified soft-decision symbol table that may be utilised by a preferred embodiment of the present invention. Again, a multitude of symbol values (levels) 60 indicate relative amounts of confidence in a received binary logical value (as will be readily appreciated). Explicitly, the multitude of levels 60 define states (symbol integer values 62) between K and -(K+1), with all states between 1 and K indicating increasing levels of confidence in the logical result of "1", and all states between -1 and -(K+1) indicating increasing levels of confidence in the logical result of "O" It will be noted that, in this instance, level 0 has no level of confidence attached to it (and therefore no meaning in the context of the table).
The concept of the present invention is exemplified in FIG. 5, which shows a manipulation of contiguous frames of information (encoded at difference coding rates) to produce a constant decoding rate, irrespective of puncturing levels. Therefore, all punctured codes, i.e. codes of the form k/(n-p), are decoded at an original unpunctured (and constant) rate of Wn.
This constant rate is achieved through the use of a "de-puncturing symbol", which when passed through a Viterbi algorithm does not effect the normal operation of the decoding process but allows decoding at the original unpunctured rate k/n. This approach advantageously allows a continuously coded sequence of different code-rate sub-frames (e.g. k/n, k/(n-p1) and k(n-p2)) to be decoded sequentially at a single code rate k/n, such that changes in actual code rates are transparent to the Viterbi decoder. Adoption of the approach of the present invention eliminates the need for a processor of the Viterbi decoder to up-date (or, in fact, use of) a rate-register.
Two alternative mechanisms exist for the insertion of the de-puncturing symbol, the selection of which is subject to the form soft-decision table ultimately adopted. In a first mechanism, a unique numeric input value, "M" (referred to as a marker symbol), not in the range of symbol values (i.e. M < -(K+1) < K or -(K+1) < K < M), is used to indicate a position of a punctured symbol within a punctured group and is therefore used to reinflate the punctured group to its original input group size (i.e. k symbols in length).
For example, considering a punctured V3 rate code having an input group bo that maps prior to puncturing, to an output group Bo, B1 and B2. The output group Bg, Bl and B2 then maps (through a puncturing vector, p) to symbols Bo and B2. After soft decision assignment at a demodulator, these symbols are received as integer values 3 and 10 (which integer values fall somewhere within an integer coding range of, say, K=15). Thus, the received group is presented to the Viterbi algorithm as the symbol sequence 3, M, 10. The Viterbi algorithm is implemented to recognise the marker symbol and to automatically select an appropriate, corresponding branch metric calculation method for the punctured group to which the marker symbol belongs.As will be appreciated, insertion of the marker symbol allows the input data sequence to define and control the selection of the branch metric calculation method, thereby freeing the processor of the
Viterbi decoder from this task.
In a second mechanism, selection of the modified soft-decision symbol table permits the use of the symbol integer value 0 as a de-puncturing tool, since transmitted signals from the encoder are assigned arithmetic values from +1 and -1 to represent logical "1" and logical "0", respectively. The symbol integer value 0 can therefore be considered as a symbol marker that is out-of-range relative to available symbol integer values indicative of confidence levels in the soft-decision table. More particularly, if the branch metric function is chosen suitably (i.e. correlation metrics are used) then the insertion of integer value 0 into an input group vector r allows the k/n rate branch metric function f(h, r) to be used on the de-punctured group r.
Therefore, by inserting symbol integer value 0 in the punctured symbol positions prior to decoding, the processor of the Viterbi decoder can operate on any punctured code as though it was a k/n rate code. This mechanism has an advantage of the first mechanism in as much as no special marker symbol detection logic (in the processor) is required.
Referring back to FIG. 5, it can be seen that consecutive Wn rate frames 70-72 have been achieved through the insertion of marker symbols at bits 74, 75 and 76 of frame 70, and bit 77 of frame 71. The remaining bits shown in each identified frame contain logical values, rather than corresponding confidence values provided by the symbol integer values of FIGs. 3 and 4.
In FIG. 6, a block diagram of a Viterbi decoder 80 according to a preferred embodiment of the present invention is shown. The Viterbi decoder 80 comprises a processor 82 for decoding a convolutionally encoded input signal 84 provided thereto. The convolutionally encoded input signal is in a symbol integer value form, as shown in FIGs. 3 and 4. After a decoding process, the processor 82 provides a decoded output signal 86. The processor 82 is coupled to a counter/timer 83 used to count marker symbols (or symbol integer value "O"s) during a predetermined period (e.g. a frame). A memory device 88 is coupled to the processor 82 and contains data relating to the decoding process.More specifically, the memory device 88 contains a data base indexed through a marker symbol (M) value that indicates the number of marker symbols (or 0 symbol integer values), e.g. 3, that appear in a given number of bits (indicative of the predetermined period). Through indexing the marker symbol value 90, a code-rate register 92 identifies a code-rate for the number of marker symbols that appear in a given predetermined period. Furthermore, in response to the indexing of the marker symbol value 90, a corresponding branch metric is retrievable from a branch metric register 94. It will be noted that different branch metrics may be stored in the branch metric register 94 against identical marker symbol values, e.g. a value for 3 marker symbols per frame may have a pluarlity of alternate branch metric calculations.These different branch metrics result from a relative position of marker symbols with respect to particular bits in a frame. For example, as will be appreciated, an eight-bit frame containing logical values and marker symbols 101MMOM1 may have a different branch metric from an eight-bit frame containing logical values and marker symbols 10MMM111, as will be understood. As will be understood, the processor 82 (in response to the counter/marker 83) identifies the number of marker symbols (or "O", as appropriate to the selected soft-decision mechanism) in a frame (e.g. frame 70 of FIG. 5) and retrieves and executes the required branch metric calculation.
Turning to the flow-diagram of FIG. 7, a process used by the Viterbi decoder of FIG. 6 for de-puncturing a punctured code is shown. The process starts at 100. At 102, a counter is set to value 1, indicating a first bit of a frame (or group) of interest 103. At 104, the bit is analysed by the processor 82 to determine whether the bit (Qi) was punctured. Dependent upon which of the two previously described mechanisms was selected, the bit is either passed into the Viterbi algorithm 106, or marked 108 with one of the special symbol M or the symbol integer value 0 to reinflate the code to produce a k/n code rate. The reinflated bit is then fed into the Viterbi algorithm 110, and decoded in the Viterbi state trellis (controlled by the processor 82). Then, at 112, a test is made to determine whether the end of a burst/frame has been reached.If affirmative, the process finishes 114, else counter/timer 83 is incremented 116 to identify the next bit of a frame of interest. The process returns to the process loop at step 103, where the newly identified bit of the frame of interest is analysed.
The flow-diagram of FIG. 8 shows a decoding algorithm used by the
Viterbi decoder of FIG. 6. Basically, the process starts at 130. At 132, a counter is set to value 1, indicating a first bit of a frame (or group) of interest 133. At 134, the bit is analysed by the processor 82 to determine whether the bit (Qi) was marked. Then, the bit if the bit has not been marked, it is decoded 136 using branch metric function fix , Qi), else the requisite branch metric 140 is recalled from memory 88 (based on the determined number of marker symbols or "O"s - step 138). At 142, a test is made to determine whether the end of a burst/frame has been reached. If affirmative, the process finishes 144, else counter/timer 83 is incremented 146 to identify the next bit of a frame of interest.The process returns to the process loop at step 133, where the newly identified bit of the frame of interest is analysed. As will be appreciated, f(h, , Qi) is the branch metric function for rate k/n codes, where h is the hypothesised received group and Qi is the actual received group. Also, gp(h, Qi) is the branch metric function for a rate k/(n-p) punctured code having puncturing vector P, where h is the hypothesised received sequence and Qi is the actual received group.
The present invention provides an improved method of handling punctured code, which method is not prone to producing stalls in a Viterbi decoder or associated hardware/software. In addition, the present invention has the ability to handle contiguous frames of data each encoded at a different coding-rate by converting these different rates to a k/n code rate and then applying an approriate branch metric based on a number of identified marker symbols.
Claims (10)
1. A method of decoding an encoded frame comprising bits of information that have been punctured to produce a variable coding rate of k/(n-p) for the frame, where k, n and p are integers and p is a variable puncturing vector, the method comprising the steps of:
receiving the bits of information;
determining whether a bit is a punctured bit;
inserting a symbol marker when the bit is a punctured bit to produce a predetermined code-rate of k/n;
determining a number of symbol markers inserted into a frame; and
selecting an appropriate branch metric in response to the number of symbol markers to decode the frame at the predetermined code-rate of k/n.
2. The method of claim 1, wherein the frame is convolutionally encoded.
3. The method of claim 1 or 2, wherein the symbol marker is selected as a numeric value that falls outside a range of numeric values used as soft-decision symbol integer values.
4. The method of claim 3, wherein the numeric value is zero.
5. The method of any preceding claim, wherein the appropriate branch metric is dependent upon a relative bit position of symbol markers within the frame.
6. Apparatus for decoding an encoded frame comprising bits of information that have been punctured to produce a variable coding rate of k/(n-p) for the frame, where k, n and p are integers and p is a variable puncturing vector, the apparatus comprising:
a memory having a plurality of branch metrics indexed by the variable puncturing vector; and
a processor, responsive to the bits of information, and arranged to decode the encoded frame, the processor having:
means for determining whether a bit is a punctured bit;
means for inserting a symbol marker when the bit is a punctured bit to produce a predetermined code-rate of k/n; and
means for determining a number of symbol markers inserted into a frame; and
means for selecting an appropriate branch metric from the memory in response to the number of symbol markers to decode the frame at the predetermined code-rate of k/n.
7. Apparatus as claimed in claim 6, wherein the apparatus is a Viterbi decoder and the frame is convolutionally encoded.
8. Apparatus as claimed in claim 6 or 7, wherein each branch metric of the plurality of branch metrics is further indexed by a relative bit position of symbol markers within the frame.
9. A method of decoding a punctured code substantially as hereinbefore described with reference to FIGs. 5 to 8 of the accompanying drawings.
10. Apparatus for decoding a punctured code substantially as hereinbefore described with reference to FIGs. 5 to 8 of the accompanying drawings.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9520091A GB2308044B (en) | 1995-10-02 | 1995-10-02 | Method of decoding punctured codes and apparatus therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9520091A GB2308044B (en) | 1995-10-02 | 1995-10-02 | Method of decoding punctured codes and apparatus therefor |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9520091D0 GB9520091D0 (en) | 1995-12-06 |
GB2308044A true GB2308044A (en) | 1997-06-11 |
GB2308044B GB2308044B (en) | 2000-03-15 |
Family
ID=10781637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9520091A Expired - Fee Related GB2308044B (en) | 1995-10-02 | 1995-10-02 | Method of decoding punctured codes and apparatus therefor |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2308044B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999016174A1 (en) * | 1997-09-19 | 1999-04-01 | Motorola A/S | Method and apparatus for viterbi decoding of punctured codes |
US6178535B1 (en) | 1997-04-10 | 2001-01-23 | Nokia Mobile Phones Limited | Method for decreasing the frame error rate in data transmission in the form of data frames |
EP1117203A1 (en) * | 2000-01-14 | 2001-07-18 | Nortel Networks S.A. | Transmission and reception of information symbols in multiplexed channels |
JPWO2006028226A1 (en) * | 2004-09-09 | 2008-05-08 | 中外製薬株式会社 | Novel imidazolidine derivatives and uses thereof |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0227473A2 (en) * | 1985-12-25 | 1987-07-01 | Nippon Telegraph And Telephone Corporation | Error correcting coder/decoder |
US4908827A (en) * | 1987-07-27 | 1990-03-13 | Tiw Systems, Inc. | Forward error correction system |
US4939734A (en) * | 1987-09-11 | 1990-07-03 | Ant Nachrichtentechnik Gmbh | Method and a system for coding and decoding data for transmission |
US5029331A (en) * | 1987-07-25 | 1991-07-02 | Ant Nachrichtentechnik Gmbh | Method for editing a convolutional code for transmission and its reconversion at the receiver as well as a device therefor |
WO1994028656A1 (en) * | 1993-05-24 | 1994-12-08 | Comstream Corporation | Transmitting and receiving apparatus and method including punctured convolutional encoding and decoding |
-
1995
- 1995-10-02 GB GB9520091A patent/GB2308044B/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0227473A2 (en) * | 1985-12-25 | 1987-07-01 | Nippon Telegraph And Telephone Corporation | Error correcting coder/decoder |
US5029331A (en) * | 1987-07-25 | 1991-07-02 | Ant Nachrichtentechnik Gmbh | Method for editing a convolutional code for transmission and its reconversion at the receiver as well as a device therefor |
US4908827A (en) * | 1987-07-27 | 1990-03-13 | Tiw Systems, Inc. | Forward error correction system |
US4939734A (en) * | 1987-09-11 | 1990-07-03 | Ant Nachrichtentechnik Gmbh | Method and a system for coding and decoding data for transmission |
WO1994028656A1 (en) * | 1993-05-24 | 1994-12-08 | Comstream Corporation | Transmitting and receiving apparatus and method including punctured convolutional encoding and decoding |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2329803B (en) * | 1997-04-10 | 2002-05-22 | Nokia Mobile Phones Ltd | Method for decreasing the frame error rate in data transmission in the form of data frames |
US6178535B1 (en) | 1997-04-10 | 2001-01-23 | Nokia Mobile Phones Limited | Method for decreasing the frame error rate in data transmission in the form of data frames |
US6430721B2 (en) | 1997-04-10 | 2002-08-06 | Nokia Mobile Phones Limited | Method for decreasing the frame error rate in data transmission in the form of data frames |
US6510538B1 (en) * | 1997-09-19 | 2003-01-21 | Motorola. Inc. | Method and apparatus for Viterbi decoding of punctured codes |
WO1999016174A1 (en) * | 1997-09-19 | 1999-04-01 | Motorola A/S | Method and apparatus for viterbi decoding of punctured codes |
WO2001052458A2 (en) * | 2000-01-14 | 2001-07-19 | Nortel Networks Limited | Transmission of information symbols on multiplex channels |
WO2001052458A3 (en) * | 2000-01-14 | 2002-04-04 | Nortel Networks Ltd | Transmission of information symbols on multiplex channels |
FR2803960A1 (en) * | 2000-01-14 | 2001-07-20 | Nortel Matra Cellular | METHODS AND PROCESSING DEVICES FOR TRANSMITTING INFORMATION SYMBOLS ON MULTIPLEXED CHANNELS, AND CORRESPONDING PROCESSING FOR RECEPTION |
EP1117203A1 (en) * | 2000-01-14 | 2001-07-18 | Nortel Networks S.A. | Transmission and reception of information symbols in multiplexed channels |
AU764863B2 (en) * | 2000-01-14 | 2003-09-04 | Nortel Networks Limited | Transmission of information symbols on multiplex channels |
US6901113B2 (en) | 2000-01-14 | 2005-05-31 | Nortel Networks Limited | Processing methods and devices for sending information symbols over multiplexed channels, and corresponding processing methods and devices for reception |
JPWO2006028226A1 (en) * | 2004-09-09 | 2008-05-08 | 中外製薬株式会社 | Novel imidazolidine derivatives and uses thereof |
JP4989227B2 (en) * | 2004-09-09 | 2012-08-01 | 中外製薬株式会社 | Novel imidazolidine derivatives and uses thereof |
Also Published As
Publication number | Publication date |
---|---|
GB9520091D0 (en) | 1995-12-06 |
GB2308044B (en) | 2000-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100554322B1 (en) | Convolutional decoding with the ending state decided by crc bits placed inside multiple coding bursts | |
US7461324B2 (en) | Parallel processing for decoding and cyclic redundancy checking for the reception of mobile radio signals | |
US6148431A (en) | Add compare select circuit and method implementing a viterbi algorithm | |
JP2001516175A (en) | Communication system, communication signal decoding apparatus, and symbol source sequence communication method | |
US6680986B1 (en) | Method for implementing shared channel decoder for onboard processing satellites | |
KR20020027365A (en) | Encoding/decoding device and encoding/decoding method | |
US6324224B1 (en) | Apparatus and method for receiving data with bit insertion | |
US5930298A (en) | Viterbi decoder for decoding depunctured code | |
JPS60180222A (en) | Code error correcting device | |
GB2428545A (en) | Blind transport format detection with cyclic redundancy check and a variable threshold value | |
US5887007A (en) | Viterbi decoding method and viterbi decoding circuit | |
GB2308044A (en) | Decoding punctured codes | |
US7072926B2 (en) | Blind transport format detection system and method with logarithm approximation for reliability figure | |
US20030007580A1 (en) | Blind transport format detection system and method | |
JP3512176B2 (en) | Turbo decoding device and method of controlling number of decoding repetitions in turbo decoding | |
JPH07202851A (en) | Radio communication system | |
US6084925A (en) | Method and apparatus for discriminating synchronous or asynchronous states of Viterbi decoded data | |
GB2305827A (en) | Viterbi trellis decoder reduces number of metric difference calculations | |
US20020124224A1 (en) | Method and system for matching information rates in turbo coded channels | |
US7231586B2 (en) | Multi-rate viterbi decoder | |
KR100369989B1 (en) | Apparatus for detecting synchronization in viterbi decoder | |
US6411663B1 (en) | Convolutional coder and viterbi decoder | |
JPS60130927A (en) | Decoding method of product code | |
CA2582043C (en) | Exploiting known padding data to improve block decode success rate | |
KR100811376B1 (en) | Method for coding and decoding in a communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 20011002 |