Pin, Software and Architecturally
Compatible with all UPI-41 and UPI-42
Products
Y
Low Voltage Operation with the UPIL42
Ð Full 3.3V Support
Y
Hardware A20 Gate Support
Y
Suspend Power Down Mode
Y
Security Bit Code Protection Support
Y
8-Bit CPU plus ROM/OTP EPROM, RAM,
I/O, Timer/Counter and Clock in a
Single Package
Y
4096 x 8 ROM/OTP, 256 x 8 RAM 8-Bit
Timer/Counter, 18 Programmable I/O
Pins
Y
DMA, Interrupt, or Polled Operation
Supported
The UPI-C42 is an enhanced CHMOS version of the industry standard Intel UPI-42 family. It is fabricated on
Intel’s CHMOS III-E process. The UPI-C42 is pin, software, and architecturally compatible with the NMOS UPI
family. The UPI-C42 has all of the same features of the NMOS family plus a larger user programmable memory
array (4K), hardware A20 gate support, and lower power consumption inherent to a CHMOS product.
The UPI-L42 offers the same functionality and socket compatibility as the UPI-C42 as well as providing low
voltage 3.3V operation.
The UPI-C42 is essentially a ‘‘slave’’ microcontroller, or a microcontroller with a slave interface included on the
chip. Interface registers are included to enable the UPI device to function as a slave peripheral controller in the
MCS Modules and iAPX family, as well as other 8-, 16-, and 32-bit systems.
To allow full user flexibility, the program memory is available in ROM and One-Time Programmable EPROM
(OTP).
Y
One 8-Bit Status and Two Data
Registers for Asynchronous Slave-toMaster Interface
Y
Fully Compatible with all Intel and Most
Other Microprocessor Families
Y
Interchangeable ROM and OTP EPROM
Versions
Y
Expandable I/O
Y
Sync Mode Available
Y
Over 90 Instructions: 70% Single Byte
Y
Quick Pulse Programming Algorithm
Ð Fast OTP Programming
Y
Available in 40-Lead Plastic, 44-Lead
Plastic Leaded Chip Carrier, and
44-Lead Quad Flat Pack Packages
(See Packaging Spec., OrderÝ240800, Package Type P, N,
and S)
Figure 1. DIP Pin
Configuration
*Other brands and names are the property of their respective owners.
Information in this document is provided in connection with Intel products. Intel assumes no liability whatsoever, including infringement of any patent or
copyright, for sale and use of Intel products except as provided in Intel’s Terms and Conditions of Sale for such products. Intel retains the right to make
changes to these specifications at any time, without notice. Microcomputer Products may have minor variations to this specification known as errata.
TEST 0,1218ITEST INPUTS: Input pins which can be directly tested using conditional
TEST 1394316
XTAL 12319OOUTPUT: Output from the oscillator amplifier.
XTAL 23420IINPUT: Input to the oscillator amplifier and internal clock generator
RESET4522IRESET: Input used to reset status flip-flops, set the program counter to
SS5623ISINGLE STEP: Single step input used in conjunction with the SYNC output
CS6724ICHIP SELECT: Chip select input used to select one UPI microcomputer
EA7825IEXTERNAL ACCESS: External access input which allows emulation,
RD8926IREAD: I/O read input which enables the master CPU to read data and
A
0
WR101128IWRITE: I/O write input which enables the master CPU to write data and
SYNC111329OOUTPUT CLOCK: Output signal which occurs once per UPI instruction
D0–D
(BUS)
P10–P1727–34 30–33 2–10I/OPORT 1: 8-bit, PORT 1 quasi-bidirectional I/O lines. P10–P17access the
DIPPLCCQFP
No.No.No.
branch instructions.
FREQUENCY REFERENCE: TEST 1 (T
input (under software control). TEST 0 (T
during PROM programming and ROM/EPROM verification, during Sync
) functions as the event timer
1
) is a multi-function pin used
0
Mode to reset the instruction state to S1 and synchronize the internal clock
to PH1.
circuits.
zero, and force the UPI-C42 from the suspend power down mode.
is also used during EPROM programming and verification.
RESET
to step the program through each instruction (EPROM). This should be tied
a
5V when not used. This pin is also used to put the device in Sync
to
Mode by applying 12.5V to it.
out of several connected to a common data bus.
testing and ROM/EPROM verification. This pin should be tied low if
unused.
status words from the OUTPUT DATA BUS BUFFER or status register.
91027ICOMMAND/DATA SELECT: Address Input used by the master processor
e
to indicate whether byte transfer is data (A
e
(A
0
1, F1 is set). A
e
0 during program and verify operations.
0
0, F1 is reset) or command
0
command words to the UPI INPUT DATA BUS BUFFER.
cycle. SYNC can be used as a strobe for external circuitry; it is also used to
synchronize single step operation.
12–19 14–21 30–37I/ODATA BUS: Three-state, bidirectional DATA BUS BUFFER lines used to
7
35–38
interface the UPI microcomputer to an 8-bit master system data bus.
signature row and security bit.
2
UPI-C42/UPI-L42
Table 1. Pin Description (Continued)
SymbolPinPinPinTypeName and Function
P20–P2721–24 24–2739–42I/OPORT 2: 8-bit, PORT 2 quasi-bidirectional I/O lines. The lower 4 bits
PROG252843I/OPROGRAM: Multifunction pin used as the program pulse input during
V
CC
V
DD
V
SS
DIPPLCCQFP
No.No.No.
) interface directly to the 8243 I/O expander device and
35–38 39–42 11,13–15
(P
20–P23
contain address and data information during PORT 4 – 7 access. P
can be programmed to provide hardware A20 gate support. The upper
4 bits (P24–P27) can be programmed to provide interrupt Request and
DMA Handshake capability. Software control can configure P
Output Buffer Full (OBF) interrupt, P
interrupt, P
(DACK
as DMA Request (DRQ), and P27as DMA ACKnowledge
26
).
as Input Buffer Full (IBF)
25
24
PROM programming.
During I/O expander access the PROG pin acts as an address/data
strobe to the 8243. This pin should be tied high if unused.
404417POWER:a5V main power supply pin.
26291POWER:a5V during normal operation.a12.75V during programming
operation. Low power standby supply pin.
202238GROUND: Circuit ground potential.
21
as
Figure 4. Block Diagram
290414– 4
3
UPI-C42/UPI-L42
UPI-C42/L42 PRODUCT SELECTION GUIDE
UPI-C42: Low power CHMOS version of the UPI-42.
DevicePackageROMOTPComments
80C42N, P S4KROM Device
82C42PCN, P, SPhoenix MultiKey/42 firmware, PS/2 style mouse support
82C42PDN, P, SPhoenix MultiKey/42L firmware, KBC and SCC for portable apps.
82C42PEN, P, SPhoenix MultiKey/42G firmware, Energy Efficient KBC solution
87C42N, P, S4KOne Time Programmable Version
UPI-L42: The low voltage 3.3V version of the UPI-C42.
DevicePackageROMOTPComments
80L42N, P S4KROM Device
82L42PCN, P, SPhoenix MultiKey/42 firmware, PS/2 style mouse support
82L42PDN, P, SPhoenix MultiKey/42L firmware, KBC and SCC for portable apps.
87L42N, P, S4KOne Time Programmable Version
Ne44 lead PLCC, Pe40 lead PDIP, Se44 lead QFP, De40 lead CERDIP
e
Key Board Control, SCCeScan Code Control
KBC
THE INTEL 82C42
As shown in the UPI-C42 product matrix, the UPIC42 is offered as a pre-programmed 80C42 with various versions of MultiKey/42 keyboard controller
firmware developed by Phoenix Technologies Ltd.
The 82C42PC provides a low powered solution for
industry standard keyboard and PS/2 style mouse
control. The 82C42PD provides a cost effective
means for keyboard and scan code control for notebook platforms. The 82C42PE allows a quick time to
market, low cost solution for energy efficient desktop designs.
4
UPI-C42/UPI-L42
UPI-42 COMPATIBLE FEATURES
1. Two Data Bus Buffers, one for input and one for
output. This allows a much cleaner Master/Slave
protocol.
290414– 5
2. 8 Bits of Status
ST7ST6ST5ST4F1F0IBF OBF
D7D6D5D4D3D2D1D
ST4–ST7are user definable status bits. These
bits are defined by the ‘‘MOV STS, A’’ single
byte, single cycle instruction. Bits 4 – 7 of the
acccumulator are moved to bits 4–7 of the status
register. Bits 0 – 3 of the status register are not
affected.
MOV STS, A Op Code: 90H
1 001000 0
D
7
3. RD and WR are edge triggered. IBF, OBF, F1and
INT change internally after the trailing edge of RD
or WR.
During the time that the host CPU is reading the
status register, the UPI is prevented from updating this register or is ‘locked out.’
0
D
0
290414– 6
4. P24and P25are port pins or Buffer Flag pins
which can be used to interrupt a master processor. These pins default to port pins on Reset.
If the ‘‘EN FLAGS’’ instruction has been executed, P
pin. A ‘‘1’’ written to P
pin outputs the OBF Status Bit). A ‘‘0’’ written to
P
This pin can be used to indicate that valid data is
becomes the OBF (Output Buffer Full)
24
disables the OBF pin (the pin remains low).
24
enables the OBF pin (the
24
available from the UPI (in Output Data Bus Buffer).
If ‘‘EN FLAGS’’ has been executed, P
comes the IBF
ten to P
the inverse of the IBF Status Bit. A ‘‘0’’ written to
disables the IBF pin (the pin remains low).
P
25
This pin can be used to indicate that the UPI is
(Input Buffer Full) pin. A ‘‘1’’ writ-
enables the IBF pin (the pin outputs
25
be-
25
ready for data.
Data Bus Buffer Interrupt Capability
290414– 7
EN FLAGS Op Code: 0F5H
1 111010 1
D
7
D
0
5. P26and P27are port pins or DMA handshake
pins for use with a DMA controller. These pins
default to port pins on Reset.
If the ‘‘EN DMA’’ instruction has been executed,
P
becomes the DRQ (DMA Request) pin. A ‘‘1’’
26
written to P
activated). DRQ is deactivated by DACK
DACK
#
causes a DMA request (DRQ is
26
#
RD,
WR, or execution of the ‘‘EN DMA’’ in-
struction.
DMA Handshake Capability
290414– 8
5
UPI-C42/UPI-L42
If ‘‘EN DMA’’ has been executed, P27becomes
the DACK
as a chip select input for the Data Bus Buffer
registers during DMA transfers.
EN DMA Op Code: 0E5H
6. When EA is enabled on the UPI, the program
counter is placed on Port 1 and the lower four
bits of Port 2 (MSB
UPI this information is multiplexed with PORT
DATA (see port timing diagrams at end of this
data sheet).
7. The UPI-C42 supports the Quick Pulse Programming Algorithm, but can also be programmed
with the Intelligent Programming Algorithm. (See
the Programming Section.)
(DMA ACKnowledge) pin. This pin acts
1 110010 1
D
7
e
P23, LSBeP10). On the
D
0
UPI-C42 FEATURES
Programmable Memory Size Increase
The user programmable memory on the UPI-C42 will
be increased from the 2K available in the NMOS
product by 2X to 4K. The larger user programmable
memory array will allow the user to develop more
complex peripheral control micro-code. P2.3 (port 2
bit 3) has been designated as the extra address pin
required to support the programming of the extra 2K
of user programmable memory.
The new instruction SEL PMB1 (73h) allows for access to the upper 2K bank (locations 2048– 4095).
The additional memory is completely transparent to
users not wishing to take advantage of the extra
memory space. No new commands are required to
access the lower 2K bytes. The SEL PMB0 (63h)
has also been added to the UPI-C42 instruction set
to allow for switching between memory banks.
Extended Memory Program
Addressing (Beyond 2K)
For programs of 2K words or less, the UPI-C42 addresses program memory in the conventional manner. Addresses beyond 2047 can be reached by executing a program memory bank switch instruction
(SEL PMB0, SEL PMB1) followed by a branch instruction (JMP or CALL). The bank switch feature
extends the range of branch instructions beyond
their normal 2K range and at the same time prevents
the user from inadvertently crossing the 2K boundary.
PROGRAM MEMORY BANK SWITCH
The switching of 2K program memory banks is accomplished by directly setting or resetting the most
significant bit of the program counter (bit 11); see
Figure 5. Bit 11 is not altered by normal incrementing of the program counter, but is loaded with the
contents of a special flip-flop each time a JMP or
CALL instruction is executed. This special flip-flop is
set by executing an SEL PMB1 instruction and reset
by SEL PMB0. Therefore, the SEL PMB instruction
may be executed at any time prior to the actual bank
switch which occurs during the next branch instruction encountered. Since all twelve bits of the program counter, including bit 11, are stored in the
stack, when a Call is executed, the user may jump to
subroutines across the 2K boundary and the proper
PC will be restored upon return. However, the bank
switch flip-flop will not be altered on return.
290414– 30
Figure 5. Program Counter
INTERRUPT ROUTINES
Interrupts always vector the program counter to location 3 or 7 in the first 2K bank, and bit 11 of the
program counter is held at ‘‘0’’ during the interrupt
service routine. The end of the service routine is signaled by the execution of an RETR instruction. Interrupt service routines should therefore be contained
entirely in the lower 2K words of program memory.
The execution of a SEL PMB0 or SEL PMB1 instruction within an interrupt routine is not recommended
since it will not alter PC11 while in the routine, but
will change the internal flip-flop.
Hardware A20 Gate Support
This feature has been provided to enhance the performance of the UPI-C42 when being used in a keyboard controller application. The UPI-C42 design
has included on chip logic to support a hardware
GATEA20 feature which eliminates the need to provide firmware to process A20 command sequences,
6
UPI-C42/UPI-L42
thereby providing additional user programmable
memory space. This feature is enabled by the
A20EN instruction and remains enabled until the device is reset. It is important to note that the execution of the A20EN instruction redefines Port 2, bit 1
as a pure output pin with read only characteristics.
The state of this pin can be modified only through a
valid ‘‘D1’’ command sequence (see Table 1). Once
enabled, the A20 logic will process a ‘‘D1’’ command sequence (write to output port) by setting/resetting the A20 bit on port 2, bit 1 (P2.1) without
requiring service from the internal CPU. The host
can directly control the status of the A20 bit. At no
time during this host interface transaction will the
IBF flag in the status register be activated. Table 1
gives several possible GATEA20 command/data sequences and UPI-C42 responses.
Table 1. D1 Command Sequences
A0 R/W DB Pins IBF A20Comments
1WD1h0 n
0WDFh01Only DB1 Is Processed
1WFFH
1WD1h0n Clear A20 Sequence
0WDDh00
1WFFh0n
1WD1h0n Double Trigger Set
1WD1h0n Sequence
0WDFh01
1WFFh0n
1WD1h0n Invalid Sequence
1WXXh
0WDDh1nof A20 Bit
(2)
(3)
(1)
Set A20 Sequence
0n
1nNo Change in State
SUSPEND
The execution of the suspend instruction (82h or
E2h) causes the UPI-C42 to enter the suspend
mode. In this mode of operation the oscillator is not
running and the internal CPU operation is stopped.
The UPI-C42 consumes
mode. This mode can only be exited by RESET.
CPU operation will begin from PC
s
40 mA in the suspend
e
000h when the
UPI-C42 exits from the suspend power down mode.
Suspend Mode Summary
Oscillator Not Running
#
CPU Operation Stopped
#
Ports Tristated with Weak (E2–10 mA) Pull-Up
#
Micropower Mode (I
#
This mode is exited by RESET
#
CC
s
40 mA)
NOTES:
1. Indicates that P2.1 remains at the previous logic level.
2. Only FFh commands in a valid A20 sequence have no
effect on IBF. An FFh issued at any other time will activate
IBF.
3. Any command except D1.
The above sequences assume that the GATEA20
logic has been enabled via the A20EN instruction.
As noted, only the value on DB 1 (data bus, bit 1) is
processed. This bit will be directly passed through to
P2.1 (port 2, bit 1).
7
UPI-C42/UPI-L42
Table 2 covers all suspend mode pin states. In addition to the suspend power down mode, the UPI-C42
will also support the NMOS power down mode as
outlined in Chapter 4 of the UPI-42AH users manual.
Table 2. Suspend Mode Pin States
PinsSuspend
Ports 1 and 2
OutputsTristate
InputsWeak Pull-Up
Disabled
(1)
DBB
OutputsNormal
InputsNormal
System ControlDisabled
Ý
(RD
,WRÝ,
Ý
, A0)
CS
Ý
Reset
Enabled
Crystal Osc.Disabled
(XTAL1, XTAL2)
Test 0, Test 1Disabled
ProgHigh
SyncHigh
EADisabled,
No Pull-Up
Ý
SS
Disabled,
Weak Pull-Up
I
CC
NOTES:
1. DBB outputs are Tristate unless CS
tive. DBB inputs are disabled unless CS
active.
2. A ‘‘disabled’’ input will not cause current to be drawn
regardless of input level (within the supply range).
3. Weak pull-ups have current capability of typically 5 mA.
k
40 mA
Ý
and RDÝare ac-
Ý
and WRÝare
NEW UPI-C42 INSTRUCTIONS
The UPI-C42 will support several new instructions to
allow for the use of new C42 features. These instructions are not necessary to the user who does
not wish to take advantage of any new C42 functionality. The C42 will be completely compatible with all
current NMOS code/applications. In order to use
new features, however, some code modifications will
be necessary. All new instructions can easily be inserted into existing code by use of the ASM-48 macro facility as shown in the following example:
Macname MACRO
DB 63H
ENDM
New Instructions
The following is a list of additions to the UPI-42 instruction set. These instructions apply only to the
UPI-C42. These instructions must be added to existing code in order to use any new functionality.
SEL PMB0 Select Program Memory Bank 0
OPCODE 0110 0011 (63h)
PC Bit 11 is set to zero on next JMP or CALL instruction. All references to program memory fall within
the range of 0– 2047 (0 – 7FFh).
SEL PMB1 Select Program Memory Bank 1
OPCODE 0111 0011 (73h)
PC Bit 11 is set to one on next JMP or CALL instruction. All references to program memory fall within
the range of 2048– 4095 (800h – FFFh).
ENA20 Enables Auto A20 hardware
OPCODE 0011 0011 (33h)
Enables on chip logic to support Hardware A20 Gate
feature. Will remain enabled until device is reset.
8
UPI-C42/UPI-L42
This circuitry gives the host direct control of port 2
bit 1 (P2.1) without intervention by the internal CPU.
When this opcode is executed, P2.1 becomes a dedicated output pin. The status of this pin is read-able
but can only be altered through a valid ‘‘D1’’ command sequence (see Table 1).
SUSPEND Invoke Suspend Power Down Mode
OPCODE 1000 0010 (82h) or 1110 0010
(E2h)
Enables device to enter micro power mode. In this
mode the external oscillator is off, CPU operation is
stopped, and the Port pins are tristated. This mode
can only be exited via a RESET signal.
PROGRAMMING AND VERIFYING THE
UPI-C42
The UPI-C42 programming will differ from the NMOS
device in three ways. First, the C42 will have a 4K
user programmable array. The UPI-C42 will also be
programmed using the Intel Quick-Pulse Programming Algorithm. Finally, port 2 bit three (P2.3) will be
used during program as the extra address pin required to program the upper 2K bank of additional
memory. None of these differences have any effect
on the full CHMOS to NMOS device compatibility.
The extra memory is fully transparent to the user
who does not need, or want, to use the extra memory space of the UPI-C42.
In brief, the programming process consists of: activating the program mode, applying an address,
latching the address, applying data, and applying a
programming pulse. Each word is programmed completely before moving on to the next and is followed
by a verification step. The following is a list of the
pins used for programming and a description of their
functions:
PinFunction
XTAL 2Clock Input
ResetInitialization and Address Latching
Test 0Selection of Program or Verify Mode
EAActivation of Program/Verify Signature
Row/Security Bit Modes
BUSAddress and Data Input
Data Output During Verify
P
20–23
V
DD
Address Input
Programming Power Supply
PROGProgram Pulse Input
WARNING
An attempt to program a missocketed UPI-C42 will result in
severe damage to the part. An indication of a properly
socketed part is the appearance of the SYNC clock output.
The lack of this clock may be used to disable the programmer.
The Program/Verify sequence is:
1. Insert 87C42 in programming socket
e
2. CS
5V, V
e
0V, TEST 0e5V, clock applied or inter-
A
0
nal oscillator operating, BUS floating, PROG
CC
e
5V, V
e
5V, RESETe0V,
DD
5V.
3. TEST 0e0V (select program mode)
4. EAe12.75V (active program mode)
e
5. V
6. V
7. Address applied to BUS and P
6.25V (programming supply)
CC
e
12.75V (programming power)
DD
20–23
8. RESETe5V (latch address)
9. Data applied to BUS
10. PROGe5V followed by one 100 ms pulse to
0V
11. TEST 0
e
5V (verify mode)
12. Read and verify data on BUS
13. TEST 0e0V
14. RESETe0V and repeat from step 6
15. Programmer should be at conditions of step 1
when the 87C42 is removed from socket
e
Please follow the Quick-Pulse Programming flow
chart for proper programming procedure shown in
Figure 6.
9
UPI-C42/UPI-L42
flow chart of the Quick-Pulse Programming Algorithm is shown in Figure 6.
The entire sequence of program pulses and byte
verifications is performed at V
e
12.75V. When programming has been com-
V
DD
pleted, all bytes should be compared to the original
data with V
CC
e
e
V
5V.
DD
CC
e
6.25V and
A verify should be performed on the programmed
bits to ensure that they have been correctly programmed. The verify is performed with T0e5V,
e
V
5V, EAe12.75V, SS
DD
e
0V, and CS
A0
e
Ý
5V.
e
Ý
5V, PROGe5V,
In addition to the Quick-Pulse Programming Algorithm, the UPI-C42 OPT is also compatible with Intel’s Inteligent Programming Algorithm which is used
to program the NMOS UPI-42AH OTP devices.
The entire sequence of program pulses and byte
verifications is performed at V
e
V
cycle has been completed, all bytes should be com-
12.75V. When the inteligent Programming
DD
pared to the original data with V
5V.
CC
CC
e
6.25V and
e
5.0, V
DD
e
Verify
A verify should be performed on the programmed
bits to determine that they have been correctly programmed. The verify is performed with T0
e
5V, EAe12.75V, SSe5V, PROGe5V,
V
DD
e
A0
0V, and CSe5V.
e
5V,
290414– 14
Figure 6. Quick-Pulse Programming Algorithm
Quick-Pulse Programming Algorithm
As previously stated, the UPI-C42 will be programmed using the Quick-Pulse Programming Algorithm, developed by Intel to substantially reduce the
thorughput time in production programming.
The Quick-Pulse Programming Algorithm uses initial
pulses of 100 ms followed by a byte verification to
determine when the address byte has been successfully programmed. Up to 25 100 ms pulses per
byte are provided before a failure is recognized. A
10
SECURITY BIT
The security bit is a single EPROM cell outside the
EPROM array. The user can program this bit with the
appropriate access code and the normal programming procedure, to inhibit any external access to the
EPROM contents. Thus the user’s resident program
is protected. There is no direct external access to
this bit. However, the security byte in the signature
row has the same address and can be used to
check indirectly whether the security bit has been
programmed or not. The security bit has no effect on
the signature mode, so the security byte can always
be examined.
SECURITY BIT PROGRAMMING/
VERIFICATION
Programming
a. Read the security byte of the signature mode.
Make sure it is 00H.
UPI-C42/UPI-L42
b. Apply access code to appropriate inputs to put
the device into security mode.
c. Apply high voltage to EA and V
d. Follow the programming procedure as per the
Quick-Pulse Programming Algorithm with known
data on the databus. Not only the security bit, but
also the security byte of the signature row is programmed.
e. Verify that the security byte of the signature
mode contains the same data as appeared on
the data bus. (If DB0 – DB7
byte will contain FFH.)
f. Read two consecutive known bytes from the
EPROM array and verify that the wrong data are
retrieved in at least one verification. If the
EPROM can still be read, the security bit may
have not been fully programmed though the security byte in the signature mode has.
pins.
DD
e
high, the security
Verification
Since the security bit address overlaps the address
of the security byte of the signature mode, it can be
used to check indirectly whether the security bit has
been programmed or not. Therefore, the security bit
verification is a mere read operation of the security
byte of the signature row (0FFH
grammed; 00H
that during the security bit programming, the reading
of the security byte does not necessarily indicate
that the security bit has been successfully programmed. Thus, it is recommended that two consecutive known bytes in the EPROM array be read and
the wrong data should be read at least once, because it is highly improbable that random data coincides with the correct ones twice.
e
security bit unprogrammed). Note
e
security bit pro-
SIGNATURE MODE
The UPI-C42 has an additional 64 bytes of EPROM
available for Intel and user signatures and miscellaneous purposes. The 64 bytes are partitioned as follows:
A. Test code/checksumÐThis can accommodate
up to 25 bytes of code for testing the internal
nodes that are not testable by executing from the
external memory. The test code/checksum is
present on ROMs, and OTPs.
B. Intel signatureÐThis allows the programmer to
read from the UPI-41AH/42AH/C42 the manufacturer of the device and the exact product
name. It facilitates automatic device identification
and will be present in the ROM and OTP versions. Location 10H contains the manufacturer
code. For Intel, it is 89H. Location 11H contains
the device code.
The code is 43H and 42H for the 8042AH/80C42
and OTP 8742AH/87C42, respectively. The
code is 44H for any device with the security bit
set by Intel.
C. User signatureÐThe user signature memory is
implemented in the EPROM and consists of 2
bytes for the customer to program his own signature code (for identification purposes and quick
sorting of previously programmed materials).
D. Test signatureÐThis memory is used to store
testing information such as: test data, bin number, etc. (for use in quality and manufacturing
control).
E. Security byteÐThis byte is used to check
whether the security bit has been programmed
(see the security bit section).
F. UPI-C42 Intel SignatureÐApplies only to
CHMOS device. Location 20H contains the manufacturer code and location 21H contains the device code. The Intel UPI-C42 manufacturer’s
code is 99H. The device ID’s are 82H for the
OTP version and 83H for the ROM version. The
device ID’s are the same for the UPI-L42.
The signature mode can be accessed by setting
e
0, P11 – P17e1, and then following the pro-
P10
gramming and/or verification procedures. The location of the various address partitions are as shown in
Table 3.
SYNC MODE
The Sync Mode is provided to ease the design of
multiple controller circuits by allowing the designer
to force the device into known phase and state time.
The Sync Mode may also be utilized by automatic
test equipment (ATE) for quick, easy, and efficient
synchronizing between the tester and the DUT (device under test).
Sync Mode is enabled when SS
voltage level of
tion, T0 is raised to 5 volts at least four clock cycles
after SS
. T0 must be high for at least four X2 clock
cycles to fully reset the prescaler and time state
generators. T0 may then be brought down during
low state of X2. Two clock cycles later, with the rising edge of X2, the device enters into Time State 1,
Phase 1. SS
later after T0. RESET is allowed to go high 5 tCY (75
clocks) later for normal execution of code.
a
12 volts. To begin synchroniza-
is then brought down to 5 volts 4 clocks
pin is raised to high
11
UPI-C42/UPI-L42
Table 3. Signature Mode Table
Address
DeviceNo. of
TypeBytes
Test Code/Checksum00FHROM/OTP25
16H1EH
Intel Signature10H11HROM/OTP2
User Signature12H13HOTP2
Test Signature14H15HROM/OTP2
Security Byte1FHor3FHROM/OTP2
UPI-C42 Intel Signature20H21HROM/OTP2
User Defined UPI-C42 OTP EPROM Space22H3EHROM/OTP30
ACCESS CODE
The following table summarizes the access codes required to invoke the Sync Mode, Signature Mode,
and the Security Bit, respectively. Also, the programming and verification modes are included for
comparison.
ModesPort 2Port 1
T0 RST SS EA PROG VDDVCC0123456701230 1 234567
Programming001 HV1V
Mode
Verification001 HV1VCCV
Mode
Sync ModeSTB 0 HV 0XVCCVCCXXXXXXXXXXX XXXXXXXX
Signature Prog001 HV1V
Mode
Security Prog 001 HV1V
Bit/Byte
NOTE:
e
1. a
0
High
Verify 001 HV1VCCV
Verify 001 HV1VCCV
0or1;a
1
Control SignalsData Bus
DDHVCC
011 HV STB V
111HV1V
011 HV STB V
111HV1VCCV
011 HV STB V
111HV1VCCV
e
0or1.a0mustea1.
DDHVCC
CC
CCVCC
DDHVCC
DDHVCC
CC
CC
DDHVCC
DDHVCC
CC
CC
AddressAddra0a1XXXXXX
Data InAddr
AddressAddra0a1XXXXXX
Data OutAddr
Addr. (see Sig Mode Table)0 0 00 1 1 1 1 X X 1
Data In0 0 0
Addr. (see Sig Mode Table)0 0 0
Data Out0 0 0
Address0 0 0
Data In0 0 0
Address0 0 0
Data Out0 0 0
Access Code
12
SYNC MODE TIMING DIAGRAMS
Minimum Specifications
SYNC Operation Time, t
NOTE:
The rising and falling edges of T0 should occur during low state of XTAL 2 clock.
NOTICE: This is a production data sheet. The specifications are subject to change without notice.
*
WARNING: Stressing the device beyond the ‘‘Absolute
Maximum Ratings’’ may cause permanent damage.
These are stress ratings only. Operation beyond the
‘‘Operating Conditions’’ is not recommended and extended exposure beyond the ‘‘Operating Conditions’’
may affect device reliability.
e
ea
CC
V
DD
5Vg10%;a3.3Vg10% UPI-L42
UnitsNotes
a
0.8VAll Pins
2.0 V
2.0 V
10
10
40
a
0.3V
CC
a
0.3V
CC
I
I
I
g
10mAV
g
10mAV
b
175mA Port Pins
Max V
b
40mAV
5.0mA
V
e
2.0 mA UPI-C42
OL
e
1.3 mA UPI-L42
OL
e
1.6 mA UPI-C42
OL
e
1 mA UPI-L42
OL
e
1.0 mA UPI-C42
OL
e
0.7 mA UPI-L42
OL
eb
OH
eb
OH
eb
OH
eb
OH
s
V
SS
a
0.45sV
SS
IN
IN
s
V
IN
IL
e
3.0V
CC
e
5.0V
IH
400 mA UPI-C42
260 mA UPI-L42
50 mA UPI-C42
25 mA UPI-L42
s
IN
e
2.4V
e
0.45V
V
CC
s
V
OUT
CC
15
UPI-C42/UPI-L42
DC CHARACTERISTICS
e
T
0§Ctoa70§C, V
A
SymbolParameter
a
I
I
CC
Total Supply Current:
DD
Active Mode
Suspend Mode4026mAOsc. Off
IDDStandby Power Down53.5mANMOS Compatible
Supply Current
I
IH
Input Leakage Current100100mAV
(P10–P17,P20–P27)
C
IN
C
IO
NOTE:
1. Sampled, not 100% tested.
Input Capacitance1010pFT
I/O Capacitance2020pFT
e
ea
V
CC
DD
@
12.5 MHz3020mATypical 14 mA UPI-C42,
5Vg10%;a3.3Vg10% UPI-L42 (Continued)
UPI-C42UPI-L42
MinMaxMinMax
UnitsNotes
9 mA UPI-L42
Power Down Mode
e
IN
e
A
e
A
(1, 4)
V
CC
25§C
25§C
(1)
(1)
DC CHARACTERISTICSÐPROGRAMMING (UPI-C42 AND UPI-L42)
e
T
25§Cg5§C, V
A
SymbolParameterMinMaxUnits
V
DDH
V
DDL
V
PH
V
PL
V
EAH
V
EAL
I
DD
I
EA
NOTES:
1. Voltages over 13V applied to pin V
must be applied to EA before V
2. V
EAH
must be applied simultaneously or before VDDand must be removed simultaneously or after VDD.
3. V
CC
4. Sampled, not 100% tested.
e
6.25Vg0.25V, V
CC
e
12.75Vg0.25V
DD
VDDProgram Voltage High Level12.513V
VDDVoltage Low Level4.755.25V
PROG Program Voltage High Level2.05.5V
PROG Voltage Low Level
b
0.50.8V
Input High Voltage for EA12.013.0V
EA Voltage Low Level
b
0.55.25V
VDDHigh Voltage Supply Current50.0mA
EA High Voltage Supply Current1.0mA
will permanently damage the device.
DD
and removed after V
DDH
DDL
.
(1)
(2)
(4)
16
AC CHARACTERISTICS
e
T
0§Ctoa70§C, V
A
NOTE:
All AC Characteristics apply to both the UPI-C42 and UPI-L42
DBB READ
SymbolParameterMinMaxUnits
t
AR
t
RA
t
RR
t
AD
t
RD
t
DF
DBB WRITE
SymbolParameterMinMaxUnits
t
AW
t
WA
t
WW
t
DW
t
WD
e
0V, V
SS
CS, A0Setup to RD
CS, A0Hold After RD
RD Pulse Width160ns
CS, A0to Data Out Delay130ns
RDvto Data Out Delay0130ns
RDuto Data Float Delay85ns
CS, A0Setup to WR
CS, A0Hold After WR
WR Pulse Width160ns
Data Setup to WR
Data Hold After WR
CC
e
ea
V
DD
5Vg10%;a3.3Vg10% for the UPI-L42
v
u
v
u
u
u
0ns
0ns
0ns
0ns
130ns
0ns
UPI-C42/UPI-L42
17
UPI-C42/UPI-L42
AC CHARACTERISTICS
e
T
0§Ctoa70§C, V
A
CLOCK
SymbolParameterMinMaxUnits
tCYUPI-C42/UPI-L42Cycle Time1.29.20ms
t
UPI-C42/UPI-L42Clock Period80613ns
CYC
t
PWH
t
PWL
t
R
t
F
NOTE:
e
15/f(XTAL)
1. t
CY
SS
e
0V, V
e
ea
CC
V
DD
5Vg10%;a3.3Vg10% for the UPI-L42 (Continued)
Clock High Time30ns
Clock Low Time30ns
Clock Rise Time10ns
Clock Fall Time10ns
AC CHARACTERISTICS DMA
SymbolParameterMinMaxUnits
NOTE:
1. C
L
e
t
ACC
t
CAC
t
ACD
t
CRQ
150 pF.
DACK to WR or RD0ns
RD or WR to DACK0ns
DACK to Data Valid0130ns
RD or WR to DRQ Cleared110ns
(1)
(1)
AC CHARACTERISTICS PORT 2
SymbolParameterf(tCY)
t
CP
t
PC
t
PR
t
PF
t
DP
t
PD
t
PP
NOTES:
1. C
L
2. C
L
3. t
CY
18
e
e
e
Port Control Setup Before Falling Edge of PROG1/15 t
Port Control Hold After Falling Edge of PROG1/10 t
PROG to Time P2 Input Must Be Valid8/15 t
Input Data Hold Time0150ns
Output Data Setup Time2/10 t
Output Data Hold Time1/10 t
PROG Pulse Width6/10 t
80 pF.
20 pF.
1.25 ms.
CY
CY
CY
(3)
b
CY
b
CY
b
CY
MinMaxUnits
2855ns
125ns
16650ns
250ns
8045ns
750ns
(1)
(2)
(1)
(2)
(1)
(2)
UPI-C42/UPI-L42
AC CHARACTERISTICSÐPROGRAMMING (UPI-C42 AND UPI-L42)
e
T
25§Cg5§C, V
A
(87C42/87L42 ONLY)
SymbolParameterMinMaxUnits
t
AW
t
WA
t
DW
t
WD
t
PW
t
TW
t
WT
t
DO
t
WW
tr,t
f
t
CY
t
RE
t
OPW
t
DE
NOTES:
1. This variation is a function of the iteration counter value, X.
2. If TEST 0 is high, t
e
6.25Vg0.25V, V
CC
Address Setup Time to RESET
Address Hold Time after RESET
Data in Setup Time to PROG
Data in Hold Time after PROG
DDL
ea
5Vg0.25V, V
u
v
u
e
12.75Vg0.25V
DDH
4t
CY
u
4t
CY
4t
CY
4t
CY
Initial Program Pulse Width95105ms
Test 0 Setup Time for Program Mode4t
Test 0 Hold Time after Program Mode4t
Test 0 to Data Out Delay4t
RESET Pulse Width to Latch Address4t
CY
CY
CY
CY
PROG Rise and Fall Times0.5100ms
CPU Operation Cycle Time2.53.75ms
RESET Setup Time before EA
u
4t
CY
Overprogram Pulse Width2.8578.75ms
EA High to VDDHigh1t
can be triggered by RESETu.
DO
CY
(1)
AC TESTING INPUT/OUTPUT WAVEFORM
INPUT/OUTPUT
290414– 16
AC TESTING LOAD CIRCUIT
290414– 17
19
UPI-C42/UPI-L42
DRIVING FROM AN EXTERNAL SOURCE
NOTE:
See XTAL1 Configuration Table.
LC OSCILLATOR MODE
LC NOMINAL
45 H 20 pF 5.2 MHz
120 H 20 pF 3.2 MHz
Each C Should be Approximately 20 pF, including Stray Capacitance.
290414– 18
1
e
f
2q0LC
Ê
Ca3Cpp
e
C
Ê
2
Cppj5–10 pF
Pin-to-Pin Capacitance
290414– 20
Rise and Fall Times Should Not
Exceed 10 ns. Resistors to V
are Needed to Ensure V
if TTL Circuitry is Used.
Crystal Series Resistance Should
be Less Than 30X at 12.5 MHz.
290414– 19
290414– 21
a
STRAY) 8 pF
IH
XTAL1 Configuration Table
XTAL1 Connection
1) to Ground
2) 10 KX Resistor
to Ground
3) Not Connected
Not recommended for CHMOSRecommended configuration forLow power configuration
designs. Causes approximatelydesigns which will use bothrecommended for CHMOS only
16 mA of additional current flowNMOS and CHMOS parts. Thisdesigns to provide lowest
through the XTAL1 pin on UPI-configuration limits the additionalpossible power consumption.
C42 and approximately 11 mA ofcurrent through the XTAL1 pin toThis configuration will not work
additional current through XTAL1approximately 1 mA, whilewith the NMOS device.
on the UPI-L42.maintaining compatibility with the
NMOS device.
CC
e
3.5V
20
WAVEFORMS
READ OPERATIONÐDATA BUS BUFFER REGISTER
WRITE OPERATIONÐDATA BUS BUFFER REGISTER
UPI-C42/UPI-L42
290414– 22
CLOCK TIMING
290414– 23
290414– 24
21
UPI-C42/UPI-L42
WAVEFORMS (Continued)
COMBINATION PROGRAM/VERIFY MODE
NOTES:
must be held low (0V) during program/verify modes.
1. A
0
2. For V
IH,VIH1,VIL,VIL1,VDDH
3. When programming the 87C42, a 0.1 mF capacitor is required across V
transients which can damage the device.
, and V
, please consult the D.C. Characteristics Table.
DDL
290414– 25
and ground to suppress spurious voltage
DD
VERIFY MODE
NOTES:
1. PROG must float if EA is low.
2. PROG must float or
3. P
4. P
5. A
e
10–P17
e
24–P27
must be held low during programming/verify modes.
0
e
5V or must float.
5V or must float.
5V when EA is high.
22
290414– 26
WAVEFORMS (Continued)
DMA
PORT 2
UPI-C42/UPI-L42
290414– 27
290414– 28
PORT TIMING DURING EXTERNAL ACCESS (EA)
On the Rising Edge of SYNC and EA is Enabled, Port Data is Valid and can be Strobed. On the Trailing Edge of Sync
the Program Counter Contents are Available.
290414– 29
23
UPI-C42/UPI-L42
Table 4. UPI Instruction Set
MnemonicDescriptionBytes Cycles
ACCUMULATOR
ADD A, RrAdd register to A11
@
RrAdd data memory11
ADD A,
Ý
dataAdd immediate to A22
ADD A,
ADDC A, RrAdd register to A11
@
ADDC A,
Ý
ADDC A,
ANL A, RrAND register to A11
@
RrAND data memory11
ANL, A
ANL A,ÝdataAND immediate to A22
ORL A, RrOR register to A11
@
ORL, A,
Ý
dataOR immediate to A22
ORL A,
XRL A, RrExclusive OR regis-11
@
RrExclusive OR data11
XRL A,
Ý
dataExclusive OR imme-22
XRL A,
INC AIncrement A11
DEC ADecrement A11
CLR AClear A11
CPL AComplement A11
DA ADecimal Adjust A11
SWAP ASwap nibbles of A11
RL ARotate A left11
RLC ARotate A left through11
RR ARotate A right11
RRC ARotate A right11
INPUT/OUTPUT
IN A, PpInput port to A12
OUTL Pp, AOutput A to port12
Ý
ANL Pp,
Ý
ORL Pp,
IN A, DBBInput DBB to A,11
OUT DBB, AOutput A to DBB,11
MOV STS, AA
MOVD A, PpInput Expander12
MOVD Pp, AOutput A to12
ANLD Pp, AAND A to Expander12
ORLD Pp, AOR A to Expander12
24
to A
with carry
RrAdd data memory11
to A with carry
data Add immediate22
to A with carry
to A
RrOR data memory11
to A
ter to A
memory to A
diate to A
carry
through carry
data AND immediate to22
port
data OR immediate to22
port
clear IBF
set OBF
to Bits 4– 7 of11
4–A7
Status
port to A
Expander port
port
port
MnemonicDescriptionBytes Cycles
DATA MOVES
MOV A, RrMove register to A11
@
MOV A,
RrMove data memory11
to A
Ý
MOV A,
dataMove immediate to A22
MOV Rr, AMove A to register11
MOV@Rr, AMove A to data11
memory
Ý
MOV Rr,
MOV
Ý
data Move immediate to22
@
Rr,Move immediate to22
register
datadata memory
MOV A, PSWMove PSW to A11
MOV PSW, AMove A to PSW11
XCH A, RrExchange A and11
XCH A,
XCHD A,
MOVP A,
@
RrExchange A and11
@
@
register
data memory
RrExchange digit of A11
and register
AMove to A from12
current page
MOVP3, A,@A Move to A from12
page 3
TIMER/COUNTER
MOV A, TRead Timer/Counter11
MOV T, ALoad Timer/Counter11
STRT TStart Timer11
STRT CNTStart Counter11
STOP TCNTStop Timer/Counter11
EN TCNTIEnable Timer/11
Counter Interrupt
DIS TCNTIDisable Timer/11
Counter Interrupt
CONTROL
*EN A20Enable A20 Logic11
EN DMAEnable DMA Hand-11
shake Lines
EN IEnable IBF Interrupt11
DIS IDiable IBF Inter-11
rupt
EN FLAGSEnable Master11
Interrupts
*SEL PMB0Select Program11
memory bank 0
*SEL PMB1Select Program11
memory bank 1
SEL RB0Select register11
bank 0
SEL RB1Select register11
bank 1
* UPI-C42/UPI-L42 Only.
Table 4. UPI Instruction Set (Continued)
MnemonicDescriptionBytes Cycles
CONTROL (Continued)
*SUSPEND Invoke Suspend Power-12
down mode
NOPNo Operation11
REGISTERS
INC RrIncrement register11
INC@RrIncrement data11
memory
DEC RrDecrement register11
SUBROUTINE
CALL addrJump to subroutine22
RETReturn12
RETRReturn and restore12
status
FLAGS
CLR CClear Carry11
CPL CComplement Carry11
CLR F0Clear Flag 011
CPL F0Complement Flag 011
CLR F1Clear F1 Flag11
CPL F1Complement F1 Flag11
*UPI-C42/UPI-L42 Only.
REVISION SUMMARY
The following has been changed since Revision
-003:
1. Delete all references to standby power down
mode.
UPI-C42/UPI-L42
MnemonicDescriptionBytes Cycles
BRANCH
JMP addrJump unconditional22
@
AJump indirect12
JMPP
DJNZ Rr, addr Decrement register22
JC addrJump on Carry
JNC addrJump on Carrye02 2
JZ addrJump on A Zero22
JNZ addrJump on A not Zero22
JT0 addrJump on T0
JNT0 addrJump on T0
JT1 addrJump on T1
JNT1 addrJump on T1
JF0 addrJump on F0 Flag
JF1 addrJump on F1 Flage12 2
JTF addrJump on Timer Flag22
JNIBF addrJump on IBF Flag22
JOBF addrJump on OBF Flag22
JBb addrJump on Accumula-22
and jump
e
1, Clear Flag
e
0
e
1
for Bit
e
12 2
e
122
e
022
e
122
e
022
e
12 2
The following has been changed since Revision
-002:
1. Added information on keyboard controller product family.
2. Added I
specification for the UPI-L42.
HI
The following has been changed since Revision
-001:
1. Added UPI-L42 references and specification.
25
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.