US7002492B2 - High rate running digital sum-restricted code - Google Patents
High rate running digital sum-restricted code Download PDFInfo
- Publication number
- US7002492B2 US7002492B2 US10/885,987 US88598704A US7002492B2 US 7002492 B2 US7002492 B2 US 7002492B2 US 88598704 A US88598704 A US 88598704A US 7002492 B2 US7002492 B2 US 7002492B2
- Authority
- US
- United States
- Prior art keywords
- segments
- code word
- segment
- bit
- constraint
- 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.)
- Expired - Fee Related, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
-
- 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/14—Digital recording or reproducing using self-clocking codes
- G11B20/1403—Digital recording or reproducing using self-clocking codes characterised by the use of two levels
- G11B20/1423—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
- G11B20/1426—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4906—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
- H04L25/4908—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
TABLE 1 | |||
Clock | Signal assignment by |
Cycle |
1 | 2 | 3 | 4 | 5 | |
SM13:0 in | I13:0 |
D10:0 in | I24:14 | I35:25 | I46:36 | I57:47 | I68:58 | ||
D13:11 in | W2:0 | W5:3 | W8:6 | W11:9 | W14:12 | ||
C13:0 | Y13:0 | Y27:14 | Y41:28 | Y55:42 | Y69:56 | ||
TABLE 2 | ||||||||||||||
W14 | W13 | W12 | W11 | W10 | W9 | W8 | W7 | W6 | W5 | W4 | W3 | W2 | W1 | |
0 | I13 | I12 | I11 | I10 | I9 | I8 | I7 | I6 | I5 | I4 | I3 | I2 | I1 | I0 |
-
- G0 is true if (I2,I1,I0)=(1,1,1)
- G1 is true if (I5,I4,I3)=(1,1,1)
- G2 is true if (I8,I7,I6)=(1,1,1)
- G3 is true if (I11,I10,I9)=(1,1,1)
- G4 is true if (I13,I12)=(1,1)
-
- H0=!G3&!G2&!G1&G0 (only G0 is true)
- H1=!G3&!G2&G1&!G0 (only G1 is true)
- H2=!G3&G2&!G1&!G0 (only G2 is true)
- H3=G3&!G2&!G1&!G0 (only G3 is true)
where “&” represents a bitwise logic AND, and “!” represents a logic inversion.
-
- H01=!G3&!G2&G1&G0
- H02=!G3&G2&!G1&G0
- H03=G3&!G2&!G1&G0
- H12=!G3&G2&G1&!G0
- H13=G3&!G2&G1&!G0
- H23=G3&G2&!G1&!G0
-
- H012=!G3&G2&G1&G0
- H013=G3&!G2&G1&G0
- H023=G3&G2&!G1&G0
- H123=G3&G2&G1&!G0
-
- H0123=G3&G2&G1&G0
TABLE 3 | ||||||||||||||||
W14 | W13 | W12 | W11 | W10 | W9 | W8 | W7 | W6 | W5 | W4 | W3 | W2 | W1 | W0 | ||
H0 | 1 | I13 | I12 | 0 | 0 | 0 | I11 | I10 | I9 | I8 | I7 | I6 | I5 | I4 | I3 |
H1 | 1 | I13 | I12 | 0 | 0 | 1 | I11 | I10 | I9 | I8 | I7 | I6 | I2 | I1 | I0 |
H2 | 1 | I13 | I12 | 0 | 1 | 0 | I11 | I10 | I9 | I5 | I4 | I3 | I2 | I1 | I0 |
H3 | 1 | I13 | I12 | 0 | 1 | 1 | I8 | I7 | I6 | I5 | I4 | I3 | I2 | I1 | I0 |
H01 | 1 | I13 | I12 | 1 | 0 | 0 | 0 | 0 | 0 | I11 | I10 | I9 | I8 | I7 | I6 |
H02 | 1 | I13 | I12 | 1 | 0 | 0 | 0 | 0 | 1 | I11 | I10 | I9 | I5 | I4 | I3 |
H03 | 1 | I13 | I12 | 1 | 0 | 0 | 0 | 1 | 0 | I8 | I7 | I6 | I5 | I4 | I3 |
H12 | 1 | I13 | I12 | 1 | 0 | 0 | 0 | 1 | 1 | I11 | I10 | I9 | I2 | I1 | I0 |
H13 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 0 | 0 | I8 | I7 | I6 | I2 | I1 | I0 |
H23 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 0 | 1 | I5 | I4 | I3 | I2 | I1 | I0 |
H012 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | I11 | I10 | I9 |
H013 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | I8 | I7 | I6 |
H023 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | I5 | I4 | I3 |
H123 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | I2 | I1 | I0 |
H0123 | 1 | I13 | I12 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
TABLE 4 | ||||||||||||||||
W14 | W13 | W12 | W11 | W10 | W9 | W8 | W7 | W6 | W5 | W4 | W3 | W2 | W1 | W0 | ||
H0 | 1 | 0 | 0 | 1 | 0 | 1 | I11 | I10 | I9 | I8 | I7 | I6 | I5 | I4 | I3 |
H1 | 1 | 0 | 0 | 1 | 1 | 0 | I11 | I10 | I9 | I8 | I7 | I6 | I2 | I1 | I0 |
H2 | 1 | 0 | 1 | 1 | 0 | 1 | I11 | I10 | I9 | I5 | I4 | I3 | I2 | I1 | I0 |
H3 | 1 | 0 | 1 | 1 | 1 | 0 | I8 | I7 | I6 | I5 | I4 | I3 | I2 | I1 | I0 |
H01 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | I11 | I10 | I9 | I8 | I7 | I6 |
H02 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | I11 | I10 | I9 | I5 | I4 | I3 |
H03 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | I8 | I7 | I6 | I5 | I4 | I3 |
H12 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | I11 | I10 | I9 | I2 | I1 | I0 |
H13 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | I8 | I7 | I6 | I2 | I1 | I0 |
H23 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | I5 | I4 | I3 | I2 | I1 | I0 |
H012 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | I11 | I10 | I9 |
H013 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | I8 | I7 | I6 |
H023 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | I5 | I4 | I3 |
H123 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | I2 | I1 | I0 |
H0123 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
TABLE 5 | |
Clock | Signal assignment by |
Cycle |
1 | 2 | 3 | 4 | 5 | |
SD_in | Y13:0 | Y27:14 | Y41:28 | Y55:42 | Y69:56 |
Latch_in | W2:0 | W5:3 | W8:6 | W11:9 | W14:12 |
SD10:0 out | I24:14 | I35:25 | I46:36 | I57:47 | I68:58 |
Dm_out | I13:0 | ||||
II. Descriptions of Encoder and Decoder
TABLE 6 |
Symbol definition: |
“|” | Bitwise OR | ||
“&” | Bitwise AND | ||
“{circumflex over ( )}” | Bitwise XOR | ||
“!x” | Inverse of bit x | ||
“!C(n:0)” | Inverse of all bits of word C | ||
-
- I13,I12,I11,I10,I9,I8,I7,I6,I5,I4,I3,I2,I1,I0
- (14-bit Data word segment)
Output: - W14,W13,W12,W11,W10,W9,W8,W7,W6,W5,W4,W3,W2,W1,W0
- (15-bit Mapped segment)
-
- G4=I13&I12
- G3=I11&I10&I9
- G2=I8&I7&I6
- G1=I5&I4&I3
- G0=I2&I1&I0
- HH=!G3&!G2&!G1&!G0
- H0=!G3&!G2&!G1&G0
- H1=!G3&!G2&G1&!G0
- H2=!G3&G2&!G1&!G0
- H3=G3&!G2&!G1&!G0
- H01=!G3&!G2&G1&G0
- H02=!G3&G2&!G1&G0
- H03=G3&!G2&!G1&G0
- H12=!G3&G2&G1&!G0
- H13=G3&!G2&G1&!G0
- H23=G3&G2&!G1&!G0
- H012=!G3&G2&G1&G0
- H013=G3&!G2&G1&G0
- H023=G3&G2&!G1&G0
- H123=G3&G2&G1&!G0
- H0123=G3&G2&G1&G0
- JK=!HH
- JJ=(JK&!G4)
- KK=(JK&G4)
- T2=(!H0&!H1&!H2&!H3)
- T3=H012|H013|H023|H123|H0123
- J6d9=(H0|H1|H2)
- J3d9=(H0|H02|H12)
- J3d6=(H0|H1|H03|H13)
- J3d3=(H2|H3|H23)
- J0d6=(H01|H013)
- J0d3=(H0|H02|H03|H023)
- J0d0=(H1|H2|H3|H12|H13|H23|H123)
- J11=T2
- J10=(H2|H3)
- J9=(H1|H3)
- J8=(I11&J6d9)|(I8&H3)|H13|H23|T3
- J7=(I10&J6d9)|(I7&H3)|H03|H12|T3
- J6=(I9&J6d9)|(I6&H3)|H02|H12|H23
- J5=(I11&J3d9)|(I8&J3d6)|(I5&J3d3)|H0123
- J4=(I10&J3d9)|(I7&J3d6)|(I4&J3d3)|H012|H013
- J3=(I9&J3d9)|(I6&J3d6)|(I3&J3d3)|H012|H023
- J2=(I11&H012)|(I8&J0d6)|(I5&J0d3)|(I2&J0d0)
- J1=(I10&H012)|(I7&J0d6)|(I4&J0d3)|(I1&J0d0)
- J0=(I9&H012)|(I6&J0d6)|(I3&J0d3)|(I0&J0d0)
- W14=JK
- W13=(I13&(HH|JJ))|(KK&T2)
- W12=(I12&(HH|JJ))|(KK&(H2|H3))
- W11=(I11&HH)|(J11&JJ)|(KK)
- W10=(I10&HH)|(J10&JJ)|(KK&(H1|H3))
- W9=(I9&HH)|(J9&JJ)|(KK&(H0|H2|T2))
- W8=(I8&HH)|(J8&JK)
- W7=(I7&HH)|(J7&JK)
- W6=(I6&HH)|(J6&JK)
- W5=(I5&HH)|(J5&JK)
- W4=(I4&HH)|(J4&JK)
- W3=(I3&HH)|(J3&JK)
- W2=(I2&HH)|(J2&JK)
- W1=(I1&HH)|(J1&JK)
- W0=(I0&HH)|(J0&JK)
-
- D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0
- (14-bit Data Segment)
Output: - C13,C12,C11,C10,C9,C8,C7,C6,C5,C4,C3,C2,C1,C0
- (14-bit Code Word Segment).
-
- DSa 13:11=!W2:0 DSa 10:0=I24:14
- DSb 13:11=!W5:3 DSb 10:0=I35:25
- DSc 13:11=!W8:6 DSc 10:0=I46:36
- DSd 13:11=!W11:9 DSd 10:0=I57:47
- DSe 13:11=!W14:12 DSe 10:0=I68:58
-
- D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0
- (14-bit Data Segment)
Output: - C13,C12,C11,C10,C9,C8,C7,C6,C5,C4,C3,C2,C1,C0
- (14-bit Code Word Segment)
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Data Segment)
Output: tt - hwt=A13+A12+A11+A10+A9+A8+A7+A6+A5+A4+A3+A2+A1+A0
- If ((hwt>=5)&&(hwt<=10)) tt=1
- else tt=0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Data Segment)
Output: - gas5:0, gbs6:0, gcs9:0, ga, gb, gc
wa3= A13&A12 | wa2= A13&!A12 | ||
wa1=!A13&A12 | wa0=!A13&!A12 | ||
wbF= A11& A10& A9& A8 | wbE= A11& A10& A9&!A8 | ||
wbD= A11& A10&!A9& A8 | wbC= A11& A10&!A9&!A8 | ||
wbB= A11&!A10& A9& A8 | wbA= A11&!A10& A9&!A8 | ||
wb9= A11&!A10&!A9& A8 | wb8= A11&!A10&!A9&!A8 | ||
wb7=!A11& A10& A9& A8 | wb6=!A11& A10& A9&!A8 | ||
wb5=!A11& A10&!A9& A8 | wb4=!A11& A10&!A9&!A8 | ||
wb3=!A11&!A10& A9& A8 | wb2=!A11&!A10& A9&!A8 | ||
wb1=!A11&!A10&!A9& A8 | wb0=!A11&!A10&!A9&!A8 | ||
wcF= A7& A6& A5& A4 | wcE= A7& A6& A5&!A4 | ||
wcD= A7& A6&!A5& A4 | wcC= A7& A6&!A5&!A4 | ||
wcB= A7&!A6& A5& A4 | wcA= A7&!A6& A5&!A4 | ||
wc9= A7&!A6&!A5& A4 | wc8= A7&!A6&!A5&!A4 | ||
wc7=!A7& A6& A5& A4 | wc6=!A7& A6& A5&!A4 | ||
wc5=!A7& A6&!A5& A4 | wc4=!A7& A6&!A5&!A4 | ||
wc3=!A7&!A6&!A5&!A4 | wc2=!A7&!A6& A5&!A4 | ||
wc1=!A7&!A6&!A5& A4 | wc0=!A7&!A6&!A5&!A4 | ||
wdF= A3& A2& A1& A0 | wdE= A3& A2& A1&!A0 | ||
wdD= A3& A2&!A1& A0 | wdC= A3& A2&!A1&!A0 | ||
wdB= A3&!A2& A1& A0 | wdA= A3&!A2& A1&!A0 | ||
wd9= A3&!A2&!A1& A0 | wd8= A3&!A2&!A1&!A0 | ||
wd7=!A3& A2& A1& A0 | wd6=!A3&!A2& A1&!A0 | ||
wd5=!A3& A2&!A1& A0 | wd4=!A3& A2&!A1&!A0 | ||
wd3=!A3&!A2& A1& A0 | wd2=!A3&!A2& A1&!A0 | ||
wd1=!A3&!A2&!A1& A0 | wd0=!A3&!A2&!A1&!A0 | ||
-
- pa12=wa1|wa2
- pb18=wb1|wb2|wb4|wb8
- pb7e=wb7|wbB|wbD|wbE
- pb7f=pb7e|wbF
- pb9c=wb9|wbA|wbC
- pb3c=wb3|wb5|wb6|pb9c
- pc08=wc0|wc1|wc2|wc4|wc8
- pc7f=wc7|wcB|wcD|wcE|wcF
- pd18=wd1|wd2|wd4|wd8
- pd7e=wd7|wdB|wdD|wdE
- pd3c=wd3|wd5|wd6|wd9|wdA|wdC
- ga=(wa0&wb8)|((pa12)&wb0)|(wa3&wbF)
- gas[0]=(!wa3&!wcF&wd0)|(wa3&!wc0&wdF)
- gas[1]=(!wa3&(!wc7 |!wcB|!wcD|!wcE|!wcF)&(pd18))
- gas[2]=(wa3&(!wc0|!wc1|!wc2|!wc4|!wc8)&(pd7e))
- gas[3]=((wa0&pc08)|(wa3&pc7f))&(pd3c)
- gas[4]=(pa12)&(wc0|wc1|wc2|wc4|wc8)&(pd3c)
- gas[5]=(!wa3&wc0&(pd7e))|(wa3&wcF&(pd18))
- gb=((wa0&pb9c)|(pa12&pb18)|(wa3&wb0))|((pa12&wbF)|(wa3&pb7e))
- gb0=!(pb7f)
- gb1=(pb7f)
- gbs[0]=gb0&wd0
- gbs[1]=gb1&wdF
- gbs[2]=wa0&(pc08)&(pd18)
- gbs[3]=(gb0&!wa0)&(pc08)&(pd18)
- gbs[4]=gb1&(pc7f)&(pd7e)
- gbs[5]=gb0&wc0&(pd3c)
- gbs[6]=gb1&wcF&(pd3c)
- gc=(!ga)&(!gb)
- gc0=(wa0&(wbB|wbD|wbE))|(wa3&(pb18))
- gc1=(pa12)&(pb3c)
- gc2=(wa0&wbF)|(wa3&(pb3c))
- gc3=(pa12)&(pb7e)
- gcs[0]=gc0&(pc08)&wd0
- gcs[1]=gc1&(pc08)&wd0
- gcs[2]=gc2&(pc7f)&wdF
- gcs[3]=gc3&(pc7f)&wdF
- gcs[4]=gc0&wc0&(pd18)
- gcs[5]=gc1&wc0&(pd18)
- gcs[6]=(wa0|gc3)&wcF&(pd7e)
- gcs[7]=(!wa0&gc2)&wcF&(pd7e)
- gcs[8]=(gc0|gc1)&wcF&wdF
- gcs[9]=(gc2|gc3)&wc0&wd0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Data Segment)
- gas5:0
Output: cwa13:0 (14-bit Code Word) - ga0a=gas[0]
- ga0a13=0
- ga0a12=0
- ga0a11=0
- ga0a10=0
- ga0a9=ga0a & A13
- ga0a8=ga0a & A12
- ga0a7=ga0a & !A7
- ga0a6=ga0a & !A6
- ga0a5=ga0a &!A5
- ga0a4=ga0a & !A4
- ga0a3=ga0a
- ga0a2=ga0a
- ga0a1=ga0a
- ga0a0=ga0a
- ga1a=gas[1]
- ga1a13=0
- ga1a12=0
- ga1a11=0
- ga1a10=0
- ga1a9=ga1a & A13
- ga1a8=ga1a & A12
- ga1a7=ga1a &!A7
- ga1a6=ga1a &!A6
- ga1a5=ga1a &!A5
- ga1a4=ga1a &!A4
- ga1a3=ga1a &!A3
- ga1a2=ga1a &!A2
- ga1a1=ga1a &!A1
- ga1a0=ga1a & !A0
- ga1b=gas[2]
- ga1b13=0
- ga1b12=0
- ga1b11=0
- ga1b10=0
- ga1b9=ga1b
- ga1b8=ga1b
- ga1b7=ga1b & A7
- ga1b6=ga1b & A6
- ga1b5=ga1b & A5
- ga1b4=ga1b & A4
- ga1b3=ga1b &!A3
- ga1b2=ga1b &!A2
- ga1b1=ga1b &!A1
- ga1b0=ga1b &!A0
- ga2a=gas[3]
- ga2a13=0
- ga2a12=0
- ga2a11=0
- ga2a10=0
- ga2a9=ga2a & A13
- ga2a8=ga2a & A13
- ga2a7=ga2a &(A13 ^ !A7)
- ga2a6=ga2a &(A13 ^ !A6)
- ga2a5=ga2a &(A13 ^ !A5)
- ga2a4=ga2a &(A13 ^ !A4)
- ga2a3=ga2a &(A13 ^ !A3)
- ga2a2=ga2a &(A13 ^ !A2)
- ga2a1=ga2a &(A13 ^ !A1)
- ga2a0=ga2a &(A13 ^ !A0)
- ga2b=gas[4]
- ga2b13=0
- ga2b12=0
- ga2b11=0
- ga2b10=ga2b&(A2&!A0)
- ga2b9=ga2b &(A3 ^ !A1)
- ga2b8=ga2b &(A0 &!A2)
- ga2b7=ga2b &!A7
- ga2b6=ga2b & !A6
- ga2b5=ga2b & !A5
- ga2b4=ga2b &!A4
- ga2b3=ga2b &(A13 & A3)
- ga2b2=ga2b &(A13 &!A3)
- ga2b1=ga2b&(A12& A3)
- ga2b0=ga2b &(!A13 & !A3)
- ga3a=gas[5]
- ga3a13=0
- ga3a12=0
- ga3a11=0
- ga3a10=0
- ga3a9=0
- ga3a8=ga3a &!A10
- ga3a7=ga3a & A10
- ga3a6=ga3a & A13
- ga3a5=ga3a & A12
- ga3a4=ga3a & A11
- ga3a3=ga3a & A3
- ga3a2=ga3a & A2
- ga3a1=ga3a & A1
- ga3a0=ga3a & A0
- cwa13=ga0a13|ga1a13|ga1b13|ga2a13|ga2b13|ga3a13
- cwa12=ga0a12|ga1a12|ga1b12|ga2a12|ga2b12|ga3a12
- cwa11=ga0a11|ga1a11|ga1b11|ga2a11|ga2b11|ga3a11
- cwa10=ga0a10|ga1a10|ga1b10|ga2a10|ga2b10|ga3a10
- cwa9=ga0a9|ga1a9|ga1b9|ga2a9|ga2b9|ga3a9
- cwa8=ga0a8|ga1a8|ga1b8|ga2a8|ga2b8|ga3a8
- cwa7=ga0a7|ga1a7|ga1b7|ga2a7|ga2b7|ga3a7
- cwa6=ga0a6|ga1a6|ga1b6|ga2a6|ga2b6|ga3a6
- cwa5=ga0a5|ga1a5|ga1b5|ga2a5|ga2b5|ga3a5
- cwa4=ga0a4|ga1a4|ga1b4|ga2a4|ga2b4|ga3a4
- cwa3=ga0a3|ga1a3|ga1b3|ga2a3|ga2b3|ga3a3
- cwa2=ga0a2|ga1a2|ga1b2|ga2a2|ga2b2|ga3a2
- cwa1=ga0a1|ga1a1|ga1b1|ga2a1|ga2b1|ga3a1
- cwa0=ga0a0|ga1a0|ga1b0|ga2a0|ga2b0|ga3a0
-
- (14-bit Data Segment)
- gbs6:0
Output: cwb13:0 (14-bit Code Word) - gb1a=gbs[0]
- gb1a13=0
- gb1a12=0
- gb1a11=0
- gb1a10=0
- gb1a9=gb1a&(A13|(A12 & A11))
- gb1a8=gb1a&(!A13 &(!A12|!A11))
- gb1a7=gb1a &!A7
- gb1a6=gb1a &!A6
- gb1a5=gb1a &!A5
- gb1a4=gb1a &!A4
- gb1a3=gb1a&(A11 |(A13 & A12))
- gb1a2=gb1a&(A10 |(!A11&!A8))
- gb1a1=gb1a&((!A13 & (A11 ^!A9)) | (A13 & (A12 ^!A9)))
- gb1a0=gb1a&((!A11 & (A9 ^ A8)) (!A13 & (A10 ^!A9)))
- gb1b=gbs[1]
- gb1b13=0
- gb1b12=0
- gb1b11=0
- gb1b10=gb1b
- gb1b9=0
- gb1b8=0
- gb1b7=gb1b & A7
- gb1b6=gb1b & A6
- gb1b5=gb1b & A5
- gb1b4=gb1b & A4
- gb1b3=gb1b &(!A10 | !A9 | !A8)
- gb1b2=gb1b &(!A12 !A11 | !A8)
- gb1b1=gb1b&(!A13 | !A11 | !A9)
- gb1b0=gb1b &(!A13 | !A12 | !A1)
- gb2a=gbs[2]
- gb2a13=0
- gb2a12=0
- gb2a11=0
- gb2a10=gb2a
- gb2a9=0
- gb2a8=0
- gb2a7=gb2a &!A8
- gb2a6=gb2a &!A9
- gb2a5=gb2a &(A3 | A2)
- gb2a4=gb2a &(A3 | A1)
- gb2a3=gb2a &!A7
- gb2a2=gb2a &!A6
- gb2a1=gb2a &!A5
- gb2a0=gb2a &!A4
- gb2b=gbs[3]
- gb2b13=0
- gb2b12=0
- gb2b11=0
- gb2b10=gb2b
- gb2b9=gb2b & A13
- gb2b8=gb2b & A12
- gb2b7=gb2b &(A11 | A10)
- gb2b6=gb2b &(A11 | A9)
- gb2b5=gb2b &(A3 | A2)
- gb2b4=gb2b &(A3 | A1)
- gb2b3=gb2b &!A7
- gb2b2=gb2b &!A6
- gb2b1=gb2b &!A5
- gb2b0=gb2b &!A4
- gb2c=gbs[4]
- gb2c13=0
- gb2c12=0
- gb2c11=0
- gb2c10=gb2c
- gb2c9=gb2c &(!A10 | !| !A9 | !A8)
- gb2c8=gb2c &(!A13 | !A12 | !A11)
- gb2c7=gb2c &(A13 & A10)
- gb2c6=gb2c&(A12& A9)
- gb2c5=gb2c &(!A3 !| !A2)
- gb2c4=gb2c &(!A3 | !A1)
- gb2c3=gb2c &(A7 & A6)
- gb2c2=gb2c &(A5 & A4)
- gb2c1=gb2c&(!A6 !| !A4)
- gb2cO=gb2c &(!A7 | !A5)
- gb3a=gbs[5]
- gb3a13=0
- gb3a12=0
- gb3a11=0
- gb3a10=gb3a &(!A13 & !A12 & A10)
- gb3a9=gb3a
- gb3a8=gb3a
- gb3a7=gb3a &(A13 &!A11)
- gb3a6=gb3a &(A12 &!A11)
- gb3a5=gb3a&(A10 |(A13 & A11))
- gb3a4=gb3a&(!A8 & (A9 |(A11 & !A13)))
- gb3a3=gb3a & A3
- gb3a2=gb3a & A2
- gb3a1=gb3a & A1
- gb3a0=gb3a & A0
- gb3b=gbs[6]
- gb3b13=0
- gb3b12=0
- gb3b11=0
- gb3b10=gb3b
- gb3b9=gb3b&(!A10 | !A9 | !A8)
- gb3b8=gb3b &(!A13 | !A12 | !A11)
- gb3b7=0
- gb3b6=0
- gb3b5=gb3b &(A13 & A10)
- gb3b4=gb3b &(A12 & A9)
- gb3b3=gb3b & A3
- gb3b2=gb3b & A2
- gb3b1=gb3b & A1
- gb3b0=gb3b & A0
- cwb13=gb1a13|gb1b13|gb2a13|gb2b13|gb2c13|gb3a13|gb3b13
- cwb12=gb1a12|gb1b12|gb2a12|gb2b12|gb2c12|gb3a12|gb3b12
- cwb11=gb1a11|gb1b11|gb2a11|gb2b11|gb2c11|gb3a11|gb3b11
- cwb10=gb1a10|gb1b10|gb2a10|gb2b10|gb2c10|gb3a10|gb3b10
- cwb9=gb1a9|gb1b9|gb2a9|gb2b9|gb2c9|gb3a9|gb3b9
- cwb8=gb1a8|gb1b8|gb2a8|gb2b8|gb2c8|gb3a8|gb3b8
- cwb7=gb1a7|gb1b7|gb2a7|gb2b7|gb2c7|gb3a7|gb3b7
- cwb6=gb1a6|gb1b6|gb2a6|gb2b6|gb2c6|gb3a6|gb3b6
- cwb5=gb1a5|gb1b5|gb2a5|gb2b5|gb2c5|gb3a5|gb3b5
- cwb4=gb1a4|gb1b4|gb2a4|gb2b4|gb2c4|gb3a4|gb3b4
- cwb3=gb1a3|gb1b3|gb2a3|gb2b3|gb2c3|gb3a3|gb3b3
- cwb2=gb1a2|gb1b2|gb2a2|gb2b2|gb2c2|gb3a2|gb3b2
- cwb1=gb1a1|gb1b1|gb2a1|gb2b1|gb2c1|gb3a1|gb3b1
- cwb0=gb1a0|gb1b0|gb2a0|gb2b0|gb2c0|gb3a0|gb3b0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Data Segment)
- gcs9:0
Output: - cwc13:0
- (14-bit Code Word Segment)
- gc1a=gcs[0]
- gc1a13=0
- gc1a12=0
- gc1a11=0
- gc1a10=gc1a
- gc1a9=gc1a
- gc1a8=gc1a
- gc1a7=gc1a & !A13
- gc1a6=gc1a &(A10 | !A8)
- gc1a5=gc1a &(A13^ A9)
- gc1a4=gc1a &(A8 | !A10)
- gc1a3=gc1a & A7
- gc1a2=gc1a & A6
- gc1a1=gc1a & A5
- gc1a0=gc1a & A4
- gc1b=gcs[l]
- gc1b13=0
- gc1b12=0
- gc1b11=0
- gc1b10=gc1b
- gc1b9=gc1b&(A13 |(A11 & A10))
- gc1b8=gc1b&(!A13 |(A11 & A10))
- gc1b7=gc1b &(A11 | A10)
- gc1b6=gc1b &(A11 | A9)
- gc1b5=gc1b&(A8 |(!A10 |(A13 & A11)))
- gc1b4=gc1b&(A9 |(!A11 |(A13 & A10)))
- gc1b3=gc1b & A7
- gc1b2=gc1b & A6
- gc1b1=gc1b & A5
- gc1b0=gc1b & A4
- gc1c=gcs[2]
- gc1c13=0
- gc1c12=0
- gc1c11=0
- gc1c10=gc1c & A13
- gc1c9=gc1c &(!A13 | !A11)
- gc1c8=gc1c &(!A13 | !A11)
- gc1c7=gc1c &(!A13 | !A11)
- gc1c6=gc1c &(!A13 | !A11)
- gc1c5=gc1c &(!A13 | !A8)
- gc1c4=gc1c &(!A13 | !A9)
- gc1c3=gc1c & A7
- gc1c2=gc1c & A6
- gc1c1=gc1c & A5
- gc1c0=gc1c & A4
- gc1d=gcs[3]
- gc1d13=0
- gc1d12=0
- gc1d11=0
- gc1d10=gc1d
- gc1d9=gc1d
- gc1d8=gc1d
- gc1d7=gc1d & A13
- gc1d6=gc1d &!A13
- gc1d5=gc1d &(!A9 | !A8)
- gc1d4=gc1d&(!A10 | !A8)
- gc1d3=gc1d & A7
- gc1d2=gc1d & A6
- gc1d1=gc1d & A5
- gc1d0=gc1d & A4
- gc2a=gcs[4]
- gc2a13=0
- gc2a12=0
- gc2a11=0
- gc2a10=gc2a
- gc2a9=gc2a
- gc2a8=gc2a & A13
- gc2a7=gc2a&(A11 &(A13 | A10))
- gc2a6=gc2a &((A13 & A10)|(!A13 & A9))
- gc2a5=gc2a&((!A13 & (A3 ^ A2)) | (A13 & (A13^!A9)))
- gc2a4=gc2a&((!A13 & (A3 ^ A1)) | (A13 & (A13 ^!A8)))
- gc2a3=gc2a &(A13 & A3)
- gc2a2=gc2a &(A13 & A2)
- gc2a1=gc2a &(A1 | !A13)
- gc2a0=gc2a &(A0 | !A13)
- gc2b=gcs[5]
- gc2b13=0
- gc2b12=0
- gc2b11=0
- gc2b10=gc2b
- gc2b9=gc2b& A13
- gc2b8=gc2b & !A13
- gc2b7=gc2b & A11
- gc2b6=gc2b & A10
- gc2b5=gc2b & A9
- gc2b4=gc2b & A8
- gc2b3=gc2b & A3
- gc2b2=gc2b & A2
- gc2b1=gc2b,& A1
- gc2b0=gc2b & A0
- gc2c=gcs[6]
- gc2c13=0
- gc2c12=0
- gc2c11=0
- gc2c10=0
- gc2c9=gc2c
- gc2c8=gc2c
- gc2c7=gc2c & A13
- gc2c6=gc2c & A12
- gc2c5=gc2c &(!A9 | !A8)
- gc2c4=gc2c &(!A10 | !A8)
- gc2c3=gc2c & A3
- gc2c2=gc2c & A2
- gc2c1=gc2c & A1
- gc2c0=gc2c & A0
- gc2d=gcs[7]
- gc2d13=0
- gc2d12=0
- gc2d11=0
- gc2d10=0
- gc2d9=gc2d
- gc2d8=gc2d
- gc2d7=gc2d & A11
- gc2d6=gc2d & A11
- gc2d5=gc2d & A10
- gc2d4=gc2d & A9
- gc2d3=gc2d & A3
- gc2d2=gc2d & A2
- gc2d1=gc2d & A1
- gc2d0=gc2d & A0
- gc3a=gcs[8]
- gc3a13=0
- gc3a12=0
- gc3a11=0
- gc3a10=gc3a
- gc3a9=gc3a
- gc3a8=gc3a
- gc3a7=gc3a&((!A13 & (A13 ^ A11)) | (A13 & (A12 ^ A11)))
- gc3a6=gc3a&((!A13 & (A13 ^ A10)) | (A13 & (A12 ^ A10)))
- gc3a5=gc3a&((!A13 & (A13 ^ A9)) | (A13 & (A12 ^ A9)))
- gc3a4=gc3a&((!A13 & (A13 ^ A8)) | (A13 & (A12 ^ A8)))
- gc3a3=gc3a &(A13 | A12)
- gc3a2=gc3a &(A13 & A12)
- gc3a1=gc3a & !A12
- gc3a0=gc3a & !A13
- gc3b=gcs[9]
- gc3b13=0
- gc3b12=0
- gc3b11=0
- gc3b10=gc3b
- gc3b9=gc3b
- gc3b8=gc3b
- gc3b7=gc3b & A11
- gc3b6=gc3b & A10
- gc3b5=gc3b & A9
- gc3b4=gc3b & A8
- gc3b3=gc3b &(A13 & A12)
- gc3b2=gc3b &(A13 | A12)
- gc3b1=gc3b & !A12
- gc3b0=gc3b & !A13
- cwc13=gc1a13|gc1b13|gc1c13|gc1d13|gc2a13|gc2b13|gc2c13|gc2d13|gc3a13|gc3b13
- cwc12=gc1a12|gc1b12|gc1c12|gc1d12|gc2a12|gc2b12|gc2c12|gc2d12|gc3a12|gc3b12
- cwc11=gc1a11|gc1b11|gc1c11|gc1d11|gc2a11|gc2b11|gc2c11|gc2d11|gc3a11|gc3b11
- cwc10=gc1a10|gc1b10|gc1c10|gc1d10|gc2a10|gc2b10|gc2c10|gc2d10|gc3a10|gc3b10
- cwc9=gc1a9|gc1b9|gc1c9|gc1d9|gc2a9|gc2b9|gc2c9|gc2d9|gc3a9|gc3b9
- cwc8=gc1a8|gc1b8|gc1c8|gc1d8|gc2a8|gc2b8|gc2c8|gc2d8|gc3a8|gc3b8
- cwc7=gc1a7|gc1b7|gc1c7|gc1d7|gc2a7|gc2b7|gc2c7|gc2d7|gc3a7|gc3b7
- cwc6=gc1a6|gc1b6|gc1c6|gc1d6|gc2a6|gc2b6|gc2c6|gc2d6|gc3a6|gc3b6
- cwc5=gc1a5|gc1b5|gc1c5|gc1d5|gc2a5|gc2b5|gc2c5|gc2d5|gc3a5|gc3b5
- cwc4=gc1a4|gc1b4|gc1c4|gc1d4|gc2a4|gc2b4|gc2c4|gc2d4|gc3a4|gc3b4
- cwc3=gc1a3|gc1b3|gc1c3|gc1d3|gc2a3|gc2b3|gc2c3|gc2d3|gc3a3|gc3b3
- cwc2=gc1a2|gc1b2|gc1c2|gc1d2|gc2a2|gc2b2|gc2c2|gc2d2|gc3a2|gc3b2
- cwc1=gc1a1|gc1b1|gc1c1|gc1d1|gc2a1|gc2b1|gc2c1|gc2d1|gc3a1|gc3b1
- cwc0=gc1a0|gc1b0|gc1c0|gc1d0|gc2a0|gc2b0|gc2c0|gc2d0|gc3a0|gc3b0
-
- If (tt==1) CW13:0=A13:0
- If (!tt & ga) CW13:0=cwa13:0
- If (!tt & gb) CW13:0=cwb13:0
- If (!tt & gc) CW13:0=cwc13:0
-
- D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0
- (14-bit Data Segment)
Output: - CW13:0
- (14-bit Code Word Segment)
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Data Segment)
- Output:
- ha, has8:0
wa3= A13&A12 | wa2= A13&!A12 | ||
wa1=!A13&A12 | wa0=!A13&!A12 | ||
wbF= A11& A10& A9& A8 | wbE= A11& A10& A9&!A8 | ||
wbD= A11& A10&!A9& A8 | wbC= A11& A10&!A9&!A8 | ||
wbB= A11&!A10& A9& A8 | wbA= A11&!A10& A9&!A8 | ||
wb9= A11&!A10&!A9& A8 | wb8= A11&!A10&!A9&!A8 | ||
wb7=!A11& A10& A9& A8 | wb6=!A11& A10& A9&!A8 | ||
wb5=!A11& A10&!A9& A8 | wb4=!A11& A10&!A9&!A8 | ||
wb3=!A11&!A10& A9& A8 | wb2=!A11&!A10& A9&!A8 | ||
wb1=!A11&!A10&!A9& A8 | wb0=!A11&!A10&!A9&!A8 | ||
wcF= A7& A6& A5& A4 | wcE= A7& A6& A5&!A4 | ||
wcD= A7& A6&!A5& A4 | wcC= A7& A6&!A5&!A4 | ||
wcB= A7&!A6& A5& A4 | wcA= A7&!A6& A5&!A4 | ||
wc9= A7&!A6&!A5& A4 | wc8= A7&!A6&!A5&!A4 | ||
wc7=!A7& A6& A5& A4 | wc6=!A7& A6& A5&!A4 | ||
wc5=!A7& A6&!A5& A4 | wc4=!A7& A6&!A5&!A4 | ||
wc3=!A7&!A6&!A5&!A4 | wc2=!A7&!A6& A5&!A4 | ||
wc1=!A7&!A6&!A5& A4 | wc0=!A7&!A6&!A5&!A4 | ||
wdF= A3& A2& A1& A0 | wdE= A3& A2& A1&!A0 | ||
wdD= A3& A2&!A1& A0 | wdC= A3& A2&!A1&!A0 | ||
wdB= A3&!A2& A1& A0 | wdA= A3&!A2& A1&!A0 | ||
wd9= A3&!A2&!A1& A0 | wd8= A3&!A2&!A1&!A0 | ||
wd7=!A3& A2& A1& A0 | wd6=!A3& A2& A1&!A0 | ||
wd5=!A3& A2&!A1& A0 | wd4=!A3& A2&!A1&!A0 | ||
wd3=!A3&!A2& A1& A0 | wd2=!A3&!A2& A1&!A0 | ||
wd1=!A3&!A2&!A1& A0 | wd0=!A3&!A2&!A1&!A0 | ||
-
- pab00=wa0&wb0
- pab3f=wa3&wbF
- pcd00=wc0&wd0
- pcdff=wcF&wdF
- pd08=wd0|wd1|wd2|wd4|wd8
- pd7f=wd7|wdB|wdD|wdE|wdF
- h10=(wc1|wc2)&wdF
- h11=(A13|A12)&wbF
- h20=(wa0&(wb1|wb3|wb5|wb9))|((wa1|wa2)&wb1)
- h40=(wa0|wa1|wa2)&(wb0|wb4|wb8)
- h41=(wa3&wb0)|(wa0&wbC)
- h42=((wa0|wa1|wa2)&wb2)|(wa0&(wb6|wbA))
- has[0]=(pab00&(h10|(wc3&pd7f)))|(h11&pcd00)
- has[1]=wa3&(wb7|wbB|wbD|wbE)&pcd00
- has[2]=pab3f&((wcE&pd08)|(wcF&wd0))
- has[3]=h20&pcdff
- has[4]=pab3f&wcC&!pd7f
- has[5]=pab3f&wcD& pd08
- has[6]=(h40|h41)&pcdff
- has[7]=h42&pcdff
- has[8]=(wa1&wb5&wc5&wd5)|(wa2&wbA&wcA&wdA)
- ha=has[0] I has[1] I has[2] I has[3] I has[4] I has[5] I has[6] I has[7] I has[8]
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Data Segment)
- has8:0, ha
Output: - CW13:0
- (14-bit Code Word)
- ha1a=has[0]
- ha1a13=0
- ha1a12=0
- ha1a11=0
- ha1a10=ha1a &(A13 & A12)
- ha1a9=ha1a&(A5 |(A13 &!A12)
- ha1a8=ha1a&(A4 |(!A13 &!A5))
- ha1a7=ha1a & A3
- ha1a6=ha1a & A2
- ha1a5=ha1a & A1
- ha1a4=ha1a & A0
- ha1a3=ha1a & A11
- ha1a2=ha1a & A11
- ha1a1=ha1a & A11
- ha1a0=ha1a & A11
- ha1b=has[l]
- ha1b13=0
- ha1b12=0
- ha1b11=0
- ha1b10=0
- ha1b9=0
- ha1b8=ha1b
- ha1b7=ha1b
- ha1b6=0
- ha1b5=0
- ha1b4=0
- ha1b3=ha1b & A11
- ha1b2=ha1b & A10
- ha1b1=ha1b & A9
- ha1b0=ha1b & A8
- ha2a=has[2]
- ha2a13=0
- ha2a12=0
- ha2a11=0
- ha2a10=0
- ha2a9=ha2a
- ha2a8=0
- ha2a7=0
- ha2a6=0
- ha2a5=ha2a &(!A3 & !A2 & !A1 & !A0)
- ha2a4=ha2a &(A3 | A2 | A1 | A0)
- ha2a3=ha2a &(A4 | A2 | A1 | A0)
- ha2a2=ha2a &(!A4 & !A2)
- ha2a1=ha2a & !A1
- ha2a0=ha2a & !A0
- ha2b=has[3]
- ha2b13=0
- ha2b12=0
- ha2b11=0
- ha2b10=0
- ha2b9=ha2b
- ha2b8=0
- ha2b7=0
- ha2b6=ha2b &(A13 | A12 | A11 | A10)
- ha2b5=ha2b &(!A13 & !A12 & !A11 & !A10)
- ha2b4=0
- ha2b3=ha2b &!A10
- ha2b2=ha2b &!A11
- ha2b1=ha2b &(!A12 & !A9)
- ha2b0=ha2b &(A12 | A11 | A10 | A9)
- ha3a=has[4]
- ha3a13=0
- ha3a12=0
- ha3a11=0
- ha3a10=ha3a
- ha3a9=ha3a
- ha3a8=ha3a
- ha3a7=ha3a
- ha3a6=0
- ha3a5=0
- ha3a4=ha3a&((!A5 & (A13 ^ A3)) | (!A2 & (A1 ^!A0)))
- ha3a3=ha3a & A3
- ha3a2=ha3a & A2
- ha3a1=ha3a & A1
- ha3a0=ha3a & A0
- ha3b=has[5]
- ha3b13=0
- ha3b12=0
- ha3b11=0
- ha3b10=ha3b
- ha3b9=0
- ha3b8=ha3b
- ha3b7=ha3b & !A3
- ha3b6=ha3b & !A2
- ha3b5=ha3b &!A1
- ha3b4=ha3b & !A0
- ha3b3=0
- ha3b2=0
- ha3b1=ha3b
- ha3b0=ha3b
- ha4a=has[6]
- ha4a13=0
- ha4a12=0
- ha4a11=0
- ha4a10=ha4a
- ha4a9=ha4a
- ha4a8=ha4a
- ha4a7=ha4a&((!A13 & (A12 ^!A11)) | (!A10 &(A13 ^!A13)))
- ha4a6=0
- ha4a5=ha4a
- ha4a4=0
- ha4a3=ha4a & A10
- ha4a2=ha4a & A11
- ha4a1=ha4a & A12
- ha4a0=ha4a & A13
- ha4b=has[7]
- ha4b13=0
- ha4b12=0
- ha4b11=0
- ha4b10=ha4b
- ha4b9=ha4b
- ha4b8=ha4b
- ha4b7=ha4b
- ha4b6=ha4b
- ha4b5=ha4b
- ha4b4=ha4b
- ha4b3=ha4b& !A10
- ha4b2=ha4b &(A13 | A12 | A10)
- ha4b1=ha4b &(A13 | A11 | A10)
- ha4b0=ha4b & !A13
- ha5a=has[8]
- ha5a13=0
- ha5a12=0
- ha5a11=0
- ha5a10=ha5a
- ha5a9=0
- ha5a8=ha5a
- ha5a7=ha5a & A13
- ha5a6=ha5a &!A13
- ha5a5=ha5a & !A13
- ha5a4=ha5a & A13
- ha5a3=0
- ha5a2=0
- ha5a1=ha5a
- ha5a0=ha5a
- cwh[13]=ha1a13|ha1b13|ha2a13|ha2b13|ha3a13|ha3b13|ha4a13|ha4b13|ha5a13
- cwh[12]=ha1a12|ha1b12|ha2a12|ha2b12|ha3a12|ha3b12|ha4a12|ha4b12|ha5a12
- cwh[11]=ha1a11|ha1b11|ha2a11|ha2b11|ha3a11|ha3b11|ha4a11|ha4b11|ha5a11
- cwh[10]=ha1a10|ha1b10|ha2a10|ha2b10|ha3a10|ha3b10|ha4a10|ha4b10|ha5a10
- cwh[9]=ha1a9|ha1b9|ha2a9|ha2b9|ha3a9|ha3b9|ha4a9|ha4b9|ha5a9
- cwh[8]=ha1a8|ha1b8|ha2a8|ha2b8|ha3a8|ha3b8|ha4a8|ha4b8|ha5a8
- cwh[7]=ha1a7|ha1b7|ha2a7|ha2b7|ha3a7|ha3b7|ha4a7|ha4b7|ha5a7
- cwh[6]=ha1a6|ha1b6|ha2a6|ha2b6|ha3a6|ha3b6|ha4a6|ha4b6|ha5a6
- cwh[5]=ha1a5|ha1b5|ha2a5|ha2b5|ha3a5|ha3b5|ha4a5|ha4b5|ha5a5
- cwh[4]=ha1a4|ha1b4|ha2a4|ha2b4|ha3a4|ha3b4|ha4a4|ha4b4|ha5a4
- cwh[3]=ha1a3|ha1b3|ha2a3|ha2b3|ha3a3|ha3b3|ha4a3|ha4b3|ha5a3
- cwh[2]=ha1a2|ha1b2|ha2a2|ha2b2|ha3a2|ha3b2|ha4a2|ha4b2|ha5a2
- cwh[1]=ha1a1|ha1b1|ha2a1|ha2b1|ha3a1|ha3b1|ha4a1|ha4b1|ha5a1
- cwh[0]=ha1a0|ha1b0|ha2a0|ha2b0|ha3a0|ha3b0|ha4a0|ha4b0|ha5a0
- if(ha) cw13:0=cwh13:0
- else cw13:0=A13:0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Code Word Segment)
Output: - C13:0
- (14-bit Code Word Segment)
{ | if( st==1 ) | C13:0 = !A13:0 | ||
else | C13:0 = A13:0 | |||
st = st{circumflex over ( )}1 | ||||
} | ||||
-
- C13,C12,C11,C10,C9,C8,C7,C6,C5,C4,C3,C2,C1,C0
- (14-bit Code Word Segment)
Output: - D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0
- (14-bit Data Segment)
-
- C13,C12,C11,C10,C9,C8,C7,C6,C5,C4,C3,C2,C1,C0
- (14-bit Code Word Segment)
Output: - D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0
- (14-bit selectively inverted Word Code Word Segment)
if(Hamming weight of A13:0==4) DH13:0=!C13:0
else DH13:0=C13:0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
Output: D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0 (14-bit Word)
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0
- (14-bit Word)
Output: - ha, has8:0
wa0=!A13&!A12 | |||
wbF= A11& A10& A9& A8 | wbE= A11& A10& A9&!A8 | ||
wbD= A11& A10&!A9& A8 | wbC= A11& A10&!A9&!A8 | ||
wbB= A11&!A10& A9& A8 | wbA= A11&!A10& A9&!A8 | ||
wb9= A11&!A10&!A9& A8 | wb8= A11&!A10&!A9&!A8 | ||
wb7=!A11& A10& A9& A8 | wb6=!A11& A10& A9&!A8 | ||
wb5=!A11& A10&!A9& A8 | wb4=!A11& A10&!A9&!A8 | ||
wb3=!A11&!A10& A9& A8 | wb2=!A11&!A10& A9&!A8 | ||
wb1=!A11&!A10&!A9& A8 | wb0=!A11&!A10&!A9&!A8 | ||
wcF= A7& A6& A5& A4 | wcE= A7& A6& A5&!A4 | ||
wcD= A7& A6&!A5& A4 | wcC= A7& A6&!A5&!A4 | ||
wcB= A7&!A6& A5& A4 | wcA= A7&!A6& A5&!A4 | ||
wc9= A7&!A6&!A5& A4 | wc8= A7&!A6&!A5&!A4 | ||
wc7=!A7& A6& A5& A4 | wc6=!A7& A6& A5&!A4 | ||
wc5=!A7& A6&!A5& A4 | wc4=!A7& A6&!A5&!A4 | ||
wc3=!A7&!A6&!A5&!A4 | wc2=!A7&!A6& A5&!A4 | ||
wc1=!A7&!A6&!A5& A4 | wc0=!A7&!A6&!A5&!A4 | ||
wdF= A3& A2& A1& A0 | wdE= A3& A2& A1&!A0 | ||
wdD= A3& A2&!A1& A0 | wdC= A3& A2&!A1&!A0 | ||
wdB= A3&!A2& A1& A0 | wdA= A3&!A2& A1&!A0 | ||
wd9= A3&!A2&!A1& A0 | wd8= A3&!A2&!A1&!A0 | ||
wd7=!A3& A2& A1& A0 | wd6=!A3& A2& A1&!A0 | ||
wd5=!A3& A2&!A1& A0 | wd4=!A3& A2&!A1&!A0 | ||
wd3=!A3&!A2& A1& A0 | wd2=!A3&!A2& A1&!A0 | ||
wd1=!A3&!A2&!A1& A0 | wd0=!A3&!A2&!A1&!A0 | ||
-
- pab01=wa0&wb1
- pab02-=wa0&wb2
- pab03=wa0&wb3
- pab04=wa0&wb4
- pab05=wa0&wb5
- pab07=wa0&wb7
- pc7f=wc7|wcB|wcD|wcE|wcF
- pd08=wd0|wd1|wd2|wd3|wd4|wd5|wd6|wd8
- pd7e=wd7|wdB|wdD|wdE
- pd9c=wd9|wdA|wdC
- h10=(pab01|pab02)&wcF&wd0
- h11=pab03&pc7f&wd0
- h12=(pab01|pab02|pab04)&wc0&wdF
- has[0]=h10|h11|h12
- has[1]=pab01&wc8&pd7e
- has[2]=pab02&((wc1&pd7e)|(wc2&(wd7|wdB)))
- has[3]=pab02&((wc4&pd7e)|(wc2&(wdD|wdE)))
- has[4]=pab07&((wc9&pd08)|(wc8&pd9c))
- has[5]=pab05&pc7f&wd3
- has[6]=pab07&((wcA&pd08)|(wc2&pd9c))
- has[7]=pab07&wcF&(pd7e|wd9)
- has[8]=pab05&(wc6|wc9)&wd3
- ha=has[0]|has[1]|has[2]|has[3]|has[4]|has[5]|has[6]|has[7]|has[8]
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
- has8:0, ha
Output: - dW13:0 (14-bit Word)
- ha1a=has[0]
- ha1a13=ha1a &(!A8 &!A7)
- ha1a12=ha1a &(!A9 &!A7)
- ha1a11=ha1a & A3
- ha1a10=ha1a & A3
- ha1a9=ha1a & A3
- ha1a8=ha1a & A3
- ha1a7=0
- ha1a6=0
- ha1a5=ha1a &(A9 &!A3)
- ha1a4=ha1a &(A8 &!A3)
- ha1a3=ha1a & A7
- ha1a2=ha1a & A6
- ha1a1=ha1a & A5
- ha1a0=ha1a & A4
- ha1b=has[l]
- ha1b13=ha1b
- ha1b12=ha1b
- ha1b11=ha1b & A3
- ha1b10=ha1b & A2
- ha1b9=ha1b & A1
- ha1b8=ha1b & A0
- ha1b7=0
- ha1b6=0
- ha1b5=0
- ha1b4=0
- ha1b3=0
- ha1b2=0
- ha1b1=0
- ha1b0=0
- ha2a=has[2]
- ha2a13=ha2a
- ha2a12=ha2a
- ha2a11=ha2a
- ha2a10=ha2a
- ha2a9=ha2a
- ha2a8=ha2a
- ha2a7=ha2a
- ha2a6=ha2a
- ha2a5=ha2a
- ha2a4=ha2a &(A5 & A3)
- ha2a3=ha2a &(!A5 & !A3)
- ha2a2=ha2a &(!A5 & !A2)
- ha2a1=ha2a & !A1
- ha2a0=ha2a & !A0
- ha2b=has [3]
- ha2b13=ha2b &(A6 & !A0)
- ha2b12=ha2b &(A6 & !A1)
- ha2b11=ha2b &!A2
- ha2b10=ha2b &!A3
- ha2b9=ha2b &(!A6 & !A1)
- ha2b8=ha2b
- ha2b7=ha2b
- ha2b6=ha2b
- ha2b5=ha2b
- ha2b4=ha2b
- ha2b3=ha2b
- ha2b2=ha2b
- ha2b1=ha2b
- ha2b0=ha2b
- ha3a=has[4]
- ha3a13=ha3a
- ha3a12=ha3a
- ha3a11=ha3a
- ha3a10=ha3a
- ha3a9=ha3a
- ha3a8=ha3a
- ha3a7=ha3a
- ha3a6=ha3a
- ha3a5=0
- ha3a4=0
- ha3a3=ha3a & A3
- ha3a2=ha3a & A2
- ha3a1=ha3a & A1
- ha3a0=ha3a & A0
- ha3b=has [5]
- ha3b13=ha3b
- ha3b12=ha3b
- ha3b11=ha3b
- ha3b10=ha3b
- ha3b9=ha3b
- ha3b8=ha3b
- ha3b7=ha3b
- ha3b6=ha3b
- ha3b5=0
- ha3b4=ha3b
- ha3b3=ha3b &!A7
- ha3b2=ha3b & !A6
- ha3b1=ha3b & !A5
- ha3b0=ha3b & !A4
- ha4a=has[6]
- ha4a13=ha4a & A0
- ha4a12=ha4a & A1
- ha4a11=ha4a & A2
- ha4a10=ha4a & A3
- ha4a9=0
- ha4a8=0
- ha4a7=ha4a
- ha4a6=ha4a
- ha4a5=ha4a
- ha4a4=ha4a
- ha4a3=ha4a
- ha4a2=ha4a
- ha4a1=ha4a
- ha4a0=ha4a
- ha4b=has[7]
- ha4b13=ha4b & !A0
- ha4b12=ha4b &(A2 &!A1)
- ha4b11=ha4b &(A1 &!A2)
- ha4b10=ha4b & !A3
- ha4b9=ha4b
- ha4b8=0
- ha4b7=ha4b
- ha4b6=ha4b
- ha4b5=ha4b
- ha4b4=ha4b
- ha4b3=ha4b
- ha4b2=ha4b
- ha4b1=ha4b
- ha4b0=ha4b
- ha5a=has[8]
- ha5a13=ha5a & A7
- ha5a12=ha5a & !A7
- ha5a11=ha5a & A7
- ha5a10=ha5a &!A7
- ha5a9=ha5a & A7
- ha5a8=ha5a &!A7
- ha5a7=ha5a & A7
- ha5a6=ha5a & !A7
- ha5a5=ha5a & A7
- ha5a4=ha5a & !A7
- ha5a3=ha5a & A7
- ha5a2=ha5a&!A7
- ha5a1=ha5a & A7
- ha5a0=ha5a & !A7
- dw[13]=ha1a13|ha1b13|ha2a13|ha2b13|ha3a13|ha3b13|ha4a13|ha4b13|ha5a13
- dw[12]=ha1a12|ha1b12|ha2a12|ha2b12|ha3a12|ha3b12|ha4a12|ha4b12|ha5a12
- dw[11]=ha1a11|ha1b11|ha2a11|ha2b11|ha3a11|ha3b11|ha4a11|ha4b11|ha5a11
- dw[10]=ha1a10|ha1b10|ha2a10|ha2b10|ha3a10|ha3b10|ha4a10|ha4b10|ha5a10
- dw[9]=ha1a9|ha1b9|ha2a9|ha2b9|ha3a9|ha3b9|ha4a9|ha4b9|ha5a9
- dw[8]=ha1a8|ha1b8|ha2a8|ha2b8|ha3a8|ha3b8|ha4a8|ha4b8|ha5a8
- dw[7]=ha1a7|ha1b7|ha2a7|ha2b7|ha3a7|ha3b7|ha4a7|ha4b7|ha5a7
- dw[6]=ha1a6|ha1b6|ha2a6|ha2b6|ha3a6|ha3b6|ha4a6|ha4b6|ha5a6
- dw[5]=ha1a5|ha1b5|ha2a5|ha2b5|ha3a5|ha3b5|ha4a5|ha4b5|ha5a5
- dw[4]=ha1a4|ha1b4|ha2a4|ha2b4|ha3a4|ha3b4|ha4a4|ha4b4|ha5a4
- dw[3]=ha1a3|ha1b3|ha2a3|ha2b3|ha3a3|ha3b3|ha4a3|ha4b3|ha5a3
- dw[2]=ha1a2|ha1b2|ha2a2|ha2b2|ha3a2|ha3b2|ha4a2|ha4b2|ha5a2
- dw[1]=ha1a1|ha1b1|ha2a1|ha2b1|ha3a1|ha3b1|ha4a1|ha4b1|ha5a1
- dw[0]=ha1a0|ha1b0|ha2a0|ha2b0|ha3a0|ha3b0|ha4a0|ha4b0|ha5a0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
Output: - D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2,D1,D0 (14-bit Word)
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
Output: - gas5:0, gbs6:0, gcs9:0, ga, gb, gc, tt
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
wa3= A13&A12 | wa2= A13&!A12 | ||
wa1=!A13&A12 | wa0=!A13&!A12 | ||
wbF= A11& A10& A9& A8 | wbE= A11& A10& A9&!A8 | ||
wbD= A11& A10&!A9& A8 | wbC= A11& A10&!A9&!A8 | ||
wbB= A11&!A10& A9& A8 | wbA= A11&!A10& A9&!A8 | ||
wb9= A11&!A10&!A9& A8 | wb8= A11&!A10&!A9&!A8 | ||
wb7=!A11& A10& A9& A8 | wb6=!A11& A10& A9&!A8 | ||
wb5=!A11& A10&!A9& A8 | wb4=!A11& A10&!A9&!A8 | ||
wb3=!A11&!A10& A9& A8 | wb2=!A11&!A10& A9&!A8 | ||
wb1=!A11&!A10&!A9& A8 | wb0=!A11&!A10&!A9&!A8 | ||
wcF= A7& A6& A5& A4 | wcE= A7& A6& A5&!A4 | ||
wcD= A7& A6&!A5& A4 | wcC= A7& A6&!A5&!A4 | ||
wcB= A7&!A6& A5& A4 | wcA= A7&!A6& A5&!A4 | ||
wc9= A7&!A6&!A5& A4 | wc8= A7&!A6&!A5&!A4 | ||
wc7=!A7& A6& A5& A4 | wc6=!A7& A6& A5&!A4 | ||
wc5=!A7& A6&!A5& A4 | wc4=!A7& A6&!A5&!A4 | ||
wc3=!A7&!A6&!A5&!A4 | wc2=!A7&!A6& A5&!A4 | ||
wc1=!A7&!A6&!A5& A4 | wc0=!A7&!A6&!A5&!A4 | ||
wdF= A3& A2& A1& A0 | wdE= A3& A2& A1&!A0 | ||
wdD= A3& A2&!A1& A0 | wdC= A3& A2&!A1&!A0 | ||
wdB= A3&!A2& A1& A0 | wdA= A3&!A2& A1&!A0 | ||
wd9= A3&!A2&!A1& A0 | wd8= A3&!A2&!A1&!A0 | ||
wd7=!A3& A2& A1& A0 | wd6=!A3& A2& A1&!A0 | ||
wd5=!A3& A2&!A1& A0 | wd4=!A3& A2&!A1&!A0 | ||
wd3=!A3&!A2& A1& A0 | wd2=!A3&!A2& A1&!A0 | ||
wd1=!A3&!A2&!A1& A0 | wd0=!A3&!A2&!A1&!A0 | ||
-
- pb12r=wb1|wb2
- pb02r=wb0|wb1|wb2
- pb03r=pb02r|wb3
- pb56r=wb5|wb6
- pc18r=wc1|wc2|wc4|wc8
- pc08r=wc0|pc18r
- pc7er=wc7|wcB|wcD|wcE
- pc7fr=pc7er|wcF
- pc3cr=wc3|wc5|wc6|wc9|wcA|wcC
- pd7er=wd7|wdB|wdD|wdE
- pd7fr=pd7er|wdF
- pd18r=wd1|wd2|wd4|wd8
- pd08r=pd18r|wd0
- pd3cr=wd3|wd5|wd6|wd9|wdA|wdC
- tt=A13|A12|A11
- gas[0]=(pb03r)&wdF&!(wb3&wcF&wdF)&!((pb12r)&wc0&wdF)
- gas[1]=(pb02r)&!(pc08r)&(pd7er)
- gas[2]=(wb3)&!(pc08r)&(pd18r)
- gas[3]=(wb0|wb3)&(pc7fr)&(pd3cr)
- gas[4]=(pb12r|wb4)&(pc7fr)&(pd18r)
- gas[5]=(wb1&(wc1|wc2|wc4)&(pd7er))|(wb0&wcF&(pd18r))
- ga=(gas[0]|gas[1]|gas[2]|gas[3]|gas[4]|gas[5])&!tt
- gbs[0]=(pb12r)&!(pc08r)&(pd3cr)
- gbs[1]=(wb4)&!(pc08r)&(pd3cr)
- gbs[2]=(wb4)&(A6|A7)&(pd7fr)
- gbs[3]=((pb56r)|(wb7&!(A6|A7)))&(pd7fr)
- gbs[4]=(pb56r)&(A6|A7)&(wd5|wd6|wd9|wdA|wdC)
- gbs[5]=((wb3&!(pc7fr))|(wb7&(wc0|wc1)))&(pd3cr)
- gbs[6]=(pb56r)&(wc1|wc2|wc3)&(pd3cr)
- gb=(gbs[0]|gbs[1]|gbs[2]|gbs[3]|gbs[4]|gbs[5]|gbs[6])&!tt
- gcs[0]=(wb7)&(wc3|wc5|wc6|pc7er)&(pd08r)
- gcs[7]=(((pb56r)&(pc7fr))|(wb7&(wcC|wcF)))&(pd08r)
- gcs[2]=((wb3&wcF)|(wb4&(wc1|wc2|wc3))|(wb7&(wcC|wcD|wcE)))&(pd7fr)
- gcs[3]=(wb7)&(A6^7)&(pd7fr)
- gcs[4]=(wb7&(pc18r)&(pd18r))|(wb6&(A6|A7)&wd3)
- gcs[5]=(pb56r)&(pc3cr)&(pd18r)
- gcs[6]=(wb3)&(wc0|(A6^7))&(pd7er)
- gcs[7]=(wb3)&(wc1|wc2|wc3|wcC|wcD|wcE)&(pd7er)
- gcs[8]=wb7&(((pc3cr)&(wd9|wdA))|((wcB|wcD|wcE)&(wd3|wdC))|(wc7&wdC))
- gcs[9]=wb7&(((pc7er)&(wd5|wd6))|((pc3cr)&wdC)|(wcF&wd3))
- gc=(gcs[0]|gcs[l]|gcs[2]|gcs[3]|gcs[4]|gcs[5]|gcs[6]|gcs[7]|gcs[8]|gcs[9])&!tt
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
- gas5:0
Output: - dwa13:0 (14-bit Word)
- ga0a=gas[O]
- ga0a13=ga0a & A9
- ga0a12=ga0a & A8
- ga0a11=ga0a &(A9 ^ !A8)
- ga0a10=ga0a &(A9 & A8)
- ga0a9=ga0a &(A9 & A8)
- ga0a8=ga0a &(A9 & A8)
- ga0a7=ga0a & !A7
- ga0a6=ga0a &!A6
- ga0a5=ga0a &!A5
- ga0a4=ga0a &!A4
- ga0a3=ga0a &(A9 & A8)
- ga0a2=ga0a &(A9 & A8)
- ga0a1=ga0a &(A9 & A8)
- ga0a0=ga0a &(A9 & A8)
- ga1a=gas[l]
- ga1a13=ga1a & A9
- ga1a12=ga1a& A8
- ga1a11=ga1a &(!A9 &!A8)
- ga1a10=0
- ga1a9=0
- ga1a8=0
- ga1a7=ga1a &!A7
- ga1a6=ga1a &!A6
- ga1a5=ga1a &!A5
- ga1a4=ga1a &!A4
- ga1a3=ga1a &!A3
- ga1a2=ga1a &!A2
- ga1a1=ga1a &!A1
- ga1a0=ga1a &!A0
- ga1b=gas[2]
- ga1b13=ga1b
- ga1b12=ga1b
- ga1b11=ga1b
- ga1b10=ga1b
- ga1b9=ga1b
- ga1b8=ga1b
- ga1b7=ga1b & A7
- ga1b6=ga1b & A6
- ga1b5=ga1b & A5
- ga1b4=ga1b & A4
- ga1b3=ga1b &!A3
- ga1b2=ga1b &!A2
- ga1b1=ga1b &!A1
- ga1b0=ga1b &!A0
- ga2a=gas[3]
- ga2a13=ga2a & A9
- ga2a12=ga2a & A9
- ga2a11=ga2a
- ga2a10=ga2a & A9
- ga2a9=ga2a & A9
- ga2a8=ga2a & A9
- ga2a7=ga2a &(A9 ^ !A7)
- ga2a6=ga2a &(A9 ^ !A6)
- ga2a5=ga2a &(A9 ^ !A5)
- ga2a4=ga2a &(A9 ^ !A4)
- ga2a3=ga2a &(A9 ^ !A3)
- ga2a2=ga2a &(A9 ^ !A2)
- ga2a1=ga2a &(A9 ^ !A1)
- ga2a0=ga2a &(A9 ^ !A0)
- ga2b=gas[4]
- ga2b13=ga2b&(A3 | A2)
- ga2b12=ga2b &(A1 | A0)
- ga2b11=0
- ga2b10=0
- ga2b9=0
- ga2b8=0
- ga2b7=ga2b &!A7
- ga2b6=ga2b &!A6
- ga2b5=ga2b & !A5
- ga2b4=ga2b &!A4
- ga2b3=ga2b &(A3 | A1)
- ga2b2=ga2b&(!A8 & (A10 |(!A3 & A1)))
- ga2b1=ga2b&((!A9 & (A13 ^ A2)) | (!A2 & (A9 ^ A0)))
- ga2b0=ga2b&(!A10 & (!A9 |(!A3 & !A1)))
- ga3a=gas[5]
- ga3a13=ga3a & A6
- ga3a12=ga3a & A5
- ga3a11=ga3a & A4
- ga3a10=ga3a & !A8
- ga3a9=ga3a & !A8
- ga3a8=ga3a & !A8
- ga3a7=ga3a & !A8
- ga3a6=ga3a & !A8
- ga3a5=ga3a & !A8
- ga3a4=ga3a & !A8
- ga3a3=ga3a & A3
- ga3a2=ga3a & A2
- ga3a1=ga3a & A1
- ga3a0=ga3a & A0
- dwa[13]=ga0a13|ga1a13|ga1b13|ga2a13|ga2b13|ga3a13
- dwa[12]=ga0a12|ga1a12|ga1b12|ga2a12|ga2b12|ga3a12
- dwa[11]=ga0a11|ga1a11|ga1b11|ga2a11|ga2b11|ga3a11
- dwa[10]=ga0a10|ga1a10|ga1b10|ga2a10|ga2b10|ga3a10
- dwa[9]=ga0a9|ga1a9|ga1b9|ga2a9|ga2b9|ga3a9
- dwa[8]=ga0a8|ga1a8|ga1b8|ga2a8|ga2b8|ga3a8
- dwa[7]=ga0a7|ga1a7|ga1b7|ga2a7|ga2b7|ga3a7
- dwa[6]=ga0a6|ga1a6|ga1b6|ga2a6|ga2b6|ga3a6
- dwa[5]=ga0a5|ga1a5|ga1b5|ga2a5|ga2b5|ga3a5
- dwa[4]=ga0a4|ga1a4|ga1b4|ga2a4|ga2b4|ga3a4
- dwa[3]=ga0a3|ga1a3|ga1b3|ga2a3|ga2b3|ga3a3
- dwa[2]=ga0a2|ga1a2|ga1b2|ga2a2|ga2b2|ga3a2
- dwa[1]=ga0a1|ga1a1|ga1b1|ga2a1|ga2b1|ga3a1
- dwa[0]=ga0a0|ga1a0|ga1b0|ga2a0|ga2b0|ga3a0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
- gbs6:0
Output: - dwb13:0 (14-bit Word)
- gb1a=gbs[0]
- gb1a13=gb1a&(A9 &(!A3 | !A0))
- gb1a12=gb1a&((!A9 & (A13 ^!A3)) | (!A1 & (A9 ^!A3)))
- gb1a11=gb1a&(A3 &(!A9 | !A2))
- gb1a10=gb1a&(A2 & (!A0 &(!A9 | !A3)))
- gb1a9=gb1a&((!A9 &(A3^!A1)) | (!A3 & (A13 ^!A1)))
- gb1a8=gb1a&(A0 & (!A2 &(!A9 | !A3)))
- gb1a7=gb1a &!A7
- gb1a6=gb1a &!A6
- gb1a5=gb1a & !A5
- gb1a4=gb1a &!A4
- gb1a3=0
- gb1a2=0
- gb1a1=0
- gb1a0=0
- gb1b=gbs[1]
- gb1b13=gb1b&(A3 | A2)
- gb1b12=gb1b &(A3 | A1)
- gb1b11=gb1b &(A3 | A0)
- gb1b10=gb1b&(!A3 | !A0)
- gb1b9=gb1b&(!A3 | !A1)
- gb1b8=gb1b &(!A3 | !A2)
- gb1b7=gb1b & A7
- gb1b6=gb1b & A6
- gb1b5=gb1b & A5
- gb1b4=gb1b & A4
- gb1b3=gb1b
- gb1b2=gb1b
- gb1b1=gb1b
- gb1b0=gb1b
- gb2a=gbs[2]
- gb2a13=0
- gb2a12=0
- gb2a11=gb2a
- gb2a10=gb2a &(A7 & A6)
- gb2a9=gb2a &!A6
- gb2a8=gb2a &!A7
- gb2a7=gb2a &!A3
- gb2a6=gb2a &!A2
- gb2a5=gb2a &!A1
- gb2a4=gb2a &!A0
- gb2a3=gb2a &(A5 & A4)
- gb2a2=gb2a &(A5 &!A4)
- gb2a1=gb2a &(A4 &!A5)
- gb2a0=gb2a &(!A5 &!A4)
- gb2b=gbs[3]
- gb2b13=gb2b & A9
- gb2b12=gb2b & A8
- gb2b11=gb2b &(A7 & A6)
- gb2b10=gb2b &(A7 &!A6)
- gb2b9=gb2b &(A6 &!A7)
- gb2b8=gb2b&(!A7 & (!A6 &(!A9 | !A8)))
- gb2b7=gb2b &!A3
- gb2b6=gb2b &!A2
- gb2b5=gb2b &!A1
- gb2b4=gb2b &!A0
- gb2b3=gb2b &(A5 & A4)
- gb2b2=gb2b &(A5 &!A4)
- gb2b1=gb2b &(A4 &!A5)
- gb2b0=gb2b &(!A5 &!A4)
- gb2c=gbs[4]
- gb2c13=gb2c &(A9 | A7)
- gb2c12=gb2c &(A9 | A6)
- gb2c11=gb2c &(A9 | !A7 | !A6)
- gb2c10=gb2c &(A8 | A7)
- gb2c9=gb2c &(A8 | A6)
- gb2c8=gb2c &(!A9 | !A7 | !A6)
- gb2c7=gb2c &(A3 | A1)
- gb2c6=gb2c &(A3 | !A1)
- gb2c5=gb2c &(!A3 | !A0)
- gb2c4=gb2c &(!A3 | !A1)
- gb2c3=gb2c &(!A5 | !A4)
- gb2c2=gb2c &(A4 | !A5)
- gb2c1=gb2c &(A5 | !A4)
- gb2c0=gb2c &(A5 | A4)
- gb3a=gbs[5]
- gb3a13=gb3a&(!A10 & (A7 |(!A6 & !A4)))
- gb3a12=gb3a&(!A10 & (A6 |(!A7 & !A5)))
- gb3a11=gb3a &(!A7 & !A6)
- gb3a10=gb3a&(A5 & ((A13 ^ A7) | (A6 ^ A4)))
- gb3a9=gb3a&(A4 & ((A13 ^ A10) | (A7 ^ A6)))
- gb3a8=gb3a&(!A5 & (!A4 &(!A7 | !A6)))
- gb3a7=0
- gb3a6=0
- gb3a5=0
- gb3a4=0
- gb3a3=gb3a & A3
- gb3a2=gb3a & A2
- gb3a1=gb3a & A1
- gb3a0=gb3a & A0
- gb3b=gbs[6]
- gb3b13=gb3b &(A9 | A5)
- gb3b12=gb3b &(A9 | A4)
- gb3b11=gb3b&(A9 !A5 | !A4)
- gb3b10=gb3b &(A8 A5)
- gb3b9=gb3b &(A8 | A4)
- gb3b8=gb3b&(!A9 | !A5 | !A4)
- gb3b7=gb3b
- gb3b6=gb3b
- gb3b5=gb3b
- gb3b4=gb3b
- gb3b3=gb3b & A3
- gb3b2=gb3b& A2
- gb3b1=gb3b & A1
- gb3b0=gb3b & A0
- dwb[13]=gb1a13|gb1b13|gb2a13|gb2b13|gb2c13|gb3a13|gb3b13
- dwb[12]=gb1a12|gb1b12|gb2a12|gb2b12|gb2c12|gb3a12|gb3b12
- dwb[11]=gb1a11|gb1b11|gb2a11|gb2b11|gb2c11|gb3a11|gb3b11
- dwb[10]=gb1a10|gb1b10|gb2a10|gb2b10|gb2c10|gb3a10|gb3b10
- dwb[9]=gb1a9|gb1b9|gb2a9|gb2b9|gb2c9|gb3a9|gb3b9
- dwb[8]=gb1a8|gb1b8|gb2a8|gb2b8|gb2c8|gb3a8|gb3b8
- dwb[7]=gb1a7|gb1b7|gb2a7|gb2b7|gb2c7|gb3a7|gb3b7
- dwb[6]=gb1a6|gb1b6|gb2a6|gb2b6|gb2c6|gb3a6|gb3b6
- dwb[5]=gb1a5|gb1b5|gb2a5|gb2b5|gb2c5|gb3a5|gb3b5
- dwb[4]=gb1a4|gb1b4|gb2a4|gb2b4|gb2c4|gb3a4|gb3b4
- dwb[3]=gb1a3|gb1b3|gb2a3|gb2b3|gb2c3|gb3a3|gb3b3
- dwb[2]=gb1a2|gb1b2|gb2a2|gb2b2|gb2c2|gb3a2|gb3b2
- dwb[1]=gb1a1|gb1b1|gb2a1|gb2b1|gb2c1|gb3a1|gb3b1
- dwb[0]=gb1a0|gb1b0|gb2a0|gb2b0|gb2c0|gb3a0|gb3b0
-
- A13,A12,A11,A10,A9,A8,A7,A6,A5,A4,A3,A2,A1,A0 (14-bit Word)
- gcs9:0
Output: - dwc13:0 (14-bit Word)
- gc1a=gcs[0]
- gc1a13=gc1a & !A7
- gc1a12=gc1a & !A7
- gc1a11=gc1a&((!A13 & (A13 ^ A7)) | (A6 & (A5^!A4)))
- gc1a10=gc1a&(!A4 |(A7 & A6))
- gc1a9=gc1a &(A7 ^ !A5)
- gc1a8=gc1a&(!A6 |(A7 & !A5))
- gc1a7=gc1a & A3
- gc1a6=gc1a & A2
- gc1a5=gc1a & A1
- gc1a4=gc1a & A0
- gc1a3=0
- gc1a2=0
- gc1a1=0
- gc1a0=0
- gc1b=gcs[1]
- gc1b13=gc1b&(!A8 |(A9 & A5))
- gc1b12=gc1b&(!A9 |(A8 &!A5))
- gc1b11=gc1b&(A7 & (A6 &(A5 !A4)))
- gc1b10=gc1b&(!A6 (!A5 |(A9 & A8)))
- gc1b9=gc1b&(A6 & (A4 &(!A9 | !A8)))
- gc1b8=gc1b&(!A7 |(!A6 |(A5 & !A4)))
- gc1b7=gc1b & A3
- gc1b6=gc1b & A2
- gc1b5=gc1b & A1
- gc1b4=gc1b & A0
- gc1b3=0
- gc1b2=0
- gc1b1=0
- gc1b0=0
- gc1c=gcs[2]
- gc1c13=gc1c & A10
- gc1c12=gc1c & A10
- gc1c11=gc1c &(!A10 | !A9)
- gc1c10=gc1c&((A9 & (A13 ^ A5)) | (A4 & (A9 ^ A5)))
- gc1c9=gc1c &(!A10 | !A4)
- gc1c8=gc1c &(!A10 | !A5)
- gc1c7=gc1c & A3
- gc1c6=gc1c & A2
- gc1c5=gc1c & A1
- gc1c4=gc1c & A0
- gc1c3=gc1c
- gc1c2=gc1c
- gc1c1=gc1c
- gc1c0=gc1c
- gc1d=gcs[3]
- gc1d13=gc1d & A7
- gc1d12=gc1d &!A7
- gc1d11=gc1d &(A5 | A4)
- gc1d10=gc1d&(A5 | !A4)
- gc1d9=gc1d &(A4 | !A5)
- gc1d8=gc1d &(!A5 | !A4)
- gc1d7=gc1d & A3
- gc1d6=gc1d & A2
- gc1d5=gc1d & A1
- gc1d4=gc1d & A0
- gc1d3=gc1d
- gc1d2=gc1d
- gc1d1=gc1d
- gc1d0=gc1d
- gc2a=gcs[4]
- gc2a13=gc2a & A8
- gc2a12=gc2a & A8
- gc2a11=gc2a &(A7 | !A8)
- gc2a10=gc2a &((A8 & A6)|(!A8 & A7))
- gc2a9=gc2a &((A8 & A5)|(!A8 & A6))
- gc2a8=gc2a&((!A8 & (A7 ^ A6)) (A8 & (A13 ^ A4)))
- gc2a7=0
- gc2a6=0
- gc2a5=0
- gc2a4=0
- gc2a3=gc2a&(A3 |(A5 & A4))
- gc2a2=gc2a&((!A13 & (A13 ^ A2)) | (A5 & (A8 ^!A4)))
- gc2a1=gc2a&(A1 & (A8 |(A4 & !A5)))
- gc2a0=gc2a&(A0 & (A8 |(!A5 & !A4)))
- gc2b=gcs[5]
- gc2b13=gc2b & A9
- gc2b12=gc2b &!A9
- gc2b11=gc2b & A7
- gc2b10=gc2b & A6
- gc2b9=gc2b & A5
- gc2b8=gc2b & A4
- gc2b7=0
- gc2b6=0
- gc2b5=0
- gc2b4=0
- gc2b3=gc2b& A3
- gc2b2=gc2b & A2
- gc2b1=gc2b& A1
- gc2b0=gc2b & A0
- gc2c=gcs[6]
- gc2c13=gc2c & A7
- gc2c12=gc2c & A6
- gc2c11=gc2c&(A5 (A4 |(!A7 & A6)))
- gc2c10=gc2c &(A5 | !A4)
- gc2c9=gc2c &(A4 | !A5)
- gc2c8=gc2c &(!A5 | !A4)
- gc2c7=gc2c
- gc2c6=gc2c
- gc2c5=gc2c
- gc2c4=gc2c
- gc2c3=gc2c & A3
- gc2c2=gc2c & A2
- gc2c1=gc2c & A1
- gc2c0=gc2c & A0
- gc2d=gcs[7]
- gc2d13=gc2d
- gc2d12=gc2d
- gc2d11=gc2d & A7
- gc2d10=gc2d & A5
- gc2d9=gc2d & A4
- gc2d8=gc2d&((!A7 & (A9 ^ A5)) | (!A4 & (A7 ^ A5)))
- gc2d7=gc2d
- gc2d6=gc2d
- gc2d5=gc2d
- gc2d4=gc2d
- gc2d3=gc2d & A3
- gc2d2=gc2d & A2
- gc2d1=gc2d & A1
- gc2d0=gc2d & A0
- gc3a=gcs[8]
- gc3a13=gc3a & !A0
- gc3a12=gc3a & !A1
- gc3a11=gc3a &(A7 ^ A2)
- gc3a10=gc3a &(A6 ^ A2
- gc3a9=gc3a &(A5 ^ A2)
- gc3a8=gc3a &(A4 ^ A2)
- gc3a7=gc3a
- gc3a6=gc3a
- gc3a5=gc3a
- gc3a4=gc3a
- gc3a3=gc3a
- gc3a2=gc3a
- gc3a1=gc3a
- gc3a0=gc3a
- gc3b=gcs[9]
- gc3b13=gc3b & !A0
- gc3b12=gc3b & !A1
- gc3b11=gc3b & A7
- gc3b10=gc3b & A6
- gc3b9=gc3b & A5
- gc3b8=gc3b & A4
- gc3b7=0
- gc3b6=0
- gc3b5=0
- gc3b4=0
- gc3b3=0
- gc3b2=0
- gc3b1=0
- gc3b0=0
- dwc[13]=gc1a13|gc1b13|gc1c13|gc1d13|gc2a13|gc2b13|gc2c13|gc2d13|gc3a13|gc3b13
- dwc[12]=gc1a12|gc1b12|gc1c12|gc1d12|gc2a12|gc2b12|gc2c12|gc2d12|gc3a12|gc3b12
- dwc[11]=gc1a11|gc1b11|gc1c11|gc1d11|gc2a11|gc2b11|gc2c11|gc2d11|gc3a11|gc3b11
- dwc[10]=gc1a10|gc1b10|gc1c10|gc1d10|gc2a10|gc2b10|gc2c10|gc2d10|gc3a10|gc3b10
- dwc[9]=gc1a9|gc1b9|gc1c9|gc1d9|gc2a9|gc2b9|gc2c9|gc2d9|gc3a9|gc3b9
- dwc[8]=gc1a8|gc1b8|gc1c8|gc1d8|gc2a8|gc2b8|gc2c8|gc2d8|gc3a8|gc3b8
- dwc[7]=gc1a7|gc1b7|gc1c7|gc1d7|gc2a7|gc2b7|gc2c7|gc2d7|gc3a7|gc3b7
- dwc[6]=gc1a6|gc1b6|gc1c6|gc1d6|gc2a6|gc2b6|gc2c6|gc2d6|gc3a6|gc3b6
- dwc[5]=gc1a5|gc1b5|gc1c5|gc1d5|gc2a5|gc2b5|gc2c5|gc2d5|gc3a5|gc3b5
- dwc[4]=gc1a4|gc1b4|gc1c4|gc1d4|gc2a4|gc2b4|gc2c4|gc2d4|gc3a4|gc3b4
- dwc[3]=gc1a3|gc1b3|gc1c3|gc1d3|gc2a3|gc2b3|gc2c3|gc2d3|gc3a3|gc3b3
- dwc[2]=gc1a2|gc1b2|gc1c2|gc1d2|gc2a2|gc2b2|gc2c2|gc2d2|gc3a2|gc3b2
- dwc[1]=gc1a1|gc1b1|gc1c1|gc1d1|gc2a1|gc2b1|gc2c1|gc2d1|gc3a1|gc3b1
- dwc[0]=gc1a0|gc1b0|gc1c0|gc1d0|gc2a0|gc2b0|gc2c0|gc2d0|gc3a0|gc3b0
-
- If (tt) D13:0=A13:0
- If (ga) D13:0=dwa13:0
- If (gb) D13:0=dwb13:0
- If (gc) D13:0=dwc13:0
- W2:0=!DSa13:11 I24:14=DSa10:0
- W5:3=!DSb13:11 I35:25=DSb10:0
- W8:6=!DSc13:11 I46:36=DSc10:0
- W11:9=!DSd13:11 I57:47=DSd10:0
- W14:12=!DSe13:11 I68:58=DSe10:0
-
- W14,W13,W12,W11,W10,W9,W8,W7,W6,W5,W4,W3,W2,W1,W0
- (15-bit Code word)
Output: - I13,I12,I11,I10,I9,I8,I7,I6,I5,I4,I3,I2,I1,I0
- (14-bit Data word)
- HH=!W14
- JK=W14
- JJ=(!W11|(!W10&!W9))&JK
- KK=!JJ&JK
- H0=(!W11&!W10&!W9&JJ)|(!W13&!W12&W11&!W10&W9&KK)
- H1=(!W11&!W10& W9&JJ)|(!W13&!W12&W11&W10&!W9&KK)
- H2=(!W11&W10&!W9&JJ)|(!W13& W12&W11&!W10&W9&KK)
- H3=(!W11& W10& W9&JJ)|(!W13& W12&W11&W10&!W9&KK)
- T2=(W11&!W10&!W9&JJ)|(W13&!W12&W11&!W10&W9&KK)
- H01=W8&!W7&!W6&T2
- H02=!W8&!W7&W6&T2
- H03=!W8&W7&!W6&T2
- H12=!W8&W7&W6&T2
- H13=W8&!W7&!W6&T2
- H23=W8&!W7&W6&T2
- T3=W8&W7&!W6&T2
- H012=!W5&W4&W3&T3
- H013=!W5&W4&!W3&T3
- H023=!W5&!W4&W3&T3
- H123=!W5&!W4&!W3&T3
- H0123=W5&!W4&!W3&T3
- J9c6=(H0|H1|H2)
- J9c3=(H01|H02|H12)
- J9c0=H012
- J9ca=(H3|H03|H13|H23|H123|H023|H013|H0123)
- J6c6=H3
- J6c3=(H0|H1|H03|H13)
- J6c0=(H01|H013)
- J6ca=(H2|H02|H12|H23|H123|H023|H012|H0123)
- J3c3=(H2|H3|H23)
- J3c0=(H0|H02|H03|H023)
- J3ca=(H1|H01|H12|H13|H123|H013|H012|H0123)
- J0c0=(H1|H2|H3|H12|H13|H23|H123)
- J0ca=(H0|H01|H02|H03|H023|H013|H012|H0123)
- J11=(W8 &J9c6)|(W5 &J9c3)|(W2 &J9c0)|J9ca
- J10=(W7 &J9c6)|(W4 &J9c3)|(W1 &J9c0)|J9ca
- J9=(W6 &J9c6)|(W3 &J9c3)|(W0 &J9c0)|J9ca
- J8=(W8 &j6c6)|(W5 &J6c3)|(W2 &J6c0)|J6ca
- J7=(W7 &J6c6)|(W4 &J6c3)|(W1 &J6c0)|J6ca
- J6=(W6 &J6c6)|(W3 &J6c3)|(W0 &J6c0)|J6ca
- J5=(W5 &J3c3)|(W2&J3c0)|J3ca
- J4=(W4 &J3c3)|(W1&J3c0)|J3ca
- J3=(W3 &J3c3)|(W0&J3c0)|J3ca
- J2=(W2 &J0c0)|J0ca
- J1=(W1 &J0c0)|J0ca
- J0=(W0 &J0c0)|J0ca
- I13=(W13&(HH|JJ))|(KK)
- I12=(W12&(HH|JJ))|(KK)
- I11=(W11&HH)|(J11&JK)
- I10=(W10&HH)|(J10&JK)
- I9=(W9 &HH)|(J9 &JK)
- I8=(W8 &HH)|(J8 &JK)
- I7=(W7 &HH)|(J7 &JK)
- I6=(W6 &HH)|(J6 &JK)
- I5=(W5 &HH)|(J5 &JK)
- I4=(W4 &HH)|(J4 &JK)
- I3=(W3 &HH)|(J3 &JK)
- I2=(W2 &HH)|(J2 &JK)
- I1=(W1 &HH)|(J1 &JK)
- I0=(W0 &HH)|(J0 &JK)
Claims (23)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/885,987 US7002492B2 (en) | 2004-07-07 | 2004-07-07 | High rate running digital sum-restricted code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/885,987 US7002492B2 (en) | 2004-07-07 | 2004-07-07 | High rate running digital sum-restricted code |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060007024A1 US20060007024A1 (en) | 2006-01-12 |
US7002492B2 true US7002492B2 (en) | 2006-02-21 |
Family
ID=35540727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/885,987 Expired - Fee Related US7002492B2 (en) | 2004-07-07 | 2004-07-07 | High rate running digital sum-restricted code |
Country Status (1)
Country | Link |
---|---|
US (1) | US7002492B2 (en) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7432834B1 (en) * | 2007-07-05 | 2008-10-07 | International Business Machines Corporation | RLL encoding for LTO-5 tape |
US20080284624A1 (en) * | 2007-05-16 | 2008-11-20 | Ibm Corporation | High-rate rll encoding |
US20090267811A1 (en) * | 2008-04-23 | 2009-10-29 | Kinhing Paul Tsang | Code design with decreased transition density and reduced running digital sum |
US20100013683A1 (en) * | 2005-03-16 | 2010-01-21 | Eberhard Boehl | Method for error handling |
US20100052953A1 (en) * | 2008-09-03 | 2010-03-04 | Kinhing Paul Tsang | Providing running digital sum control in a precoded bit stream using precoder aware encoding |
US20160094248A1 (en) * | 2014-09-30 | 2016-03-31 | Canon Kabushiki Kaisha | Dc-free nyquist-free error correcting line coding |
US9484949B1 (en) * | 2015-04-09 | 2016-11-01 | Oracle International Corporation | Variable run length encoding of a bit stream |
US20160365112A1 (en) * | 2014-04-24 | 2016-12-15 | Marvell International Ltd. | Systems and methods for decoding using run-length limited (rll) codes |
US9633691B2 (en) * | 2015-08-07 | 2017-04-25 | Kabushiki Kaisha Toshiba | Storage controller, storage device, and method |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7064687B1 (en) * | 2005-01-31 | 2006-06-20 | Hitachi Global Storage Technologies Netherlands B.V. | Techniques for modulating data using short block encoders |
US9886597B2 (en) * | 2013-02-27 | 2018-02-06 | Morpho | Method for encoding data on a chip card by means of constant-weight codes |
US10944435B1 (en) * | 2020-03-27 | 2021-03-09 | Nxp B.V. | Tearing save encoding |
Citations (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4486739A (en) | 1982-06-30 | 1984-12-04 | International Business Machines Corporation | Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code |
US4520346A (en) * | 1981-04-24 | 1985-05-28 | Sony Corporation | Method and apparatus for encoding an NRZI digital signal with low DC component |
US4675650A (en) | 1985-04-22 | 1987-06-23 | Ibm Corporation | Run-length limited code without DC level |
US4675652A (en) | 1986-04-11 | 1987-06-23 | Quantum Corporation | Integrated encoder decoder for variable length, zero run length limited codes |
US4888779A (en) | 1988-03-18 | 1989-12-19 | International Business Machines Corporation | Matched spectral null trellis codes for partial response channels |
US5022051A (en) | 1988-11-02 | 1991-06-04 | Hewlett-Packard Company | DC-free line code for arbitrary data transmission |
US5095484A (en) | 1989-11-13 | 1992-03-10 | International Business Machines Company Corporation | Phase invariant rate 8/10 matched spectral null code for PRML |
USRE34088E (en) | 1988-03-09 | 1992-10-06 | Seagate Technology, Inc. | On-the-fly error correction |
US5243604A (en) | 1990-12-18 | 1993-09-07 | Seagate Technology, Inc. | On-the-fly error correction |
US5381424A (en) | 1993-03-25 | 1995-01-10 | Seagate Technology, Inc. | Method and apparatus for fault-tolerant identification of the header field of a recording device |
US5450443A (en) | 1993-09-01 | 1995-09-12 | International Business Machines Corporation | Method and apparatus for constructing asymptotically optimal second order DC-free channel codes |
US5537112A (en) | 1994-01-12 | 1996-07-16 | Seagate Technology, Inc. | Method and apparatus for implementing run length limited codes in partial response channels |
US5608397A (en) | 1995-08-15 | 1997-03-04 | Lucent Technologies Inc. | Method and apparatus for generating DC-free sequences |
US5646950A (en) | 1994-11-18 | 1997-07-08 | Seagate Technology, Inc. | Matched spectral null codes for partial response channels |
US5691993A (en) | 1995-06-07 | 1997-11-25 | Seagate Technology, Inc. | Rate 4/5 trellis code for PR4 channels with improved error propagation |
US5731768A (en) | 1996-01-31 | 1998-03-24 | Seagate Technology, Inc. | Method and apparatus for implementing codes with maximum transition run length |
US5768293A (en) | 1994-10-31 | 1998-06-16 | U.S. Philips Corporation | Digital transmission and recording system with simple error correction |
US5781133A (en) | 1996-08-05 | 1998-07-14 | Seagate Technology, Inc. | Method and apparatus for implementing run length limited codes |
US5801649A (en) | 1995-08-03 | 1998-09-01 | Seagate Technology, Inc. | Matched spectral null encoder/decoder |
US5901158A (en) | 1997-04-22 | 1999-05-04 | Quantum Corporation | Error correction encoder/decoder |
US5960041A (en) | 1995-09-21 | 1999-09-28 | Lucent Technologies Inc. | Method and apparatus for generating high rate codes for recording information on a magnetic medium |
US6011497A (en) | 1997-04-01 | 2000-01-04 | Seagate Technology, Inc. | Location dependent maximum transition run length code with alternating code word length and efficient K constraint |
US6052072A (en) | 1997-04-01 | 2000-04-18 | Seagate Technology, Inc. | System and scheme for maximum transition run length codes with location dependent constraints |
US6111834A (en) | 1997-08-11 | 2000-08-29 | Seagate Technology, Inc. | Data storage system having efficient block code implementation |
US6198582B1 (en) | 1998-06-24 | 2001-03-06 | Seagate Technology Llc | Efficient run length limited code with short interleaved constraint |
US6288655B1 (en) | 1998-09-14 | 2001-09-11 | Seagate Technology Llc | Encoding and decoding techniques for data in 24 bit sequence |
US20020014980A1 (en) * | 2000-06-09 | 2002-02-07 | Bernardo Rub | Method and apparatus for efficient encoding of large data words at high code rates |
US6353912B1 (en) | 1997-11-21 | 2002-03-05 | Sony Corporation | Encoding circuit, encoding method, digital signal transmitting apparatus, and digital signal recording/reproducing apparatus |
US6362757B1 (en) | 1999-08-20 | 2002-03-26 | Electronics And Telecommunications Research Institute | Method and apparatus for encoding MB810 line code with the characteristics of minimum bandwidth and DC-free |
US6377532B1 (en) | 2000-11-21 | 2002-04-23 | Daewoo Electronics Co., Ltd. | Run-length limited encoding method and apparatus for use in a high density optical storage system |
US6393598B1 (en) | 1995-04-20 | 2002-05-21 | Seagate Technology Llc | Branch metric compensation for digital sequence detection |
US6467060B1 (en) | 1998-06-26 | 2002-10-15 | Seagate Technology Llc | Mass storage error correction and detection system, method and article of manufacture |
US6535151B2 (en) | 1998-12-21 | 2003-03-18 | Koninklijke Philips Electronics N.V. | Device for encoding n-bit source words into corresponding m-bit channel words and decoding m-bit channel words into corresponding n-bit source words |
US6559779B2 (en) | 2001-02-28 | 2003-05-06 | Kabushiki Kaisha Toshiba | Data encoding method, apparatus, and storage medium |
US6567610B2 (en) | 1998-08-05 | 2003-05-20 | Kabushiki Kaisha Toshiba | Information recording medium, information recording method and apparatus, and information playback method and apparatus |
US6696991B2 (en) | 2001-06-05 | 2004-02-24 | Samsung Electronics Co., Ltd. | Coding and decoding method of suppressing DC component in codestream |
US20040066318A1 (en) * | 2002-09-09 | 2004-04-08 | Tsang Kinhing Paul | DC free code design with state dependent mapping |
US20050040976A1 (en) * | 2003-08-13 | 2005-02-24 | Seagate Technology Llc | DC-free code design with increased distance between code words |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6646950B2 (en) * | 2001-04-30 | 2003-11-11 | Fujitsu Limited | High speed decoder for flash memory |
-
2004
- 2004-07-07 US US10/885,987 patent/US7002492B2/en not_active Expired - Fee Related
Patent Citations (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4520346A (en) * | 1981-04-24 | 1985-05-28 | Sony Corporation | Method and apparatus for encoding an NRZI digital signal with low DC component |
US4486739A (en) | 1982-06-30 | 1984-12-04 | International Business Machines Corporation | Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code |
US4675650A (en) | 1985-04-22 | 1987-06-23 | Ibm Corporation | Run-length limited code without DC level |
US4675652A (en) | 1986-04-11 | 1987-06-23 | Quantum Corporation | Integrated encoder decoder for variable length, zero run length limited codes |
USRE34088E (en) | 1988-03-09 | 1992-10-06 | Seagate Technology, Inc. | On-the-fly error correction |
US4888779A (en) | 1988-03-18 | 1989-12-19 | International Business Machines Corporation | Matched spectral null trellis codes for partial response channels |
US5022051A (en) | 1988-11-02 | 1991-06-04 | Hewlett-Packard Company | DC-free line code for arbitrary data transmission |
US5095484A (en) | 1989-11-13 | 1992-03-10 | International Business Machines Company Corporation | Phase invariant rate 8/10 matched spectral null code for PRML |
US5243604A (en) | 1990-12-18 | 1993-09-07 | Seagate Technology, Inc. | On-the-fly error correction |
US5381424A (en) | 1993-03-25 | 1995-01-10 | Seagate Technology, Inc. | Method and apparatus for fault-tolerant identification of the header field of a recording device |
US5450443A (en) | 1993-09-01 | 1995-09-12 | International Business Machines Corporation | Method and apparatus for constructing asymptotically optimal second order DC-free channel codes |
US5537112A (en) | 1994-01-12 | 1996-07-16 | Seagate Technology, Inc. | Method and apparatus for implementing run length limited codes in partial response channels |
US5768293A (en) | 1994-10-31 | 1998-06-16 | U.S. Philips Corporation | Digital transmission and recording system with simple error correction |
US5646950A (en) | 1994-11-18 | 1997-07-08 | Seagate Technology, Inc. | Matched spectral null codes for partial response channels |
US6393598B1 (en) | 1995-04-20 | 2002-05-21 | Seagate Technology Llc | Branch metric compensation for digital sequence detection |
US5691993A (en) | 1995-06-07 | 1997-11-25 | Seagate Technology, Inc. | Rate 4/5 trellis code for PR4 channels with improved error propagation |
US5801649A (en) | 1995-08-03 | 1998-09-01 | Seagate Technology, Inc. | Matched spectral null encoder/decoder |
US5608397A (en) | 1995-08-15 | 1997-03-04 | Lucent Technologies Inc. | Method and apparatus for generating DC-free sequences |
US5960041A (en) | 1995-09-21 | 1999-09-28 | Lucent Technologies Inc. | Method and apparatus for generating high rate codes for recording information on a magnetic medium |
US5731768A (en) | 1996-01-31 | 1998-03-24 | Seagate Technology, Inc. | Method and apparatus for implementing codes with maximum transition run length |
US5781133A (en) | 1996-08-05 | 1998-07-14 | Seagate Technology, Inc. | Method and apparatus for implementing run length limited codes |
US6011497A (en) | 1997-04-01 | 2000-01-04 | Seagate Technology, Inc. | Location dependent maximum transition run length code with alternating code word length and efficient K constraint |
US6052072A (en) | 1997-04-01 | 2000-04-18 | Seagate Technology, Inc. | System and scheme for maximum transition run length codes with location dependent constraints |
US5901158A (en) | 1997-04-22 | 1999-05-04 | Quantum Corporation | Error correction encoder/decoder |
US6111834A (en) | 1997-08-11 | 2000-08-29 | Seagate Technology, Inc. | Data storage system having efficient block code implementation |
US6353912B1 (en) | 1997-11-21 | 2002-03-05 | Sony Corporation | Encoding circuit, encoding method, digital signal transmitting apparatus, and digital signal recording/reproducing apparatus |
US6198582B1 (en) | 1998-06-24 | 2001-03-06 | Seagate Technology Llc | Efficient run length limited code with short interleaved constraint |
US6467060B1 (en) | 1998-06-26 | 2002-10-15 | Seagate Technology Llc | Mass storage error correction and detection system, method and article of manufacture |
US6567610B2 (en) | 1998-08-05 | 2003-05-20 | Kabushiki Kaisha Toshiba | Information recording medium, information recording method and apparatus, and information playback method and apparatus |
US6288655B1 (en) | 1998-09-14 | 2001-09-11 | Seagate Technology Llc | Encoding and decoding techniques for data in 24 bit sequence |
US6535151B2 (en) | 1998-12-21 | 2003-03-18 | Koninklijke Philips Electronics N.V. | Device for encoding n-bit source words into corresponding m-bit channel words and decoding m-bit channel words into corresponding n-bit source words |
US6362757B1 (en) | 1999-08-20 | 2002-03-26 | Electronics And Telecommunications Research Institute | Method and apparatus for encoding MB810 line code with the characteristics of minimum bandwidth and DC-free |
US6480125B2 (en) | 2000-06-09 | 2002-11-12 | Seagate Technology Llc | Method and apparatus for efficient encoding of large data words at high code rates |
US20020014980A1 (en) * | 2000-06-09 | 2002-02-07 | Bernardo Rub | Method and apparatus for efficient encoding of large data words at high code rates |
US6377532B1 (en) | 2000-11-21 | 2002-04-23 | Daewoo Electronics Co., Ltd. | Run-length limited encoding method and apparatus for use in a high density optical storage system |
US6559779B2 (en) | 2001-02-28 | 2003-05-06 | Kabushiki Kaisha Toshiba | Data encoding method, apparatus, and storage medium |
US6696991B2 (en) | 2001-06-05 | 2004-02-24 | Samsung Electronics Co., Ltd. | Coding and decoding method of suppressing DC component in codestream |
US20040066318A1 (en) * | 2002-09-09 | 2004-04-08 | Tsang Kinhing Paul | DC free code design with state dependent mapping |
US20050040976A1 (en) * | 2003-08-13 | 2005-02-24 | Seagate Technology Llc | DC-free code design with increased distance between code words |
Non-Patent Citations (5)
Title |
---|
Chang Ki Jeong and Eon Kyeong Joo, "Trellis, Multilevel, and Turbo Codes with DC-Free Characteristic", IEICE Trans. Fundamentals, Dec. 2000, vol. E38-A, No. 12, pp. 2706-2714. |
K.A.S. Immink and Levente Patrovics, "Performance Assessment of DC-Free Multimode Codes", IEEE Transactions on Communications, Mar. 1997, vol. 45, No. 3, pp. 293-299. |
K.A.S. Immink, "Spectral Null Codes", IEEE Transaction Con Magnetics, Mar. 1990, vol. 26, No. 2, pp. 1130-1135. |
K.A.S. Immink, Paul H. Siegel and Jack K. Wolf, "Codes for Digital Recorders", IEEE Transactions on Information Therory, Oct. 1998, vol. 44, No. 6, pp. 2260-2299. |
Volker Bruan and K.A.S. Immink, "An Enumerative Coding Technique for DC-Free Runlength-Limited Sequences", IEEE Transaction on Communications, Dec. 2000, vol. 48, No. 12, pp. 2024-2031. |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7812744B2 (en) * | 2005-03-16 | 2010-10-12 | Robert Bosch Gmbh | Method for error handling |
US20100013683A1 (en) * | 2005-03-16 | 2010-01-21 | Eberhard Boehl | Method for error handling |
US20080284624A1 (en) * | 2007-05-16 | 2008-11-20 | Ibm Corporation | High-rate rll encoding |
US7486208B2 (en) * | 2007-05-16 | 2009-02-03 | International Business Machines Corporation | High-rate RLL encoding |
US7432834B1 (en) * | 2007-07-05 | 2008-10-07 | International Business Machines Corporation | RLL encoding for LTO-5 tape |
US7683810B2 (en) | 2008-04-23 | 2010-03-23 | Seagate Technology Llc | Code design with decreased transition density and reduced running digital sum |
US20090267811A1 (en) * | 2008-04-23 | 2009-10-29 | Kinhing Paul Tsang | Code design with decreased transition density and reduced running digital sum |
US20100052953A1 (en) * | 2008-09-03 | 2010-03-04 | Kinhing Paul Tsang | Providing running digital sum control in a precoded bit stream using precoder aware encoding |
US7741980B2 (en) | 2008-09-03 | 2010-06-22 | Seagate Technology Llc | Providing running digital sum control in a precoded bit stream using precoder aware encoding |
US20160365112A1 (en) * | 2014-04-24 | 2016-12-15 | Marvell International Ltd. | Systems and methods for decoding using run-length limited (rll) codes |
US9852757B2 (en) * | 2014-04-24 | 2017-12-26 | Marvell International Ltd. | Systems and methods for decoding using run-length limited (RLL) codes |
US20160094248A1 (en) * | 2014-09-30 | 2016-03-31 | Canon Kabushiki Kaisha | Dc-free nyquist-free error correcting line coding |
US10177792B2 (en) * | 2014-09-30 | 2019-01-08 | Canon Kabushiki Kaisha | DC-free nyquist-free error correcting line coding |
US9484949B1 (en) * | 2015-04-09 | 2016-11-01 | Oracle International Corporation | Variable run length encoding of a bit stream |
US9633691B2 (en) * | 2015-08-07 | 2017-04-25 | Kabushiki Kaisha Toshiba | Storage controller, storage device, and method |
Also Published As
Publication number | Publication date |
---|---|
US20060007024A1 (en) | 2006-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7486208B2 (en) | High-rate RLL encoding | |
US5781133A (en) | Method and apparatus for implementing run length limited codes | |
US7002492B2 (en) | High rate running digital sum-restricted code | |
EP0554638A2 (en) | Method and apparatus for implementing PRML codes with maximum ones | |
US6505320B1 (en) | Multiple-rate channel ENDEC in a commuted read/write channel for disk storage systems | |
US6492918B1 (en) | Code word having data bits and code bits and method for encoding data | |
KR20020025239A (en) | Method and apparatus for encoding with unequal protection in magnetic recording channels having concatenated error correction codes | |
US6476737B1 (en) | Rate 64/65 (d=0, G=11/I=10) run length limited modulation code | |
US6417788B1 (en) | High rate runlength limited codes for 10-bit ECC symbols | |
US8230314B1 (en) | Universal parity decoder | |
US6989776B2 (en) | Generation of interleaved parity code words having limited running digital sum values | |
KR100426656B1 (en) | Encoding and decoding technique for data in 24 bit sequences | |
EP1686581A1 (en) | Disk drive system and method | |
JP3478800B2 (en) | Efficient run-length limited code with short interleave constraints | |
US7218256B2 (en) | DC-free code having limited error propagation and limited complexity | |
US6201485B1 (en) | High rate runlength limited codes for 8-bit ECC symbols | |
JPH07118657B2 (en) | Binary data encoding and decoding system | |
US6188335B1 (en) | Method and apparatus having cascaded decoding for multiple runlength-limited channel codes | |
CN1529888A (en) | Methoa and apparatus for suppressing low frequency content in digital data | |
US20060170578A1 (en) | Techniques for generating modulation codes using running substitutions | |
EP1046234A1 (en) | Generation of a runlength limited digital information signal | |
US20030102990A1 (en) | High rate run length limited code | |
US6985320B2 (en) | Method and apparatus for encoding data to guarantee isolated transitions in a magnetic recording system | |
KR20010022814A (en) | Data storage system having efficient block code implementation | |
US6317856B1 (en) | Encoder and a method of encoding for partial response channels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TSANG, KINHING P.;LINK, MICHAEL J.;REEL/FRAME:015775/0130 Effective date: 20040702 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT Free format text: SECURITY AGREEMENT;ASSIGNORS:MAXTOR CORPORATION;SEAGATE TECHNOLOGY LLC;SEAGATE TECHNOLOGY INTERNATIONAL;REEL/FRAME:022757/0017 Effective date: 20090507 Owner name: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATE Free format text: SECURITY AGREEMENT;ASSIGNORS:MAXTOR CORPORATION;SEAGATE TECHNOLOGY LLC;SEAGATE TECHNOLOGY INTERNATIONAL;REEL/FRAME:022757/0017 Effective date: 20090507 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: SEAGATE TECHNOLOGY INTERNATIONAL, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: SEAGATE TECHNOLOGY HDD HOLDINGS, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 Owner name: MAXTOR CORPORATION, CALIFORNIA Free format text: RELEASE;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:025662/0001 Effective date: 20110114 |
|
AS | Assignment |
Owner name: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT, Free format text: SECURITY AGREEMENT;ASSIGNOR:SEAGATE TECHNOLOGY LLC;REEL/FRAME:026010/0350 Effective date: 20110118 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: EVAULT INC. (F/K/A I365 INC.), CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY INTERNATIONAL, CAYMAN ISLANDS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY US HOLDINGS, INC., CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 Owner name: SEAGATE TECHNOLOGY LLC, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE;REEL/FRAME:030833/0001 Effective date: 20130312 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.) |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.) |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20180221 |