경종민 1 Overview of SoC Design process (2) Chip integration & Software development.

Slides:



Advertisements
Similar presentations
Presenter : Shao-Chieh Hou VLSI Design, Automation and Test, VLSI-DAT 2007.
Advertisements

ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 31/22alt1 Lecture 31 System Test (Lecture 22alt in the Alternative Sequence) n Definition n Functional.
Apr. 20, 2001VLSI Test: Bushnell-Agrawal/Lecture 311 Lecture 31 System Test n Definition n Functional test n Diagnostic test  Fault dictionary  Diagnostic.
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Chapter 2Test Specification Process. n Device Specification Sheet – Purpose n Design Specification – Determine functionality of design n Test List Generation.
PradeepKumar S K Asst. Professor Dept. of ECE, KIT, TIPTUR. PradeepKumar S K, Asst.
Fault Detection in a HW/SW CoDesign Environment Prepared by A. Gaye Soykök.
The Design Process Outline Goal Reading Design Domain Design Flow
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
1 Co-simulation Slides from: - Tony Givargis, Irvine, IC253 - Rabi Mahapatra, Texas A&M University - Sharif University.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Energy Evaluation Methodology for Platform Based System-On- Chip Design Hildingsson, K.; Arslan, T.; Erdogan, A.T.; VLSI, Proceedings. IEEE Computer.
System Partitioning Kris Kuchcinski
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
VerificationTechniques for Macro Blocks (IP) Overview Inspection as Verification Adversarial Testing Testbench Design Timing Verification.
© Copyright Alvarion Ltd. Hardware Acceleration February 2006.
[ 제 차 ] 경종민 1 Overview of SoC Design process.
1 Chapter 2. The System-on-a-Chip Design Process Canonical SoC Design System design flow The Specification Problem System design.
TM Efficient IP Design flow for Low-Power High-Level Synthesis Quick & Accurate Power Analysis and Optimization Flow JAN Asher Berkovitz Yaniv.
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
SOC Consortium Course Material ASIC Logic National Taiwan University Adopted from National Chiao-Tung University IP Core Design.
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
1 Integration Verification: Re-Create or Re-Use? Nick Gatherer Trident Digital Systems.
Lessons Learned The Hard Way: FPGA  PCB Integration Challenges Dave Brady & Bruce Riggins.
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
System Design with CoWare N2C - Overview. 2 Agenda q Overview –CoWare background and focus –Understanding current design flows –CoWare technology overview.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
Lecture 2 1 ECE 412: Microcomputer Laboratory Lecture 2: Design Methodologies.
Configurable, reconfigurable, and run-time reconfigurable computing.
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
ESL and High-level Design: Who Cares? Anmol Mathur CTO and co-founder, Calypto Design Systems.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
3 rd Nov CSV881: Low Power Design1 Power Estimation and Modeling M. Balakrishnan.
The Macro Design Process The Issues 1. Overview of IP Design 2. Key Features 3. Planning and Specification 4. Macro Design and Verification 5. Soft Macro.
Hardware-software Interface Xiaofeng Fan
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Winter-Spring 2001Codesign of Embedded Systems1 Methodology for HW/SW Co-verification in SystemC Part of HW/SW Codesign of Embedded Systems Course (CE.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
1: Operating Systems Overview 1 Jerry Breecher Fall, 2004 CLARK UNIVERSITY CS215 OPERATING SYSTEMS OVERVIEW.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
1 Hardware/Software Co-Design Final Project Emulation on Distributed Simulation Co-Verification System 陳少傑 教授 R 黃鼎鈞 R 尤建智 R 林語亭.
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
System-on-Chip Design Homework Solutions
Creation and Utilization of a Virtual Platform for Embedded Software Optimization: An Industrial Case Study Sungpack Hong, Sungjoo Yoo, Sheayun Lee, Sangwoo.
April 15, 2013 Atul Kwatra Principal Engineer Intel Corporation Hardware/Software Co-design using SystemC/TLM – Challenges & Opportunities ISCUG ’13.
Programmable Logic Devices
System-on-Chip Design
Andreas Hoffmann Andreas Ropers Tim Kogel Stefan Pees Prof
ASIC Design Methodology
VLSI Testing Lecture 14: System Diagnosis
THE PROCESS OF EMBEDDED SYSTEM DEVELOPMENT
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
Subject Name: Embedded system Design Subject Code: 10EC74
Presentation transcript:

경종민 1 Overview of SoC Design process (2) Chip integration & Software development

2 References 1) G. Martin, H. Chang, et al, Surviving the SOC Revolution: A Guide to Platform Based Design, Kluwer Academic Publishers, Sept ) K. Keutzer, S. Malik, A. R. Newton, J. M. Rabaey, and A. Sangiovanni-Vincentelli, System Level Design: Orthogonalization of Concerns and Platform-Based Design, invited paper, IEEE Transactions on Computer-Aided Design, Vol. 19, No. 12, December 2000.

3

4 Four major areas of SoC design(PBD) Block(IP) authoring VC delivery Chip integration Software development (Design environment)

5

6 Executable specification (Chip Integration) Chip or product requirements captured and specified in terms of explicit functionality and performance criteria, to be translated into design constraints for the ensuing process Can be given as simulatable, high-level models with abstract data types and key performance metrics, which can be used for evaluating the appropriateness of the specification itself and testing against the downstream implementation. Typically given in C, C++, SDL.

7 System Analysis (Chip Integration) Develops and verifies the algorithm elements in the design specification Such developed algorithms are THE base for the fundamental partitioning between HW and SW such that first-order constraints of the specification (application standards, target technology selection) are met.

8 VC Selection/Integration (Chip Integration) Evaluation of both the blocks available and platform elements for selection Make modifications (or, refinements) for the available blocks For new blocks, define the interface requirements and functional behavior.

9 Partition/Constraint budget (Chip Integration) HW elements are partitioned and detailed performance, power, area and interface constraints defined for each. Implementation technology is assessed against each partition and the integration design. Architectural elements such as power, clock, bus, test, I/O are all put in place. Initial risk guardband is developed identifying areas where the implementation will need particular attention

10 RTL Mapping (Chip Integration) The design is mapped into a hierarchical RTL structure, which instantiates VC blocks and selected platform elements (bus, clock, power), and kicks off block design and modification activities.

11 Interface Generation (Chip Integration) The interface is manually modified or automatically through parameter change.

12 Integration Planning (Chip Integration) Detailed physical planning of the block locations High-level routing of bus and assembly wiring Consideration of clock trees, test logic, power controls, analog block locations with noise analysis, and block constraints from overall chip plan.

13 Constraint Definition (Chip Integration) Refine the overall constraints based on the floorplan to drive the final layout/route of the integration architecture. Critical chip-level performance paths and power consumption are analyzed to adjust the constraints based on the interconnect delay and power level extracted from the floor plan.

14 Clock/Power/Test (Chip Integration) Generate the clock trees Lay down power buses and domains considering noise from all different sources (digital-to-analog isolation, ground bounce, simultaneous switching) Insert test logic

15 Hierarchical routing with signal integrity (Chip Integration) Hybrid of high-level assembly and area routing Considering constraints and signal integrity Delays and power factors are reported to analysis tools. Assumptions and assertions made in the VC selection stage are difficult to maintain with VDSM technologies.

16 Performance simulation (Chip Integration) Useful for estimating the feasibility of the design goals, or for evaluating different implementation architecture alternatives leading to algorithm selection, architectural choices (HW/SW partitioning tradeoff, VC selection). Based on high-level models with limited details –ex.) critical path, key functional mode for CPU Very fast; can be part of system analysis

17 Behavioral simulation (Chip Integration) Behavioral models can be either BFM (Bus functional model) for checking interface property only, or FFM (full functional model) for checking internal as well as interface functions. FFM can be timing-correct (cycle-accurate; signal behavior correct in pin and clock cycle/phase) or not. Slower than performance simulation, but fast enough.

18 HW/SW Coverification (Chip Integration) Check whether SW correctly works with HW. HW is mostly BFM, while SW runs on model of the target CPU (ex; Instruction Set Simulator) SW can be testbench for the HW

19 HW/SW Codesign and Coverification (Chip Integration) HW/SW Codesign consisting of 5 phases; –Functional exploration –Architectural mapping –HW/SW partitioning ; divides the system into HW and SW components with specifications for each passed to detailed implementation phase of the design –HW and SW implementation –System integration HW/SW Coverification occurs during the implementation and integration phase. –Brings the traditional divergent HW and SW implementation activities back together to validate the consistency of the ensuing HW and SW implementation and satisfaction of the system specification

20 HW/SW Cosimulation(Chip Integration) There are a variety of HW/SW cosimulation techniques available with different profiles; –Raw performance ; turn-around time –Timing accuracy –Model (for the processor) availability –Debuggability (visibility of internal states)

21 HW/SW Cosimulation(Chip Integration) A> Techniques requiring Models* (* ‘ Model ’ represents software model for the processor.) –1) Nano-second accurate model; ns-accurate timing for all pins plus complete functionality Slow due to large number of events with each pin changing signals any time –2) Cycle accurate model (zero-delay); Delegates all events at the rising(falling) clock edge –3) Instruction level model ; Only the values in the register and memory are correct. Ignores the internal pipeline, hazards, interlocks related with micro-architecture; superscalar ordering effects and pipeline stalls cannot be modelled.

22 HW/SW Cosimulation(Chip Integration) B> Techniques requiring no Models –1) Synchronized handshake; Applicable when HW and SW communicates asynchronously, i.e, when time between transactions has no effect on functionality No need for the processor model (that is, if the SW works by itself, it should work with HW as well); SW model can run as a native code on any fastest available workstation Overall speed is limited by the hardware simulator performance.

23 HW/SW Cosimulation(Chip Integration) B> Techniques requiring no Models –2) Virtual hardware; On top of SW running on the host workstation, hardware is also modeled as pure software (no relation to the real HW) running on WS, e.g., disk I/O is mapped through the native OS. Therefore, HW is not debugged, just SW.

24 HW/SW Cosimulation(Chip Integration) B> Techniques requiring no Models –3) Bus-functional model ; Processor model reflects only its interaction with the bus, without its internal (full-functional) behavior. Elaborate test benches can emulate the trace as generated by real software. Therefore, only the HW part can be simulated, not the SW part running on the processor. Performance evaluation, like MIPS, is not possible.

25 HW/SW Cosimulation(Chip Integration) B> Techniques requiring hardware Models (for the processor); –Hardware modeller ; Most accurate model from functionality point of view Use actual hardware, i.e., ARM processor chip or PowerPC chip, instead of the generated software model of the processor Useful when the processor is very complex, or when software model is not available Processor internal state invisible Network round trip delay is caused for every HW/SW interaction.

26 HW/SW Cosimulation(Chip Integration) B> Techniques requiring hardware models (for the processor); –Hardware emulation, or in-circuit emulation (ICE*) (* ICE was used, until about ten years ago, to denote MDS, Microprocessor Development System used for developing system hardwares as well as appl. software.) Processor, as well as HW part, are mapped on either an array of FPGA ’ s (Axis or old Quickturn product), or an array of specially-coined processors (Mentor Celaro or Quickturn) Add-on boards can be installed for memory or other OTS products. Separate emulation-purpose library is needed for both HW and SW. Roughly one-tenth speed of real chip

27 Levels of Co-simulation Technology Abstraction Level SpeedDebugModel Turn- around Soft- ware Hard- ware Nano-second accurate 1-100BestHardestFastOKYes Cycle accurate ExcellentHardFastOKYes Instruction level ,000OKMediumFastYesOK Synchronized handshake Limited by hardware sim No processor state NoneFastYesOK Virtual hardwareFast No processor or hardware state NoneFastYesNo Bus functional Limited by hardware sim No processor state EasierFastNoYes Hardware modeler No processor state Timing only FastOKYes EmulationFastLimitedNoneSlowOK

28 Rapid Prototyping (Chip Integration) Useful for verifying design elements (HW or SW) in the context of the integration platform architecture and/or with existing VC ’ s. Bonded-out core availability helps. Used for early SW development before the silicon implementation Ex.; Aptix ’ System Explorer ; reconfigurable prototyping engine based on FPIC (Field-Programmable Interconnect Chip) for inter-module interconnect, as well as FPGA- and other standard product modules such as DSP, microprocessors for implementing each module (as a daughter board)

29 Simulation Acceleration/Hardware(in- circuit) Emulation (Chip Integration) Quickturn(Cadence) ’ s Palladium/CobaltPLUS based on ASIC ’ s, Mercury based on custom FPGA (Cadence), Mentor ’ s Celaro, iKOS HE ; Emulation Hardware is tested against real/live signals from target environment, although at 1/10-th speed. SA ; Same Hardware is excited by the artificially generated test bench, which can sit on the workstation interacting in cycle-based mode (lock- step mode), or transaction-based mode, or synthesizable testbench mode where testbench is synthesized into the Hardware.

30 Formal Property/Protocol (interface) Checker (Chip Integration) Formal property checker is an efficient means for some limited applications, i.e., to verify the bus interface logic against the specified bus protocol.

31 RTL/cycle simulation (Chip Integration) Goal is to verify both function and timing. Based on RTL model Allows cycle-based acceleration if applicable, while gate/event-level simulation when necessary (that means model should have cycle-accurate, or better timing) Test benches can be mixed among those from the higher-level and more detailed ones in this level. Relatively slow; therefore used mainly for debugging critical points

32 Hierarchical, Static Timing & Power Analysis (Chip Integration) Static timing analysis needs guidance (from the dynamic simulation) on which logic paths to take. Static power calculation for the whole chip is to be done in a hierarchical basis and also depends on the circuit switching pattern, which is obtained from dynamic simulation, or from estimations based on clock rates.

33 Coverage Analysis (Chip Integration) Determines the efficiency and robustness of the test bench Checks whether all possible branches in RTL have been exercised; calculates the number of logic states tested.

34 Formal Equivalence Checking (Chip Integration) Validate gate-level representation against the RTL representation using mathematical techniques.

35 Physical Verification (Chip Integration) Extract transistor-level netlist from the final layout to verify whether it matches the gate-level netlist, while meeting all electrical and physical rules. Repeated blocks are to be abstracted for hierarchical checking for speed-up.

36 Test Integration (Chip Integration) Test solutions for each block on the chip are various. A chip- level test architecture knitting together all these heterogeneous solutions is necessary to obtain a cost-effective manufacturing tests. Chip-level test architecture includes; –Chip test coverage estimation mechanism –Estimated time on the tester –Pins dedicated for test mode –TAP(test access protocol) logic and conventions –How to create and verify test vectors in the real physical environment –Test screening procedures –Access scheme for internal memory and analog blocks –BIST scheme –Performance-level test –Manufacturing diagnostic test for yield enhancement

37 Secure IP Merge (Chip Integration) Software or methods for decoding the protecting devices into an actual layout is needed for successful chip integration.

38 Supplementary Stuffs (Chip Integration) Integration platform; an architectural environment to facilitate design reuse for SoC design and manufacture, being targeted to specific applications in consumer market Integration Guide; design methodology, styles, techniques, tools, requirements and constraints IP Portfolio; Collection of VC ’ s pre-staged and pe-characterized for a particular integration architecture, for a particular application range. SW development links; Pre-verified pairs of device and its device driver. PCB Tools Link; Communicates the effects of IC package, bonding leads/contacts, and PCB to IC design tools.