Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12603 Discussions

A question about sram vs. sdram

Altera_Forum
Honored Contributor II
1,009 Views

Hi all, 

 

Recently I have been thinking about a question. 

 

As we know,without a sram,Nios can run normally; 

 

but if the system comes with a sdram and also a sram, 

 

what would be the consequence?Would sdram 

 

have some data running in it just like the sram? 

 

Besides,there is another question: 

 

If I do not use sram,but only sdram, 

 

would the system run normally? 

 

Any suggestions?guys... 

 

 

Don
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
335 Views

Hi Don, 

 

you can use SRAM and SDRAM together, you will just have to select the address range to use one or the other, just look at the Altera's development boards, they have an SRAM and an SDRAM (actually, my Altera Cyclone dev board does). 

 

Anyway, we have developped our own board with only a 16 Mo SDRAM and it works perfectly, no need for expensive (but fast) SRAM. 

 

Hope it helps, 

 

Regards, 

 

Pod
0 Kudos
Altera_Forum
Honored Contributor II
335 Views

Both RAM types are on the development boards so that users can design with either. Depending on the end product and implementation one is more suitable (SDRAM is cheap and less power consuming, whereas SRAM is fast and more power consuming). Usually you can get around the fact that SDRAM is slower by using a big cache size and programming your code in such a way that it will not be hindered by the SDRAM performance as much. If you look at timing diagrams for SDRAM and SRAM you'll get a pretty good idea why their performance differs.

0 Kudos
Altera_Forum
Honored Contributor II
335 Views

Many thanks to cetic and BadOmen http://forum.niosforum.com/work2/style_emoticons/<#EMO_DIR#>/smile.gif  

 

 

But it dawned on me that according to your suggestions, 

 

a system with a RTOS(such as uC/OSII) would work only based on a SDRAM 

 

without using a SRAM,am I right? 

 

Just because the capacity of a SRAM is much smaller than a SDRAM,  

 

so if I use a SRAM to run a RTOS,there might be some potential problems  

 

with the size of this SRAM.So at this moment,I can only  

 

use a SDRAM (maybe work together with the SRAM,but maybe not) 

 

to solve these pending problems,right? 

 

 

Regards, 

 

Don
0 Kudos
Altera_Forum
Honored Contributor II
335 Views

SDRAM is Cheaper and larger Capacity than SRAM. E.g. SDRAM is usaully >8MB, and SRAM is <1MB.  

However, you need a dedicate logic (such as SDRAM controller) to access SDRAM, while SRAM is easily to access. Because SDRAM using clock and need to refresh itself periodly. 

Yeah, it is capacity V.S. complexity. 

 

Different OS or different configuration of the same os, has different code size, between <1M and >1M, so both sram and sdram can be used in OS-based application.
0 Kudos
Altera_Forum
Honored Contributor II
335 Views

actually,my sram is 128k, so I think if I only use such a sram to run 

 

a RTOS(such as uC/OSII),there would be problems because its capacity 

 

is not big enough.Thus, how can I configure my RTOS  

 

with the two different rams,e.g how to configure the stack space  

 

and distribute the running data?
0 Kudos
Reply