Resolving S7-314 IFM Hardware Config Download Failures to Internal EPROM
The SIMATIC S7-314 IFM (CPU 314 IFM, MLFB 6ES7 314-5AE0x-xAB0) is a legacy S7-300 CPU equipped with an internal EPROM rather than the plug-in Micro Memory Card (MMC) used by newer S7-300 CPUs. Engineers attempting to apply hardware configuration (HW Config) changes frequently observe the symptom: STEP 7 reports no error during "Copy RAM to ROM," but the new module parameters or added stations are not retained after a power cycle or CPU restart. This article documents the correct procedure for downloading hardware configuration to the CPU 314 IFM, the architectural reason standard RAM-to-ROM operations are insufficient, and the verification steps that confirm the EPROM image has been updated.
1. Problem Description and Symptoms
Engineers report the following observable behavior when modifying HW Config on a CPU 314 IFM:
- STEP 7 HW Config shows the new module or modified parameter set locally.
- Performing PLC > Download to Target System > Hardware Configuration completes without error.
- Executing PLC > Copy RAM to ROM (or the equivalent button) returns no error message.
- After the operation, uploading the hardware configuration from the CPU reveals that the changes are not present, or the added module is not being initialized by the CPU at startup.
- Going online with the CPU and viewing the actual configuration shows the old topology, not the modified one.
The 4-position mode selector (RUN / RUN-P / STOP / MRES) and the front-panel SF (red) and BATF (red, battery fault) LEDs provide additional clues. A persistently lit SF LED on an otherwise correctly wired CPU frequently points to a hardware configuration mismatch between the EPROM image and the actually inserted modules.
2. S7-314 IFM Hardware Architecture
The CPU 314 IFM belongs to the S7-300 family that was originally shipped between 1996 and the early 2000s. Its distinguishing characteristics directly affect how the load memory is written:
| Feature | Specification |
|---|---|
| MLFB (typical) | 6ES7 314-5AE00-0AB0, 6ES7 314-5AE01-0AB0, 6ES7 314-5AE02-0AB0, 6ES7 314-5AE03-0AB0 |
| Work memory (RAM, code+data) | 24 KB integrated |
| Load memory | Internal EPROM, 48 KB to 96 KB (firmware dependent) |
| Memory card slot | None (no MMC, no Flash Card) |
| Integrated I/O (IFM) | 20 DI / 16 DO onboard (depending on variant) |
| Integrated functions | 4 channels for high-speed counters or frequency measurement, depending on firmware |
| Mode selector | 4-position mechanical key switch: RUN, RUN-P, STOP, MRES |
| Backup | One or two lithium AA batteries for RAM retentivity |
| PROFIBUS interface | 1× MPI/DP master or slave (selectable) |
| STEP 7 version | STEP 7 V5.1 through V5.5 SPx; not supported by TIA Portal |
Because the load memory is a non-removable, internally soldered EPROM, the only way to write user blocks and the system data blocks (SDB) that contain the hardware configuration is through the STEP 7 function that targets the EPROM directly.
2.1 Memory Model on CPU 314 IFM
- Work memory (RAM): 24 KB, used for code execution and data. Buffered by battery.
- Load memory (EPROM): Holds the user program (OB, FB, FC, DB) and the system data blocks (SDB) generated by HW Config. Rewritten only via the dedicated download function.
- System memory: Process image, bit memory, timers, counters — reside in work memory and are buffered by the backup battery.
The SDBs (System Data Blocks) generated by HW Config are the crucial elements. SDB 0 and the configuration SDBs (e.g., SDB 1000+) define the module addresses, parameters, and PROFIBUS topology. If the EPROM image is not updated, the CPU at next restart reloads the old SDBs from EPROM and the new hardware configuration never takes effect.
3. Root Cause Analysis
The root cause of "Copy RAM to ROM does nothing on the S7-314 IFM" is the combination of two factors:
- The STEP 7 function "Copy RAM to ROM" in the Online menu is designed for newer CPUs that have an MMC slot. When invoked on a CPU 314 IFM, it may complete without a visible error but the function only writes work-memory-resident blocks to the load memory area. On the CPU 314 IFM, this function does not correctly target the internal EPROM, or it transfers only a subset of blocks and not the hardware-configuration SDBs.
- The HW Config download operation writes to the CPU's work memory, not the EPROM. The CPU continues to operate from the modified SDBs in RAM until the next restart. If the EPROM image is not refreshed, a power-off or STOP-to-RUN transition reloads the old SDBs and discards the new configuration.
Siemens support documentation explicitly addresses this scenario. The recommended procedure is to use PLC > Download User Program to Memory Card (or, in older STEP 7 builds, the equivalent menu path under "PLC > Download to EPROM Memory Card on the CPU") while the CPU is in STOP mode. See the official Siemens entry SIMATIC S7-300/400: Save RAM to ROM — behavior on CPU 314 IFM for the explicit function description.
4. Prerequisites
Before attempting the EPROM write, verify the following:
- STEP 7 V5.4 SP5 or V5.5 installed (V5.5 is the last release that still supports the CPU 314 IFM).
- The PC/PG is connected to the CPU 314 IFM via MPI (the default) or PROFIBUS (when the CPU is configured as DP slave).
- The PC/PG interface (e.g., PC Adapter USB, CP 5611, CP 5612) is set in Set PG/PC Interface to the correct access point.
- The STEP 7 project on the PC matches the CPU order number (MLFB). Mismatched MLFBs are a common source of download errors.
- Mode selector is in STOP position. The EPROM write function only operates when the CPU is in STOP.
- Battery status is good (BATF LED off). Low battery during the EPROM write can corrupt the image.
- No active online connections from other PG/PCs that could lock the CPU.
5. Step-by-Step Resolution Procedure
5.1 Save and Compile the Hardware Configuration
- Open SIMATIC Manager and load the project that contains the CPU 314 IFM station.
- Open HW Config for the S7-300 station.
- Modify the rack, modules, PROFIBUS slaves, or module parameters as required.
- Click Station > Save and Compile (shortcut: Ctrl+S, then "Save and Compile"). This regenerates the System Data Blocks (SDBs) so they reflect the new module topology and parameter assignments.
The "Save and Compile" step is the most frequently missed action. Downloading HW Config without recompiling leaves the SDBs in their pre-modification state, and the EPROM receives stale configuration data.
5.2 Download Hardware Configuration to the CPU (Work Memory)
- Set the CPU's mode selector to STOP. Confirm the STOP LED is lit.
- In HW Config, select PLC > Download to Target System > Hardware Configuration (or right-click the CPU and select "Download").
- Confirm the target CPU in the "Select Target Station" dialog. The connection is established over MPI/PROFIBUS.
- STEP 7 writes the new SDBs into the CPU's work memory. The CPU is now configured per the modified HW Config in RAM only.
5.3 Download the User Program to the EPROM
- With the CPU still in STOP, switch to SIMATIC Manager.
- Select the S7 program (the Blocks folder) of the CPU 314 IFM station.
- Use the menu PLC > Download User Program to Memory Card (in some STEP 7 builds the wording is "Download to EPROM Memory Card on the CPU" or "Copy User Program to EPROM").
- Confirm the prompt. STEP 7 erases the EPROM, then writes the entire user program (OB, FB, FC, DB, SDB, UDT, SFB, SFC) into the load memory.
- Wait for the operation to complete. On a 96 KB EPROM the write takes roughly 30–90 seconds depending on the PG/PC interface. Do not power-cycle the CPU during this interval.
5.4 Restart the CPU
- Toggle the mode selector from STOP to MRES briefly, then back to STOP (cold restart preparation) or directly to RUN-P.
- Observe the front-panel LEDs:
- SF (red): Should extinguish after a successful startup with consistent configuration.
- BF (red, PROFIBUS): Should extinguish when all configured slaves are reachable.
- DC5V (green): Internal supply OK.
- RUN (green): Lit when the CPU is in RUN.
6. Memory Operations: RAM vs EPROM vs MRES
| Operation | Target Memory | Mode Selector | Result Persists Across Power-Off? |
|---|---|---|---|
| PLC > Download > Complete Project / Blocks to RAM | Work memory (RAM) | STOP or RUN-P | No (only with battery backup) |
| PLC > Download User Program to Memory Card | Load memory (internal EPROM) | STOP only | Yes (non-volatile) |
| PLC > Copy RAM to ROM | MMC on newer CPUs; on 314 IFM this is a limited/incomplete operation | STOP or RUN-P | Partially — does not reliably write SDBs on 314 IFM |
| Mode switch MRES | Performs a full restart with initialization of all RAM areas except retentive | STOP → MRES → STOP → RUN-P | Reinitializes work memory; reloads from EPROM |
| Mode switch STOP → RUN | Warm restart, retains retentive DBs | STOP → RUN | Retentive data preserved; non-retentive reinitialized |
The most important consequence of the above matrix: an EPROM-resident SDB set is the authoritative copy after a power cycle or MRES. If the EPROM image is stale, the CPU will discard the RAM-only modifications and the hardware configuration will revert to the old topology on the next restart.
7. Mode Selector and LED Diagnostics
The 4-position key switch on the CPU 314 IFM has fixed positions, not freely assignable. Engineers must understand the semantics of each:
- RUN: Program execution; only read access from PG; cannot modify blocks.
- RUN-P: Program execution with write access from PG; default for commissioning.
- STOP: CPU halted; outputs to safe state (OD — output disable, on digital outputs the substitute value "0"); required for HW Config download and EPROM write.
- MRES: Memory reset; in STOP, toggling to MRES performs a full restart that clears all RAM except retentive areas, and reloads the program from EPROM.
7.1 LED Truth Table
| LED | Color | Indication |
|---|---|---|
| SF | Red | Group fault: hardware fault, programming error, parameter assignment error, or EPROM checksum mismatch |
| BATF | Red | Battery exhausted or missing; RAM retentivity at risk |
| DC5V | Green | Internal 5 V supply OK |
| FRCE | Yellow | Force function active |
| RUN | Green, flashing during startup, steady in RUN | CPU in RUN |
| STOP | Yellow | CPU in STOP |
| BF | Red | Bus fault on MPI/PROFIBUS |
A persistent SF LED after a STOP-to-RUN transition following a hardware configuration change is a strong indicator of an SDB mismatch. The CPU diagnostics buffer (accessible via PLC > Diagnostics/Settings > Diagnostics Buffer) will contain an event such as "Parameter assignment error" or "Module not present" with a hex-coded I/O address.
8. Verification Procedure
After the EPROM write, perform the following checks:
- Online compare of the Blocks folder. In SIMATIC Manager, select the Blocks folder, then PLC > Compare Blocks Online/Offline. The result should be "Identical" for all blocks including the System Data folder.
- Upload the System Data. With the CPU in RUN-P or STOP, PLC > Upload Station to PG, then open the uploaded HW Config and verify that the new module appears with the correct addresses and parameters.
- Diagnostics buffer scan. Open PLC > Diagnostics/Settings > Diagnostics Buffer. The buffer should show a clean startup event (event ID 16#4300 "Restart (cold restart) initiated") without subsequent parameter assignment errors (event ID 16#35xx or 16#39xx for I/O parameter errors).
- Power-cycle test. Disconnect the 24 V supply for at least 30 seconds, restore, and confirm that the CPU comes up with the new hardware configuration. If the old configuration returns, the EPROM was not actually written.
- Watch the SF and BF LEDs. After a clean restart, both should be off. A lit SF LED that is not caused by wiring indicates a configuration problem in the EPROM image.
9. Common Pitfalls and Error Codes
| Symptom | Cause | Remedy |
|---|---|---|
| "Copy RAM to ROM" returns without error, but EPROM unchanged | Function is MMC-oriented; on 314 IFM it does not write SDBs | Use PLC > Download User Program to Memory Card |
| New module not initialised, SF LED on | HW Config not saved and compiled before download | Station > Save and Compile, then re-download |
| Download aborted with "Online: The user program is currently being edited by another application" | Another PG/PC has an online connection | Disconnect other stations, retry |
| "Cannot download to EPROM — CPU in RUN-P" | Mode selector not in STOP | Switch to STOP, retry |
| SF LED on, diagnostics buffer: "Parameter assignment error module in slot X" (event 16#39xx) | Configured module address conflicts with another module, or module is missing | Verify the slot assignment and physical presence of the module |
| BF LED on, "Station failure" | Configured DP slave not reachable | Check PROFIBUS cable, bus terminators, slave address, and GSD file |
| BATF LED on | Battery depleted | Replace lithium battery, then MRES |
9.1 Event ID Reference (Selected)
-
16#4300— Cold restart initiated -
16#4301— Warm restart initiated -
16#4302— Master reset (MRES) initiated -
16#39xx— I/O access error (module not present, removed, or faulty) -
16#35xx— Parameter assignment error (incoming SDBs do not match module) -
16#38xx— Communication error on PROFIBUS
10. Diagnostic Flowchart
11. Comparison with Newer S7-300 CPUs (CPU 31x-2)
Engineers transitioning from the CPU 314 IFM to a CPU 314C-2 PN/DP or CPU 315-2 PN/DP will notice the following behavioral differences:
| Aspect | CPU 314 IFM | CPU 31x-2 (PN/DP) with MMC |
|---|---|---|
| Load memory type | Internal EPROM (soldered) | Removable Micro Memory Card (MMC) |
| Standard "Copy RAM to ROM" semantics | Limited; does not reliably write SDBs | Full function: copies work memory contents to the MMC |
| Hardware Config download | STEP 7 V5.x; no TIA Portal support | STEP 7 V5.5 or TIA Portal |
| Modes | RUN / RUN-P / STOP / MRES (4-position key switch) | RUN / RUN-P / STOP / MRES, but on a toggle switch (not removable key) |
| Backup | Lithium battery (one or two AA cells) | MMC non-volatile; battery only for real-time clock |
The MMC-based CPUs permit a "Copy RAM to ROM" workflow that includes the SDBs, which is why the function appears to "succeed silently" on the CPU 314 IFM without producing the expected outcome. The internal EPROM path requires the explicit "Download User Program to Memory Card" function.
12. Field-Proven Commissioning Sequence
For first-time commissioning or after a firmware update on the CPU 314 IFM, the recommended order is:
- Insert battery(ies) with correct polarity; verify BATF LED off.
- Set the mode selector to STOP.
- Open STEP 7 and establish an online connection (PLC > Online > Accessible Nodes).
- Upload the current program (if present) and save it to a backup project.
- Apply HW Config changes, then Save and Compile.
- Download HW Config to the CPU.
- Run a CPU memory reset (MRES) to clear all RAM areas.
- Download the user program to EPROM (the MRES step is optional but ensures a clean state).
- Switch to RUN-P and verify operation, LEDs, and online values.
- Document the project version, the order number, the firmware version (read from the module's diagnostic data), and the date.
This sequence is the closest analog to the modern "Download to Card" workflow used on TIA Portal projects with MMCs, and it eliminates the silent-no-op behavior of "Copy RAM to ROM" on EPROM-based CPUs.
FAQ
Why does "Copy RAM to ROM" appear to succeed on the CPU 314 IFM but changes are lost after a power cycle?
The CPU 314 IFM uses an internal EPROM, not an MMC. The "Copy RAM to ROM" function is designed for MMC-based CPUs and does not reliably write the SDBs to the internal EPROM. Use PLC > Download User Program to Memory Card while the CPU is in STOP to write the configuration and program to the EPROM.
Is there a jumper or hardware write-protect on the CPU 314 IFM that blocks EPROM updates?
No. The CPU 314 IFM has no physical write-protect jumper for the load memory. The 4-position selector only selects RUN, RUN-P, STOP, or MRES. The CPU must be in STOP for the EPROM write to proceed, and there is no key-operated lock on the EPROM itself.
Can I use TIA Portal to configure a CPU 314 IFM?
No. TIA Portal does not support the CPU 314 IFM. Use STEP 7 V5.4 SP5 or V5.5 (the last release supporting this CPU) for both hardware configuration and program editing.
The SF LED is on after a hardware configuration download — what does that mean?
A lit SF LED with a hardware configuration change typically indicates a parameter assignment error or a missing module. Open PLC > Diagnostics/Settings > Diagnostics Buffer, look for an event with code 16#35xx or 16#39xx, and verify that the configured slot contains a module of the expected order number. Re-check that HW Config was saved and compiled before the download.
Do I need to repeat the "Download User Program to Memory Card" every time I make a change?
During commissioning, download HW Config and code to RAM for quick iteration. When the changes are final, run "Download User Program to Memory Card" once. The EPROM then holds the authoritative image used at the next power-on or MRES.