QBF-BASED SYNTHESIS OF OPTIMAL WORD-SPLITTING IN APPROXIMATE - - PowerPoint PPT Presentation

qbf based synthesis of optimal word splitting in
SMART_READER_LITE
LIVE PREVIEW

QBF-BASED SYNTHESIS OF OPTIMAL WORD-SPLITTING IN APPROXIMATE - - PowerPoint PPT Presentation

QBF-BASED SYNTHESIS OF OPTIMAL WORD-SPLITTING IN APPROXIMATE MULTI-LEVEL CELLS Daniel E. Holcomb Kevin Fu University of Michigan 2 March 2014 QBF Synthesis of Optimal Word-Splitting 2 Motivation 2 March 2014 QBF Synthesis of Optimal


slide-1
SLIDE 1

QBF-BASED SYNTHESIS OF OPTIMAL WORD-SPLITTING IN APPROXIMATE MULTI-LEVEL CELLS

Daniel E. Holcomb Kevin Fu University of Michigan

slide-2
SLIDE 2

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Motivation

2

slide-3
SLIDE 3

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Motivation

  • Multi-level cells (MLCs)
  • Store 4 bits per cell using 16 discrete levels

2

slide-4
SLIDE 4

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Motivation

  • Multi-level cells (MLCs)
  • Store 4 bits per cell using 16 discrete levels
  • Approximate computing
  • Save resources by allowing errors [Sampson et al. ’13]
  • Errors between nearby levels
  • But still want to minimize impact of errors

2

slide-5
SLIDE 5

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Motivation

  • Multi-level cells (MLCs)
  • Store 4 bits per cell using 16 discrete levels
  • Approximate computing
  • Save resources by allowing errors [Sampson et al. ’13]
  • Errors between nearby levels
  • But still want to minimize impact of errors
  • Design decisions
  • Data words don't fit in one MLC
  • How to split word across multiple MLCs?

2

slide-6
SLIDE 6

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

??? ???

Write Operation Read Operation

3

slide-7
SLIDE 7

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation

3

slide-8
SLIDE 8

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation

3

slide-9
SLIDE 9

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation

3

slide-10
SLIDE 10

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96

3

0 1 1 0 0 0 0 0

slide-11
SLIDE 11

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96

3

write 3 write 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0

slide-12
SLIDE 12

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96

3

write 3 read 4 write 0 read 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0

slide-13
SLIDE 13

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96

3

write 3 read 4 MLC error = 1 write 0 read 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0

slide-14
SLIDE 14

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96 read 16

3

write 3 read 4 MLC error = 1 write 0 read 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0

slide-15
SLIDE 15

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96 read 16 word error = 80

3

write 3 read 4 MLC error = 1 write 0 read 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0

slide-16
SLIDE 16

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Example

MLCs: Data Word:

Write Operation Read Operation write 96 read 16 word error = 80

3

write 3 read 4 MLC error = 1 write 0 read 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0

Assuming a fixed upper bound on MLC error, can we find a mapping between data word and MLCs that minimizes worst-case word error?

slide-17
SLIDE 17

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

DW C1R C0R S

XBAR XBAR

slide-18
SLIDE 18

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit

DW C1R C0R S

XBAR XBAR

slide-19
SLIDE 19

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC

DW C1R C0R S

XBAR XBAR

slide-20
SLIDE 20

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC

DW C1R C0R S C1W C0W DR

XBAR XBAR

slide-21
SLIDE 21

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds

DW C1R C0R S C1W C0W DR

XBAR XBAR

slide-22
SLIDE 22

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds

DW C1R C0R S C1W C0W DR

XBAR XBAR

(ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

slide-23
SLIDE 23

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds

DW C1R C0R S C1W C0W DR

XBAR XBAR

ΦW ORD

  • ΦW ORD :=
  • |DW − DR| ≤ ED
  • (ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

slide-24
SLIDE 24

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds
  • Gatewise translate circuit to CNF

clauses

DW C1R C0R S C1W C0W DR

XBAR XBAR

ΦW ORD

  • ΦW ORD :=
  • |DW − DR| ≤ ED
  • (ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

slide-25
SLIDE 25

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds
  • Gatewise translate circuit to CNF

clauses

  • Synthesis by solving Boolean formula

with appropriately quantified variables

DW C1R C0R S C1W C0W DR

XBAR XBAR

ΦW ORD

  • ΦW ORD :=
  • |DW − DR| ≤ ED
  • (ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

slide-26
SLIDE 26

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds
  • Gatewise translate circuit to CNF

clauses

  • Synthesis by solving Boolean formula

with appropriately quantified variables

DW C1R C0R S C1W C0W DR

XBAR XBAR

ΦW ORD

  • ΦW ORD :=
  • |DW − DR| ≤ ED
  • ∃S∀DW ∀CR

1 ∀CR 0 (ΦMLC =

⇒ ΦW ORD)

(ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

slide-27
SLIDE 27

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds
  • Gatewise translate circuit to CNF

clauses

  • Synthesis by solving Boolean formula

with appropriately quantified variables

DW C1R C0R S C1W C0W DR

XBAR XBAR

ΦW ORD

  • ΦW ORD :=
  • |DW − DR| ≤ ED
  • ∃S∀DW ∀CR

1 ∀CR 0 (ΦMLC =

⇒ ΦW ORD)

(ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

  • If QBF solution exists,

solver produces assignment to existentially quantified variables

  • This assignment

guarantees property to always hold

slide-28
SLIDE 28

QBF Synthesis of Optimal Word-Splitting 2 March 2014

QBF Formulation of Word-Splitting

4

  • QBF: SAT with alternating quantifiers
  • Formulate QBF-based synthesis by way
  • f combinational circuit
  • Crossbars implement mapping

between data words and MLCs

  • 64 bits specify xbar connections
  • 8-bit written dataword
  • 4-bit value read from each MLC
  • Check word and MLC error bounds
  • Gatewise translate circuit to CNF

clauses

  • Synthesis by solving Boolean formula

with appropriately quantified variables

DW C1R C0R S C1W C0W DR

XBAR XBAR

ΦW ORD

  • ΦW ORD :=
  • |DW − DR| ≤ ED
  • ∃S∀DW ∀CR

1 ∀CR 0 (ΦMLC =

⇒ ΦW ORD)

(ΦMLC

ΦMLC :=

  • |CW

1

− CR

1 | ≤ EC

  • |CW

− CR

0 | ≤ EC

  • If QBF solution exists,

solver produces assignment to existentially quantified variables

  • This assignment

guarantees property to always hold

slide-29
SLIDE 29

QBF Synthesis of Optimal Word-Splitting 2 March 2014

Results

  • QBF-based synthesis to find optimal word-splitting

5 0.2 0.4 20 40 60 80 100 120 140 probability word-level error interleaved 0.2 0.4 20 40 60 80 100 120 140 probability word-level error synthesized 0.2 0.4 20 40 60 80 100 120 140 probability word-level error synthesized, with remapping