English
Language : 

C517A_99 Datasheet, PDF (128/218 Pages) Siemens Semiconductor Group – 8-Bit CMOS Microcontroller
On-Chip Peripheral Components
C517A
6.4 Arithmetic Unit
This on-chip arithmetic unit of the C517A provides fast 32-bit division, 16-bit multiplication as well
as shift and normalize features. All operations are unsigned integer operations.
The arithmetic unit (further on also called MDU for "Multiplication/Division Unit") has been integrated
to support the C500 core of the C517A in real-time control applications. lt can increase the
execution speed of math-intensive software routines by factor 5 to 10.
The MDU is handled by seven registers, which are memory mapped as special function registers
like any other registers for peripheral control. Therefore, the arithmetic unit allows operations
concurrently to and independent of the CPU’s activity. Table 6-8 describes the four general
operations the MDU is able to perform:
Table 6-8
MDU Operation Characteristics
Operation
Result
Remainder
Execution Time
32bit/16bit
16bit/16bit
16bit x 16bit
32-bit normalize
32-bit shift L/R
32bit
16bit
32bit
–
–
16bit
16bit
–
–
–
6
t 1)
CY
4
t 1)
CY
4
t 1)
CY
6
t 2)
CY
6
t 2)
CY
1) 1 tCY = 12 tCLCL= 1 machine cycle = 500 ns at 24 MHz oscillator frequency
2) The maximal shift speed is 6 shifts per machine cycle
6.4.1 MDU Register
The seven SFRs of the MDU consist of registers MD0 to MD5, which contain the operands and the
result (or the remainder, resp.) and one control register called ARCON.
Thus MD0 to MD5 are used twofold:
– for the operands before a calculation has been started and
– for storage of the result or remainder after a calculation.
This means that any calculation of the MDU overwrites its operands. lf a program needs the original
operands for further use, they should be stored in general purpose registers in the internal RAM.
Table 6-8 list the MDU registers with its addresses :
Table 6-9
MDU Registers
SFR
ARCON
MD0
MD1
MD2
MD3
MD4
MD5
Address
EFH
E9H
EAH
EBH
ECH
EDH
EEH
Name
MDU Control Register
MDU Data Register 0
MDU Data Register 1
MDU Data Register 2
MDU Data Register 3
MDU Data Register 4
MDU Data Register 5
Semiconductor Group
6-62