This invention relates to binary and n-state Linear Feedback Shift Registers (LFSRs). More specifically it relates to novel methods and apparatus to implement binary and n-state LFSRs using non-reversible switching functions.
LFSRs in binary form are known in Fibonacci and in Galois configuration. They are also known in binary switching implementation and, as shown by the inventor, in for instance U.S. Non-Provisional patent application Ser. No. 10/935,960, filed on Sep. 8, 2004, entitled TERNARY AND MULTI-VALUE DIGITAL SCRAMBLERS, DESCRAMBLERS AND SEQUENCE GENERATORS, which is incorporated herein by reference, in different n-valued or n-state implementations.
LFSRs are often used in scramblers and descramblers. The purpose of scrambling a message may be to encipher the signal and to make reading the message difficult for an unauthorized party. LFSRs are currently using reversible binary or n-state switching functions. This makes the structure of an LFSR potentially predictable to an unauthorized party that wants to decipher a scrambled message, as the party may assume that only reversible switching functions are used.
Accordingly, novel and improved binary and n-state LFSRs are required that apply also non-reversible binary or n-state switching functions.
In view of the more limited possibilities of the prior art in creating binary or n-valued or n-state LFSRs and coders novel and improved apparatus and methods to create n-state symbol coders and decoders is required.
The general purpose of the present invention, which will be described subsequently in greater detail, is to provide novel methods and apparatus which can be applied in the creation of binary and multi-valued or n-state coders and decoders. Individual n-state symbols may be represented by a signal characterized by an independent instance of a physical phenomenon. Signals can be of an electrical or optical nature, but they may be of any valid distinguishable physical phenomenon, including by an independent material such as a bio-chemical material. An n-state symbol may also be represented by a plurality of symbols.
Before explaining at least one embodiment of the invention in detail, it is to be understood that the invention is not limited in its application to the details of construction and to the arrangements of the components or methods set forth in the following description or illustrated in the drawings. The invention is capable of other embodiments and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein are for the purpose of the description and should not be regarded as limiting.
Binary in the context of this application means 2-valued or 2-state. Multi-valued, n-valued or n-state in the context of this invention means an integer greater than 2.
One object of the present invention is to provide novel coding boxes applying a non-reversible switching function.
In accordance with one aspect of the present invention, an n-state Linear Feedback Shift Register (LFSR) with n≧2 is provided, comprising a shift register of 1 or more shift register elements, a shift register element enabled to store an n-state symbol or a representation of an n-state symbol, and at least one non-reversible n-state switching function.
In accordance with another aspect of the present invention. the n-state LFSR has n≧2.
In accordance with a further aspect of the present invention, an n-state LFSR is provided, wherein the LFSR is part of a scrambler, the scrambler having a corresponding descrambler.
In accordance with another aspect of the present invention, an n-state LFSR is provided, wherein the LFSR is an LFSR in Fibonacci configuration.
In accordance with a further aspect of the present invention, an n-state LFSR is provided, wherein the LFSR is an LFSR in Galois configuration.
In accordance with another aspect of the present invention, an n-state coder with n≧2 for coding a plurality of n-state symbols is provided, comprising a scrambling function being an n-state reversible switching function having a first and a second input and an output, the plurality of n-state symbols being provided on the first input, an n-state coding box including an input and an output, the input enabled to receive an n-state symbol and the output enabled to provide an n-state symbol, the coding box including at least one non-reversible n-state switching function, the output of the n-state coding box connected to the second input of the scrambling function, the output of the scrambling function providing a plurality of coded n-state symbols, and the output of the scrambling function being connected to the input of the coding box.
In accordance with a further aspect of the present invention, an n-state coder is provided, further comprising a corresponding decoder.
In accordance with another aspect of the present invention, an n-state coder is provided, wherein the coding box includes a Linear Feedback Shift Register (LFSR).
In accordance with a further aspect of the present invention, an n-state coder is provided, wherein the LFSR is a Fibonacci LFSR.
In accordance with another aspect of the present invention, an n-state coder is provided, wherein the LFSR is a Galois LFSR.
In accordance with a further aspect of the present invention, an n-state coder is provided, wherein the coding box is reconfigured after processing at least 1 n-state symbol.
In accordance with another aspect of the present invention, an n-state coder is provided, wherein the corresponding decoder is self-synchronizing.
In accordance with a further aspect of the present invention, an n-state coder is provided, wherein each of the plurality of n-state symbols only assume 1 of p states with p<n.
In accordance with another aspect of the present invention, an n-state coder is provided, the coding box of the coder further comprising a second input, the second input enabled to receive a key sequence.
In accordance with a further aspect of the present invention, an n-state coder is provided, the coding box of the coder further comprising a third input, the third input enabled to receive the plurality of n-state symbols.
In accordance with an aspect of the present invention an n-state with n≧2 modified Linear Feedback Shift Register (mLFSR) is provided, comprising an input enabled to receive a signal having one of n states and an output, a shift register having at least 2 shift register elements, each shift register element enabled to store a signal having one of n states, at least one device implementing a first 2-place n-state logic function, the device having a first input, a second input and an output; wherein a signal external to the mLFSR is provided on the first input.
In accordance with another aspect of the present invention an n-state mLFSR is provided, wherein n≧2.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, wherein the signal external to the mLFSR can be switched between at least two modes.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, further comprising a second device implementing a reversible 2-place n-state logic function, the second device having a first input, a second input and an output, wherein the first input is enabled to receive a first n-state signal, the second input is connected to the output of the mLFSR and the output of the second device is connected to the input of the LFSR, and an output enabled to provide a first processed n-state signal.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, further comprising a third device implementing a second reversible 2-place n-state logic function, the third device having a first input, a second input and an output, wherein the first input is enabled to receive a second n-state signal, the second input is connected to the output of the mLFSR, the output of the third device provides a second processed n-state signal and the second n-state signal is also provided on the input of the mLFSR.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, further comprising connecting the output of the mLFSR with the input of the mLFSR and an output enabled to provide an n-state sequence of signals.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, wherein the mLFSR is part of a communication system.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, wherein the mLFSR is part of a storage system.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, wherein the mLFSR is part of a playing device.
In accordance with yet another aspect of the present invention an n-state mLFSR is provided, wherein the mLFSR is part of a scrambler/descrambler system.
In accordance with a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), comprising, inputting the n-state signal on an input of a shift register element of the mLFSR, the mLFSR having at least two shift register elements, the mLFSR including an output, inputting a signal that depends on the n-state signal on a first input of a first device implementing a 2-place n-state logic function that also includes a second input and an output, inputting a signal external to the mLFSR on the second input of the first device, and outputting on the output of the first device a first processed n-state signal.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), wherein n≧2.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), wherein the signal external to the mLFSR can be switched between at least two modes.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), further comprising inputting a second n-state signal on a first input of a second device implementing a reversible 2-place n-state logic function connecting a second input of the second device to the output of the mLFSR, connecting an output of the second device an input of the LFSR, and outputting a second processed n-state signal on an output of the second device.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), further comprising inputting a third n-state signal on a first input of a third device implementing a reversible 2-place n-state logic function, connecting a second input of the second device to the output of the mLFSR, providing the third n-state signal on an input of the LFSR, and outputting a third processed n-state signal on an output of the third device.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), further comprising connecting the output of the mLFSR with the input of the mLFSR and outputting on an output an n-state sequence of signals.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), wherein the mLFSR is part of a communication system.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), wherein the mLFSR is part of a storage system.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), wherein the mLFSR is part of a playing device.
In accordance with yet a further aspect of the present invention a method is provided for processing an n-state signal with n≧2 with a modified Linear Feedback Shift Register (mLFSR), wherein the mLFSR is part of a scrambler/descrambler system.
Various other objects, features and attendant advantages of the present invention will become fully appreciated as the same becomes better understood when considered in conjunction with the accompanying drawings, and wherein:
Aspects of the present invention provide novel implementation of n-valued with n>2 and binary Linear Feedback Shift Registers (LFSRs). An LFSR usually appears in one of two configurations: the Fibonacci and the Galois configuration. As an illustrative example an LFSR in Fibonacci configuration 100 is provided in
The LFSR in the diagram is the part to the right of line 100. It has the 3 connected shift register elements sr1, sr2 and sr3. Each shift register element has at least one input and one output. As drawn in
The shift register elements work in general under a control or clock signal. In order to keep the diagrams herein uncluttered, these control signals are assumed but not shown. When the control signal is in a first state the shift register element retain their value or state and provide their content on their respective outputs. When the control signal is in a second state each element still provides the retained signal on their output; however they also store the signal on their inputs in memory. When the control signal has no longer the second state, the retained value or signal is the newly entered signal from the input and is provided on the outputs. Even if a signal at an input changes the signal at the output remains the newly stored signal. Accordingly, the states of the shift register are in the LFSR of
In case an n-state symbol is represented by two or more signals, the shift registers are assumed to shift per clock pulse an n-state symbol, which are then 2 or more signals.
Another characteristic of the LFSR is that at least the output of the last element of the shift register is fed back into an input of the LFSR. In the Fibonacci LFSR of
A descrambler corresponding to the scrambler of
The above are just illustrative examples of Fibonacci and Galois LFSRs. Other configurations are possible and are fully contemplated. For instance one may provide n-state or n-valued inverters in the LFSR. An example is provided in
A Galois LFSR with inverters 601, 602 and 603 is provided in
In
Further configurations of LFSRs are fully contemplated and are, for instance, disclosed by the applicant in U.S. patent application Ser. No. 11/696,261 filed on Apr. 4, 2007 which is incorporated herein by reference.
In accordance with an aspect of the present invention, an LFSR is provided with at least one binary n-state switching function in the LFSR being non-reversible. Non-reversible function in the context of the present invention means that when an n-state or binary function has p inputs and 1 output one may say that an equation determining the relation between input and output variables has (p+1) variables. Such an equation is reversible when at any time p variables (which may include an output variable) determines a (p+1)th variable. For instance the binary XOR function is reversible, while the binary AND function is not.
As an example of an LFSR with a non-reversible binary function, the scrambler of
As an example one may take as a binary message on input sig_in the binary message [1 1 1 1 0 0 0 0 1 0 1 0 0 1 0 1]. The initial state of the shift register is [1 0 1]. The scrambled message on sig_line is [0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0]. Inputting the scrambled message on the input of the descrambler with initial state of its shift register being [1 0 1] generates the correctly descrambled message [1 1 1 1 0 0 0 0 1 0 1 0 0 1 0 1]. Changing the initial state of the descrambler will only change at most the first three symbols of the descrambled message.
In accordance with a further aspect of the present invention, the messages and LFSR may be n-state such as 3-state. In an illustrative example, one can again take the scrambler of
Assume that sc1 is provided by the following non-reversible truth table
When sig_in is the ternary message [1 1 1 2 2 2 0 0 0 0 1 2 2 1 0] and the initial state of the shift register is [0 1 2] the scrambled message outputted by the ternary scrambler of
The ternary descrambler is provided in
It is easy to see that this descrambler will create an output message that is identical to the input message to the scrambler.
As in
One may repeat the illustrative examples for n=4 wherein for instance sc2 and sc3 are the modulo-4 addition and sc 1 is non-reversible provided by
One can then scramble a 4-state message by the scrambler of
In accordance with a further aspect of the present invention a method for binary and n-state coding and decoding is provided using reversible and non-reversible functions. A principle of coding is shown in
One can easily see, in a diagram of a binary or n-state decoder in
It should be clear that the decoder can be used as a coder and the coder as a decoder.
An illustrative 4-state example of a coder 1200 with a corresponding decoder 1206 is provided in
Assume that the initial state of the shift register is [1 0 2] and that the first symbol of sig_in is always 1. Furthermore, a key is provided as sig_key=[0 1 2 3 0 1 2 3 0 1 2 3 0 1 2] and sig_in =[1 1 3 2 2 3 0 3 0 0 1 3 2 1 3]. This will be coded into [3 0 1 2 0 3 0 2 0 2 2 2 0 1 0]. Entering this coded message into the decoder 1206 will recover the original message. For illustrative purposes, sc4 and sc5 are selected as being reversible, however that is not required. Furthermore, one should take care of synchronization of all signals including the key and the shift register content. The here provided approach as an aspect of the current invention works for all appropriate binary or n-state switching functions and different lengths of the shift registers.
One may also apply the coder box 1002, as shown in
One can also use as an input signal for creating a sig_box the input signal sig_in to the coding box 1400 and 1600. One may retain earlier values or states of sig_in in determining sig_box. The decoder box 1600 is almost identical to 1400 when one uses sig_in. To initialize 1400 one may use a first element of sig_in and a first key signal. The decoder requires a memory element to provide an initial state.
As a further aspect of the present invention, one may use the LFSR and other coders having a reversible scrambling function to change the statistical make-up of a coded message. For instance one may input the 4-valued coder with a binary message [1 1 0 0 1 0 1 0 0 0 1 1 0 1 0] making sure to use the correct representation at a physical input and code the binary message into [3 0 2 2 2 1 0 3 1 0 0 0 0 3 3]. Such a ‘higher state coding’ makes cryptanalysis of a message much harder.
The illustrative examples herein provided apply LFSRs in Fibonacci configuration. Use of n-state LFSRs in Galois configuration that use reversible and/or non-reversible n-state or binary switching functions are fully contemplated.
The herein provided methods and apparatus can be implemented in general processors sing memory wherein instructions can be stored and executed. Dedicated processors and circuitry to execute the methods which are an aspect of the present invention can also be used. If one uses physical signals wherein one symbol is represented by a single signal element which may assume one of 2 or more states then one can still perform the methods which are an aspect of the present invention by using A/D converters to create binary signals and D/A converters to create again n-state signals.
In the illustrative examples shift registers are provided of which the shift register element can contain a binary or an n-state with n>2 symbol or a representation of an n-state symbol. The examples show a shift register of 3 shift register elements. It is to be understood that this is for illustrative purposes only and that a shift register may have one or more shift register elements.
It should be clear that many of the decoder configurations herein provided in accordance with an aspect of the present invention may be self synchronizing. That means that if an error has occurred during transmission the decoding may provide an incorrectly decoded signal. However, after one or more errors have been flushed from the system, the decoder starts to decode correctly. Some decoders with LFSRs in Galois configuration may not be self-synchronizing. The applicant has shown in earlier cited patent application Ser. No. 11/696,261 how to realize self-synchronizing descramblers with LFSRs in self-synchronizing mode.
It should be clear that the coder box can come in many different forms: with or without LFSR, dependent only on forward provided messages or keys or with feedback. With combinational circuits and with sequential circuits which contain one or more memory element. All these circuits can easily be modified in a programmable sense to make them generate different output signals even when the same input signals are provided. For instance, one can change the functions, or for instance, change the taps of an LFSR. One may make those changes while leaving all the contents of memory elements the same, so no special initialization is required. One may change settings once or many times, for instance, depending how many symbols have been processed already. It should be clear that such a change should take place for the coder box in the coder as well as the decoder at corresponding moments.
For instance, the coder of
As a further aspect of the present invention, an n-state coder with an n-state LFSR containing at least one non-reversible n-state function can be used to generate a sequence of n-state symbols. This is shown in
One may detect the sequence generated by the generator of
For instance, a 4-state sequence of 31 symbols will be detected if 31 consecutive states one are generated. One may take into account potential line errors and synchronization errors and set the level of detected at for instance 24 ones.
An LFSR based coding/decoding system can be used as a continuous or streaming mode. This means that every time a new symbol, or a representation of a symbol is provided at an input a coded or scrambled symbol or its representation can be generated. The same applies for the coder and decoder of which an example is shown in
As long as all signals in scrambler and descrambler (including the initial state of the shift register are synchronized) the descrambler will correctly descramble the scrambled signal. The LFSR as disclosed herein is a novel LFSR, because it is controlled externally by receiving on an input of one of its devices implementing a 2-place 2-state functions a signal that is external to the LFSR.
In the configuration of
The scrambler in
An example is provided to illustrate different flushing effects. Assume that the scrambler and descrambler of
The signal sig_line is provided on the input of the descrambler. If the initial state of the mLFSR is identical of the scrambler at the start of scrambling and the signal sig_key is synchronized correctly then the descrambler will provide the correctly descrambled signal. An error in the signal sig_line will be flushed. An error in the signal sig_key will also be flushed. For instance assume that an error occurred at bit 7 and 8 of sig_key and that sig_key is now sig_key=[0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 1]. The signal at the output of the descrambler will then represent [0 1 1 0 1 0 1 1 1 0 1 1 0 0 1 0]. The two bits descrambled in error are marked in the sequence. This demonstrates that key errors will also be flushed in the descrambler.
One may try to use a different key signal in the descrambler. For instance one may shift each bit in the key sequence in the descrambler with exactly one position. This will generate in the above example as output the sequence [0 1 1 1 1 1 1 0 0 0 1 0 0 1 1 1]. One can see that errors in the key signals (or using the wrong key signal) will create an incorrectly descrambled signal.
One can easily provide non-binary examples such as 3-state or 4-state examples, for instance in
It is pointed out that the LFSRs as provided herein can run in a continuous or streaming fashion.
N may also be greater than two. In that case all circuits and signals may be n-state. However, all circuits and signals may also be binary, but able to process words of p bits so that all signals represent an n-state symbol and all circuits can process signals representing an n-state symbol.
The descramblers in
If sig_key=0 then the output of the function sc1 will be equal to the input state of input signal ‘in’. In that case it appears as if ‘sc1’ is replaced by a direct connection. The scramblers/descramblers act as if it is a public self-synchronizing descrambler. In case the initial state of the LFSR is not known, the shift register will be flushed and the descrambler will start providing correctly descrambled signals.
One may also put a variable external binary signal on the input of sc 1 as sig_key in a scrambler. In that case one will need to provide exactly the same signal key_sig (and in-phase with sig_key at the scrambler) to correctly descramble the scrambled signal with the self-synchronizing descrambler. The advantage is that this system provides increased security and in-phase operational properties. Often, one may apply error-correcting codes, which allows correction of a limited number of transmission errors. In the case of a limited number of errors it may be beneficial to have the ability to continue descrambling and error correct, rather than request resending data, which is sometimes not possible, if a descrambler propagates errors.
The concept of switching between public and confidential mode is illustrated in a scrambler
It should also be clear that other binary logic functions for function sc 1 may be applied. The following table shows several truth tables that can be assigned to a function sc1.
If one uses for ‘sc1’ the ‘=’ function with constant source ‘0’ for sig_key, then the output of ‘sc1’ is the inverted state of ‘in’. If one uses a non-reversible function such as the AND function, then sig_key has to be constant ‘1’ to act as passing on the state of ‘in’.
The structure as provided in
When sig_key provides a constant state ‘0’, then the output of ‘sc1’ is identical to the state of ‘in’. One may also provide sig_key with a different constant source. Or one may provide sig_key with a source that changes states, such as a 4-state Pseudo-random Noise (PN) sequence. The inventor has disclosed these and other n-state PN type sequences in for instance U.S. patent application Ser. No. 10/935,960 filed on Sep. 8, 2004 and U.S. patent application Ser. No. 11/065,836, filed on Feb. 25, 2005, both of which are incorporated herein by reference in their entirety. One may use for ‘sc1’ also a non-reversible n-state function.
As an aspect of the present invention modified Linear Feedback Shift Registers (mLFSRs) have been introduced. An mLFSR may be an LFSR wherein either at least one device implementing a 2-place n-state switching function having at least 2-inputs and one output that is determined by a truth table of at least dimension n by n with n≧2, or with n>2, is a non-reversible n-state function, or/and at least one device implementing a 2-place function is controlled by a signal on one of its inputs external to the LFSR and/or an external n-state signal is directly injected into the LFSR after the LFSR loop was cut or interrupted. The mLFSR can be applied in any LFSR application. It can for instance be applied in a scrambler and a descrambler device. It is clear that an mLFSR can also be applied in a sequence generator and in a sequence detector.
Next some illustrative examples will be provided of mLFSRs in sequence generators.
For instance, one may implement a 4-state sequence generator with 2601 implementing an adder over GF(4), inverter 2602 is the 4-state inverter [3 1 0 2] and the inverter 2603 is the 4-state inverter [0 2 3 1]. The maximum length pseudo-random noise (PN) sequence is a 1023 symbols 4-state sequence. Herein, each symbol is or may be represented by a 4-state signal.
This way of calculating a correlation is easier on recognizing PN sequences. It shows a single peak. The classical auto-correlation (or cross correlation) of course apply the value or an assigned value to each signal. This leads to the classical definition
The classical definition is useful if one adds different sequences to a noise like signal. If one needs to distinguish for instance between two sequences, the comparison is easier to use.
In general, different uses of functions 2601 and inverters 2602 and 2603 from the selected ones in the example will create generators that will not generate PN-sequences. However, one may modify the LFSR of
One may also create mLFSRs as shown in
A diagram of a communication system is shown in
It is to be understood that additional functions may be included in a system as shown in
The writing part of a storage system as shown in
A storage system also has a reading part as shown in
The device 10411 in
Scramblers and descramblers as provided herein may be applied to storage devices. For instance one may scramble a word of p-bits before writing it to a magnetic storage disk, an optical storage disk or to an electronic storage device. One may transfer a word of p-bits into a single 2p symbol. One may modulate the signal with a modulation technique such as QAM-2p before writing it to a storage medium. One may reverse the operations for retrieving 2p symbols or p-bit words from a storage medium: read the symbols from the medium, if required demodulate the read signals, and descramble the symbols or words with the descramblers herein provided. One may also use sequence generators provided herein on storage media, for instance for synchronization purposes. An n-state sequence or a sequence of p-bit words may indicate a point of significance on the storage medium. Either the provided correlation techniques or sequence detectors may be applied to find those points of significance. Accordingly, communication systems and apparatus and data storage apparatus and systems using the scramblers, descramblers, sequence generators and sequence detectors have also been provided as an aspect of the present invention.
One may also store QAM signals on an optical disk. By using a signal writer such as a light source and a light pick-up as for reading the receiving antenna one may write a signal to an optical disk and read the n-state optical signal from the disk. Accordingly a storage system is provided that can apply the scrambling and descrambling methods provided herein. Optical herein includes purely optical, as well as electro-optical and magneto-optical as well as any other phenomenon that has an optical component. Data storage systems and apparatus may also use magnetic materials. Such devices may for instance store directly multi-state symbols with for instance different magnetic states or orientations. They may also be stored in a quasi-analog/digital manner for instance as a QAM-n modulated signal.
The scrambling and descrambling methods and apparatus, the sequence generating and detecting methods and apparatus, and the correlation methods and apparatus as provided herein as an aspect of the present invention may be part of a system. This may include: a communication system, a data storage system or any other system for coding, or transmitting, or storing, or receiving, or retrieving, or decoding or any other system for processing data. The system may be a wired or a wireless system. A data storage system may be a system using an optical disk, or an electro-optical disk. It may also use a magnetic medium. Symbols may be represented as optical, electronic or any other valid representation that can be processed, including magnetic. The n-valued symbols may be represented as signals having physical properties of for example different amplitude, phase, modulation, polarization or any other quantifiable physical property. Switching tables may be realized in electronic, optical, electro-optical, electro-mechanical, quantum mechanical or any other way that can implement an n-valued truth table. A symbol may also be represented by a series of lower valued symbols such as binary symbols. Switching and storage of symbols then take effect on the series of symbols, often called words.
A binary or n-state function that is an inverter may be called a one-place function. A device that implements such a function in general has only a functional input and a functional output, though it may have inputs for power supply and the like. Such one-place functions are determined by a 1 by n truth table for an n-state inverter and a 1 by 2 truth table for a binary inverter. An n-state or binary switching or logic function that can be defined by an n by m truth table with m≧n and n≧2 may be called a 2-place function as it has two inputs (and one output). It may also be called a 2-place logic function, or a 2-place n-state logic function. In the binary case such a function may be called a 2-place binary logic function. XOR and EQUIVALENCE are both reversible binary 2-place functions.
A connection between two connection points herein may be a straight connection. One may also say the connection is formed by an Identity Inverter or an Identity one-place logic function; for instance in the binary case [0 1]→[0 1]. A connection is herein also considered to be a connection that includes a reversible one-place function that is not an Identity Inverter; for instance in the binary case [0 1]→[1 0] is considered herein a connection. In a connection in the n-state case with n>2 wherein the one-place logic function in a connection is not reversible, but does not provide one constant output, is also considered to be a connection. A one-place logic function that provides one constant output, for instance [0 1]→[0 0] is not considered to be a connection. For instance in
The steps of the methods which are provided as aspects of the present invention may be implemented in a processor; such a processor may be a general purpose processor or for instance a digital signal processor or a microprocessor. Such a processor may process binary symbols or signals. It may also process n-valued symbols. It may also process n-state symbols as words of binary symbols or signals. They may use A/D and D/A converters to change n-valued symbols in words of lower valued symbols and to convert words of lower valued symbols into n-valued symbols. In case an n-valued symbol is represented as a word of lower valued symbol a storage element of a shift register is assumed to be able all elements of a word representing an n-valued symbol. The n-valued symbols may also be processed by dedicated or custom made switching and storage components. The methods and apparatus may also be implemented in standard binary components, or in programmable devices such as Field Programmable Gate Arrays (FPGAs) or in any other device that will process signals in accordance with one or more aspects of the present invention. While electronic devices are common, aspects of the present invention may also be processed by other type of signals, including optical, chemical, bio-chemical, biological and/or quantum mechanical representation of symbols.
It is pointed out that for convenience the terms scrambler and descrambler are applied herein. A scrambler is generally understood to be at the sending side and a descrambler at the receiving side. This terminology is also applied herein, and descramblers provided herein are self-synchronizing. It is pointed out that one may scramble with apparatus that is called herein a descrambler, and one may descramble with an apparatus that is called herein a scrambler. The self-synchronizing aspect of what is called a descrambler may be lost if one uses a what is called herein a scrambler to descramble. However, if one is able to provide corresponding initial conditions as they relate to scramblers and descramblers, reversal of their roles should not be a problem. Reversal of those roles is explicitly and fully contemplated as an aspect of the present invention.
States or values of logic tables and of signals herein are indicated an integer n, with n=2 in the binary case or n>2 in the multi-state case. The number of states may be considered discrete and expressed as an integer. This does not mean that the state itself has to be represented as an integer. For instance a signal may have one of 4 discrete states: for instance represented as electrical signals of 1 Volt, 1.25 Volt, 1.5 Volt and 1.75 Volt. If one so desires one may represent the states as 1, 1.25, 1.5 and 1.75. One may also represent the states as 0, 1, 2 and 3 or as 1, 2, 3 and 4. In the case of implementation of circuits in accordance with Finite Field representation one may prefer to use 0, 1, 2 and 3 for convenience sake. Such a representation is not required.
While there have been shown, described and pointed out fundamental novel features of the invention as applied to preferred embodiments thereof, it will be understood that various omissions and substitutions and changes in the form and details of the devices and methods illustrated and in its operation may be made by those skilled in the art without departing from the spirit of the invention. It is the intention, therefore, to be limited only as indicated by the scope of the claims appended hereto.
The following patent applications, including the specifications, claims and drawings, are hereby incorporated by reference herein, as if they were fully set forth herein: (1) U.S. Non-Provisional patent application Ser. No. 10/935,960, filed on Sep. 8, 2004, entitled TERNARY AND MULTI-VALUE DIGITAL SCRAMBLERS, DESCRAMBLERS AND SEQUENCE GENERATORS; (2) U.S. Non-Provisional patent application Ser. No. 10/936,181, filed Sep. 8, 2004, entitled TERNARY AND HIGHER MULTI-VALUE SCRAMBLERS/DESCRAMBLERS; (3) U.S. Non-Provisional patent application Ser. No. 10/912,954, filed Aug. 6, 2004, entitled TERNARY AND HIGHER MULTI-VALUE SCRAMBLERS/DESCRAMBLERS; (4) U.S. Non-Provisional patent application Ser. No. 11/042,645, filed Jan. 25, 2005, entitled MULTI-VALUED SCRAMBLING AND DESCRAMBLING OF DIGITAL DATA ON OPTICAL DISKS AND OTHER STORAGE MEDIA; (5) U.S. Non-Provisional patent application Ser. No. 11/000,218, filed Nov. 30, 2004, entitled SINGLE AND COMPOSITE BINARY AND MULTI-VALUED LOGIC FUNCTIONS FROM GATES AND INVERTERS; (6) U.S. Non-Provisional patent application Ser. No. 11/065,836 filed Feb. 25, 2005, entitled GENERATION AND DETECTION OF NON-BINARY DIGITAL SEQUENCES; (7) U.S. Non-Provisional patent application Ser. No. 11/139,835 filed May 27, 2005, entitled Multi-Valued Digital Information Retaining Elements and Memory Devices; (8) U.S. Non-Provisional patent application Ser. No. 12/137,945 filed on Jun. 12, 2008, entitled Methods and Systems for Processing of n-State Symbols with XOR and EQUALITY Binary Functions; (9) U.S. Non-Provisional patent application Ser. No. 11/679,316, filed on Feb. 27, 2007, entitled METHODS AND APPARATUS IN FINITE FIELD POLYNOMIAL IMPLEMENTATIONS; (10) U.S. Non-Provisional patent application Ser. No. 11/696,261, filed on Apr. 4, 2007, entitled BINARY AND N-VALUED LFSR AND LFCSR BASED SCRAMBLERS, DESCRAMBLERS, SEQUENCE GENERATORS AND DETECTORS IN GALOIS CONFIGURATION; (11) U.S. Non-Provisional patent application Ser. No. 11/964,507 filed on Dec. 26, 2007, entitled IMPLEMENTING LOGIC FUNCTIONS WITH NON-MAGNITUDE BASED PHYSICAL PHENOMENA; and (12) U.S. Provisional patent application Ser. No. 61/078,606, filed on Jul. 7, 2008, entitled Methods and Systems for N-state Symbol Processing with Binary Devices.
This application is a continuation of U.S. Non-Provisional application Ser. No. 12/323,070 filed on Nov. 24, 2008 which claims the benefit of U.S. Provisional Application No. 60/990,071, filed on Nov. 26, 2007 which are both incorporated herein by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
60990071 | Nov 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12323070 | Nov 2008 | US |
Child | 13846296 | US |