Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
21615 Discussions

How to interface Nios with 16-bit width ASRAM?

Altera_Forum
Honored Contributor II
1,794 Views

Dear experts, 

 

I am trying to interface my board using a 16-bit width asynchronous SRAM (ISSI IS61WV51216ALL) to 32-bit Nios processor using Cyclone III. Does anyone know how to configure it in SOPC? 

 

Many thanks, 

Skw
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
1,022 Views

Yu can refer to a similar post I answered a few days ago 

http://www.alteraforum.com/forum/showthread.php?t=26487
0 Kudos
Altera_Forum
Honored Contributor II
1,022 Views

Hi Cris72, 

 

Thank you very for the reply. 

I tried your tcl file but I got "Error: Generation skipped because the system had validation erros" from SOPC builder. 

Do you have any clue why this happens? 

 

Skw
0 Kudos
Altera_Forum
Honored Contributor II
1,022 Views

Hi Cris72, 

 

The tcl worked! My SOPC error was due to other reason. 

Many thanks. 

 

Skw
0 Kudos
Altera_Forum
Honored Contributor II
1,022 Views

I'm trying to do a very similar thing, but am using a IS61WV102416 (1024k x 16bit) part. If I understand things correctly, I need to specify an address width of 20 in the example TCL file. This causes SOPC builder to generate an address interface that is defined as an vector of 21 logic lines. For example: 

 

signal address_to_the_async_sram : out std_logic_vector (20 downto 0); 

 

The line connections from the FPGA to the SRAM would then dictate that I connect address_to_the_async_sram(20) to A19, address_to_the_async_sram(19) to A18, ..., address_to_the_async_sram(1) to A0. In other words, the LSB of address_to_the_async_sram would need to be ignored. 

 

I'd also need to have the byteenables connected to be able to properly write to the device. Without these, byte write access is impossible (not driving the 'unused' side of the data lines to a high impedance.) 

 

Does this sound correct?
0 Kudos
Altera_Forum
Honored Contributor II
1,022 Views

Hi tescott, 

 

I think your address line connection is fine. Mine is working now. It just that I don't use byteenables as I don't need to access byte. 

Good luck. 

 

Skw
0 Kudos
Reply