Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

'after' in Timing Simulation tool

I'm create a simple program that simply delays the clock in 10ns.

I used:

------------------------------------------------------------

LIBRARY ieee;

USE ieee.std_logic_1164.all;

USE ieee.std_logic_arith.all;

USE ieee.std_logic_unsigned.ALL;

------------------------------------------------------------

ENTITY delay_clock IS

PORT ( clk : IN BIT;

clk_no_delay : OUT BIT;

clk_delay : OUT BIT);

END delay_clock;

------------------------------------------------------------

ARCHITECTURE test OF delay_clock IS

BEGIN

clk_no_delay <= clk;

clk_delay <= clk after 10ns;

--clk_delay <= '1';

END test;

But, when I simulate this in Quartus, the delay isn't 10 ns, why ???

Thank you,

Rester

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    IIRC, the quartus simulator only does gate level simulations, not code level. Therefore the "after" keyword is thrown away during synthesis as it has no meaning in real hardware.

    You will have to use modelsim to see this working.