# Patent

## Title
Method and apparatus for encoding and decoding a high speed shared control channel

## Abstract

A method and apparatus for encoding and decoding high speed shared control channel (HS-SCCH) data are disclosed. For part 1 data encoding, a mask may be generated using a wireless transmit/receive unit (WTRU) identity (ID) and a generator matrix with a maximum minimum Hamming distance. For part 2 data encoding, cyclic redundancy check (CRC) bits are generated based on part 1 data and part 2 data. The number of CRC bits is less than the WTRU ID. The CRC bits and/or the part 2 data are masked with a mask. The mask may be a WTRU ID or a punctured WTRU ID of length equal to the CRC bits. The mask may be generated using the WTRU ID and a generator matrix with a maximum minimum Hamming distance. The masking may be performed after encoding or rate matching.

## Background
CROSS REFERENCE TO RELATED APPLICATION
This application is a continuation of U.S. patent application Ser. No. 13/717,910, filed Dec. 18, 2012, which is a continuation of U.S. patent application Ser. No. 13/437,498, filed Apr. 2, 2012, which issued on Jan. 15, 2013 as U.S. Pat. No. 8,356,229, which is a continuation of U.S. patent application Ser. No. 13/227,214, filed Sep. 7, 2011, which issued on Apr. 3, 2012 as U.S. Pat. No. 8,151,164, which is a continuation of U.S. patent application Ser. No. 11/928,390, filed Oct. 30, 2007, which issued on Sep. 27, 2011 as U.S. Pat. No. 8,028,217, which claims the benefit of U.S. Provisional Application Nos. 60/863,428 filed Oct. 30, 2006 and 60/863,473 filed Oct. 30, 2006, which are incorporated by reference as if fully set forth.


FIELD OF INVENTION
The present invention is related to wireless communication.
BACKGROUND
In third generation partnership project (3GPP) high speed downlink packet access (HSPDA), control information that is necessary for decoding high speed downlink shared channel (HS-DSCH) is transmitted via a high speed shared control channel (HS-SCCH). Multiple HS-SCCHs may be transmitted to a set of wireless transmit/receive units (WTRUs) associated with a particular cell. The HS-SCCH carries two (2) parts of data: part 1 data and part 2 data. The part 1 data includes channelization code set information, modulation scheme information, etc. The part 2 data includes transport block size information, hybrid automatic repeat request (HARQ) process information, redundancy and constellation version information, WTRU identity (ID), etc. An HS-SCCH frame includes three time slots. The part 1 data is transmitted in the first time slot, and the part 2 data is transmitted in the second and third time slots.
FIG. 1 shows conventional HS-SCCH encoding. For encoding the part 1 data, the channelization code set information Xccs and modulation scheme information Xms are multiplexed to generate a sequence of bits X1. Rate 1/3 convolutional coding is applied to the sequence of bits X1 to generate a sequence of bits Z1. The sequence of bits Z1 is punctured for rate matching to generate a sequence of bits R1. The rate matched bits R1 are masked in a WTRU-specific way using the WTRU ID to produce a sequence of bits S1. Masking in this context means that each bit is conditionally flipped depending on the mask bit value. For the WTRU specific masking, intermediate code word bits are generated by encoding the WTRU ID using the rate 1/2 convolutional coding.
For encoding the part 2 data, the transport block size information Xtbs, HARQ process information Xhap, redundancy version information Xrv, and new data indicator La are multiplexed to generate a sequence of bits X2. From the sequence of bits X1 and X2, cyclic redundancy check (CRC) bits are calculated. The CRC bits are masked with the WTRU ID, (Xue), and then appended to the sequence of bits X2 to form a sequence of bits Y. Rate 1/3 convolutional coding is applied to the sequence of bits Y to generate a sequence of bits Z2. The sequence of bits Z2 is punctured for rate matching to generate a sequence of bits R2. The sequences of bits S1 and R2 are combined and mapped to the physical channel for transmission.
The performance of the detection of the part 1 data is influenced by the Hamming distance between the masks used for multiple HS-SCCHs. The conventional method produces a set of masks with a minimum distance of eight (8). When these minimum distance codes are used, the HS-SCCH detection performance is not optimal. In addition, with implementation of multiple-input multiple-output (MIMO) for HSDPA, more data need to be carried by the HS-SCCH. Therefore, it is necessary to make more room for transmission of data related to MIMO implementation in the HS-SCCH.
SUMMARY
A method and apparatus for encoding and decoding HS-SCCH data are disclosed. For part 1 data encoding, a mask may be generated using a WTRU ID and a generator matrix with a maximum minimum Hamming distance. For part 2 data encoding, CRC bits are generated based on part 1 data and part 2 data. The number of CRC bits may be less than the WTRU ID. The CRC bits and/or the part 2 data are masked with a mask. The mask may be a WTRU ID or a punctured WTRU ID of length equal to the CRC bits. The mask may be generated using the WTRU ID and a generator matrix with a maximum minimum Hamming distance. The masking may be performed after encoding or rate matching.



BRIEF DESCRIPTION OF THE DRAWINGS
A more detailed understanding of the invention may be had from the following description, given by way of example and to be understood in conjunction with the accompanying drawings wherein:
FIG. 1 shows conventional HS-SCCH encoding;
FIG. 2 is a block diagram of an example Node-B for encoding HS-SCCH data;
FIG. 3 is a block diagram of an example WTRU for decoding HS-SCCH data; and
FIG. 4 shows simulation results for the selection error probability of the part 1 data v. signal-to-noise ratio (SNR) comparing the performance of the two HS-SCCH masking methods (prior art and the present invention) where two HS-SCCH codes are transmitted with different mask distances dictated the corresponding methods.



DETAILED DESCRIPTION
When referred to hereafter, the terminology “WTRU” includes but is not limited to a user equipment (UE), a mobile station, a fixed or mobile subscriber unit, a pager, a cellular telephone, a personal digital assistant (PDA), a computer, or any other type of user device capable of operating in a wireless environment. When referred to hereafter, the terminology “Node-B” includes but is not limited to a base station, a site controller, an access point (AP), or any other type of interfacing device capable of operating in a wireless environment.
FIG. 2 is a block diagram of an example Node-B 200 for encoding HS-SCCH data. The Node-B 200 comprises an encoder 201, a rate matching unit 204, a masking unit 206, a multiplexer 210, a CRC unit 212, a masking unit 214, an encoder 218, a rate matching unit 220, and a transceiver 224. The HS-SCCH data comprises part 1 data and part 2 data. The part 1 data is sent to the encoder 202. The encoder 202 performs channel coding on the part 1 data 201. The channel coded part 1 data 203 is then punctured by the rate matching unit 204 for rate matching. The rate matched part 1 data 205 is then masked with a mask by the masking unit 206. The mask may be generated based on the WTRU ID 208.
Codes are usually selected for both their performance and for the simplicity of the decoders. Convolutional codes are a good example of codes that have both good performance and low decoder complexity. There is of course some tradeoff between performance and decoder complexity. However, the decoder complexity is not a factor when selecting a code to use for the masking because the corresponding decoder need not exist in the WTRU. All that is needed is the mask itself which can be created by the much simpler encoder.
The masking unit 206 generates the mask by block coding the WTRU ID 208 with a generator matrix which produces masks with a maximum minimum-Hamming-distance. The mask is generated by a vector-matrix product of the WTRU ID and the generator matrix. The resulting mask is a linear combination of the rows of the generator matrix. An example generator matrix for (40,16) code is given below. It should be noted that the generator matrix shown below is provided as an example, not as a limitation, and any other generator matrix may be used alternatively. In this example, the mask is the 40-bit mask, and the WTRU ID is 16-bits long. This example uses a block code with a specified generator matrix which produces masks with minimum distance of twelve (12). This provides much better performance when multiple HS-SCCH transmissions at the minimum distance are used.












[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 0 1 1 1 0 0 1 0 0 1 1 1 0]


[0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1]


[0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 0 0 1 1 1 0 0 1 0 1]


[0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 0 0 1 1 1 0 0 1 1]


[0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 0 1 0 1 1 1 0 0 1 1 0 1 0 1 1 0]


[0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 1 1 0 0 0 1 0 0 0 0 1 0 1]


[0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 1 1 0 0 0 1 0 0 0 0 1 1]


[0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 1 1 0]


[0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 1 0 1 1 0 1 0 0 0 1 0 0 1]


[0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 1 0 1 1 0 1 0 0 0 1 0 1]


[0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 1 0 1 1 0 1 0 0 0 1 1]


[0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 1 1 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 0]


[0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 0 0 0 1]


[0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 0 0 1]


[0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 0 1]


[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 1]









Conventionally, the mask is generated by encoding the WTRU ID 208 using the rate 1/2 convolutional coding. The minimum Hamming distance of the conventional masks is eight (8). The improved Hamming distance of the masks generated by the present invention results in a performance improvement of the part 1 HS-SCCH decoder at the WTRU. FIG. 4 shows simulation results for the selection error probability of the part 1 data v. SNR comparing the performance of the two HS-SCCH masking methods (prior art and the present invention) where two HS-SCCH codes are transmitted with different mask distances dictated the corresponding methods. FIG. 4 shows performance improvement when using the mask with the Hamming distance of twelve (12) compared to the mask with the Hamming distance of eight (8).
Referring again to FIG. 2, the part 1 data 201 and the part 2 data 211 are sent to the CRC unit 212 to calculate CRC bits. The CRC bits are attached to the part 2 data 211. The number of CRC bits may be less than the length of the WTRU ID so that more data, (e.g., data for MIMO), may be included as the part 2 data. The combined part 2 data and the CRC bits 213 are sent to the masking unit 214. The masking unit 214 performs masking to the CRC bits or CRC bits plus some or all of the part 2 data with a mask, which will be explained in detail below. The masked part 2 data and CRC bits 217 are encoded by the encoder 218. The encoded part 2 data and CRC bits 219 are punctured by the rate matching unit 220. The rate matched part 2 data and CRC bits 221 and the rate matched part 1 data 209 are multiplexed by the multiplexer 210 and sent to the transceiver 224 for transmission.
In accordance with one embodiment, the masking unit 214 may generate a mask having a size equal to or smaller than the size of the CRC bits plus the part 2 data. A portion of the mask is extracted and applied to the CRC bits and the remaining portion of the mask is applied to all or part of the part 2 data. The mask may be generated using the WTRU ID 216 and a generator matrix as disclosed above with respect to part 1 data masking to maximize the minimum Hamming distance of the masks.
In accordance with another embodiment, the WTRU ID may be used as a mask. The length of the WTRU ID may be longer than the CRC bits. Therefore, a part of the WTRU ID is used to mask the CRC bits and the remaining of the WTRU ID is used to mask the part 2 data. In accordance with yet another embodiment, the WTRU ID is punctured to be the same length as the CRC bits and the punctured WTRU ID is used to mask the CRC bits.
In accordance with still another embodiment, the masking unit 214 may be moved between the encoder and the rate matching unit. The masking unit 214 generates a mask of length equal to the rate matched part 2 data and CRC bits 221. The masking unit 214 then applies the mask to the encoded part 2 data and CRC bits 219. Alternatively, the masking unit 214 may be moved between the rate matching unit 220 and the multiplexer 210, and applies the mask to the rate matched part 2 data and CRC bits 221. The mask may be 80-bits long. The mask may be generated using the WTRU ID 216 and a generator matrix as disclosed above with respect to part 1 data masking to maximize the minimum Hamming distance of the masks.
FIG. 3 is a block diagram of an example WTRU 300 for decoding HS-SCCH data. The WTRU 300 includes a transceiver 302, a de-multiplexer 304, a de-masking unit 306, a de-rate matching unit 310, a decoder 312, a de-rate matching unit 314, a decoder 316, a de-masking unit 318, and a CRC unit 322. The transceiver 302 receives a HS-SCCH transmission 301 including a first part on a first time slot of an HS-SCCH frame corresponding to the part 1 data and a second part on the second and third time slots of the HS-SCCH frame corresponding to the part 2 data. The first part 305a and the second part 305b are de-multiplexed by the de-multiplexer 304.
The first part 305a is de-masked by the de-masking unit 306. The de-masking unit 306 generates the same mask used at the Node-B in the same way using the WTRU ID 308. The mask may be generated with the WTRU ID 308 and the generator matrix as disclosed above. The de-rate matching unit 310 reverts the puncturing performed at the Node-B on the de-masked first part 309. The de-rate matched first part 311 is then decoded by the decoder 312 to output part 1 data 313. The part 1 data is also sent to the CRC unit 322.
The second part 305b is de-rate matched by the de-rate matching unit 314 to revert the puncturing performed at the Node-B. The de-rate matched second part 315 is then decoded by the decoder 316 to output part 2 data (may or may not be masked at the NodeB) and masked CRC bits 317. The masked CRC bits and optionally the masked part 2 data 317 are de-masked by the de-masking unit 318. The de-masking unit 318 uses the same mask used at the Node-B for the de-masking. The mask may be the WTRU ID 320, punctured WTRU ID, or a mask generated by using the WTRU ID 320 and a generator matrix. The de-masking unit 318 outputs de-masked part 2 data and CRC bits 321 to the CRC unit 322. The CRC unit 322 then performs a CRC check with the part 1 data 313, the part 2 data, and CRC bits.
The de-masking unit 318 may be moved between the decoder 316 and the de-rate matching unit 314, or between the de-rate matching unit 314 and the de-multiplexer 304 depending on the masking scheme performed at the Node-B. In this case, the mask may be 80-bits long, and the mask may be generated using the WTRU ID 216 and a generator matrix as stated above to maximize the minimum Hamming distance of the masks.
Although the features and elements of the present invention are described in particular combinations, each feature or element can be used alone without the other features and elements or in various combinations with or without other features and elements. The methods or flow charts provided may be implemented in a computer program, software, or firmware tangibly embodied in a computer-readable storage medium for execution by a general purpose computer or a processor. Examples of computer-readable storage mediums include a read only memory (ROM), a random access memory (RAM), a register, cache memory, semiconductor memory devices, magnetic media such as internal hard disks and removable disks, magneto-optical media, and optical media such as CD-ROM disks, and digital versatile disks (DVDs).
Suitable processors include, by way of example, a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) circuits, any other type of integrated circuit (IC), and/or a state machine.
A processor in association with software may be used to implement a radio frequency transceiver for use in a WTRU, user equipment (UE), terminal, base station, radio network controller (RNC), or any host computer. The WTRU may be used in conjunction with modules, implemented in hardware and/or software, such as a camera, a video camera module, a videophone, a speakerphone, a vibration device, a speaker, a microphone, a television transceiver, a hands free headset, a keyboard, a Bluetooth® module, a frequency modulated (FM) radio unit, a liquid crystal display (LCD) display unit, an organic light-emitting diode (OLED) display unit, a digital music player, a media player, a video game player module, an Internet browser, and/or any wireless local area network (WLAN) module.

## Claims

1. A wireless transmit/receive unit (WTRU) comprising:
a processor configured to receive a block of data and a masked cyclic redundancy check (CRC) field, wherein a part of the masked CRC field is masked with WTRU identity (ID) bits,
the processor further configured to de-mask the masked CRC field using the WTRU ID bits and perform a CRC check with the data and a de-masked CRC field.

2. A method implemented in a wireless transmit/receive unit (WTRU), comprising:
receiving a block of data and a masked cyclic redundancy check (CRC) field, wherein a part of the masked CRC field is masked with WTRU identity (ID) bits;
de-masking the masked CRC field using the WTRU ID bits; and
performing a CRC check with the data and a de-masked CRC field.

3. A Node-B comprising:
a processor configured to derive cyclic redundancy check (CRC) bits from a block of data, mask a part of the CRC bits with wireless transmit/receive unit (WTRU) identification (ID) bits of a WTRU for which the block of data is intended, attach the masked CRC bits to the block of data, and transmit the data and the masked CRC bits via a physical channel.

4. A method implemented in a Node-B, comprising:
deriving cyclic redundancy check (CRC) bits from a block of data;
masking a part of the CRC bits with wireless transmit/receive unit (WTRU) identification (ID) bits of a WTRU for which the block of data is intended;
attaching the masked CRC bits to the block of data; and
transmitting the block of data and the masked CRC bits via a physical channel.