|
|||||
SoCs: DSP World, Cores -> Platforms support multimedia SoC
Platforms support multimedia SoC The multimedia system-on-chip (SoC) market is undergoing revolutionary changes in design. Today's market reality is based on rapidly evolving technologies that have spurred an explosion of new consumer electronics standards, all of which are constantly being updated. Time-to-market is critical. Unfortunately, while market windows are shrinking, the "design gap" is not. These new standards and technologies, coupled with intense competition, demand ever more complexity out of SoC design. SoC design is dominated by system integration. Bus architectures, interblock wiring and increased on-chip memory stress the routing capabilities of existing tools. Mismatched protocols and interfaces mean increased use of on-chip bridges. Design costs are high. Front-end and, especially, back-end resources are expensive and difficult to secure. Design tool costs are rising. Mask costs are increasing while fab capacity is being squeezed. Capacity, yield, test and p ackaging issues are driving up per-part costs. Cost reduction through ASIC redesign takes too long and costs too much up front. The emerging applications space presents its own set of unique demands. The combination of diverse media (video, audio, data, speech, graphics) transported over ever wider pipes into interactive devices increases the performance requirements in all aspects of the electronics world. The trend is toward integrating a number of multiple functions and numerous interfaces to maximize flexibility. And, in many markets, power is critical. Today's market also demands a clear path for product life cycle and evolution. SoC is at a crossroads; the mainstream continues to believe that core-based design will prevail, but a different approach-platform-based design-is emerging. The key characteristic of this revolution is the shift from isolated components (processors, memories, AS SPs, ASICs) to integrated single-chip platforms. Core-based design is faltering. Evidenced by an increasing number of IC design project failures, core-based design has become too expensive for semiconductor vendors and systems companies, making sense only for extremely high-volume parts such as the Sony Playstation. The only successful cores are programmable processors, memories and peripherals. Application-specific cores have short lifetimes because of the fast-paced market. Even for successful cores, integration is still a major challenge. Overall, the industry is moving to platforms. Most platforms are "boards on chips." They duplicate the bus connection model. As yet, no one has put forward a compelling platform even for specific application areas. The industry press has latched on to the notion of "configurable platforms" or "programmable systems-on-chip." Basically, a platform requires a task model with defined execution, communication (data and control), and concurrency as well as application to platform mapping methodology. Because a platform is already defined and ready for manufacturing, including verification suites, it provides rapid time-to-market. Programmable on-chip resources mean that hardware resources do not need to be committed to a single function but can be reused for multiple functions. True parallel hardware and software development is possible because software can be developed independently of hardware implementation. A stable platform means that software development tools can ensure that software will run correctly. After an initial product has been delivered, the platform can be optimized for cost reduction, etc. without changes to software. Further, software can be updated to incorporate new features without changes to the underlying platform. When considering multiple products, platforms provide a stable hardware target. The same masks are used across multiple projects (reprogrammed for different applications). Optimization and verification be nefit all product teams. Platforms provide a consistent architecture. The same platform is used across different product configurations (e.g., different channel densities). Platforms provide a common design environment and allow software component reuse across products. The platform approach represents a revolution in ASIC development. ASIC development changes from hardware design to a combination of application software development and platform configuration. The development of an ASIC can be done by application specialists (rather than hardware specialists), enabling higher levels of creativity and innovation in systems. About 95 percent of current IC/ASIC EDA tools move into platform development and implementation tools. Designers will now be using application development (software), platform mapping and platform configuration tools. Platforms should provide four key characteristics: performance, programmability, scalability/integration and configurability. Performance issu es in multimedia SoC include concurrent execution and multitasking. A platform should handle true parallel execution of tasks. There are many aspects of platform programmability that should be considered. And, creation and use of testbenches are important to development. And, there are issues from integration and configurability standpoints that need to be addressed. Here are some platform options and characteristics:
Multiple levels of configurability are possible for platforms. These include the macro structure of the platform-such as the number of processor cores, interconnects between cores-the I/O capabilities and resources, the characteristics of the individual processors, and addition of user-defined accelerators. A high degree of configurability allows the designer to tailor available resources to application needs. It permits streamlining of data and instruction memory, optimization using custom processors and accelerators, and matching I/O to system requirements.Configurability allows customizing the platform to the specific needs of an application do main. The designer can evaluate the number of processors, sizes of memories and I/O makeup. It will be possible to configure different characteristics to address performance, die size or power considerations. Designers can add accelerators for critical application functions. Conversely, a platform can be "deconfigured" to include just the resources needed for a particular application. Programmable I/O modules may be hardwired. On a macro-structure level, it is possible to define processor macrostructure and configuration, to select the number and type of processors to include, and to customize processors to a particular application domain. Further, the type and size of each instruction and data memory can be adapted, as well as defining external memory access and protocol. Selection of integration models for external components is possible, along with choosing the number and type of I/O modules to include. Capabilities include configuring I/O modules with parameters such as FIFO depth s and state machines controlling data movement. Central to any platform implementation is a processor core. And a number of options are available:
Configurability needs There is a growing awareness of the need for configurable processors. In the past two years there have been a number of new commercial entries in this space including RISC/DSP such as ARC Cores and Tensilica as well as VLIW such as Improv's Jazz, Philips' REAL and the STMicroelectronics (St. Genis, France) and Hewlett-Packard Co. (Palo Alto, Calif.) alliance. Different aspects of the processor can be made configurable. A key feature is the ability to add user-defined logic and opcodes into the datapath. This addresses the processor's performance weaknesses on irregular algorithmic sections and allows the user to redefine common operations for specific domain. The ability to add user-defined opcodes means the designer can add and subtract opcodes from existing computation units. Unique to VLIW is the ability to control the number of operation slots per instruction, the allowing of overlapped opcodes, and reducing computation unit overhead with instruction compression. User-defined accelerators are another key feature of configurable processors. These can be used to accelerate critical functions in algorithms. They can address functions such as data manipulation (masking, etc.), data representation (bit widths, saturation, rounding), and other custom logic operations. Similar approaches include ARC's user-defined extensions and Improv's DDCU's (designer defined computation units). Designing for SoC today requires different development methodologies for hardware, software and communication. Custom SoC design and implementation is expensive, long, compl ex and unpredictable. It calls for multiple expensive EDA tools and front-end and back-end design. What is more, system integration and IC design complexity means more than one pass at mask generation and manufacturing. There are a number of potential technology paths for SoC design. Behavioral synthesis is one approach. Here algorithmic issues and search space preclude efficient conversion of behavioral code to RTL. Additionally, deep-submicron requires an increasing knowledge of physical implementation during design. Another approach is core-based design. Unfortunately, this path offers a long time-to-market, is expensive (custom mask set, verification, IP licensing, etc.) and fraught with legal, business, technical and competitive issues. Heterogeneous modeling and mapping is a third route. It requires early commitment hardware/software tradeoffs, and implementation choices are limited by the selection of the modeling technique. Finally, the platform approach offers a technology pa th for SoC design. It provides for separation of function (application) from implementation (platform). Application development is performed using a structured semantic model. Platform development is done independently. The platform approach calls for a new set of tools that include application development environments, "mapping" tools and platform analysis and configuration tools. Configurable platforms allow for new and powerful application development methodology. They can be based on an intuitive semantic model. Heterogeneous modeling requires different tools, different target implementations, etc. A common semantic model enables a new set of integrated system-level development tools-development tools, verification tools and platform mapping tools. THIS ARTICLE IS EXCERPTED FROM A PAPER PREPARED IN CONJUNCTION WITH A CLASS PRESENTED AT DSP WORLD SPRING CONFERENCE 2000 TITLED "SOC APPLICATION DESIGN FOR MULTIMEDIA."
|
Home | Feedback | Register | Site Map |
All material on this site Copyright © 2017 Design And Reuse S.A. All rights reserved. |