This paper presents a new approach for automatically pipelin-ing sequential circuits. The approach repeatedly extracts a computation from the critical path, moves it into a new stage, then uses speculation to generate a stream of values that keep the pipeline full. The newly generated circuit re-tains enough state to recover from incorrect speculations by flushing the incorrect values from the pipeline, restoring the correct state, then restarting the computation. We also implement two extensions to this basic approach: stalling, which minimizes circuit area by eliminating spec-ulation, and forwarding, which increases the throughput of the generated circuit by forwarding correct values to preced-ing pipeline stages. We have implemented a pr...
Accommodating the uncertain latency of load instructions is one of the most vexing problems in in-or...
Pullpipelining, a pipeline technique where data is pulled from successor stages from predecessor sta...
Loop pipelining is one of the most important optimization methods in high-level synthesis (HLS) for ...
This paper describes a novel approach to high-level synthesis of complex pipelined circuits, includi...
International audienceThis article presents the new framework for semi-automatic circuit pipelining ...
We present yet another heuristic for the software pipelining problem. We believe this heuristic to b...
Optimizing sequential cycles is essential for many types of high-performance circuits, such as pipel...
International audienceLoop pipelining is a key optimization in modern HLS tools for synthesizing eff...
[[abstract]]Pipelining is an effective method to optimize the execution of a loop, especially for di...
Pipelining the scheduling logic, which exposes and exploits the instruction level parallelism, degra...
Pipelining is a pervasive hardware implementation strategy used to increase the execution speeds of ...
We present a technique for increasing the throughput of stream process-ing architectures by removing...
Using re-programmable logic components along with HDL languages encompasses wider and wider areas of...
In conventional pipelined designs one set of signals is allowed to propagate between sets of flipflo...
In high-level synthesis (HLS), loop pipelining allows multiple iterations of a loop to be executed c...
Accommodating the uncertain latency of load instructions is one of the most vexing problems in in-or...
Pullpipelining, a pipeline technique where data is pulled from successor stages from predecessor sta...
Loop pipelining is one of the most important optimization methods in high-level synthesis (HLS) for ...
This paper describes a novel approach to high-level synthesis of complex pipelined circuits, includi...
International audienceThis article presents the new framework for semi-automatic circuit pipelining ...
We present yet another heuristic for the software pipelining problem. We believe this heuristic to b...
Optimizing sequential cycles is essential for many types of high-performance circuits, such as pipel...
International audienceLoop pipelining is a key optimization in modern HLS tools for synthesizing eff...
[[abstract]]Pipelining is an effective method to optimize the execution of a loop, especially for di...
Pipelining the scheduling logic, which exposes and exploits the instruction level parallelism, degra...
Pipelining is a pervasive hardware implementation strategy used to increase the execution speeds of ...
We present a technique for increasing the throughput of stream process-ing architectures by removing...
Using re-programmable logic components along with HDL languages encompasses wider and wider areas of...
In conventional pipelined designs one set of signals is allowed to propagate between sets of flipflo...
In high-level synthesis (HLS), loop pipelining allows multiple iterations of a loop to be executed c...
Accommodating the uncertain latency of load instructions is one of the most vexing problems in in-or...
Pullpipelining, a pipeline technique where data is pulled from successor stages from predecessor sta...
Loop pipelining is one of the most important optimization methods in high-level synthesis (HLS) for ...