Design & Co-design of Embedded Systems Lecture 1: Introduction to Digital System Design & Co-Design Computer Engineering Dept. Sharif University of Technology Winter-Spring 2008 Mehdi Modarressi
Topics for Today Evolution of Digital-Design Design Methodologies Introduction to Hw/Sw Co-Design Design & Co-design 2
Chip Design Evolution Moore s Law: Chip densities would double every 12 18 months. The first IC (1958-TI) 4 transistors, 50$! The first microprocessor(1971-intel) 2300 transistors, 108 KHz Microprocessors Today: Intel Core2 Quad: 580 M. transistors- 2.4 GHz Intel Quad-core 64b Itanium: 2 B. transistors. Design & Co-design 3
Evolution of Digital Design Methods Transistor Netlist 1970 s Design & Co-design 4
Evolution of DDM (cont.) RT level: Register Transfer level, Schematic 1980 s Design & Co-design 5
Evolution of DDM (cont.) BL: Behavioral Level, HDL: Hardware Description Language, 1990 s Design & Co-design 6
Digital System Design Design & Co-design 7
Embedded Systems Embedded vs. Self-Contained Systems Embedded computing systems Computing systems embedded within electronic devices Hard to define. Nearly any computing system other than a desktop computer 79% of all Produced Digital systems Perhaps 100s per household and per automobile Computers are in here... and here... and even here... Lots more of these, though they cost a lot less each. Design & Co-design 8
Today s Embedded Systems Increasing application complexity Mixture of several tasks (event driven and data flow) Examples: multimedia, automotive, mobile communication Increasing target system complexity Mixture of different technologies, processor types, and design styles Large systems-on-a-chip, distributed systems Up to 2 billion trans. on a single chip, 75 million in common processors. Non-functional requirements are important Design & Co-design 9
Functional vs. Non-Functional Requirements Functional requirements: Output as a function of input. Non-functional requirements: Time required to compute output; Size, weight, etc.; Power consumption; Reliability; etc. Design & Co-design 10
System-level Design More higher h abstraction ti level: l System-level design System = HW components +SW modules Describe the system functionality regardless of (hw/sw) implementation type Partition the design into hardware and software modules based on the non-functional requirements Design & Co-design 11
Hardware /Software Realization Hardware and software are functionally equivalent : Any Software-realizable realizable algorithm can be realized in hardware as well, and vice versa. How much SW + how much HW? Determined by non-functional requirements. Hardware Realization Software Realization Speed Energy Efficiency Cost Efficiency i (but in high volumes) Flexibility Ease of Development Ease of Test and Debug Cost = SW + Processor Design & Co-design 12
More Complexities in Hardware/Software Realization Design & Co-design 13
Design Problem How to select a hardware/software implementation out of the design space to meet Functional and Non-functional design goals? Hardware-Software Co-design Design & Co-design 14
Co-design Main Topics Synthesis System System H S OS Specification Verification Design & Co-design 15
System Specification Verification Co-Synthesis Partitioning HW Parameter Estimation SW Parameter Estimation Verification HW Synthesis ASIC SW Synthesis OS EXE Code Verification Verification System Integration Final Verification Design & Co-design 16
Co-design Main Topics Design & Co-design 17
Design & Co-design 18
Hardware/Software Partitioning How functionality is separated between HW and SW blocks Design & Co-design 19
Application Mapping Design & Co-design 20
Task Scheduling Design & Co-design 21
Hardware Synthesis Design & Co-design 22
Software Compilation Design & Co-design 23
What we learned today Digital design methods are moving toward higher abstractions Hardware and software are functional equivalent Non-functional requirements determine HW/SW implementation Hw/Sw co-design stages Design & Co-design 24
Next Session Topics Introduction to embedded systems Properties Requirements Design issues Design & Co-design 25