Presentation is loading. Please wait.

Presentation is loading. Please wait.

Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.

Similar presentations


Presentation on theme: "Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments."— Presentation transcript:

1 Embedded Systems: Introduction

2 Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments Project / Team formation Student survey

3 Goal: quickly and efficiently produce special-purpose processors / software for specific applications Hardware basis in this course: FPGAs (PLAs) LOCAL BUS GLOBAL BUS CARRY OUT IN OUT BUS CLOCK RESET MEM IN LOGIC (LOOK-UP TABLE or LUT) MEMORY (1-BIT) CARRY IN BUS MEM OUT FPGA (EXAMPLE) SINGLE FPGA CELL RAM BLOCK

4 DESIGNING AN FPGA-BASED CIRCUIT / PROCESSOR: USE HIGH-LEVEL ABSTRACTION USE HARDWARE DESCRIPTION LANGUAGES USE AUTOMATED TOOLS TO PRODUCE LAYOUT MAY FINE-TUNE DESIGN DETAILS DESIGN APPLICATION-SPECIFIC PROCESSOR / SOFTWARE

5 Final product: “embedded system” Reference: http://en.wikipedia.org/wiki/Embedded_system

6 Embedded system implemented in FPGA: Special-purpose “computer” designed to be IN device it controls user is provided with a processor with basic functionality processor can be programmed in software Additional features can be added using the FPGA resources to customize the design for a specific intended use Processor core may be “hard” (built-in as part of the chip) or “soft” (using some of available FPGA resources. Ex: Altera Nios II processor) Processor may have options—e.g., number of registers, floating point units Specialized CAD tools allow addition of additional functionality Hardware / software codesign now becomes a possibility

7 The basic codesign process: (diagram: course on codesign by Niemann, Univ. of Dortmund, Winter 2008) Strengths: Flexibility, Design Productivity; Weaknesses: Performance, Resource Usage Strengths: Performance, Resource Usage Weaknesses: Flexibility, Design Productivity;

8 Typical embedded system properties: Processor: application –specific, not general-purpose Human interface: may be as simple as a flashing light or as complicated as real-time robotic vision. I/O: analog I/O is typical Diagnostic port: may be used for diagnosing the system that is being controlled -- not just for diagnosing the computer. Special-purpose hardware: [field programmable (FPGA), application specific (ASIC), or even non-digital] may be used to increase performance or safety. Operating system: typically must handle real-time processing. Software: often has a fixed function, and is specific to the application. Business considerations: often play a big role in design choices. Reference: http://www.ece.cmu.edu/~koopman/iccd96/iccd96.html#introductionhttp://www.ece.cmu.edu/~koopman/iccd96/iccd96.html#introduction Much of the following information is taken from this site

9 Examples (Koopman): * * Design change with cost above this magnitude can affect profitability, so typically needs management okay.

10 Design issues: System may need to be real-time / reactive (does not mean “fast” necessarily) Usually must be small and not weigh much Must be safe and reliable Must meet budget constraints (cost) May need to work in harsh environmental conditions (e.g., in an automobile) May need to deal with security issues

11 System requirements: Focus is on end-use capability, not on CPU performance, memory size, etc. System software must be safe and reliable Power usage should be low, depending on applications System typically controls a physical system— sensors / actuators

12 Embedded system lifecycle / requirements: Components—same component may work in several different systems—this can lower cost Safety certification—must often meet rigorous requirements (e.g., medical, aviation, automotive, military) Recertification—if system is modified Logistics / repair—accessibility is important Upgrades—need to be handled efficiently Component availability—may be long-term needs

13 “business model”: What are design / production costs? What is the life-cycle? Are there “product families”?

14 Design culture: Computer/ VLSI—simulate, simulate, simulate Mechanical/sensors—build, build, build Differing world views need to be reconciled

15 Skills an embedded systems designer needs (*this course; [not covered] ): *C programming / programming HDL: *Verilog / [VHDL] Hardware design: *Altera FPGAs / [Xilinx FPGAs / FPGAs] Computer architecture * ? A/D & D/A conversion (I/O) Operating systems *Real-time programming, op sys (*) Project skills: Writing/documentation; Engineering design; Teamwork; Managing [Business training]


Download ppt "Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments."

Similar presentations


Ads by Google