This course traces background history leading to current "Embedded Systems" from the introduction of system classification concepts through modern digital computer concepts, and first-practice digital computer embedded systems leading up to the current methodologies, tools, and practice involved in the design of Embedded Systems.
The digital computer hardware is traced from the vacuum-tube era through the advances of solid-state technology to today's integrated circuits. The software is shown in parallel with introduction of abstract languages, operating systems and "hard" real-time software, program code and library practices, through C-Code editing, compilation, and system building. Hardware Design Language (HDL) concepts are introduced in the context of adding digital functionality to the included microcomputer capabilities.
A Top-Down design methodology is used in the context of Embedded Systems development with both open-source and proprietary tools from an Engineering System Level (ESL) through an implementation at the demonstration-board level with two different examples. The design-flow through the use of tools is discussed prior to the example use of those tools so that the "big picture" is seen first. A simple Delta-Sigma (DS) analog-to-digital converter is used as an analog/digital or mixed-signal example with some modeling and simulation relating to the analog functions and some relating to the digital functions. The use of the top-down approach makes the system simulation of behavior clear prior to the "binding" of the functions to analog or digital components.
Two different implementation hardware boards: the BeagleBoard featuring a Texas Instruments (TI) OMAP™ IC with an ARM processor and TI proprietary Digital Signal Processor (DSP) onboard, and Cypress Semiconductor PSoC5™ with an ARM processor and proprietary configurable analog and digital blocks on a "First Touch" board are introduced as a hardware target candidates.
Software development tools are introduced and representative usage shown for both open-source and proprietary tools using a C/C++ path in both an open-source Linux environment and a MicroSoft Windows™ environment. Code generation automation is discussed and manual code entry discussed in the context of the tools.
The example system is explored in detail from within the context of the Cypress Semiconductor PSoC5™ "First Touch" environment with some alternatives introduced. The steps necessary and the code example for the PSoC5™ "First Touch" environment are referenced, as well as the necessary hardware and software requirements to enable the example in the BeagleBoard are shown and links provided to obtain the accelerometer, display, cables, and software required. The MathWorks PolySpace™ semantic run-time code checker software is shown with illustrations of the checking capabilities.
A 50% discount coupon on products from Cypress Semiconductor Corporation is included with this course.