this code causes 100% simulation failure.
Rx
this code causes 100% simulation failure.
Rx
Are you 100% sure that AVAIL is making a transition to '1' at some time after the previous wait has finished?
Don't forget that "wait until" is EDGE triggered. It will wait forever if AVAIL is stuck at '1'.
-- Jonathan Bromley, Consultant
DOULOS - Developing Design Know-how VHDL * Verilog * SystemC * Perl * Tcl/Tk * Verification * Project Services
Doulos Ltd. Church Hatch, 22 Market Place, Ringwood, Hampshire, BH24 1AW, UK Tel: +44 (0)1425 471223 mail: snipped-for-privacy@doulos.com Fax: +44 (0)1425 471573 Web:
The contents of this message may contain personal views which are not the views of Doulos Ltd., unless specifically stated.
And to add to what Jonathan said, if you want to do a level check, do the following:
if (Avail /= '1') then wait until AVAIL = '1'; end if ;
Read wait as stop. Wait always stops for at least one delta cycle.
Cheers, Jim
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Jim Lewis Director of Training mailto:Jim@SynthWorks.com SynthWorks Design Inc. http://www.SynthWorks.com 1-503-590-4787 Expert VHDL Training for Hardware Design and Verification ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.