FPGA Design Architecture Optimization
PGA Design/Verification Best-Practices for Quality and Efficiency
28 April 3:00 PM – 4:00 PM
The FPGA design architecture is the single most important and primary factor in achieving development efficiency, quality, and reliability. The difference between a good and a bad design architecture can be about 50% of the workload and a high degree of detected and undetected bugs. Most design architectures can be improved and optimized to increase both quality and efficiency.
The FPGA design architecture also affects several projects and product characteristics such as reusability, power consumption, resource usage, timing closure, clocking issues, implementation clarity, review easiness, and verification/test workload.
- State of the FPGA community
- Examples of bad FPGA design architectures (results and disadvantages)
- How to improve and optimize FPGA design architectures (results and advantages)
- How design and design changes can be simplified
FPGA Design – Verification Code, Functional and Specification Coverage
Functional coverage is often mentioned together with constrained-random verification, which is a great combination.
FPGA Verification Architecture Optimization with UVVM
How to make a simple, well-structured, and efficient testbench using the open-source Universal VHDL Verification Methodology (UVVM) architecture.
Using SVA for Requirements-Based Verification of Safety-Critical FPGA Designs
Thursday 10. March from 3.00 pm to 4.00pm Requirements-based verification (RBV) is a popular verification process for FPGA designs used in safety-critical systems. The effectiveness of RBV is limited by the quality and precision of the requirements. Verification...
Increase your productivity with Continuous Integration flows
In a team environment, verification engineers push code changes every day, and sometimes several times a day, to a shared repository. Each change has the potential to introduce new bugs into the design. Accordingly, when many changes are being made, it is difficult to...
Constraint Random Verification with Python and Cocotb
Cocotb, an approach to using Python as a testing language, allows developers to start with small, directed test benches and evolve them into more thorough constraint random tests.
Using OVL for Assertion-Based Verification of Verilog and VHDL Designs
Open Verification Library (OVL) is a library of property checkers for digital circuit descriptions written in popular Hardware Description Languages and maintained by Accelera. The OVL checkers could be used not only in dynamic simulation, but also in formal...
The most error prone FPGA corner cases
Cycle related corner cases are probably the worst and main reason for undetected bugs on many FPGAs. To explain this in a simple way, – a cycle related corner case is for instance if you have an event counter where the number of counted events is critical and you read and reset this counter at regular intervals.
UVM for FPGAs Seminar – Part 4 – IEEE 1800.2 UVM Updates
As with many popular useful standards, UVM has attained the coveted IEEE standardization in 2017. Interestingly, UVM is the first verification methodology to be standardized, and the current version is IEEE 1800.2-2020.