VHDL
14 coursesFollow the courses in the recommended order.
- 01Introduction to VHDLWhat is VHDL, its history, and why use it for FPGAs?→
- 02VHDL File ArchitectureThe two fundamental blocks: the entity and the architecture.→
- 03Combinational and Sequential LogicThe fundamental distinction between combinational logic (no memory) and sequential logic (clocked).→
- 04Data TypesVHDL fundamental types: std_logic, std_logic_vector, integer, unsigned, signed.→
- 05OperatorsLogical, relational, arithmetic, and shift operators in VHDL.→
- 06Signals, Variables, and ConstantsThe three ways to store a value in VHDL: signal, variable, and constant — differences and usage.→
- 07Best PracticesNaming conventions, prefixes, and best practices for readable and maintainable VHDL code.→
- 08The Process BlockThe process block: sensitivity list, sequential statements, and combinational/sequential patterns.→
- 09Examples: MUX 4→1Complete implementation of a 4-to-1 multiplexer in different VHDL styles.→
- 10Testbenches and SimulationWriting VHDL testbenches to verify your circuit behavior before synthesis.→
- 11State Machines (Mealy/Moore)Design and implementation of Finite State Machines (FSM) in VHDL: Moore and Mealy.→
- 12Advanced VHDL ConceptsAttributes, functions, packages, procedures, subtypes and pipelining — taking VHDL to the next level.→
- 13Vivado and Other FPGA ToolsOverview of FPGA development tools — proprietary and open-source: Vivado, Quartus Prime, Libero SoC, and open alternatives.→
- 14Components & InstantiationDesigning structural architectures in VHDL: component declarations, port map, generic map, and direct instantiation.→