PLCcheck

STL/AWL Deprecation in S7-1500: Why You Must Convert to SCL

Why AWL/STL runs only in emulation mode on S7-1500, what that means for performance and maintainability, and how to convert your STL code to SCL. Includes conversion strategy and code examples.

·10 min read
AWLSTLSCLS7-1500deprecationemulationconversionSiemensTIA Portalstructured text

Diesen Artikel auf Deutsch lesen

STL/AWL Deprecation in S7-1500: Why You Must Convert to SCL

AWL (Anweisungsliste) / STL (Statement List) is not natively supported on S7-1500. It runs in an emulation layer that translates STL instructions to the S7-1500's internal instruction set at compile time. The code works, but with reduced performance, limited access to new S7-1500 features, and an uncertain long-term future. On S7-1200, AWL is not supported at all. This article explains what this means and how to convert.

What "Emulation Mode" Means in Practice

When you open an AWL/STL block in TIA Portal for an S7-1500, TIA Portal compiles it using a compatibility layer. The practical consequences:

Performance: AWL blocks on S7-1500 run approximately 10–30% slower than equivalent SCL code, depending on the instruction mix. The emulation layer adds overhead for accumulator-based operations that do not map directly to the S7-1500's register-based architecture.

Memory: AWL blocks in emulation mode consume more work memory than equivalent SCL blocks because the emulation layer requires additional runtime structures.

New features unavailable: AWL blocks cannot use S7-1500-specific features:

Debugging limitations: Online monitoring of AWL blocks on S7-1500 is less capable than for SCL blocks. Breakpoints, watch tables, and trace functions have reduced functionality.

S7-1200: No support at all. If you ever need to deploy your program on S7-1200 (common for smaller machines), AWL blocks cannot be used. Period.

The Long-Term Risk

Siemens has not announced a specific date for removing AWL support from S7-1500. But the direction is clear:

The practical risk: A future TIA Portal version or S7-1500 firmware could restrict or remove AWL support. Converting 200 AWL blocks under time pressure is significantly more expensive and risky than converting them systematically over 2–3 years.

When to Convert

Convert now if:

Convert later if:

Never convert blindly. A working AWL block in emulation is better than a broken SCL block. Only convert code that you can test thoroughly.

Conversion Strategy: AWL → SCL

Step 1: Categorize Your Blocks

Go through every AWL block and classify it:

CategoryConversion DifficultyExample
Simple bit logicEasyU E 0.0 / O E 0.1 / = A 4.0
Timer/CounterEasySI/SE/SD/SA → TON/TOF/TP
ArithmeticEasyL MW 10 / +F / T MW 20
Comparisons with jumpsMediumL MW 10 / L MW 12 / >F / SPB M001
Complex jump structuresHardMultiple SPB/SPBN/SPA forming IF/ELSE/CASE
Indirect addressingHardL DBW [AR1, P#0.0]
Accumulator manipulationHardTAK / ENT / Akku-Schieben
Byte/word manipulationHardSLW / SRW / UW / OW

Step 2: Convert Easy Blocks First

Simple bit logic converts almost 1:1:

AWL:

U E 0.0
U E 0.1
O E 0.2
= A 4.0

SCL:

A4_0 := (E0_0 AND E0_1) OR E0_2;

Step 3: Replace Jump Patterns with IF/CASE

The most common conversion: SPB/SPBN/SPA patterns become IF/THEN/ELSE:

AWL:

L MW 10
L 100
>F
SPB M001
L 0
T MW 20
SPA M002
M001: L 1
T MW 20
M002: NOP 0

SCL:

IF MW10 > 100 THEN
    MW20 := 1;
ELSE
    MW20 := 0;
END_IF;

Step 4: Handle Accumulator Operations

The S5/S7 accumulator model (ACCU1, ACCU2) has no direct SCL equivalent. Each accumulator operation must be understood in context and rewritten as explicit variable operations.

For the complete AWL→SCL conversion guide with all instruction mappings, see our AWL to SCL conversion guide.

PLCcheck Pro: Automated AWL Analysis

PLCcheck Pro analyzes your AWL code and:

Upload AWL code for analysis →

Frequently Asked Questions

Will Siemens remove AWL support from S7-1500?

No specific date has been announced. But AWL has always been emulated (not native) on S7-1500, receives no new development, and is not supported on S7-1200. The direction is clear — SCL is the future.

Is SCL harder to learn than AWL?

For experienced AWL programmers, SCL feels different but is not harder. SCL uses high-level constructs (IF/THEN, FOR, WHILE) instead of accumulator operations. Most engineers find SCL easier to read and maintain once they are familiar with it.

Can I mix AWL and SCL blocks in the same project?

Yes. Each block can use a different language. A common migration strategy: keep stable AWL blocks unchanged and write new blocks in SCL. Convert AWL blocks to SCL opportunistically during maintenance.


Maintained by PLCcheck.ai. Last update: March 2026. Not affiliated with Siemens AG.

Related Articles

Analyze your PLC code with AI

PLCcheck Pro explains, documents, optimizes, and migrates PLC code — automatically.

Try PLCcheck Pro →
← Back to Blog

Not affiliated with Siemens AG. S5, S7, STEP 5, STEP 7, and TIA Portal are trademarks of Siemens AG.