DS80C310
7 of 22
SPECIAL FUNCTION REGISTERS (SFRs)
Special Function Registers control most special features of the DS80C310. The High-Speed
Microcontroller User’s Guide contains descriptions of all the SFRs. Functions that are not part of the
standard 80C32 are in bold.
Table 1. Special Function Registers
REGISTER BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0 ADDRESS
SP — 81h
DPL — 82h
DPH — 83h
DPL1
— — 84h
DPH1
— — 85h
DPS
0 0 0 0 0 0 0 SEL 86h
PCON SMOD SM0D0 — GF1 GF0 STOP IDLE 87h
TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 88h
TMOD GATE
C/
T
M1 M0 GATE
C/T
M1 M0 89h
TL0 — 8Ah
TL1 — 8Bh
TH0 — 8Ch
TH1 — 8Dh
CKCON
— —
T2M T1M T0M MD2 MD1 MD0
8Eh
P1 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 90h
EXIF IE5 IE4 IE3 IE2
— — 91h
SCON SMO/FE SM1 SM2 REN TB8 RB8 TI RI 98h
SBUF — — 99h
P2 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 A0h
IE EA ET2 ES0 ET1 EX1 ET0 EX0 A8h
SADDR0 — A9h
P3 P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 B0h
IP — PT2 PSO PT1 PX1 PT0 PX0 B8h
SADEN0 — B9h
STATUS 0 HIP LIP 1 1 1 1 1 C5h
T2CON TF2 EXF2 RCLK TCLK EXEN2 TR2
C/
T2 CP/ RL2
C8h
T2MOD — T2OE DCEN C9h
RCAP2L — — — — — CAh
RCAP2H — CBh
TL2 — CCh
TH2 — CDh
PSW CY AC F0 RS1 RS0 OV FL P D0h
WDCON
POR
— — D8h
ACC — E0h
EIE
— —
EX5 EX4 EX3 EX2
E8h
B — F0h
EIP
— —
PX5 PX4 PX3 PX2
F8h
DS80C310
8 of 22
MEMORY ACCESS
The DS80C310 has 256 bytes of scratchpad RAM, but contains no on-chip ROM. Off-chip memory is
accessed using the multiplexed address/data bus on P0 and the MSB address on P2. Timing diagrams are
provided in the
Absolute Maximum Ratings section. Program memory (ROM) is accessed at a fixed rate
determined by the crystal frequency and the actual instructions. As mentioned above, an instruction cycle
requires 4 clocks. Data memory (RAM) is accessed according to a variable speed MOVX instruction as
described below.
STRETCH MEMORY CYCLE
The DS80C310 allows the application software to adjust the speed of data memory access. The
microcontroller can perform the MOVX in as few as 2 instruction cycles. However, this value can be
stretched as needed so that both fast memory and slow memory or peripherals can be accessed with no
glue logic. Even in high-speed systems, it may not be necessary or desirable to perform data memory
access at full speed. In addition, there are a variety of memory-mapped peripherals such as LCD displays
or UARTs that are not fast.
The stretch MOVX is controlled by the Clock Control Register at SFR location 8Eh as described below.
This allows the user to select a stretch value between 0 and 7. A stretch of 0 results in a 2-machine-cycle
MOVX. A stretch of 7 results in a MOVX of 9 machine cycles. Software can dynamically change this
value depending on the particular memory or peripheral.
On reset, the stretch value defaults to 1, resulting in a 3-cycle MOVX. Therefore, RAM access is not
performed at full speed. This is a convenience to existing designs that may not have fast RAM in place.
When maximum speed is desired, the software should select a stretch value of 0. When using very slow
RAM or peripherals, a larger stretch value can be selected. Note that this affects data memory only and
the only way to slow program memory (ROM) access is to use a slower crystal.
Using a stretch value between 1 and 7 causes the microcontroller to stretch the read/write strobe and all
related timing. This results in a wider read/write strobe allowing more time for memory/peripherals to
respond. The timing of the variable speed MOVX is shown in the
Absolute Maximum Ratings section.
Note that full speed access is not the reset default case. Table 2 shows the resulting strobe widths f
or each
stretch value. The memory stretch is implemented using the Clock Control Special Function Register at
SFR location 8Eh. The stretch value is selected using bits CKCON.2–CKCON.0. In the table, these bits
are referred to as M2 through M0. The first stretch (default) allows the use of common 120ns or 150ns
RAMs without dramatically lengthening the memory access.
DS80C310
9 of 22
Table 2. Data Memory Cycle Stretch Values
CKCON.2–CKCON.0
M2 M1 M0
MEMORY
CYCLES
RD OR WR STROBE
WIDTH IN CLOCKS
25MHz STROBE WIDTH
(ns)
0 0 0 2 2 80
0 0 1 3 (default) 4 160
0 1 0 4 8 320
0 1 1 5 12 480
1 0 0 6 16 640
1 0 1 7 20 800
1 1 0 8 24 960
1 1 1 9 28 1120
DUAL DATA POINTER (DPTR)
Data memory block moves can be accelerated using the DS80C310 dual data pointer (DPTR). The
standard 8032 DPTR is a 16-bit value that is used to address off-chip data RAM or peripherals. In the
DS80C310, the standard data pointer is called DPTR and is located at SFR addresses 82h and 83h. These
are the standard locations. No modification of standard code is needed to use DPTR. The new DPTR is
located at SFR 84h and 85h and is called DPTR1. The DPTR select bit (DPS) chooses the active pointer
and is located at the LSB of the SFR location 86h. No other bits in register 86h have any effect and are set
to 0. The user switches between data pointers by toggling the LSB of register 86h. The increment (INC)
instruction is the fastest way to accomplish this. All DPTR-related instructions use the currently selected
DPTR for any activity. Therefore, only one instruction is required to switch from a source to a destination
address. Using the DPTR saves code from needing to save source and destination addresses when doing a
block move. Once loaded, the software simply switches between DPTR0 and 1. The relevant register
locations are as follows.
DPL 82h Low byte original DPTR
DPH 83h High byte original DPTR
DPL1 84h Low byte new DPTR
DPH1 85h High byte new DPTR
DPS 86h DPTR Select (lsb)
STOP MODE ENHANCEMENTS
Setting bit 1 of the Power Control Register (PCON; 87h) invokes the stop mode. Stop mode is the lowest
power state because it turns off all internal clocking. The I
CC
of a standard stop mode is approximately
1
A (but is specified in the Absolute Maximum Ratings section). The CPU exits stop mode from an
external interrupt or a reset condition. Internally generated interrupts are not useful since they require
clocking activity.
The DS80C310 allows a resume from stop using INT2–INT5, which are edge-triggered interrupts. An
internal crystal counter manages the startup timing. A delay of 65,536 clocks occurs to allow the crystal
time to stabilize. Software must also insert a delay of 100 machine cycles following the exit from stop
mode. This ensures stabilization of internal timing prior to time-critical software tasks such as serial port
operations or bus access to memory-mapped I/O devices.

DS80C310-ECG

Mfr. #:
Manufacturer:
Maxim Integrated
Description:
8-bit Microcontrollers - MCU High-Speed
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union