qbf based synthesis of optimal word splitting in
play

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


  1. QBF-BASED SYNTHESIS OF OPTIMAL WORD-SPLITTING IN APPROXIMATE MULTI-LEVEL CELLS Daniel E. Holcomb Kevin Fu University of Michigan

  2. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 2 Motivation

  3. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 2 Motivation • Multi-level cells (MLCs) • Store 4 bits per cell using 16 discrete levels

  4. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 2 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

  5. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 2 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?

  6. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLCs: ??? ??? Data Word: Read Operation Write Operation

  7. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLCs: Data Word: Read Operation Write Operation

  8. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLCs: Data Word: Read Operation Write Operation

  9. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLCs: Data Word: Read Operation Write Operation

  10. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLCs: 0 1 1 0 0 0 0 0 Data Word: write 96 Read Operation Write Operation

  11. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example write 0 write 3 0 0 1 1 0 0 0 0 MLCs: 0 1 1 0 0 0 0 0 Data Word: write 96 Read Operation Write Operation

  12. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example write 0 read 4 read 0 write 3 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 MLCs: 0 1 1 0 0 0 0 0 Data Word: write 96 Read Operation Write Operation

  13. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLC error = 1 write 0 read 4 read 0 write 3 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 MLCs: 0 1 1 0 0 0 0 0 Data Word: write 96 Read Operation Write Operation

  14. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLC error = 1 write 0 read 4 read 0 write 3 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 MLCs: 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 Data Word: write 96 read 16 Read Operation Write Operation

  15. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLC error = 1 write 0 read 4 read 0 write 3 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 MLCs: 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 Data Word: write 96 read 16 Read Operation Write Operation word error = 80

  16. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 3 Example MLC error = 1 write 0 read 4 read 0 write 3 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 MLCs: Assuming a fixed upper bound on MLC error , can we find a mapping between data word and MLCs that minimizes worst-case word error ? 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 Data Word: write 96 read 16 Read Operation Write Operation word error = 80

  17. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting C 1R C 0R S XBAR XBAR D W

  18. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way of combinational circuit S XBAR XBAR D W

  19. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W • 4-bit value read from each MLC

  20. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC

  21. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC • Check word and MLC error bounds

  22. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting ( Φ MLC • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC • Check word and MLC error bounds | C W − C R � � Φ MLC := 1 | ≤ E C ∧ 1 | C W − C R � � 0 | ≤ E C 0

  23. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting ( Φ MLC • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC Φ W ORD • Check word and MLC error bounds | C W − C R � � Φ MLC := 1 | ≤ E C ∧ 1 � | C W − C R � � 0 | ≤ E C 0 | D W − D R | ≤ E D � � Φ W ORD :=

  24. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting ( Φ MLC • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC Φ W ORD • Check word and MLC error bounds | C W − C R � � Φ MLC := 1 | ≤ E C • Gatewise translate circuit to CNF ∧ 1 � clauses | C W − C R � � 0 | ≤ E C 0 | D W − D R | ≤ E D � � Φ W ORD :=

  25. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting ( Φ MLC • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC Φ W ORD • Check word and MLC error bounds | C W − C R � � Φ MLC := 1 | ≤ E C • Gatewise translate circuit to CNF ∧ 1 � clauses | C W − C R � � 0 | ≤ E C 0 • Synthesis by solving Boolean formula | D W − D R | ≤ E D � � Φ W ORD := with appropriately quantified variables

  26. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting ( Φ MLC • QBF: SAT with alternating quantifiers C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W of combinational circuit • Crossbars implement mapping between data words and MLCs S XBAR XBAR • 64 bits specify xbar connections • 8-bit written dataword D W D R • 4-bit value read from each MLC Φ W ORD • Check word and MLC error bounds | C W − C R � � Φ MLC := 1 | ≤ E C • Gatewise translate circuit to CNF ∧ 1 � clauses | C W − C R � � 0 | ≤ E C 0 • Synthesis by solving Boolean formula | D W − D R | ≤ E D � � Φ W ORD := with appropriately quantified variables ∃ S ∀ D W ∀ C R 1 ∀ C R 0 ( Φ MLC = ⇒ Φ W ORD )

  27. 2 March 2014 QBF Synthesis of Optimal Word-Splitting � 4 QBF Formulation of Word-Splitting ( Φ MLC • QBF: SAT with alternating quantifiers • If QBF solution exists, C 1R C 0R • Formulate QBF-based synthesis by way C 0W C 1W solver produces of combinational circuit • Crossbars implement mapping assignment to between data words and MLCs S XBAR XBAR existentially quantified • 64 bits specify xbar connections variables • 8-bit written dataword D W D R • 4-bit value read from each MLC • This assignment Φ W ORD • Check word and MLC error bounds guarantees property | C W − C R � � Φ MLC := 1 | ≤ E C • Gatewise translate circuit to CNF ∧ 1 � clauses | C W − C R � � 0 | ≤ E C to always hold 0 • Synthesis by solving Boolean formula | D W − D R | ≤ E D � � Φ W ORD := with appropriately quantified variables ∃ S ∀ D W ∀ C R 1 ∀ C R 0 ( Φ MLC = ⇒ Φ W ORD )

Recommend


More recommend