• Embedded systems overview: CPU vs DSP vs PLC vs GPU vs ARM, Cortex A8 and A9, SoC memory subsystems
• ADC and DAC interfacing
• I/Os: Multi-standard I/Os, GPIOs, high-speed transceivers; CMOS, LVDS, LVPECL signalling
• Serial interfacing: SPI, RS232, RS485, I2C, UART, CAN, USB, HDMI
• ARM architecture (cortex A8)
• Embedded software and operating system: process, scheduling; fork and exec, process – child and parent, process id, spawning new process, inter process communication, boot sequence, BIOS, ROM, shell, DOS, UEFI boot, file system, Inode based file systems, POSIX standard Inodes, Flash memory based file systems, device drivers.
• Watchdog timers
• Introduction to Zynq 7000 series SoC: Processing system (PS), Programmable logic (PL) – FPGA, DSP, RAM; general purpose AXI ports, high-performance AXI ports, timers, memory interfaces, clocking between PS and PL
• SoC interconnect (PS-PL interconnect): AXI signalling, AXI4Stream, SPI-AXI4 stream implementation, direct memory access (DMA), comparison of data movement methods.
• Lab: (a) TIVA-C: periphery interfacing, assembly programming, interfacing with network processor (b) Zynq-7000: hardware accelerators
Text/References
• David Simon, “An Embedded Software Primer”, Addison Wesley, 2000
• Jack Ganssle, “The Art of Designing Embedded Systems”, Newnes, 1999
• ARM Cortex A8 TRM: Documentation
• ARM Cortex A9 TRM: Documentation
• TIVA-C documentation: Labsheets
• Zynq 7000 SoC TRM: Documentation