Innovative Integration
 
Log inUsernamePassword
Log me on automatically each visit    
Register
Register
Log in to check your private messages
Log in to check your private messages
X6-400M memory questions

 
Post new topic   Reply to topic    II Support Forum Index -> X6-400M
View previous topic :: View next topic  
Author Message
irad002



Joined: 09 Apr 2012
Posts: 2

PostPosted: Sun Apr 29, 2012 9:52 pm    Post subject: X6-400M memory questions Reply with quote

I have a few questions about memory in X6-400M.

Is there any way to create multiple logical FIFO queues that use the same DRAM bank?The VFIFO component seems to provide only a single FIFO per physical DRAM bank. Also, is random access when reading/writing supported i.e. accessing a particular memory location by providing the address?

In the default logic configuration the VFIFO components are only used for buffering
data in front of the packetizer, deframer, router etc. What are the actual buffering requirements?Each VFIFO component provides up to 1GB of buffering capacity, which seems quite a lot just for real-time streaming of data to the host. Would it be possible to use the on-chip FPGA memory for packet buffering and release the external DRAM for computation?

In the Matlab BSP package, there are no blocks for accessing the DRAM memory.
It also appears that the flash memory cannot be accessed, which would be useful
if a MicroBlaze softcore processor was instantiated in System Genearator.
Is there any easy way around these limitations?
Back to top
View user's profile Send private message
jhenderson
Site Admin


Joined: 07 Mar 2006
Posts: 2252
Location: So. Cal. USA

PostPosted: Mon Apr 30, 2012 5:12 am    Post subject: Reply with quote

Quote:
Is there any way to create multiple logical FIFO queues that use the same DRAM bank?The VFIFO component seems to provide only a single FIFO per physical DRAM bank. Also, is random access when reading/writing supported i.e. accessing a particular memory location by providing the address?

Only a single FIFO queue is supported at the present time. Random access to the memory is not currently supported.

Quote:
In the default logic configuration the VFIFO components are only used for buffering data in front of the packetizer, deframer, router etc. What are the actual buffering requirements?Each VFIFO component provides up to 1GB of buffering capacity, which seems quite a lot just for real-time streaming of data to the host. Would it be possible to use the on-chip FPGA memory for packet buffering and release the external DRAM for computation?

Due to the high speed of the analog I/O, a substantial amount of buffering is needed on the PCIe interface in order to provide sufficient instantaneous load carrying capacity. Otherwise, we have determined that streaming applications will not be gap free. In order to use the memory otherwise, you must author your own memory controller.

Bear in mind also that the total bandwidth of each memory device is ~2.2 GB/s. When flowing a single channel of 400 MSPS data, this equates to a bandwidth of 1600 MB/s (800 in+800 out), so not much BW remains under full load.

Quote:
In the Matlab BSP package, there are no blocks for accessing the DRAM memory. It also appears that the flash memory cannot be accessed, which would be useful if a MicroBlaze softcore processor was instantiated in System Genearator. Is there any easy way around these limitations?

Not with the current implementation.
Back to top
View user's profile Send private message Visit poster's website
irad002



Joined: 09 Apr 2012
Posts: 2

PostPosted: Mon Apr 30, 2012 3:40 pm    Post subject: Reply with quote

"In order to use the memory otherwise, you must author your own memory controller"

When one of the ADC or DAC channels is not used and a DRAM bank becomes available, are there any issues with using a VFIFO component to buffer data during computation, apart from having to pack 16-bit samples into 128-bit words? An important assumption in this case is that the system clock runs at 400 MHz to support the fastest ADC sampling rate.

Also, is a DRAM device model included in the VHDL testbench so that VFIFO can be simulated?
Back to top
View user's profile Send private message
smoses
Distributor


Joined: 08 Jan 2009
Posts: 121

PostPosted: Tue May 01, 2012 9:05 am    Post subject: Reply with quote

In the X6-400M framework logic, the 4th LPDDR2 memory controller is not used to stream ADC or DAC data. It can be used for any purpose.

The interface to this VFIFO runs at the system clock rate and because of the burst length access type, even number of 128-bit words have to be written into this VFIFO in order to make it through the memory controller.

A VFIFO bus functional model is provided for simulation.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    II Support Forum Index -> X6-400M (GMT - 8 Hours)
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum

© Copyright 2006-2012 Innovative Integration
Powered by phpBB © 2001, 2002 phpBB Group
Based on iCGstation v1.0 Template By Ray © 2003, 2004 iOptional