Overview
ABSTRACT
This article is an introduction to system-on-chip hardware/software codesign. It sets out general principles and concepts to describe, evaluate/analyze and implement these systems. It states key design steps, found in usual codesign approaches: specification and modeling of system characteristics (requirements, functionalities, etc.), partitioning into hardware and software components, synthesis and verification for inferring an implementation of both components while guaranteeing that system requirements are met. Methodological issues for the designer are also addressed. The article ends with an open discussion on possible impacts of emerging technologies (nonvolatile memories, etc.) and new computing paradigms (neuro-inspired, quantum computing, etc.) on system codesign.
Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.
Read the articleAUTHORS
-
Abdoulaye GAMATIE: Director of Research at CNRS, - Montpellier Laboratory of Computer Science, Robotics and Microelectronics (LIRMM)
-
Lionel TORRES: Professor at the University of Montpellier, Polytech'Montpellier - Montpellier Laboratory of Computer Science, Robotics and Microelectronics (LIRMM)
INTRODUCTION
Integrated circuits enable the integration of logic functions on a silicon chip, based on a single element - the transistor. The power of these circuits increases with the number of transistors, but there is a limitation. Indeed, thermal dissipation becomes too high in the presence of a large number of components. Parallel architectures offer an interesting solution to this limitation, since power dissipation no longer varies exponentially with computing power, as in a single-processor machine, but linearly in a multi-processor machine.
Significant developments are also taking place at software and application level. In view of all these changes, the hardware/software "co-design" methodology offers an interesting solution for the efficient implementation of systems-on-chip.
This article provides an overview of the general principles and concepts relating to joint hardware/software design. This is organized around the main stages of a classical design flow: first, we address the issue of specification and modeling; then, we introduce the challenges of hardware/software partitioning, followed by a general presentation concerning synthesis and verification techniques; finally, methodological aspects are discussed through an illustration based on a few model-based joint design environments. As an open discussion on a possible evolution of current practices in hardware/software joint design, we offer a brief reflection on emerging technologies and new computational paradigms.
Exclusive to subscribers. 97% yet to be discovered!
Already subscribed? Log in!
KEYWORDS
embedded system | hadware/software codesign | system-on-chip
Introduction to joint hardware/software design
Article included in this offer
"Software technologies and System architectures"
(
227 articles
)
Updated and enriched with articles validated by our scientific committees
A set of exclusive tools to complement the resources
Bibliography
Exclusive to subscribers. 97% yet to be discovered!
Already subscribed? Log in!