FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > FPGA

FPGA comp.arch.fpga newsgroup (usenet)

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 10-11-2006, 12:57 AM
nbg2006@gmail.com
Guest
 
Posts: n/a
Default Xilinx coregen fifo

I generated a fifo with block rams with two independent clocks and a
symmetric widths and depths. the fifo manual digrams state that with
read enable high the data can be read out of the fifo every clock
cycle.
The wr_en signal is running at a half of the write cycle frequency .i.e
the valid data is present on the input bus every second cycle of write
clock. Now once the data has been written I disable the wr_en . I
enable the read enable and the signal is kept at constant high till the
fifo becomes empty.
I simulated the fifo and it turns out that the fifo ouputs the data
every second cycle with a constant high on the rd_en pin.

Is there something to be tweaked to make it output every clock cycle or
is that the peak performance?

Reply With Quote
  #2 (permalink)  
Old 10-11-2006, 01:18 AM
Peter Alfke
Guest
 
Posts: n/a
Default Re: Xilinx coregen fifo

If your clock rate is reasonable, then I suspect incorrect timing
(set-up and hold) between the WE and the write clock, so that you are
actually writing on each clock edge (although you want to write only on
every other one.)
That means you write every word twice, and thus it looks as if the
reading is at half speed.
Peter Alfke, Xilinx
=============
nbg2006@gmail.com wrote:
> I generated a fifo with block rams with two independent clocks and a
> symmetric widths and depths. the fifo manual digrams state that with
> read enable high the data can be read out of the fifo every clock
> cycle.
> The wr_en signal is running at a half of the write cycle frequency .i.e
> the valid data is present on the input bus every second cycle of write
> clock. Now once the data has been written I disable the wr_en . I
> enable the read enable and the signal is kept at constant high till the
> fifo becomes empty.
> I simulated the fifo and it turns out that the fifo ouputs the data
> every second cycle with a constant high on the rd_en pin.
>
> Is there something to be tweaked to make it output every clock cycle or
> is that the peak performance?


Reply With Quote
  #3 (permalink)  
Old 10-12-2006, 05:43 PM
nbg2006@gmail.com
Guest
 
Posts: n/a
Default Re: Xilinx coregen fifo

Thanks for the reply . I was making the silly mistake of writing the
word twice but now I corrected it .The simulations are proper but when
i writie it onto the fpga and check it using chipscope it gives me
data on every second sample of plb clock instead of every sample. I am
reading the fifo using plb clock but in chipscope pro I see a new data
every second sample which ruins my whole state machine inputs .i.e the
data output of fifo is maintained for 2 cycles inspite of me reading it
every cycle .
I use plb clock for the chipscope pro samples.


Peter Alfke wrote:
> If your clock rate is reasonable, then I suspect incorrect timing
> (set-up and hold) between the WE and the write clock, so that you are
> actually writing on each clock edge (although you want to write only on
> every other one.)
> That means you write every word twice, and thus it looks as if the
> reading is at half speed.
> Peter Alfke, Xilinx
> =============
> nbg2006@gmail.com wrote:
> > I generated a fifo with block rams with two independent clocks and a
> > symmetric widths and depths. the fifo manual digrams state that with
> > read enable high the data can be read out of the fifo every clock
> > cycle.
> > The wr_en signal is running at a half of the write cycle frequency .i.e
> > the valid data is present on the input bus every second cycle of write
> > clock. Now once the data has been written I disable the wr_en . I
> > enable the read enable and the signal is kept at constant high till the
> > fifo becomes empty.
> > I simulated the fifo and it turns out that the fifo ouputs the data
> > every second cycle with a constant high on the rd_en pin.
> >
> > Is there something to be tweaked to make it output every clock cycle or
> > is that the peak performance?


Reply With Quote
  #4 (permalink)  
Old 10-12-2006, 06:31 PM
Peter Alfke
Guest
 
Posts: n/a
Default Re: Xilinx coregen fifo

I am sure you are making another "silly mistake".
Just keep debugging it, carefully and methodically...
Peter Alfke
==============
nbg2006@gmail.com wrote:
> Thanks for the reply . I was making the silly mistake of writing the
> word twice but now I corrected it .The simulations are proper but when
> i writie it onto the fpga and check it using chipscope it gives me
> data on every second sample of plb clock instead of every sample. I am
> reading the fifo using plb clock but in chipscope pro I see a new data
> every second sample which ruins my whole state machine inputs .i.e the
> data output of fifo is maintained for 2 cycles inspite of me reading it
> every cycle .
> I use plb clock for the chipscope pro samples.
>
>
> Peter Alfke wrote:
> > If your clock rate is reasonable, then I suspect incorrect timing
> > (set-up and hold) between the WE and the write clock, so that you are
> > actually writing on each clock edge (although you want to write only on
> > every other one.)
> > That means you write every word twice, and thus it looks as if the
> > reading is at half speed.
> > Peter Alfke, Xilinx
> > =============
> > nbg2006@gmail.com wrote:
> > > I generated a fifo with block rams with two independent clocks and a
> > > symmetric widths and depths. the fifo manual digrams state that with
> > > read enable high the data can be read out of the fifo every clock
> > > cycle.
> > > The wr_en signal is running at a half of the write cycle frequency .i.e
> > > the valid data is present on the input bus every second cycle of write
> > > clock. Now once the data has been written I disable the wr_en . I
> > > enable the read enable and the signal is kept at constant high till the
> > > fifo becomes empty.
> > > I simulated the fifo and it turns out that the fifo ouputs the data
> > > every second cycle with a constant high on the rd_en pin.
> > >
> > > Is there something to be tweaked to make it output every clock cycle or
> > > is that the peak performance?


Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

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 On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Xilinx FIFO Generator: FIFO Length Nemesis FPGA 9 10-26-2005 03:32 PM
How to determine number of block rams in a Coregen Fifo rootz Verilog 4 06-11-2005 05:35 PM
Async FIFO coregen wizard Jim George FPGA 1 05-27-2005 08:48 PM
Generating Asynchronous FIFO in Block Memory of Sparatn-II in CoreGen Atif FPGA 0 09-03-2003 05:30 AM


All times are GMT +1. The time now is 01:20 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved