Designing with VHDL
Target Audience
Design engineers who want to learn how to write synthesizable RTL code in VHDL as well as simple testbenches to verify the design at a block level.
Description
This comprehensive workshop covers everything from an introduction to the VHDL language through to advanced techniques to help write more robust and reusable code. New users may wish to subscribe to the entire workshop, while users with some experience may decide to choose only the modules where they feel a need to improve their knowledge and skills. This workshop is vendor agnostic, and the techniques may be applied to any target architecture. It focuses on teaching good RTL coding style for synthesis but also discusses basic testbench and verification techniques.
The emphasis is on:
- Writing efficient hardware designs
- Performing high-level HDL simulations
- Employing structural, register transfer level (RTL), and behavioral coding styles
- Targeting AMD Xilinx devices specifically and FPGA devices in general
- Utilizing best coding practices
- Writing efficient and reusable RTL, testbenches, and packages
- Creating self-testing testbenches
- Creating realistic models
- Using the text I/O capabilities of the VHDL language
- Storing simulation data dynamically
- Creating parameterized code for design reuse
- Writing testbenches
Designing with Verilog
Target Audience
Engineers who want to use Verilog effectively for modeling, design, and synthesis of digital designs
Description
This workshop provides a thorough introduction to the Verilog language.
The emphasis is on:
- Writing efficient hardware designs
- Performing high-level HDL simulations
- Employing structural, register transfer level (RTL), and behavioral coding styles
- Targeting AMD-Xilinx devices specifically and FPGA devices in general
- Utilizing best coding practices
Designing with SystemVerilog
Target Audience
Design engineers with Verilog experience who are interested in applying the synthesizable features of SystemVerilog and SystemVerilog Assertions to their designs.
Description
This workshop provides a thorough introduction to SystemVerilog constructs and features in SystemVerilog designed to capture design intent to allow Simulation tools to analyze for correct RTL design practices and speed up the design process.
Half of the workshop is devoted to SystemVerilog Assertions (SVA), with practical exercises to reinforce the material.
The focus is on:
- Evaluating the new RTL features in SystemVerilog and what they can bring to your design methodology
- Describing the new SystemVerilog features capable of capturing the designers intent in their RTL code
- Explaining how assertions can help you in your design or verification code
- Describing and deploying the most useful SVA constructs
- Writing a broad range of SystemVerilog Assertions
- Using the bind directive to incorporate Assertions into design code at runtime
- Reviewing new data types, structs, unions, arrays, procedural blocks, re-usable tasks, functions, and packages
- Targeting and optimizing Xilinx devices using SystemVerilog
Scripting with TCL
Target Audience
Engineers and designers who would like an introduction to the Tcl scripting language.
Description
Learn how to use Tcl syntax and language structures to build scripts suitable for use with EDA design tools. Learn about the effective use of variables, data types, and Tcl constructs to build effective conditional statements and loop controls.
The focus of this workshop is on:
- Basic syntax and language structure of the Tcl language
- Executing Tcl commands from a command line script
- Understanding variables and data types
- How to use Tcl language constructs to build conditional statements and loop controls for some common FPGA applications
- Use of lists and arrays in efficient data structures
- Use of procedures, packages, and namespaces to develop modules and functions