150 likes | 292 Views
Research Interests, Projects, Collaborations & Opportunities. Priyank Kalla Electrical & Computer Engineering University of Utah. Typical Design Flow & CAD Support. TLM Models. Design Spec. High-Level Analysis. Hardware Description. High-Level Synthesis. Testing for Defects.
E N D
Research Interests, Projects, Collaborations & Opportunities Priyank Kalla Electrical & Computer Engineering University of Utah
Typical Design Flow & CAD Support TLM Models Design Spec High-Level Analysis Hardware Description High-Level Synthesis Testing for Defects Circuit Models Optimization Fabrication High-Level + Logic Synthesis & Optimization Area, Speed, Power Mask
Design Verification TLM Models Design Spec Property Verification Hardware Description High-Level Synthesis Circuit Models Optimization Equivalence Verification ? Fabrication “Core Engines” for Correctness Reasoning & Constraint Solving Mask
My Research Projects at the U • Boolean Reasoning Engines (concluded) • Million+ variables, 10s Million Constraints • 2 M.S. + 1 PhD • “Exploring” Design Automation for Photonic Devices • Collaboration w/ Steve Blair + his Colleagues • 1 PhD student: Learning & Exploring the issues • Synthesis & Verification of Finite-Precision Arithmetic • Focus on Hardware – but applicable to Software • 2 PhDs. + 2 more for sure… • Recognition + bread-earner [3 NSF Grants]
Datapath-Dominated Applications Floating-point Model Real Number Specification Automated Fixed-point Generation DSP Crypto Embedded ASIC Fixed-point Model Conversion Utility Matlab Xilinx Altera Synplicity Synopsys Calypto Galois HDL Model Optimization Equivalence Verification ? HDL Model FPGA Synthesis
Why Verify Finite-Precision Arithmetic • 1996 Ariane Rocket Explosion • 64-bit floating to fixed point rounding error • Vancouver Stock-Exchange Index • 1982: Value initialized to 1000; 1984: value 520 • Truncation error: Should have been 1098 • Gulf War, Patriot Missile (28 dead, SCUD) • German Parliament: 5.0% versus 4.97% (2-bits!) • Bug in JPEG Decode Routine (discovered in ’05) • Hacker Exploited – uploaded a virus: Microsoft website • Network Routers, Filter instability errors + ……
MP3 Decoder: Anti-Aliasing Function Taylor series expansion coefficients coefficients a b x = a2 + b2 x MAC F DFF [Peymandoust et al, TCAD '03]
F[15:0] = 156x6 + 62724x5 + 17968x4 + 18661x3 + 43593 x2 + 40244x + 13281 G[15:0] = 156x6 + 5380x5 + 1584x4 + 10469x3 + 27209 x2 + 7456x + 13281 F ≠ G F[15:0] = G[15:0] Prove that F(x) % 216 ≡ G(x)% 216 Example: Anti-Aliasing Function • Contemporary tools model the problem at (circuit) bit-level • Too many variables/constraints – infeasible • Name of the game: “Abstraction” + model the “details”
16-bit 8-bit * 17-bit + 8-bit Fixed-size (m) bit-vector arithmetic Polynomials reduced %2m Algebra over the ring Z2m Fixed-Size (m) Data-path: Modeling • Control the datapath size: Fixed size bit-vectors (m) 16-bit 16-bit * 16-bit + 16-bit • Bit-vector of size m: integer values in 0,…, 2m-1
F F x x+6 x+4 x+2 Why is the Problem Difficult? • Z2mis a non-Unique Factorization Domain • F = x2 + 6xinZ8(modulo 8) can be factorized as • Easy to do over Reals, Complex numbers, Integers (modulo p) • Textbook algebra solutions are not available over Z2m • Contacted a Mathematician: Prof. Florian Enescu • Partially unsolved Problems in “classical” mathematics
F[15:0] = 156x6 + 62724x5 + 17968x4 + 18661x3 + 43593 x2 + 40244x + 13281 G[15:0] = 156x6 + 5380x5 + 1584x4 + 10469x3 + 27209 x2 + 7456x + 13281 F ≠ G F[15:0] = G[15:0] F[15:0] - G[15:0] = 0? “Zero” in Finite-Precision • F - G [15:0] = 57344 x5 + 16384 x4 + 8192 x3 + 16384 x2 + 32768 x
% 2m Ideal x x % 2m 0 f g f – g ? Ideals in Finite Rings • Test for membership in the ideal of vanishing polynomials • Standard Problem formulation in Computer Algebra • But, how to “mathematically” generate this “ideal”? • Hilbert’s & Fermat’s results (mod p): Generalize to (mod pm) Z2m[x] Z2m
Contributions Abstraction of Arithmetic Datapaths Equivalence Verification Problem Equivalence of Polyfunction Equivalence of Polynomial systems Generalized to cover all Bit-Vector Arithmetic Ideal Membership Testing Canonical Forms Simulation Vector Generation ADD/MULT
Significance, Impact, Interest • Computer-algebra research group, Univ. Kaiserslautern • SINGULAR: Public domain computer algebra tool • Our approach implemented in their latest release • Univ. Kaiserslautern: Math + ECE + Infineon • Extension of my work to verify production-quality design • Univ. of Tokyo + Fujitsu • Use our work for Testing SoC (ATPG) • Bay-area Start-up: Calypto (NSF GOALI Partner) • GALOIS Inc., Cryptography applications (military funding) • Invited Talk: Intl. Joint Conferences on Automated Reasoning • Theoretical Computer Science Community