1 of 16

EE 319K�Introduction to Embedded Systems

Lecture 15b: �Computer Architecture and Embedded Systems

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Monday, May 17: 7-10pm, Canvas style quiz

15-1

2 of 16

Comp Architecture/Embedded Systems

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Electives

Embedded

Systems Lab

(EE 445L | FS)

Real-Time

and Embedded

Systems

(EE 445M | S)

Real-Time

DSP

Laboratory

(EE 445S | FS)

Digital

System Design

(EE 460M | FS)

Computer

Architecture

(EE 460N | FS)

Introduction to

Microcontrollers

(EE 319K | FS)

Digital Logic

Design

(EE 316 | FS)

Algorithms

(EE 360C | FS)

Concurrent and

Distributed

Systems

(EE 360P | S)

Computer-Aided

IC Design

(EE 460R | FS)

From small To large systems

Operating Systems

(EE461S | FS)

15-2

3 of 16

Comp Architecture/Embedded Systems

  • Required
    • EE 316 Digital Logic Design
    • EE 460N Computer Architecture
    • EE 445L Embedded Systems Lab
    • EE 360C Algorithms
    • M 325K Discrete Mathematics
  • Three of the following
    • EE 422C Software Design and Implementation II
    • EE 445M Real-Time OS
    • EE 445S Real-Time Digital Signal Processing Lab
    • EE 460M Digital Systems Design Using VHDL
    • EE 360P Concurrent and Distributed Systems
    • EE 460R Computer-Aided Integrated Circuit Design
    • EE 362K Introduction to Automatic Control
    • EE 461S Traditional OS
    • EE 438 Electronics (get a course substitution)
    • EE 379K A very long list of new classes)

Bard, Tiwari, Telang, Cuevas, Gerstlauer, Valvano, Yerraballi

https://utexas.app.box.com/s/m75ly671ces3z5mgjwpfyt3f5o8woj25

15-3

4 of 16

Computer System Design

  • Applications,
  • Operating systems,
  • Compilers,
  • Instruction set,
  • Microarchitecture,
  • Logic design,
  • Circuit design

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Understanding the operation and design of computers

Good secondary cores: Electronics and IC, Software

15-4

5 of 16

Growth projections

  • Just who is in control?

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

year-over-year

Ref: IoT and Edge Computing for Architects, Lea

15-5

6 of 16

Growth projections

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Ref: IoT and Edge Computing for Architects, Lea

15-6

7 of 16

Computer Architecture Area

  • Design of general-purpose computer systems

From personal (laptops, desktops) to cloud (servers)

  • Which courses are most relevant & important?

EE 460N for computer architecture

  • What are important technical challenges today?

Size, speed, security, software/hardware, power

  • What industries/companies need these skills?

Any company making computer equipment

  • How do I prepare for graduate school?

Take EE 460N Comp. Arch. and EE 360C Algorithms

Get involved in undergraduate research

MS degree is essential for this area

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

15-7

8 of 16

Embedded Systems Area

  • Design of special-purpose computer systems

From toasters (μController) to airplanes (systems-on-chip)

  • Which courses are most relevant & important?

EE445L digital-analog codesign, systems level design

EE445M real-time operating systems, device drivers, and autonomous robots

EE445S real-time signal processing

  • What are important technical challenges today?

Time-to-market; maximizing use of Moore’s law

Size, power, profit margins

  • What industries/companies need these skills?

Any company making super high volume products

  • How do I prepare for graduate school?

Take EE 460N Comp. Arch. and EE 360C Algorithms

Get involved in undergraduate research

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

15-8

9 of 16

EE460N Computer Arch

  • What is Architecture, Tradeoffs
  • Instruction Set Architecture, LC-3b ISA
  • Assemblers: Translating Assembly Language to ISA
  • Microarchitecture: Detailed LC-3b implementation
  • Physical memory, unaligned access, interleaving, SRAM, DRAM
  • Virtual memory, page tables, TLB, VAX model, PowerPC model, contrast with segmentation
  • Cache memory
  • Interrupts/Exceptions
  • I/O
  • Performance Improvement. Metrics, Pipelining.
  • Branch prediction
  • Out-of-order execution
  • Vector processing
  • Integer arithmetic, Floating point, IEEE Standard
  • Measurement Methodology
  • Intro to Multiprocessing, Interconnection networks, Amdahl's Law, Consistency models
  • Cache coherency
  • Alternative Models of Concurrency: SIMD, MIMD, VLIW, dataflow, etc.
  • State-of-the-art Microprocessor

15-9

10 of 16

EE460N - Labs

  • Write an assembler
  • Write an instruction set simulator
  • Write a cycle-level simulator
  • Interrupt support
  • Virtual memory
  • Pipeline

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

15-10

11 of 16

EE460M Digital Design Using VHDL

  • Review of Basic Logic Design Techniques (with emphasis on timing)
  • Design Flow, High Level Design
  • VHDL Descriptions of Digital Systems and Simulation
  • Synthesis
  • Design using Programmable Logic Devices
  • SM Charts
  • Field Programmable Gate Arrays (FPGAs)
  • Advanced Topics in VHDL
  • Test Generation and Design for Testability
  • Rapid Prototyping using FPGAs

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Applicable to both embedded and architecture

15-11

12 of 16

EE460M - Labs

  • VHDL’s timing to model gate-level circuits
  • FSM simulation
  • VHDL Package Sorter
  • Traffic Meter Simulation
  • BCD conversion, Square Root
  • Microprocessor Design & Implementation in FPGA
  • VGA Graphics and Keyboard Interface

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

15-12

13 of 16

EE445L Embedded Systems Lab

  • debugging with an oscilloscope and a logic analyzer;
  • design of an alarm clock and I/O driver;
  • design of a real-time data acquisition system;
  • Motor control;
  • design of a music player, DAC, data structure design;
  • Power management and PCB layout;
  • Wireless communication, IoT, layered protocol;
  • board-level design, construction and testing of a complete embedded system

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

15-13

14 of 16

EE445L - Labs

  • Lab 1. ASCII to fixed-point output to OLED
  • Lab 2. Debugging, oscilloscope, logic analyzer, dump
  • Lab 3. Alarm clock, edge-triggered input interrupts
  • Lab 4. Wifi, UART, distributed systems, IoT
  • Lab 5. 12-bit DAC, SPI, Music player, audio amp
  • Lab 6. Introduction to PCB Layout, PCB Artist
  • Lab 7. Design and Layout of an Embedded System
  • Lab 8. Software Drivers for an Embedded System
  • Lab 9. Measurement, ADC, analog amp
  • Lab 10. DC motor control, PWM, input capture, IoT
  • Lab 11. Evaluation of Embedded System

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Watch the projects

Look for YouTube links on Canvas

http://users.ece.utexas.edu/%7Evalvano/EE445L/

15-14

15 of 16

EE445M Real-time operating systems

  • Lab 1. I/O port drivers
  • Lab 2. Real-time operating system kernel
  • Lab 3. Blocking semaphores, priority
  • Lab 4. Solid state disk, file system
  • Lab 5. Layered software, boot loader
  • Lab 6. Distributed acquisition using CAN
  • Lab 7. Formula 0001 Racing Robot

Bard, Tiwari, Telang, Erez, Cuevas, Gerstlauer, Valvano, Yerraballi

Go watch the races in Spring 22

http://users.ece.utexas.edu/~gerstl/ee445m_f20/

15-15

16 of 16

For more information

  • Chiou, Derek (parallel)
  • Erez, Mattan (architecture)
  • Evans, Brian L. (DSP applications)
  • Garg, Vijay (distributed systems)
  • Gerstlauer, Andreas (embedded systems, IC)
  • John, Lizy (multicore architecture)
  • Kulkarni, Jaydeep (circuits)
  • Marculescu, Diana (energy- and reliability-aware computing)
  • Marculescu, Radu (ML/AI methods for embedded systems)
  • Patt, Yale (architecture)
  • Swartzlander, Earl (architecture)
  • Tiwari, Mohit (architecture, security)
  • Valvano, Jonathan (embedded medical devices)

Bard, Tiwari, Telang, Erez, Janapa Reddi, Gerstlauer, Valvano, Yerraballi

http://www.ece.utexas.edu/academics/graduate/tracks/acses

15-16