Presentation is loading. Please wait.

Presentation is loading. Please wait.

Domain Specific Model Computation Using a Lattice of Coalgebras Jennifer Streb, Garrin Kimmell, Nicolas Frisby, and Perry Alexander The University of Kansas.

Similar presentations


Presentation on theme: "Domain Specific Model Computation Using a Lattice of Coalgebras Jennifer Streb, Garrin Kimmell, Nicolas Frisby, and Perry Alexander The University of Kansas."— Presentation transcript:

1 Domain Specific Model Computation Using a Lattice of Coalgebras Jennifer Streb, Garrin Kimmell, Nicolas Frisby, and Perry Alexander The University of Kansas / ITTC alex@ittc.ku.edu

2 The SLDL “Revolution” Silicon devices with 100,000,000 plus gates Affectionally known as a “sea of gates” Design abstractions unchanged since RTL Simulation is becoming overwhelmed Systems growing exponentially, simulation power sub-linearly Parallelization is not working Heterogeneous, reconfigurable fabrics ASIC, FPGA, Analog, MEMS New materials Unpredictable interactions between components Classic system-level design problem!

3 The last thing we need is another language... Software Approaches C/C++, SystemC, SpecC UML, SysML, XML Java, JBITS VHDL and Verilog Approaches Verilog, Superlog, SystemVerilog, Verilog-A VHDL, VHDL 200x, VHDL-AMS, VHDL+, VHDL++, SUAVE New languages BlueSpec, Lava, SAFL, Rosetta e, Sugar, Solving tomorrow’s problems with yesterday’s technology...

4 ... but we could sure use a new semantics Constraints and Performance Requirements Timing, Power, Area, Packaging Formal Semantics Precise, mathematical definition of a specification’s meaning Support for heterogeneity Digital, analog, MEMS, optical on the same substrate Complexity management True abstract specification tools Decrease reliance on simulation Enable static and formal analysis tools Don’t actually change anything...

5 The Rosetta Language and Semantics Support for concurrent, system-level design Domains for multiple models of computation Facet Algebra for composition of heterogeneous specifications Interactions for understanding cross-domain implications Formal Semantics Set theoretic, dependent type system with support for reflection Coalgebraic facet models Category theoretic model composition Heterogeneous, extensible domain system Model-of-computation definitions Lattice-based organization Elaboration of new syntax

6 Coalgebras for Model Semantics Ideal for non-terminating stateful systems Observations on abstract state Catamorphism defines operational behavior Well-defined transformation semantics Pullbacks and pushouts for specification composition Functors for specification transformation Hold state abstract and define multiple observations Abstract State Observations Product Shared Specification

7 state_basedsignal_based The Domain Lattice static continuousdiscrete discrete_time finite_state continuous_time frequency RF digitalsequential-machine Unit-of-Semantics Model-of-Computation Engineering Domains CSPtrace_based synchronous A Domain is a common vocabulary for specification The Domain Lattice is a collection of interrelated domains

8 Functors in the Domain Lattice static continuousdiscrete discrete-time finite-state continuous-time frequency RF digitalsequential-machine state-basedsignal-based Extensions CSPtrace-based synchronous Homomorphisms General Functors Abstraction, Concretization A Functor moves information between domains

9 Establish soundness of abstractions and concretizations Sound integration of new domains Sound integration of synthesis and analysis tools ( state_based, , Γ, static ) is a Galois connection  is the abstraction function Γ is the concretization function We can calculate  when Γ is an extension No isomorphism unless   Γ    and  Γ    Correctness using Galois Connections domain state_based::static is state_type::type; s::state_type; next(x::state_type)::state_type; begin end domain state_based; domain security::state_based is riskType::type is posreal; p,nominal::riskType; activityType::subtype(real) is sel(x::real | x>=0.0 and x=<1.0); activity::activityType begin p’=activity*nominal+latent; end domain security;  Γ

10 Random Thoughts... Ignore the HDL community at your own peril... Timing is everything... Orthogonality is great, but not realistic... Formal semantics has saved us repeatedly... Are you interested in standards?

11 Current Status Rosetta Language Definition Standard in preparation for IEEE (currently 70% complete) Alexander, P., System Level Design with Rosetta, Morgan Kaufmann, Nov 2006 Alexander, P., System Level Semantics and Rosetta, Morgan Kaufmann, Oct 2007 (in progress) http://www.sldl.org More Information Jacobs & Rutten, A Tutorial on (Co)Algebras and (Co)Induction, EATCS Bulletin 62, 1997 Ehrig & Mahr, Fundamental of Algebraic Specification I: Equations and Initial Algebra Semantics, Springer-Verlag, 1985 Davey & Priestly, Introduction to Lattices and Order, Cambridge University Press, 2002


Download ppt "Domain Specific Model Computation Using a Lattice of Coalgebras Jennifer Streb, Garrin Kimmell, Nicolas Frisby, and Perry Alexander The University of Kansas."

Similar presentations


Ads by Google