|
Why should I care about ESL design?
ESL design employs methodologies and tools that help tackle the growing complexity of designing modern electronic products. Companies can achieve significant time-to-market benefits by incorporating ESL design into their product development flows. These benefits include reduction of the product design cycle, increased hardware design productivity, faster creation of derivative products, improved communication between hardware and software teams, and improved product quality. By using ESL design, companies can deliver better, more complex electronic products, and get them to market sooner, with a lower risk. Product development flows that incorporate ESL design are rapidly becoming a necessity in today’s competitive market.
What is ESL Design?
By exploiting design descriptions at levels of abstraction typically used for system specification and software development, and higher than RTL (register transfer-level), ESL design addresses five key tasks related to the design and verification of complex, programmable electronic products:
- The development of product architectures and specifications, including the incorporation and configuration of IP
- The mapping of applications to a product specification, including hardware/software partitioning and processor optimization
- The creation of pre-silicon, virtual hardware platforms for software development
- The determination/automation of a hardware implementation for that architecture
- The development of reference models for verifying the hardware
Traditionally EDA and software development tools have streamlined the design of hardware and software independently, and the definition and optimization of the architecture has mainly been a manual process. Tools and methodologies that support ESL design are now available for assisting in this very important stage in the development process. This is critical because it is at the architectural level that the many aspects of product differentiation are achieved. As configurable multi-processor, multi-bus, and multi-memory architectures have become more prevalent, the need for ESL design tools for architectures has increased. Indeed, today’s product architectures can no longer be effectively evaluated and optimized at the RTL level. ESL design tools and methodologies are needed to automate the definition, evaluation, and optimization of the product architecture.
ESL design not only provides system architects with the right tools to make the right decisions about the architecture, but also includes the methodologies and techniques that correlate the ESL model (of the architecture) with hardware implementations. This insures a well-connected ESL-to-implementation design flow. For example, techniques that automate the creation of hardware from ESL descriptions can reduce the hardware design time and therefore increase design and verification productivity. Moreover, certain ESL modeling techniques can provide “virtual hardware”, i.e. a high-level simulation model of the hardware that can execute at sufficiently high speeds so that it can be used for the development of the embedded product software. And finally, ESL methodology addresses the creation of verification reference models that can be used to verify the hardware later in the design flow.
|