Intricacies of Blocking vs Non-Blocking Assignment Statements in SystemVerilog Have you really understood the nuances of Blocking vs Non-Blocking Assignment statements in SystemVerilog?
Designing with Xilinx Memory Primitives: Understanding Inference vs Instantiation When would you infer a memory primitive? What are the advantages of instantiating a memory module? There is a third alternative to inference vs instantiation. Do you know what it is?
An Introduction to Xilinx FPGA Memory Primitives Practical Insights into BlockRAM, Distributed RAM, and UltraRAM usage in your designs.
Gray Codes and Their Uses in Digital Design What are Gray Codes? Where are these codes used in Digital Design?
Control Sets Demystified What are Control Sets in an FPGA Design? How do they affect the QoR of the final Placed and Routed Design?
Design Question - Pulse Generator You are asked to design a module that generates a pulse, once every 32 clocks. How many ways can you implement the design? Would you do anything different if you are targeting a Xilinx UltraScale+ FPGA?
Rethinking Resets: Best Practices for FPGA Design While designing an RTL module, most engineers do not even give a second thought to the reset signal. Every textbook on the subject touches upon the pros and cons of synchronous vs asynchronous resets. The texts generally focus on the correct syntax for inferring a synchronous or an asynchronous reset.