{"title":"Percolation based synthesis","authors":"R. Potasman, Joseph Lis, A. Nicolau, D. Gajski","doi":"10.1109/DAC.1990.114897","DOIUrl":null,"url":null,"abstract":"A new approach called percolation-based synthesis for the scheduling phase of high-level synthesis (HLS) is presented. Some new techniques are discussed for compaction of flow graphs beyond basic block limits, which can produce order-of-magnitude speedups versus serial execution. The presented algorithm applies to programs with conditional jumps, loops, and multicycle pipelined operations. In order to schedule under resource constraints, one starts by first finding the optimal schedule (without constraints) and then adds heuristics to map the optimal schedule onto the given system. It is argued that starting from an optimal schedule is one of the most important factors in scheduling because it offers the user flexibility to tune the heuristics and gives a good bound for the resource-constrained schedule. This scheduling algorithm is integrated with a synthesis tool which uses VHDL as input description and produces a structural netlist of generic register-transfer components and a unit-based control table as output.<<ETX>>","PeriodicalId":118552,"journal":{"name":"27th ACM/IEEE Design Automation Conference","volume":"43 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1990-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"137","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"27th ACM/IEEE Design Automation Conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/DAC.1990.114897","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 137
Abstract
A new approach called percolation-based synthesis for the scheduling phase of high-level synthesis (HLS) is presented. Some new techniques are discussed for compaction of flow graphs beyond basic block limits, which can produce order-of-magnitude speedups versus serial execution. The presented algorithm applies to programs with conditional jumps, loops, and multicycle pipelined operations. In order to schedule under resource constraints, one starts by first finding the optimal schedule (without constraints) and then adds heuristics to map the optimal schedule onto the given system. It is argued that starting from an optimal schedule is one of the most important factors in scheduling because it offers the user flexibility to tune the heuristics and gives a good bound for the resource-constrained schedule. This scheduling algorithm is integrated with a synthesis tool which uses VHDL as input description and produces a structural netlist of generic register-transfer components and a unit-based control table as output.<>