650 likes | 755 Views
A bit of magic. A.J. Han Vinck. Some German history in China (1897-1914). Tsingtao (Germania) brewery. My cooperation with Chinese scientists. Background Application Fang-Wei Fu Information theory Flash Memory Yuan Luo Error Control Coding Networking
E N D
A bitofmagic A.J. Han Vinck A.J. Han Vinck, China 2012
Some German history in China (1897-1914) Tsingtao (Germania) brewery
My cooperation with Chinese scientists Background Application • Fang-Wei Fu Information theory Flash Memory • Yuan Luo Error Control Coding Networking • Yanling Chen Wiretap channel Biometrics • Feng-Wen Sun Mathematics Convolutional Codes Common link? Fang-Wei Fu from Nankai University A.J. Han Vinck, Jinan 2011
Error correction isneeded in hightechdevices A.J. Han Vinck, China 2012
fundamental limitssetby Shannon (1948) The Bell System Technical Journal, Vol. 27, pp. 379–423, 623–656, October, 1948. Bell Labs, 1955. Fundamental problem: reproducingatthereceiver a messageselectedatthetransmitter Shannon‘scontribution: - bound on theefficiency (capacity) - howtoachievethebound A.J. Han Vinck, China 2012
Introduction to the basic concepts message: Alpha codeword: (0 1 0 1 0 1 0 1) transmission error (0 0 0 1 0 1 0 1) decode (0 1 0 1 0 1 0 1) translate: Alpha How can we do that? A.J. Han Vinck, Jinan 2011
It works as follows • Use the difference in transmitted vectors to recover the transmitted original Example: 4 messages encoded as A 00 000 B 01 011 C 10 101 D 11 110 the words differ in at least 3 positions Hence, one difference (error) can be detected and corrected: receive: 10110 the transmitted message is? 11110 A.J. Han Vinck, Jinan 2011
1-Error correctionstartedby Hamming (1950) 1 2 3 (3,1) (7,4) 123 000 111 (31,26) 3567 124 0000 000 1000 110 0100 101 ••• 1111 111 minimumdistancedmin= 3 A.J. Han Vinck, China 2012
Whataretheclassical research problems Codebook: maximize - # ofcodewordsoflength n - minimumdistancedmin • Channel characterization: • Types oferrors; memory in thenoisebehavior ? • Channel Capacity? • Decoder: • Design of a decoding/decisionalgorithm • Minimize complexity A.J. Han Vinck, China 2012
Lecturecontent Goal:giveexamples, different from just errorcorrection - improvestorageefficiency in flashmemory - givebiometricsprivacy - code design for variable efficiency in networking - permutationcodesfor non-traditional errormodels A.J. Han Vinck, China 2012
Ibm punch card „a flash memory“ Write, read and refresh Write, read and erase, but ••• Write, read and throw away, but ••• On the Capacity of Write-Unidirectional Memories with Nonperiodic Codes”, IEEE Transactions on Information theory, April 2004, pp. 649-656, (Fang-Wei Fu, A.J. Han Vinck, Victor Wei, Raymond Yeung) A.J. Han Vinck, China 2012
A modern ROM: the Flash Memory Cell array in a flash memory A flash memory cell (Floating gate) • A flash memory cell stores charge / data • We can only increase the cell charge • If charge top level is reached, erase memory block A.J. Han Vinck, China 2012
Writing in a q-ary flash memory cell Strategy for writing:increase charge content or stay at presentcontent Start at 0 cell charge level value bit Input 1, 0, 1, 0, 0, 0, 1, 1, 0, 1 1, 2, 3, 4, 4, 4, 5, 5, 6, 7 Cell Level 0 7 1 6 0 5 1 4 0 3 1 2 0 1 1 0 0 A.J. Han Vinck, 2011 A.J. Han Vinck, China 2012
Use thememory T=4 times: how many sequences we can write into the memory? q = 2: T+1 = 5 words write 0000 0011 0111 1111 0001 Note: writerandreader must knowthecontent! q = 3: 5 +T(T-1)/2 = 11 words write 0000 0011 0111 1111 0001 0012 0112 1112 0122 1122 1222 Capacity: log2|#sequences | ≈ (q-1) log2 (T+1) A.J. Han Vinck, China 2012
Performance of the 1 step up strategy probability P(1) = 1 – P(0) = p p 1-p cell level 1 0 1 0 1 0 1 0 average number of writes to reach top level Probability (level change) = 2p(1-p) A.J. Han Vinck, China 2012
Example of Codes: 2 bits in 3 cellsbefore erasing 2 bits 2 bits A.J. Han Vinck, China 2012
CodingforNoisyBiometricsusedas a key/password I am Han, can I come in? • - verifyclaimedidentitywithstoredinformation • problems: • Errors atauthentication: FalseRejection(FRR)/ FalseAcceptance(FAR) • Leakage: attackerfindsinformationaboutbiofrom Data Base (DB) A.J. Han Vinck, China 2012
the Juels-Wattenberg scheme (binary) b‘(io) b(io) Random Codeword c c b b‘ = c e c b c b c b Enrollment Authentication Hash(c) = ? Data Base Hash(c) Y/N Hash(c) Ourcontributions: useknowledgeofbioatenrollmenttoencode use c b fromdatabasetoimprovedecision on c Yanling Chen and Han Vinck, A fresh look into the biometric authentication: Perspective from Shannon’s secrecy system and a special wiretap channel, Secrypt, 2011 V. B. Balakirsky, A. R. G. and A. J. Han Vinck, Permutation block coding from biometrical authentication, Proc. 7th Int. Conf. on Computer Science and Info. Technologies, 2009 A.J. Han Vinck, China 2012
Juels-Wattenbergfor RS codes Secret s { 1,2,•••,2k } → RS codeword c = c1,c2,c3,••• ,cn c* b(io) changes n - t positions b => --- --- ----- Enrollment:store c* Authentication:b‘ pointsat n- t „incorrect“ positions in c* these positions are considered as erasures: for t k : dmin n– k + 1 – (n-t) = t – k + 1 Increasing k reduces FAR, but increases FRR A.J. Han Vinck, China 2012
Research topics we work on • Translation fromBioto Template • Iris, fingerprint, etc • Investigation oferrorbehavior • Burst, impulsive, non-linear • Performance estimationfor real data Practicalperformance FAR, FRR, etc. • Usingothertechniques, such asdatacompression • Fault tolerant hashing 011001… 000001… A.J. Han Vinck, China 2012
Mondriaan A.J. Han Vinck, China 2012
Optimum distanceprofile (intro) Encoder for binary linear(n,k) codes: infogeneratormatrixcodeword k bits n nbits x •k G = c Example: equivalent Hamming code generators with dmin = 3 ( minimum # of differences) 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 0 0 1 0 0 0 1 0 1 1 1 0 1 1 0 1 0 The matricesgenerate the same codewords G = ≡ A.J. Han Vinck, China 2012
Motivation (2) 32 • UMTS: starting code (32,6) Reed Muller code, dmin = 16 6 • UMTS: extend to (32,10) code in best possible way IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 56, NO. 9, SEPTEMBER 2010 4309 A Lower Bound on the Optimum Distance Profiles of the Second-Order Reed–Muller Codes Yanling Chen and A. J. Han Vinck IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 56, NO. 3, MARCH 2010 1007 On the Optimum DistanceProfilesAbout Linear Block Codes Yuan Luo, A. J. Han Vinck, andYanling Chen A.J. Han Vinck, China 2012
Motivation (2) • From (32,6), dmin= 16 to bound • (32,7) dmin 14 • (32,8) dmin 13 • (32,9) dmin 12 • (32,10) dmin 12 • (32,11) dmin 12 is also possible ! QUESTION: is this possible? REFERENCE: Markus Grassl (grassl@ira.uka.de). A.J. Han Vinck, China 2012
Optimum distance profile (for the Hamming code) G0 = one row of G: dmin = 7 G1 = add one row of G: dmin = 3 PROFILE : (7, 3, 3, 3) G2 = add one row of G: dmin = 3 G3 = add one row of G: dmin = 3 G fortheHamming CODE A.J. Han Vinck, China 2012
Optimum distanceprofile (idea 2) G0 = one row of G: dmin = 4 G1 = add one row of G: dmin = 4 PROFILE : (4, 4, 4, 3) G2 = add one row of G: dmin = 4 G3 = add one row of G: dmin = 3 G fortheHamming CODE A.J. Han Vinck, China 2012
Research problem: optimizedistanceprofile Inverse Optimum Distance profile: Д:= (0, 1, 2,3 ) Ex: (7,3,3,3) better than (4,4,4,3) • General problem: find ODP forclassesofcodes • like: Reed-Muller • BCH • Golaycode • ••• A.J. Han Vinck, China 2012
Binary Extended Golay code (24,12,8) Binary Extended Golay code (24,12,8) • UseGrassl (http://www.codetables.de/) # rows: 12 11 10 9 8 7 6 5 4 3 2 1 • Dinvupper-bound := (8,8,8,8,8, 10,10, 12, 12,13,16,24) • ODPinv-BGolay = (8,8,8,8,8, 8, 8, 8, 12,12,12,24) Why? 1. All onesshouldbethefirstrow (weight 24) hence10= 16 cannotoccur Codewordweights: 0, 8, 12, 16, 24 2. thereis a unique (24,5,12) code ( codewordweights: 12 and 16) D.B. Jaffe, optimal binary linear codesoflength 30, Discr. Math., vol 223, pp. 135-155, 2000 3. a codewith n = 24 and k = 4, d = 12 exists 3 2 1 Codewords: (1111111-1111111-11111111), (10100110-10100110-10100110) (01001110-01001110-01001110), (00111010-00111010-00111010) A.J. Han Vinck, China 2012
The Optimum distanceprofile in practice CWTS STD-TDD-103 Currently, a [32,10,12] sub-code of the second order Reed-Muller Code is used in the TFCI coding. An easy improvement can be obtained by extending it to a [32,11,12] sub-code . Figure 6: Channel coding of TFCI bits A.J. Han Vinck, China 2012
Escher A.J. Han Vinck, China 2012
Permutation codes • Idea: present codewords as balls in an array 6 word 1 5 4 word 2 number 3 = 4 2 1 time 1 4 5 3 2 6 • One ball per column and one per row A.J. Han Vinck, China 2012
effect of noise on permutation codes (simplified) t f Transmitted Background-insertion Background-deletion Impulsive-broadband narrowband-jammer frequency selective fading A.J. Han Vinck, China 2012
A practical example: Spread-FSK f0 f1 2-FSK mode Send: f0 or f1 : Detector: uses FSK or On-Off keying mode Advantages:robust against narrowband noise f f1 On-off mode f alternative Permutation code, dmin = 2 Send: (f0,f1 ) or (f1,f0 ) i.e. R = 1/2 Detector: select max. # of agreements Advantages:robust against: narrowband + impulsive noise + random f0 f1 t A.J. Han Vinck, China 2012
Code parameters • Upperbound on cardinality of the code Q1: when do we achieve equality? Q2: if not, what is the upperbound • References: - Ian Blake, Permutation codes for discrete channels (1975, IT) - P. Frankl and M. Deza, On the max. # of Permutationswithgiven Max. orMin. Distance (1977, Jrnl of Comb. Th.) - T. Klöve: |C| = 18 for M = 6, D = 5 instead of 30 # of permutations reduction for distance A.J. Han Vinck, China 2012
Someanswerstothequestions • all cases M < 7 solved • Interesting cases left ? • Dp = 2 3 4 5 6 7 8 9 10 • 6 x xx18 x |C| = 18 istheKlöve (2000) result • 7 x x? ?x xproofthatthemaxcodesizeis 18 • M 8 x x? ?x xxforDp = 5, M = 6. • 9 x x? ?? x xx M! = 720 possiblecodewords • 10 x x? ?? ? x ?x A.J. Han Vinck, China 2012
Existing code constructions • Dp = M; Dp = M-1 , where M is prime (power) • Dp = 2; Dp = 3 • The Mathieu groups • M11 Dp = 8 |C| = 7920 • M12 Dp = 8 |C| = 95040 • Codes with distance Dp = M-2 exist for • M = 1 + pn |C| = pn(1+pn)(pn-1) A.J. Han Vinck, China 2012
Code performance Performance: conform • Correct decoding if # error events ( impulse + narrow + background + fading ) < Dp an error event hits a codeword only at one place • An efficient trellis based decoding scheme has been designed for low complexity decoding Hendrik C. Ferreira, A. J. Han Vinck, Theo G. Swart, Ian de Beer. Permutation trelliscodes. IEEE Transactions on Communications, 2005: 1782~1789 A.J. Han Vinck, China 2012
Conclusions • extremely suited for dirty channels • Impulse-, narrow band -, background noise, fading • Problems to work on: • Cardinality of the codes: upperbound can be obtained, but not always • Encoding complexity no linear encoding • Decoding complexity no easy decoding algorithm due to non-linearity • Performance analysis on real channels • Applications in Powerline Communications and Flash memories - Coded Modulation for Powerline Communications, In AEÜ Journal, 2000, pp. 45-49, Jan 2000, A.J. Han Vinck - Rank Modulation for Flash Memories, A. Jiang, Member, R. Mateescu, M. Schwartz, J.Bruck, IEEE Tr. IT, JUNE 2009 A.J. Han Vinck, China 2012
Our (Olaf hooijenandme) modem design based on permutationcodes, 1997, Cebit Hannover A.J. Han Vinck, China 2012
Some lessons I learned • Coding has a mathematical and a systems aspect • Applications are widespread: from networking to chip level • Implementations lead to low complexity algorithms • Viterbi (Convolutional Codes) • Berlekamp Massey (RS-codes) • Background knowledge in Information and Communication theory and combinatorics necessary • Cooperation with different disciplines important A.J. Han Vinck, China 2012
Myscientific genealogy • Friedrich Leibniz (1597, Leipzig) • Carl Friedrich Gauß (Göttingen) • Ernst Adolph Guillemin (München) • Robert Mario Fano (MIT) • John McReynolds Wozencraft (MIT) • Thomas Kailath (Stanford) • Johan Pieter M. Schalkwijk (Stanford-TUE) • Me (University Duisburg-Essen, Germany) A.J. Han Vinck, Jinan 2011
my scientific Genealogy (coincidence?)http://genealogy.math.ndsu.nodak.edu/ • Friedrich Leibnitz (1597, Leipzig) • Carl Friedrich Gauß (Göttingen) • John M. Wozencraft (MIT) (1925-2009) • Me (University Duisburg-Essen, Germany) • Digital Communications and - Codingtechniques A.J. Han Vinck, China 2012
EARLIEST DEPICTION OF JUGGLING knownshowsskillfulEgyptianwomen on the 15th Beni Hassan tombof an unknownprincefromtheMiddleKingdomperiodofabout 1994 to 1781 B.C Shannon jugglingmachineandjugglingtheorem A.J. Han Vinck, China 2012
Traditional Jeju (Korean) Channel Codeis there a Chinese equivalent? A.J. Han Vinck, China 2012
A Relatedproblem: codegenerator partitioning d2 d1 Code generator make d2as large aspossibleforanygeneratorfor a specificcode A.J. Han Vinck, China 2012
Optimum distanceprofile (idea 1) Start with G fortheHamming CODE G0 = 4 rows of G: dmin = 3 PROFILE (3, 4, 4, 4) G1 = delete one row of G: dmin = 4 G2 = delete one row of G: dmin = 4 G3 = 1 row of G: dmin = 4 A.J. Han Vinck, China 2012
Optimum distanceprofile (idea 1) Start with G fortheHamming CODE G0 = 4 rows of G: dmin = 3 PROFILE (3, 3, 3, 7) G1 = delete one row of G:dmin = 3 G2 = delete one row of G: dmin = 3 G3 = 1 row of G: dmin = 7 A.J. Han Vinck, China 2012