DASS: Combining Dynamic & Static Scheduling in High-Level Synthesis

被引:6
作者
Cheng, Jianyi [1 ]
Josipovic, Lana [2 ]
Constantinides, George A. [1 ]
Ienne, Paolo [2 ]
Wickerson, John [1 ]
机构
[1] Imperial Coll London, Dept Elect & Elect Engn, London SW7 2AZ, England
[2] Ecole Polytech Fed Lausanne, Sch Comp & Commun Sci, CH-1015 Lausanne, Switzerland
基金
英国工程与自然科学研究理事会;
关键词
Dynamic scheduling; Hardware; Clocks; Benchmark testing; Schedules; Resource management; Job shop scheduling; Dynamic scheduling (DS); high-level synthesis (HLS); static analysis; ALGORITHM; DESIGN;
D O I
10.1109/TCAD.2021.3065902
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
A central task in high-level synthesis is scheduling: the allocation of operations to clock cycles. The classic approach to scheduling is static, in which each operation is mapped to a clock cycle at compile-time, but recent years have seen the emergence of dynamic scheduling, in which an operation's clock cycle is only determined at runtime. Both approaches have their merits: static scheduling (SS) can lead to simpler circuitry and more resource sharing, while dynamic scheduling (DS) can lead to faster hardware when the computation has nontrivial control flow. In this work, we seek a scheduling approach that combines the best of both worlds. Our idea is to identify the parts of the input program, where DS does not bring any performance advantage and to use SS on those parts. These statically scheduled parts are then treated as black boxes when creating a dataflow circuit for the remainder of the program, which can benefit from the flexibility of DS. An empirical evaluation on a range of applications suggests that by using this approach, we can obtain 74% of the area savings that would be made by switching from DS to SS, and 135% of the performance benefits that would be made by switching from SS to DS.
引用
收藏
页码:628 / 641
页数:14
相关论文
共 34 条
[1]  
Alle M, 2013, DES AUT CON
[2]  
[Anonymous], 2019, DSS COMBINING DYNAMI
[3]  
[Anonymous], 2019, **DATA OBJECT**, DOI 10.5281/zenodo.3406553
[4]  
[Anonymous], 2017, INTEL HLS COMPILER
[5]  
[Anonymous], 2017, XILINX VIVADO HLS
[6]  
Budiu M., 2002, CMUCS02107 SCH COMP
[7]  
Canis A, 2011, FPGA 11: PROCEEDINGS OF THE 2011 ACM/SIGDA INTERNATIONAL SYMPOSIUM ON FIELD PROGRAMMABLE GATE ARRAYS, P33
[8]   Theory of latency-insensitive design [J].
Carloni, LP ;
McMillan, KL ;
Sangiovanni-Vincentelli, AL .
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2001, 20 (09) :1059-1076
[9]   From Latency-Insensitive Design to Communication-Based System-Level Design [J].
Carloni, Luca P. .
PROCEEDINGS OF THE IEEE, 2015, 103 (11) :2133-2151
[10]  
Castellana V. G., 2014, P IEEE HOT CHIPS 26, P1