- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm planning to use the SRAM to store a 640 x 480 image from the tv decoder output capture.. But I can't find any sample project that uses the SRAM Controller.v in order for me to perform sequential writing (one pixel per address) and sequential reading for the display after further processing..can someone help/give some link/site where can help me to understand the operation of the SRAM controller?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The "DE2_115_NIOS_DEVICE_LED" example that comes on the DE2-115 support CD has a good example of how to use the SRAM.
I suggest you copy what you need from that. However, if you do want to use more of that example project you'll need to migrate the design for newer versions of Quartus. Refer to 'an 632: sopc builder to qsys migration guidelines (https://www.element14.com/community/servlet/jiveservlet/downloadbody/30391-102-6-251604/altera.application_notes_6.pdf)' for details. Cheers, Alex- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That means i have to use Nios right? Is there a way for me to use the SRAM without using Nios? I'm kind of not familiar with C
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
No, you certainly don't have to use Nios to put the SRAM to use. You can write your own interface to do so.
--- Quote Start --- But I can't find any sample project that uses the SRAM Controller.v --- Quote End --- SRAM doesn't need a 'controller' in the same way the SDRAM does. Present an address & data and strobe the data in (using WE & CE). Alternatively, present an address and activate CE & OE to get the data out. This memory interface tutorial (https://www.google.nl/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahukewjlg9_4ln7kahwdtbqkhv1ibwiqfggfmaa&url=http%3a%2f%2fece.wpi.edu%2f~rjduck%2fverilog%2520memory%2520module%25207.pdf&usg=afqjcneszzvqt4gxd-6cu6wglui8groflw&bvm=bv.113370389,d.d24) discusses accessing SRAM and has some useful timing diagrams along with an SRAM verilog model. The 'Simplified Read/Write Operation' figures (pages 14/15), along with the waveform simulation on the last page should, I hope, clarify what signals you need to generate as part of your interface. Cheers, Alex- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How can i perform sequential reading of the data i stored? Like having the data from address 0 to last address to be displayed in my vga? I tried it but the VGA is displaying either a black or white image
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Providing you've presented an address and activated CE & OE (typically by driving them LOW), you can read in the data from the SRAM - providing you wait the required time for the data to be valid (see the datasheet for the SRAM). You can then present the next address (sequential or otherwise), leaving CE & OE active, to recover the data corresponding to that address. True, Random access.
If this is what you've done, and you're not getting what you expect on your display, then I'd question whether you've written in what you expect or whether you have a problem somewhere else in your code. Cheers, Alex
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page