Welcome to the Industrial Automation website!

NameDescriptionContent
XING-Automation
E-mail  
Password  
  
Forgot password?
  Register
当前位置:

SIEMENS C500 microcontroller architecture and instruction set

F: | Au:FAN | DA:2026-04-29 | 738 Br: | 🔊 点击朗读正文 ❚❚ | Share:

Condition 1 (Priority Blocking): Currently processing an interrupt of the same or higher priority.

Condition 2 (instruction completion blocking): The current instruction has not yet been executed to the last machine cycle. This ensures that the current instruction can be fully executed.

Condition 3 (Critical Instruction Blocking): The currently executing instruction is RETI (Interrupt Return), or an instruction that writes to the Interrupt Allow Register (IE) or Interrupt Priority Register (IP). The blocking will continue until the instruction is executed and another instruction is executed. This mechanism ensures that modifications to the interrupt system can take effect stably.

3. Precise calculation of interrupt response time

The interrupt response time is defined as the time interval between the time when the external interrupt request signal takes effect (the request flag is set) and the time when the first instruction of the interrupt service program starts executing.

According to the timing analysis in the manual, an interrupt requires at least 3 complete machine cycles from being detected to completing hardware LCALL (1 cycle for detecting flags and 2 cycles for executing LCALL). In the worst-case scenario, if the interrupt request encounters a blocking condition, the response time will be extended:

If blocked by condition 2 (instruction not completed), the maximum waiting time shall not exceed 3 cycles. Because the longest instruction (MUL or DIV) only requires 4 cycles, and interrupt detection occurs in the last cycle of each instruction.

If blocked by condition 3 (RETI or write IE/IP), the maximum waiting time should not exceed 5 cycles (1 cycle to complete the current RETI/write operation, plus up to 4 cycles to complete the immediately following instruction - if that instruction happens to be MUL or DIV).

Therefore, for a single interrupt system, the interrupt response time of C500 is always between 3 and 9 machine cycles. For a 12MHz crystal oscillator system (one machine cycle=1 µ s), this corresponds to a delay of 3 µ s to 9 µ s, providing highly predictable performance for hard real-time applications.

External Memory Access Timing and Bus Design

C500 accesses external program memory and data memory through standard bus interfaces, and understanding its timing is crucial for hardware design.

1. Address/data reuse

When accessing external memory, the P0 port assumes the time division multiplexing function for the low 8-bit address and 8-bit data, while the P2 port outputs the high 8-bit address (for MOVX @ DPTR or external fetch) or maintains its SFR content (for MOVX @ Ri). External address latches (such as 74HC373) use the falling edge of the ALE (Address Latch Enable) signal to latch the lower 8 bits of the address on port P0. Afterwards, the P0 port is switched to the data bus.

2. Two access modes

16 bit address access (MOVX @ DPTR): P2 port continuously outputs the content of DPH (high 8-bit address) throughout the entire access cycle. P0 port outputs DPL when ALE is valid, and then switches to data signal. This mode can access a complete address space of 64 KB.

8-bit address access (MOVX @ Ri): The P2 port maintains its existing SFR value throughout the entire cycle and does not automatically output the higher 8 bits of the address. The CPU uses the P0 port to output the content of Ri (8-bit address) and multiplex it with the data. This method is commonly used for "paging" expansion, where the P2 port is pre-set as a page address by software to enable external RAM access exceeding 256 bytes.

Important hardware precautions: During external memory access, the CPU will write FF H to the P0 port latch (SFR). Therefore, during external memory access, the software must not execute the MOV P0 instruction to modify the P0 port, otherwise it will damage the current bus cycle data. In addition, for the ROM free version (EA grounded), the entire 64 KB program space is external, and the P2 port will be fully occupied as an address line, which cannot be used for general-purpose I/O.


Instruction set: Functional classification and optimization of 111 instructions

The instruction set of C500 is fully compatible with the standard 8051, with a total of 111 instructions, including 49 single byte instructions (44%), 45 double byte instructions (41%), and 17 three byte instructions (15%). Efficient instruction encoding means that C500 can achieve higher code density at the same clock frequency.

Overview of Addressing Modes

C500 supports 5 addressing modes, each corresponding to a specific memory space, as shown in Table 2.

Table 2 Addressing Modes and Corresponding Memory Spaces

Memory space accessed in addressing mode

Address the R0-R7, ACC, B, CY bits of the currently selected register group DPTR

Directly addressing the low 128 bytes of internal RAM SFR

Immediate addressing of program memory (constant)

Register indirect addressing internal RAM (@ R0/@ R1/SP), external data storage (@ R0/@ R1/@ DPTR)

Base address register plus index addressing program memory (@ A+DPTR, @ A+PC), used for lookup tables

2. PSW impact of arithmetic operation instructions

  • Sumitomo HC1480-29.00 NSMD Inline Gear Reducer
  • Sumitomo MC-550 MCU UMC550000AEG01
  • Sumitomo CNVM1H-6125YA-B-87 Gear Reducer
  • Sumitomo SD4GS-ACB-02B-110-54 Solenoid Valve
  • Sumitomo HCS79310 Main Motor Assembly
  • Sumitomo JA762913AC Operator Interface Keypad
  • Sumitomo CNHJ-6125Y-8 In Line Reducer
  • Sumitomo X120D30303T-01 Driver
  • Sumitomo H1Y203-25-F7000 Shaft Mount Reducer
  • Sumitomo Type-35SE Fiber Fusion Splicer Kit
  • Sumitomo F2CS-T655-171 Cyclo Drive Gearbox
  • Sumitomo F80 Adsorber RX19ZT6124
  • Sumitomo MC-550 MCU UMC550000AKG01
  • Sumitomo Drive FCS-A65G-59 Speed Reducer
  • Sumitomo SRA81-56-BM50-140 Modular Reamer Holder
  • Sumitomo CNHM05-6100YA-59 Gear Motor
  • DEMAG Sumitomo Ergocontrol NC4 100 V7 Control Unit
  • Sumitomo HMV02-207 Cyclo Drive Induction Motor
  • SUN-EH Sumitomo Z4-22172-12 Ozone Power Unit
  • Sumitomo AF-500 AF502-2A2 Transistor Inverter
  • Sumitomo T-82C+ Core Alignment Fusion Splicer
  • Sumitomo P741F6002B Circuit Board
  • Sumitomo AS-3211 Injection Molding Motherboard
  • Yaskawa SGMGH-13Q5A-OM11 Servo Motor with Sumitomo F3CS-A25G-59 Gear
  • Sumitomo SH120-5 Final Drive Track Travel Motor
  • Sumitomo AS-3345 Circuit Board
  • Sumitomo AF300S-1A5-E Transistor Inverter 1.5kW
  • Sumitomo Type-Q101-CA SM MM Fiber Fusion Splicer
  • Sumitomo SH50 NIV Operator Panel
  • Sumitomo RNFM-009-17L-B-120-N4FCZ843 AC Gear Motor
  • Sumitomo ULC100011-01 LNR Act Driver
  • Sumitomo SD35E OI Operator Panel
  • Sumitomo SR44 SRKG44-32-18-030 Reamer Head
  • Sumitomo T.SBXH1.5-20PD LN Modulator
  • Sumitomo FB10B-4F Brake F Class DC180V
  • Isuzu 3LB1 Cylinder Head for Sumitomo Loaders
  • Sumitomo 6 Hand Hydraulic Valve
  • Sumitomo CNVM05-EO95-59 Gear Reducer Motor
  • Sumitomo Ogura MS982WW Brake Kit
  • Sumitomo SPH-2100 DEV10-002-3 Stamper Changer Head
  • Sumitomo S160 Final Drive Travel Motor
  • Sumitomo X81D1H0102T-01 SEM-I-1613 9N23 Control Unit
  • Sumitomo RNYM02-1330A-B-100 Induction Gear Motor
  • Sumitomo KHR49330 Display Panel E00077
  • Sumitomo SH65-U Mini Excavator Front Idler Wheel
  • Sumitomo Type-Q102-CA Plus Fiber Fusion Splicer
  • Sumitomo SH120-2 Final Drive Track Travel Motor
  • Sumitomo SH120 Final Drive Track Travel Motor
  • Radio Energy RE O444 R2B Tachogenerator with Sumitomo Gearbox
  • STN ATLAS SEIDEL SM 56-M Servo Motor with Sumitomo F2CS-A25G-89 Gear
  • Sumitomo SH130 Final Drive Travel Motor
  • Sumitomo CHHMS02-6135DCB-B-731 Gear Motor 1/4HP
  • Sumitomo AS-3211 REV.E Industrial Control Motherboard
  • Sumitomo Electric TYPE-35SE Fusion Splicer Kit
  • Sumitomo 20 Ton Idler Assembly and Spring
  • Sumitomo F2CS-A25-59-01 Precision Gear Box
  • Isuzu 3LD1 Cylinder Head for Sumitomo SH30 Excavator
  • Sumitomo LHYJS-4A125Y-Y2-60 Cyclo Bevel Gear Motor
  • Sumitomo AF-500 AF502-A40 Transistor Inverter
  • Sumitomo Electric TYPE-201+VS-D-SKM Fusion Splicer
  • Sumitomo CNVM02-EO75-29 Gear Reducer Motor
  • Case CX130 Sumitomo SH120-3 Slew Ring
  • Sumitomo F-70H Water-Cooled Compressor
  • Sumitomo JA765439AC Control Board
  • Sumitomo Eaton Dowmax ME-3100-PS Hydraulic Motor
  • Sumitomo LHYJS-4A100Y-Y1-60 Gear Motor
  • Sumitomo AF504-5A5 SMAC PAC Drive
  • Sumitomo CNHMS34110YB17 Gearmotor
  • Sumitomo F2CS-T555 Fine Cyclo Gearbox
  • Sumitomo QT62-100L-A Gear Pump
  • Sumitomo CHHJ-4135Y-35 Gear Reducer Ratio 35
  • Sumitomo CNHM05-6125-DBYA-B-289 Gear Motor
  • Sumitomo CNFMS012-4095DAGB-731/G Brake Motor
  • Sumitomo SH35J Rubber Track
  • Sumitomo ULC100000-01 LNR Actuator Driver
  • Sumitomo CNVJS-6105Y-29 Gear Reducer
  • Sumitomo QT62-125F-BP-Z Hydraulic Gear Pump
  • Sumitomo S160 Rubber Track
  • Sumitomo SHI Cyclo Drive FCS-A35G-59
  • Sumitomo F-50HW Helium Compressor Unit
  • Sumitomo SM-Cyclo CHH-6165Y-6 Gear Reducer
  • Sumitomo REX-C3300-CS4 JA762528CD Temperature Card
  • Sumitomo Type 39S DCM Fusion Splicer
  • Sumitomo CNFMS012-6095DAGB-731/G Cyclo Reducer
  • Sumitomo Cyclo CNVMS-6105G-87/G Speed Reducer
  • Multivac Sumitomo F2CS-A25-59-01 Planetary Gearbox
  • Sumitomo 1FA15-59 F-Cyclo Speed Reducer
  • Isuzu 4JJ1 Tier 4 Engine DPF DEF Muffler Unit
  • Sumitomo SA767194AD SXAN-1CL Assy Board
  • Sumitomo PA222799 RNYMS1-1420YC-EP-20 Hyponic Gearmotor
  • Triconex 3723X Analog Input Module with HART
  • Sumitomo SM-Cyclo RNFMS01-20L-80 Motor Gear
  • Sumitomo AF503-3A7 Transistor Inverter
  • CASE Sumitomo KHR30842 KHR30840 Cab Harness
  • Sumitomo FCS-A25G-29 PB051710 Gear Kit
  • Sumitomo KHR1787 SMCU-5 Controller
  • Sumitomo AF503-2A2 Inverter 3.9kVA
  • AMT 9502 Touch Screen Panel
  • Sumitomo CHHJS-6135Y-R2-6 Gearbox Adapter
  • Sumitomo PA136445 RNYMS02-1320YC-40 Gearmotor
  • Sumitomo ANFX-P130F-1GL3-33 Gearbox
  • Sumitomo SH55U-2 Rubber Track
  • Sumitomo US60125-GA AC Servo Driver SS6000
  • Sumitomo CNFXS6075LB21 Cyclo Drive Reducer Motor
  • Sumitomo QT62-125F-BP-Z Hydraulic Gear Pump
  • Sumitomo CNFX-6090G-11/G Gearbox
  • Sumitomo X81D1-0102 SEM-I-1614 Control Module
  • Sumitomo Eaton C300-S Counterbalance Valve
  • Sumitomo GR-RF20 Z4-12193-5 Ozone Generator
  • Sumitomo T.SBXH1.5PL-25PD LN Modulator
  • Sumitomo 8700109 AS-3340 rev D CPU Module
  • Sumitomo SHI Cyclo Drive F3CS-A25G-89 Reducer
  • Sumitomo KNR0827 Wiring Harness SH120-3 SH120A3
  • Sumitomo ULC100011-01 LNR Actuator Driver
  • LUBE GMN-10-200-CB2-7L Lubricator Grease Pump
  • Sumitomo SH65UJ Rubber Track
  • Sumitomo KHR69310 Excavator Monitor
  • Sumitomo FDT-2FS Fiber Identifier Power Meter
  • Sumitomo CNVMS-4085G-43 Ink Fountain Motor
  • Sumitomo GV9924023-38 Circuit Board
  • Sumitomo 407915-5510 4BG1TRA ECU Controller
  • Sumitomo Cyclo F71m/4 Induction Motor 0.37kW
  • Sumitomo ANFJ-K30-SV-9 Hydraulic Control Valve
  • Hitachi Sumitomo 4625051 Pilot Valve Joystick
  • Sumitomo Demag W4RAP 6 W7-04-30 Valve
  • Sumitomo RV F2CF-A35-119 Gearbox
  • Sumitomo SH120 Slew Ring JCB JS130
  • Sumitomo Truninger QT-42-20HS-A Gear Pump