Title :
Operation-centric hardware description and synthesis
Author :
Hoe, James C. ; Arvind
Author_Institution :
Dept. of Electr. & Comput. Eng., Carnegie Mellon Univ., Pittsburgh, PA, USA
Abstract :
The operation-centric hardware abstraction is useful for describing systems whose behavior exhibits a high degree of concurrency. In the operation-centric style, the behavior of a system is described as a collection of operations on a set of state elements. Each operation is specified as a predicate and a set of simultaneous state-element updates, which may only take effect in case the predicate is true on the current state values. The effect of an operation´s state updates is atomic, that is, the legal behaviors of the system constitute some sequential interleaving of the operations. This atomic and sequential execution semantics permits each operation to be formulated as if the rest of the system were frozen and thus simplifies the description of concurrent systems. This paper presents an approach to synthesize an efficient synchronous digital implementation from an operation-centric hardware-design description. The resulting implementation carries out multiple operations per clock cycle and yet maintains the semantics that is consistent with the atomic and sequential execution of operations. The paper defines, and then gives algorithms to identify, conflict-free and sequentially composable operations that can be performed in the same clock cycle. The paper further gives an algorithm to generate the hardwired arbitration logic to coordinate the concurrent execution of conflict-free and sequentially composable operations. Lastly, the paper evaluates synthesis results based on the TRAC compiler for the TRSPEC operation-centric hardware-description language. The results from a pipelined processor example show that an operation-centric framework offers a significant reduction in design time, while achieving comparable implementation quality as traditional register-transfer-level design flows.
Keywords :
finite state machines; hardware description languages; high level synthesis; logic design; program compilers; rewriting systems; TRAC compiler; TRSPEC hardware-description language; atomic execution semantics; concurrent conflict-free execution; concurrent systems; conflict-free concurrent execution; hardware design description; hardwired arbitration logic; high-level synthesis; operation-centric hardware abstraction; operation-centric hardware description; operation-centric hardware synthesis; register-transfer-level design; sequential execution semantics; sequentially composable operations; synchronous finite-state machine; term-rewriting systems; Clocks; Computational modeling; Concurrent computing; Hardware; High level synthesis; Interleaved codes; Law; Legal factors; Logic; Registers; Conflict-free; TRS; high-level synthesis; operation-centric; sequentially composable; term-rewriting systems;
Journal_Title :
Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
DOI :
10.1109/TCAD.2004.833614