EE‐446 Embedded Architectures (2014CSULA) 09/25/14 1 Instructor: Airs Lin Mentor: Dr. Charles Liu Time: SEC1:TR 01:30PM~03:10PM SEC2:TR 09:50AM~11:30AM Office Hour: TR 03:20am ~ 05:20pm Website: http://EE446.is‐an‐Engineer.com Email: [email protected]
25
Embed
EE 446 Embedded Architectures (2014CSULA) 09/25/14 · EE‐446 Embedded Architectures (2014CSULA) 09/25/14 4 Embedded Systems is a computer inside a product Computer system which
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Embedded systems integrating with other systems, and must be dependable: Reliability: R(t) = probability of system working
correctly provided that is was working at the beginning (t=0)
Maintainability: M(d) = probability of system working correctly d time units after error occurred.
Availability: probability of system working at time t Safety: no harm to be caused Security: confidential and authentic communication
Embedded systems have small footprint and must be efficient: Energy efficient Code‐size efficient (especially for systems on a chip) Run‐time efficient Weight efficient Cost efficient
Specific to a certain application: Knowledge about behavior at design time can be used to minimize resources and to maximize robustness.
Specific user interface (no mouse, keyboard and screen)
Real‐Time embedded systems are meant to be front‐end, and must meet real‐time constraints: A real‐time system must react to stimuli from the controlled object (or the operator) within the time interval dictated by the environment
For real‐time systems, right answers arriving too late are wrong
Frequently connected to physical environment through sensors and actuators, Hybrid systems (analog + digital parts) Embedded systems are reactive systems, in continual interaction with environment and executes at a pace determined by environment
General Purpose Computing System Embedded System
General Purpose: Broad class of applications. Specific Purpose: Limited applications that are implemented at design‐time.
Programmable by end user Not programmable by end user
Faster is better Fixed run‐time requirements (additional computing power not useful)
Criterial: cost, average speed Criteria: cost, power consumption, predictability
Start out with a good embedded development kit (PSoC, Arduino…)
Setup a hardware development environment Carefully study datasheet Fully understand communication protocols Learn digital and analog circuit design Learn Soldering and PCB layout Use equipment to debug signals Multimeter
Learn C programming before start learning Microcontroller/Embedded Systems
Re‐write all the code, not just copy‐paste Get good source control (version control) Learn assembly language Study algorithms Learn the tools well for whatever chip you’re working on