Title :
Dynamically increasing the scope of code motions during the high-level synthesis of digital circuits
Author :
Gupta, S. ; Dutt, N. ; Gupta, R. ; Nicolau, A.
Abstract :
The quality of high-level synthesis results for designs with complex and nested conditionals and loops can be improved significantly by employing speculative code motions. Two techniques are presented that add scheduling steps to the branch of a conditional construct with fewer scheduling steps. This ´balances´ or equalises the number of scheduling steps in the conditional branches and increases the scope for application of speculative code motions. These branch balancing techniques have been applied ´dynamically´ during scheduling. The authors have implemented algorithms for dynamic branch balancing techniques in a C-to-VHDL high-level synthesis framework called Spark. The utility of these techniques is demonstrated by experimental results on four designs derived from two moderately complex applications, namely, MPEG-1 and the GIMP image processing tool. These results show that the two branch balancing techniques can reduce the cycles on the longest path through the design by up to 38% and the number of states in the controller by up to 37%
Keywords :
C language <code motions, high-level synthesis of digital ccts., dynamically increasing scope>; circuit CAD <code motions, high-level synthesis of digital ccts., dynamically increasing scope>; digital circuits <code motions, high-level synthesis of digital ccts., dynamically increasing scope>; hardware description languages <code motions, high-level synthesis of digital ccts., dynamically increasing scope>; C-to-VHDL high-level synthesis; GIMP image processing tool; MPEG-1; Spark; code motion scope increase; high-level digital circuit synthesis; speculative code motions;
Journal_Title :
Computers and Digital Techniques, IEE Proceedings -
DOI :
10.1049/ip-cdt:20030839