250 likes | 389 Views
Time-Varying Encoders for Constrained Systems - Jonathan J. Ashley, Brian H. Marcus. Jungwon Lee jungwon@stanford.edu. Outline. Introduction Time-Varying Finite-State Encoders Approximate Eigenvectors Time-Varying State Splitting Sliding-Block Decoders Conclusion. Introduction.
E N D
Time-Varying Encoders for Constrained Systems- Jonathan J. Ashley, Brian H. Marcus Jungwon Lee jungwon@stanford.edu
Outline • Introduction • Time-Varying Finite-State Encoders • Approximate Eigenvectors • Time-Varying State Splitting • Sliding-Block Decoders • Conclusion EE392P Project: Time-Varying Encoders for Constrained Systems
Introduction • Data-to-codeword assignment • Can significantly affect the complexity and performance of the code • p small: reasonably good assignments by an ad hoc approach • p large: hard to find a good assignment • Break down the coding problem into smaller subproblems • Periodically time-varying constraints EE392P Project: Time-Varying Encoders for Constrained Systems
Introduction • Example 1: 16:19 -> 8:9/8:10 • low-complexity & low error rate x x xx x x EE392P Project: Time-Varying Encoders for Constrained Systems
Introduction • Example 2: PRML (4,4) • Set S of all the binary sequences such that • maximum run of 0’s is 4, and • maximum run of 0’s in both the odd and even interleaves is 4. • G is a labeled graph whose states are the ordered pairs • i: length of the run of 0’s in the preceding interleave • j: length of the run of 0’s in the current interleave • Six of 25 possible states are not reachable. So, G has only 19 states. • Two phase rate 8:8/8:9 (0,1)-SBD code • Neither rate 16:17 block code nor block-decodable code • PRML(4,4) is minimal to support a code at rate 16:17 – capacities of PRML(3,4) and PRML(4,3) are less than 16/17. EE392P Project: Time-Varying Encoders for Constrained Systems
Introduction • Generality of time-varying encoders • States in the different phases can have different lengths of input tags and output labels. • States in the same phase have the same length. • Not restricted to codes constructed by state-splitting • Time-varying approach can be used for look-ahead or combined look-ahead/state-splitting encoders. • Time-varying state splitting as an application of variable-length state splitting EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying Encoders • k-partite labeled graphs • Vertices divided into k subsets called phases: • States: k copies of vertex set of G • Edges: u v (u,i) in Vi (v,i+1) in Vi+1 EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying Encoders • presented by • set of sequences in S, each expressed as a sequence of nonoverlapping qi-blocks • Given and ,a -encoder is a labeled graph s.t. a) each sequence of output labels obtained by traversing the graph belongs to S; b) each state in phase i has exactly ni outgoing edges; c) is lossless. EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying Encoders • A tagged encoder: ni-ary input labels for every state in phase i • Rate encoder into S: tagged -encoder, where given • Proposition 1: Let . The following are equivalent. 1) There is a rate encoder into S. 2) There is a rate encoder into S. 3) EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying Encoders • Proof of proposition 1 • 1) => 2): restrict to the states of phase 0 • 2) => 1): assume k=2 • 2) <=> 3): results of the ordinary state-splitting algorithm • PRML (4,4): capacity = 0.9614 > 16/17 = 0.9412 • There is a rate 8:8/8:9 encoder. EE392P Project: Time-Varying Encoders for Constrained Systems
Approximate Eigenvectors • k-partite matrix: adjacency matrix of a k-partite graph • Adjacency matrix of : • PRML (4,4): rate 8:8/8:9 encoder EE392P Project: Time-Varying Encoders for Constrained Systems
Approximate Eigenvectors • : diagonal matrix indexed by the states of with diagonal entries where u is a state in phase i • -approximate eigenvector: a nonnegative integer vector x such that • • Proposition 2: Let be a k-partite labeled graph, , and . Then, there is an -approximate eigenvector if and only if . EE392P Project: Time-Varying Encoders for Constrained Systems
Approximate Eigenvectors • Proof of proposition 2 • => • -approximate eigenvector is an ordinary -approximate eigenvector. • • <= • There is an -approximate eigenvector x. ny is -approximate eigenvector. EE392P Project: Time-Varying Encoders for Constrained Systems
Approximate Eigenvectors • Modified Franaszek Algorithm • PRML (4,4): EE392P Project: Time-Varying Encoders for Constrained Systems
Approximate Eigenvectors • Merging state v into another state u • u and v are in the same phase. • u and v have the same approximate eigenvector entry. • Any output label sequence generated from u can also be generated from v. • PRML (4,4): • has eight states. • -approximate eigenvector is, where . EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying State Splitting • x-consistent partition: , where i is the phase of state u • x-consistent splitting: state splitting based on such a partition EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying State Splitting • Encoder construction given and • Find an -approximate eigenvector using the modified Franaszek algorithm. • Do a sequence of x-consistent splittings. • End with a k-partite lossless presentation s.t.the entries of the induced -approximate eigenvector are at most 1. • After deleting states with vector entry 0, each state of phase i has out-degree at least . • The resulting graph is an -encoder. EE392P Project: Time-Varying Encoders for Constrained Systems
Time-Varying State Splitting • More merging • u and v are in the same phase. • Any output label sequence generated from u can also be generated from v. • The weight m of u is less than the weight n of v. => m descendants of u can be merged with m of the n descendants of v. • PRML (4,4): • After state-splitting, 22 states in phase 0 and 30 states in phase 1 • After merging, 8 states in phase 0 and 11 states in phase 1 EE392P Project: Time-Varying Encoders for Constrained Systems
x-m/y-m x0/y0 xa/ya e-m e0 ea x-m’/y-m x0’/y0 xa’/ya x0 = x0 ’ e-m’ e0’ ea’ x-m/y-m x0/y0 xa/ya e-m e0 ea e0 = e0 ’ x-m’/y-m x0’/y0 xa’/ya e-m’ e0’ ea’ Sliding-Block Decoders • Sliding-block decodable: begin in the same phase • (m,a)-definite: begin in the same phase EE392P Project: Time-Varying Encoders for Constrained Systems
Sliding-Block Decoders • Finite-type constrained system • G: finite memory • : (m,0)-definite • State splitting of an (m,a)-definite graph always yields an (m,a+1)-definite graph. • Proposition 3: Let S be a finite-type constrained system. Let and . Then, there is a sliding-block decodable rate encoder into S if and only if . EE392P Project: Time-Varying Encoders for Constrained Systems
x0/y0 x1/y1 xa/ya (u,i) e0 e1 ea x0’/y0 x1’/y1 xa’/ya (u’,i) e0’ e1’ ea’ Sliding-Block Decoders • Proposition 4:Then, (0,a)-sliding-block decodable. • PRML (4,4): The compatibility conditions with one block of anticipation and no memory are satisfied. x0 = x0 ’ EE392P Project: Time-Varying Encoders for Constrained Systems
Sliding-Block Decoders • The memory and/or anticipation of a sliding-block decoder can vary from phase to phase. • Case of only two phases.Let x={x0, x1}. If , then only one round of splitting will be needed because • states of phase 0 need not to be split; • for any edge starting in phase1, its terminal state is in phase 0 and so its weight is 1; it follows that there is an x-consistent splitting that reduces all weights of phase 1 to 1. • The anticipation of the resulting decoder will be 1 in phase 0 and 0 in phase 1 in the finite-type case. EE392P Project: Time-Varying Encoders for Constrained Systems
Sliding-Block Decoders • Proposition 5: Let x={x0, x1, …, xk-1}. If , then at most k-1 rounds of splitting are required. In the finite-type case, in phase j, the sliding-block decoder will have anticipation at most k-j-1. • Sliding block decoder window size • In this case, the sliding-block decoder will stop looking ahead periodically. • If the sliding-block decoder has no memory, the code is actually block-decodable on blocks of length . EE392P Project: Time-Varying Encoders for Constrained Systems
Conclusion • The paper showed how to adapt the state-splitting algorithm to the time-varying setting. • The framework of time-varying encoders is useful to design high-rate codes with reduced decoder error propagation and reduced complexity. • PRML (4,4) constraint is an example of a constrained system whose design benefits a lot from the time-varying approach. EE392P Project: Time-Varying Encoders for Constrained Systems
References • Main paper: • J. J. Ashley, and B. H. Marcus, “Time-Varying Encoders for Constrained Systems: An approach to Limiting Error Propagation”, IEEE Trans. on Inform. Theory, vol. 46, May 2000. • Other papers: • R. L. Adler, J. Friedman, B. Kitchens, and B. H. Marcus, “State splitting for variable-length graphs,” IEEE Trans. Inform. Theory, vol. IT-32, pp. 108-113, Jan. 1986. • B. H. Marcus, P. H. Siegel, and J. K. Wolf, “Finite-state modulation codes for data storage,” IEEE J. Select. Areas Commun., vol. 10, pp.5-37, Jan. 1992. • C. D. Heegard, B. H. Marcus, and P. H. Siegel, “Variable-length state splitting with applications to average runlength-constrained (ARC) codes”, IEEE Trans. Inform. Theory, vol. 37, pp.759-777, May 1991. EE392P Project: Time-Varying Encoders for Constrained Systems