ECE 785 601 Advanced Computer Design
3 Credit Hours
In depth study of topics in computer design; advantages and disadvantages of various designs and design methodologies; technology shifts, trends, and constraints; hardware/software tradeoffs and co-design methodologies.
Prerequisite
ECE 561 is a prerequisite or corequisite (can be taken same semester). No other prerequisites.
Couse Objectives
- Build multithreaded embedded systems with Linux on a Raspberry Pi 4
- Understand key features of ARM ISA, Cortex-A72 and Raspberry Pi 4
- Develop multithreaded programs with PThreads on Linux
- Write code to interface with peripherals (GPIO, I2C, SPI, UART, timers, ADC, DAC, PWM)
- Evaluate real-time characteristics of platform
- Evaluate responsiveness of callbacks, interrupt handlers
- Evaluate real-time characteristics of platform (memory system, OS interference) and stabilize it
- Program execution time optimization
- Profile program execution time with perf
- “Optimize” program execution time using algorithms, SIMD programming and tuning for compiler/microarchitecture/memory system
Course Requirements
Projects in Raspberry Pi 4 | 60% |
Homeworks | 20% |
Quizzes | 20% |
Required Textbook and Materials
- Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux – Derek Molloy
Edition: 1st
ISBN: 978-1119188681
Web Link: http://exploringrpi.com/
Raspberry Pi 4 (2 or 4 GB RAM recommended), uSD card, power supply – $70 - Edition: 1st
- ISBN: 978-1119188681
- Web Link: http://exploringrpi.com/
- Raspberry Pi 4 (2 or 4 GB RAM recommended), uSD card, power supply – $70
- Logic Analyzer/Mixed Signal Oscilloscope (e.g. Digilent Analog Discovery 2, http://store.digilentinc.com/analog-discovery-2-100msps-usb-oscilloscope-logic-analyzer-and-variable-power-supply/) – $180
- Minor Assorted Electronic Prototyping Equipment (Breadboard, jumper wires, etc.) – $30
Updated 11/02/2020