US20040091067A1 - System and method for one-pass blind transport format detection - Google Patents
System and method for one-pass blind transport format detection Download PDFInfo
- Publication number
- US20040091067A1 US20040091067A1 US10/292,268 US29226802A US2004091067A1 US 20040091067 A1 US20040091067 A1 US 20040091067A1 US 29226802 A US29226802 A US 29226802A US 2004091067 A1 US2004091067 A1 US 2004091067A1
- Authority
- US
- United States
- Prior art keywords
- btfd
- traceback
- frame
- recited
- point
- 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
Images
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/0045—Arrangements at the receiver end
- H04L1/0046—Code rate detection or code type detection
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
Definitions
- the present invention is directed, in general, to code-division multiple access (CDMA) communication systems and, more specifically, to a system and method for one-pass blind transport format detection (BTFD) for use in a CDMA receiver.
- CDMA code-division multiple access
- BTFD blind transport format detection
- Wireless communication is playing an evermore important role in today's world. More people are signing up for wireless service, and they are expecting their wireless terminals (e.g., pagers, phones, faxes and computers) to perform more functions more rapidly and efficiently than ever before.
- wireless terminals e.g., pagers, phones, faxes and computers
- UMTS Universal Mobile Telecommunications System
- WCDMA Wideband Code-Division Multiple Access
- 5 Mhz carrier bandwidth can accommodate very high data communication speeds and therefore the speed, flexibility and features that people are beginning to demand.
- a CDMA system may be designed to support one or more CDMA standards such as (1) the “TIA/EIA-95-B Mobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular System” (the IS-95 standard), (2) the “TIA/EIA-98-D Recommended Minimum Standard for Dual-Mode Wideband Spread Spectrum Cellular Mobile Station” (the IS-98 standard), (3) the standard offered by a consortium named “3 rd Generation Partnership Project” (3GPP) and embodied in a set of documents including Document Nos.
- 3GPP 3 rd Generation Partnership Project
- 3G TS 25.211, 3G TS 25.212, 3G TS 25.213 and 3G TS 25.214 (the WCDMA standard) and (4) the standard offered by a consortium named “3 rd Generation Partnership Project 2” (3GPP2) and embodied in a set of documents that includes Nos. C.S0002-A, C.S0005-A, C.S0010-A, C.S0011-A, C.S0024 and C.S0026 (the CDMA2000 standard). These standards are incorporated herein by reference.
- WCDMA can support more than one overlying transport format.
- UMTS currently supports 16 such transport formats for WCDMA.
- Each format calls for bits of information transmitted between stations to be gathered into frames and given Cyclic Redundancy Check (CRC) bits to ensure their integrity.
- CRC Cyclic Redundancy Check
- the similarity between the various transport formats ends there.
- the receiver For a UMTS-compliant receiver to be able to interpret frames received from a UMTS-compliant transmitter, the receiver must come to know which one of the 16 possible transport formats the transmitter used to format the frames.
- the transmitter could expressly instruct the receiver as to which transport format it is using.
- UMTS accommodates an optional Transport Format Indicator (TFI) for just this purpose.
- the receiver could determine the transport format for itself by, for example, looking for valid CRC bits in the frames. This process is called Blind Transport Format Detection, or BTFD.
- WCDMA receivers do not directly receive bits from WCDMA transmitters. Instead, WCDMA receivers receive symbols; each symbol conventionally represents more than one bit in a given frame. Once received, the symbols are decoded, often in a circuit called a “Viterbi decoder.” A Viterbi decoder decodes convolutionally encoded bits using the Viterbi algorithm and is known to those skilled in the art.
- BTFD is carried out by first allowing the Viterbi decoder to decode received symbols into bits. A frame's worth of bits generated by the Viterbi decoder is then collected and stored in a buffer. Then, a software-based iterative process is initiated, whereby the frame is tested under each possible transport format until valid CRC bits are found. In the UMTS standard, which accommodates 16 possible transport formats, one would expect the process to have to be repeated eight times on average before finding the valid CRC bits.
- the present invention provides, for use in a CDMA receiver having a Viterbi decoder, a system for, and method of, performing one-pass BTFD with respect to a received frame and a WCDMA receiver incorporating the system or the method.
- the system includes: (1) a traceback circuit that performs a zero state BTFD traceback function with respect to at least a Viterbi-decoded portion of the frame, the traceback function being dependent upon a relative position of a BTFD checkpoint and generating hard decision bits and (2) a BTFD point selection circuit, coupled to the traceback circuit, that employs the hard decision bits to determine a location of a BTFD point with respect to the frame.
- the present invention therefore introduces the broad concept of performing BTFD in parallel with Viterbi decoding, thereby significantly decreasing the time and effort required to perform BTFD. This not only allows BTFD to be performed with respect to high rate channels, but also allows BTFD to be performed on channels of any rate more power-efficiently.
- the BTFD checkpoint is positioned: (1) at a traceback point, (2) within a traceback window or (3) at an end of the frame.
- Three sub-algorithms will be set forth in the Detailed Description that correspond to the three positions set forth above.
- the at least the Viterbi-decoded portion is two blocks of the frame.
- the two blocks are current and next blocks.
- the BTFD point selection circuit determines the BTFD point to be a BTFD checkpoint having a maximum threshold. This process will be set forth in greater detail in the detailed description that follows.
- the traceback circuit performs the traceback function while the at least the Viterbi-decoded portion of the frame is stored in a buffer.
- the BTFD point selection circuit determines the location of the BTFD point with respect to the frame while the hard decision bits are stored in a buffer.
- the traceback circuit and the BTFD point selection circuit are integral to the Viterbi decoder.
- the traceback circuit and the BTFD point selection circuit may be associated with circuitry adjacent to the Viterbi decoder.
- FIG. 1 illustrates a block diagram of a WCDMA-compliant transmitter and receiver, the receiver incorporating a system or method constructed or carried out according to the principles of the present invention
- FIG. 2 illustrates a diagram showing the coding, multiplexing and processing performed by the transmit unit for downlink data transmission in accordance with the WCDMA standard
- FIG. 3 illustrates a diagram showing the processing, de-multiplexing and decoding performed by the receiver unit for downlink data transmission in accordance with the WCDMA standard
- FIG. 4 illustrates a block diagram of a channel decoder constructed in accordance with the principles of the present invention
- FIG. 5 illustrates a block diagram of an embodiment of a Viterbi decoding engine constructed in accordance with the principles of the present invention
- FIG. 6 illustrates an embodiment of a BTFD control state machine constructed in accordance with the principles of the present invention
- FIG. 7 illustrates a functional block diagram for BTFD threshold computation and comparison constructed in accordance with the principles of the present invention.
- FIG. 8 illustrates a flow diagram of an embodiment of a method of performing the one-pass BTFD.
- FIG. 1 illustrated is a block diagram of a WCDMA-compliant transmitter and receiver, generally designated 100 .
- the receiver incorporates a system or a method constructed or carried out according to the principles of the present invention.
- the communications system 100 includes a transmit unit 140 and a receive unit 160 .
- the transmit unit 140 includes a data source 102 , a transmit channel data processor 104 , a transmitter baseband processor 106 , an RF transmitter 108 and an antenna 110 .
- the receive unit 160 includes an antenna 112 , an RF receiver 114 , a receiver baseband processor 116 , a receive channel data processor 118 and a data sink 120 . Note that, while FIG. 1 illustrates but single-element transmit and receive antennas, certain applications of the present invention may advantageously call for multiple-element transmit and receive antennas.
- Data is sent from data source 102 in blocks to the transmit channel data processor 104 .
- the transmit channel data processor 104 formats, codes and processes the data to produce one or more analog signals to be transmit.
- the transmit channel data processor 104 further converts the data from digital to analog form.
- the transmitter baseband processor 106 takes the analog signals and quadrature modulates, filters, amplifies and converts the frequency of the analog signals to radio frequency (RF).
- RF radio frequency
- the transmitted signal is received by the antenna 112 .
- the RF signals are then downcoverted to an intermediate or baseband frequency, filtered and quadrature demodulated by the receiver baseband processor 116 .
- the receiver baseband processor 116 also performs analog-to-digital conversion of the received signals.
- the digital samples are then processed by the receive channel data processor 118 , which decodes and processes the samples to recover the transmitted data.
- the processing performed by the receive channel data processor 118 is a set of receiver functions that reverse the specific operations performed by the transport channel data processor 104 .
- the recovered data is passed to the data sink 120 .
- FIG. 2 illustrated is a diagram, generally designated 200 , showing the coding, multiplexing and processing performed by the transmit unit 140 for downlink data transmission in accordance with the WCDMA standard.
- Downlink refers to transmission from a base station to a user terminal.
- Uplink refers to transmission from the user equipment to the base station.
- the coding, multiplexing and processing blocks shown in FIG. 2 are generally performed by the transmit channel data processor 104 shown in FIG. 1.
- UMTS currently supports 16 transport formats for WCDMA.
- TTI transmission time intervals
- the TTI is transport channel specific, and can be one of the following intervals: 10 ms, 20 ms, 40 ms or 80 ms.
- Other portions of the WCDMA system support concurrent transmission of multiple transport channels.
- Each transport channel block 240 performs substantially the same processing steps.
- the entire transport block is used to calculate CRC parity bits and attach them (a step 202 ) to the end of the transport block.
- the CRC parity bits are used for error detection.
- Transport blocks with the CRC attachments are serially concatenated. If the number of bits in a TTI is larger than the maximum size of the code block, the code block is segmented into a number of equal-sized code blocks (a step 204 ).
- the maximum size of the code block depends upon the type of coding used for the particular transport channel. Coding schemes supported by the WCDMA standard are convolutional coding, turbo coding and no coding.
- each of the code blocks is coded using one of the supported coding schemes. In the illustrated embodiment, a convolutional code is used.
- Rate matching is performed in a step 208 .
- Rate matching means that bits on a transport channel are repeated or removed (punctured).
- bits are repeated or punctured in order to match the number of bits to be transmit to the number of bits available.
- unused bit positions are filled by insertion of discontinuous transmission (DTX) indication bits in a step 210 .
- the DTX indication bits are not actually transmitted; the DTX indication bits identify when transmission should be turned off.
- a step 212 the bits are interleaved in order to reduce the noise sensitivity of the data.
- the particular way in which the bits are interleaved is pre-determined and defined in the WCDMA standard.
- the interleaving time interval is also known as the transmission time interval (TTI).
- the bits to transport are segmented and mapped onto consecutive transport channel radio frames in a step 214 .
- Each transport channel radio frame corresponds to a 10 ms radio frame period.
- the transport channel traffic may be interleaved over 1, 2, 4 or 8 radio frame periods.
- a step 216 calls for the radio frames from all transport channels to be serially multiplexed into a coded composite transport channel CCTrCH. More DTX indication bits may be inserted (in a step 218 ) to make the number of bits to be transmitted match the number of bits available. If multiple physical channels are to be used, the bits are segmented into separate physical channels in a step 220 .
- a physical channel can carry transport channels that have different TTIs.
- a second interleaving of bits in each radio frame for each physical channel occurs in a step 222 .
- the interleaving allows for greater time diversity and reduced noise sensitivity.
- a step 224 calls for the interleaved radio frames to be mapped to their respective physical channels for transmission.
- FIG. 3 illustrated is a diagram, generally designated 300 , showing the processing, de-multiplexing and decoding performed by the receiver unit 160 for downlink data transmission in accordance with the WCDMA standard.
- the processing in the block diagram 300 performed by the receive channel data processor 118 shown in FIG. 1, is a complementary set of receiver functions that reverse the specific operations performed by the transmit channel data processor 104 and described in detail in FIG. 2.
- the modulated signal is received, processed and digitized by the receiver baseband processor 116 shown in FIG. 1.
- the receiver baseband processor 116 passes the symbols for each physical channel used for data transmission to the receive channel data processor 118 .
- Each symbol corresponds to a transmitted bit or group of bits.
- the symbols from each physical channel are de-interleaved.
- the symbols are then serially concatenated in a step 304 .
- all DTX indicator bits are detected and removed in a step 306 .
- the symbols are de-multiplexed into different transport channels.
- the radio frames for each transport channel are provided to their respective transport channel processing sections 340 .
- each transport channel processing section 340 the radio frames are serially concatenated in a step 310 .
- Each channel may contain one or more transport channel radio frames and corresponds to the TTI used at the transmitter.
- the symbols are de-interleaved and DTX indication bits are identified and removed in a step 314 .
- a step 316 inverse rate matching to accumulate repeated symbols and insertion of “don't cares” for deleted symbols is performed.
- the channel decoder decodes each coded block in the transport channel.
- the decoded blocks are concatenated and segmented in a step 320 into their respective transport blocks.
- the CRC parity check is performed in a step 322 on each transport block.
- FIG. 4 illustrated is a block diagram of a channel decoder, generally designated 400 , constructed in accordance with the principles of the present invention.
- the channel decoder 400 is an embodiment of the channel decoder function described in step 318 of FIG. 3.
- Channel decoder 400 is part of the receiver path of a WCDMA compliant transmitter and receiver and incorporates a system or method constructed or carried out according to the principles of the invention.
- the channel decoder 400 includes a Viterbi decoder VD, a traceback circuit TC, a BTFD point selection circuit BTFD_PSC and a transport decode circuit TDC.
- the Viterbi decoder VD decodes the sequence of WCDMA symbols into a frame.
- BTFD is used to determine the transport format used.
- BTFD schemes are search processes that look for valid CRC bits in the frames to identify the overlying transport format.
- the following constraints are applied: (1) only one coded composite transport channel (CCTrCH) is received; (2) the number of CCTrCH bits per radio frame is 600 or less; (3) the number of transport format combinations of the CCTrCH is 64 or less; (4) fixed positions of the transport channels are used on the CCTrCH to be detectable; (5) convolutional coding is used on all explicitly detected TrCHs; (6) CRC with non-zero length is appended to transport blocks on all explicitly detected TrCHs; (7) at least one transport block shall be transmitted per TTI on each explicitly detectable TrCH; (8) the number of explicitly detectable TrCHs is 3 or less; (9) for all explicitly detectable TrCHs i, the number of code blocks in one TTI (C 1 ) shall not exceed 1 ; (10) the sum of the transport format set sizes of all explicitly detected TrCHs is 16 or less; and (11) at least one TrCH can be used as
- the traceback circuit TC associated with Viterbi decoder VD, performs a zero state BTFD traceback function with respect to at least a Viterbi-decoded portion of the frame.
- the traceback function is dependent upon a relative position of a BTFD checkpoint.
- the traceback function generates hard decision bits.
- the BTFD point selection circuit BTFD_PSC associated with the Viterbi decoder VD, employs hard decision bits to determine a location of a BTFD point with respect to the frame.
- the transport decode circuit TDC coupled to the BTFD point selection circuit BTFD_PSC, employs the BTFD point to extract user bits from the frame.
- FIG. 5 illustrated is a block diagram of an embodiment of a Viterbi decoding engine, generally designated 500 , constructed in accordance with the principles of the present invention.
- the Viterbi decoding engine includes a data fetch (DF), a forward trellis processor (FTP), a path metric memory (PMM), a butterfly structure with normalization (BSN), a normalization factor calculator (NFC), a Viterbi traceback processor (VTP) and a data packer (DP).
- DF data fetch
- FTP forward trellis processor
- PMM path metric memory
- BSN butterfly structure with normalization
- NFC normalization factor calculator
- VTP Viterbi traceback processor
- DP data packer
- the DF passes the received frames of data to the BSN for normal Viterbi decoding.
- the calculated path metric values for Viterbi decoding are stored in the PMM.
- the Path Metric Memory PMM contains eight banks of memory, each bank storing a number of path metric values depending on the code constraint.
- the path metric values are read out, normalized and presented to the BSN.
- the BSN calculates new path metric values and passes them to the FTP.
- the BSN also calculates decision bits, which are aggregated into bytes and written to the TC.
- the winning state, corresponding to the maximum path metric, for each trellis row is delivered to the VTP.
- the winning state for each trellis row becomes the starting point for the traceback process.
- the VTP includes a Traceback Circuit (TC), a BTFD Point Selection Circuit (BTFD_PSC) and a Transport Decode Circuit (TDC).
- the TC performs the traceback function while the at least Viterbi decoded portion of the frame is stored in a buffer.
- the TC receives input from the BSN of the winning state for each trellis row as well as a clock signal input.
- the TC examines each trellis row to determine the largest value to be used as a starting point from zero state, no matter what the last winning state is.
- the TC and the BTFD_PSC are integral to the Viterbi decoder.
- the TC and the BTFD_PSC may be associated with circuitry adjacent to the Viterbi decoder.
- a max (n end ), a mm ( n end ), and a 0 (n end ) are three path metrics (max, min and zero-state) at a checkpoint n end .
- a correct BTFD point may be declared only if S(n end ) ⁇ D and the CRC test passes. The final conclusion on the transport format is the point with minimum S(n end ) ⁇ D and a pass of the CRC test.
- the BTFD_PSC checks CRC results, performs threshold calculations and comparisons and sets hard decision bits for BTFD. The then BTFD_PSC determines the location of the BTFD checkpoint with respect to the frame while the hard decision bits are stored in a buffer.
- the BTFD may be an integral part of the Viterbi decoder.
- the Viterbi decoder can be implemented with a truncated version, that is, using a fixed window size traceback instead of full frame length traceback.
- the whole frame is partitioned into small blocks of the traceback window size.
- a normal block is decoded based on two blocks (the current and the next) of path metric computation and the traceback. The traceback is done from a maximum path metric state except for the last two blocks. The last two blocks are decoded by tracing back from zero state at once (decoder flushing).
- the BTFD checkpoint is positioned (1) at a traceback point, (2) within a traceback window or (3) at an end of the frame.
- the following presents a one-pass zero state traceback solution that corresponds to the three positions set forth above.
- TrL DecL.
- n end k*TrL
- n end k*TrL +M
- n end L for some integer k and M >0.
- An extra buffer BTFD_temp of size 2*TrL bits is included to store the hard decision bits that come out of the zero state traceback.
- a temporary buffer DEC_temp of TrL bits is also included to store some decoder output.
- n end L+NumTailBits
- the normal decoding operation sub-algorithm III, as shown in TABLE 3, is used.
- Threshold(n end ) > Threshold(n win )
- TABLE 4 An exemplary, full, one-pass, zero-state traceback BTFD algorithm is shown in TABLE 4.
- the third step of the one-pass BTFD algorithm can be implemented in hardware as an integral part of the Viterbi decoder with BTFD.
- DSP may be used to perform the data I/O operations.
- FIG. 6 illustrated is an embodiment of a BTFD control state machine, generally designated 600 , constructed in accordance with the principles of the invention.
- BTFD is performed in parallel with Viterbi decoding, thereby significantly decreasing the time and effort required to perform BTFD. This not only allows BTFD to be performed with respect to high rate channels, but also allows BTFD to be performed on channels of any rate more power-efficiently.
- the Viterbi decoding control and BTFD control 602 directs the BTFD control state machine to move from the initial decode state 604 and to start decoding the incoming frames, thus initiating normal Viterbi decoding in state 606 .
- the Viterbi decoder runs to the first checkpoint, then starts BTFD, moving to state 608: BTFD processing.
- state 606 is resumed and the next checkpoint decoded.
- state 608 is resumed for BTFD processing.
- the Viterbi decoding and BTFD processing continue until the final checkpoint is reached and decoding is finished. Then, the state returns to the initial decode state 604 .
- FIG. 7 illustrated is a functional block diagram for BTFD threshold computation and comparison, generally designated 700 , constructed in accordance with the principles of the present invention.
- the main function of 700 is to calculate the threshold and compare to previous thresholds.
- the threshold check is as follows:
- Threshold( n end ) D* ⁇ a max ( n end ) ⁇ a min ( n end ) ⁇ a 0 ( n end ) ⁇ a min ( n end ) ⁇ 0
- a PMM retrieve and compare block 702 receives the two inputs ⁇ (max) and ⁇ (min), performs an addition and passes the output ⁇ (max) ⁇ (min) to multiplier 708 .
- the multiplier 708 multiplies this input by D*, producing the output: D* ⁇ (max) ⁇ (min) ⁇ . This output is an input to adder 710 .
- the adder 706 receives inputs ⁇ ( 0 ) and ⁇ (min), performs an addition and passes the output ⁇ ( 0 ) ⁇ (min) to an inverter and then to the adder 710 .
- the adder 710 adds its two inputs to produce the following output: D* ⁇ (max) ⁇ (min) ⁇ ( 0 ) ⁇ (min) ⁇ . This output is the threshold to test.
- the comparator 714 tests whether the threshold is greater than zero, and also compares the current threshold to the previous threshold 712 . Depending on the result of the comparison, the points are either updated or bypassed. If the current threshold is greater than the previous threshold, then update the n win , point and previous threshold with the current point and threshold.
- FIG. 8 illustrated is a flow diagram of an embodiment of a method of performing the one-pass BTFD, generally designated 800 , constructed in accordance with the principles of the present invention.
- the method 800 starts in step 802 with an intent to decode the received frames using one-pass BTFD.
- the Viterbi decoder is run to the first checkpoint. Whole frames of data are transferred into the decoder input buffer.
- the VTP is configured with constraint length, code rate, CRC format and the first checkpoint.
- the VTP is run to the first BTFD checkpoint.
- hard decision bits are temporarily stored in the DEC_temp register.
- a first decisional step 810 the current threshold is checked. If a sufficient threshold is ascertained in the first decisional step 810 , the method 800 proceeds to step 812 .
- a sufficient threshold is non-negative.
- the decoder is flushed from the zero state, and hard decision bits are decoded.
- step 814 the CRC test is performed. If the CRC test passes, the method 800 proceeds to step 816 .
- step 816 the current threshold, Threshold(n end ), is calculated and compared to the previous stored threshold, Threshold(n win ).
- step 818 if the current threshold, Threshold(n end ), is greater than or equal to previous threshold, Threshold(n win ), then endpoints and thresholds are updated. That is, n end and Threshold(n end ) are stored in n win and Threshold(n win ) respectively.
- the hard decision bits are also buffered in BFTD_temp. The method 800 then proceeds to a third decisional step 820 .
- the method 800 proceeds to the third decisional step 820 .
- the method 800 determines whether the last BTFD checkpoint has been processed. If it is not the last BTFD checkpoint, the method 800 returns to step 804 . If the last BTFD checkpoint has been processed, the method 800 proceeds to step 822 . In step 822 , n win or a bad frame is declared. The method 800 ends in step 824 .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
- The present invention is directed, in general, to code-division multiple access (CDMA) communication systems and, more specifically, to a system and method for one-pass blind transport format detection (BTFD) for use in a CDMA receiver.
- Wireless communication is playing an evermore important role in today's world. More people are signing up for wireless service, and they are expecting their wireless terminals (e.g., pagers, phones, faxes and computers) to perform more functions more rapidly and efficiently than ever before.
- As wireless terminals and their associated networks grow in size and complexity, communication standards that give rise to interoperability among various manufacturers' systems become vital. Standards bodies are responding by designing new wireless networks, protocols and terminal features in a multinational effort called “3G, ” which is short for “third generation wireless information technology.”
- One standard that is garnering much attention these days is the “Universal Mobile Telecommunications System” standard, or UMTS. UMTS calls for the use of WCDMA (which stands for Wideband Code-Division Multiple Access) as its radio interface technology. WCDMA is the preferred technology, because its 5 Mhz carrier bandwidth can accommodate very high data communication speeds and therefore the speed, flexibility and features that people are beginning to demand.
- A CDMA system may be designed to support one or more CDMA standards such as (1) the “TIA/EIA-95-B Mobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular System” (the IS-95 standard), (2) the “TIA/EIA-98-D Recommended Minimum Standard for Dual-Mode Wideband Spread Spectrum Cellular Mobile Station” (the IS-98 standard), (3) the standard offered by a consortium named “3rd Generation Partnership Project” (3GPP) and embodied in a set of documents including Document Nos. 3G TS 25.211, 3G TS 25.212, 3G TS 25.213 and 3G TS 25.214 (the WCDMA standard) and (4) the standard offered by a consortium named “3rd Generation Partnership Project 2” (3GPP2) and embodied in a set of documents that includes Nos. C.S0002-A, C.S0005-A, C.S0010-A, C.S0011-A, C.S0024 and C.S0026 (the CDMA2000 standard). These standards are incorporated herein by reference.
- WCDMA can support more than one overlying transport format. In fact, UMTS currently supports 16 such transport formats for WCDMA. Each format calls for bits of information transmitted between stations to be gathered into frames and given Cyclic Redundancy Check (CRC) bits to ensure their integrity. However, the similarity between the various transport formats ends there. For a UMTS-compliant receiver to be able to interpret frames received from a UMTS-compliant transmitter, the receiver must come to know which one of the 16 possible transport formats the transmitter used to format the frames.
- Two ways exist for the receiver to gain such knowledge under the current UMTS standard. As a first alternative, the transmitter could expressly instruct the receiver as to which transport format it is using. UMTS accommodates an optional Transport Format Indicator (TFI) for just this purpose. As a second alternative, the receiver could determine the transport format for itself by, for example, looking for valid CRC bits in the frames. This process is called Blind Transport Format Detection, or BTFD.
- The apparent advantage in the first alternative is that the receiver's time and effort (which translates to energy consumption) are saved. However, bandwidth which could otherwise be used to carry user data is instead forced to carry TFIs. BTFD allows that bandwidth to be preserved for carrying user data, but obviously imposes processing effort and concomitant energy consumption on the receiver.
- Before venturing into a specific description of the nature of the processing effort, one technical detail should be discussed. WCDMA receivers do not directly receive bits from WCDMA transmitters. Instead, WCDMA receivers receive symbols; each symbol conventionally represents more than one bit in a given frame. Once received, the symbols are decoded, often in a circuit called a “Viterbi decoder.” A Viterbi decoder decodes convolutionally encoded bits using the Viterbi algorithm and is known to those skilled in the art.
- Currently, BTFD is carried out by first allowing the Viterbi decoder to decode received symbols into bits. A frame's worth of bits generated by the Viterbi decoder is then collected and stored in a buffer. Then, a software-based iterative process is initiated, whereby the frame is tested under each possible transport format until valid CRC bits are found. In the UMTS standard, which accommodates 16 possible transport formats, one would expect the process to have to be repeated eight times on average before finding the valid CRC bits.
- This iterative process obviously consumes time, processing resources and battery life. Because it is inherently slow, BTFD is only used with relatively low rate channels (typically voice channels). In the case of high rate channels (typically data channels), TFIs must be transmitted (at the loss of some bandwidth).
- Accordingly, what is needed in the art is a faster, less power consumptive way of carrying out BTFD in a receiver so high rate channels can be accommodated without requiring the transmission of bandwidth-reducing TFIs.
- To address the above-discussed deficiencies of the prior art, the present invention provides, for use in a CDMA receiver having a Viterbi decoder, a system for, and method of, performing one-pass BTFD with respect to a received frame and a WCDMA receiver incorporating the system or the method. In one embodiment, the system includes: (1) a traceback circuit that performs a zero state BTFD traceback function with respect to at least a Viterbi-decoded portion of the frame, the traceback function being dependent upon a relative position of a BTFD checkpoint and generating hard decision bits and (2) a BTFD point selection circuit, coupled to the traceback circuit, that employs the hard decision bits to determine a location of a BTFD point with respect to the frame.
- The present invention therefore introduces the broad concept of performing BTFD in parallel with Viterbi decoding, thereby significantly decreasing the time and effort required to perform BTFD. This not only allows BTFD to be performed with respect to high rate channels, but also allows BTFD to be performed on channels of any rate more power-efficiently.
- In one embodiment of the present invention, the BTFD checkpoint is positioned: (1) at a traceback point, (2) within a traceback window or (3) at an end of the frame. Three sub-algorithms will be set forth in the Detailed Description that correspond to the three positions set forth above.
- In one embodiment of the present invention, the at least the Viterbi-decoded portion is two blocks of the frame. In an embodiment to be illustrated and described, the two blocks are current and next blocks.
- In one embodiment of the present invention, the BTFD point selection circuit determines the BTFD point to be a BTFD checkpoint having a maximum threshold. This process will be set forth in greater detail in the detailed description that follows.
- In one embodiment of the present invention, the traceback circuit performs the traceback function while the at least the Viterbi-decoded portion of the frame is stored in a buffer. In a related embodiment, the BTFD point selection circuit determines the location of the BTFD point with respect to the frame while the hard decision bits are stored in a buffer. These and other implementation-specific details will be described hereinafter.
- In one embodiment of the present invention, the traceback circuit and the BTFD point selection circuit are integral to the Viterbi decoder. Alternatively, the traceback circuit and the BTFD point selection circuit may be associated with circuitry adjacent to the Viterbi decoder.
- The foregoing has outlined, rather broadly, preferred and alternative features of the present invention so that those skilled in the art may better understand the detailed description of the invention that follows. Additional features of the invention will be described hereinafter that form the subject of the claims of the invention. Those skilled in the art should appreciate that they can readily use the disclosed conception and specific embodiment as a basis for designing or modifying other structures for carrying out the same purposes of the present invention. Those skilled in the art should also realize that such equivalent constructions do not depart from the spirit and scope of the invention in its broadest form.
- For a more complete understanding of the present invention, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
- FIG. 1 illustrates a block diagram of a WCDMA-compliant transmitter and receiver, the receiver incorporating a system or method constructed or carried out according to the principles of the present invention;
- FIG. 2 illustrates a diagram showing the coding, multiplexing and processing performed by the transmit unit for downlink data transmission in accordance with the WCDMA standard;
- FIG. 3 illustrates a diagram showing the processing, de-multiplexing and decoding performed by the receiver unit for downlink data transmission in accordance with the WCDMA standard;
- FIG. 4 illustrates a block diagram of a channel decoder constructed in accordance with the principles of the present invention;
- FIG. 5 illustrates a block diagram of an embodiment of a Viterbi decoding engine constructed in accordance with the principles of the present invention;
- FIG. 6 illustrates an embodiment of a BTFD control state machine constructed in accordance with the principles of the present invention;
- FIG. 7 illustrates a functional block diagram for BTFD threshold computation and comparison constructed in accordance with the principles of the present invention; and
- FIG. 8 illustrates a flow diagram of an embodiment of a method of performing the one-pass BTFD.
- Referring initially to FIG. 1, illustrated is a block diagram of a WCDMA-compliant transmitter and receiver, generally designated100. The receiver incorporates a system or a method constructed or carried out according to the principles of the present invention.
- The
communications system 100 includes a transmitunit 140 and a receiveunit 160. The transmitunit 140 includes adata source 102, a transmitchannel data processor 104, atransmitter baseband processor 106, anRF transmitter 108 and anantenna 110. The receiveunit 160 includes anantenna 112, anRF receiver 114, areceiver baseband processor 116, a receivechannel data processor 118 and adata sink 120. Note that, while FIG. 1 illustrates but single-element transmit and receive antennas, certain applications of the present invention may advantageously call for multiple-element transmit and receive antennas. - Data is sent from
data source 102 in blocks to the transmitchannel data processor 104. The transmitchannel data processor 104 formats, codes and processes the data to produce one or more analog signals to be transmit. The transmitchannel data processor 104 further converts the data from digital to analog form. Thetransmitter baseband processor 106 takes the analog signals and quadrature modulates, filters, amplifies and converts the frequency of the analog signals to radio frequency (RF). The modulated RF signals, sequences of WCDMA symbols, are transmit by theantenna 110. - At the
receiver unit 160, the transmitted signal is received by theantenna 112. The RF signals are then downcoverted to an intermediate or baseband frequency, filtered and quadrature demodulated by thereceiver baseband processor 116. Thereceiver baseband processor 116 also performs analog-to-digital conversion of the received signals. The digital samples are then processed by the receivechannel data processor 118, which decodes and processes the samples to recover the transmitted data. The processing performed by the receivechannel data processor 118 is a set of receiver functions that reverse the specific operations performed by the transportchannel data processor 104. The recovered data is passed to the data sink 120. - Turning now to FIG. 2, illustrated is a diagram, generally designated200, showing the coding, multiplexing and processing performed by the transmit
unit 140 for downlink data transmission in accordance with the WCDMA standard. “Downlink” refers to transmission from a base station to a user terminal. “Uplink” refers to transmission from the user equipment to the base station. The coding, multiplexing and processing blocks shown in FIG. 2 are generally performed by the transmitchannel data processor 104 shown in FIG. 1. As previously described, UMTS currently supports 16 transport formats for WCDMA. - Data to be transmitted arrives at the transmit
channel data processor 104 as blocks of data, also called “transport blocks,” at specified transmission time intervals (TTI). The TTI is transport channel specific, and can be one of the following intervals: 10 ms, 20 ms, 40 ms or 80 ms. Other portions of the WCDMA system support concurrent transmission of multiple transport channels. - Each transport channel block240 performs substantially the same processing steps. The entire transport block is used to calculate CRC parity bits and attach them (a step 202) to the end of the transport block. The CRC parity bits are used for error detection. Transport blocks with the CRC attachments are serially concatenated. If the number of bits in a TTI is larger than the maximum size of the code block, the code block is segmented into a number of equal-sized code blocks (a step 204). The maximum size of the code block depends upon the type of coding used for the particular transport channel. Coding schemes supported by the WCDMA standard are convolutional coding, turbo coding and no coding. In a
step 206, each of the code blocks is coded using one of the supported coding schemes. In the illustrated embodiment, a convolutional code is used. - Rate matching is performed in a
step 208. Rate matching means that bits on a transport channel are repeated or removed (punctured). On uplink, bits are repeated or punctured in order to match the number of bits to be transmit to the number of bits available. On downlink, unused bit positions are filled by insertion of discontinuous transmission (DTX) indication bits in astep 210. The DTX indication bits are not actually transmitted; the DTX indication bits identify when transmission should be turned off. - In a
step 212, the bits are interleaved in order to reduce the noise sensitivity of the data. The particular way in which the bits are interleaved is pre-determined and defined in the WCDMA standard. The interleaving time interval is also known as the transmission time interval (TTI). - If the TTI for the specific transport channel is greater than 10 ms, the bits to transport are segmented and mapped onto consecutive transport channel radio frames in a
step 214. Each transport channel radio frame corresponds to a 10 ms radio frame period. As the TTI can be either 10 ms, 20 ms, 40 ms or 80 ms as defined in the WCDMA standard, the transport channel traffic may be interleaved over 1, 2, 4 or 8 radio frame periods. - A
step 216 calls for the radio frames from all transport channels to be serially multiplexed into a coded composite transport channel CCTrCH. More DTX indication bits may be inserted (in a step 218) to make the number of bits to be transmitted match the number of bits available. If multiple physical channels are to be used, the bits are segmented into separate physical channels in astep 220. A physical channel can carry transport channels that have different TTIs. - A second interleaving of bits in each radio frame for each physical channel occurs in a
step 222. The interleaving allows for greater time diversity and reduced noise sensitivity. Finally, astep 224 calls for the interleaved radio frames to be mapped to their respective physical channels for transmission. - Turning now to FIG. 3, illustrated is a diagram, generally designated300, showing the processing, de-multiplexing and decoding performed by the
receiver unit 160 for downlink data transmission in accordance with the WCDMA standard. The processing in the block diagram 300, performed by the receivechannel data processor 118 shown in FIG. 1, is a complementary set of receiver functions that reverse the specific operations performed by the transmitchannel data processor 104 and described in detail in FIG. 2. The modulated signal is received, processed and digitized by thereceiver baseband processor 116 shown in FIG. 1. Thereceiver baseband processor 116 passes the symbols for each physical channel used for data transmission to the receivechannel data processor 118. - Each symbol corresponds to a transmitted bit or group of bits. In a
step 302, the symbols from each physical channel are de-interleaved. The symbols are then serially concatenated in astep 304. For a downlink transmission, all DTX indicator bits are detected and removed in astep 306. Then, in astep 308, the symbols are de-multiplexed into different transport channels. The radio frames for each transport channel are provided to their respective transport channel processing sections 340. - In each transport channel processing section340, the radio frames are serially concatenated in a
step 310. Each channel may contain one or more transport channel radio frames and corresponds to the TTI used at the transmitter. In astep 312, the symbols are de-interleaved and DTX indication bits are identified and removed in astep 314. In astep 316, inverse rate matching to accumulate repeated symbols and insertion of “don't cares” for deleted symbols is performed. - In a
step 318, the channel decoder decodes each coded block in the transport channel. The decoded blocks are concatenated and segmented in astep 320 into their respective transport blocks. The CRC parity check is performed in astep 322 on each transport block. - Turning now to FIG. 4, illustrated is a block diagram of a channel decoder, generally designated400, constructed in accordance with the principles of the present invention. The
channel decoder 400 is an embodiment of the channel decoder function described instep 318 of FIG. 3.Channel decoder 400 is part of the receiver path of a WCDMA compliant transmitter and receiver and incorporates a system or method constructed or carried out according to the principles of the invention. - The
channel decoder 400 includes a Viterbi decoder VD, a traceback circuit TC, a BTFD point selection circuit BTFD_PSC and a transport decode circuit TDC. The Viterbi decoder VD decodes the sequence of WCDMA symbols into a frame. As described above, BTFD is used to determine the transport format used. BTFD schemes are search processes that look for valid CRC bits in the frames to identify the overlying transport format. While the UMTS WCDMA standard specifies quite complicated transport, multiplexing, channel coding and channel structures, in the illustrated embodiment, the following constraints are applied: (1) only one coded composite transport channel (CCTrCH) is received; (2) the number of CCTrCH bits per radio frame is 600 or less; (3) the number of transport format combinations of the CCTrCH is 64 or less; (4) fixed positions of the transport channels are used on the CCTrCH to be detectable; (5) convolutional coding is used on all explicitly detected TrCHs; (6) CRC with non-zero length is appended to transport blocks on all explicitly detected TrCHs; (7) at least one transport block shall be transmitted per TTI on each explicitly detectable TrCH; (8) the number of explicitly detectable TrCHs is 3 or less; (9) for all explicitly detectable TrCHs i, the number of code blocks in one TTI (C1) shall not exceed 1; (10) the sum of the transport format set sizes of all explicitly detected TrCHs is 16 or less; and (11) at least one TrCH can be used as the guiding transport channel for all transport channels using guided detection. - The traceback circuit TC, associated with Viterbi decoder VD, performs a zero state BTFD traceback function with respect to at least a Viterbi-decoded portion of the frame. The traceback function is dependent upon a relative position of a BTFD checkpoint. The traceback function generates hard decision bits.
- The BTFD point selection circuit BTFD_PSC, associated with the Viterbi decoder VD, employs hard decision bits to determine a location of a BTFD point with respect to the frame. The transport decode circuit TDC, coupled to the BTFD point selection circuit BTFD_PSC, employs the BTFD point to extract user bits from the frame.
- Turning now to FIG. 5, illustrated is a block diagram of an embodiment of a Viterbi decoding engine, generally designated500, constructed in accordance with the principles of the present invention. The Viterbi decoding engine includes a data fetch (DF), a forward trellis processor (FTP), a path metric memory (PMM), a butterfly structure with normalization (BSN), a normalization factor calculator (NFC), a Viterbi traceback processor (VTP) and a data packer (DP).
- The DF passes the received frames of data to the BSN for normal Viterbi decoding. The calculated path metric values for Viterbi decoding are stored in the PMM. In one embodiment of the invention, the Path Metric Memory PMM contains eight banks of memory, each bank storing a number of path metric values depending on the code constraint. The path metric values are read out, normalized and presented to the BSN. The BSN calculates new path metric values and passes them to the FTP. The BSN also calculates decision bits, which are aggregated into bytes and written to the TC. The winning state, corresponding to the maximum path metric, for each trellis row is delivered to the VTP. The winning state for each trellis row becomes the starting point for the traceback process.
- The VTP includes a Traceback Circuit (TC), a BTFD Point Selection Circuit (BTFD_PSC) and a Transport Decode Circuit (TDC). The TC performs the traceback function while the at least Viterbi decoded portion of the frame is stored in a buffer. The TC receives input from the BSN of the winning state for each trellis row as well as a clock signal input. The TC examines each trellis row to determine the largest value to be used as a starting point from zero state, no matter what the last winning state is. In one embodiment of the present invention, the TC and the BTFD_PSC are integral to the Viterbi decoder. Alternatively, the TC and the BTFD_PSC may be associated with circuitry adjacent to the Viterbi decoder.
-
- where amax (nend), amm ( nend), and a0 (nend) are three path metrics (max, min and zero-state) at a checkpoint nend. A correct BTFD point may be declared only if S(nend)≦D and the CRC test passes. The final conclusion on the transport format is the point with minimum S(nend)≦D and a pass of the CRC test.
-
-
- should be programmed after system calibration based upon performance evaluation.
- The BTFD_PSC checks CRC results, performs threshold calculations and comparisons and sets hard decision bits for BTFD. The then BTFD_PSC determines the location of the BTFD checkpoint with respect to the frame while the hard decision bits are stored in a buffer. In one embodiment of the invention, the BTFD may be an integral part of the Viterbi decoder. For traceback memory saving, the Viterbi decoder can be implemented with a truncated version, that is, using a fixed window size traceback instead of full frame length traceback. In this embodiment, the whole frame is partitioned into small blocks of the traceback window size. A normal block is decoded based on two blocks (the current and the next) of path metric computation and the traceback. The traceback is done from a maximum path metric state except for the last two blocks. The last two blocks are decoded by tracing back from zero state at once (decoder flushing).
- In one embodiment of the present invention, there are three possibilities for the position of each BTFD checkpoint: the BTFD checkpoint is positioned (1) at a traceback point, (2) within a traceback window or (3) at an end of the frame. The following presents a one-pass zero state traceback solution that corresponds to the three positions set forth above.
- Suppose the frame size is L, the traceback length is TrL and the decoded portion after each traceback is DecL. In this embodiment, TrL =DecL. For BTFD checkpoint nend, three alternatives exist: nend=k*TrL , nend=k*TrL +M or nend=L for some integer k and M >0. As BTFD may traceback from different states as compared to normal truncated Viterbi decoding, hardware context switch and path metric computation rollback is needed. Proper resource management in the Viterbi decoder is important in implementing these BTFD schemes. An extra buffer BTFD_temp of
size 2*TrL bits is included to store the hard decision bits that come out of the zero state traceback. A temporary buffer DEC_temp of TrL bits is also included to store some decoder output. - For the first case, with nend=k*TrL , sub-algorithm I, as shown in TABLE 1, is used.
TABLE 1 Sub-algorithm I (1) Trace back from the state with maximum path metric at timing moment nend to decode the portion with time index [(k − 2)*TrL, (k − 1)*TrL]. This is normal Viterbi decoder operation. Buffer the hard decision bits into DEC_temp. (2) Check threshold: Is Threshold(nend) >= 0? (3) If threshold check passes, flush decoder from zero state and decode hard decision bits with time index [(k − 2)*TrL, k*TrL]. Note that portion [(k − 2)*TrL, (k − 1)*TrL] gets re- decoded. If threshold check does not pass, go to step (5). (4) Calculate and check CRC. If CRC passes, compare Threshold(nend) with Threshold(nwin). If Threshold(nend) >= Threshold(nwin), then update nwin = nend, Threshold (nwin) = Threshold(nend) and buffer the hard decision bits into BTFD_temp. (5) Copy the hard decision bits from DEC_temp into decoder output buffer to replace the corresponding portion with time index [(k − 2)*TrL, (k − 1)*TrL]. Continue the Viterbi decoder operation to decode the portion with time index [(k − 1)*TrL, k*TrL] again (traceback from state with maximum path metric at time moment (k + 1)*TrL later). - For the second case, with nend=k*TrL +M, sub-algorithm II, as shown in TABLE 2, is used.
TABLE 2 Sub-algorithm II (1) Trace back from the state with maximum path metric at timing moment (k + 1)*TrL to decode the portion with time index [(k − 1)*TrL, k*TrL]. Buffer the hard decision bits into DEC_temp. (2) Check threshold: Is Threshold(nend) >= 0? (3) If threshold check passes, flush decoder from zero state and decode hard decision bits with time index [(k − 1)*TrL, nend]. Note that portion [(k − 1)*TrL, k*TrL] gets re-decoded. If threshold check does not pass, go to step (5). (4) Calculate and check CRC. If CRC passes, compare Threshold(nend) with Threshold(nwin). If Threshold(nend) >= Threshold(nwin), then update nwin = nend, Threshold(nwin) = Threshold(nend) and buffer the hard decision bits into BTFD_temp. (5) Copy the hard decision bits from DEC_temp into decoder output buffer to replace the corresponding portion with time index [(k − 1)*TrL, k*TrL]. Continue the Viterbi decoder operation to decode the portion with time index [k*TrL, (k + 1)*TrL] again (traceback from state with maximum path metric at time moment (k + 2)*TrL later). - The third BTFD case, nend=L+NumTailBits, is straightforward in traceback, CRC check and path metrics examination. The normal decoding operation, sub-algorithm III, as shown in TABLE 3, is used.
TABLE 3 Sub-algorithm III (1) Flush decoder from zero state and decode hard decision bits with time index [(k − 1)*TrL, nend]. Note that no temporary buffer is needed in this case. (2) Check threshold: Is Threshold(nend) >= 0? (3) If threshold check passes, calculate and check CRC. If CRC passes, compare Threshold(nend) with Threshold(nwin). If Threshold(nend) >= Threshold(nwin), then update nwin = nend and Threshold(nwin) = Threshold(nend). If CRC does not pass, do nothing. Decoding and BTFD finished. - An exemplary, full, one-pass, zero-state traceback BTFD algorithm is shown in TABLE 4. In one embodiment of the invention, the third step of the one-pass BTFD algorithm can be implemented in hardware as an integral part of the Viterbi decoder with BTFD. In another embodiment of the invention, DSP may be used to perform the data I/O operations.
TABLE 4 One-pass BTFD algorithm Step(1): Initialize nwin = NULL and Threshold (nwin) = 0. Step(2): For each BTFD checkpoint nend { If nend = k*TrL and nend < L+NumTailBits { Execute Sub-algorithm I; } else if nend = k*TrL and nend <L+NumTailBits { Execute Sub-algorithm II; } else if nend = L+NumTailBits { Execute Sub-algorithm III; } } Step (3): If(nwin != NULL) { Declare nwin ; If(nwin < L+NumTailBits) { Read out hard bits stored in BTFD_temp for Sub- algorithm I and II; Overwrite the corresponding portion of the Decoder output buffer; } } else { Declare a bad frame; } - Turning now to FIG. 6, illustrated is an embodiment of a BTFD control state machine, generally designated600, constructed in accordance with the principles of the invention. BTFD is performed in parallel with Viterbi decoding, thereby significantly decreasing the time and effort required to perform BTFD. This not only allows BTFD to be performed with respect to high rate channels, but also allows BTFD to be performed on channels of any rate more power-efficiently.
- The Viterbi decoding control and
BTFD control 602 directs the BTFD control state machine to move from theinitial decode state 604 and to start decoding the incoming frames, thus initiating normal Viterbi decoding instate 606. The Viterbi decoder runs to the first checkpoint, then starts BTFD, moving to state 608: BTFD processing. When the BTFD processing is finished, thestate 606 is resumed and the next checkpoint decoded. Then,state 608 is resumed for BTFD processing. The Viterbi decoding and BTFD processing continue until the final checkpoint is reached and decoding is finished. Then, the state returns to theinitial decode state 604. - Turning now to FIG. 7, illustrated is a functional block diagram for BTFD threshold computation and comparison, generally designated700, constructed in accordance with the principles of the present invention. The main function of 700 is to calculate the threshold and compare to previous thresholds. As indicated in the previous discussions, the threshold check is as follows:
- Threshold(n end)=D*{a max(n end)−a min(n end)}−{a 0(n end)−a min(n end)}≧0
- Included in700 is a PMM retrieve and compare
block 702, threeadders multiplier 708, acomparator 714 and amemory block 712. Theadder 704 receives the two inputs α(max) and −α(min), performs an addition and passes the output α(max)−α(min) tomultiplier 708. Themultiplier 708 multiplies this input by D*, producing the output: D*{α(max)−α(min)}. This output is an input to adder 710. Theadder 706 receives inputs α(0) and −α(min), performs an addition and passes the output α(0)−α(min) to an inverter and then to theadder 710 . Theadder 710 adds its two inputs to produce the following output: D*{α(max)−α(min)}−{α(0)−α(min)}. This output is the threshold to test. Thecomparator 714 tests whether the threshold is greater than zero, and also compares the current threshold to theprevious threshold 712. Depending on the result of the comparison, the points are either updated or bypassed. If the current threshold is greater than the previous threshold, then update the nwin, point and previous threshold with the current point and threshold. - Turning now to FIG. 8, illustrated is a flow diagram of an embodiment of a method of performing the one-pass BTFD, generally designated800, constructed in accordance with the principles of the present invention.
- The
method 800 starts instep 802 with an intent to decode the received frames using one-pass BTFD. In the firstoperational step 804, the Viterbi decoder is run to the first checkpoint. Whole frames of data are transferred into the decoder input buffer. Then instep 806, the VTP is configured with constraint length, code rate, CRC format and the first checkpoint. Then, the VTP is run to the first BTFD checkpoint. Next, instep 808, hard decision bits are temporarily stored in the DEC_temp register. - In a first
decisional step 810, the current threshold is checked. If a sufficient threshold is ascertained in the firstdecisional step 810, themethod 800 proceeds to step 812. In an exemplary embodiment, a sufficient threshold is non-negative. In thestep 812, the decoder is flushed from the zero state, and hard decision bits are decoded. - Next, the
method 800 proceeds to the seconddecisional step 814, in which the CRC test is performed. If the CRC test passes, themethod 800 proceeds to step 816. Instep 816, the current threshold, Threshold(nend), is calculated and compared to the previous stored threshold, Threshold(nwin). - In
step 818, if the current threshold, Threshold(nend), is greater than or equal to previous threshold, Threshold(nwin), then endpoints and thresholds are updated. That is, nend and Threshold(nend) are stored in nwin and Threshold(nwin) respectively. The hard decision bits are also buffered in BFTD_temp. Themethod 800 then proceeds to a thirddecisional step 820. - If a decision was made in the first
decisional step 810 that the threshold was not sufficient, or if the CRC test performed in the seconddecisional step 814 failed, then themethod 800 proceeds to the thirddecisional step 820. - In the third
decisional step 820, themethod 800 determines whether the last BTFD checkpoint has been processed. If it is not the last BTFD checkpoint, themethod 800 returns to step 804. If the last BTFD checkpoint has been processed, themethod 800 proceeds to step 822. Instep 822, nwin or a bad frame is declared. Themethod 800 ends instep 824. - Although the present invention has been described in detail, those skilled in the art should understand that they can make various changes, substitutions and alterations herein without departing from the spirit and scope of the invention in its broadest form.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/292,268 US7463702B2 (en) | 2002-11-12 | 2002-11-12 | System and method for one-pass blind transport format detection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/292,268 US7463702B2 (en) | 2002-11-12 | 2002-11-12 | System and method for one-pass blind transport format detection |
Publications (2)
Publication Number | Publication Date |
---|---|
US20040091067A1 true US20040091067A1 (en) | 2004-05-13 |
US7463702B2 US7463702B2 (en) | 2008-12-09 |
Family
ID=32229417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/292,268 Expired - Fee Related US7463702B2 (en) | 2002-11-12 | 2002-11-12 | System and method for one-pass blind transport format detection |
Country Status (1)
Country | Link |
---|---|
US (1) | US7463702B2 (en) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040160933A1 (en) * | 2003-02-18 | 2004-08-19 | Odenwalder Joseph P. | Code division multiplexing commands on a code division multiplexed channel |
US20040199848A1 (en) * | 2002-03-29 | 2004-10-07 | Kazuhiko Tamesue | Error correction decoding apparatus and error correction decoding method |
US20040264418A1 (en) * | 2003-06-30 | 2004-12-30 | Intel Corporation | Rate matching apparatus, systems, and methods |
US20050002324A1 (en) * | 2003-05-14 | 2005-01-06 | Arak Sutivong | Interference and noise estimation in an OFDM system |
US20050007986A1 (en) * | 2003-02-18 | 2005-01-13 | Malladi Durga P. | Outer-loop power control for wireless communication systems |
US20050187995A1 (en) * | 2003-06-30 | 2005-08-25 | Lev Smolyar | Device, system and method for blind format detection |
GB2418820A (en) * | 2004-09-29 | 2006-04-05 | Nec Electronics Corp | Blind transport format (TF) determination (BTFD) for 3G phones using maximum likelihood with reduced decoding using temporary buffers for decoded data |
US20060083204A1 (en) * | 2004-10-15 | 2006-04-20 | Mitsubishi Denki Kabushiki Kaisha | Method and device for multiplexing a transport channel in flexible position |
WO2006064309A1 (en) * | 2004-12-13 | 2006-06-22 | Freescale Semiconductor, Inc. | Apparatus and method for detecting an end point of an information frame |
US20070036104A1 (en) * | 2005-08-11 | 2007-02-15 | Rainer Bachl | Dedicated control channel detection for enhanced dedicated channel |
US20070206623A1 (en) * | 2003-08-05 | 2007-09-06 | Qualcomm, Incorporated | Combining grant, acknowledgement, and rate control commands |
US20070280171A1 (en) * | 2006-05-31 | 2007-12-06 | Rafael Carmon | Method and apparatus for blind transport format detection using discontinuous transmission (DTX) detection |
US20080159237A1 (en) * | 2006-12-27 | 2008-07-03 | Francis Dominique | Power reduction methods in enhanced transmitters and receivers |
US20080194286A1 (en) * | 2003-02-18 | 2008-08-14 | Qualcomm Incorporated | Systems and methods for performing outer loop power control in wireless communication systems |
US20100153103A1 (en) * | 2005-12-21 | 2010-06-17 | Arie Heiman | Method and system for decoding wcdma amr speech data using redundancy |
US20120134293A1 (en) * | 2009-02-23 | 2012-05-31 | Freescale Semiconductor, Inc. | Processing data flows |
US20130205176A1 (en) * | 2012-02-03 | 2013-08-08 | Research In Motion Limited | Method and apparatus for reducing false detection of control information |
US8526966B2 (en) | 2003-02-18 | 2013-09-03 | Qualcomm Incorporated | Scheduled and autonomous transmission and acknowledgement |
US8548387B2 (en) | 2003-03-06 | 2013-10-01 | Qualcomm Incorporated | Method and apparatus for providing uplink signal-to-noise ratio (SNR) estimation in a wireless communication system |
US8705588B2 (en) | 2003-03-06 | 2014-04-22 | Qualcomm Incorporated | Systems and methods for using code space in spread-spectrum communications |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7660282B2 (en) | 2003-02-18 | 2010-02-09 | Qualcomm Incorporated | Congestion control in a wireless data network |
US8150407B2 (en) | 2003-02-18 | 2012-04-03 | Qualcomm Incorporated | System and method for scheduling transmissions in a wireless communication system |
US20040160922A1 (en) | 2003-02-18 | 2004-08-19 | Sanjiv Nanda | Method and apparatus for controlling data rate of a reverse link in a communication system |
US8023950B2 (en) | 2003-02-18 | 2011-09-20 | Qualcomm Incorporated | Systems and methods for using selectable frame durations in a wireless communication system |
EP1755228A4 (en) * | 2004-05-27 | 2008-04-16 | Matsushita Electric Ind Co Ltd | Viterbi decoding apparatus and viterbi decoding method |
ATE368963T1 (en) * | 2004-06-03 | 2007-08-15 | Ttp Communications Ltd | DATA STREAM RECOVERY |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5928378A (en) * | 1996-08-23 | 1999-07-27 | Daewoo Electronics Co., Ltd. | Add-compare-select processor in Viterbi decoder |
US20030007580A1 (en) * | 2001-06-08 | 2003-01-09 | Toshio Nagata | Blind transport format detection system and method |
US20030108011A1 (en) * | 2001-12-06 | 2003-06-12 | Yong-Su Lee | Blind rate detection method and device in asynchronous mobile communication system |
US6765887B1 (en) * | 2000-09-06 | 2004-07-20 | Qualcomm Inc. | Method and apparatus for processing a received transmission based on processing delays requirement |
US6885701B2 (en) * | 2000-08-31 | 2005-04-26 | Sony Corporation | Data demodulation apparatus and method |
US7024602B2 (en) * | 2000-06-21 | 2006-04-04 | Fujitsu Limited | Transmission format detection method |
US7072926B2 (en) * | 2001-06-08 | 2006-07-04 | Texas Instruments Incorporated | Blind transport format detection system and method with logarithm approximation for reliability figure |
US7228491B2 (en) * | 2002-12-18 | 2007-06-05 | Sony Ericsson Mobile Communications Japan, Inc. | Signal processing device and signal processing method |
-
2002
- 2002-11-12 US US10/292,268 patent/US7463702B2/en not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5928378A (en) * | 1996-08-23 | 1999-07-27 | Daewoo Electronics Co., Ltd. | Add-compare-select processor in Viterbi decoder |
US7024602B2 (en) * | 2000-06-21 | 2006-04-04 | Fujitsu Limited | Transmission format detection method |
US6885701B2 (en) * | 2000-08-31 | 2005-04-26 | Sony Corporation | Data demodulation apparatus and method |
US6765887B1 (en) * | 2000-09-06 | 2004-07-20 | Qualcomm Inc. | Method and apparatus for processing a received transmission based on processing delays requirement |
US20030007580A1 (en) * | 2001-06-08 | 2003-01-09 | Toshio Nagata | Blind transport format detection system and method |
US7072926B2 (en) * | 2001-06-08 | 2006-07-04 | Texas Instruments Incorporated | Blind transport format detection system and method with logarithm approximation for reliability figure |
US20030108011A1 (en) * | 2001-12-06 | 2003-06-12 | Yong-Su Lee | Blind rate detection method and device in asynchronous mobile communication system |
US7184409B2 (en) * | 2001-12-06 | 2007-02-27 | Electronics And Telecommunications Research Institute | Blind rate detection method and device in asynchronous mobile communication system |
US7228491B2 (en) * | 2002-12-18 | 2007-06-05 | Sony Ericsson Mobile Communications Japan, Inc. | Signal processing device and signal processing method |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040199848A1 (en) * | 2002-03-29 | 2004-10-07 | Kazuhiko Tamesue | Error correction decoding apparatus and error correction decoding method |
US8391249B2 (en) | 2003-02-18 | 2013-03-05 | Qualcomm Incorporated | Code division multiplexing commands on a code division multiplexed channel |
US20040160933A1 (en) * | 2003-02-18 | 2004-08-19 | Odenwalder Joseph P. | Code division multiplexing commands on a code division multiplexed channel |
US20050007986A1 (en) * | 2003-02-18 | 2005-01-13 | Malladi Durga P. | Outer-loop power control for wireless communication systems |
US8081598B2 (en) * | 2003-02-18 | 2011-12-20 | Qualcomm Incorporated | Outer-loop power control for wireless communication systems |
US8526966B2 (en) | 2003-02-18 | 2013-09-03 | Qualcomm Incorporated | Scheduled and autonomous transmission and acknowledgement |
US20080194286A1 (en) * | 2003-02-18 | 2008-08-14 | Qualcomm Incorporated | Systems and methods for performing outer loop power control in wireless communication systems |
US8705588B2 (en) | 2003-03-06 | 2014-04-22 | Qualcomm Incorporated | Systems and methods for using code space in spread-spectrum communications |
US8548387B2 (en) | 2003-03-06 | 2013-10-01 | Qualcomm Incorporated | Method and apparatus for providing uplink signal-to-noise ratio (SNR) estimation in a wireless communication system |
US20050002324A1 (en) * | 2003-05-14 | 2005-01-06 | Arak Sutivong | Interference and noise estimation in an OFDM system |
US8477592B2 (en) | 2003-05-14 | 2013-07-02 | Qualcomm Incorporated | Interference and noise estimation in an OFDM system |
US20050187995A1 (en) * | 2003-06-30 | 2005-08-25 | Lev Smolyar | Device, system and method for blind format detection |
US7277496B2 (en) * | 2003-06-30 | 2007-10-02 | Intel Corporation | Device, system and method for blind format detection |
US7260659B2 (en) * | 2003-06-30 | 2007-08-21 | Intel Corporation | Rate matching apparatus, systems, and methods |
US20080013495A1 (en) * | 2003-06-30 | 2008-01-17 | Intel Corporation | Rate matching apparatus, systems, and methods |
US20040264418A1 (en) * | 2003-06-30 | 2004-12-30 | Intel Corporation | Rate matching apparatus, systems, and methods |
US7568058B2 (en) | 2003-06-30 | 2009-07-28 | Intel Corporation | Rate matching apparatus, systems, and methods |
US20070206623A1 (en) * | 2003-08-05 | 2007-09-06 | Qualcomm, Incorporated | Combining grant, acknowledgement, and rate control commands |
US8201039B2 (en) | 2003-08-05 | 2012-06-12 | Qualcomm Incorporated | Combining grant, acknowledgement, and rate control commands |
US8489949B2 (en) | 2003-08-05 | 2013-07-16 | Qualcomm Incorporated | Combining grant, acknowledgement, and rate control commands |
US7519897B2 (en) | 2004-09-29 | 2009-04-14 | Nec Electronics Corporation | Decoding apparatus and decoding method |
GB2418820B (en) * | 2004-09-29 | 2007-04-25 | Nec Electronics Corp | Decoding apparatus and decoding method |
GB2418820A (en) * | 2004-09-29 | 2006-04-05 | Nec Electronics Corp | Blind transport format (TF) determination (BTFD) for 3G phones using maximum likelihood with reduced decoding using temporary buffers for decoded data |
US20060083204A1 (en) * | 2004-10-15 | 2006-04-20 | Mitsubishi Denki Kabushiki Kaisha | Method and device for multiplexing a transport channel in flexible position |
US8020067B2 (en) | 2004-12-13 | 2011-09-13 | Freescale Semiconductor, Inc. | Apparatus and method for detecting an end point of an information frame |
WO2006064309A1 (en) * | 2004-12-13 | 2006-06-22 | Freescale Semiconductor, Inc. | Apparatus and method for detecting an end point of an information frame |
US8086257B2 (en) * | 2005-08-11 | 2011-12-27 | Alcatel Lucent | Dedicated control channel detection for enhanced dedicated channel |
US20070036104A1 (en) * | 2005-08-11 | 2007-02-15 | Rainer Bachl | Dedicated control channel detection for enhanced dedicated channel |
US20100153103A1 (en) * | 2005-12-21 | 2010-06-17 | Arie Heiman | Method and system for decoding wcdma amr speech data using redundancy |
US8121104B2 (en) * | 2006-05-31 | 2012-02-21 | Agere Systems Inc. | Method and apparatus for blind transport format detection using discontinuous transmission (DTX) detection |
US20070280171A1 (en) * | 2006-05-31 | 2007-12-06 | Rafael Carmon | Method and apparatus for blind transport format detection using discontinuous transmission (DTX) detection |
US8351412B2 (en) | 2006-05-31 | 2013-01-08 | Agere Systems Llc | Method and apparatus for blind transport format detection using discontinuous transmission (DTX) detection |
US20080159237A1 (en) * | 2006-12-27 | 2008-07-03 | Francis Dominique | Power reduction methods in enhanced transmitters and receivers |
US7734308B2 (en) | 2006-12-27 | 2010-06-08 | Alcatel-Lucent Usa Inc. | Power reduction methods in enhanced transmitters and receivers |
US20120134293A1 (en) * | 2009-02-23 | 2012-05-31 | Freescale Semiconductor, Inc. | Processing data flows |
US8767769B2 (en) * | 2009-02-23 | 2014-07-01 | Freescale Semiconductor | Processing data flows |
US20130205176A1 (en) * | 2012-02-03 | 2013-08-08 | Research In Motion Limited | Method and apparatus for reducing false detection of control information |
US8843792B2 (en) * | 2012-02-03 | 2014-09-23 | Blackberry Limited | Method and apparatus for reducing false detection of control information |
Also Published As
Publication number | Publication date |
---|---|
US7463702B2 (en) | 2008-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7463702B2 (en) | System and method for one-pass blind transport format detection | |
US7688915B2 (en) | Method and system for blindly detecting a discontinuously transmitted shared channel, in particular blind high speed shared control channels detection | |
KR101504375B1 (en) | Reliable decoding of a high-speed shared control channel | |
AU2003214677B2 (en) | Apparatus and Method for Receiving Packet Data Control Channel in a Mobile Communication System | |
US6909758B2 (en) | Systems and methods for decoding data blocks | |
US6813323B2 (en) | Decoding method and communication terminal apparatus | |
US8223869B2 (en) | Control channel detection scheme | |
US20050025076A1 (en) | Scaling and quantizing soft-decision metrics for decoding | |
US6424631B1 (en) | Apparatus and methods for determining rate of transmitted variable rate data | |
JPH08195683A (en) | Data receiving device | |
EP0935866A1 (en) | Method and apparatus for decoding variable rate data | |
US8107489B2 (en) | Turbo decoding module supporting state n metric value normalization operations | |
JP3260697B2 (en) | Syndrome-based channel quality or message structure determiner | |
CA2302372A1 (en) | Time diversity in a tdma system | |
US20020108090A1 (en) | Blind transport format detection of turbo-coded data | |
KR100344605B1 (en) | Bad frame detector and turbo decoder | |
US20090175389A1 (en) | Methods and systems for turbo decoding in a wireless communication system | |
WO2014194761A1 (en) | Soft bit coding method and apparatus for radio receiving device | |
EP2439976B1 (en) | Information detection method and apparatus for high speed downlink shared control channel | |
US20020107987A1 (en) | Compression based on channel characteristics | |
US20050172201A1 (en) | Receiver for a wireless communication device | |
US7120207B2 (en) | Transmission method and radio receiver | |
US20030063661A1 (en) | Method of blind transport format detection based on power transition | |
US7130339B2 (en) | Method and apparatus for frame rate determination without decoding in a spread spectrum receiver | |
KR100880630B1 (en) | Transmission chain in communication system and method for transmitting and detecting physical channel format uging the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: AGERE SYSTEMS INC., PENNSYLVANIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:AMMER, GERHARD;SMITH, III, WILLIAM H.;XU, SHUZHAN;REEL/FRAME:013489/0958;SIGNING DATES FROM 20021021 TO 20021024 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AG Free format text: PATENT SECURITY AGREEMENT;ASSIGNORS:LSI CORPORATION;AGERE SYSTEMS LLC;REEL/FRAME:032856/0031 Effective date: 20140506 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AGERE SYSTEMS LLC;REEL/FRAME:035365/0634 Effective date: 20140804 |
|
AS | Assignment |
Owner name: AGERE SYSTEMS LLC, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031);ASSIGNOR:DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT;REEL/FRAME:037684/0039 Effective date: 20160201 Owner name: LSI CORPORATION, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031);ASSIGNOR:DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT;REEL/FRAME:037684/0039 Effective date: 20160201 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:037808/0001 Effective date: 20160201 Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:037808/0001 Effective date: 20160201 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041710/0001 Effective date: 20170119 Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041710/0001 Effective date: 20170119 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITE Free format text: MERGER;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:047195/0658 Effective date: 20180509 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITE Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER PREVIOUSLY RECORDED ON REEL 047195 FRAME 0658. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:047357/0302 Effective date: 20180905 |
|
AS | Assignment |
Owner name: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITE Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER PREVIOUSLY RECORDED AT REEL: 047357 FRAME: 0302. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:048674/0834 Effective date: 20180905 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20201209 |