US20040130466A1 - Scrambler, de-scrambler, and related method - Google Patents
Scrambler, de-scrambler, and related method Download PDFInfo
- Publication number
- US20040130466A1 US20040130466A1 US10/248,284 US24828403A US2004130466A1 US 20040130466 A1 US20040130466 A1 US 20040130466A1 US 24828403 A US24828403 A US 24828403A US 2004130466 A1 US2004130466 A1 US 2004130466A1
- Authority
- US
- United States
- Prior art keywords
- scrambler
- series
- register
- linear feedback
- shift register
- 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
- H04J—MULTIPLEX COMMUNICATION
- H04J13/00—Code division multiplex systems
- H04J13/10—Code generation
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/84—Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
Definitions
- the present invention relates to an electronic device, and more specifically to an electronic scrambler/de-scrambler and related method for generating a scrambling sequence.
- cdma2000 code division multiple access specification
- 3G third generation wireless communication systems
- cdma2000system offers expanded functionality to mobile phones such as capabilities for sending pictures, Internet access, and expanded voice functionality.
- a key element in most communications devices is a scrambler/de-scrambler.
- a scrambler encodes data so that it can be safely transmitted. From the base station transmitter path, the channel interleaved symbols are scrambled before being fed into a subpacket symbol selection device.
- a source unit uses a scrambler to scramble data, and then transmits the scrambled data to a destination unit that uses a similar scrambler to descramble the data.
- the de-scrambler needs to generate the same scrambling sequence as the scrambler.
- the subpacket symbol selection selects a scrambled sequence start from an Fk value, wherein k is the subpacket index and the Fk value ranges from 72 to 7776 in steps of 24 (i.e. 72, 96 . . . 7752, 7776).
- the Fk value depends on a host of parameters including: an index of a subpacket being scrambled, a number of bits in an encoder packet (a plurality of subpackets), a number of 32-bit Walsh channels indexed by subpacket, a number of 1.25 ms slots for a subpacket, and a modulation order of each subpacket.
- a typical 17-tap linear feedback shift register 10 as shown in FIG. 1 that is used in a forward packet data channel (F-PDCH) of cdma2000 as a scrambler to generate a scrambling sequence.
- the scrambler is clocked so that the D 17 register outputs the scrambling sequence.
- the scrambling sequence is used to encode data bits of a communications signal, which in the case of the F-PDCH of cdma2000 means XORing the scrambling sequence with interleaver output symbols.
- register D 17 is set to “1”
- register D 16 is set to b 15
- register D 1 being set to b 0 .
- the scrambler 10 is clocked a number of times to generate a scrambling sequence at the output of the register D 17 .
- a de-scrambler using the same 17-tap linear feedback shift register 10 must be clocked between 72 and 7776 times to properly set the states of the registers D 1 -D 17 for a particular subpacket. Once this state is reached, the de-scrambler is clocked repeatedly to output the desired scrambling sequence, being the same as that of the scrambler 10 .
- the claimed invention includes an X-tap linear feedback shift register having X registers, a multiplexer having outputs connected to the registers; of the X-tap linear feedback shift register, and a plurality of logic gates connected to inputs of the multiplexers defining a generator sequence.
- the plurality of logic gates provide parallel input to the X-tap linear feedback shift register that allows for an n-step shift operation of the X-tap linear feedback shift register.
- the X-tap linear feedback shift register can perform a single shift operation and can be loaded with a predetermined state.
- a method provides a series-parallel linear feedback shift register capable of performing a single step shift operation, performing an n-step shift operation, and being loaded with initial values.
- the method further loads the series-parallel linear feedback shift register with initial values, performs a predetermined number of n-step shift operations with the series-parallel linear feedback shift register, and performs a predetermined number of single step shift operations with the series-parallel linear feedback shift register.
- the method finally outputs contents of the series-parallel linear feedback shift register as the scrambling sequence while performing at least a portion of the predetermined number of the single step shift operations.
- the multiplexer offers the X-tap linear feedback shift register three-mode functionality so that the shift register can be initialized, shifted by n-steps, and the shifted by a single step.
- FIG. 1 is a block diagram of a 17-tap linear feedback shift register used as a scrambler according to the prior art.
- FIG. 2 is a block diagram of a scrambler according to a first embodiment of the present invention.
- FIG. 3 is a block diagram of a scrambler according to a second embodiment of the present invention.
- FIG. 4 is a flowchart of a method for generating a scrambling sequence according to the present invention.
- the present invention will be described in the context a scrambler used in the forward packet data channel (F-PDCH) of cdma2000, this is not limiting.
- the present invention applies equally to a de-scrambler, which is a similar device differing mainly by direction of application.
- the present invention can be applied to other communications systems where data scrambling is required such as computer networks, and further to data encryption in general.
- FIG. 2 illustrating a block diagram of a scrambler 20 according to a first embodiment of the present invention.
- the scrambler 20 comprises a shift register 22 having a plurality of registers D 1 -DN.
- the scrambler 20 further includes a plurality of logic gates 26 connected to output of the registers D 1 -DN of the shift register 22 , and a multiplexer 28 for routing output of the logic 26 to inputs of the registers D 1 -DN of the shift register 22 .
- the plurality of logic gates 26 comprises two sets of logic gates 26 a and 26 b .
- the logic 26 a provides the multiplexer 28 with output of the registers D 1 -DN that allows for a single bit shift of the shift register 22 according to a predetermined generator sequence.
- the logic gates 26 b provide the multiplexer 28 with output of the registers D 1 -DN that allows for an n-step shift of the shift register 22 following the predetermined generator sequence.
- the multiplexer 28 as determined according to setting of selection ends, can select between output of logic 26 a , logic 26 b , or a predetermined initial state and load the registers D 1 -DN with the corresponding states. Output of the scrambler 20 is taken from the register DN of the shift register 22 .
- the scrambler 20 can be operated according to the following procedure. First, the multiplexer 28 is set to accept an initial state that is then set in the registers D 1 -DN. Then, the multiplexer 28 is set to accept output from the logic gates 26 b to change the states of the registers D 1 -DN for advancing the shift register 22 by n steps according to the generator sequence for a predetermined number of n-steps. Finally, the selection ends of the multiplexer 28 are set so that output of logic 26 a is fed into registers D 1 -DN and a scrambling sequence is output from the shift register 22 as the scrambler is clocked.
- the structures of the logic 26 a and 26 b determine how the shift register 22 behaves, and specifically define the predetermined generator sequence.
- the quantity of registers D 1 -DN is seventeen (numbered D 1 -D 17 ) and the one-bit-shift logic 26 a is an XOR gate that XORs output of the fourteenth and seventeenth registers D 14 , D 17 (see FIG. 1) as feedback for the first register D 1 .
- each row defines an on-state (binary “1”) of a corresponding one of the registers D 1 -D 17 of the shift register 22 (i.e. the first row to D 1 , the seventeenth row to D 17 ), with each binary “1” indicating which register(s) D 1 -D 17 (by column number) provide an output to an XOR gate that supplies input to each register.
- the first row of H 1 indicates that the output of register D 14 and D 17 are XORed then input to register D 1 ; the second row indicates that the output of register D 1 is input to register D 2 ; the third row indicates that the output of register D 2 is input to register D 3 ; and so on, wherein the last row indicates that the output of register D 16 is input to register D 17 .
- the logic 26 b is significantly more complicated than the logic 26 a , however, it can still be realized with XOR gates arranged according to the matrix H 1 24 .
- the first row of H 1 24 indicates that the output of register D 5 and D 11 are XORed then input to register D 1 ; the second row indicates that the output of register D 6 and D 12 are XORed then input to register D 2 ; the third row indicates that the output of register D 7 and D 13 are XORed then input to register D 3 ; and so on, wherein the last row indicates that the output of register D 7 and D 10 are XORed then input to register D 17 .
- the shift register 22 of the scrambler 20 outputs a scrambling sequence as defined by the generator sequence of the logic 26 a .
- the scrambling sequence can be quickly stepped through by n-steps to reach a desired point according to the logic 26 b .
- the registers D 1 -DN of the shift register 22 can be loaded with predetermined states.
- the multiplexer 28 controls these three functions of the scrambler 20 to generate a desired scrambling sequence.
- FIG. 3 showing a block diagram of a scrambler 30 according to a second embodiment of the present invention.
- the scrambler 30 includes registers D 1 -D 17 each having an input, an output, and enable and clock ends. The outputs of the registers D 1 -D 17 are denoted as b 0 -b 16 .
- the scrambler 30 further includes two sets of two-input multiplexers illustrated as multiplexers 32 , 32 ′′ and 34 . Output of each multiplexer 34 is to a corresponding register D 1 -D 17 . Input to each multiplexer 34 is output of a corresponding multiplexer 32 , 32 ′′ and a bit of a predetermined long code mask (LCM).
- LCM long code mask
- Each multiplexer 32 accepts input from a previous register and input from a XOR gate 36 , which XORs output of registers according to the H 1 24 matrix previously described.
- the multiplexer 32 ′′ accepts input from a XOR gate 36 similar to each multiplexer 32 and further from a XOR gate 36 ′′ corresponding to the matrix H 1 .
- the register D 4 outputs a state b 3 , can accept input b 2 from the previous register D 3 , can further accept a XORed result of the outputs b 7 , b 13 from registers D 8 , D 14 , and can finally accept a bit of the LCM.
- registers D 2 -D 17 are connected to a multiplexer 34 , which is connected to a multiplexer 32 that accepts input from an XOR gate 36 ; and the register D 1 is connected to a multiplexer 34 , which is connected to a multiplexer 32 ′′ that accepts input from XOR gates 36 , 36 ′′.
- the registers D 1 -D 17 can function as a 17-tap linear feedback shift register for shifting a single bit, a 17-tap linear feedback shift register having parallel inputs that enable a jump of 24 bits, and can be set with a predetermined state or LCM depending on setting of the multiplexers 32 , 32 ′′, and 34 .
- Table 1 summarizes the operating modes of the scrambler 30 in relation to the input-to-output selection at the multiplexers 32 , 32 ′′, and 34 .
- TABLE 1 Selected input at Selected input at MUXs 32, 32′ MUXs 34 Mode 0 0 1 bit shift 0 1 Load LCM 1 0 Jump 24 bits 1 1 Load LCM
- the scrambler 30 further includes a countdown counter 38 and control logic 40 .
- the control logic 40 comprises OR gates arranged so that a “run” input enables the registers D 1 -D 17 , a “load” input sets the multiplexers 34 to load the registers D 1 -D 17 with the LCM bits, and a clock “clk” input synchronizes operation of the registers D 1 -D 17 with the counter 38 .
- the control logic 40 can further output a “run 24 steps” bit to indicate that the scrambler is performing a 24-bit jump.
- the counter 38 accepts a 9-bit input “FKD24” (Fk divided by 24) which has a binary value ranging from 3 to 324 corresponding to states 72 to 7776.
- the logic 40 ensures that as the counter 38 counts down, the multiplexers 32 , 32 ′′, and 34 are set for the scrambler 30 to jump 24 bits.
- the scrambling sequence is output b 16 from register D 17 .
- a subpacket symbol selection device selects a scrambling sequence to start from an Fk value of 120
- the “load” signal is initially set to “1”, which allows the multiplexers 34 to load the registers D 1 -D 17 with the LCM bits before the “load” signal is set back to “0”.
- the “FKD24” signal is provided with a value equal of 5 (120/24) which sets the “run 24 steps” signal to “1” and causes the multiplexers 32 , 32 ′′ to output the data at their inputs “1”.
- the scrambler 30 operates under the “Jump 24 bits” mode and executes the first 24-bit jump.
- the countdown counter 38 then counts down from 5 to 4 in the next clock cycle, the “run 24 steps” signal still remains at “1” and another 24-bit jump is executed.
- the scrambler 30 operates under the “Jump 24 bits” mode for 5 clock cycles until the output of the countdown counter 38 counts down to zero which resets the “run 24 steps” signal to “0”.
- the logic 26 , 36 , and 36 ′′ can be realized with XOR gates as described, however, other similarly functioning logic could be substituted.
- the multiplexers 28 , 32 , 32 ′′, and 34 are described as such for convenience and in practical application could be switching circuits, logic gates, or similar devices.
- the multiplexers 28 , 32 , 32 ′′, and 34 could be of different forms that still provide the functionality described. For instance, each pair of two-input multiplexers 32 , 34 in the second embodiment could easily be replaced with one three-input multiplexer.
- the present invention is applied to cases other than the cdma2000 example above, the inputs to the logic gates, structures of the control logic and counter, the predetermined initial value (LCM), and the output taken would be different than those described.
- FIG. 4 showing a flowchart of a method for generating a scrambling sequence according to the present invention. The method is described in conjunction with the scrambler 30 as follows:
- Step 100 Start;
- Step 102
- Step 104
- Step 106 Perform a 24-bit shift by clocking the registers D 1 -D 17 and the counter 38 ;
- Step 108 Decrement the state of the counter 38 by one
- Step 110
- Step 112
- Step 114
- Step 116
- Step 118 End.
- the end of the scrambling sequence is determined by a component or user external to the scrambler 30 .
- this is determined by a packet length of information to be scrambled.
- the method as described could be similarly used with the scrambler 20 .
- the present invention can load registers with initial values, generate a series of n-step jumps of a generator sequence, and generate a single step output of the generator sequence as a scrambling sequence.
- the prior art scrambler must be advanced linearly in single steps to reach a desired state
- the present invention scrambler can be quickly advanced though parallel input. Considering the above-mentioned cmda2000 example. If the prior art scrambler is to reach an Fk value of 5088, it must undergo at least 5088 clock cycles. In contrast, the present invention in the same example would merely have to undergo 212 clock cycles, and thus is 24 times faster. Thus, the present invention scrambler offers the improvement of high-speed performance.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Logic Circuits (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
A scrambler includes a linear shift register having logic suitable for generating a scrambling sequence according to a predetermined generator sequence, a plurality of logic gates that allow for parallel input to the shift register, and a multiplexer for switching inputs of the shift register. The multiplexer switches inputs so that the shift register can be loaded with a predetermined initial value, and shifted a single bit or shifted a predetermined number of bits though the generator sequence.
Description
- 1. Field of the Invention
- The present invention relates to an electronic device, and more specifically to an electronic scrambler/de-scrambler and related method for generating a scrambling sequence.
- 2. Description of the Prior Art
- Modern communications systems have developed rapidly and become a fixture of the information age. Mobile (or cellular) phones are a prime example of how new technology can change people's lives. Mobile phones offer an inexpensive and convenient way to stay in touch with family, friends, and colleagues. The popularity of mobile phones has led to widespread use, which has created a demand for new functionality and associated advances in technology.
- Recently, industry and standardization groups have developed the code division multiple access specification (cdma2000) for third generation (3G) wireless communication systems. The cdma2000system offers expanded functionality to mobile phones such as capabilities for sending pictures, Internet access, and expanded voice functionality.
- A key element in most communications devices, including 3G mobile phones, is a scrambler/de-scrambler. A scrambler encodes data so that it can be safely transmitted. From the base station transmitter path, the channel interleaved symbols are scrambled before being fed into a subpacket symbol selection device. A source unit uses a scrambler to scramble data, and then transmits the scrambled data to a destination unit that uses a similar scrambler to descramble the data. The de-scrambler needs to generate the same scrambling sequence as the scrambler. The subpacket symbol selection selects a scrambled sequence start from an Fk value, wherein k is the subpacket index and the Fk value ranges from 72 to 7776 in steps of 24 (i.e. 72, 96 . . . 7752, 7776). According to cdma2000, the Fk value depends on a host of parameters including: an index of a subpacket being scrambled, a number of bits in an encoder packet (a plurality of subpackets), a number of 32-bit Walsh channels indexed by subpacket, a number of 1.25 ms slots for a subpacket, and a modulation order of each subpacket. All of these parameters and how they correlate are well known to those working in the cdma2000 field and are prescribed by the relevant cdma2000 specifications. If an unintended destination unit receives the scrambled data, it is likely that the unintended destination cannot readily descramble or understand the data. Encrypting data using a scrambler serves to protect privacy and commercial interests of data transmissions.
- Consider a typical 17-tap linear
feedback shift register 10 as shown in FIG. 1 that is used in a forward packet data channel (F-PDCH) of cdma2000 as a scrambler to generate a scrambling sequence. Thescrambler 10 comprises a series of connected registers D1-D17 and an exclusive OR (XOR)gate 12 connected to outputs of the registers D14 and D17. Output of theXOR gate 12 is input into the register D1 providing feedback giving the scrambler 10 a generator sequence of h (D)=D17+D14+1. After the registers D1-D17 have been set with an initial state, the scrambler is clocked so that the D17 register outputs the scrambling sequence. The scrambling sequence is used to encode data bits of a communications signal, which in the case of the F-PDCH of cdma2000 means XORing the scrambling sequence with interleaver output symbols. - For the F-PDCH of cdma2000 the operation of the
scrambler 10 is as follows. Thescrambler 10 is first initialized to an initial state of [D17 . . . D1]=[1 b15 b14 b13 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0] where the b15, b14, b13, b12, b11, b10, b9, b8, b7, b6, b5, b4, b3, b2, b1, b0, b5,b4, b3, b2, b1, and b0 bits are from a long code mask prescribed in the cdma2000specification. That is, register D17 is set to “1”, register D16 is set to b15, and so on with register D1 being set to b0. Next, thescrambler 10 is clocked a number of times to generate a scrambling sequence at the output of the register D17. A de-scrambler using the same 17-tap linearfeedback shift register 10 must be clocked between 72 and 7776 times to properly set the states of the registers D1-D17 for a particular subpacket. Once this state is reached, the de-scrambler is clocked repeatedly to output the desired scrambling sequence, being the same as that of thescrambler 10. - When the de-scrambler is being clocked by the Fk value it is in a non-performing mode. Naturally, slower overall performance caused by this is more pronounced with higher Fk values. Slower performance of the de-scrambler affects the entire surrounding system and can introduce bottlenecks into otherwise streamlined systems. As it is desirable to avoid delay and increase data transfer rates in mobile phones and other communications systems, the scrambler as described above lacks efficiency. Prior art solutions to this problem include increasing the clock speed of the scrambler, which tends to introduce errors into a transmission.
- It is therefore a primary objective of the claimed invention to provide a scrambler and related method that can quickly step though a sequence of unnecessary intermediate states to solve the problems of the prior art.
- Briefly summarized, the claimed invention includes an X-tap linear feedback shift register having X registers, a multiplexer having outputs connected to the registers; of the X-tap linear feedback shift register, and a plurality of logic gates connected to inputs of the multiplexers defining a generator sequence. Through the multiplexer, the plurality of logic gates provide parallel input to the X-tap linear feedback shift register that allows for an n-step shift operation of the X-tap linear feedback shift register. Also through the multiplexer, the X-tap linear feedback shift register can perform a single shift operation and can be loaded with a predetermined state.
- According to the claimed invention, a method provides a series-parallel linear feedback shift register capable of performing a single step shift operation, performing an n-step shift operation, and being loaded with initial values. The method further loads the series-parallel linear feedback shift register with initial values, performs a predetermined number of n-step shift operations with the series-parallel linear feedback shift register, and performs a predetermined number of single step shift operations with the series-parallel linear feedback shift register. The method finally outputs contents of the series-parallel linear feedback shift register as the scrambling sequence while performing at least a portion of the predetermined number of the single step shift operations.
- It is an advantage of the claimed invention that the multiplexer offers the X-tap linear feedback shift register three-mode functionality so that the shift register can be initialized, shifted by n-steps, and the shifted by a single step.
- It is a further advantage of the claimed invention that a desired point in the generator sequence can be reached more quickly in proportion to the size of the n-step shift operation.
- These and other objectives of the claimed invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
- FIG. 1 is a block diagram of a 17-tap linear feedback shift register used as a scrambler according to the prior art.
- FIG. 2 is a block diagram of a scrambler according to a first embodiment of the present invention.
- FIG. 3 is a block diagram of a scrambler according to a second embodiment of the present invention.
- FIG. 4 is a flowchart of a method for generating a scrambling sequence according to the present invention.
- Although the present invention will be described in the context a scrambler used in the forward packet data channel (F-PDCH) of cdma2000, this is not limiting. For example, the present invention applies equally to a de-scrambler, which is a similar device differing mainly by direction of application. Furthermore, the present invention can be applied to other communications systems where data scrambling is required such as computer networks, and further to data encryption in general.
- Please refer to FIG. 2 illustrating a block diagram of a
scrambler 20 according to a first embodiment of the present invention. Thescrambler 20 comprises ashift register 22 having a plurality of registers D1-DN. Thescrambler 20 further includes a plurality oflogic gates 26 connected to output of the registers D1-DN of theshift register 22, and amultiplexer 28 for routing output of thelogic 26 to inputs of the registers D1-DN of theshift register 22. The plurality oflogic gates 26 comprises two sets oflogic gates logic 26 a provides themultiplexer 28 with output of the registers D1-DN that allows for a single bit shift of theshift register 22 according to a predetermined generator sequence. Conversely, thelogic gates 26 b provide themultiplexer 28 with output of the registers D1-DN that allows for an n-step shift of theshift register 22 following the predetermined generator sequence. Themultiplexer 28, as determined according to setting of selection ends, can select between output oflogic 26 a,logic 26 b, or a predetermined initial state and load the registers D1-DN with the corresponding states. Output of thescrambler 20 is taken from the register DN of theshift register 22. - The
scrambler 20 can be operated according to the following procedure. First, themultiplexer 28 is set to accept an initial state that is then set in the registers D1-DN. Then, themultiplexer 28 is set to accept output from thelogic gates 26 b to change the states of the registers D1-DN for advancing theshift register 22 by n steps according to the generator sequence for a predetermined number of n-steps. Finally, the selection ends of themultiplexer 28 are set so that output oflogic 26 a is fed into registers D1-DN and a scrambling sequence is output from theshift register 22 as the scrambler is clocked. - The structures of the
logic shift register 22 behaves, and specifically define the predetermined generator sequence. For example, according to the F-PDCH of cdma2000, the quantity of registers D1-DN is seventeen (numbered D1-D17) and the one-bit-shift logic 26 a is an XOR gate that XORs output of the fourteenth and seventeenth registers D14, D17 (see FIG. 1) as feedback for the first register D1. This is equivalent to a 17-tap linear feedback shift register describing a generator sequence of h(D)=D17+D14+1. Such logic can be described by a feedback matrix: - wherein each row defines an on-state (binary “1”) of a corresponding one of the registers D1-D17 of the shift register 22 (i.e. the first row to D1, the seventeenth row to D17), with each binary “1” indicating which register(s) D1-D17 (by column number) provide an output to an XOR gate that supplies input to each register. For example, the first row of H1 indicates that the output of register D14 and D17 are XORed then input to register D1; the second row indicates that the output of register D1 is input to register D2; the third row indicates that the output of register D2 is input to register D3; and so on, wherein the last row indicates that the output of register D16 is input to register D17.
-
- Thus, the
logic 26 b is significantly more complicated than thelogic 26 a, however, it can still be realized with XOR gates arranged according to the matrix H1 24. For example, the first row of H1 24 indicates that the output of register D5 and D11 are XORed then input to register D1; the second row indicates that the output of register D6 and D12 are XORed then input to register D2; the third row indicates that the output of register D7 and D13 are XORed then input to register D3; and so on, wherein the last row indicates that the output of register D7 and D10 are XORed then input to register D17. - Generally, the
shift register 22 of thescrambler 20 outputs a scrambling sequence as defined by the generator sequence of thelogic 26 a. The scrambling sequence can be quickly stepped through by n-steps to reach a desired point according to thelogic 26 b. Additionally, the registers D1-DN of theshift register 22 can be loaded with predetermined states. Themultiplexer 28 controls these three functions of thescrambler 20 to generate a desired scrambling sequence. - Please refer to FIG. 3 showing a block diagram of a scrambler30 according to a second embodiment of the present invention. The scrambler 30 includes registers D1-D17 each having an input, an output, and enable and clock ends. The outputs of the registers D1-D17 are denoted as b0-b16. The scrambler 30 further includes two sets of two-input multiplexers illustrated as multiplexers 32, 32″ and 34. Output of each
multiplexer 34 is to a corresponding register D1-D17. Input to eachmultiplexer 34 is output of a corresponding multiplexer 32, 32″ and a bit of a predetermined long code mask (LCM). Each multiplexer 32 accepts input from a previous register and input from aXOR gate 36, which XORs output of registers according to the H1 24 matrix previously described. The multiplexer 32″ accepts input from aXOR gate 36 similar to each multiplexer 32 and further from aXOR gate 36″ corresponding to the matrix H1. For example, the register D4 outputs a state b3, can accept input b2 from the previous register D3, can further accept a XORed result of the outputs b7, b13 from registers D8, D14, and can finally accept a bit of the LCM. To clarify, all registers D2-D17 are connected to amultiplexer 34, which is connected to a multiplexer 32 that accepts input from anXOR gate 36; and the register D1 is connected to amultiplexer 34, which is connected to a multiplexer 32″ that accepts input fromXOR gates TABLE 1 Selected input at Selected input at MUXs 32, 32′ MUXs 34Mode 0 0 1 bit shift 0 1 Load LCM 1 0 Jump 24 bits 1 1 Load LCM - The scrambler30 further includes a countdown counter 38 and control logic 40. The control logic 40 comprises OR gates arranged so that a “run” input enables the registers D1-D17, a “load” input sets the
multiplexers 34 to load the registers D1-D17 with the LCM bits, and a clock “clk” input synchronizes operation of the registers D1-D17 with the counter 38. The control logic 40 can further output a “run 24 steps” bit to indicate that the scrambler is performing a 24-bit jump. The counter 38 is a 9-bit counter, 9 bits being selected for the F-PDCH of cdma2000 so that 324 jumps (29=512>324) of 24 bits can be made to reach the 7776th state of the scrambler 30. The counter 38 accepts a 9-bit input “FKD24” (Fk divided by 24) which has a binary value ranging from 3 to 324 corresponding to states 72 to 7776. The logic 40 ensures that as the counter 38 counts down, the multiplexers 32, 32″, and 34 are set for the scrambler 30 to jump 24 bits. The scrambling sequence is output b16 from register D17. - An example will now be described to clarify the second embodiment. If a subpacket symbol selection device selects a scrambling sequence to start from an Fk value of 120, the “load” signal is initially set to “1”, which allows the
multiplexers 34 to load the registers D1-D17 with the LCM bits before the “load” signal is set back to “0”. Next, instead of clocking the registers D1-D17 for 120 times to get to the starting bit of the scrambling sequence of that particular subpacket symbol, the “FKD24” signal is provided with a value equal of 5 (120/24) which sets the “run 24 steps” signal to “1” and causes the multiplexers 32, 32″ to output the data at their inputs “1”. Thus, the scrambler 30 operates under the “Jump 24 bits” mode and executes the first 24-bit jump. The countdown counter 38 then counts down from 5 to 4 in the next clock cycle, the “run 24 steps” signal still remains at “1” and another 24-bit jump is executed. The scrambler 30 operates under the “Jump 24 bits” mode for 5 clock cycles until the output of the countdown counter 38 counts down to zero which resets the “run 24 steps” signal to “0”. At this stage, the output of register D17 (which is b16) is the starting bit of the scrambling sequence of that particular subpacket symbol (of Fk=120), and from here on, the scrambler 30 operates under the “1 bit shift” mode and generates the scrambling sequence bit by bit (clock by clock) at b16. - In both embodiments the
logic multiplexers 28, 32, 32″, and 34 are described as such for convenience and in practical application could be switching circuits, logic gates, or similar devices. Additionally, themultiplexers 28, 32, 32″, and 34 could be of different forms that still provide the functionality described. For instance, each pair of two-input multiplexers 32, 34 in the second embodiment could easily be replaced with one three-input multiplexer. Furthermore, when the present invention is applied to cases other than the cdma2000 example above, the inputs to the logic gates, structures of the control logic and counter, the predetermined initial value (LCM), and the output taken would be different than those described. - Please refer to FIG. 4 showing a flowchart of a method for generating a scrambling sequence according to the present invention. The method is described in conjunction with the scrambler30 as follows:
- Step100: Start;
- Step102:
- Select input “1” of the
multiplexers 34 as the output for loading the initial state or LCM into the registers D1-D17; - Step104:
- Set the counter38 to a predetermined number (3-324) of 24-bit shifts and set the multiplexers 32, 32″, and 34 to states “1”, “1”, and “0” respectively to perform a 24-bit shift of the registers D1-D17 according to the generator sequence;
- Step106: Perform a 24-bit shift by clocking the registers D1-D17 and the counter 38;
- Step108: Decrement the state of the counter 38 by one;
- Step110:
- Is the state of the counter38 equal to zero? If it is, go on to step 112; if not, return to step 106;
- Step112:
- Set the multiplexers32, 32″ to the state “0” (
multiplexers 34 are already set to “0”) to perform a single bit shift of the registers D1-D17 according to the generator sequence; - Step114:
- Perform a single bit shift by clocking the registers D1-D17, where the scrambling sequence is output from the register D17;
- Step116:
- Is the end of the scrambling sequence reached? If it is, go to step18; if not, return to step 114;
- Step118: End.
- The end of the scrambling sequence is determined by a component or user external to the scrambler30. In cdma2000 this is determined by a packet length of information to be scrambled. Naturally, the method as described could be similarly used with the
scrambler 20. - In contrast to the prior art, the present invention can load registers with initial values, generate a series of n-step jumps of a generator sequence, and generate a single step output of the generator sequence as a scrambling sequence. Where the prior art scrambler must be advanced linearly in single steps to reach a desired state, the present invention scrambler can be quickly advanced though parallel input. Considering the above-mentioned cmda2000 example. If the prior art scrambler is to reach an Fk value of 5088, it must undergo at least 5088 clock cycles. In contrast, the present invention in the same example would merely have to undergo 212 clock cycles, and thus is 24 times faster. Thus, the present invention scrambler offers the improvement of high-speed performance.
- Those skilled in the art will readily observe that numerous modifications and alterations of the device may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.
Claims (17)
1. A scrambler for generating a scrambling sequence, the scrambler comprising:
an X-tap linear feedback shift register having X registers arranged in a linear series for outputting the scrambling sequence according to a predetermined generator sequence;
a multiplexer having outputs connected to the registers of the X-tap linear feedback shift register, the multiplexer further having a first set of inputs, a second set of inputs, and a third set of inputs, the third set of inputs being connected to outputs of registers of the X-tap linear feedback shift register for performing a single step shift operation of the X-tap linear feedback register; and
a plurality of logic gates connected to the second set of inputs of the multiplexer and to outputs of the registers for performing an n-step shift operation of the X-tap linear feedback register;
wherein the sets of inputs correspond to states of selection ends of the multiplexer; and the selection ends of the multiplexer are capable of being set to select the first set of inputs to load the registers of the X-tap linear feedback shift register with a predetermined state, select the second set of inputs to perform the n-step shift operation of the X-tap linear feedback shift register, and select the third set of inputs to perform the single shift operation of the X-tap linear feedback shift register.
2. The scrambler of claim 1 further comprising a counter connected to the selection ends of the multiplexer for setting the states of the selection ends for a predetermined number of clock pluses.
3. The scrambler of claim 1 wherein the plurality of logic gates are XOR gates.
4. The scrambler of claim 1 wherein the X-tap linear feedback shift register is a 17-tap linear feedback shift register having 17 registers, wherein input of a first register comprises output of a fourteenth register XORed with output of a seventeenth register so that the predetermined generator sequence is h(D)=D17+D14+1.
5. The scrambler of claim 4 wherein the n-step shift operation is a 24-bit shift operation.
6. The scrambler of claim 5 as part of a device operating in a forward packet data channel (F-PDCH) of a code division multiple access specification (cdma2000) for third generation (3G) wireless communication systems.
7. A scrambler for generating a scrambling sequence, the scrambler comprising:
a series of registers, each register having an input and an output;
a series of multiplexing means, each multiplexing means for selecting one of a first input, a second input and a third input, and to provide the selected input to a corresponding register; wherein each first input is connected to an initial value input to perform an initial value loading operation, and each third input is fed from the output of a previous register to perform a single step shift operation;
a series of paralleling XOR means for performing an n-step shift operation, each paralleling XOR means having an output connected to the second input of a corresponding multiplexing means; and
a tap XOR means with output connected to the third input of the multiplexing means corresponding to a first register for performing the single step shift operation;
wherein inputs to the series of paralleling XOR means and the tap XOR means are outputs of the series of registers arranged such that the series of registers form a series-parallel linear feedback shift register; and the series of multiplexing means is capable of being set so that the series-parallel linear feedback shift register is capable of performing the single step shift operation, performing the n-step shift operation, or performing the initial value loading operation.
8. The scrambler of claim 7 further wherein the series of registers comprises 17 registers, the series of multiplexing means comprises 17 multiplexers each capable of at least three-to-one selection functionality, and the series of paralleling XOR means comprises 17 XOR gates.
9. The scrambler of claim 8 wherein inputs to the series of paralleling XOR gates and the tap XOR gate are outputs of the series of registers arranged such that the series-parallel linear feedback shift register is a 17-tap linear feedback shift register consistent with a generator sequence of h(D)=D17+D14+1.
10. The scrambler of claim 9 wherein the n-bit shift operation is a shift of 24 bits consistent with a 17-tap linear feedback shift register.
11. The scrambler of claim 10 further comprising a counter for setting the multiplexing means for a predetermined number of clock pluses for performing a succession of 24-bit shift operations.
12. The scrambler of claim 10 as part of a device operating in a forward packet data channel (F-PDCH) of a code division multiple access specification (cdma2000) for third generation (3G) wireless communication systems.
13. A method for generating a scrambling sequence, the method comprising:
providing a series-parallel linear feedback shift register capable of performing a single step shift operation, performing an n-step shift operation, and being loaded with initial values;
loading the series-parallel linear feedback shift register with initial values;
performing a predetermined number of n-step shift operations with the series-parallel linear feedback shift register; and
performing a predetermined number of single step shift operations with the series-parallel linear feedback shift register.
14. The method of claim 13 further comprising outputting contents of the series-parallel linear feedback shift register while performing at least a portion of the predetermined number of the single step shift operations, said output being the scrambling sequence.
15. The method of claim 13 wherein performing the predetermined number of n-step shift operations is according to output of a counter.
16. The method of claim 13 wherein the series-parallel linear feedback shift register is a 17-tap linear feedback shift register having a generator sequence of h(D)=D17+D14+1, the n-step shift operations are 24-bit shift operations, and the predetermined number of n-step shift operations is between 3 and 324.
17. A device for performing the method of claim 13.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/248,284 US6765506B1 (en) | 2003-01-06 | 2003-01-06 | Scrambler, de-scrambler, and related method |
TW092106398A TW200412748A (en) | 2003-01-06 | 2003-03-21 | Scrambler, de-scrambler, and related method |
CN03123255.8A CN1218526C (en) | 2003-01-06 | 2003-04-24 | Scrambler/descrambler and method theirof |
CN03251251.1U CN2722510Y (en) | 2003-01-06 | 2003-05-15 | Code mixer |
GB0312835A GB2397002B (en) | 2003-01-06 | 2003-06-04 | Scrambler, de-scrambler, and related method |
DE10325287A DE10325287B4 (en) | 2003-01-06 | 2003-06-04 | Scrambler, de-scrambler and related process |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/248,284 US6765506B1 (en) | 2003-01-06 | 2003-01-06 | Scrambler, de-scrambler, and related method |
Publications (2)
Publication Number | Publication Date |
---|---|
US20040130466A1 true US20040130466A1 (en) | 2004-07-08 |
US6765506B1 US6765506B1 (en) | 2004-07-20 |
Family
ID=22938452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/248,284 Expired - Lifetime US6765506B1 (en) | 2003-01-06 | 2003-01-06 | Scrambler, de-scrambler, and related method |
Country Status (5)
Country | Link |
---|---|
US (1) | US6765506B1 (en) |
CN (2) | CN1218526C (en) |
DE (1) | DE10325287B4 (en) |
GB (1) | GB2397002B (en) |
TW (1) | TW200412748A (en) |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050225642A1 (en) * | 2004-04-10 | 2005-10-13 | Leica Microsystems Semiconductor Gmbh | Apparatus and method for the determination of positioning coordinates for semiconductor substrates |
US20060179384A1 (en) * | 2004-11-24 | 2006-08-10 | Wiley George A | Double data rate serial encoder |
US20070130240A1 (en) * | 2005-06-23 | 2007-06-07 | Infineon Technologies Ag | Circuit arrangement and method for initializing a random number generator |
US20100054391A1 (en) * | 2008-09-03 | 2010-03-04 | Ubinetics (Vpt) Limited | Method and system for advancing a linear feedback shift register |
US8539119B2 (en) | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
US20130275839A1 (en) * | 2008-08-13 | 2013-10-17 | Infineon Technologies Ag | Programmable Error Correction Capability for BCH Codes |
US8606946B2 (en) | 2003-11-12 | 2013-12-10 | Qualcomm Incorporated | Method, system and computer program for driving a data signal in data interface communication data link |
US8611215B2 (en) | 2005-11-23 | 2013-12-17 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US8630305B2 (en) | 2004-06-04 | 2014-01-14 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8645566B2 (en) | 2004-03-24 | 2014-02-04 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8650304B2 (en) | 2004-06-04 | 2014-02-11 | Qualcomm Incorporated | Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system |
US8667363B2 (en) | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8669988B2 (en) | 2004-03-10 | 2014-03-11 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8670457B2 (en) | 2003-12-08 | 2014-03-11 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
US8681817B2 (en) | 2003-06-02 | 2014-03-25 | Qualcomm Incorporated | Generating and implementing a signal protocol and interface for higher data rates |
US8687658B2 (en) | 2003-11-25 | 2014-04-01 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8694652B2 (en) | 2003-10-15 | 2014-04-08 | Qualcomm Incorporated | Method, system and computer program for adding a field to a client capability packet sent from a client to a host |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8705521B2 (en) | 2004-03-17 | 2014-04-22 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8705571B2 (en) | 2003-08-13 | 2014-04-22 | Qualcomm Incorporated | Signal interface for higher data rates |
US8719334B2 (en) | 2003-09-10 | 2014-05-06 | Qualcomm Incorporated | High data rate interface |
US8723705B2 (en) | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
US8730069B2 (en) * | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
US8745251B2 (en) | 2000-12-15 | 2014-06-03 | Qualcomm Incorporated | Power reduction system for an apparatus for high data rate signal transfer using a communication protocol |
US8756294B2 (en) | 2003-10-29 | 2014-06-17 | Qualcomm Incorporated | High data rate interface |
US8812706B1 (en) | 2001-09-06 | 2014-08-19 | Qualcomm Incorporated | Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US12088437B2 (en) * | 2022-04-22 | 2024-09-10 | Microsoft Technology Licensing, Llc | Dynamic shift in output of serial and parallel scramblers and descramblers |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7570591B2 (en) * | 2004-08-03 | 2009-08-04 | Hewlett Packard Development Company, L.P. | Method and apparatus for negotiating link speed and configuration |
CN1787415B (en) * | 2004-12-08 | 2011-05-25 | 中兴通讯股份有限公司 | Device for Realizing Phase Shift of Pseudo-random Code and Method for Generating Pseudo-random Code |
US7395461B2 (en) * | 2005-05-18 | 2008-07-01 | Seagate Technology Llc | Low complexity pseudo-random interleaver |
US9552175B2 (en) | 2011-02-08 | 2017-01-24 | Diablo Technologies Inc. | System and method for providing a command buffer in a memory system |
US9575908B2 (en) | 2011-02-08 | 2017-02-21 | Diablo Technologies Inc. | System and method for unlocking additional functions of a module |
US8713379B2 (en) | 2011-02-08 | 2014-04-29 | Diablo Technologies Inc. | System and method of interfacing co-processors and input/output devices via a main memory system |
US9779020B2 (en) | 2011-02-08 | 2017-10-03 | Diablo Technologies Inc. | System and method for providing an address cache for memory map learning |
US9747076B1 (en) * | 2014-12-04 | 2017-08-29 | Altera Corporation | Parallel pseudo random bit sequence generation with adjustable width |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4730340A (en) * | 1980-10-31 | 1988-03-08 | Harris Corp. | Programmable time invariant coherent spread symbol correlator |
US5434807A (en) * | 1993-04-02 | 1995-07-18 | Advantest Corporation | Parallel pseudo-random pattern generating method and pseudo-random pattern generator using the same |
US5446683A (en) * | 1993-04-06 | 1995-08-29 | Hewlett-Packard Company | Methods and apparatus for generating pseudo-random binary patterns |
US5566099A (en) * | 1993-10-06 | 1996-10-15 | Nec Corporation | Pseudorandom number generator |
US6014408A (en) * | 1996-12-27 | 2000-01-11 | Sony Corporation | PN code generating circuit and terminal unit |
US6067359A (en) * | 1997-05-21 | 2000-05-23 | Nec Corporation | PN sequence generator with bidirectional shift register and Eulerian-graph feedback circuit |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4965881A (en) | 1989-09-07 | 1990-10-23 | Northern Telecom Limited | Linear feedback shift registers for data scrambling |
US5910907A (en) | 1997-02-20 | 1999-06-08 | C.K. Chen | Shift register based pseudorandom number generator |
US6141669A (en) | 1998-05-06 | 2000-10-31 | Nortel Networks Corporation | Pseudorandom binary sequence block shifter |
US6154101A (en) * | 1998-11-23 | 2000-11-28 | Qualcomm Incorporated | Fast slewing pseudorandom noise sequence generator |
FI108182B (en) * | 1999-03-23 | 2001-11-30 | Nokia Networks Oy | Procedure for updating linear feedback shift register in a code generator |
-
2003
- 2003-01-06 US US10/248,284 patent/US6765506B1/en not_active Expired - Lifetime
- 2003-03-21 TW TW092106398A patent/TW200412748A/en unknown
- 2003-04-24 CN CN03123255.8A patent/CN1218526C/en not_active Expired - Lifetime
- 2003-05-15 CN CN03251251.1U patent/CN2722510Y/en not_active Expired - Lifetime
- 2003-06-04 DE DE10325287A patent/DE10325287B4/en not_active Expired - Lifetime
- 2003-06-04 GB GB0312835A patent/GB2397002B/en not_active Expired - Lifetime
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4730340A (en) * | 1980-10-31 | 1988-03-08 | Harris Corp. | Programmable time invariant coherent spread symbol correlator |
US5434807A (en) * | 1993-04-02 | 1995-07-18 | Advantest Corporation | Parallel pseudo-random pattern generating method and pseudo-random pattern generator using the same |
US5446683A (en) * | 1993-04-06 | 1995-08-29 | Hewlett-Packard Company | Methods and apparatus for generating pseudo-random binary patterns |
US5566099A (en) * | 1993-10-06 | 1996-10-15 | Nec Corporation | Pseudorandom number generator |
US6014408A (en) * | 1996-12-27 | 2000-01-11 | Sony Corporation | PN code generating circuit and terminal unit |
US6067359A (en) * | 1997-05-21 | 2000-05-23 | Nec Corporation | PN sequence generator with bidirectional shift register and Eulerian-graph feedback circuit |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8745251B2 (en) | 2000-12-15 | 2014-06-03 | Qualcomm Incorporated | Power reduction system for an apparatus for high data rate signal transfer using a communication protocol |
US8812706B1 (en) | 2001-09-06 | 2014-08-19 | Qualcomm Incorporated | Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system |
US8705579B2 (en) | 2003-06-02 | 2014-04-22 | Qualcomm Incorporated | Generating and implementing a signal protocol and interface for higher data rates |
US8681817B2 (en) | 2003-06-02 | 2014-03-25 | Qualcomm Incorporated | Generating and implementing a signal protocol and interface for higher data rates |
US8700744B2 (en) | 2003-06-02 | 2014-04-15 | Qualcomm Incorporated | Generating and implementing a signal protocol and interface for higher data rates |
US8705571B2 (en) | 2003-08-13 | 2014-04-22 | Qualcomm Incorporated | Signal interface for higher data rates |
US8719334B2 (en) | 2003-09-10 | 2014-05-06 | Qualcomm Incorporated | High data rate interface |
US8694652B2 (en) | 2003-10-15 | 2014-04-08 | Qualcomm Incorporated | Method, system and computer program for adding a field to a client capability packet sent from a client to a host |
US8756294B2 (en) | 2003-10-29 | 2014-06-17 | Qualcomm Incorporated | High data rate interface |
US8606946B2 (en) | 2003-11-12 | 2013-12-10 | Qualcomm Incorporated | Method, system and computer program for driving a data signal in data interface communication data link |
US8687658B2 (en) | 2003-11-25 | 2014-04-01 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
US8670457B2 (en) | 2003-12-08 | 2014-03-11 | Qualcomm Incorporated | High data rate interface with improved link synchronization |
US8669988B2 (en) | 2004-03-10 | 2014-03-11 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8705521B2 (en) | 2004-03-17 | 2014-04-22 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8645566B2 (en) | 2004-03-24 | 2014-02-04 | Qualcomm Incorporated | High data rate interface apparatus and method |
US20050225642A1 (en) * | 2004-04-10 | 2005-10-13 | Leica Microsystems Semiconductor Gmbh | Apparatus and method for the determination of positioning coordinates for semiconductor substrates |
US8630305B2 (en) | 2004-06-04 | 2014-01-14 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8650304B2 (en) | 2004-06-04 | 2014-02-11 | Qualcomm Incorporated | Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system |
US8630318B2 (en) | 2004-06-04 | 2014-01-14 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8539119B2 (en) | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
US20060179384A1 (en) * | 2004-11-24 | 2006-08-10 | Wiley George A | Double data rate serial encoder |
US8873584B2 (en) | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US8699330B2 (en) | 2004-11-24 | 2014-04-15 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US7315265B2 (en) * | 2004-11-24 | 2008-01-01 | Qualcomm Incorporated | Double data rate serial encoder |
US8667363B2 (en) | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8723705B2 (en) | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
US7949698B2 (en) * | 2005-06-23 | 2011-05-24 | Infineon Technologies Ag | Circuit arrangement and method for initializing a random number generator |
US20070130240A1 (en) * | 2005-06-23 | 2007-06-07 | Infineon Technologies Ag | Circuit arrangement and method for initializing a random number generator |
US8692839B2 (en) | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8611215B2 (en) | 2005-11-23 | 2013-12-17 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US8730069B2 (en) * | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
US20130275839A1 (en) * | 2008-08-13 | 2013-10-17 | Infineon Technologies Ag | Programmable Error Correction Capability for BCH Codes |
US8812940B2 (en) * | 2008-08-13 | 2014-08-19 | Infineon Technologies Ag | Programmable error correction capability for BCH codes |
US8316070B2 (en) * | 2008-09-03 | 2012-11-20 | Ubinetics (Vpt) Limited | Method and system for advancing a linear feedback shift register |
US20100054391A1 (en) * | 2008-09-03 | 2010-03-04 | Ubinetics (Vpt) Limited | Method and system for advancing a linear feedback shift register |
US12088437B2 (en) * | 2022-04-22 | 2024-09-10 | Microsoft Technology Licensing, Llc | Dynamic shift in output of serial and parallel scramblers and descramblers |
Also Published As
Publication number | Publication date |
---|---|
GB2397002A (en) | 2004-07-07 |
CN2722510Y (en) | 2005-08-31 |
CN1450745A (en) | 2003-10-22 |
CN1218526C (en) | 2005-09-07 |
US6765506B1 (en) | 2004-07-20 |
DE10325287B4 (en) | 2007-12-27 |
DE10325287A1 (en) | 2004-07-22 |
TW200412748A (en) | 2004-07-16 |
GB2397002B (en) | 2005-02-16 |
GB0312835D0 (en) | 2003-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6765506B1 (en) | Scrambler, de-scrambler, and related method | |
US6181164B1 (en) | Linear feedback shift register in a programmable gate array | |
US6701482B2 (en) | Method and apparatus for coding bits of data in parallel | |
US7643638B2 (en) | System for generating pseudorandom sequences | |
US7068638B2 (en) | Apparatus and method for coding/decoding TFCI bits in an asynchronous CDMA communication system | |
KR20010110482A (en) | Generalized address generation for bit reversed random interleaving | |
EP0940928A2 (en) | Efficient offset mask generator for pseudo-noise sequence generator | |
US5878075A (en) | Method of and apparatus for generating a pseudorandom noise sequence | |
US6687376B1 (en) | High-speed long code generation with arbitrary delay | |
EP1145456B1 (en) | Method for generating complex quasi-orthogonal code and apparatus and method for spreading channel data using the quasi-orthogonal code in cdma communication system | |
WO2000014975A2 (en) | Device and method for generating quaternary complex quasi-orthogonal code and spreading transmission signal using quasi-orthogonal code in cdma communication system | |
US6560212B1 (en) | Generating an offset de-bruijn sequence using masks for a CDMA communication system | |
US7324581B2 (en) | Apparatus for mapping and spreading data symbols in mobile communication system | |
US20050237919A1 (en) | Generation of orthogonal codes | |
JP2917962B2 (en) | Circuit for arbitrarily shifting M-sequence | |
Miller et al. | PN generators using the SRL macro | |
Haccoun et al. | New architectures for fast convolutional encoders and threshold decoders | |
Mahyar | Reliable and High-Speed KASUMI Block Cipher by Residue Number System Code | |
US7729235B2 (en) | Method and apparatus for OVSF code generation | |
KR100320430B1 (en) | PN code generating method | |
US11750369B2 (en) | Circuit module of single round advanced encryption standard | |
KR20010102427A (en) | Zero delay mask for galois lfsr | |
KR100307705B1 (en) | Layered orthogonal code generation apparatus and method | |
JP2003163580A (en) | Encoder | |
CN110928524B (en) | Pseudo-random signal generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: VIA TECHNOLOGIES INC., TAIWAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LU, KEHSHEHN;REEL/FRAME:013330/0246 Effective date: 20021201 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
REMI | Maintenance fee reminder mailed | ||
FPAY | Fee payment |
Year of fee payment: 8 |
|
FPAY | Fee payment |
Year of fee payment: 12 |