Siemens S7-400 Series CPU Load Memory.

well... you can read it simply in s7 manual, it's well written there ... if you don't have one, short description: it's just memory area where your plc code is stored (without symbols and comments), it can be RAM or EPROM, in newer unit always EPROM.
 
According to the manual I have the memory card (Ram or FEPROM) and integrated memory area on the CPU together form the load memory. It can contain the following;

-The entire user program
-The comments
-The symbolic system
-Additional information which allows decompilation of the user program
-All module parameters.

But it does not provide any other explanation about it and what is relationship with the working memory.
 
yes, it is described, under "Load Memory and Work Memory in the CPU", i've just checked it :)

and it says:

Relationship - Load Memory and Work Memory The complete user program is downloaded to the load memory; the parts relevant to program execution are also loaded into the work memory.
 
Well... ok, i'll try again ... Load Memory is RAM or EPROM (fixed or like flash/mmc cards), depends on the CPU type, but always expandable. There is all code and data you have downloaded into CPU, even unused blocks. Older units was using always RAM and optionally FLASH for permanent 'backuping', newer units do not run without FLASH card even - plus of it is that data in your datablocks are always saved.

Work memory is RAM and always smaller and contain only executed blocks of code (no info on blocks - plain code) due to need of faster code processing. There are also stored datablocks created dynamically by your code. And it's used as well for re/downloading individual blocks during 'debug' operations you may make.

For example, i have an C7-635 with CPU314-2DP on table currently equipped with 64KB of RAM (work) and 2MB MMC card (load).

During CPU reset, work memory is cleared and relevant parts reloads from mmc card. Card itself can be used to transfer block of data and code.

Then you right click block in step7 manager, select 'object properties' you can see 'Load memory requirements' and 'Work memory requirements' of current block in the second tab called 'General - Part 2' and you can mark it as 'not loadable into RAM'.

I hope it's more clear for you now.
 
In step7 manager, select help/content and type "load memory" ... that's step7 manual.

Is there any specific reason why you seeking it for? Afaik there's no need of detail knowledge about all memory types simatic can handle to make you program work - just have to just not exceed over it's size.
 
The reason I'm asking this question is that I'm doing a comparison among the different platforms being suggested for our mill upgrade.

The Siemens S7-400 series of CPU specfically the CPU 417-4H is one platform being proposed. The CPU data sheet that I have obtain specified that there is two type of memory's, working memory and load memory.

The working memory being integrated allowed for 10 Mbytes for code and 10 Mbytes for data. The load memory also being integrated had a size of 256 Kbytes but being capable of being expanded by using a FEPROM or RAM card if required.

My interpretation of this was that the program would resided in the working memory and was executed from there. If this was the case, then what was the function of the load memory? All the reference to load memory that I have found so far have been vague in describing the purpose of the load memory.

I know that when the day comes to present the information, some one will want to know what the purpose of this load memory.
 
Last edited:
"Load memory" is like the harddisk on a PC. It is were the programs are stored.
"Work memory" is like the RAM memory on a PC. It is were the programs ar executed.
The real limit on how big programs can be is the work memory.
Count on that you must install a flash card with sufficient memory for the entire program. It does not a requirement for it to be as big as the work memory though.
 
Well... in this case, you can imagine it exactly like Jesper said, the reason is "you just need them both" :)

The size of memory you'll buy do expand base unit (cost) only depend on the project complexity - on what you need.
 
So that I understand this correctly. From my understanding, the code portion of the working memory is not battery backed up. So each time when the controller power is cycled or reset, the code portion of the working memory has to be reloaded from the load memory. Then only the code that resides in the code portion of the working memory is only executed.
 
Dave

Working memory (code & data) and load memory in the S7-400 is battery-backed. If the battery is present and healthy, you power-cycle your PLC and it runs as if nothing had changed.

There are two portions of load memory : the built-in part on every CPU (which is often quite small, say 8Kb or so), plus the add-on portion. If you add a RAM card to the S7-400 to expand the built-in load memory, this is additive, so you get 8KB plus whatever you added. If you add an EEPROM card to the S7-400 to expand the built-in load memory, this is replacement, so the built-in load memory no longer gets used.

If your battery is low or missing when you power cycle the CPU, the o/s then takes the contents of load memory and transfers what it needs to work memory. Of course, if your expansion load memory was RAM as well, then with no battery it gets trashed during the power-cycle and the contents of load and work are identical : zero. Usually the recommendation is to use RAM cards only during the project development phase when lots of changes are being made, and eventually transfer the final (or near-final) project to EEPROM.

If memory serves, the batteries for the S7-400 are actually on the power supply not the CPU itself. However I think there's also a jack socket on the CPU where you can connect in a DC source to take the role of the battery. It's pretty wide-ranging, something like 3-15VDC so if you must stay with RAM there's this as a better alternative to the usual batteries which always get forgotten about until the day it's too late.

Ken.
 
Ken

I would agree that all the ram should be battery backed, but the document that I have specifically states that the code portion of the working memory is not protected.
 

Similar Topics

Hi What stage of its life cycle, S7-300/400 controllers are at now? In my existing unit, we are using these controller and in near futher there is...
Replies
8
Views
6,999
Hello, I have understanding of AB PLC but I am new to Siemens PLC. In one of the project, I have to go for Siemens SIL-3 hardware that too with...
Replies
1
Views
1,766
Hey guys, I've searched a lot to find the S7 PLC operating system but I couldn't find anything. Can anybody help me on this? and any helpful...
Replies
12
Views
15,940
Hi Folks, Was wondering if anyone can offer a bit of guidance. I tried downloading to a 414-2 the other day but was stopped due to lack of...
Replies
2
Views
3,286
Hi, Yesterday, I was at a customer site. I made one little change. Changed a dummy bool output to an actual output. I didn't add any tags, or...
Replies
15
Views
299
Back
Top Bottom