3. 강의목표
This course covers microprocessors and their applications. "Embedded systems" are devices with microprocessors "embedded" in their hardware. These microprocessors control most "intelligent" aspects of such systems. Microprocessors are single-chip semiconductor devices that house central processing units (CPUs, each consisting of multiple cores), which are at the heart of all computer systems. This course introduces the student to the basics of how computers work, how to program the CPU cores to perform precise control and monitoring of embedded systems using both assembly and C language, and how to actually implement such programs for various types of applications. Projects based on ARM processor-based test and development boards are used to enable the student to get hands-on experience with such programming tasks.
(본 수업은 마이크로프로세서와 그의 응용을 다룬다. "임베디드 시스템"은 마이크로프로세서를 "내장한 (임베드 한)" 하드웨어를 의미한다. 이러한 시스템의 "지능적인" 행동은 다 마이크로프로세서에 의해서 제어된다. 마이크로프로세서는 단일 칩 반도체 장치로서 중앙 처리 장치(이것을 CPU라고 하며 이는 흔히 여러 core로 구성되어 있음)를 내장한 시스템이다. 본 수업에서는 컴퓨터의 기본적인 작동 방법을 다루며, assembly 와 C 언어로 core 를 프로그래밍해서 임베디드 시스템을 매우 정교하게 제어하거나 관찰하는 방법을 다루며, 다양한 응용 분야에서 이러한 프로그램을 활용하는 방법을 다룰 것이다. ARM processor 기반 테스트 보드를 활용한 프로젝트를 통해서 학생은 이러한 프로그래밍에 대한 직접적인 경험을 갖게 된 것이다.)
4. 강의선수/수강필수사항
EECE273 Digital System Design
5. 성적평가
Midterm Exam: 30%
Final term Exam: 30%
Projects: 30%
Attendance and In-Class Participation: 10%
6. 강의교재
도서명 |
저자명 |
출판사 |
출판년도 |
ISBN |
Embedded Systems: ARM Programming and Optimization (1st Edition)
|
Jason D. Bakos
|
Elsevier
|
2016
|
9780128003428
|
7. 참고문헌 및 자료
[1] Jason D. Bakos, Embedded Systems: ARM Programming and Optimization, 2nd Edition, Elsevier, 2025.
[2] Israel Gbati, Bare-Metal Embedded C Programming: Develop high-performance embedded systems with C for Arm microcontrollers, Packt Publishing, 2024.
[3] Alexander G. Dean, Embedded Systems Fundamentals with Arm Cortex-M based Microcontrollers: A Practical Approach, Nucleo-F091RC Edition, ARM Education Media, 2021.
8. 강의진도계획
Syllabus (Tentative):
Week01 - Course Introduction, Computer Terminology, and Binary Arithmetic
Week02 - LINUX, High Level Language, and Assembly
Week03 - The ARM Instruction Set Architecture (ISA)
Week04 - Three Main Computer I/O Methods and Address Mapping for I/O
Week05 - Hardware Timers and Performance Measurements
Week06 - Chooseuk Break
Week07 - Advanced Arithmetic and Mixed C/Assembly Programming
Week08 - Review and Midterm Exam
Week09 - Computer Architecture and Parallel Programming Using OpenMP
Week10 - CPU Performance Improvement, Part 1
Week11 - CPU Performance Improvement, Part 2
Week12 - Computer Communication
Week13 - ADC, DAC, SPI, and I2C
Week14 - Direct Memory Access (DMA)
Week15 - AI Programming
Week16 - Overall Review and Final Exam
9. 수업운영
Lectures, Projects
11. 장애학생에 대한 학습지원 사항
- 수강 관련: 문자 통역(청각), 교과목 보조(발달), 노트필기(전 유형) 등
- 시험 관련: 시험시간 연장(필요시 전 유형), 시험지 확대 복사(시각) 등
- 기타 추가 요청사항 발생 시 장애학생지원센터(279-2434)로 요청