Advanced Features and Techniques of Embedded Systems Design
provides embedded systems developers the necessary skills to develop complex embedded systems and enables them to improve their designs by using the tools available in the Vivado® IP Integrator. This course also helps developers understand and utilize advanced components of embedded systems design for architecting a complex system in the Zynq® All Programmable System on a Chip (SoC) or Microblaze™ soft processor.
This course builds on the skills gained in the Embedded Systems Design
course. Labs provide hands-on experience with developing, debugging, and simulating an embedded system. Utilizing memory resources and implementing high-performance DMA are also covered. Labs use demo boards in which designs are downloaded and verified.
Hardware, firmware, and system design engineers who are interested in Xilinx embedded systems development flow
- Embedded Systems Design course or experience with embedded systems design and Xilinx EDK tools
- Basic C programming
- Working knowledge of the Zynq SoC
The content of this course can also be accessed by FPGA designers looking for advanced training on developing embedded systems using the Xilinx MicroBlaze soft processor in a 6 Series FPGAs (such as Spartan-6 or Virtex-6). Please contact Doulos for the specifics of your requirements before booking.
- Vivado Design or System Edition 2014.1
- Architecture: Zynq-7000 SoC and 7 series FPGAs*
- Demo board: Zynq-7000 SoC ZC702 or ZedBoard or Kintex®-7 FPGA KC705 board*
* This course focuses on the Zynq-7000 SoC and 7 series architectures. Please contact Doulos
for the specifics of the in-class lab board, other customizations or 6 series based architecture.
After completing this comprehensive training, you will know how to:
- Assemble an advanced embedded system
- Take advantage of the various features of Zynq SoC and Kintex™ FPGAs, Cortex™-A9 and Microblaze processors, including the AXI interconnect and various memory controllers
- Apply advanced debugging techniques, including the use of the Vivado analyzer tool for debugging an embedded processor system and HDL system simulation for processor-based designs
- Identify the steps involved in integrating a memory controller into an embedded system using the Cortex-A9 and MicroBlaze processors
- Integrate an interrupt controller and interrupt handler into an embedded design
- Design a flash memory-based system and boot load from off-chip flash memory
- Embedded Systems Development Review
- Lab 1: Sharing PS Building a Complete System (Zynq AP SoC and MicroBlaze Processor)
- Zynq SoC Processing System Overview
- Debugging Using the Runtime Logic Analyzer
- Lab 2: Debugging on the Zynq SoC
- Block RAM Memory Controllers
- External Memory Controllers for Static Memory
- Memory Controllers for Dynamic RAM
- Lab 3: Extending Memory Resources
- AXI Streaming Interface
- System Data Movement: Low Latency and High Bandwidth
- AdvancedProcessor and Peripheral Interface Options
- Lab 4: Configuring DMA on the Zynq SoC
- AdvancedProcessor Configurations
- Software Boot and PL Configuration
- Lab 5: Boot Loading from Flash Memory
- HDL System Simulation with an Embedded Processor
- Lab 6: Simulating an Embedded Processor System
- Lab 1: Building a Complete System (Zynq AP SoC) – Develop hardware that incorporates the Zynq SoC PS or MicroBlaze processor IP cores to interface to AXI GPIO peripherals and serial communication. Use the SDK development tools to create an embedded software application project for the hardware built.
- Lab 2: Debugging on the Zynq SoC – Evaluate debugging the hardware and software components of a Zynq SoC design.
- Lab 3: Extending Memory Space with Block RAM (Zynq AP Soc) – Use the Vivado IP integrator to extend the memory resources for the Cortex-A9 processor.
- Lab 4: Configuring DMA on the Zynq SoC – Program the DMA controller on the Zynq SoC PS and explore the various Standalone library services that support the Zynq SoC PS DMA controller.
- Lab 5: Boot Loading from Flash Memory (Zynq AP Soc) – Develop an application that is stored in flash memory, load it through a boot loader program, and execute a software application from external memory for the Cortex-A9 Processor.
- Lab 6: Simulating an Embedded Processor System (MicroBlaze Processor) – Develop the process of simulating a complete design including an embedded system component using the Vivado simulator. Use SDK to create a new workspace/software application project and build a simple software application that will be included in the simulation.