S7-300 CPU 315-2PN/DP: Expanding I/O Beyond 32 Module Limit

David Krause14 min read
S7-300SiemensTechnical Reference
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview

The SIMATIC S7-300 PLC system is a modular mid-range controller family from Siemens. Its 32-slot backplane bus is shared by the CPU and up to 31 signal or function modules, and that physical bus is the limiting factor when scaling a station beyond a small number of points. A common project requirement is 300 bytes of process I/O (75 modules of 4 bytes each), which the backplane cannot host. The CPU 315-2 PN/DP process image is rated at 2048 bytes input and 2048 bytes output, so the address budget is not the constraint. The standard, manufacturer-recommended migration path is distributed I/O over PROFINET IO or PROFIBUS-DP using the ET 200M remote I/O station.

This technical reference covers the backplane limit, the CPU 315-2 PN/DP specification, the ET 200M hardware family, the configuration steps in TIA Portal and STEP 7 V5.x, and field commissioning checks to extend a single S7-300 station to 75 or more modules.

S7-300 Backplane Architecture and the 32-Module Cap

The S7-300 backplane is a passive parallel bus integrated into each rack (rail). It carries the P-bus (peripheral bus) and the K-bus (communication bus) between modules. The backplane supports 11 slots per rack and a maximum of four racks chained through IM 360 / IM 361 interface modules, giving 44 physical slots. Of those 44, slots 3 through 11 (and equivalents on chained racks) are usable for signal modules, and the remaining slots are reserved for power supply, CPU, and IM modules.

Component Catalog Number Function
PS 307 5A 6ES7307-1EA01-0AA0 24 V DC load power supply, slot 1
CPU 315-2 PN/DP 6ES7315-2EH14-0AB0 CPU, slot 2 (latest variant)
IM 360 6ES7360-3AA01-0AA0 Send IM (central rack, slot 3)
IM 361 6ES7361-3CA01-0AA0 Receive IM (expansion rack, slot 3)
IM 365 6ES7365-0BA01-0AA0 1+1 expansion (K-bus only)

When the backplane is fully populated, the central rack and three expansion racks yield 44 physical slots. Subtract the 1 power supply + 1 CPU + 4 IM modules = 6 reserved slots, leaving 38 module slots. However, only 32 modules can be addressed by the CPU P-bus logic, even with chained racks. The bus terminates its address decoder at module 32, so slot 33 and beyond never receive a slot-select strobe. The modules power up but are not visible to the CPU. This is the hard 32-module limit.

Field note: The 124-byte figure sometimes cited for the 32-module limit corresponds to 31 modules of 4 bytes. The limit is module count, not byte count. A station with 32 SM 321 DI 16 (2 bytes each) would consume 64 bytes; a station with 32 SM 331 AI 8 (16 bytes each) would consume 512 bytes. The cap is always 32 modules, regardless of address width.

CPU 315-2 PN/DP Technical Data

The current production variant of the CPU 315-2 PN/DP is order number 6ES7315-2EH14-0AB0. Earlier -AH and -AG variants carry the same 32-module limit. Key technical data from the S7-300 CPU manual:

Parameter Value
Order number (latest) 6ES7315-2EH14-0AB0
Firmware version V3.4 (latest)
Work memory (code + data) 384 KB + 384 KB
Bit memory (M) 2048 bytes
Process image inputs 2048 bytes (configurable per OB)
Process image outputs 2048 bytes (configurable per OB)
Max modules per station 32 (CPU + 31 I/O)
Max DP slaves (DP master) 124
Max PROFINET IO devices 128
PN ports 2 (integrated switch)
DP interface 1 (RS-485, master or slave)
Bit instruction time 0.05 µs
Real-time clock Yes (hardware, buffered)

Reference: SIMATIC S7-300 CPU 315-2 PN/DP product entry in the Siemens Industry Online Support portal.

Process Image and Address Space Budgeting

The process image is a reserved memory area in the CPU that mirrors all digital and analog input/output points. It is refreshed at the start (PII) and end (PIQ) of each OB 1 cycle. The CPU 315-2 PN/DP reserves 2048 bytes for inputs and 2048 bytes for outputs, distributed across the backplane, PROFIBUS-DP, and PROFINET IO in aggregate.

Address budgeting for a 75-module requirement (representative mix):

Module Catalog # Bytes per Module Quantity Total Bytes
SM 321 DI 32×24V DC 6ES7321-1BL00-0AA0 4 IB 25 100 IB
SM 322 DO 32×24V DC/0.5A 6ES7322-1BL00-0AA0 4 QB 25 100 QB
SM 321 DI 16×24V DC 6ES7321-1BH02-0AA0 2 IB 12 24 IB
SM 322 DO 16×24V DC/0.5A 6ES7322-1BH01-0AA0 2 QB 12 24 QB
SM 331 AI 8×13Bit 6ES7331-1KF02-0AB0 16 IB 1 16 IB

Subtotal for 75 modules (62 DI/DO + 1 AI in this example): 140 IB + 124 QB = 264 bytes, well below 300 bytes. A 4-byte average per module is realistic when scaling to 75 modules, giving 300 bytes. The CPU has ample headroom: only ~7% of the input process image and ~6% of the output process image would be consumed. The bottleneck is module count, not byte count.

IM 360 / IM 361 Rack Extension and Why It Does Not Solve the Problem

Chaining three IM 361 expansion racks off the central rack with one IM 360 sender does increase the physical slot count to 44, but the P-bus decoder on the CPU halts at module 32. Modules placed in slot 33 and beyond are physically powered and self-test, but they are not scanned and never appear in the process image. The CPU does not generate a diagnostic entry for the unfindable modules; they simply do not respond to slot-select strobes.

The correct use of IM 360/361 is therefore for rack 0 in multi-rack plants where expansion racks must carry additional SM/CP/FM modules, but the total I/O count of a single CPU is still capped at 32 modules regardless of how many IM-chained racks are wired. For more than 32 modules, distributed I/O is required.

Field note: Do not use IM 365 for I/O extension. The IM 365 routes only the K-bus (communication), not the P-bus (peripheral I/O), so SM/CP/FM modules placed on a rack with IM 365 will be undetected by the CPU. The IM 365 is intended for limited two-rack CPU-CPU handshaking configurations.

ET 200M Distributed I/O Architecture

The ET 200M is a modular, IP20 distributed I/O station that uses the same S7-300 signal module family (SM 321, SM 322, SM 331, SM 332, SM 323, FM, CP). It is controlled by an interface module (IM 153) that connects to either PROFIBUS-DP or PROFINET IO. The CPU addresses ET 200M stations exactly like local modules — through slot-based I/O addresses in the process image. From the program perspective, an input at IW 100 in the ET 200M is indistinguishable from a local IW 100 on the backplane.

Capacity advantage:

  • IM 153-1 (entry-level): up to 8 S7-300 modules per station
  • IM 153-2 (high-feature): up to 12 S7-300 modules per station
  • PROFIBUS-DP supports up to 124 slaves per CPU 315-2 PN/DP
  • PROFINET IO supports up to 128 devices per CPU 315-2 PN/DP

To host 75 modules you can split them into seven ET 200M stations of 12 modules (IM 153-2 HF) or 10 stations of 8 modules (IM 153-1). With 75 modules, the most efficient layout is six IM 153-2 stations of 12 modules plus one IM 153-1 station of 3 modules, or seven stations averaging 11 modules each.

CPU 315-2 PN/DP Slot 2 - Central Rack ET 200M #1 IM 153-2 PN (12 SM) ET 200M #2 IM 153-2 PN (12 SM) ET 200M #3 IM 153-2 PN (12 SM) ET 200M #4 IM 153-2 PN (12 SM) ET 200M #5 IM 153-2 PN (12 SM) ET 200M #6 IM 153-2 PN (12 SM) ET 200M #7 IM 153-2 PN (3 SM) PROFINET PROFINET PROFINET PN PN PN 6 x 12 SM = 72 modules + 1 x 3 SM = 75 modules total

ET 200M Interface Module Selection

IM Module Order Number Bus Max SM per Station Special Features
IM 153-1 DP 6ES7153-1AA03-0XB0 PROFIBUS-DP 8 Entry-level, basic diagnostics
IM 153-2 DP HF 6ES7153-2BA02-0XB0 PROFIBUS-DP 12 High feature, time stamping, isochronous
IM 153-1 PN 6ES7153-1AA83-0XB0 PROFINET IO 8 2-port switch integrated
IM 153-2 PN HF 6ES7153-2BA10-0XB0 PROFINET IO 12 Shared device, MRP, isochronous

For greenfield installations prefer the PROFINET variants: the 2-port switch removes the need for an external PROFINET switch per station and supports linear topology. The IM 153-2 PN HF additionally supports Media Redundancy Protocol (MRP) for ring redundancy. Reference: ET 200M distributed I/O system manual in Siemens Industry Online Support.

PROFIBUS-DP and PROFINET IO Topology Options

PROFIBUS-DP

PROFIBUS-DP supports a single linear RS-485 segment up to 1000 m without repeaters (12 Mbps max 100 m, 9.6 kbps max 1200 m). With repeaters the segment can be extended to roughly 10 km, but for 75 modules on a single CPU 315-2 PN/DP, the practical segment is a single PROFIBUS cable with up to 32 nodes (master + 31 slaves) before the first repeater is required.

  1. Set the PROFIBUS address on each IM 153-1/2 DP using the DIL switch on the module or via HW Config in STEP 7.
  2. Add the GSD file for the IM 153-1/2 DP in STEP 7 Hardware Catalog (Options → Install GSD File).
  3. Drag the IM 153-2 DP from the catalog (PROFIBUS-DP → ET 200M) into the PROFIBUS subnet.
  4. Insert S7-300 SM modules into slots 4–11 of the IM 153-2 (slots 1–3 are reserved for the IM itself).
  5. Assign the PROFIBUS address of each ET 200M in the device properties; this is the address the CPU uses to map the station I/O into the process image.
  6. Download the hardware configuration to the CPU.

PROFINET IO

PROFINET IO is the preferred fieldbus for new installations. The CPU 315-2 PN/DP has an integrated 2-port PROFINET switch, so a linear topology is wired station-to-station without external switches. Up to 128 devices are addressable on a single PROFINET network, and 7–8 stations in line is realistic for 75 modules.

  1. Connect the IM 153-1/2 PN port 1 to the CPU 315-2 PN/DP PROFINET port (or an external switch).
  2. Connect IM 153 PN port 2 to the next IM 153 PN port 1, and so on, in linear topology.
  3. In TIA Portal, add the CPU 315-2 PN/DP from the catalog, open Device View, and select the PROFINET interface.
  4. Right-click the PROFINET subnet → 'Add device' → select the IM 153-2 PN from the catalog and assign an IP address and device name.
  5. Insert S7-300 SM modules into the IM 153-2 PN slots 4–11. Address ranges appear in the Inspector window under 'I/O addresses'.
  6. Use the PRONETA or TIA Portal 'Assign PROFINET device name' tool to push the device name to each IM 153-2 PN over the network.

TIA Portal and STEP 7 Configuration Procedure

TIA Portal V17 or later

  1. Open TIA Portal and create a new project.
  2. Add a new device: Controllers → SIMATIC S7-300 → CPU 315-2 PN/DP → 6ES7315-2EH14-0AB0.
  3. Open the device view; the CPU appears with integrated PROFINET and PROFIBUS interfaces.
  4. Open the hardware catalog on the right, navigate to 'Distributed I/O → ET 200M'.
  5. Drag the IM 153-2 PN (6ES7153-2BA10-0XB0) onto the PROFINET subnet of the CPU.
  6. Click the IM 153-2 PN station, open the slot table, and drag S7-300 SM modules (SM 321, SM 322, etc.) into slots 4–11. Slot 1 = IM, slots 2–3 = reserved (for power supply and empty slot).
  7. Repeat the previous two steps for each additional ET 200M station on the same PROFINET subnet until the 75-module total is reached.
  8. Click 'Compile' → 'Hardware detection' → 'Download to device'.

After download, the CPU automatically updates the process image with the ET 200M I/O bytes. Programmatic access in the user program is identical to backplane I/O:

L IB 100
T MW 200
// reads the first byte of ET 200M #1 inputs and stores in bit memory

STEP 7 V5.5 / V5.6 (legacy)

  1. Open SIMATIC Manager → create an S7-300 station.
  2. Open HW Config, insert the rail (SIMATIC 300 → RACK-300 → Rail).
  3. Insert PS 307, CPU 315-2 PN/DP (6ES7315-2EH14-0AB0) at slots 1 and 2.
  4. Right-click the PROFINET interface of the CPU → 'Insert PROFINET IO System'.
  5. Open the hardware catalog → PROFINET IO → I/O → ET 200M → IM 153-2 PN → 6ES7153-2BA10-0XB0.
  6. Drag the IM 153-2 PN onto the PROFINET IO system; an address and device name are auto-assigned.
  7. Double-click the IM 153-2 PN station to open its slot table; insert S7-300 SM modules into slots 4–11.
  8. Save, compile, and download to the CPU.

For analog modules that exceed 4 bytes per slot, use SFC 14 'DPRD_DAT' and SFC 15 'DPWR_DAT' to read/write the process image in a consistent manner; this prevents the OB 1 update from interrupting a multi-word read mid-cycle.

Cycle-Time and Performance Considerations

Distributed I/O adds bus cycle time to the process image update. Approximate cycle additions for 7 ET 200M stations:

Bus Update Time per Station For 7 Stations
PROFINET IO (RT, 1 ms update) 1.0 ms ~7 ms
PROFINET IO (IRT, 250 µs) 0.25 ms ~1.75 ms
PROFIBUS-DP (1.5 Mbps, 12 slaves) ~2 ms ~14 ms
PROFIBUS-DP (12 Mbps, 12 slaves) ~0.3 ms ~2.1 ms

For 75 modules, expect a 2–10 ms increase in OB 1 cycle time depending on the bus profile chosen. The CPU 315-2 PN/DP bit instruction time is 0.05 µs and a typical OB 1 with 10 k instructions is 5–10 ms, so an additional 7 ms is noticeable but not critical for non-isochronous applications. For motion or high-speed closed-loop control, use IRT mode and isochronous PROFIBUS/PROFINET to keep jitter below 1 µs. Set the update time in the IM 153-2 PN properties → 'PROFINET interface → IO cycle'.

Troubleshooting Matrix and Field Tips

Symptom Likely Cause Diagnostic Step Corrective Action
ET 200M station does not appear in the network PROFINET device name not assigned PRONETA scan → Devices → check name Assign PROFINET device name via TIA Portal or PRONETA
SF LED on IM 153-2 PN is solid red Slot empty in configuration or module mismatch Online → Diagnostics → Module Information Insert missing module or update HW Config to match installed hardware
BF LED on CPU PROFIBUS interface Bus fault, duplicate address, or termination missing Online → PROFIBUS → Node Diagnosis Set termination ON at first/last node; verify unique DP addresses
Input bytes return 0 despite wiring Address mismatch between HW Config and program Cross-check I/O addresses in Inspector vs. STEP 7 symbol table Correct the I/O symbol or HW Config address
Process image overflow diagnostic Configured PII/PIQ exceeds available area PLC → Properties → Cycle → Process Image Reduce PII/PIQ or remove unused ET 200M
CPU goes to STOP on startup IM 153-2 PN station unreachable at boot Diagnostic buffer → Event ID 0xE401 / 0xE404 Verify physical connections, IP subnet, and device name
Intermittent SM 331 AI readings Manuf-wire not grounded, EMI on analog cable Check analog ground bar at PS 307 / IM 153 Use shielded twisted pair, ground at one end only
BF LED flashes on IM 153-2 PN Configuration error or duplicate IP Online → Accessible nodes Verify unique IP and matching device name on subnet

Field commissioning tips:

  • Always perform a 'Download station to PG' on each ET 200M after wiring to read the actual configuration and compare to the project configuration.
  • Enable OB 82 (diagnostic interrupt), OB 83 (insert/remove), and OB 86 (rack failure) in the CPU to surface IM 153 module faults as diagnostic events.
  • Use PRONETA for offline topology planning and live network auditing — it shows duplicate IPs, name mismatches, and PROFINET cable diagnostics (if supported by the IM).
  • For the 32-module limit on the backplane, never chain more than three IM 361 expansion racks even if the slot count appears to allow it — the P-bus address decoder still stops at module 32.
  • When migrating an existing PROFIBUS-DP design to PROFINET IO, keep the same PROFIBUS addresses as PROFINET device names where possible to reduce commissioning confusion.

FAQ

Can the CPU 315-2 PN/DP address more than 32 modules on a single backplane?

No. The S7-300 P-bus decoder terminates at module 32, regardless of whether IM 360/361 racks are chained. Slots 33 and beyond are physically powered but never scanned by the CPU. To address more modules, install an ET 200M distributed I/O station and connect it to the PROFINET or PROFIBUS interface of the CPU.

How many modules can one ET 200M station host?

The IM 153-1 (DP and PN variants) supports up to 8 S7-300 signal modules. The IM 153-2 (DP and PN variants) supports up to 12 modules. Slot 1 is the IM; slots 2 and 3 are reserved for the power supply and an empty slot. Signal modules occupy slots 4 through 11 (8 slots) for IM 153-1 and slots 4 through 15 (12 slots) for IM 153-2.

What is the difference between PROFIBUS-DP and PROFINET IO for ET 200M?

PROFINET IO uses industrial Ethernet at 100 Mbps with standard Cat 5/6 cabling; the IM 153-1/2 PN variants include an integrated 2-port switch for line topology without external switches. PROFIBUS-DP uses RS-485 at 9.6 kbps to 12 Mbps and requires termination resistors; the IM 153-1/2 DP variants are the PROFIBUS equivalents. PROFINET is preferred for new installations because of higher speed, ring redundancy (MRP), and easier integration into plant-wide Ethernet.

Is 300 bytes of I/O within the CPU 315-2 PN/DP process image budget?

Yes. The process image is 2048 bytes input and 2048 bytes output. 300 bytes total (for example 150 IB + 150 QB) consumes only ~7% of either direction. The bottleneck is module count (32 max on the backplane), not byte count.

Do I need to write different program code for distributed I/O versus local I/O?

No. The CPU maps distributed I/O into the same process image as backplane I/O. A load instruction L IB 100 reads the first byte of ET 200M station #1 inputs exactly as if those modules were on the backplane. The only program-level consideration is using SFC 14/15 (DPRD_DAT / DPWR_DAT) for consistent data access for analog modules with more than 4 bytes per slot.

Back to blog