190 likes | 316 Vues
This lecture addresses the challenges and solutions for optimizing read cycles in flash memory by utilizing constrained balanced codes. It discusses the effects of charge leakage and the importance of dynamic reading thresholds in minimizing bit error rates (BER). The lecture further explores practical implementations of balanced codes, detailing how to ensure a balanced number of stored values (0s and 1s) and the characterization of sneak paths in memory arrays. Key concepts include dynamic thresholds, sneak path constraints, and the significance of isolated zero-rectangle free arrays.
E N D
Read Cycle of Flash Memories • Compare cell levels with a threshold (or a sequence of thresholds) fixed threshold 0 1 1 0 1 0 1 0
Balanced Codes: Motivation • Charge Leakage voltage drift in one direction • Fixed threshold vsdynamic threshold • Dynamic reading thresholds reduces the BER • A balanced vector satisfies #0’s = #1’s
Balanced Codes: Motivation • In writing, half of cells store 0 and the other half store 1 • In reading, the n/2 cells with lower voltages are read as 0 The other n/2 cells with higher voltages are read as 1 • Relative ranking is most likely preserved fixed threshold 0 1 1 0 1 0 1 0
Balanced Codes: Motivation • In writing, half of cells store 0 and the other half store 1 • In reading, the n/2 cells with lower voltages are read as 0 The other n/2 cells with higher voltages are read as 1 • Relative ranking is most likely preserved fixed threshold 0 1 1 0 1 0 1 0 0 0 1 0 0 0 0 0 fixed
Balanced Codes: Motivation • In writing, half of cells store 0 and the other half store 1 • In reading, the n/2 cells with lower voltages are read as 0 The other n/2 cells with higher voltages are read as 1 • Relative ranking is most likely preserved fixed threshold dynamic threshold 0 1 1 0 1 0 1 0 0 0 1 0 0 0 0 0 fixed dynamic 0 1 1 0 1 0 1 0
Balanced Codes: Problems • Problems: • How to guarantee that at most half of the cells have value 1? • How to guarantee that exactly half of the cells have value • Problem 1 for two dimensional array
Memristors v Resistor Capacitor Inductor i q Memristor φ L.O. Chua, “Memristor – The Missing Circuit Element,” IEEE Trans., 1971
Practical Memristors • 2008 Hewlett Packard ROFF Current [mA] RON Voltage [V] D.B. Strukov et al, “The missing memristor found,” Nature, 2008
Vg cij cij=0 high resistance low current sensed cij=1 low resistance high current sensed Vo RL
Vg 1 1 0 1 cij=0 high resistance low current sensed cij=1 low resistance high current sensed 1 1 Vo RL Desired Path Sneak Path
Sneak Path • An array A has a sneak path of length 2k+1 affecting the (i,j) cell if • aij=0a • There exist r1,…,rkand c1,…ck such that aic1 = ar1c1 = ar1c2 = ⋯ = arkck= arkj= 1a • An array A satisfies the sneak-path constraint if it has no sneak paths and then is called a sneak-path free array
Characterization of Sneak Paths • An array A has an isolated zero-rectangle if it contains a rectangle with exactly a single zero • An array satisfies the isolated zero-rectangle constraint if it has no isolated zero-rectangles and is called an isolated zero-rectangle free array • Theorem: The sneak path constraint and the isolated zero-rectangle constraint are equivalent
Characterization of Sneak Paths • An array A has an isolated zero-rectangle if there is a rectangle with exactly a single zero • An array satisfies the isolated zero-rectangle constraint if it has no isolated zero-rectangles and is called an isolated zero-rectangle free array • Theorem: The sneak path constraint and the isolated zero-rectangle constraint are equivalent • Lemma: An array is an isolated zero-rectangle free array iff the 1s in every two rows either completely overlap or are disjoint
Characterization of Sneak Paths • Theorem: The sneak path constraint and the isolated zero-rectangle constraint are equivalent • Lemma: An array is an isolated zero-rectangle free array iff the 1s in every two rows either completely overlap or are disjoint 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0
Number of Sneak Paths Arrays • N(m,n) = number of mⅹn isolated 0-rectangle free arrays • Lemma 1: • Lemma 2: • S(k,l) = number of ways to partition kelements into l nonempty subsetsaka the Strirling number of second kind
Number of Sneak Paths Arrays • N(m,n) = number of mⅹn isolated 0-rectangle free arrays • Lemma 1: • Lemma 2: • N(m,n) ≈ (m+n)log(m+n)