Now that you have had some basic training in FPGA design, next you will likely want to develop some design capabilities. In the long term, I tell my students I want them to become dangerous, so expert at their craft that competitors will fear them. This module will help you become much more effective at FPGA design. In module 1, we introduce programmable logic devices and the FPGA. In module 2, we use Quartus Prime to work through a sample FPGA design. In module 3, we learn more about FPGA architectures and capabilities, adding a number of weapons to our arsenal. In this module, we will practice using those weapons, and extend our knowledge of FPGA design by using additional design tools. In the next video, you will further your knowledge of schematic entry for FPGAs by adding an adder circuit to the pipelined multiplier design. You will learn how to add input and output ports to a schematic, how to use the basic symbol library to create low level circuits, and how to create hierarchy in a schematic design. Next, we will improve design entry productivity by the use of IP blocks. We will contrast your previous design entry experience with schematics, to the use of IP blocks to more quickly create your design. You add IP blocks to your design to add some functionality akin to a basic ALU. We will learn to improve timing with pipelining, large combinatorial delays between the input and output can dramatically lower the design maximum frequency. In some cases, combinatorial delays can be broken into pieces by insertion of flip-flops known as retiming, or pipelining. We will learn how pipelining in principle can be applied to improve timing in FPGA designs, and how to use pipelining in IP blocks to improve timing. Next, we'll look at FPGA IO: Getting in and getting out. FPGAs have extensive IO capabilities, including many IO standards and controllable circuit characteristics, but keeping track of the wealth of options can lead to errors. We can reduce IO pin assignment errors, by the use of methods that help document and track IO usage. Differential logic standards like LVDS and LVPECL are increasingly popular in FPGAs as they allow increased speed, and better noise immunity at the same time. We will learn how to handle these interfaces. We'll also learn about making pin assignments spot on. To do this, you'll learn how to do pin assignments using the Pin Planner and the Assignment Editor, how to meet IO standards and control IO properties using the Assignment Editor, and how to check IO assignments using the IO Assignment Analyzer. Essentially, we will learn about programming the FPGA. The Quartus Prime software contains an assembler, which creates the programming file, and a programmer, which downloads the file using a download cable like a USB Blaster II, Byte Blaster II, or Ethernet Blaster II. You will learn how to create the right type of programming file for a given situation, how to set up your hardware chain for programming and which programming mode to use, and how to download a program into the target device. Finally, we will become one with Q. We'll do a Qsys system design. Your training continues with an introduction to Qsys, a system design tool. You will learn how to create a Qsys system, how to build a NIOS II soft-core processor, and how to add memory and peripherals to the NIOS II Qsys design. You will learn how to build a bridge between the processor and the FPGA fabric, and how to bring the Qsys design into the top level to be compiled. In summary, we will learn about the FPGA design flow by working through more example designs in detail using Quartus Prime. Videos in this module will cover FPGA design expertise, advanced schematic entry for FPGA design, including both drawing and hierarchy, improving productivity with IP blocks, improving timing with pipelining, FPGA IO: Getting in and getting out, pin assignments making them spot on, programming the FPGA, becoming one with Q the Qsys system design, and becoming one with Q part II Qsys system design with finishing touches. I hope you're ready to prepare for your mission and make good use of this arsenal of tools, and becoming an expert in FPGA design.