![Loading...](https://link.springer.com/static/c4a417b97a76cc2980e3c25e2271af3129e08bbe/images/pdf-preview/spacer.gif)
-
Chapter and Conference Paper
VIS
-
Chapter and Conference Paper
Approximate Reachability for Dead Code Elimination in Esterel ⋆
Esterel is an imperative synchronous programming language for the design of reactive systems. Esterel ⋆ extends Esterel with a non-instantaneous jump instruction (compatible with concurrency, preemption, etc.) s...
-
Chapter and Conference Paper
Incremental Algorithms for Inter-procedural Analysis of Safety Properties
Automaton-based static program analysis has proved to be an effective tool for bug finding. Current tools generally re-analyze a program from scratch in response to a change in the code, which can result in mu...
-
Chapter and Conference Paper
Separate Compilation for Synchronous Modules
Synchronous models are useful for designing real-time embedded systems because they provide timing control and deterministic concurrency. However, the semantics of such models usually require an entire system ...
-
Chapter and Conference Paper
A Processor Extension for Cycle-Accurate Real-Time Software
Certain hard real-time tasks demand precise timing of events, but the usual software solution of periodic interrupts driving a scheduler only provides precision in the millisecond range. NOP-insertion can prov...
-
Chapter and Conference Paper
Compile-Time Analysis and Specialization of Clocks in Concurrent Programs
Clocks are a mechanism for providing synchronization barriers in concurrent programming languages. They are usually implemented using primitive communication mechanisms and thus spare the programmer from reaso...
-
Chapter and Conference Paper
Concurrency and Communication: Lessons from the SHIM Project
Describing parallel hardware and software is difficult, especially in an embedded setting. Five years ago, we started the shim project to address this challenge by develo** a programming language for hardware/s...
-
Chapter and Conference Paper
Computation vs. Memory Systems: Pinning Down Accelerator Bottlenecks
The world needs special-purpose accelerators to meet future constraints on computation and power consumption. Choosing appropriate accelerator architectures is a key challenge. In this work, we present a pinto...
-
Chapter and Conference Paper
Further Experiences Teaching an FPGA-Based Embedded Systems Class
I describe thirteen years of teaching an embedded systems class at Columbia University that spans three “board eras.” Students now develop Linux systems with custom FPGA-based peripherals.