Digital Systems

The Digital Systems course follows the Digital Logic and Microprocessors courses, and explores designs and methods that use both the ARM and FPGA. Experience using Vivado and the Blackboard for hardware design and implementation, and SDK, C and/or Assembly for software design is assumed.

Building on the experience gained in the previous courses, this course examines more complex digital systems that have both a hardware and software component. Most design projects result in custom hardware IP blocks that are controlled by the ARM processor via the AXI bus. Hardware/software interactions and interfaces can be explored in detail, and tradeoffs can be evaluated as designs progress.