EP1386403A1 - Procede et dispositif de codage/decodage d'un message - Google Patents
Procede et dispositif de codage/decodage d'un messageInfo
- Publication number
- EP1386403A1 EP1386403A1 EP02759805A EP02759805A EP1386403A1 EP 1386403 A1 EP1386403 A1 EP 1386403A1 EP 02759805 A EP02759805 A EP 02759805A EP 02759805 A EP02759805 A EP 02759805A EP 1386403 A1 EP1386403 A1 EP 1386403A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- message
- data
- mes
- reduced
- red
- 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.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 102100038191 Double-stranded RNA-specific editase 1 Human genes 0.000 claims description 18
- 101000742223 Homo sapiens Double-stranded RNA-specific editase 1 Proteins 0.000 claims description 18
- 101000686491 Platymeris rhadamanthus Venom redulysin 1 Proteins 0.000 claims description 18
- 102100024692 Double-stranded RNA-specific editase B2 Human genes 0.000 claims description 16
- 101000686486 Homo sapiens Double-stranded RNA-specific editase B2 Proteins 0.000 claims description 16
- 101000686495 Platymeris rhadamanthus Venom redulysin 2 Proteins 0.000 claims description 16
- WPPDXAHGCGPUPK-UHFFFAOYSA-N red 2 Chemical compound C1=CC=CC=C1C(C1=CC=CC=C11)=C(C=2C=3C4=CC=C5C6=CC=C7C8=C(C=9C=CC=CC=9)C9=CC=CC=C9C(C=9C=CC=CC=9)=C8C8=CC=C(C6=C87)C(C=35)=CC=2)C4=C1C1=CC=CC=C1 WPPDXAHGCGPUPK-UHFFFAOYSA-N 0.000 claims description 16
- 230000009467 reduction Effects 0.000 claims description 3
- 230000005291 magnetic effect Effects 0.000 abstract description 53
- 230000007704 transition Effects 0.000 description 12
- 239000002245 particle Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 102100036791 Adhesion G protein-coupled receptor L2 Human genes 0.000 description 3
- 101000928189 Homo sapiens Adhesion G protein-coupled receptor L2 Proteins 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 102100039736 Adhesion G protein-coupled receptor L1 Human genes 0.000 description 2
- 101100042610 Arabidopsis thaliana SIGB gene Proteins 0.000 description 2
- 101000959588 Homo sapiens Adhesion G protein-coupled receptor L1 Proteins 0.000 description 2
- 101100364675 Mus musculus Ss18l2 gene Proteins 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000013518 transcription Methods 0.000 description 2
- 230000035897 transcription Effects 0.000 description 2
- 101100421503 Arabidopsis thaliana SIGA gene Proteins 0.000 description 1
- 101100042613 Arabidopsis thaliana SIGC gene Proteins 0.000 description 1
- 101100042615 Arabidopsis thaliana SIGD gene Proteins 0.000 description 1
- 101100294408 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) MOT2 gene Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000010453 quartz Substances 0.000 description 1
- 239000011347 resin Substances 0.000 description 1
- 229920005989 resin Polymers 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 101150117326 sigA gene Proteins 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
Definitions
- the present invention relates to a method and a device for coding / decoding a message. It applies in particular to the coding / decoding of messages on a magnetic tape track.
- These magnetic tapes can be used on cardboard media such as parking tickets or transport tickets or on plasticized media such as identification cards or cards for carrying out financial transactions.
- Magnetic tapes are used to read and write messages, ie sequences of digital data. Data can be written using proprietary or standardized coding. There are many standards and norms issued by organizations such as ANSI (abbreviation of "American National Standards Institute”), ISO (abbreviation of "International Standards Organization”), IATA (abbreviation of “International Air Transportation Association ”), ABA (abbreviation of“ American Bankers Association ”), or THRIFT (banking organization).
- a known solution to compensate for the loss of data of a message consists in writing this message two or three times on a track of the magnetic tape. During decoding, the first occurrence of the message is read.
- An object of the invention is to allow the correct decoding of a message when a part of the message read is erroneous, while limiting the space occupied by the coded message.
- This object is achieved by the method according to the invention of coding a message (MES) consisting of a sequence of N digital data, which comprises at least the following steps: • a step of reducing the message (MES) to obtain a reduced message (RED) consisting of another sequence of M digital data, where M is strictly less than N, by applying a determined law to the original message such that
- MES message
- RED reduced message
- the invention also relates to the decoding method, the recording media, and the coding devices linked to this coding method.
- the main advantages of the invention are that it can be compatible with standardized coding methods and that it is simple to implement.
- Figure 1 an example of parking ticket with a magnetic strip
- FIG. 2 an example of memory mapping of a message coded according to a known technique
- Figure 3 an example of analog signal corresponding to a coded message
- FIG. 6 an example of a table used for decoding according to the invention of the coded message in FIG. 4;
- This TI ticket includes a magnetic strip BM on which is written a coded message.
- This ticket can also include printed symbols such as an LG logo, TXT text.
- this ticket TI is inserted in a reader, the front AV of the ticket entering first in reader.
- the coded message is written on the magnetic strip BM in the form of magnetic codes. These magnetic codes are written in a direction such that the beginning of the coded message is situated at the front AV of the ticket, and the end of the coded message is situated at the rear AR of the ticket. In this way, the coded message can be read at the place.
- the coded message consists of a series of bits to which the magnetic codes written on the PI track correspond. This series of bits also corresponds to a series of characters. These characters are of two kinds: data characters on the one hand, and control characters on the other. Data characters can be numeric or alphanumeric characters. In all cases the characters are numeric data.
- the original message that is to say the content of the coded message
- the control characters are inserted automatically when the messages are written by the coders. These control characters make it possible to determine the start and the end of the MES message on the track, and to carry out integrity checks.
- the format of the coded message corresponds to the correspondence between the series of bits constituting this message, and the series of digital data of the original message MES.
- a message is generally coded in a standardized format on one of the tracks on a magnetic tape. There are usually three tracks, numbered 1 to 3, with associated standardized formats:
- Track no. 1 developed by DATA, contains alphanumeric characters for the automation of airline ticketing. It is also used for other transactions in which a reservation database is used.
- Track no. 2 developed by ABA, contains numeric characters for the automation of financial transactions. Today, this track is also used by most systems that require an identification number and a minimum of other control information.
- Track 3 developed by THRIFT, contains information, part of which must be updated (re-recorded) with each transaction. For example, ATMs that operate in offline mode.
- FIG. 2 a message coded according to a known technique is represented.
- This message can be written on a track PI of a magnetic strip, such as the magnetic strip BM of the ticket TI illustrated in FIG. 1.
- the coded message begins with a margin M1.
- This margin M1 comprises a series of bits at zero. The length of this margin M1 can be variable.
- a start tag (called “start sentinel” in Anglo-Saxon literature) SS indicates the start of the MES message.
- This starting tag SS is a sequence of determined bits.
- the coded message comprises the series of N digital data of the original message MES, that is to say the content of the message.
- an end tag (called “end sentinel” in the English literature) ES indicates the end of the message content.
- This tag is a sequence of determined bits.
- a longitudinal redundancy code C1 makes it possible to check the validity of the N data registered.
- This redundancy code C1 is followed by a second margin M2 of bits at zero until the end of the track. The length of this margin is variable.
- the characters are alphanumeric characters. They occupy 7 bits including 6 data bits Bi, B 2 , B, B 4 , B 5f B 6 and a parity bit P.
- the parity bit P is determined from the data bits Bi, B 2 , B 3 , B, B 5 , B 6 . Its value (0 or 1) is such that the total number of bits at 1 in the character is always odd.
- the first data bit Bi is the least significant bit, the last data bit B 6 is the most significant bit.
- the margin M1 comprises approximately 62 bits at zero.
- the starting SS tag is the control character "%", ie 05 hex. This control character corresponds to the bit sequence 1010001.
- the data of the MES message can occupy a maximum of 76 characters.
- the end tag ES is the control character "? »Ie 1F hex. This control character corresponds to the sequence of bits 1111100.
- the margin M2 comprises at least 62 bits at zero.
- the longitudinal redundancy code is a control character. All characters are valid including "?"", Ie 1F hex.
- This longitudinal redundancy code C1 is determined by adding by an exclusive OR all the digital data (data characters and control characters) of the coded message from the start tag SS (included) to the end tag ES (included). Then the character parity is determined.
- Characters are numeric characters. They occupy 5 bits including 4 data bits Bi, B 2 , B 3 , B 4 and a parity bit P.
- the parity bit P is determined from the data bits B 1 , B 2 , B3, B. Its value (0 or 1) is such that the total number of bits at 1 in the character is always odd.
- the first data bit Bi is the least significant bit, the last data bit B is the most significant bit.
- the following table gives the value of the 5 bits according to the character (“Character" column).
- the first column of the table (“Hex.” Column) is the numeric value of the character (excluding parity bit) in hexadecimal notation.
- Margin 1 includes approximately 22 bits at zero.
- the starting tag SS is the control character ";"Ie B hex. This control character corresponds to the sequence of bits 11010.
- the data of the MES message can occupy a maximum of 37 characters (or 40 characters for the coded message).
- the end tag ES is the control character "? "Ie F hex. This control character corresponds to the sequence of bits 11111.
- the margin M2 comprises at least 22 bits at zero.
- the margin M1 comprises approximately 62 bits at zero.
- the M2 margin includes at least 62 bits at zero.
- the control characters (ES, SS) are the same as for runway 2.
- the magnetic track includes a succession of North (N) and South (S) magnetic poles. Magnetic field lines start from the N pole and go to the S pole.
- the magnetic tapes include ferromagnetic particles which behave like little magnets. These particles are rigidly retained by a resin. The polarity of these particles is stable. Therefore, these particles behave like permanent magnets. The application of a strong magnetic field of reverse polarity allows the polarity to be changed. The strength of the magnetic field required to produce this effect is called the coercive force. Depending on the particles used, the magnetic tapes are weakly or strongly coercive.
- the inscription (recording) of a magnetic tape consists in applying a magnetic field to reveal NS or SN transitions.
- This application can be carried out with a magnetic writing head comprising a solenoid.
- This solenoid makes it possible to generate a magnetic field from a voltage.
- NS transitions or SN are converted into electrical signals via a read head comprising a solenoid. The passage of this read head on the magnetic strip causes an electrical signal.
- scanning readers in which the ticket or card is passed manually into a slot, can operate regardless of the speed of passage of the ticket or card in the slot.
- FIG. 3 an example of analog signals corresponding to a message written in F2F format is illustrated.
- the magnetic codes read are converted into an analog electrical signal SIG1.
- Magnetic field transitions are recorded at a regular period, corresponding to the width of a bit. These transitions allow synchronization. When read, these transitions generate TSYNC signal peaks at a period T1.
- the 1's are coded by putting an additional transition between two TSYNC synchronization transitions.
- the 0's are coded without putting an additional transition. Consequently the T2F transitions at the double frequency correspond to ones.
- a signal SIG2 indicates the presence of the ticket.
- a two-level signal SIG3 corresponds to the sequence of bits written on the PI track.
- a SIG4 sampling signal is generated during reading. It can be generated using a blocking sampler for example.
- margins bits with zeros
- the period of a T1 bit is determined. After each TSYNC synchronization transition, a monostable flip-flop waits for approximately 75% of (at the period of a T1 bit. If a transition occurs, a bit 1 is read. Otherwise a bit 0 is read. After this duration of 75% of T1, the following transition will be detected, which will serve as a clock signal.
- the period T2 during which the clock signal is detected has a duration of approximately 25% of T1.
- the start coded message includes a margin M1 of variable length , a tag SS indicating the beginning of the content of the message MES, the content of the message MES of N digital data, a tag ES indicating the end of the content of the message MES, and a longitudinal redundancy code C1.
- this longitudinal redundancy code is followed by data determined from the content of the message. This data constitutes a reduced RED message, the length of which is less than that of the original MES message.
- This reduced message allows the possible unreadable parts of the original MES message to be reconstructed.
- the reduced RED message can be followed by an ES end tag. This allows in particular the reading of the coded message in both directions.
- the data of the original MES message are assembled in p-tuples. Each element of the RED reduced message is the image by an application of one of these p-upiets.
- the first element of the reduced message is the image of the first p-tuple
- the second element of the reduced message is the image of the second p-tuple, ...
- the original message MES comprises N digital data denoted d (i), where i is an index of a set I of N indices.
- the digital data d (i) can be integers belonging to the set E of integers for example between 0 and 15. We use hexadecimal notations to represent the data d (i).
- the reduced message RED comprises M 0 digital data denoted r 0 (j), where j is an index of a set J 0 of M 0 indices.
- the data r 0 (j) can be integers belonging to the set E.
- g 0 is a surjective map from I to J 0 .
- the application g 0 can be the following application:
- od is the modulo function which returns the remainder of the division of i by Mo.
- each p-tuplet Uo (j) comprises an element of the first zone Z1 and an element of the second zone Z2.
- the p-tuples are couples.
- the first element D1 of the zone Z1 and the first element D4 of the zone Z2 form the first pair u 0 (0); the second element D2 of zone Z1 and the second element D5 of zone Z2 form the second pair u 0 (1); ...; the last element D3 of the zone Z1 and the last element D6 of the zone Z2 form the last couple u 0 (M 0 -1).
- Each element of the reduced RED message is determined from the preceding p-tuples (of the pairs in this example).
- the first element D7 of the reduced message RED is the image of the couple (D1; D4) by an application f 0 , o-
- the second element D8 of the reduced message RED is the image of the couple (D2; D5) by an application f 0 , ⁇ ...
- the last element D9 of the reduced message RED is the image of the couple (D3; D6) by an application
- the applications f 0 j are such that for any p-tuple u 0 G), it is possible to determine the value of any element of this p-tuple from the values of the other elements on the one hand, and from the value of the element roG) of the reduced message RED on the other hand.
- This operator can a logical operator such as an exclusive OR or the negation of an exclusive OR.
- the values of elements D7 and D8 for example of the reduced message RED are determined by the following relationships:
- this operator is a
- Exclusive OR the implementation of which is simple for both coding and decoding.
- the exclusive OR is represented by the symbol "".
- the reduced message RED makes it possible to reconstruct any illegible parts of the original MES message.
- the reduced message makes it possible to reconstruct up to M unreadable data. In other words, it is possible to read the ticket correctly even if 1/3 of the useful part of the magnetic strip BM is damaged. This applies regardless of where the BM magnetic strip is damaged.
- the exclusive OR operator has the other advantage of making it possible not only to reconstruct unreadable parts of the original MES message, but also to carry out integrity checks by zones.
- the integrity of the reduced RED message can be checked because its longitudinal redundancy code is the same as that of the original MES message:
- the original MES message and the RED reduced message are formatted.
- the tag SS is added before the original message MES
- the tag ES is added at the end of the original message MES
- a longitudinal redundancy code C1 of the original message is determined and added after the ES tag.
- the reduced RED message is added after the longitudinal redundancy code C1, and a last ES tag is added after.
- the length of the margins M1 and M2 is determined.
- the margin M1 is added before the tag SS, the margin M2 is added after the last tag B3.
- all of this data (including the margins and the tags) is coded on 5 bits, the first four bits being data bits, the last bit being a parity bit. This parity bit makes it possible to verify the integrity of the character during decoding.
- the magnetic stripe reader does not correctly read the information on the track.
- the reader returns an uninterrupted series of "1", which could be interpreted by the decoder as a series of characters of code H hex.
- the parity bit of F hex is 1. Consequently, the decoder would not detect a parity error.
- the parity bit of F hex is set to 0 instead of 1. This makes it possible to detect a parity error when the reader returns a long sequence of 1. In fact, it is possible to have at most a sequence of 7 bits to 1 (which corresponds to the sequence of characters of code 3F hex) in integral data.
- the character is represented by its hexadecimal code in the first column of this table on the one hand, and by the value of its four bits in the following columns on the other hand.
- the first bit B * j is the least significant bit
- the last bit B is the most significant bit.
- the last column of the table is the parity bit P.
- the inverse of this parity bit is coded, except for F hex.
- the value of the parity bit is such that the total number of bits at 1 is always even.
- the MES message data whose rank is between 0 and 19 are assembled in p-tuples of 4 elements
- MES message data whose rank is between 20 and 34 are assembled in p-tuples of 3 elements
- the MES message data whose rank is between 35 and 39 are assembled in p-tuples of 1 element (singletons).
- the data of the MES message do not all have the same importance.
- the data of rank 35 to 39 can be financial data, that is to say critical data. This is why these data are gathered in p-tuples comprising few elements (1 element in this example).
- certain areas of the MES message may be more exposed than others. Thus, it is more likely to have a fold at the middle of a ticket only at its start for example. This is why the first data of the MES message (rank between 0 and 19) are assembled in p-tuples of 4 elements, while the following data are assembled in p-tuples of 3 elements only.
- Each element ro) of the reduced RED message is determined from the preceding UoG) p-tuples as follows:
- the binary operator can an arithmetic operator such as an addition or a subtraction modulo the largest value of E. If this operator is an addition for example, the values of the elements r 0 G) can be determined by the relations of the following table :
- the original MES message and the RED reduced message are formatted.
- the formatting of the coded message can be the same as that of coding example n ° 1 or be another formatting.
- a first step is to read the coded data.
- This reading can be carried out by a reading device comprising for example a magnetic reading head making it possible to read the coded message on the magnetic tape.
- the coded message can be read one way or the other.
- the coded message is read successively in one direction then in the other.
- the message was coded according to coding example No. 1.
- the length of the MES message is fixed.
- margin M1 or the margin M2 is read first. These margins include bits with zeros.
- the generated electrical signal resembles a clock signal, which allows synchronization of the reader.
- the first line of this table is a numbering of the 15 bits read.
- the next line contains the sequence of bits read in the first direction
- the coded message is read from the right side.
- the first non-zero bit read is the 11 th bit.
- the first tag read is SS, it's at say the character of code B hex. This code character "B" corresponds to bits 11 to 15 (last five bits): 11010.
- the next line contains the sequence of bits read in the second direction (direction 2) of reading.
- the first non-zero bit read is the I2 nd bit.
- the first tag read is ES, i.e. the code character F hex.
- the character F hex being read backwards, the first bit read is the parity bit (ie 0 in this example), the next four bits are 1.
- This character corresponds to bits n ° 11 to 15 : 01111. It is possible to determine the direction of reading from the data read. Indeed, the first bits read are different depending on the direction of reading. This can be useful if no other means makes it possible to determine the direction of introduction of the ticket, in particular for parking tickets whose magnetic strip is in the central position.
- the ticket makes a first pass in front of the magnetic reading head of the reader.
- the data read is memorized.
- the ticket is read the other way. It makes a second pass in front of the read head.
- the data read in the other direction is memorized.
- the integrity of the data is tested.
- the parity bits and the longitudinal redundancy code C1 can be used to carry out this integrity test.
- This table TAB can be a table of whole N + Mo, that is to say 1.5 x whole N. These integers can be coded on 16 bits or 32 bits for example to make the addressing of the TAB table faster.
- the data memorized during the reading at the place (direction 1) are copied in the table TAB from its beginning DEB1.
- the tags SS, ES and the longitudinal redundancy code C1 are not copied in this table.
- the parity bit of the copied data is then checked.
- the first erroneous parity bit corresponds to non-integral data.
- the data memorized during the reverse reading are copied in the table TAB from its end DEB2.
- a second range of integral LEC2 data is similarly determined.
- the data range LEC2 is stored in the end of the table TAB, that is to say from its end DEB2 up to a limit FIN2.
- the elements of the table TAB comprised between the FINI limit and the FIN2 limit correspond to ERR data assumed to be non-intact or unread data.
- Each item of data from the first data stream is copied into the second data stream with the marking "integral data” or “non-integral data” depending on the value of the parity bit. This recopy is performed with a delay of two data. In other words, the data of the second data stream is transmitted with a delay of two data.
- a datum is marked "non-integral data” (following an erroneous parity bit)
- the two preceding data are also marked “non-integral data”.
- a piece of data can be marked “integral data” at first, then “non-integral data” then.
- the data following this first datum marked “non-integral data” are also marked “non-integral data” unless the parity bit of the datum to be marked and of the two preceding data is correct. Consequently, a data item is marked "integral data” only if the two preceding data and the following two data have correct parity bits.
- the data assumed to be non-integral ERR is divided into two parts E1 and E2.
- the part E1 corresponds to the end of the first half Z1 of the original message MES.
- Part E2 corresponds to the start of the second half Z2 of the original MES message.
- the data included in these parts E1 and E2 are missing from the message.
- the data corresponding to the part E1 were assembled during coding with a part V2 corresponding to the end of the second half Z2 of the original message MES.
- the data corresponding to the part E2 was assembled during coding with a part V1 corresponding to the start of the first half Z1 of the original message MES.
- the data from part V2 and the reduced message RED are used to determine the data from part E1.
- the original MES message is reconstructed in its entirety despite erroneous data.
- the decoding of the MES message is correct while part of the message read is incorrect.
- the coded message occupies only 50% more space compared to a conventional coding which would not allow the message to be reconstructed.
- the coding means can be a calculation unit comprising a microprocessor and a random access memory.
- the writing means depend on the recording medium.
- a magnetic writing head For tickets or cards with magnetic stripes, they may include a magnetic writing head, which is polarized by a head management module.
- the management module includes an amplifier which amplifies the bias current.
- These writing means also comprise a stepping motor, which makes it possible to scroll the ticket or the card at constant speed in front of the magnetic writing head.
- a quartz makes it possible to synchronize the coding means and the motor, so as to code the ticket or the card with a constant density.
- MES to obtain the 2 reduced messages RED1 and RED2.
- These reduced messages are made up of 2 other sequences of Mi and M 2 digital data, where Mi and M 2 are strictly less than N.
- 2 determined laws are applied to the original message such as:
- the applications f being such that for any p-tuple, it is possible to determine the value of any element of this p-tuple from the values of the other elements on the one hand, and the value of the element of the reduced message RED1 or RED2 on the other hand During a formatting step, the first reduced message
- the RED1 can be placed after the original MES message.
- the second reduced message RED2 is placed after the first reduced message RED1.
- the first reduced RED1 message can be that of coding example n ° 1.
- the second reduced RED2 message can be ten times smaller than the original message for example. This second reduced message can be determined in the same way as the first reduced message RED1, the application gi being modified.
- the first reduced message RED1 makes it possible to reconstruct up to 50% of the original message MES. If missing data remains, the second reduced message RED2 is then used to reconstruct the sequence. We will manage to reconstruct still up to 10% of the original MES message.
- the method of coding a message MES consisting of a series of N digital data then comprises the following steps:
- W k j elements, where W k j is an integer, defined by the relation
- Coded messages can be entered in the form of bar codes, for example.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
La présente invention concerne un procédé et un dispositif de codage/décodage d'un message. L'invention permet le décodage correct d'un message lorsqu'une partie du message lu est erronée. A cet effet, un message réduit RED, dont la longueur est inférieure à celle du message d'origine MES est codé avec le message d'origine MES. Ce message réduit RED permet de reconstituer les éventuelles parties illisibles du message d'origine MES. Elle s'applique notamment au codage/décodage de messages sur une piste de bande magnétique BM. Ces bandes magnétiques peuvent être utilisées sur des supports cartonnés tels que les tickets de parking TI ou les titres de transport ou sur des supports plastifiés tels que les cartes d'identification ou les cartes permettant d'effectuer des transactions financières.
Description
PROCEDE ET DISPOSITIF DE CODAGE/DECODAGE D'UN MESSAGE.
La présente invention concerne un procédé et un dispositif de codage/décodage d'un message. Elle s'applique notamment au codage/décodage de messages sur une piste de bande magnétique. Ces bandes magnétiques peuvent être utilisées sur des supports cartonnés tels que les tickets de parking ou les titres de transport ou sur des supports plastifiés tels que les cartes d'identification ou les cartes permettant d'effectuer des transactions financières.
Les bandes magnétiques sont utilisées pour lire et écrire des messages, c'est à dire des suites de données numériques. Les données peuvent être écrites en utilisant un codage propriétaire ou normalisé. Il existe de nombreux standards et normes émis par des organismes tel que l'ANSI (abréviation de « American National Standards Institute »), l'ISO (abréviation de « International Standards Organization »), l'IATA (abréviation de « International Air Transportation Association »), l'ABA (abréviation de « American Bankers Association »), ou la THRIFT (organisme bancaire).
Il arrive parfois que de petites zones d'une bande magnétique soient endommagées, rendant illisibles les données inscrites sur ces zones. Lorsqu'un ticket de parking est plié par exemple, les données inscrites sur la pliure sont illisibles. Il arrive aussi que des zones importantes soient endommagées, rendant beaucoup de données illisibles. Ceci arrive par exemple lorsqu'un ticket de parking est rangé dans un sac à main. Il peut être en contact avec un fermoir métallique ou des objets aimantés, pouvant démagnétiser une zone importante de la piste magnétique. Une solution connue pour pallier la perte de données d'un message consiste à écrire deux ou trois fois ce message sur une piste de la bande magnétique. Lors du décodage on lit la première occurrence du message. On teste alors l'intégrité des données lues avec un code de redondance longitudinal ou LRC (abréviation anglo-saxonne de « Longitudinal Redundancy Check ») par exemple. Si cette occurrence du message est erronée, on peut en lire la seconde voire la troisième occurrence. Un avantage de cette solution est que chaque occurrence du message peut utiliser un codage normalisé.
Un premier inconvénient est que cette solution ne permet pas de décoder correctement le message si plusieurs zones de la bande magnétique sont endommagées, rendant chacune des occurrences illisibles.
Un autre inconvénient est que cette solution double, voire triple le nombre de données à inscrire sur une piste. Or le nombre de données que l'on peut inscrire sur une piste dépend de sa densité d'une part, et de sa longueur d'autre part. Afin d'augmenter le nombre de données inscrites sur une piste, la longueur maximale étant fixée par la taillé du support, il est nécessaire de changer sa densité. Augmenter la densité d'une piste sur un support déterminé tel qu'un ticket de parking implique de modifier tous les appareils de lecture et d'écriture déjà installés. Ces modifications s'accompagnent non seulement d'une augmentation de prix des appareils à l'unité, mais aussi d'un investissement important lorsque beaucoup d'appareils sont déjà installés. Un but de l'invention est de permettre le décodage correct d'un message lorsqu'une partie du message lu est erronée, tout en limitant la place occupée par le message codé. Ce but est atteint par le procédé selon l'invention de codage d'un message (MES) constitué d'une suite de N données numériques, qui comprend au moins les étapes suivantes : • une étape de réduction du message (MES) pour obtenir un message réduit (RED) constitué d'une autre suite de M données numériques, où M est strictement inférieur à N, en appliquant une loi déterminée au message d'origine telle que
• la suite de données du message d'origine (MES) étant notée où I est un ensemble de N indices, la suite de données du message réduit (RED) étant notée où Jo est un ensemble de Mo indices, étant donné une application surjective go de I vers
Jo associant à chaque indice i de l une image j dans J0, les données du message d'origine (MES) sont assemblées en p-uplets de W0tj éléments, où Woj est un entier, définis par la relation
• les données numériques du message d'origine (MES) et du message réduit (RED) appartenant à un ensemble E, étant donné des applications foj du produit cartésien vers E associant à chaque p-uplet une image dans E, les données du
message réduit (RED) sont déterminées par la relation
• les applications f<j,j étant telles que pour tout p-uplet , il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit (RED) d'autre part
• une étape de mise en forme du message d'origine (MES) et du message réduit (RED) pour obtenir le message codé.
L'invention concerne aussi le procédé de décodage, les supports d'enregistrement, et les dispositifs de codage liés à ce procédé de codage.
L'invention a pour principaux avantages qu'elle peut être compatible avec des procédés de codage normalisés et qu'elle est simple à mettre en œuvre.
D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit faite en regard de dessins annexés qui représentent :
• la figure 1 un exemple de ticket de parking comportant une bande magnétique ;
• la figure 2 un exemple de cartographie mémoire d'un message codé selon une technique connue ;
• la figure 3 un exemple de signal analogique correspondant à un message codé ;
• \a figure 4, un exemple de signaux logiques correspondant à un message codé ; • la figure 5 un exemple de cartographie mémoire d'un message codé selon l'invention ;
• la figure 6 un exemple de tableau servant au décodage selon l'invention du message codé figure 4 ;
• la figure 7 un autre exemple de cartographie mémoire d'un message codé selon l'invention.
On se réfère maintenant à la figure 1 sur laquelle est illustré un ticket de parking TI. Ce ticket TI comprend une bande magnétique BM sur laquelle est inscrit un message codé. Ce ticket peut comprendre en outre des symboles imprimés tels qu'un logo LG, un texte TXT. Pour être lu, ce ticket
TI est inséré dans un lecteur, l'avant AV du ticket entrant en premier dans de lecteur. Le message codé est inscrit sur la bande magnétique BM sous la forme de codes magnétiques. Ces codes magnétiques sont inscrits dans un sens tel que (e début du message codé soit situé à l'avant AV du ticket, et la fin du message codé soit située à l'arrière AR du ticket. De cette façon, le message codé peut être lu à l'endroit.
Le message codé est constitué d'une suite de bits auxquels correspondent les codes magnétiques inscrits sur la pisté PI. Cette suite de bits correspond aussi à une suite de caractères. Ces caractères sont de deux sortes : les caractères de données d'une part, et les caractères de contrôle d'autre part. Les caractères de données peuvent être des caractères numériques ou alphanumériques. Dans tous les cas les caractères sont des données numériques.
Le message d'origine, c'est à dire le contenu du message codé, est une suite de données numériques que l'on représente par la référence MES sur les figures. Les caractères de contrôles sont insérés automatiquement lors de l'écriture des messages par les codeurs. Ces caractères de contrôle permettent de déterminer le début et la fin du message MES sur la piste, et d'effectuer des contrôles d'intégrité. On appelle format du message codé la correspondance entre la suite de bits constituant ce message, et la suite de données numériques du message d'origine MES.
Les normes suivantes peuvent être consultées pour plus d'information sur les bandes magnétiques utilisées sur les cartes de crédit, et pouvant être utilisées pour les tickets de parking aussi :
Codages usuels
Définitions usuelles des pistes :
Un message est généralement codé selon un format normalisé sur l'une des pistes d'une bande magnétique. On distingue usuellement trois pistes, numérotées 1 à 3, auxquelles sont associés des formats normalisés :
• La piste n°1, développée par DATA, contient des caractères alphanumériques pour l'automatisation de la billetterie des compagnies aériennes. Elle est aussi utilisée pour d'autres transactions dans lesquelles une base de données de réservation est utilisée.
• La piste n°2, développée par l'ABA, contient des caractères numériques pour l'automatisation de transactions financières. Aujourd'hui, cette piste est aussi utilisée par la plupart des systèmes qui requièrent un numéro d'identification et un minimum d'autres informations de contrôle.
• La piste n°3, développée la THRIFT, contient des informations dont une partie doit être mise à jour (re-enregistrée) à chaque transaction. Par exemple les distributeurs de billets qui opèrent en mode déconnecté (« off-line »).
On se réfère maintenant à la figure 2 sur laquelle est représenté un message codé selon une technique connue. Ce message peut être inscrit sur une piste PI d'une bande magnétique, telle que la bande magnétique BM du ticket TI illustré figure 1. Le message codé débute par une marge M1. Cette marge M1 comprend une suite de bits à zéro. La longueur de cette marge M1 peut être variable. Après cette marge M1, une balise de départ (appelée « start sentinel » dans la littérature anglo-saxonne) SS indique le début du message MES. Cette balise de départ SS est une séquence de bits déterminés. Après cette balise de départ SS, le message codé comprend la suite de N données numériques du message d'origine MES, c'est à dire le contenu du message. Après ces N données, une balise de fin (appelée « end sentinel » dans la littérature anglo-saxonne) ES indique la fin du contenu du message. Cette balise est une séquence de bits déterminés. Après cette balise ES, un code de redondance longitudinal C1 permet de vérifier la validité des N données
inscrites. Ce code de redondance C1 est suivi d'une seconde marge M2 de bits à zéro jusqu'à la fin de la piste. La longueur de cette marge est variable.
Piste n°1 (lATA) :
On décrit maintenant un exemple usuel de codage de la piste n°1. Sa densité est généralement de 210 BPI. Les caractères sont des caractères alphanumériques. Ils occupent 7 bits dont 6 bits de données Bi, B2, B , B4, B5f B6 et un bit de parité P. Le bit de parité P est déterminé à partir des bits de données B-i, B2, B3, B , B5, B6. Sa valeur (0 ou 1) est telle que le nombre total de bits à 1 dans le caractère soit toujours impair. Le premier bit de donnée Bi est le bit de poids faible, le dernier bit de donnée B6 est le bit de poids fort.
La table suivante donne la valeur des 7 bits en fonction du caractère (colonne « Caract. ») . La première colonne du tableau (colonne « Hex. ») est la valeur numérique du caractère (hors bit de parité) en notation hexadécimale.
On utilisera l'abréviation « hex » à la suite des nombres exprimés en notation hexadécimale dans la suite de la description. La marge M1 comprend approximativement 62 bits à zéro. La balise de départ SS est le caractère de contrôle « % » c'est à dire 05 hex. Ce caractère de contrôle correspond à la séquence de bits 1010001. Les données du message MES peuvent occuper au maximum 76 caractères. La balise de fin ES est le caractère de contrôle « ? » c'est à dire 1F hex. Ce caractère de contrôle correspond à la séquence de bits 1111100. La marge M2 comprend au moins 62 bits à zéro.
Exemple (tATA) :
Le message « TOTO2 » est codé de la manière suivante
« 000...000 » la marge de début M1 (approximativement 62 bits), « 101001 » la balise de départ SS, « 0010110 » le caractère « T », « 1111010 » le caractère « O », « 0010110 » le caractère « T », « 1111010 » le caractère « O », « 0100101 » le caractère « 2 », « 1111100 » la balise de fin ES, « 1110110 » le code de redondance longitudinal C1, « 000...000 » la marge de fin M2 (minimum de 62 bits).
Le code de redondance longitudinal est un caractère de contrôle. Tous les caractères sont valides y compris « ? », c'est à dire 1F hex. Ce code de redondance longitudinal C1 est déterminé en additionnant par un OU exclusif
tous les données numériques (caractères de données et caractères de contrôle) du message codé à partir de la balise de départ SS (incluse) jusqu'à la balise de fin ES (incluse). Puis la parité de caractère est déterminée.
Piste n°2 (ABA) :
On décrit maintenant un exemple usuel de codage de la piste n°2. Sa densité est généralement de 75 BPI. Les caractères sont des caractères numériques. Ils occupent 5 bits dont 4 bits de données Bi, B2, B3, B4 et un bit de parité P. Le bit de parité P est déterminé à partir des bits de données B1, B2, B3, B . Sa valeur (0 ou 1) est telle que le nombre total de bits à 1 dans le caractère soit toujours impair. Le premier bit de donnée B-i est le bit de poids faible, le dernier bit de donnée B est le bit de poids fort. La table suivante donne la valeur des 5 bits en fonction du caractère (colonne « Caract. ») . La première colonne du tableau (colonne « Hex. ») est la valeur numérique du caractère (hors bit de parité) en notation hexadécimale.
La marge 1 comprend approximativement 22 bits à zéro. La balise de départ SS est le caractère de contrôle « ; » c'est à dire B hex. Ce caractère de contrôle correspond à la séquence de bits 11010. Les données du message MES peuvent occuper au maximum 37 caractères (soit 40 caractères pour le message codé). La balise de fin ES est le caractère de contrôle « ? » c'est à dire F hex. Ce caractère de contrôle correspond à la séquence de bits 11111. La marge M2 comprend au moins 22 bits à zéro.
Piste n°3 (THRIFT) :
On décrit maintenant un exemple usuel de codage de la piste n°3. Sa densité est généralement de 210 BPI. Les caractères sont des caractères numériques. Ils occupent 5 bits de la même façon que pour la piste n°2.
La marge M1 comprend approximativement 62 bits à zéro. La marge M2 comprend au moins 62 bits à zéro. Les caractères de contrôle (ES,SS) sont les mêmes que pour la piste n°2.
Transcription en codes magnétiques et signaux électriques :
La piste magnétique comprend une succession de pôles magnétiques Nord (N) et Sud (S). Des lignes de champ magnétique partent du pôle N et vont au pôle S. Les bandes magnétiques comprennent des particules ferromagnétiques qui se comportent comme des petits aimants. Ces particules sont retenues de manière rigide par une résine. La polarité de ces particules est stable. Par conséquent, ces particules se comportent comme des aimants permanents. L'application d'un fort champ magnétique de polarité inverse permet d'en changer la polarité. La force du champ magnétique requis pour produire cet effet est appelée la force coercitive. Selon les particules utilisées, les bandes magnétiques sont faiblement ou fortement coercitives.
L'inscription (enregistrement) d'une bande magnétique consiste à appliquer un champ magnétique pour faire apparaître des transitions N-S ou S-N. Cette application peut être réalisée avec une tête d'écriture magnétique comprenant un solénoïde. Ce solénoïde permet de générer un champ magnétique à partir d'une tension. Lors de la lecture, les transitions N-S ou
S-N sont converties en signaux électriques par l'intermédiaire d'une tête de lecture comprenant un solénoïde. Le passage de cette tête de lecture sur la bande magnétique provoque un signal électrique.
Il existe plusieurs manières d'inscrire (d'enregistrer) une suite de 0 et de 1 sur une bande magnétique. On peut citer notamment l'enregistrement F2F défini par l'ISO. « F2F » signifie fréquence / double fréquence. On parle d'enregistrement à deux phases cohérentes ou d'enregistrement « Aiken Biphasé ». L'enregistrement au format F2F permet lors de la lecture de générer un signal d'horloge. En d'autres termes, la suite de codes magnétiques, transcription de la suite de bits, permet au lecteur de générer un signal d'horloge pour déterminer le début et la fin des bits lus.
Ceci permet de faire défiler la bande magnétique devant la tête de lecture sans en contrôler la vitesse de défilement. Par conséquent, les lecteurs à balayage (appelés « swipe readers » dans la littérature anglo- saxonne), dans lesquels le ticket ou la carte est passé manuellement dans une fente, peuvent fonctionner quelle que soit la vitesse de passage du ticket ou de la carte dans la fente.
On se réfère maintenant à la figure 3 sur laquelle est illustré un exemple de signaux analogiques correspondant à un message inscrit au format F2F. Les codes magnétiques lus sont convertis en un signal électrique analogique SIG1. Des transitions de champ magnétique sont inscrites à une période régulière, correspondant à la largeur d'un bit. Ces transitions permettent d'effectuer une synchronisation. Lors de la lecture, ces transitions génèrent des pics de signal TSYNC à une période T1. Les 1 sont codés en mettant une transition supplémentaire entre deux transitions de synchronisation TSYNC. Les 0 sont codés en ne mettant pas de transition supplémentaire. Par conséquent les transitions T2F à la fréquence double correspondent à des uns.
On se réfère maintenant à la figure 4 sur laquelle est illustré un exemple de signaux logiques générés lors de la lecture d'un message au format F2F. Lors de la lecture du message inscrit sur la bande magnétique BM, un signal SIG2 indique la présence du ticket. Un signal SIG3 à deux niveaux correspond à la séquence de bits inscrits sur la piste PI. Un signal d'échantillonnage SIG4 est généré lors de la lecture. Il peut être généré en utilisant un échantillonneur bloqueur par exemple. Lors de la lecture des
marges (bits à zéros), on détermine la période d'un bit T1. Après chaque transition de synchronisation TSYNC, une bascule monostable attend pendant environ 75% de (a période d'un bit T1. Si une transition intervient, un bit 1 est lu. Sinon un bit 0 est lu. Après cette durée de 75% de T1, on détecte la transition suivante qui servira de signal d'horloge. La période T2 pendant laquelle on détecte le signal d'horloge a une durée d'environ 25% de T1.
Il peut arriver que qu'une dégradation du support, ou un signal parasite altère ce signal. Certaines données lues peuvent être alors erronées. Le code de redondance longitudinal C1 et les bits de parité permettent de tester que l'intégrité du contenu du message MES. Si ce contenu est erroné le ticket TI est illisible.
Nouveau codage
On se réfère maintenant à la figure 5 sur laquelle est illustré un exemple de message codé selon l'invention. Ce message peut être inscrit sur une piste PI d'une bande magnétique, telle que la bande magnétique BM du ticket TI illustré figure 1. De même que dans l'exemple illustré figure 2, le début message codé comprend une marge M1 de longueur variable, une balise SS indiquant le début du contenu du message MES, le contenu du message MES de N données numériques, une balise ES indiquant la fin du contenu du message MES, et un code de redondance longitudinal C1. Selon l'invention, ce code de redondance longitudinal est suivi de données déterminées à partir du contenu du message. Ces données constituent un message réduit RED, dont la longueur est inférieure à celle du message d'origine MES. Ce message réduit permet de reconstituer les éventuelles parties illisibles du message d'origine MES. Le message réduit RED peut être suivi par une balise de fin ES. Ceci permet notamment la lecture du message codé dans les deux sens. Afin de déterminer le message réduit, les données du message d'origine MES sont assemblées en p-uplets. Chaque élément du message réduit RED est l'image par une application de l'un de ces p-upiets. Le premier élément du message réduit est l'image du premier p-uplet, le second élément du message réduit est l'image du second p-uplet, ...
On utilise dans la suite de la description un formalisme mathématique des ensembles qui est rappelé dans la collection Techniques de l'Ingénieur, notamment volume AF1 « Sciences fondamentales mathématiques », dans l'article AF33 « Langage des ensembles et des structures » par Bernard RANDE de octobre 1997.
Le message d'origine MES comprend N données numériques notées d(i), où i est un indice d'un ensemble I de N indices. Les données numériques d(i) peuvent être des entiers appartenant a l'ensemble E des entiers compris par exemple entre 0 et 15. On utilise les notations hexadécimales pour représenter les données d(i).
En utilisant des notations mathématiques :
MES= avec I ={0; 1 ; 2 ; 3 ; ... ; N-1}
où avec E = {0; 1 ;2;3;...;9;A;B;C;D;E;F}
Le message réduit RED comprend M0 données numériques notées r0(j), où j est un indice d'un ensemble J0 de M0 indices. Les données r0(j) peuvent être des entiers appartenant à l'ensemble E. En utilisant des notations mathématiques :
RED≈ avec J0 = { 0 ; 1 ; 2 ; 3 ; ... ; M0-1}
ou
Les données du message d'origine MES sont assemblées en p- uplets notés où j appartient à Jo de la manière suivante :
où g0 est une application surjective de I vers J0.
Exemple de codage n°1 :
On prend Mo = N/2. En d'autres termes, le message réduit RED est deux fois plus petit que le message d'origine MES.
L'application g0 peut être l'application suivante :
où od est la fonction modulo qui renvoie le reste de la division de i par Mo.
En d'autres termes si on divise le message MES en deux zones de longueurs identiques Z1 et Z2, la zone Z1 correspondant à la première moitié du message MES, la zone Z2 correspondant à la seconde moitié, chaque p-uplet Uo(j) comprend un élément de la première zone Z1 et un élément de la seconde zone Z2. Dans cet exemple, les p-uplets sont des couples.
Plus précisément, le premier élément D1 de la zone Z1 et le premier élément D4 de la zone Z2 forment le premier couple u0(0) ; le second élément D2 de la zone Z1 et le second élément D5 de la zone Z2 forment le second couple u0(1) ; ... ; le dernier élément D3 de la zone Z1 et le dernier élément D6 de la zone Z2 forment le dernier couple u0(M0-1 ).
Ceci peut s'écrire en utilisant les notations mathématiques précédentes de la manière suivante : u0(0) = ( d(0) ; d(M0) ) u0(1 ) = ( d(1) ; d(M0+1) )
u0(M0-1) = ( d(Mo-1) ; d(N-1) )
Chaque élément du message réduit RED est déterminé à partir des p-uplets (des couples dans cet exemple) précédents. Le premier élément D7 du message réduit RED est l'image du couple (D1 ; D4) par une application f0,o- Le second élément D8 du message réduit RED est l'image du couple (D2 ; D5) par une application f0,ι...Le dernier élément D9 du message réduit RED est l'image du couple (D3 ; D6) par une application
En utilisant des notations mathématiques on peut écrire :
où fo.o, fo,ι, fo,j, sont des applications.
Les applications f0j sont telles que pour tout p-uplet u0G), il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément roG) du message réduit RED d'autre part.
Ces applications f0,j peuvent être l'application suivante :
où est un opérateur binaire.
Cet opérateur peut un opérateur logique tel qu'un OU exclusif ou la négation d'un OU exclusif. Les valeurs des éléments D7 et D8 par exemple du message réduit RED sont déterminés par les relations suivantes :
Selon un mode de réalisation avantageux, cet opérateur est un
OU exclusif, dont la mise en œuvre est simple à la fois pour le codage et le décodage. On représente le OU exclusif par le symbole « ».
Lors de la lecture, si la donnée D1 est illisible par exemple, il est possible de la retrouver lors du décodage à partir de D4 d'une part et de D7 d'autre part :
De même si la donnée D4 est illisible, il est possible de la retrouver à partir des D1 d'une part et de D7 d'autre part :
Ainsi, il est possible de déterminer la valeur de n'importe quel élément du couple D1 , D4 du couple uo(0) à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément r0(0) c'est à dire D7 du message réduit RED d'autre part. Il en est de même pour tous les couples UoG) car 'es applications f0j- sont toutes identiques dans cet exemple. Par conséquent, le message réduit RED permet de reconstituer les éventuelles parties illisibles du message d'origine MES. Dans cet exemple, le message réduit permet de reconstituer jusqu'à M données illisibles. En d'autres termes, il est possible de lire correctement le ticket même si 1/3 de la partie utile de la bande magnétique BM est endommagée. Ceci est valable quel que soit l'endroit où la bande magnétique BM est endommagée.
L'opérateur OU exclusif a pour autre avantage de permettre non seulement de reconstruire des parties illisibles du message d'origine MES, mais encore d'effectuer des contrôles d'intégrité par zones. Notamment on peut vérifier l'intégrité du message réduit RED car son code de redondance longitudinal est le même que celui du message d'origine MES :
Une fois le message réduit RED déterminé, le message d'origine MES et le message réduit RED sont mis en forme. Lors d'une première étape de mise en forme, la balise SS est ajoutée avant le message d'origine MES, la balise ES est ajoutée à la fin du message d'origine MES, un code de redondance longitudinal C1 du message d'origine est déterminé et ajouté après la balise ES. Le message réduit RED est ajouté à la suite du code de redondance longitudinal C1 , et une dernière balise ES est ajoutée à la suite. Selon la longueur de la piste PI, la densité de la piste PI et la longueur du
message MES, la longueur des marges M1 et M2 est déterminée. La marge M1 est ajoutée avant la balise SS, la marge M2 est ajoutée après la dernière balise B3.
Lors d'une seconde étape de mise en forme, toutes ces données (y compris les marges et les balises) sont codées sur 5 bits, les quatre premiers bits étant des bits de données, le dernier bit étant un bit de parité. Ce bit de parité permet de vérifier l'intégrité du caractère lors du décodage.
Il arrive parfois que le lecteur de piste magnétique ne lise pas correctement les informations présentes sur la piste. Dans certains cas, le lecteur renvoie une suite de « 1 » ininterrompue, qui pourrait être interprétée par le décodeur comme une suite de caractères de code H hex. Or le bit de parité de F hex est 1. Par conséquent le décodeur ne détecterait pas d'erreur de parité.
Selon une variante avantageuse, le bit de parité de F hex est mis à 0 au lieu de 1. Ceci permet de détecter une erreur de parité lorsque le lecteur renvoie une longue suite de 1. En effet, il est possible d'avoir au maximum une suite de 7 bits à 1 (ce qui correspond à la séquence de caractères de code 3F hex) dans des données intègres.
Le tableau suivant donne la valeur du bit de parité en fonction du caractère :
Le caractère est représenté par son code hexadécimal dans la première colonne de ce tableau d'une part, et par la valeur de ses quatre bits dans les colonnes suivantes d'autre part. Le premier bit B*j est le bit de poids faible, le dernier bit B est le bit de poids fort. La dernière colonne du tableau est le bit de parité P.
Selon variante de réalisation équivalente, on code l'inverse de ce bit de parité, sauf pour F hex. En d'autres termes, la valeur du bit de parité est telle que le nombre total de bits à 1 soit toujours pair.
Exemple de codage n°2 :
On prend dans cet exemple N = 40 et M = 15. L'application go peut être définie par :
Par conséquent, les données du message MES dont le rang est compris entre 0 et 19 sont assemblées en p-uplets de 4 éléments, des données du message MES dont le rang est compris entre 20 et 34 sont assemblées en p-uplets de 3 éléments, et les données du message MES dont le rang est compris entre 35 et 39 sont assemblées en p-uplets de 1 élément (singletons).
En effet, les données du message MES n'ont pas toutes la même importance. Ainsi les données de rang 35 à 39 peuvent être des données financières, c'est à dire des données critiques. C'est pourquoi ces données sont regroupées dans des p-uplets comprenant peu d'éléments (1 élément dans cet exemple). De plus, certaines zones du message MES peuvent être plus exposées que d'autres. Ainsi, il est plus probable d'avoir une pliure au
milieu d'un ticket qu'à son début par exemple. C'est pourquoi les premières données du message MES (rang compris entre 0 et 19) sont assemblées en p-uplets de 4 éléments, alors que les données suivantes sont assemblées en p-uplets de 3 éléments seulement.
Les p-uplets u0G) comprenant Woj éléments, obtenus avec l'application g0 précédente, sont écrits dans le tableau suivant :
Chaque élément ro ) du message réduit RED est déterminé à partir des p-uplets UoG) précédents de la manière suivante :
où fo,o, fo,ι, fo,j, sont des applications. Ces applications f0,j sont telles que pour tout p-uplet u0G), il est possible de déterminer la valeur de n'importe
quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément r0G) du message réduit RED d'autre part. Ces applications peuvent être définies de la manière suivante :
où est un opérateur binaire. Lorsque le p-uplet ne comprend qu'un élément (pour j compris entre 10 et 14), cette application est l'identité.
L'opérateur binaire peut un opérateur arithmétique tel qu'une addition ou une soustraction modulo la plus grande valeur de E. Si cet opérateur est une addition par exemple, les valeurs des éléments r0G) peuvent être déterminées par les relations du tableau suivant :
On a utilisé le symbole « & » pour représenter un ET logique. Ce
ET logique avec la valeur F hex (c'est à dire 15) est équivalent à l'opérateur modulo. En pratique, on préfère utiliser un ET logique dont l'implémentation est plus simple et plus rapide. De manière équivalente, il est possible d'effectuer des additions et de mémoriser le résultat dans un registre
mémoire de 4 bits. De cette manière, les retenues au-delà du 4ιemΘ bit de poids fort ne sont pas mémorisées, et le ET logique n'est plus nécessaire.
Une fois le message réduit RED déterminé, le message d'origine MES et le message réduit RED sont mis en forme. La mise en forme du message codé peut être la même que celle de l'exemple de codage n°1 ou être une autre mise en forme.
Lecture et décodage
On décrit maintenant un exemple de lecture et de décodage d'un message codé selon l'invention. Une première étape est la lecture des données codées. Cette lecture peut être effectuée par un appareil de lecture comprenant par exemple une tête de lecture magnétique permettant de lire le message codé sur la bande magnétique. Le message codé peut être lu dans un sens ou dans l'autre. Avantageusement, le message codé est lu successivement dans un sens puis dans l'autre.
Dans cet exemple, le message a été codé selon l'exemple de codage n°1. La longueur du message MES est fixe.
Selon le sens de lecture, la marge M1 ou la marge M2 est lue en premier. Ces marges comprennent des bits à zéros. Le signal électrique généré ressemble à un signal d'horloge, ce qui permet d'effectuer une synchronisation du lecteur.
Selon le sens de lecture, la balise SS ou la balise ES est lue ensuite. Deux séquences de 15 bits lus à la fin de la marge (M1 ou M2), correspondant aux deux sens de lecture, sont représentées dans le tableau suivant :
La première ligne de ce tableau est une numérotation des 15 bits lus. La ligne suivante contient la séquence de bits lus dans le premier sens
(sens 1 ) de lecture. Dans ce sens, le message codé est lu à l'endroit. Le premier bit non nul lu est le 11eme bit. La première balise lue est SS, c'est à
dire lé caractère de code B hex. Ce caractère de code « B » correspond aux bits n°11 à 15 (cinq derniers bits) : 11010.
La ligne suivante contient la séquence de bits lus dans le second sens (sens 2) de lecture. Dans ce sens, le message codé est lu à l'envers. Le premier bit non nul lu est le I2eme bit. La première balise lue est ES, c'est à dire le caractère de code F hex. Le caractère F hex étant lu à l'envers, le premier bit lu est le bit de parité (c'est à dire 0 dans cet exemple), les quatre bits suivants sont des 1. Ce caractère correspond aux bits n°11 à 15 : 01111. Il est possible de déterminer le sens de lecture à partir des données lues. En effet, les premiers bits lus sont différents selon le sens de lecture. Ceci peut être utile si aucun autre moyen ne permet de déterminer le sens d'introduction du ticket, notamment pour les tickets de parking dont la bande magnétique est en position centrale.
Le ticket effectue un premier passage devant la tête de lecture magnétique du lecteur. Les données lues sont mémorisées. Puis le ticket est lu dans l'autre sens. Il effectue un second passage devant la tête de lecture. Les données lues dans l'autre sens sont mémorisées. Lors de la lecture, on teste l'intégrité des données. On peut utiliser notamment les bits de parité et le code de redondance longitudinal C1 pour effectuer ce test d'intégrité. On peut aussi vérifier que les données lues dans les deux sens sont identiques. Si ces données lues ne sont pas intègres, on localise les données erronées. Cette localisation peut être faite en utilisant les bits de parité par exemple.
Exemple de localisation des données erronées n°1
On décrit maintenant un premier exemple de lecture et de localisation des données erronées. On se réfère à la figure 6 sur laquelle est illustré un exemple de tableau utilisé pour mémoriser les données lues. Ce tableau TAB peut être un tableau de N+Mo entiers, c'est à dire 1.5 x N entiers. Ces entiers peuvent être codés sur 16 bits ou 32 bits par exemple pour rendre l'adressage du tableau TAB plus rapide.
Les données mémorisées lors de la lecture à l'endroit (sens 1) sont recopiées dans le tableau TAB à partir de son début DEB1. On ne recopie pas dans ce tableau les balises SS, ES et le code de redondance longitudinal C1. On vérifie ensuite le bit de parité des données recopiées. Le
premier bit de parité erroné correspond à une donnée non intègre. On peut supposer par précaution que les quelques données précédant cette donnée sont erronées. Par exemple les 2 données précédentes sont supposées non intègres. Si on ne détecte pas de donnée pendant un temps supérieur à deux fois la période d'un bit (ce qui arrive en cas de rupture de la bande magnétique par exemple), considère que les 2 données précédentes sont non intègres.
Si les données sont inscrites au format F2F, il n'est pas possible de lire la suite du ticket (perte d'horloge). Les données suivant les données non intègres sont non lues.
On remplace les données supposées non intègres ou non lues par une valeur supérieure à 15, c'est à dire supérieure à la plus grande valeur lue possible. On dispose alors dans le tableau TAB d'une plage de données LEC1 intègres. Cette plage de données LEC1 est mémorisée dans le début du tableau TAB, c'est à dire de son début DEB1 jusqu'à une limite FINI.
Les données mémorisées lors de la lecture à l'envers (sens 2) sont recopiées dans le tableau TAB à partir de sa fin DEB2. En utilisant les bits de parité, on détermine de la même façon une seconde plage de données LEC2 intègres. Bien entendu, on n'écrit pas dans la plage de données LEC1. La plage de données LEC2 est mémorisée dans la fin du tableau TAB, c'est à dire de sa fin DEB2 jusqu'à une limite FIN2. Les éléments du tableau TAB compris entre la limite FINI et la limite FIN2 correspondent à des données ERR supposées non intègres ou des données non lues.
Bien entendu, si la lecture commence dans à l'envers (sens 2) on commence par remplir la fin du tableau TAB puis on remplit le début du tableau TAB.
Exemple de localisation des données erronées n°2 :
On décrit maintenant un autre exemple de localisation des données erronées. On suppose dans cet exemple qu'il n'y a pas de perte d'horloge en cas d'erreur. On cherche à localiser les données erronées dans un flot de données. Ce flot de données peut être celui des données lues lors
d'un passage de la bande magnétique devant la tête de lecture. Ce flot de données est traité pour détecter les données erronées. Le résultat de ce traitement est un second flot de données. Les données du second flot sont marquées « donnée intègre » ou « donnée non intègre ». Ce marquage peut être effectué sur un bit (la valeur 0 pour « donnée intègre » et 1 pour « donnée non intègre » par exemple). Ce bit peut remplacer le bit de parité des données du premier flot de données.
Chaque donnée du premier flot de données est recopiée dans le second flot de données avec le marquage « donnée intègre » ou « donnée non intègre » selon la valeur du bit de parité. Cette recopie est effectuée avec un retard de deux données. En d'autres termes, les données du second flot de données sont transmises avec un retard de deux données.
Si une donnée est marquée « donnée non intègre » (suite à un bit de parité erroné), les deux données précédentes sont aussi marquées « donnée non intègre ». Ainsi, une donnée peut être marquée « donnée intègre » dans un premier temps, puis « donnée non intègre » ensuite. Les données suivant cette première donnée marquée « donnée non intègre » sont aussi marquées « donnée non intègre » à moins que le bit de parité de la donnée à marquer et des deux données précédentes soit correct. Par conséquent une donnée est marquée « donnée intègre » que si les deux données précédentes et les deux données suivantes ont des bits de parité corrects.
On revient au premier exemple de localisation de données erronées pour décrire la suite du décodage. Dans l'exemple illustré figure 6, les données supposées non intègres ERR se répartissent en deux parties E1 et E2. La partie E1 correspond à la fin première moitié Z1 du message d'origine MES. La partie E2 correspond au début de la seconde moitié Z2 du message d'origine MES. Les données comprises dans ces parties E1 et E2 manquent au message.
Les données correspondant à la partie E1 ont été assemblées lors du codage avec une partie V2 correspondant à la fin de la seconde moitié Z2 du message d'origine MES. Les données correspondant à la partie E2 ont été assemblées lors du codage avec une partie V1 correspondant au début de la première moitié Z1 du message d'origine MES. On utilise les données
de la partie V1 et du message réduit RED pour déterminer les données de la partie E2. De même, on utilise les données de la partie V2 et du message réduit RED pour déterminer les données de la partie E1.
Ainsi, le message d'origine MES est reconstitué dans son intégralité malgré des données erronées. Le décodage du message MES est correct alors qu'une partie du message lu est erronée. De plus le message codé occupe seulement 50% de place en plus par rapport à un codage classique qui ne permettrait pas de reconstruire le message.
Bien entendu, il est possible de coder le message en utilisant un codage normalisé auquel on ajoute le message réduit à la suite, et un caractère de contrôle (balise de fin ES par exemple). Ceci permet de rester compatible avec les lecteurs en place. Si la longueur du message MES est variable, on peut adapter la lecture simplement en utilisant les caractères de contrôle pour mesurer la longueur du message MES. Dans ce cas bien entendu, les caractères de données et les caractères de contrôles doivent avoir des codes différents.
Codeur
On décrit maintenant un exemple de dispositif d'enregistrement d'un message sur un support d'enregistrement. Ce dispositif est appelé codeur. Il comprend :
• des moyens de codage, destiné à mettre en œuvre le procédé de codage décrit ci-dessus, permettant d'obtenir un message codé à partir du message d'origine ;
• des moyens d'écriture du message codé, pour écrire ledit message codé sur le support d'enregistrement.
Les moyens de codage peuvent être une unité de calcul comprenant un microprocesseur et un mémoire vive. Les moyens d'écriture dépendent du support d'enregistrement.
Pour les tickets ou cartes à bande magnétique, ils peuvent comprendre une tête d'écriture magnétique, qui est polarisée par un module de gestion de tête. Le module de gestion comprend un amplificateur qui permet d'amplifier le courant de polarisation.
Ces moyens d'écriture comprennent aussi un moteur pas à pas, qui permet de faire défiler le ticket ou la carte à vitesse constante devant la tête d'écriture magnétique.
Un quartz permet de synchroniser les moyens de codage et le moteur, de manière à coder le ticket ou la carte avec une densité constante.
Bien entendu, l'invention ne se limite pas aux exemples cités. Il est possible de mettre en œuvre l'invention en codant plusieurs messages réduits. Une telle variante de codage est illustrée figure 7 avec deux messages réduits RED1 et RED2.
Selon cette variante, on a 2 étapes de réduction du message
MES, pour obtenir les 2 messages réduits RED1 et RED2. Ces messages réduits sont constitués de 2 autres suites de Mi et M2 données numériques, où Mi et M2 sont strictement inférieurs à N. A cet effet, on applique 2 lois déterminées au message d'origine telles que :
• la suite de données du kleme message réduit étant notée où Jk est un ensemble de Mk indices, étant donné une application surjective gk de I vers Jk associant à chaque indice i de I une image j dans J , les données du message d'origine MES sont assemblées en p-uplets de W éléments, où Wk,j est un entier, définis par la relation ;
• les données numériques du message d'origine MES et des messages réduits RED1 , RED2 appartenant à un ensemble E, étant donné des applications fk du produit cartésien vers E associant à chaque p- uplet une image dans E, les données des messages réduits RED1 , RED2 sont déterminées par la relation ;
• les applications f étant telles que pour tout p-uplet , il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit RED1 ou RED2 d'autre part Lors d'une étape de mise en forme, le premier message réduit
RED1 peut être placé après le message d'origine MES. Le second message réduit RED2 est placé après le premier message réduit RED1. Le premier message RED1 réduit peut être celui de l'exemple de codage n°1. Le second message réduit RED2 peut être dix fois plus petit que le message d'origine
par exemple. Ce second message réduit peut être déterminé de la même façon que le premier message réduit RED1 , l'application g-i étant modifiée.
De cette manière le premier message réduit RED1 permet de reconstruire jusqu'à 50% du message d'origine MES. S'il reste des données manquantes, on utilise alors le second message réduit RED2 pour reconstruire la suite. On arrivera à reconstruire encore jusqu'à 10% du message d'origine MES.
D'une manière plus générale, on peut ajouter k messages réduits. Le procédé de codage d'un message MES constitué d'une suite de N données numériques comprend alors les étapes suivantes :
• k étapes de réduction du message MES, où k est un entier, pour obtenir k messages réduits constitués de k autres suites de Mk données numériques, où Mk est strictement inférieur à N, en appliquant k lois déterminées au message d'origine telles que • la suite de données du message d'origine MES étant notée où I est un ensemble de N indices, la suite de données du kιeme message réduit étant notée où Jk est un ensemble de Mk indices, étant donné une application surjective gk de I vers Jk associant à chaque indice i de I une image j dans Jk, les données du message d'origine (MES) sont assemblées en p-uplets de
Wkj éléments, où Wkj est un entier, définis par la relation
• les données numériques du message d'origine MES et des messages réduits appartenant à un ensemble E, étant donné des applications fkιj du produit cartésien vers E associant à chaque p-uplet une image dans E, les données des messages réduits sont déterminées par la relation ;
• les applications fk,j étant telles que pour tout p-uplet , il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit d'autre part
• une étape de mise en forme du message d'origine et des messages réduits pour obtenir le message codé.
Bien entendu, il est possible de mettre en forme les messages d'une manière différente. L'invention s'applique à tout type de média ou transmission de données numériques. Les messages codés peuvent être inscrits sous la forme de codes à barre par exemple.
Claims
1. Procédé de codage d'un message (MES) constitué d'une suite de N données numériques caractérisé en ce qu'il comprend au moins les étapes suivantes :
• une étape de réduction du message (MES) pour obtenir un message réduit (RED) constitué d'une autre suite de M0 données numériques, où
Mo est strictement inférieur à N, en appliquant une loi déterminée au message d'origine telle que
• la suite de données du message d'origine (MES) étant notée où I est un ensemble de N indices, la suite de données du message réduit (RED) étant notée où J0 est un ensemble de Mo indices, étant donné une application surjective go de I vers
Jo associant à chaque indice i de I une image j dans J0, les données du message d'origine (MES) sont assemblées en p-uplets de W0,j éléments, où Wo,j est un entier, définis par la relation
• les données numériques du message d'origine (MES) et du message réduit (RED) appartenant à un ensemble E, étant donné des applications fo du produit cartésien vers E associant à chaque p-uplet une image dans E, les données du message réduit (RED) sont déterminées par la relation
• les applications f0,j étant telles que pour tout p-uplet , il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit (RED) d'autre part
• une étape de mise en forme du message d'origine (MES) et du message réduit (RED) pour obtenir le message codé.
2. Procédé de codage d'un message (MES) constitué d'une suite de N données numériques caractérisé en ce qu'il comprend au moins les étapes suivantes :
• k étapes de réduction du message (MES), où k est un entier, pour obtenir k messages réduits (RED1, RED2) constitués de k autres suites de Mk données numériques, où Mk est strictement inférieur à N, en appliquant k lois déterminées au message d'origine telles que
• la suite de données du message d'origine (MES) étant notée où I est un ensemble de N indices, la suite de données du k'eme message réduit étant notée où Jk est un ensemble de Mk indices, étant donné une application surjective gk de I vers Jk associant à chaque indice i de I une image j dans Jk, les données du message d'origine (MES) sont assemblées en p-uplets de
Wkj éléments, où Wk,j est un entier, définis par la relation
• les données numériques du message d'origine (MES) et des messages réduits (RED1, RED2) appartenant à un ensemble E, étant donné des applications fk,j du produit cartésien vers E associant à chaque p-uplet une image dans E, les données des messages réduits (RED1 , RED2) sont déterminées par la relation ;
• les applications fkJ étant telles que pour tout p-uplet , il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit (RED1 , RED2) d'autre part ; • une étape de mise en forme du message d'origine (MES) et des messages réduits (RED1, RED2) pour obtenir le message codé.
3. Procédé de codage selon l'une des revendications précédentes, caractérisé en ce que pour k donné, l'application surjective est définie par la relation :
où mod est la fonction modulo qui renvoie le reste de la division de i par Mk.
4. Procédé de codage selon l'une des revendications précédentes, caractérisé en ce que pour k donné, pour tout j, les applications fkj sont définies par la relation : où est un opérateur binaire.
5 5. Procédé de codage selon la revendication 4, caractérisé en ce que l'opérateur binaire est un opérateur arithmétique de type addition ou soustraction.
6. Procédé de codage selon la revendication 4, caractérisé en ce que o l'opérateur binaire est un opérateur logique de type OU exclusif.
7. Support d'enregistrement (TI) de données numériques caractérisé en ce qu'il comprend un message codé enregistré résultant de la mise en forme :
• d'un message d'origine (MES) constitué d'une suite de N données 5 numériques ;
• et d'un message réduit (RED) constitué d'une autre suite de M0 données numériques, où M0 est strictement inférieur à N, le message réduit pouvant se déduire du message d'origine (MES) par loi déterminée telle que 0 • la suite de données du message d'origine (MES) étant notée où I est un ensemble de N indices, la suite de données du message réduit (RED) étant notée où J0 est un ensemble de M indices, étant donné une application surjective g0 de I vers J0 associant à chaque indice i de I une image j dans J0, les données 5 du message d'origine (MES) sont assemblées en p-uplets de
W0,j éléments, où W0,j est un entier, définis par la relation
• les données numériques du message d'origine (MES) et du message réduit (RED) appartenant à un ensemble E, étant donné des applications foj du produit cartésien vers E associant à chaque p-uplet une image dans E, les données du message réduit (RED) sont déterminées par la relation
• les applications foj étant telles que pour tout p-uplet , il est 5 possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit (RED) d'autre part
8. Support d'enregistrement (TI) de données numériques caractérisé en ce qu'il comprend un message codé enregistré résultant de la mise en forme :
• d'un message d'origine (MES) constitué d'une suite de N données numériques ;
• et de k messages réduits (RED1 , RED2), où k est un entier, constitués de k autres suites de M données numériques, où Mk est strictement inférieur à N, les messages réduits pouvant se déduire du message d'origine
(MES) par k lois déterminées telles que
• la suite de données du message d'origine (MES) étant notée où I est un ensemble de N indices, la suite de données du kιeme message réduit étant notée où J est un ensemble de M indices, étant donné une application surjective gk de I vers J associant à chaque indice i de I une image j dans Jk, les données du message d'origine (MES) sont assemblées en p-uplets de
Wkj éléments, où Wk,j est un entier, définis par la relation
• les données numériques du message d'origine (MES) et des messages réduits (RED1, RED2) appartenant à un ensemble E, étant donné des applications fk du produit cartésien vers E associant à chaque p-uplet une image dans E, les données des messages réduits (RED1 , RED2) sont déterminées par la relation
• les applications fkj étant telles que pour tout p-uplet , il est possible de déterminer la valeur de n'importe quel élément de ce p-uplet à partir des valeurs des autres éléments d'une part, et de la valeur de l'élément du message réduit (RED) d'autre part
9. Support d'enregistrement selon l'une des revendications 7 à 8, caractérisé en ce que pour k donné, l'application surjective est définie par la relation : où mod est la fonction modulo qui renvoie le reste de la division de i par Mk.
10. Support d'enregistrement selon l'une des revendications 7 à 9, caractérisé en ce que pour k donné, pour tout j, les applications fkιj sont définies par la relation :
où est un opérateur binaire.
11. Support d'enregistrement selon la revendication 10, caractérisé en ce que l'opérateur binaire est un opérateur arithmétique de type addition ou soustraction.
12. Support d'enregistrement selon la revendication 10, caractérisé en ce que l'opérateur binaire est un opérateur logique de type OU exclusif.
13. Dispositif d'enregistrement d'un message sur un support d'enregistrement, caractérisé en ce qu'il comprend au moins : • des moyens de codage, destiné à mettre en œuvre le procédé de codage selon l'une quelconque des revendications 1 à 6, permettant d'obtenir un message codé à partir du message d'origine ;
• des moyens d'écriture du message codé, pour écrire ledit message codé sur le support d'enregistrement.
14. Procédé de décodage d'un message codé, caractérisé en ce que le message étant codé selon l'une des revendications 1 à 6, le procédé de décodage comprend au moins les étapes suivantes :
• une étape de lecture du message codé ; • une étape détermination des données erronées ;
• une étape de correction des données erronées.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0104522 | 2001-04-03 | ||
| FR0104522A FR2823036B1 (fr) | 2001-04-03 | 2001-04-03 | Procede et dispositif de codage/decodage d'un message |
| PCT/FR2002/001109 WO2002082663A1 (fr) | 2001-04-03 | 2002-03-29 | Procede et dispositif de codage/decodage d'un message |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP1386403A1 true EP1386403A1 (fr) | 2004-02-04 |
Family
ID=8861892
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP02759805A Ceased EP1386403A1 (fr) | 2001-04-03 | 2002-03-29 | Procede et dispositif de codage/decodage d'un message |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP1386403A1 (fr) |
| FR (1) | FR2823036B1 (fr) |
| WO (1) | WO2002082663A1 (fr) |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| BE757116A (fr) * | 1969-10-29 | 1971-03-16 | Honeywell Inc | Procede et dispositif de codage de segments de codes de controle |
| US5170400A (en) * | 1989-12-26 | 1992-12-08 | California Institute Of Technology | Matrix error correction for digital data |
-
2001
- 2001-04-03 FR FR0104522A patent/FR2823036B1/fr not_active Expired - Lifetime
-
2002
- 2002-03-29 WO PCT/FR2002/001109 patent/WO2002082663A1/fr not_active Ceased
- 2002-03-29 EP EP02759805A patent/EP1386403A1/fr not_active Ceased
Non-Patent Citations (1)
| Title |
|---|
| See references of WO02082663A1 * |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2002082663A1 (fr) | 2002-10-17 |
| FR2823036B1 (fr) | 2003-06-20 |
| FR2823036A1 (fr) | 2002-10-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| FR2508260A1 (fr) | Appareil d'enregistrement de donnees pour systeme d'archivage d'information textuelle | |
| FR2673737A1 (fr) | Procede de conversion d'un enregistrement magnetique d'un ticket de route a peage. | |
| FR2471632A1 (fr) | Appareil et procede pour coder et decoder une carte delivree a un individu par une entite | |
| EP0042776A1 (fr) | Dispositif de correction, en temps réel, d'erreurs, sur des données enregistrées sur un support magnétique | |
| EP2394366B1 (fr) | Procede de codage correcteur d'erreurs avec bits de parite totale | |
| EP0204635B1 (fr) | Procédé de transmission en blocs de mots d'information numérique | |
| US6282040B1 (en) | Write pass identifier | |
| EP0694912A1 (fr) | Circuits magnétiques pour ensemble de têtes magnétiques d'enregistrement/lecture | |
| US3869700A (en) | Stored value system | |
| FR2831971A1 (fr) | Procede de memorisation de donnees avec correction d'erreur | |
| EP0097110A2 (fr) | Procédé de contrôle de l'usage de documents réservés | |
| Bours | Codes for correcting insertion and deletion errors | |
| CA2529617A1 (fr) | Procede d'ecriture, de mise a jour et d'allocation memoire applique a l'ecriture de fichiers sur un support memoire tel qu'une carte a puce | |
| EP0936618A2 (fr) | Identificateur de cycle d'enregistrement | |
| EP1386403A1 (fr) | Procede et dispositif de codage/decodage d'un message | |
| FR2542473A1 (fr) | Support d'informations, procede de codage numerique d'un tel support et dispositif d'autorisation du fonctionnement d'un appareil utilisant un tel support | |
| EP0012880A1 (fr) | Procédé de décodage de données binaires codées en phase, modulation de fréquence et modulation de fréquence modifiée | |
| US20020020740A1 (en) | Financial transaction card | |
| EP0769854B1 (fr) | Système permettant un décodage correct, sous forme d'un message binaire, d'un code magnétique enregistré sur une piste magnétique | |
| FR2688907A1 (fr) | Procede d'enregistrement et de lecture d'une bande magnetique bicouche et systeme de mise en óoeuvre. | |
| FR2509553A1 (fr) | Procede de diffusion de donnees sur canal de television | |
| BE1006173A3 (fr) | Procede d'inscription d'un emsemble de caracteres alphanumeriques dans une carte a memoire. | |
| CH595663A5 (fr) | ||
| JP4151180B2 (ja) | 磁気ストライプデータ復元方法 | |
| EP2208199A1 (fr) | Procédé d'enregistrement de données pour la lecture à long terme de ces données |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| 17P | Request for examination filed |
Effective date: 20031103 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR |
|
| AX | Request for extension of the european patent |
Extension state: AL LT LV MK RO SI |
|
| 17Q | First examination report despatched |
Effective date: 20100311 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED |
|
| 18R | Application refused |
Effective date: 20101212 |