Download presentation
Presentation is loading. Please wait.
1
Architecture Description Languages for Programmable Embedded Systems P. Mishra and N. Dutt IEE Proc.-Comput. Digit. Tech., Vol. 152, No. 3, May 2005 Speaker: Wen-Kai Huang
2
2005/11/18 Architecture Description Languages for Programmable embedded Systems 2/24 Abstract Embedded systems present a tremendous opportunity to customize designs by exploiting the application behavior. Shrinking time-to-market, coupled with short product lifetimes, create a critical need for rapid exploration and evaluation of candidate architectures. Architecture description languages (ADL) enable exploration of programmable architectures for a given set of application programs under various design constraints such as area, power and performance. The ADL is used to specify programmable embedded systems, include processor, coprocessor and memory architectures. The ADL specification is used to generate a variety of software tools.
3
2005/11/18 Architecture Description Languages for Programmable embedded Systems 3/24 Abstract (Cont.) The paper surveys the existing ADLs in terms of (a) the inherent features of the languages and (b) the methodologies they support to enable simulation, compilation, synthesis, test generation and validation of programmable embedded systems. It concludes with a discussion of the relative merits and demerits of the existing ADLs and expected features of future ADLs.
4
2005/11/18 Architecture Description Languages for Programmable embedded Systems 4/24 What’s the Problem Embedded systems are everywhere Architecture Description Languages (ADL) are traditionally used to enable rapid design space exploration Example system: Key Features: Shrinking time-to-market Shorten product lifetime So we need: Rapid design space exploration
5
2005/11/18 Architecture Description Languages for Programmable embedded Systems 5/24 ADL-Driven Framework
6
2005/11/18 Architecture Description Languages for Programmable embedded Systems 6/24 Related Works Qin and Malik [1] Surveyed and compared the ADLs to highlight their strengths and weaknesses for retargetable compilation Tomiyama et al. [2] Classified existing ADLs into four categories Synthesis Compiler generation Simulator generation Validation This paper presents a comprehensive survey and accompanying methodologies for programmable embedded systems
7
Introduction to ADLs and Some Examples
8
2005/11/18 Architecture Description Languages for Programmable embedded Systems 8/24 Language Comparison How do ADLs differ from conventional non- ADLs?? Programming languages EX: C, C++ Hardware description languages (HDL) VHDL, Verilog Modeling languages EX: UML, SystemC
9
2005/11/18 Architecture Description Languages for Programmable embedded Systems 9/24 Classification of ADLs Content Objective
10
2005/11/18 Architecture Description Languages for Programmable embedded Systems 10/24 MIMOLA Structural ADL Specification of program counter Specification of ALU Specification of connections Purpose Hardware synthesis Program generation Weakness Lack of pipeline information
11
2005/11/18 Architecture Description Languages for Programmable embedded Systems 11/24 nML Behavioral ADL Example of instruction specification Purpose Software compilation Instruction-set simulation Weakness Hard to model the complicated processors
12
2005/11/18 Architecture Description Languages for Programmable embedded Systems 12/24 EXPRESSION Mixed ADL Data-path specification
13
2005/11/18 Architecture Description Languages for Programmable embedded Systems 13/24 EXPRESSION (Cont.) Purpose Software compilation Instruction-set simulation Hardware synthesis Weakness Control path is not modeled Instruction specification
14
2005/11/18 Architecture Description Languages for Programmable embedded Systems 14/24 LISA Mixed ADL Pipeline specification Operation specification Purpose Instruction-set simulation Hardware synthesis
15
2005/11/18 Architecture Description Languages for Programmable embedded Systems 15/24 AIDL Partial ADL Aims at validation of the pipeline behavior Data forwarding Out-of-order completion
16
ADL Applications
17
2005/11/18 Architecture Description Languages for Programmable embedded Systems 17/24 Software Toolkit Generation
18
2005/11/18 Architecture Description Languages for Programmable embedded Systems 18/24 Compiler Generation Retargetable compiler Architecture template based (non-ADL based) EX: Valen C, GNU-based C/C++ Explicit behavioral information based EX: AVIV using ISDL, CHESS using nML, Elcor using MDes Behavioral information generation based EX: MSSQ using MIMOLA, LISA-based, EXPRESS using EXPRESSION
19
2005/11/18 Architecture Description Languages for Programmable embedded Systems 19/24 Simulator Generation Interpretation-Based Simulator Compilation-Based Simulator Interpretive + Compiled Simulator
20
2005/11/18 Architecture Description Languages for Programmable embedded Systems 20/24 Hardware Generation Parameterized processor core based EX: Xtensa, Jazz, PEAS ADL-based EX: HGEN using ISDL, GO using nML, LISA-based
21
2005/11/18 Architecture Description Languages for Programmable embedded Systems 21/24 Hardware Validation
22
2005/11/18 Architecture Description Languages for Programmable embedded Systems 22/24 Validation of ADL Static verify Connectedness False pipeline Data-transfer paths Dynamic verify Instruction flow in the pipeline (More detail discussion can be found in [ 58 – 63 ] )
23
2005/11/18 Architecture Description Languages for Programmable embedded Systems 23/24 Comparative Study Noted by speaker: It seems that the EXPRESSION would be the best choice for microprocessor validation
24
2005/11/18 Architecture Description Languages for Programmable embedded Systems 24/24 Conclusions The architecture description language (ADL) is an important modeling tool for future SOC design Hardware synthesis Software toolkit generations Test generations This paper gives a comprehensive survey for several popular ADLs
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.