1 / 15

Embedded Systems: Introduction

Learn about embedded systems, FPGAs, hardware basics, design processes, and more. Develop specialized processors and software efficiently.

benderj
Download Presentation

Embedded Systems: Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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

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

  8. Reference: http://www.ece.cmu.edu/~koopman/iccd96/iccd96.html#introduction Much of the following information is taken from this site • 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.

  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]

More Related