Abstract
With domain-specific models of computation and widely-used hardware acceleration techniques, Hardware/Software Codesign (HSCD) has the potential of being as agile as traditional software design, while approaching the performance of custom hardware. However, due to increasing use of system heterogeneity, multi-core processors, and hardware accelerators, along with traditional software development challenges, codesign processes for complex systems are often slow and error prone. The purpose of this chapter is to discuss a Computer-Aided Design (CAD) framework, called the DSPCAD Framework, that addresses some of these key development issues for the broad domain of Digital Signal Processing (DSP) systems. The emphasis in the DSPCAD Framework on supporting cross-platform, domain-specific approaches enables designers to rapidly arrive at initial implementations for early feedback, and then systematically refine them towards functionally correct and efficient solutions. The DSPCAD Framework is centered on three complementary tools - the Data-flow Interchange Format (DIF), LIghtweight Data-flow Environment (LIDE) and DSPCAD Integrative Command Line Environment (DICE), which support flexible design experimentation and orthogonalization across three major dimensions in model-based DSP system design - abstract data-flow models, actor implementation languages, and integration with platform-specific design tools. We demonstrate the utility of the DSPCAD Framework through a case study involving the mapping of synchronous data-flow graphs onto hybrid CPU-GPU platforms.
Original language | English |
---|---|
Title of host publication | Handbook of Hardware/Software Codesign |
Publisher | Springer Netherlands |
Pages | 1185-1219 |
Number of pages | 35 |
ISBN (Electronic) | 9789401772679 |
ISBN (Print) | 9789401772662 |
DOIs | |
Publication status | Published - 1 Nov 2017 |
Publication type | A3 Book chapter |
Publication forum classification
- Publication forum level 2
ASJC Scopus subject areas
- General Engineering
- General Computer Science