Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Functional VHDL Simulation Problem with Altera dual clock fifo

Reply
Thread Tools

Functional VHDL Simulation Problem with Altera dual clock fifo

 
 
Thomas Fischer
Guest
Posts: n/a
 
      04-09-2005
Altera Modelsim 5.8e

I'm new to modelsim and try to make a functional simulation for a
project with an
Altera Fifo (dcfifo).

I get the following simulation error:
last value in fifo cannot be read, rdempty flag toggles when last
value is tried to read.

the problem only occures, if a signal is used as the rdclk,
if the rdclk is taken directly from the entity port clk_i everything
works fine.

...
...
begin

txf_rdclk <= clk_i; -- problem if txf_rdclk is used in port map

txfifo : dcfifo0
PORT MAP (
wrclk => wrclk_i,
rdreq => txf_rdreq,
aclr => rst_i,
rdclk => txf_rdclk, -- problem if txf_rdclk is used in port map
-- rdclk => clk_i, -- this works fine
wrreq => wrreq_i,
data => data_i,
rdfull => txf_rdfull,
rdempty => txf_rdempty,
wrusedw => txf_wrusedw,
wrfull => txf_wrfull_o,
wrempty => txf_wrempty,
q => txf_q,
rdusedw => txf_rdusedw
);
...
...

why does i have problems with the signal txf_rdclk ?
 
Reply With Quote
 
 
 
 
Thomas Fischer
Guest
Posts: n/a
 
      04-09-2005
Thomas Fischer schrieb:
> Altera Modelsim 5.8e
>
> I'm new to modelsim and try to make a functional simulation for a
> project with an
> Altera Fifo (dcfifo).
>
> I get the following simulation error:
> last value in fifo cannot be read, rdempty flag toggles when last
> value is tried to read.
>
> the problem only occures, if a signal is used as the rdclk,
> if the rdclk is taken directly from the entity port clk_i everything
> works fine.
>
> ..
> ..
> begin
>
> txf_rdclk <= clk_i; -- problem if txf_rdclk is used in port map
>
> txfifo : dcfifo0
> PORT MAP (
> wrclk => wrclk_i,
> rdreq => txf_rdreq,
> aclr => rst_i,
> rdclk => txf_rdclk, -- problem if txf_rdclk is used in port map
> -- rdclk => clk_i, -- this works fine
> wrreq => wrreq_i,
> data => data_i,
> rdfull => txf_rdfull,
> rdempty => txf_rdempty,
> wrusedw => txf_wrusedw,
> wrfull => txf_wrfull_o,
> wrempty => txf_wrempty,
> q => txf_q,
> rdusedw => txf_rdusedw
> );
> ..
> ..
>
> why does i have problems with the signal txf_rdclk ?


I'm still learning, seems to be some sort of "delta cycle race condition"
 
Reply With Quote
 
 
 
 
Paul Uiterlinden
Guest
Posts: n/a
 
      04-11-2005
Thomas Fischer wrote:
> Thomas Fischer schrieb:
>
>> the problem only occures, if a signal is used as the rdclk, if the
>> rdclk is taken directly from the entity port clk_i everything
>> works fine.

>
> I'm still learning, seems to be some sort of "delta cycle race condition"


It is not a race condition in the sense of the definition of a race
condition. The outcome is determinitic because it does not depend of the
order of evaluation of processes (including signal assignments).

Each signal assignment adds a delta cycle delay. By adding a signal
assignment in the clock, the receiving block is clocked one delta cycle
later. The effect of this is that it clocks in the new signal values
(after the clock edge) of sending blocks running on the original clock
(without the extra signal assgnment).

In general it is a bad idea to put signal assignments in clocks. Or you
must make sure that all clocks derived from a common clock source
contain the same number of signal assignments.

Some other solutions are discussed in
http://verificationguild.com/modules...ewtopic&p=1765

Paul.
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
equivalent Xilinx FPGA for Altera Stratix II GX-60 ,Altera StratixII GX-90 chaitu VHDL 1 01-28-2008 12:46 PM
clock-domain-crossing simulation in Altera kpram VHDL 0 11-15-2007 11:43 AM
any body having complete code for a synchronous FIFO or know a link where FIFO codes are available chaitu VHDL 1 06-01-2007 03:45 AM
any body having complete code for a synchronous FIFO or know a link where FIFO codes are available chaitu VHDL 1 05-31-2007 03:31 PM
any body having complete code for a synchronous FIFO or know a link where FIFO codes are available chaitu VHDL 0 05-31-2007 02:28 PM



Advertisments