COM20020 3.3V
COM20020 3.3V ULANC
Universal Local Area Network Controller
with 2K x 8 On-Board RAM
FEATURES
!"
New Features
-
Data Rates up to 5 Mbps
-
Programmable Reconfiguration Times
!"
24 Pin DIP, 28 Pin PLCC Package
!"
Ideal for Industrial/Factory/Building
Automation and Transportation
Applications
!"
Deterministic, (ANSI 878.1), Token Passing
ARCNET Protocol
!"
Minimal Microcontroller and Media
Interface Logic Required
!"
Flexible Interface For Use With All
Microcontrollers or Microprocessors
!"
Automatically Detects Type of
Microcontroller Interface
!"
2Kx8 On-Chip Dual Port RAM
!"
Command Chaining for Packet Queuing
!"
Sequential Access to Internal RAM
!"
Software Programmable Node ID
!"
Eight, 256 Byte Pages Allow Four Pages TX
and RX Plus Scratch-Pad Memory
!"
Next ID Readable
!"
Internal Clock Scaler and Clock Multiplier for
Adjusting Network Speed
!"
Operating Temperature Range of -40
o
C to
+85
o
C
!"
Self-Reconfiguration Protocol
!"
Supports up to 255 Nodes
!"
Supports Various Network Topologies (Star,
Tree, Bus...)
!"
CMOS, Single +3.3V Supply
!"
Duplicate Node ID Detection
!"
Powerful Diagnostics
!"
Receive All Packets Mode
!"
Flexible Media Interface:
-
Traditional Hybrid Interface For Long
Distances up to Four Miles at 2.5Mbps.
-
RS485 Differential Driver Interface For
Low Cost, Low Power, High Reliability
ORDERING INFORMATION
Order Numbers:
COM20020ILJP3V
28 PLCC Package
COM20020IP3V
24 DIP Package
2
GENERAL DESCRIPTION
SMSC's COM20020 is a member of the family of
Embedded ARCNET Controllers from Standard
Microsystems Corporation. The device is a
general purpose communications controller for
networking microcontrollers and intelligent
peripherals in industrial, automotive, and
embedded control environments using an
ARCNET
protocol engine. The small 24 pin
package, flexible microcontroller and media
interfaces, eight- page message support, and
extended temperature range of the COM20020
make it the only true network controller optimized
for use in industrial, embedded, and automotive
applications. Using an ARCNET protocol engine
is the ideal solution for embedded control
applications because it provides a deterministic
token-passing protocol, a highly reliable and
proven networking scheme, and a data rate of up
to 5 Mbps when using the COM20020.
A token-passing protocol provides predictable
response times because each network event
occurs within a predetermined time interval, based
upon the number of nodes on the network. The
deterministic nature of ARCNET is essential in
real time applications. The integration of the 2Kx8
RAM buffer on-chip, the Command Chaining
feature, the 5 Mbps maximum data rate, and the
internal diagnostics make the COM20020 the
highest performance embedded communications
device available. With only one COM20020 and
one microcontroller, a complete communications
node may be implemented.
3
TABLE OF CONTENTS
FEATURES.............................................................................................................................................. 1
GENERAL DESCRIPTION ...................................................................................................................... 2
DESCRIPTION OF PIN FUNCTIONS...................................................................................................... 5
NETWORK PROTOCOL ..................................................................................................................... 8
DATA RATES...................................................................................................................................... 8
MICROCONTROLLER INTERFACE................................................................................................. 13
FUNCTIONAL DESCRIPTION .............................................................................................................. 23
COMMAND CHAINING ..................................................................................................................... 44
IMPROVED DIAGNOSTICS.............................................................................................................. 47
MAXIMUM GUARANTEED RATINGS* ............................................................................................. 49
DC ELECTRICAL CHARACTERISTICS ........................................................................................... 49
TIMING DIAGRAMS .............................................................................................................................. 52
For more details on the ARCNET protocol engine and traditional dipulse signaling schemes,
please refer to the ARCNET Local Area Network Standard, available from Standard Microsystems
Corporation or the ARCNET Designer's Handbook, available from Datapoint Corporation.
For more detailed information on cabling options including RS485, transformer-coupled RS-485
and Fiber Optic interfaces, please refer to the following technical note which is available from
Standard Microsystems Corporation: Technical Note 7-5 - Cabling Guidelines for the COM20020
ULANC.
4
PIN CONFIGURATION
24
23
22
21
20
19
18
17
16
15
14
13
1
2
3
4
5
6
7
8
9
10
11
12
A0/nMUX
A1
A2/ALE
AD0
AD1
AD2
D3
D4
D5
D6
D7
nRD/nDS
nWR/DIR
nCS
nINTR
nRESET IN
nTXEN
RXIN
nPULSE2
nPULSE1
XTAL2
XTAL1
VDD
26
27
28
1
2
3
4
18
17
16
15
14
13
12
25
24
23
22
21
20
19
5
6
7
8
9
10
11
n
C
nI
N
T
n
R
E
S
E
V
S
nT
X
E
R
XI
N
n
P
U
L
A
D
V
S
A
D
D
3
D
4
D
5
D
6
nPULSE
XTAL2
XTAL1
VDD
VSS
N/C
D7
nWR/DIR
nRD/nD
VDD
A2/ALE
AD0
A1
Packages: 24-Pin DIP or 28-Pin
Ordering
COM2002
VSS
A0/nMU
PACKAGE TYPE: P = Plastic, LJP =
TEMP RANGE:
I = Industrial: -40°C to
DEVICE TYPE: 20020 = Universal Local Area Network
(with 2K x 8
P
I
5
DESCRIPTION OF PIN FUNCTIONS
DIP PIN
NO.
PLCC PIN
NO.
NAME
SYMBOL
DESCRIPTION
MICROCONTROLLER
INTERFACE
1-3 1-3 Address
0-2
A0/nMUX,
A1,A2/ALE
Input. On a non-multiplexed mode, A0-A2
are address input bits. (A0 is the LSB) On a
multiplexed address/data bus, nMUX tied
Low, A1 is left open, and ALE is tied to the
Address Latch Enable signal. A1 is
connected to an internal pull-up resistor.
4-11 4-6,8-12
Data
0-7
AD0-AD2,
D3-D7
Input/Output. On a non-multiplexed bus,
these signals are used as the data lines for
the device. On a multiplexed address/data
bus, AD0-AD2 act as the address lines
(latched by ALE) and as the low data lines for
the device. D3-D7 are always used for data
only. These signals are connected to internal
pull-up resistors.
23 27 nRead/nData
Strobe
nRD/nDS
Input. On a 68XX-like bus, nDS is an active
low signal issued by the microcontroller as the
data strobe signal to strobe the data onto the
bus. On a 80XX-like bus, nRD is an active
low signal issued by the microcontroller to
indicate a read operation.
22 26 nWrite/
Direction
nWR/DIR
Input. On a 68XX-like bus, DIR is issued by
the microcontroller as the Read/nWrite signal
to determine the direction of data transfer. In
this case, a logic "1" selects a read operation,
while a logic "0" selects a write operation. In
this case, data is actually strobed by the nDS
signal. On an 80XX-like bus, nWR is an
active low signal issued by the microcontroller
to indicate a write operation. In this case, a
logic "0" on this pin, when the COM20020 is
accessed, enables data from the data bus to
be written to the device.
19
23
nReset in
nRESET
Input. This active low signal executes a
hardware reset.
20
24
nInterrupt
nINTR
Output. This active low signal is generated by
the COM20020 when an enabled interrupt
condition occurs.
21
25
nChip Select nCS
Input. This active low signal selects the
COM20020 for an access.
TRANSMISSION MEDIA INTERFACE
6
DIP PIN
NO.
PLCC PIN
NO.
NAME
SYMBOL
DESCRIPTION
16,15 19,18 nPulse
2,
nPulse 1
nPULSE2,
nPULSE1
Output (nPULSE1), Input/Output (nPULSE2).
In Normal Mode, these active low signals
carry the transmit data information, encoded
in pulse format, as DIPULSE waveform.
When the device is in Backplane Mode, the
nPULSE1 signal driver is programmable
(push/pull or open-drain), while the nPULSE2
signal provides a clock with frequency of
double the data rate. nPULSE1 is connected
to a weak internal pull-up resistor on the
open/drain driver in backplane mode.
17
20
Receive In
RXIN
Input. This signal carries the receive data
information from the line tranceiver.
18 21 nTransmit
nEnable
nTXEN
Output. This signal is used prior to the Power-
up to enable the line drivers for transmission.
The polarity of the signal is programmable
through the nPULSE2 pin.
nPULSE2 floating before Power-up: nTXEN
active low (Default option)
nPULSE2 grounded before Power-up:
nTXEN active high (This option is only
available in Backplane Mode)
13,14 16,17 Crystal
Oscillator
XTAL1,
XTAL2
An external crystal should be connected to
these pins. Oscillation frequency range is
from 10 to 20 MHz. If an external TTL clock is
used instead, it must be connected to XTAL1
with a 390
!
pull-up resistor, and XTAL2
should be left floating.
24 15,28
Power
Supply
V
DD
+3.3 Volt Power Supply pin.
12 7,14,22
Ground
V
SS
Ground pin.
7
FIGURE 1 - COM20020 OPERATION
Invitation
to Transmit to
this ID?
Y
N
Free Buffer
Enquiry to
this ID?
SOH?
Y
N
Y
N
RI?
Write SID
to Buffer
DID
=0?
DID
=ID?
Write Buffer
with Packet
CRC
OK?
LENGTH
OK?
DID
=0?
DID
=ID?
SEND ACK
N
Y
N
Y
N
Y
N
Broadcast
Enabled?
N
Y
N
No Activity
for 41
uS?
Y
N
Set NID=ID
Start Timer:
T=(255-ID)
Activity
On Line?
Y
N
T=0?
Set RI
RI?
Transmit
NAK
Transmit
ACK
Set NID=ID
Write ID to
RAM Buffer
Send
Reconfigure
Burst
Power On
Reconfigure
Timer has
Timed Out
Start
Reconfiguration
Timer (420 mS)*
TA?
Broadcast?
Transmit
Free Buffer
Enquiry
No
Activity
Pass the
Token
Set TA
Y
N
ACK?
NAK?
1
No
Activity
N
Y
Increment
NID
Send
Packet
Was Packet
Broadcast?
No
Activity
N
ACK?
Set TMA
Set TA
x 73 us
for 37.4
us?
for 37.4
us?
for 37.4
us?
Y
N
N
Y
Y
N
N
Y
N
N
N
N
1
Y
Y
Y
Y
Y
Y
Y
N
Y
Read Node ID
ID refers to the identification number of the ID assigned to this node.
NID refers to the next identification number that receives the token
after this ID passes it.
-
-
-
-
SID refers to the source identification.
DID refers to the destination identification.
SOH refers to the start of header character; preceeds all data packets.
-
Y
N
* Reconfig timer is programmable via setup2 register bits 1, 0.
Note - All time values are valid for 5 Mbps.
8
PROTOCOL DESCRIPTION
NETWORK PROTOCOL
Communication on the network is based on a
token passing protocol. Establishment of the
network configuration and management of the
network protocol are handled entirely by the
COM20020's internal microcoded sequencer. A
processor or intelligent peripheral transmits data
by simply loading a data packet and its destination
ID into the COM20020's internal RAM buffer, and
issuing a command to enable the transmitter.
When the COM20020 next receives the token, it
verifies that the receiving node is ready by first
transmitting a FREE BUFFER ENQUIRY
message. If the receiving node transmits an
ACKnowledge message, the data packet is
transmitted followed by a 16-bit CRC. If the
receiving node cannot accept the packet (typically
its receiver is inhibited), it transmits a Negative
AcKnowledge message and the transmitter
passes the token. Once it has been established
that the receiving node can accept the packet and
transmission is complete, the receiving node
verifies the packet. If the packet is received
successfully, the receiving node transmits an
ACKnowledge
message (or nothing if it is not received
successfully) allowing the transmitter to set the
appropriate status bits to indicate successful or
unsuccessful delivery of the packet. An interrupt
mask permits the COM20020 to generate an
interrupt to the processor when selected status
bits become true. Figure 1 is a flow chart
illustrating the internal operation of the
COM20020 connected to a 20 MHz crystal
oscillator.
DATA RATES
The COM20020 is capable of supporting data
rates from 156.25 Kbps to 5 Mbps. The following
protocol description assumes a 5 Mbps data rate.
To attain the faster data rates, the clock frequency
may be doubled by the internal clock multiplier
(see next section). For slower data rates, an
internal clock divider scales down the clock
frequency. Thus all timeout values are scaled as
shown in the following table:
Example: IDLE LINE Timeout @ 5 Mbps = 41
"
s.
IDLE LINE Timeout for 156.2 Kbps is 41
"
s * 32 =
1.3 ms
INTERNAL
CLOCK
FREQUENCY
CLOCK
PRESCALER
DATA RATE
TIMEOUT SCALING
FACTOR (MULTIPLY BY)
40 MHz
Div. by 8
5 Mbps
1
20 MHz
Div. by 8
Div. by 16
Div. by 32
Div. by 64
Div. by 128
2.5 Mbps
1.25 Mbps
625 Kbps
312.5 Kbps
156.25 Kbps
2
4
8
16
32
9
Selecting Clock Frequencies Above 2.5 Mbps
To realize a 5 Mbps network, an external 40 MHz
clock must be input. However, since 40 MHz is
near the frequency of FM radio band, it is not
practical for use for noise emission reasons.
Therefore, higher frequency clocks are
generated from the 20 MHz crystal as selected
through two bits in the Setup2 register,
CKUP[1,0] as shown below. The selected clock
is supplied to the ARCNET controller.
CKUP1
CKUP0
CLOCK FREQUENCY (DATA RATE)
0
0
20 MHz (Up to 2.5Mbps) Default (Bypass)
0
1
40 MHz (Up to 5Mbps)
1 0
Reserved
1 1
Reserved
This clock multiplier is powered-down (bypassed)
on default. After changing the CKUP1 and
CKUP0 bits, the ARCNET core operation is
stopped and the internal PLL in the clock
generator is awakened and it starts to generate
the 40 MHz. The lock out time of the internal PLL
is 8uSec typically. After more than 8
"
sec (this
wait time is defined as 1 msec in this data sheet),
it is necessary to write command data '18H' to
the command register to re-start the ARCNET
core operation. This clock generator is called
“clock multiplier”.
Changing the CKUP1 and CKUP0 bits must be
one time or less after releasing hardware reset.
The EF bit in the SETUP2 register must be set
when the data rate is over 5 Mbps.
NETWORK RECONFIGURATION
A significant advantage of the COM20020 is its
ability to adapt to changes on the network.
Whenever a new node is activated or deactivated,
a NETWORK RECONFIGURATION is performed.
When a new COM20020 is turned on (creating a
new active node on the network), or if the
COM20020 has not received an INVITATION TO
TRANSMIT for 420mS, or if a software reset
occurs, the COM20020 causes a NETWORK
RECONFIGURATION by sending a
RECONFIGURE BURST consisting of eight
marks and one space repeated 765 times. The
purpose of this burst is to terminate all activity on
the network. Since this burst is longer than any
other type of transmission, the burst will interfere
with the next INVITATION TO
TRANSMIT, destroy the token and keep any other
node from assuming control of the line.
When any COM20020 senses an idle line for
greater than 41
"
S, which occurs only when the
token Is lost, each COM20020 starts an internal
timeout equal to 73
"
s times the quantity 255
minus its own ID. The COM20020 starts network
reconfiguration by sending an invitation to transmit
first to itself and then to all other nodes by
decrementing the destination Node ID. If the
timeout expires with no line activity, the
COM20020 starts sending INVITATION TO
TRANSMIT with the Destination ID (DID) equal to
the currently stored NID. Within a given network,
only one COM20020 will timeout (the one with the
highest ID number). After sending the
INVITATION TO TRANSMIT, the COM20020
waits for activity on the line. If there is no activity
for 37.4
"
S, the COM20020 increments the NID
value and transmits another INVITATION TO
TRANSMIT using the NID equal to the DID. If
activity appears before the 37.4
"
S timeout
expires, the COM20020 releases control of the
line. During NETWORK RECONFIGURATION,
INVITATIONS TO TRANSMIT are sent to all NIDs
(1-255).
Each COM20020 on the network will finally have
saved a NID value equal to the ID of the
COM20020 that it released control to. At this
point, control is passed directly from one node to
the next with no wasted INVITATIONS TO
TRANSMIT being sent to ID's not on the network,
until the next NETWORK RECONFIGURATION
occurs. When a node is powered off, the previous
node attempts to pass the token to it by issuing an
10
INVITATION TO TRANSMIT. Since this node
does not respond, the previous node times out
and transmits another INVITATION TO
TRANSMIT to an incremented ID and eventually a
response will be received.
The NETWORK RECONFIGURATION time
depends on the number of nodes in the network,
the propagation delay between nodes, and the
highest ID number on the network, but is typically
within the range of 12 to 30.5 mS.
BROADCAST MESSAGES
Broadcasting gives a particular node the ability to
transmit a data packet to all nodes on the network
simultaneously. ID zero is reserved for this
feature and no node on the network can be
assigned ID zero. To broadcast a message, the
transmitting node's processor simply loads the
RAM buffer with the data packet and sets the DID
equal to zero. Figure 4 illustrates the position of
each byte in the packet with the DID residing at
address 0X01 or 1 Hex of the current page
selected in the "Enable Transmit from Page fnn"
command. Each individual node has the ability to
ignore broadcast messages by setting the most
significant bit of the "Enable Receive to Page fnn"
command to a logic "0".
EXTENDED TIMEOUT FUNCTION
There are three timeouts associated with the
COM20020 operation. The values of these
timeouts are controlled by bits 3 and 4 of the
Configuration Register and bit 5 of the Setup 1
Register.
Response Time
The Response Time determines the maximum
propagation delay allowed between any two
nodes, and should be chosen to be larger than
the round trip propagation delay between the two
furthest nodes on the network plus the maximum
turn around time (the time it takes a particular
COM20020 to start sending a message in
response to a received message) which is
approximately 6.4
"
S. The round trip propagation
delay is a function of the transmission media and
network topology. For a typical system using
RG62 coax in a baseband system, a one way
cable propagation delay of 15.5
"
S translates to a
distance of about 2 miles. The flow chart in Figure
1 uses a value of 37.4
"
S (15.5 + 15.5 + 6.4) to
determine if any node will respond.
Idle Time
The Idle Time is associated with a NETWORK
RECONFIGURATION. Figure 1 illustrates that
during a NETWORK RECONFIGURATION one
node will continually transmit INVITATIONS TO
TRANSMIT until it encounters an active node. All
other nodes on the network must distinguish
between this operation and an entirely idle line.
During NETWORK RECONFIGURATION, activity
will appear on the line every 41
"
S. This 41
"
S is
equal to the Response Time of 37.4
"
S plus the
time it takes the COM20020 to start retransmitting
another message (usually another INVITATION
TO TRANSMIT).
Reconfiguration Time
If any node does not receive the token within the
Reconfiguration Time, the node will initiate a
NETWORK RECONFIGURATION. The ET2 and
ET1 bits of the Configuration Register allow the
network to operate over longer distances than the
2 miles stated earlier. The logic levels on these
bits control the maximum distances over which the
COM20020 can operate by controlling the three
timeout values described above. For proper
network operation, all COM20020's connected to
the same network must have the same Response
Time, Idle Time, and Reconfiguration Time.
LINE PROTOCOL
The ARCNET line protocol is considered
isochronous because each byte is preceded by a
start interval and ended with a stop interval. Unlike
asynchronous protocols, there is a constant
amount of time separating each data byte. On a 5
Mbps network, each byte takes exactly 11 clock
intervals of 200ns each. As a result, one byte is
t