Upload
dawson-johnes
View
214
Download
0
Tags:
Embed Size (px)
Citation preview
7/23
CSE 325 Embedded Microprocessor System Design
Fall 2010
Computer Science & Engineering DepartmentArizona State University
Tempe, AZ 85287
Dr. Yann-Hang [email protected] 552
(480) 727-7507
set 1 -- 2
Course Syllabus (1)
To focus in the integration of hardware modules to construct embedded systems, the programming models and characteristics of various input/out
interfaces. Use either assembly language or any high-level languages
Course Goals: Develop an understanding for using a CPU core as a component in
system-level design. Ability to integrate CPU core with various interface units in embedded
controllers. Skills for programming and debugging I/O operations to manage
peripherals for embedded applications. Pre-requisites:
Assembly language, microprocessor organization, and experience of C programming language
set 1 -- 3
Course Syllabus (2)
Major topics covered: Introduction and review of instruction set and assembly
language programming (3 lectures) Interfacing between C and assembly languages (2 lectures) Coldfire processor and IO multiplexing (2 lecture) Interrupt and exception (2 lectures) Timers and counters (2 lectures) Serial communication: UART, SPI, and I2C (5 lectures) Parallel I/O interface and signal handshaking (2 lectures) Keyboards and LCD (3 lectures) A/D-D/A converters (2 lectures) Memory devices, SRAM, DRAM, flash memory, and SDRAM
controller (4 lectures)
set 1 -- 4
Course Syllabus (3)
Office hours: 3:45pm – 5:30pm, Monday and Wednesday
Evaluation Midterm exams (20%) (during the class periods on March 10) Lab assignments (50%) Final exam (30%) (during the final exam period scheduled by
the University, i.e. 9:50-11:40am, Dec. 15)
You can bring in a set of manuals (to be specified), calculator, and a 3x5 note card to the exams.
set 1 -- 5
Target Environment
Freescale Project Board Student Learning Kit and Coldfire 5211SLK
Development Software CodeWarrior IDE (editor, compiler, assembler, debugger, etc.)
set 1 -- 6
Embedded Systems
Computer (general) PC on desk top
Windows, email, instant message, Microsoft word, power point, games
computation and communication
Embedded system the software and
hardware component
that is an essential
part of an application
systemPlantsensor actuator
Control andcomputation
Reference input
Embedded Controller
Embedded Systems -- Examples
set 1 -- 8
Applications of Embedded Systems
They are everywhere How many CPUs in your PC The average new car has a dozen microprocessors
in it. The Mercedes S-class has 65. How many microprocessors in average household
microwave oven washer, dryer, dishwasher garage opener HDTV
set 1 -- 9
Hardware Platform
Organization buses to connect
components – PCI, ISA, PC104+
Package standard chips on PC processor + ASIC SOC
CPU(micro-
processor)
I/O
I/O
I/O
I/O
Timer
memory
set 1 -- 10
Embedded Processors
Must be optimized for applications performance, speed power I/O peripherals
Processor cores + peripheral interfaces x86 processor + PCI bus
SoC (system on a chip) architecture integrate CPU core and peripheral interfaces on one chip with some internal RAM and external boot memory extendable with an external bus HC11 micro-controller
SoC platforms configurable IP blocks and software support Applications: handheld computing, cellular phone, infotainment,
automobile, etc.
set 1 -- 11
Simple SW Structure for Embedded Systems
To write the control software (program) for a smart washer initialize read keypad or control knob read sensors take an action
System current state state transition diagram external triggers via
polling or ISR
Threads for concurrent operations
initialization
external trigger?
Take actions
Change system state
ISR: to set/clearevents
set 1 -- 12
Software Structure of Periodic Tasks
Invoke computation periodically Adjust pressure valves at a 20 Hz rate
wait for the interrupt event
Task initialization(set up periodic timer interrupts)
computation
start_time=time( )
Task initialization
computation
Sleep(period - ( time( ) -start_time) )
set 1 -- 13
Embedded System Development
Development process integrate HW components develop programs Test
Development environment
Requirements
Test/verificationImplementation(HW and SW)
Ethernet
Simulated signal source
(Workstation, embedded system development tools)
(workstation, interface cards, & test harness)
Development workstation Embedded systems
set 1 -- 14
Development Environment
Use the host to edit, compile, and build application programs configure the target
At the target embedded system, use tools to load, execute, debug, and monitor (performance and timing)
Target
X.cX.cpp
X.sMakefile
GNU
X.oX.out
vxWorks
CrossWind
WindSh
BrowserWindView
TornadoTools
VxWorksRTOS &
Target agent
WDBAgent
TargetServer
Applications(text, data)
Host Target