Another common source of non-synthesisable RTL code is testbenches. Testbenches commonly uses delays:
// Typical RTL testbench contents: // Set the time in seconds for each clock unit. `timescale 1 ns reg clk, reset; initial begin clk=0; forever #5 clk = !clk; end // Clock source 100 MHz initial begin reset = 1; # 125 reset = 0; end // Power-on reset generator
Take away summary: The industry has essentially zeroed-in on a very narrow synthesisable RTL subset and higher-level input forms are processed with their own compilers that create low-level RTL as their output language.
24: (C) 2008-16, DJ Greaves, University of Cambridge, Computer Laboratory. | Flash Player Upgrade Needed ![]() ![]() | ![]() |