As far as patents or other rights of third parties are concerned, liability is only assumed for components, not for applications, processes
and circuits implemented within components or assemblies.
The information describes the type of component and shall not be considered as assured characteristics.
Terms of delivery and rights to change design reserved.
For questions on technology, delivery and prices please contact the Semiconductor Group Offices in Germany or the Siemens Companies
and Representatives worldwide (see address list).
Due to technical requirements components may contain dangerous substances. For information on the types in question please contact
your nearest Siemens Office, Semiconductor Group.
Siemens AG is an approved CECC manufacturer.
Packing
Please use the recycling operators known to you. We can also help you – get in touch with your nearest sales office. By agreement we
will take packing material back, if it is sorted. You must bear the costs of transport.
For packing material that is returned to us unsorted or which we are not obliged to accept, we shall have to invoice you for any costs incurred.
Components used in life-support devices or systems must be expressly authorized for such purpose!
Critical components
written approval of the Semiconductor Group of Siemens AG.
1 A critical component is a component used in a life-support device or system whose failure can reasonably be expected to cause the
failure of that life-support device or system, or to affect its safety or effectiveness of that device or system.
2 Life support devices or systems are intended (a) to be implanted in the human body, or (b) to support and/or maintain and sustain hu-
man life. If they fail, it is reasonable to assume that the health of the user may be endangered.
1
of the Semiconductor Group of Siemens AG, may only be used in life-support devices or systems
2
with the express
8-Bit CMOS Microcontroller
Advance Information
• Full upward compatibility with SAB 80C517A/83C517A-5
• Up to 24 MHz external operating frequency
– 500 ns instruction cycle at 24 MHz operation
• Superset of the 8051 architecture with 8 datapointers
• On-chip emulation support logic (Enhanced Hooks Technology
• 32K byte on-chip ROM (with optional ROM protection)
– alternatively up to 64K byte external program memory
is an 8-bit quasi-bidirectional I/O port with internal pullup
resistors. Port 1 pins that have 1's written to them are
pulled high by the internal pullup resistors, and in that state
can be used as inputs. As inputs, port 1 pins being
externally pulled low will source current (IIL, in the DC
characteristics) because of the internal pullup resistors.
The port is used for the low-order address byte during
program verification. Port 1 also contains the interrupt,
timer, clock, capture and compare pins that are used by
various options. The output latch corresponding to a
secondary function must be programmed to a one (1) for
that function to operate (except when used for the compare
functions). The secondary functions are assigned to the
port 1 pins as follows:
P1.0INT3 CC0Interrupt 3 input / compare 0 output /
is the input to the inverting oscillator amplifier and input to
the internal clock generator circuits.
To drive the device from an external clock source, XTAL2
should be driven, while XTAL1 is left unconnected.
Minimum and maximum high and low times as well as rise/
fall times specified in the AC characteristics must be
observed.
XTAL113–XTAL1
is the output of the inverting oscillator amplifier. This pin is
used for the oscillator operation with crystal or ceramic
resonator.
C517A
P2.0 - P2.714 - 21I/OPort 2
is an 8-bit quasi-bidirectional I/O port with internal pullup
resistors. Port 2 pins that have 1's written to them are
pulled high by the internal pullup resistors, and in that state
can be used as inputs. As inputs, port 2 pins being
externally pulled low will source current (I
characteristics) because of the internal pullup resistors.
Port 2 emits the high-order address byte during fetches
from external program memory and during accesses to
external data memory that use 16-bit addresses
(MOVX @DPTR). In this application it uses strong internal
pullup resistors when issuing 1's. During accesses to
external data memory that use 8-bit addresses
(MOVX @Ri), port 2 issues the contents of the P2 special
function register.
PSEN22OThe Program Store Enable
output is a control signal that enables the external program
memory to the bus during external fetch operations. It is
activated every six oscillator periods except during
external data memory accesses. The signal remains high
during internal program execution.
, in the DC
IL
ALE23OThe Address Latch enable
output is used for latching the address into external
memory during normal operation. It is activated every six
oscillator periods except during an external data memory
access.
*) I = Input
O = Output
Semiconductor Group81997-10-01
Table 2
Pin Definitions and Functions (cont’d)
SymbolPin NumberI/O*)Function
P-MQFP-100
EA24IExternal Access Enable
When held high, the C517A executes instructions from the
internal ROM as long as the PC is less than 8000H. When
held low, the C517A fetches all instructions from external
program memory. For the C517A-L this pin must be tied
low.
C517A
P0.0 - P0.726, 27,
30 - 35
I/OPort 0
is an 8-bit open-drain bidirectional I/O port. Port 0 pins that
have 1's written to them float, and in that state can be used
as high-impedance inputs. Port 0 is also the multiplexed
low-order address and data bus during accesses to
external program and data memory. In this application it
uses strong internal pullup resistors when issuing 1's. Port
0 also outputs the code bytes during program verification
in the C517A. External pullup resistors are required during
program verification.
HWPD36IHardware Power Down
A low level on this pin for the duration of one machine cycle
while the oscillator is running resets the C517A. A low level
for a longer period will force the part into hardware power
down mode with the pins floating. There is no internal
pullup resistor connected to this pin.
P5.0 - P5.744 - 37I/OPort 5
is a quasi-bidirectional I/O port with internal pull-up
resistors. Port 5 pins that have 1 s written to them are
pulled high by the internal pull-up resistors, and in that
state can be used as inputs. As inputs, port 5 pins being
externally pulled low will source current (I
characteristics) because of the internal pull-up resistors.
This port also serves the alternate function “Concurrent
Compare” and “Set/Reset Compare”. The secondary
functions are assigned to the port 5 pins as follows:
CCM0 to CCM7 P5.0 to P5.7:
concurrent compare or Set/Reset lines
, in the DC
IL
*) I = Input
O = Output
Semiconductor Group91997-10-01
Table 2
Pin Definitions and Functions (cont’d)
SymbolPin NumberI/O*)Function
P-MQFP-100
OWE45IOscillator Watchdog Enable
A high level on this pin enables the oscillator watchdog.
When left unconnected this pin is pulled high by a weak
internal pull-up resistor. The logic level at OWE should not
be changed during normal operation. When held at low
level the oscillator watchdog function is turned off. During
hardware power down the pullup resistor is switched off.
C517A
P6.0 - P6.746 - 50,
54 - 56
I/OPort 6
is a quasi-bidirectional I/O port with internal pull-up
resistors. Port 6 pins that have 1 s written to them are
pulled high by the internal pull-up resistors, and in that
state can be used as inputs. As inputs, port 6 pins being
externally pulled low will source current (I
DC characteristics) because of the internal pull-up
resistors.
Port 6 also contains the external A/D converter control pin
and the transmit and receive pins for the serial interface 1.
The output latch corresponding to a secondary function
must be programmed to a one (1) for that function to
operate.
The secondary functions are assigned to the pins of port 6,
as follows:
46
47
48
P6.0ADSTexternal A/D converter start pin
P6.1RxD1receiver data input of serial interface 1
P6.2TxD1transmitter data input of serial interface 1
P8.0 - P8.357 - 60IPort 8
is a 4-bit unidirectional input port. Port pins can be used for
digital input, if voltage levels meet the specified input high/
low voltages, and for the higher 4-bit of the multiplexed
analog inputs of the A/D converter, simultaneously.
P8.0 - P8.3AIN8 - AIN11analog input 8 - 14
, in the
IL
RO61OReset Output
This pin outputs the internally synchronized reset request
signal. This signal may be generated by an external
hardware reset, a watchdog timer reset or an oscillator
watchdog reset. The RO is active low.
*) I = Input
O = Output
Semiconductor Group101997-10-01
Table 2
Pin Definitions and Functions (cont’d)
SymbolPin NumberI/O*)Function
P-MQFP-100
C517A
P4.0 - P4.764 - 66,
68 - 72
I/OPort 4
is an 8-bit quasi-bidirectional I/O port with internal pull-up
resistors. Port 4 pins that have 1’s written to them are
pulled high by the internal pull-up resistors, and in that
state can be used as inputs. As inputs, port 4 pins being
externally pulled low will source current (IIL, in the DC
characteristics) because of the internal pull-up resistors.
A low level at this pin allows the software to enter the power
saving modes (idle mode, slow down mode, and power
down mode). In case the low level is also seen during
reset, the watchdog timer function is off on default.
Usage of the software controlled power saving modes is
blocked, when this pin is held at high level. A high level
during reset performs an automatic start of the watchdog
timer immediately after reset.
When left unconnected this pin is pulled high by a weak
internal pull-up resistor. During hardware power down the
pullup resistor is switched off.
RESET73IRESET
A low level on this pin for the duration of two machine
cycles while the oscillator is running resets the C517A. A
small internal pullup resistor permits power-on reset using
only a capacitor connected to VSS.
V
AREF
V
AGND
78–Reference voltage for the A/D converter
79–Reference ground for the A/D converter
P7.0 - P7.787 - 80Port 7
is an 8-bit unidirectional input port. Port pins can be used
for digital input, if voltage levels meet the specified input
high/low voltages, and for the lower 8-bit of the multiplexed
analog inputs of the A/D converter, simultaneously.
P7.0 - P7.7AIN0 - AIN7analog input 8 - 14
*) I = Input
O = Output
Semiconductor Group111997-10-01
Table 2
Pin Definitions and Functions (cont’d)
SymbolPin NumberI/O*)Function
P-MQFP-100
C517A
P3.0 - P3.790 - 97
90
91
92
93
94
95
96
97
I/OPort 3
is an 8-bit quasi-bidirectional I/O port with internal pullup
resistors. Port 3 pins that have 1's written to them are
pulled high by the internal pullup resistors, and in that state
can be used as inputs. As inputs, port 3 pins being
externally pulled low will source current (IIL, in the DC
characteristics) because of the internal pullup resistors.
Port 3 also contains the interrupt, timer, serial port and
external memory strobe pins that are used by various
options. The output latch corresponding to a secondary
function must be programmed to a one (1) for that function
to operate. The secondary functions are assigned to the
pins of port 3, as follows:
P3.0RxD0Receiver data input (asynch.) or data
input/output (synch.)of serial interface 0
P3.1TxD0Transmitter data output (asynch.) or
clock output (synch.) of serial interface 0
P3.2INT0External interrupt 0 input /
timer 0 gate control input
P3.3INT1External interrupt 1 input /
timer 1 gate control input
P3.4T0Timer 0 counter input
P3.5T1Timer 1 counter input
P3.6WRWR control output; latches the data byte
from port 0 into the external data
memory
P3.7RDRD control output; enables the external
data memory
N.C.2 - 5, 25,
28, 29, 32,
43, 44,
–Not connected
These pins of the P-MQFP-100 package need not be
connected.
51 - 53,
74 - 77
88, 89
*) I = Input
O = Output
Semiconductor Group121997-10-01
XTAL1
XTAL2
Oscillator Watchdog
OSC & Timing
256 x 8
XRAMRAM
2k x 8
C517A
ROM
32k x 8
ALE
PSEN
EA
PE/SWD
RESET
HWPD
RO
OWE
CPU
8 Datapointer
Programmable
Watchdog Timer
Timer 0
Timer 1
Timer 2
Capture
Compare Unit
Compare Timer
Serial Channel 0
Programmable
Baud Rate Generator
Serial Channel 1
Programmable
Baud Rate Generator
Interrupt Unit
Emulation
Support
Logic
Port 0
Port 1
Port 2
Port 3
Port 4
Port 5
Port 6
Port 0
8-Bit Digital I/O
Port 1
8-Bit Digital I/O
Port 2
8-Bit Digital I/O
Port 3
8-Bit Digital I/O
Port 4
8-Bit Digital I/O
Port 5
8-Bit Digital I/O
Port 6
8-Bit Digital I/O
V
V
AGND
AREF
A/D Converter
S & H
10 Bit
Analog
MUX
Port 7
Port 8
Port 7
8-Bit Analog/
Digital Input
Port 8
4-Bit Analog/
Digital Input
C517A
MCB03320
Figure 4
Block Diagram of the C517A
Semiconductor Group131997-10-01
C517A
CPU
The C517A is efficient both as a controller and as an arithmetic processor. It has extensive facilities
for binary and BCD arithmetic and excels in its bit-handling capabilities. Efficient use of program
memory results from an instruction set consisting of 44 % one-byte, 41 % two-byte, and 15%
three-byte instructions. With a 12 MHz crystal, 58% of the instructions are executed in 1µs (24 MHz:
500 ns).
Special Function Register PSW (Address D0H)Reset Value : 00
Bit No.MSBLSB
D7
H
BitFunction
CYCarry Flag
ACAuxiliary Carry Flag
F0General Purpose Flag
RS1
RS0
CYAC
D6
H
Used by arithmetic instruction.
Used by instructions which execute BCD operations.
Register Bank select control bits
These bits are used to select one of the four register banks.
RS1RS0Function
H
D5
F0
H
D4
RS1RS0OVF1PD0
H
D3
H
D2
H
D1
H
D0
H
PSW
H
00Bank 0 selected, data address 00H-07
01Bank 1 selected, data address 08H-0F
10Bank 2 selected, data address 10H-17
11Bank 3 selected, data address 18H-1F
OVOverflow Flag
Used by arithmetic instruction.
F1General Purpose Flag
PParity Flag
Set/cleared by hardware after each instruction to indicate an odd/even
number of “one” bits in the accumulator, i.e. even parity.
Semiconductor Group141997-10-01
H
H
H
H
Memory Organization
The C517A CPU manipulates operands in the following five address spaces:
– up to 64 Kbyte of program memory (32K on-chip program memory for C517A-4R)
– up to 64 Kbyte of external data memory
– 256 bytes of internal data memory
– 2K bytes of internal XRAM data memory
– a 128 byte special function register area
Figure 5 illustrates the memory address spaces of the C517A.
FFFF
H
ext.
FFFF
H
int.
(XMAP0 = 0)(XMAP0 = 1)
ext.
C517A
int.
"Code Space"
ext.
(EA = 0)(EA = 1)
Figure 5
C517A Memory Map
8000
H
7FFF
0000
F800
H
F7FF
H
H
ext.
H
"Data Space""Internal Data Space"
0000
H
Indirect
AddressAddress
FF
Internal
RAM
80
Internal
RAM
H
H
Direct
Special
Function
Regs.
7F
H
00
H
FF
H
80
H
MCB03321
Semiconductor Group151997-10-01
C517A
Reset and System Clock
The reset input is an active low input at pin RESET. Since the reset is synchronized internally, the
RESET pin must be held low for at least two machine cycles (24 oscillator periods) while the
oscillator is running. A pullup resistor is internally connected to VCC to allow a power-up reset with
an external capacitor only. An automatic reset can be obtained when VCC is applied by connecting
the RESET pin to VSS via a capacitor. Figure 6 shows the possible reset circuitries.
b)a)
&
Figure 6
Reset Circuitries
+
RESET
C517A
c)
+
RESET
RESET
C517A
C517A
MCS03323
Semiconductor Group161997-10-01
C517A
Figure 7 shows the recommended oscillator circuitries for crystal and external clock operation.
Crystal Oscillator ModeDriving from External Source
C
3.5 - 24
MHz
C
Crystal Mode:C = 20 pF 10 pF
(Incl. Stray Capacitance)
Figure 7
Recommended Oscillator Circuitries
XTAL1
XTAL2
N.C.
External Oscillator
Signal
XTAL1
XTAL2
MCS03245
Semiconductor Group171997-10-01
C517A
Enhanced Hooks Emulation Concept
The Enhanced Hooks Emulation Concept of the C500 microcontroller family is a new, innovative
way to control the execution of C500 MCUs and to gain extensive information on the internal
operation of the controllers. Emulation of on-chip ROM based programs is possible, too.
Each production chip has built-in logic for the support of the Enhanced Hooks Emulation Concept.
Therefore, no costly bond-out chips are necessary for emulation. This also ensure that emulation
and production chips are identical.
1)
The Enhanced Hooks Technology
together with an EH-IC to function similar to a bond-out chip. This simplifies the design and reduces
costs of an ICE-system. ICE-systems using an EH-IC and a compatible C500 are able to emulate
all operating modes of the different versions of the C500 microcontrollers. This includes emulation
of ROM, ROM with code rollover and ROMless modes of operation. It is also able to operate in
single step mode and to read the SFRs after a break.
TM
, which requires embedded logic in the C500 allows the C500
Port 0, port 2 and some of the control lines of the C500 based MCU are used by Enhanced Hooks
Emulation Concept to control the operation of the device during emulation and to transfer
informations about the program execution and data transfer between the external emulation
hardware (ICE-system) and the C500 MCU.
1 “Enhanced Hooks Technology” is a trademark and patent of Metalink Corporation licensed to Siemens.
Semiconductor Group181997-10-01
C517A
Special Function Registers
The registers, except the program counter and the four general purpose register banks, reside in
the special function register area.
The 94 special function registers (SFRs) in the standard and mapped SFR area include pointers
and registers that provide an interface between the CPU and the other on-chip peripherals. All
SFRs with addresses where address bits 0-2 are 0 (e.g. 80H, 88H, 90H, 98H, …, F8H, FFH) are
bitaddressable. The SFRs of the C517A are listed in table 3 and table 4. In table 3 they are
organized in groups which refer to the functional blocks of the C517A. Table 4 illustrates the
contents of the SFRs in numeric order of their addresses.
Semiconductor Group191997-10-01
C517A
Table 3
Special Function Registers - Functional Blocks
BlockSymbolNameAddressContents after
Reset
CPUACC
B
DPH
DPL
DPSEL
PSW
SP
A/DConverter
ADCON0
ADCON1
ADDATH
ADDATL
Interrupt
System
IEN0
IEN1
2)
2)
IEN2
2)
IP0
IP1
IRCON0
IRCON1
TCON
T2CON
S0CON
CTCON
MUL/DIV
Unit
ARCON
MD0
MD1
MD2
MD3
MD4
MD5
Timer 0 /
Timer 1
TCON
TH0
TH1
TL0
TL1
TMOD
1) Bit-addressable special function registers
2) This special function register is listed repeatedly since some bits of it also belong to other functional blocks.
3) ‘X’ means that the value is undefined and the location is reserved
Accumulator
B-Register
Data Pointer, High Byte
Data Pointer, Low Byte
Data Pointer Select Register
Program Status Word Register
Stack Pointer
2)
A/D Converter Control Register 0
A/D Converter Control Register 1
A/D Converter Data Register, High Byte
A/D Converter Data Register, Low Byte