Download presentation
Presentation is loading. Please wait.
Published byKristian Lang Modified over 8 years ago
1
Controller Synthesis for Pipelined Circuits Using Uninterpreted Functions Georg Hofferek and Roderick Bloem. MEMOCODE 2011
2
Abstract A novel abstraction-based approach for controller synthesis using logic with UF, arrays, equality, and limited quantification. Extend Burch-Dill paradigm to synthesize the Boolean control for pipelined circuit. Decide the controller existence by a reduction to propositional logic and extract the controller logic.
3
Problem Statement Registers / Memory f1f1 f2f2 fnfn c1c1 c2c2 cncn Controller Registers / Memory f1f1 f2f2 fnfn Non-pipelined processor: Pipelined processor, using the same combinational datapath elements:
4
Preliminary – Array Property Fragment Write axiom Properties of array with uninterpreted indices F: index guard G: value constraint Index guard grammar: Array properties uninterpreted function (Bradley et al. [7])
5
Preliminary – Uninterpreted Function A function Mapping input value(s) to output value Uninterpreted Do not care about its explicit mapping Care functional consistency UF equality logic (Ackermann’s reduction [1])
6
Preliminary – Equality Logic First-order logic with one special predicate “=“ x 1 = x 2 Λ x 2 = x 3 Λ x 4 = x 5 Λ x 5 x 1 Equality logic propositional logic (Bryant & Velev [8]) x1,x2,x3x1,x2,x3 x4,x5x4,x5
7
Equivalence Pipelined Architecture Non-Pipelined Architecture complete step Instr. Set Arch. (ISA) Burch-Dill paradigm: Instruction Set Architecture Pipelined Architecture
8
A simple example Registers REG ALU c ontrol v w d est s ource Read Write Registers REG ALU s ource d est Read Write Non-pipelined Architecture (=reference): Pipelined Architecture:
9
Equivalence Criterion Registers REG ALU c ontrol v w Read Write s ource d est
10
Synthesis Approach & Reduction Claim: AUE UE UE E E Prop. logic
11
Reduction – AUE UE 1. Replace Array-Writes with fresh variables and apply write axiom 2. Replace universal quantifications with conjunction over index set 3. Replace Array-Reads with uninterpreted functions
12
Reduction – UE E Replace all function instances with fresh variables Add functional consistency constraints
13
Reduction – E Prop. Logic Replace equalities with fresh Boolean variables to obtain Compute transitivity constraints from (chordal) equality graph
14
Extract Control Logic We started from: Apply transformations, obtain Universally quantify “next states” May blow up the size of BDD, but average cases are okay Expand existential quantification of Find cofactors of On set: Off set: DC set: Find function in this interval Don’t-Care-Set OFF-Set ON-Set Solution
15
Results Complexity Reduction: polynomial time Computing the quantification: exponential time w.r.t #var. Total: worst-case exponential time Proof-of-concept 10 minutes with dynamic reordering Validate using z3 SMT solver c ( s = w )
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.