CIRCAL and the representation of communication, concurrency, and time
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
Theoretical Computer Science
The logic of engineering design
Microprocessing and Microprogramming - Special double issue: parallel systems engineering
Hardware-software co-design of embedded systems: the POLIS approach
Hardware-software co-design of embedded systems: the POLIS approach
Reasoning about VHDL and VHDL-AMS using denotational semantics
DATE '99 Proceedings of the conference on Design, automation and test in Europe
The ethics of safety-critical systems
Communications of the ACM
Proof, language, and interaction
Towards Verified Systems
Hardware/Software CO-Design: Principles and Practice
Hardware/Software CO-Design: Principles and Practice
High-Integrity System Specification and Design
High-Integrity System Specification and Design
A Highly Parallel FPL-Based Machine and Its Formal Verification
Selected papers from the Second International Workshop on Field-Programmable Logic and Applications, Field-Programmable Gate Arrays: Architectures and Tools for Rapid Prototyping
The use of industrial-strength formal methods
COMPSAC '97 Proceedings of the 21st International Computer Software and Applications Conference
AMAST '97 Proceedings of the 6th International Conference on Algebraic Methodology and Software Technology
Towards a Provably Correct Hardware Implementation of Occam
CHARME '93 Proceedings of the IFIP WG 10.5 Advanced Research Working Conference on Correct Hardware Design and Verification Methods
ProCoS Proceedings of the Third International Symposium Organized Jointly with the Working Group Provably Correct Systems on Formal Techniques in Real-Time and Fault-Tolerant Systems
A Common Framework for Mixed Hardware/Software Systems
IFM '99 Proceedings of the 1st International Conference on Integrated Formal Methods
An Animatable Operational Semantics of the Verilog Hardware Description Language
ICFEM '00 Proceedings of the 3rd IEEE International Conference on Formal Engineering Methods
A hybrid heuristic algorithm for HW-SW partitioning within timed automata
KES'06 Proceedings of the 10th international conference on Knowledge-Based Intelligent Information and Engineering Systems - Volume Part I
Hi-index | 0.00 |
The use of Field Programmable Gate Arrays (FPGA) to produce custom hardware circuits rapidly using a completely software-based process is becoming increasingly widespread. Specialized Hardware Description Languages (HDL) are used to describe and develop the required circuits. In this paper, we advocate using an even more general purpose programming language, based on Occam, for the automatic compilation of high-level programs to low-level circuits. The parallel constructs of Occam can map directly to hardware as conveniently as to software, with potentially dramatic speed-up of highly parallel algorithms. We demonstrate that the compilation process can be verified using algebraic refinement laws, increasing the confidence in its correctness. Verification is particularly important in high-integrity systems where safety or security is paramount. A prototype compiler has also been produced very directly from the theorems using the logic programming language Prolog.