Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Yu Ting Chen

dblp:154/4393 · DBLP profile ↗
← Back
5ranked-venue papers
1as first author
1since 2021 · last 2022
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 4 · 1 first-author · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
3 papers
Electronic design automation · 72% Memory systems · 17% Reconfigurable computing and FPGAs · 11%
Software engineering, system software, and programming languages
1 paper
Program verification · 100%

Topics — the 6 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Electronic design automation
high-level synthesis
1.232022
Efficient Memory Arbitration in High-Level Synthesis From Multi-Threaded Code · IEEE Trans. Computers 2022
EASY: Efficient Arbiter SYnthesis from Multi-threaded Code · FPGA 2019
A Survey and Evaluation of FPGA High-Level Synthesis Tools · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2016
Electronic design automation › high-level synthesis › memory synthesis
memory partitioning
1.022022
Efficient Memory Arbitration in High-Level Synthesis From Multi-Threaded Code · IEEE Trans. Computers 2022
EASY: Efficient Arbiter SYnthesis from Multi-threaded Code · FPGA 2019
Memory systems › memory controller
memory arbitration
0.612022
Efficient Memory Arbitration in High-Level Synthesis From Multi-Threaded Code · IEEE Trans. Computers 2022
Electronic design automation › design automation tools › FPGA CAD
FPGA design tools
0.212016
A Survey and Evaluation of FPGA High-Level Synthesis Tools · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2016
Reconfigurable computing and FPGAs
FPGA high-level synthesis
0.212016
A Survey and Evaluation of FPGA High-Level Synthesis Tools · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2016
Program verification
SMT-based verification
0.212022
Efficient Memory Arbitration in High-Level Synthesis From Multi-Threaded Code · IEEE Trans. Computers 2022

Methods — techniques the papers use, named apart from their topics

static analysis · 1.5boogie verifier · 1.1SMT solver · 1.1formal verification · 0.4benchmarking methodology · 0.2
YearPublicationVenuePosition
2022 Efficient Memory Arbitration in High-Level Synthesis From Multi-Threaded Code
abstract
High-level synthesis (HLS) is an increasingly popular method for generating hardware from a description written in a software language like C/C++. Traditionally, HLS tools have operated on sequential code, however in recent years there has been a drive to synthesise multi-threaded code. In this context, a major challenge facing HLS tools is how to automatically partition memory among parallel threads to fully exploit the bandwidth available on an FPGA device and minimise memory contention. Existing partitioning approaches require inefficient arbitration circuitry to serialise accesses to each bank because they make conservative assumptions about which threads might access which memory banks. In this article, we design a static analysis that can prove certain memory banks are only accessed by certain threads, and use this analysis to simplify or even remove the arbiters while preserving correctness. We show how this analysis can be implemented using the Microsoft Boogie verifier on top of satisfiability modulo theories (SMT) solver, and propose a tool named EASY using automatic formal verification. Our work supports arbitrary input code with any irregular memory access patterns and indirect array addressing forms. We implement our approach in LLVM and integrate it into the LegUp HLS tool. For a set of typical application benchmarks our results have shown that EASY can achieve 0.13× (avg. 0.43×) of area and 1.64× (avg. 1.28×) of performance compared to the baseline, with little additional compilation time relative to the long time in hardware synthesis.
Jianyi Cheng, Shane T. Fleming, Yu Ting Chen, Jason Helge Anderson, John Wickerson, George A. Constantinides
IEEE Trans. Computers3
2019 EASY: Efficient Arbiter SYnthesis from Multi-threaded Code
abstract
High-Level Synthesis (HLS) tools automatically transform a high-level specification of a circuit into a low-level RTL description. Traditionally, HLS tools have operated on sequential code, however in recent years there has been a drive to synthesize multi-threaded code. A major challenge facing HLS tools in this context is how to automatically partition memory amongst parallel threads to fully exploit the bandwidth available on an FPGA device and avoid memory contention. Current automatic memory partitioning techniques have inefficient arbitration due to conservative assumptions regarding which threads may access a given memory bank. In this paper, we address this problem through formal verification techniques, permitting a less conservative, yet provably correct circuit to be generated. We perform a static analysis on the code to determine which memory banks are shared by which threads. This analysis enables us to optimize the arbitration efficiency of the generated circuit. We apply our approach to the LegUp HLS tool and show that for a set of typical application benchmarks we can achieve up to 87% area savings, and 39% execution time improvement, with little additional compilation time.
Jianyi Cheng, Shane T. Fleming, Yu Ting Chen, Jason Helge Anderson, George A. Constantinides
FPGA3
2017 Automated generation of banked memory architectures in the high-level synthesis of multi-threaded software
abstract
Some modern high-level synthesis (HLS) tools [1] permit the synthesis of multi-threaded software into parallel hardware, where concurrent software threads are realized as concurrently operating hardware units. A common performance bottleneck in any parallel implementation (whether it be hardware or software) is memory bandwidth — parallel threads demand concurrent access to memory resulting in contention which hurts performance. FPGAs contain an abundance of independently accessible memories offering high internal memory bandwidth. We describe an approach for leveraging such bandwidth in the context of synthesizing parallel software into hardware. Our approach applies trace-based profiling to determine how a program's arrays should be automatically partitioned into sub-arrays, which are then implemented in separate on-chip RAM blocks within the target FPGA. The partitioning is accomplished in a way that requires a single HLS execution and logic simulation for trace extraction. The end result is that each thread, when implemented in hardware, has exclusive access to its own memories to the extent possible, significantly reducing contention and arbitration and thus raising performance.
Yu Ting Chen, Jason Helge Anderson
FPL1
2016 A Survey and Evaluation of FPGA High-Level Synthesis Tools
abstract
High-level synthesis (HLS) is increasingly popular for the design of high-performance and energy-efficient heterogeneous systems, shortening time-to-market and addressing today’s system complexity. HLS allows designers to work at a higher-level of abstraction by using a software program to specify the hardware functionality. Additionally, HLS is particularly interesting for designing field-programmable gate array circuits, where hardware implementations can be easily refined and replaced in the target device. Recent years have seen much activity in the HLS research community, with a plethora of HLS tool offerings, from both industry and academia. All these tools may have different input languages, perform different internal optimizations, and produce results of different quality, even for the very same input description. Hence, it is challenging to compare their performance and understand which is the best for the hardware to be implemented. We present a comprehensive analysis of recent HLS tools, as well as overview the areas of active interest in the HLS research community. We also present a first-published methodology to evaluate different HLS tools. We use our methodology to compare one commercial and three academic tools on a common set ofCbenchmarks, aiming at performing an in-depth evaluation in terms of performance and the use of resources.
Razvan Nane, Vlad Mihai Sima, Christian Pilato, Jongsok Choi, Blair Fort, Andrew Canis, Yu Ting Chen, Hsuan Hsiao, Stephen Brown 0003, Fabrizio Ferrandi, Jason Helge Anderson, Koen Bertels
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.7
2014 Automating the Design of Processor/Accelerator Embedded Systems with LegUp High-Level Synthesis
abstract
LegUp [1] is an open-source high-level synthesis (HLS) tool that accepts a C program as input and automatically synthesizes it into a hybrid system. The hybrid system comprises an embedded processor and custom accelerators that realize user-designated compute-intensive parts of the program with improved throughput and energy efficiency. In this paper, we overview the LegUp framework and describe several recent developments: 1) support for an embedded ARM processor, as is available on Altera's recently released SoC FPGA, 2) HLS support for software parallelization schemes -- pthreads and OpenMP, 3) enhancements to LegUp's core HLS algorithms that raise the quality of the auto-generated hardware, and, 4) a preliminary debugging and verification framework providing C source-level debugging of HLS hardware. Since its first release in 2011, LegUp has been downloaded over 1000 times by groups around the world, providing a powerful platform for new research in high-level synthesis algorithms and embedded systems design.
Blair Fort, Andrew Canis, Jongsok Choi, Nazanin Calagar, Ruolong Lian, Stefan Hadjis, Yu Ting Chen, Mathew Hall, Bain Syrowik, Tomasz S. Czajkowski, Stephen Brown 0003, Jason Helge Anderson
EUC7