ND-12.018.01 High Level Data Link Control (HDLC) Interface
ND-12.018.01 High Level Data Link Control (HDLC) Interface
REVISION RECORD
Revision Notes
11/78 Original Printing
-- --
- --- - ---
--
--
-- --
--
-- -- -.
-.
- --
-- - - -
-- - -- - -- -- -
-- - -- -- --
1- - -----
- - - - --
-
-
- --
I -
1
-- -
-.
-
-
--
- -
-- --
-
----
- ---
-- -
- -- ----
---- - --- - - -- --
--
- - --
Section:
lntroduction
HDLC Configuration, ND No.720 and ND No.723
HDLC Interface Versus Communication Standards
lntroduction
HDLC Data
HDLC DMA Control
APPENDIX A
Section: Page:
NORD 101s
LlNE
SYNCH
HDLC c ) MODEM 4
*
(DCE)
SPEED DETERMINED
BY LlNE
-
HDLC 4 * HDLC
MAX 307.2 Kbps
Independent of the use, dependent of the maximum required speed, HDLC could
be delivered as two different products serving the same functions as observed in
the external device (modem line, connected computer).
HDLC may consist of two modules both located in the I10 rack.
- 1181 HDLC DATA (ND NO.723)
ND No. 720
- 1151 HDLC DMA CONTROL
TO ONE
SLOT IN
I10 - SYSTEM
The two modules are connected with special wiring in the plug field in the
I/O-rack and occupy two slots in the I10 system.
HDLC DMA CONTROL and HDLC DATA working together allows DMA transfer
of data from computer memory to the line and vice versa at a maximum speed of
307.2 kbps.
I
2 #J
INTRODUCTION
The involvement of two or more users and equipment from more than one
manufacturer in data communication systems gives an increased need of a
compatible method for connecting all of it together, an interface protocol.
x. z//l x 2//1
V. 24 1 PUBLIC NETWORK VZ4
I I
These interfaces apply to the physical connection between user equipment (DTE)
and data communication equipment (DCE,modem).
These protocols which have the purpose of controlling the exchange of data are
again divided up into the following levels:
- Communication procedures
A transmission block is called a frame and a frame contains beginning and ending
markers, control information, optional data and a checksum.
At frame level HDLC (High Level Data Link Control) is fully compatible with SDLC
(Synchronous Data Link Control) and with ADCCP (Advanced Data
Communication Control Procedure).
1.3.2.2.2 Communication Procedures
All the new procedures will, however, use the HDLC frame format.
FLAG FLAG
01111110 A C
I I FCS 01111110
1. A special bit sequence call, "flag", that marks the beginning of the frame.
The end of the frame is also marked by such a flag.
The flag sequence consists of one zero bit, six one-bits and a zero bit.
The contents of the frame between the opening and the closing flag shall
not contain a flag sequence. To guarantee this, the transmitter inserts an
extra zero-bit following five consecutive one-bits. These inserted zero-bits
are removed by the receiver. These extra bits are called "transparency bits".
This field is meant as a station address, but the contents or use are not
prescribed in the frame standard.
This field is intended for link management information, but the frame
standard does not describe its use or contents.
4. An Information field
The information field may be any length, and may also be absent. The
contents of the information field are not prescribed.
This field contains a 16-bit Cyclic Redundancy Check computed over the
bits between the last bit of the opening flag and the first bit of FCS.
The closing flag of one frame may be identical t o the opening flag of the
next frame.
Frame Size:
There is n o prescribed upper limit t o the frame size. However, frame size is limited
by the properties of transmission channels and the 16-bit FCS computation.
1.3.4 STANDARDS IMPLEMENTED ON HDL C INTERFACE
Strap selectable:
- V.24/V.28,RS-232C
-
or
X.21-bis (V.28-signal levels)
I
- X.21 (X.27 signal levels)
I public data
network
- Bit Oriented Procedures (BOP); HDLC (ISO-IS 33091, SDLC (IBM), ADCCP
(ANSI) including:
- automatic bit stuffinglstripping
- automatic frame character detectionlgeneration
- valid frame protection
- residue handling
- selectable:
- byte length 1-8 bits
- error checking CRC (CRC-16,CCITT-0,CCITT-1)
NONE
- primarylsecondary address mode
- idle mode
- point to point,multi-drop,loop configuration
1.3.4.3 Transmitttng and Receiving Frames in Accordance With HDL C
Frame Format Using HDL C Interface
The reason for calling the interface HDLC is related to the fact that frames in
accordance with HDLC frame format are generated automatically in hardware
when activated from driver software.
TRANSMISSION
When transmitting, software only has to know what should be in the address,
control and information field. Observed from the frame format, these fields could
contain any user defined information.
In order to pack the information into HDLC frame format before transmitting it on
the line, HDLC DATA (which handles the procedure) must be activated by some
control signals.
The control function is to first give the command Transmit Start Of Message
(TSOM, i.e. send opening flag) and when all information in the frame is
transmitted give the command Transmit End Of Message (TEOM, i.e. send
closing flag).
The Cyclic Redundancy Checksum (CRC) is generated automatically and put into
the frame when command TEOM is given.
RECEIVING
When receiving HDLC DATA will give status on Received Start Of Message
(RSOM, i.e. opening flag received) and Received End Of Message (REOM, i.e.
end marker of the frame is received).
Then software knows that all information received between RSOM and REOM
has the sequence; address, control, information and CRC; that means, in
accordance with HDLC frame format.
This could be done by NORD 101s (HDLC in PI0 version ND No. 723) introducing
some overhead or by the DMA module (HDLC DMA, ND No. 720) reducing
overhead to a minimum (See Part 11).
PART I1
FUNCTIONAL DESCRIPTION
DETAILED CONTENTS
+ + +
Section: Page:
lntroducton
Control of the DMA Processor (The Commands)
lnitializaton
Data Transfer
Maintenace
HDLC DMA Structure
The List Structure
Receiver List
Transmitter List
11.1 INTRODUCTION
-
t
HDLC DATA ( P I 0 Version)
D M A Version
- HDLC DMA CONTROL
HDLC DMA CONTROL can only operate together with HDLC DATA.
HDLC DATA
The HDLC DATA module is designed after the same basic principles as other
parallel to serial (output to line), serial to parallel (input from line) interfaces
designed at NORSK DATA (See Figure 11.2.11.
The module contains the following:
- a device identification part including switches for setting of DEVICE NO. and
IDENT CODE
- V.24lV.28, RS 2 3 2 ~
telephone network
- v.35
OR
In addition HDLC DATA contains circuitry for connection to the DMA CONTROL
module.
The DMA module contains a microprocessor to control the data transfer tolfrom
computer memory and HDLC DATA.
Observed from the DATA module it makes no difference what processor is active.
That means that the control of HDLC DATA could be done either by NORD 101s
or the DMA processor.
The most effective solution of course is to leave the inputloutput handling to the
DMA processor. Then NORD 101S CPU will have more time for data processing
which is the computers purpose.
Including input and output data register there are 12 eight bits registers to control
the DATA module. All registers could be accessed by IOX instructions
(IOX<deviceno.> +0-1%).
Instructions 0-7, operate directly on 8 eight bits registers internally in the MPCC.
The instructions 10,-13, operate on single line indicators tolfrom the MPCC,
interrupt enabling and modem status information. See Figure 11.2.2 and the
following description.
EROM REC CONT RxEN --+ MPCC 2652
FROM LINE
FROM TIMING
FROM REC CONT MAINT
ks1
RxC
-
+
+
COM 5025 TO R E C E l V t R
STATUS
1
l o x X+O
FROM TR CONT
FROM TIMING
TxtN
TxC
-)
_+
-
-
---
---
l o x x+7 2 TxU
zk
TSO
TO TRANSMITTER
STATUS
TO LINE
8833
74LS
RECELVER S T A T U S
175
MUX - 8
IOXX+11 t
TRANSMITTER STATUE
74 LS
257
TRANSMITTFR CONTROL
8
lox X + 10 I 4
lox X + 12
74LS
175
1
8
-
IOX X+13
8835 8833
8 blts 8 blts
There are five registers related to the output channel, four registers related to the
input channel and three registers common for operation mode control.
11.2.1.1 Initialization of HDLC DATA, i. e. Loading of Mode Selection
Registers
The mode selection register is held internally in the MPCC to control the operation
mode of the chip.
Remember that the MPCC performs the necessary frame formatting functions.
Therefore, both a local and remote HDLC interface should be put in the same
mode of operation given in the mode registers.
FORMAT:
8 7 6 5 4 3 2 1 0
PROTSTRIP SEL IDLE CRC QEL
SEL GA AMOOM3DE Z Y X
7 APA BOP All Parties Address. If this bit is set, the receiver data path is
enabled by an address field of '1 1111111' as well as the
normal secondary station address.
FORMA T:
8 7, 6 5 4 1 3 0
Pi-
BIT
- - ----
NAME MODE
I I I
8 bits SYNCH/SEC. ADDRESS
I
FUNCTION
I 1 I 1
FORMA T:
15 8 7 6 5 4 3 2
1
1
I
0
I
TRANSM. 0 0 REC.
CHAR.LENGTH CHAR.LENGTH
As mentioned in Section 11.2.1 there are five registers to control the transmitted
(output) channel and four t o control the receive (input) channel.
11.2.1.2.1 Receive (Input) Channel
- read receiver status register to check the transfer quality (valid data
available, error, etc.)
- read x bit bytes ( 1 6 x d 8) from input data register (seethe following details)
This is done in order t o reduce possibility of receiver overrun at high transfer rates.
The above mentioned bits decide what processor should be active controlling the
input channel.
Bit 3 and 4 in input control word should be " 0 disabling the connection to the
DMA module.
Bit 0, 1 and 7 should be "1" enabling changes on the input channel to be reported
t o NORD 101S through interrupt on level 13.
The three following different "changes" can appear at the input channel:
All "changes" mentioned will interrupt NORD 101s to level 13. See Figure 11.2.3
for illustration and Figure 11.2.4for detaiisfrom HDLC DATA.
RRQ
REN nn: RECEIVER ENABLE BIT
nn IN IOX <device n o . > + l l
REQUEST TO
DMA MODULE
1 RxDA
1
1
REN 0 N
I
- ,RxSA - D
1 V
A 0
RECEIVER REN I N
I RxDMA 0 .EV 13
A
REN 4 N R
ADAPTOR I R@N7 A
RMSC I N
-. - - - - - - - - - -- --p-
1 I RECEIVER PART
--------------- --------I------
7
TRANSMITTER PART
I -I -TxBE A
I I TEN 0 N
TMSC I I - TxU
A
I I V TEN 1 '
I TRANSMITTER D
I I TxDMA A
I I INTREQ TEN 4 N R
D
I I A
1 I TEN 7 N
I I
L--, - - -M,
-PCC
- -J
TEN 3 TRQ
TEN nn: TRANSMITTER ENABLE BIT
TxU D TRANSMIT REQUEST
nn IN I O X a e v i c e no.
> + 13
TO DMA MODULE
Figure 11.2.4: HDL C DATA. DETAILS FROM MODULE
CASE 2 D M A Module Installed
Refer to Figure 11.2.3. The idea is that NORD-101s should not be disturbed by
RxDA and RxSA, thus being interrupted for every received character/status.
(This effect is illustrated in the following example).
This is done by disabling interrupt generation on RxDA and RxSA. That means,
setting bit 0-1 in input control word to zero. Instead RxDA and RxSA is routed to
the DMA processor as a Receiver Request (RRQ). That is accomplished by
turning bit 3 on.
Then the DMA processor will read input status and data. The DMA module may
have information to NORD 101s (driver-software) related t o the input transfer.
The DMA processor then generates a Receiver DMA Interrupt Request (RDIR)
which gives interrupt on level 13 (enabled for in ICW bit 4).
Status change on the line (RMSC) is always reported directly to NORD 101s.
EXAMPLE:
That means2400 interrupts to handle every second just to the input channel.
It should be noted that HDLC contains two status registersfor the input channel.
One of the registers is held internally in the MPCC. This register is accessed by
IOX <device no.> + 2 and contains information about the frame formatting
functions (See description below).
The other status register (Receiver Transfer Status) holds information about line
status, feedback from the control register and single line status from the MPCC.
This register is accessed by IOX <device no.> + 10 and is described in the
programming specifications (See Appendix A5).
This register is dynamically set and located internally in the MPCC. A change in
the register will activate RxSA which is reset when the status is read.
The format of the register and description of the bits is given below.
FORMAT:
I I
I
RSCLO - ROUF RAB REOM RSOM
RERR
--- -
Bit Name Mode Function
3 ROR BOP/ Receiver Overrun = 1 indicates the processor has not read
BCP the last character in the RxDR (Receiver Data Register) within
one character time. Subsequent characters will be lost. ROR
is cleared on reading RSR, reset operation, or dropping or
RxE (receiver enable).
4-6 ABC BOP Assembled Bit Count. Specifies the number of bits in the last
received data character of a message and should be examined
by the processor when REOM = 1 (RxDA and RxSA
asserted). ABC = 0 indicates the message was terminated
(by a FLAG or GA) on a character boundary as specified by
WCLR (write character length register bit 0-2). Otherwise
ABC = number of bits in the last data character. ABC is
cleared when RDSR, is read, reset operation, or dropping
RxE.
FORMAT:
15 8 7 6 5 4 3 2 1 0
pi--- - --- W E
1
I I
RECEIVED DATA
1
1
I I
LSB
B
11.2.12.2 Transmit (Output) Channel
Details follows.
This register is held internally in the transmitter part of the MPCC and loaded by
IOX <device no.> + 5.
FORMAT:
15 8 7 6 5 4 3 2 1 0
I , I 1
OUTPUT DATA
MSB LSB
There are two registers to control the transmit channel. One of the registers is
loaded directly into the MPCC to control the frame formatting functions (See
below).
The other control register (Transmitter Transfer Control Register - IOX <device
no.> + 13) is used on the module and serves the same function for the output
channel as the receiver control register for the input channel.
That is, to connect or disconnect NORD 1OIS CPU or the DMA processor to the
output channel of the DATA module.
For a better understanding, refer to Figure 11.2.3 and Figure 11.2.5 for details from
HDLC DATA.
Figure I/.2.5: HDL C Data, Details from Module
WRITE TRANSMITTER CONTROL REGISTER (TxCW)
FORMAT:
15 8 7 6 5 4 3 2 1 0
I I I ?
1 I I
Tx Tx TEOM TSOM
O O O O
GA AB
One of the registers is held internally in the MPCC and reached by:
FORMAT:
15
ITXU:TRANSMITTER UNDERRUN
The other status register for the output channel contains information about line
status and enabling done in output control register. The register (RECEIVER
TRANSFER STATUS) is accessed by (IOX <device no.> + 12).
The format and bit definitions are given in the programming specifications.
HDLC DMA CONTROL
11.3.1 INTRODUCTION
In this chapter we will look at how the DMA module functions together with the
DATA module and NORD 101s.
We assume that the DATA module and DMA module are enabled to work
together (See inputtoutput transfer control words).
ON INPUT
- read characters from HDLC DATA, group them into 16 bits words and place
them in computer memory through Direct Memory Access IDMA)
- take care of status change in input channel
ON OUTPUT
- "DMA r e a d 16 bits words in computer memory, split them up into bytes
transferred to output data register on the DATA module
- take care of status change in output channel
To do this the DMA processor has all IOX-instructions operating on the DATA
module implemented in its microprogram.
NORD 101S and the DMA processor communicates through a common memory
area (the list structure).
NORD 101S controls the DMA processor by means of commands given in IOX-
instructions. The manner in which this is accomplished will be described in the
following sections.
r+3-ik
Data and
Transmitter Memory
Status
Bus
m
,-
4 I
Receiver
J
Commands
Control
V V c I10 Bus
I and
4 P Status
Line x r u p t
Adapter
Status
The 16 least significant bits of the address are transferred to the interface by IOX
<device no.> + 15.
The most significant address bits(Bank bits) are given in IOX <device no.> + 17.
In the format of IOX <device no.> + 17, three bits are left to specify command
no. (See format).
FORMAT:
15 11 10, 9, 8 7, 61 5, 4, 3 2 1, 0
1 I I 1 I I I
COMMAND BANK
CODE 0 0 0 0 0 0 BITS
A
--T-
a) INITIALIZATION
- DEVICE CLEAR
- INITIALIZE
b) DATA TRANSFER
- RECEIVER START
- RECEIVER CONTINUE
- TRANSMITTER START
C) MAINTENANCE
- DUMP DATA MODULE
- DUMP REGISTERS
- LOAD REGISTERS
11.3.2.1 Initialization
SAAO % A reg. = 0
IOX GP + 11 (octal) % Write Receiver Transfer Control
BSET ONE 50 DA % A reg. = 40 (octal)
IOX GP + 11 (octal) % Device Clear to Data Module
+
IOX GP 17 (octal) % Device Clear to DMA Module
The Device Clear sequence as described above will stop all data transfers t o and
from the interface, and it can be used anytime. Device Clear will clear all interrupts
from the interface, and a dialed up modem connection will be broken.
INITIALIZE (Command 1 )
The command will initialize the DATA module (See Section 11.2.1.1) and load the
DMA module with necessary parameters related to the DMA structure (see
Section 11.3.3).
The contents of the three first locations are written into the DATA module. The
bit mapping of locations is described in Section 11.2.1.1.
The use of these parameters will be illustrated in the next section, i.e. data
transfer.
The checksum is set to 0 by driver software and set to 102164 by the DMA
processor when INITIAL!ZE is finished. The interface should not be used in DMA
mode if this checksum is wrong.
When started the DMA processor with Direct Memory Access will read the
parameter buffer. To accomplish this an address pointer to the parameter buffer is
needed. The address is given in the start INITIALIZE sequence which consists of
the following:
- LDA00040B
% write DMA command register
IOX <device no.> + 17
Write most address and start INITIALIZE
L - - - - - - - - - -- - - -I,
HDLC DMA module
RECEIVER START
RECEIVER CONTINUE
TRANSMllTER START
may be used.
Under this label only a description of how to use the command will be given. To
understand how they operate, the reader is advised t o study Section 11.3.3 (HDLC
DMA STRUCTURE).
The RECEIVER START command will as the name suggests, start the
microprogrammed receiver on H DLC INTERFACE.
The receiver should normally run. A Receiver Request from the DATA module will
then automatically be handled.
This command is used to write a new List Pointer to an enabled and working
interface. It should only be used as a response to a "List Empty" interrupt.
This command can be used to dump the contents of any number of the 256
random access memory registers in the DMA module. Required space in memory
is 2 locations plus one location for each register to be dumped. The contents of
the two locations are:
If both values are zero, the contents of the 16 registers in the Bit Slice are written
into memory.
DMA COMPUTER
MODULE MEMORY
ADDRESS WRITTEN
BY IOX GP+15, IOX GP+l
LOAD REGISTER (Command 7)
This command can be used to load any number of the 256 random access
memory registers in the DMA module. Required space in memory is 2 locations
plus one location for each register to be loaded. The contents of the two locations
are:
The Load Register command is simular to Dump Register, except that data is
moved in the opposite direction. It is not possible t o load the registers in the Bit
Slice by this command.
The commands, how to activate them and use them in some simple debugging
programs are given in Appendix A5.
The DMA structure is organized around lists which contain the necessary control
and status information t o connect "driver" software and DMA processor
together.
The lists which reside in the computer memory could be accessed directly from
driver software and through DMA requeststolfrom HDLC interface.
The receiver and the transmitter works from separate lists, with the same
structure and format. The information exchange between driver software and
DMA processor through the list structure provides dynamic allocation and linking
of data buffers.
The list contains a number of entries of four words each. Each list entry describes
a data block. In the receiver lists, each entry describes a receive data buffer where
the received data is to be stored.
After proper initialization (See Section 11.3.2.11, the DMA processor is given a list
pointer and the "RECEIVER START" command.
The liste pointer points to one of the entries in the receiver list (See Figure 11.3.4).
DATA BUFFER
4
LIST POINTER
BYTE COUNT DISPLACEMENT (D)
Most Address (D =NUMBER OF FREE
Least Address
BYTES)
BUFFER DESCRIPTOR
r-------
I
-
--------,
BYTE COUNT
NUMBER OF INFOR-
-
MATION BYTES
I I
I I
I I
I
The DMA processor will now generate a DMA request using the list pointer as
address and fetch the first entry from the list beginning with the status word.
FORMAT OF THE STATUS WORD
2 1 0
15 - -- 1 1 1 0
BLOCK
9 8 7
I
6
I
5 4
I
3
i
- - 0 KEY RCOST
DONE
- --
Y
J
RECEIVER DATAFLOW STATUS
DESCRIPTION BE LOW
BITS 10 9 8
0 1 0 Empty Receiver Block
0 1 1 Full Receiver Block
1 0 0 Block to be Transmitted
1 0 1 Already Transmitted Block
1 1 0 New List Pointer
The status word should be all zero except for the key.
The BLOCK DONE bit signifies used block. That is, to prevent overwriting on
input or duplicated transmission on output.
Legal keys for the receiver are 10008(Bit 9 set) or 3004 (Bit9 and 10 set).
Updating the list entry includes updating the status word and writing the number
of bytes received into the byte count.
Updating the status word is to change the key and update RCOST
The key is changed by setting the BLOCK DONE bit signifying Full Receiver
Block.
-- I
Rx R{CLO ;) - 2 Rx Rx
BLOCK
-- 0 KEY
DONE ERR OVR SNA8
- -
\
See Descr i p t x o f
IOX <device no. >+2 READ RECEIVER
STATUS
RCOST is identical to Receiver Status Register in the MPCC.
Suppose both bit 0 and 1 are set, that means the status word is updated to
1 m 8 . Then the list entry describes a Full Receiver Block which contains a whole
frame because both RSOM and REOM are received within the block.
If only bit 0 is set (1401, in status word) the list entry describes a full receiver block
which only contains the first part of a frame. That means that "MAX. RECEIVER
BLOCK" was recognized before frame end (REOM). In other words, the frame
contains more information than the receive block could store. In this case the
DMA processor automatically will increment its list pointer by four and read next
list entry describing next data buffer.
Suppose now that the new data block could store the last part of the frame. Than
the status word of this list entry will be updated to 1402, signifiying full receive
block and only closing flag received. This block change is accomplished fast
enough to maintain continuous handling of incoming data. It is assumed possible
togive BLOCK END interrupt (See Receive Transfer Control Register).
That means, when "driver" software should take care of the incoming
information it looks at the statusword of the list entries.
If status is 1403,, it knows there are no errors and a whole frame of valid data is in
the data block.
If status is 1401,, it knows that the block contains the first part of a frame and the
next list entry with status 1402, contains the last part.
This is illustrated in the receiver list illustrations (See Figures 11.3.5, 11.3.6, and
11.3.7).
The key is legal, however it does not define a data block. Instead the list entry in
word 3 and 4 contains the address to a new list.
That means, word 3 and 4 are taken as a new list pointer and the receive
procedure continues as in Case 1.
NOTE:
If this list change occurs during input data, it takes too much time to
maintain continuously input handling. Therefore, this situation will give List
End interrupt (See Receiver Transfer Controll Status registers).
RECEIVER LIST If L USTRA TIONS.
-
FLAG ADDRESS CONTROL INFORMATION C RC C LAG
LlST STRUCTURE
DATA BLOCK
I LlST
POINTER
CONTAINING A
WHOLE FRAME
--------- #Q OF FREE
BYTES DlSP 1
LIST STRUCTURE
LIST
POINTER I L
14018
75
1 3 I ( 1 'st Part I
+ DlSP 2
BYTES DlSP 2
If a frame is stored in more than two data Mocks "middle" blocks are
marked by "not start of frame" and "not end of frame" (i.e. 1400,).
The data stored in a receiver block is now "taken care o f ' by driver software
which also resets the list entry of the block.
The resetting is to change the status word to "Empty Receiver Block", i.e. 10008
or 3000,.
*
DMA processor
storing incoming
data in this
This looping in receiver list requires that driver software is fast enough t o reset the
list entries. If the DMA processor reaches the NEW LlST POINTER and than Full
Receiver Block, a LlST EMPTY interrupt is generated. (See Receiver Transfer
Status Register).
11 .3.3.1.2 Transmitter List
After initialization, the DMA processor is given a list pointer and the
"TRANSMITTER START" command. The DMA processor will than process the
transmitter list entries as described in Section 11.3.3.1 .l.
The DMA processor outputs data and sets the Block Done bit in the list
entry signifying Already transmitted block.
As for the receiver list there are special cases also for the tramsmitter list.
The key could be either 2000, or 3000,. This situation is treated identically
as for the receiver list and will not be discussed again.
Data belonging to one frame could be placed in one, two or more data
blocks. The case is set by driver software in the status word of the list entry.
---- I I
I
-
,
BLOCK TX NO b~ BITS Tx Tx
KEY TEOM TSOM
DONE ERR IN LAST BYTE GA AB
----
L
SEE EARLIER
A
SET BY DMA
v A .
SET BY DRIVER
DESCRIPTION PROCESSOR WHEN SOFTWARE PRIOR
BLOCK IS TRANSM. TO TRANSMISSION
CASE 1. A Hole Frame In One Block
Suppose the frame contains 100 bytes. Then the list entry set by driver software
will be as shown below.
IN COMPUTER MEMORY
LIST
POINTER
- 2003,
100A +DISP 1
Tx DATA BUFFER
----
BLOCK
-------,
ADDRESS
h
-
>
The DMA processor will read the status word of the list entry. The status word
contains legal key (Bit 10 set). Both TEOM and TSOM are set to 1.
"
508 + DlSP 1
BLOCK
- - - - --------
ADDRESS 1 'st
2002,
Part
30, of Frame
3
--------
BLOCK ---
ADDRESS
2'nd
Part
of Frame
The first list entry, which contains the first part of the frame, contains legal key
and only TSOM set.
The second list entry has also legal key and only TEOM set.
NOTE:
If a frame is held in more than two data blocks, the middle "blocks are
marked by not start of frame " and "not end o'f frame" (i.e. 2000,).
Use of data blocks and transmitter list is typically organized as for receiver list.
APPENDIX A
HDLC I10 INTERFACE ND NO. 723 6
F
MODULE NUMBER 1141 * 0
2
0
SPECIAL WIRING FOR
r-BUS RECEIVER -
y- LOCAL I10 BUS - DMA DEVICES --
, 1 2 3 4 5 6 7 8 9 10 11 1213 14 15 116 1 17 118 I19 120 121 122 I23 124 25 126 1 27128 129 130 1 31 132
zp
1 1 1 1*+ (2
o ~ I o I
9 0 DMA
83
o 8
d
rQ 3 3 1 1
:IB
9
*
(
1
Due to unreliable components many ECO's (Engineering Chanw Orders) on HDLC DATA ( 1 141) the module is redesigned and the n9rnh.r is changed to 1181.
1181 contains all ECO's done on 1141.The module number change do not imply any change in functions of the module.
t
Any position in Local I10 Bus. There should be modules in all positions from position 9 t c HDLC DATA.
HDLC INTERFACE (DMA) ND NO. 720
DATA TO MEMORY VIACPU MODULE NUMBERS 1141 (1181),1151,1932*
1 1 1 1 1 1 c
0
9
3
'
0
9
3
1
0
1
1
8
1
1
5
1
9
3
2
-
Module number 1932 i s called HDLC DMA SHADOW. HDLC DMA CONTROL is designed with 256 x 8 bits RAM locations.
The memory chips used are not yet available from the semi-conductor manufacturer. HDLC DMA SHADOW is used to simulate
the memory chips and will be removed when they are available.
HDLC INTERFACE (DMA) should be placed behind unbuffered DMA devices and in front of bufferred DMA devices (Big Disk).
HDLC INTERFACE (DMA) ND NO. 720
DMA DIRECT TO MULTIPORT MEMORY
BUS RECEIVER
p-, & BRANCHER - v LOCAL I10 BUS - DMA
Multi-Protocol
Universal Synchronous Receiverrrransmitter
USYNRIT
PIN CONFIGURATION
FEATURES
0 Selectable Protocol-Bit or Byte oriented
Direct TTL Compatibility
Tri-state InputIOutput Bus
Processor Compatible-8 or 16 bit
High Speed Operation-2.0M Baud-typical
Fully Double Buffered-Data, Status, and Control Registers
Full or Half Duplex Operation-independent Transmitter and
Receiver Clocks
-individually selectable data
length for Receiver and
Transmitter
Master Reset-resets all Data, Status, and Control Registers
Maintenance Select-built-in self checking
APPLICATIONS
Computer to Modem lnterface O Peripheral to Modem lnterface
Ci Modem to Computer lnterface Modem to Peripheral lnterface
Terminal to Modem lnterface fl Serial Data Bus
E l Modem to Terminal lnterface
General Description
The COM 5025 is a COPLAMOS" channel silicon gate MOSILSI device that meets the majority of
synchronous communications requirements, by interfacing parallel digital systems to synchronous serial
data communication channels while requiring a minimum of controller overhead.
The COM 5025 is well suited for applications such as computer to modem interfaces, computer to computer
serial links and in terminal applications. Since higher level decisions and responses are made or initiated by the
controller, some degree of intelligence in each controller of the device is necessary.
Newly emerging protocols such as SDLC, HDLC, and ADCCP will be able to utilize the COM 5025 with a
high degree of efficiency as zero insertion for transmission and zero deletion for reception are done
automatically. These protocols will be referred to as Bit Oriented Protocols (BOP). Any differences between
them will be discussed in their respective sections. Conventional synchronous protocols that are control
character oriented such as BISYNC can also utilize this device. Control Character oriented protocols will be
referred to as CCP protocols. Other types of protocols that operate on a byte or character count basis can
also utilize the COM 5025 with a high degree of.efficiency in most cases. These protocols, such as DDCMP
will also be referred to as CCP protocols. I
!
The COM 5025 is designed to operate in a synchronous communications system where some external
source is expected to provide the necessary received serial data, and all clock signals properly
Synchronized according to EIA standard RS334. The external controller of the chip will provide the
necessary control signals, intelligence in interpreting control signals from the device and data to be
transmitted in accord with RS334.
The receiver and transmitter are as symmetrical as possible without loss of efficiency. The controller of the
device will be responsible for all higher level decisions and interpretation of some fields within message
frames. The degree to which this occurs is dependent on the protocol being implemented. The receiver and
transmitter logic operate as two totally independent sections with a minimum of common logic.
References:
1. ANSI-American National Standards Institute
X353, XS341589
202-466-2299
2. CCITT-Consultative Committee for International
Telephone and Telegraph
X.25
202-632- 1007
3. EIA-Electronic Industries Association
TR30, RS334
202-659-2200
4. IBM
General Information Brochure, GA27-3093
Loop I n t e r f a c e O E M Information, GA27-3098
System Journal-Vol. 15, No. 1, 1976; G321-0044
MAXIMUM GUARANTEED RATINGS*
Operating Temperature Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .O C to + 70°C
Storage Temperature Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-. 55 C to + 150' C
Lead Temperature (soldering, 10 sec.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. i.-.3 2 5 'C
Positive Voltage on any Pin, with respect to ground. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +18.OV ..
Negative Voltage on any Pin, with respect to ground . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -0.3V ..
*Stresses above those llsted may cause permanent damage to the devlce Thrs 1s a stress ratlng only and
functional operation of the device at these or a? any other condltlon above those lnd~catedIn the operational
sectlons of thls speclftcat~on1s not ~mplted.
ELECTRICAL CHARACTERISTICS (TA=O'C to 70'C, VCC=t 5V15?'o, VDD- t 12V ?5Olo, unless otherwise noted)
--- - --- - - -- - - - -- - - . .
A.C. Characteristics
CLOCK-RCP, TCP
frequency MHz
PWH ns
PWL ns
tr, t1 ns
DPENA. TWOPENA ns
Set-up Tlme. TAS ns
Byte Op. W/R
A2, Ai. Ao
Hold Time, TAH
Byte Op. WIR,
A2. Ai. Ao
DATA BUS ACCESS, TDPA
DATA BUS DISABLE DELAY, TDPD
DATA BUS SET-UP TIME. Toes
DATA BUS HOLD TIME, TDBH
MASTER RESET, MR
Description of Pin Functions
Pln No. Symbol Name 110 Funct~on
-- -. - - - -
1 voo Power Supply PS 4 12 volt Power Supply
2 RCP Recelver Clock I The poslt~ve-gangedge of thls clock shllts data Into the recelver shlfl reglster
3 RSI Receiver Ser~allnput I This lnput accepts the ser~alb ~Inputt stream
4 SFR SynclFlag 0 Thls output IS set h~gh,for 1 clock tlme of the
Recelved RCP, each time a sync or flag character 1s recelved
RXACT Recelver Actlve 0 Thls output IS asserted when the RDP presents the flrst data character of the
message to the controller In the BOP mode the f~rstdata character 1s the flrst
non-flagcharacter (address byte) In the CCP mode 1 11str~p-sync 1s set. the
flrst non-sync character 1s the llrst data character 2 11str~p-sync 1s not set. the
flrst data character 1s the character following the second sync In the BOP
mode the tralllng (next) FLAG resets RXACT In the CCP mode RXACT
IS neverreset, 11can be cleared vla RXENA
RDA Recelver Data 0 This output 1s set h ~ g hwhen the RDP has assembled an entlre character and
Available transferred 11Inlo the/RDB Thls output 1s reset by readlng the RDB
RSA Recelver Status 0 Thls output 1s set h ~ g h1 CCP-~n the event of recelver over run (ROR)
Available or panty error (11selected). 2 BOP-~n the event of ROR. CRC error (11selected)
recelvlng REOM or RABIGA Thls output 1s reset by readlng the
recelver status register or dropplng of RXENA
RXENA Recelver Enable I A h~gh level Input allows the processlng of RSl data A low
level dlsables the RDP and resets RDA, RSA and RXACT
GND Ground GND Ground
DEB8 Data Bus 110 i B~dlrect~onal Data Bus
I
DB09 Data Bus 110 B~dlrectlonalData Bus
DBl$ Data Bus 110 B~dlrect~onal Data Bus
DBl 1 Data Bus I10 B~dlrect~onal Data Bus
DB12 Data Bus I10 B~dlrect~onal Data Bus
DB13 Data Bus 110 B~dlrect~onal Data Bus
DB14 Data Bus I10 B~dlrecttonalData Bus
DB15 Data Bus 110 B~dlrectlonalData Bus OR w~thDP07
WIR Wrlte:Read I Controls d~rect~on of data port WIR 1 Wr~teW/R 0. Read
A2 Address 2 I Address lnput -MSB
A1 Address I 1 Address Input
A$ Address 0 I Address ~nput-LSB
BYTE OP Byte Operat~on I If asserted byte operat~on(data port IS 8 b ~ t sw~de)1s
selecled If BYTE OP 0 data port 1s 16 blls w ~ d e
DPENA Data Port Enable I Strobe for data port After address, byte op WIR and data are set-up DPENA '
may be strobed If read~ngthe port. DPENA may reset (dependlng on reglster
selected by address) RDA or RSA If wr~tlngInto the port. DPENA may reset
(dependlng on reg~sterselected by address) TBMT
Data Bus 110 B~dlrect~onal Data Bus-MSB
Data Bus 110 Bldlrect~onalData Bus
Data Bus I10 B~dlrect~onal Data Bus
Data Bus I10 B~dlrect~onal Data Bus
Data Bus 110 B~direct~onal Data Bus
Data Bus 110 B~d~rect~onal Data Bus
Data Bus 110 B~dlrectlonalData Bus
Data Bus I10 B~dlrect~onal Data Bus-LSB
Power Supply PS 1 5 volt Power Supply
Master Reset I Th~sInput should be pulsed h ~ g h after power turn on Thls will clear all flags, and
status cond~t~ons set TBMT 1. TSO 1 and place the devlce In the prlmary
BOP mode w~th8 btt TXIRX data length. CRC CClTT l n ~ t ~ a l ~to z eall
d 1s
TXACT 0 Thls output lndlcates the status of the TDP TXACT w ~ lgo l h ~ g hafter asserllng
TXENA and TSOM colns~dentlyw~ththe first TSO b ~ tThls output will reset one
half clock after the byte dur~ngwhlch TXENA 1s dropped
TBMT Transm~tterBuffer 0 Thls output 1s at a h ~ g hlevel when the TDB
Empty or the TX Status and Control Regrster may be loaded wlth
the new data TBMT 0 on any wr~teaccess to TDB or TX Status and
Control Reg~sterTBMT returns h ~ g h when the TDSR 1s loaded
TSA Transm~tterStatus 0 TERR b ~ tlndtcatlng transm~tterunderflow
Available Reset by MR or assert~onof TSOM
TXENA Transm~tterEnable I A h~gh level Input allows the processlng of transm~tter
data
TSO Transmltter Serial 0 t the transmitted character
Thls o u t ~ uIS
output
TCP Transmitter Clock I The pos~llvegolng edge of thls clock sh~lts
data out of the
lransmltter sh~ftreglster
MSEL Ma~ntenance I Internally RSI becomes TSO and RCP becomes T .-
Select Externally RSI is disabled and TSO= 1.
Definition of Terms
Register Bit Assignment Chart 1 and 2
Term Def~n~t~on
- --- - - - - - -
RSOM Recelver Start of Message-read only b ~ tIn BOP mode only goes h ~ g h when first non-flag (address byte)
1
character loaded Into RDB It 1s cleared when the second byle 1s loaded Into the RDB
REOM Recelver End of Message-read only bll In BOP mode only set hlgh when last byte of data loaded Into RDB or
when an ABORT character IS recelved It 1s cleared on readlng of Recelver Status Reg~steror dropplng of RXENA
RABlGA Recelved ABORT or GO AHEAD character read only b ~ tIn BOP mode only 11LM 0 thls b ~1ts set on recelvlng an
ABORT character ~f LM 1 th~sb ~ISl set on recmvlng a GO AHEAD character Thls IS cleared on reading of
Receiver Status Reg~steror dropplng of RXENA
ROR Rece~verOver Run-read only blt Set hlgh when rece~veddata transferred ~ n l oRDB and prevtous data has not
been read lndlcatlng fallure to servlce RDA w~lhlnone character llme Cleared on readlng of Recetver Status
Reg~steror dropping of RXENA
ABC Assembled B I Count-read
~ only btts In BOP mode only, examlne when REOM 1 ABC 0 message terminated
on stated boundary ABC -XXX message termlnated (by FLAG or GA) on unstated boundary, blnary value of ABC
= number of valrd b ~ t s available In RDB (r~ghthand justlf~ed)
ERR CHK Error Check-read only b ~ tIn BOP set hlgh 11CRC selected and rece~ved~nerror, examlne when REOM 1 In
CCP mode 1 set h ~ g h11panty selected and received In error, 2 11CRC selected (tested at end of each byte) ERR
CHK 1 11CRC GOOD. ERR CHK = 0 11CRC NOT GOOD Controller must determine the last byte of the
message
TSOM Transmttter Start of Message--WIR b ~ tProvtded TXENA 1, TSOM lnillales start of message In BOP, TSOM- 1
generates FLAG and conllnues to send FLAG s until TSOM 0 then begln dala In CCP 1 IDLE =0, transm~tout of
SYNC reg~slerconllnue untll TSOM 0 then begln data 2 IDLE 1 transmtt out of TDB In BOP mode there IS also
a Spec~alSpace Sequence of 16-0 s ln~tlatedby TSOM 1 and TEOM 1 SSS IS followed by FLAG
TEOM Transmlt End of Message-WIR b ~ tUsed to lermlnate a message In BOP mode TEOM 1 sends CRC, then
FLAG. 11TXENA 1 and TEOM - 1 contlnue to send FLAG s. ~f TXENA 0 and TEOM- 1 MARK llne In CCP 1
IDLE 0 TEOM 1 send SYNC 11TXENA 1 and TEOM 1 contlnue lo send SYNC s, l f TXENA-0 and TEOM= 1
MARK hne 2 IDLE I.TEOM 1, MARK llne
TXAB Transm~tterAbort-WIR b ~ tIn BOP mode only. TXAB= Ifln~shpresent character then 1 lDLE=O, transmtt ABORT
2 IDLE 1 transm~tFLAG
TXGA Transmlt Go Ahead-WIR b ~ tIn BOP mode only, modtf~escharacter called for by TEOM GA sent In place of FLAG
Allows loop term~nat~on-GAcharacter
TERR Transm~tterError-read only b ~ tUnderflow, set hlgh when TDB not loaded In t ~ m e l o malntaln continuous
lransmlss~onIn BOP automattcally lransm~l1 IDLE 0. ABORT 2 IDLE 1. FLAG In CCP automat~callytransm~t
1 IDLE - 0 SYNC 2 IDLE- 1 MARK Cleared by TSOM
XYZ Z Y X -W/R btts These are the error control blts
0 0 0 X16+ XI2+ X5+ 1 CCITT-ln~tiallze to 1 '
0 0 1 X1et XI2+ X5+ 1 CClTT-In~t~al~ze lo ' 0 '
0 1 0 Not used
0 1 1 XI6 t X15 1 X2 I 1-CRCl6
1 0 0 Odd Parlty-CCP Only
1 0 1 Even Par~ty-CCP Only
1 1 0 Not Used
1 1 1 lnhtb~lall error detect~on
Note Do not mod~fyXYZ unttl both dala paths are idle
IDLE IDLE mode select-WIR bll Effects lransm~lteronly In BOP-control the type of character sent when TXAB
asserted or In the event of data underflow In CCP-conlrols the method of lnlt~alSNYC character transm~ss~on and
underflow 1 transmlt SYNC from TDB 0 lransm~tSYNC from SYNC ADDRESS regtsler
SEC ADD Secondary Address Mode-W/R bll In BOP mode only-after FLAG looks for address match prior to act~val~ng
RDP 1f no match found, begtn FLAG search agaln SEC ADD b ~should l not be set 11EXADD 1 or EXCON 1
STRIP SYNCILOOP Str~pSync or Loop Mode-WIR b ~ tEffects recelver only In BOP mode-allows recogn~l~on of a GA characler In
PROTOCOL
'APA
CCP-after second SYNC strlp SYNC when flrst data character detected set RXACT- 1. stop strtpptng
PROTOCOL-WIR bit BOP 0. CCP - 1
All Part~esAddress-WIR b ~ tIf selected, mod~fiessecondary mode so that the secondary address or 8-1 s will
actlvate the RDP
e
TXDL Transmitter Data Lenglh-WIR blls
TXDL3 TXDL2 TXDLI LENGTH
0 0 0 Elght blls per character
1 1 1 Seven btls per character
1 1 0 SIX blts per character
1 0 1 F~vebits per character
1 0 0 Four blts per characler'
0 1 1 Three blts per character'
0 1 0 Two bits per character'
0 0 1 One b ~per
t character'
'For data length only not to be used for SYNC character (CCP mode)
RXDL Recelver Dala Length-WIR b~ts
RXDL3 RXDL2 RXDLl LENGTH
0 0 0 Elght btls per character
1 1 1 Seven blts per characler
1 1 0 SIX blts per character
1 0 1 F~vebits per character
1 0 0 Four blts per character
0 1 1 Three blts per character
0 1 0 Two blls per character
0 0 1 One b ~pert character
EXCON Extended Control Ftcld-W/R bll In rece~veronly. 11set, will recelve control f~eldas two 8-bit bytes Excon btt should
not be srt 11SEC ADD 1
EXADD Extended Addreqs Flcld - W/R bll It1 rccetvcr only I SO of dddrrss bytr t ~ s t e dfor a 1 If NO-conl~nue recelvlng
address bylrs 11 YES go Into control f~cldEXADD b ~should
t not bo s(.t 11SEC ADD 1
'Note Thls feature does not cx~slIn the presenl verslon of the COM5025 It IS In the Rrv A vt,rslori dor out In ~ a r l y3 0 7 7
ND-12.018.01
Register Bit Assignment Chart 1
REGISTER DP07 DP06 D~d5 DP04 DP03 DP02 DPdl Df'Iw
Recelver Data RD7 RD6 RD5 RD4 RD3 R D2 RDl RDEf
Buffer
(Read Only- MSB LSB
Rlght Jusllf~ed-
Unused 611s - 0 )
Transm~tterData TD7 TD6 TD5 T D4 TD3 TD2 TD 1 TD%
Register
(ReadlWrite- MSB* LSB
Unused Inputs X)
SynclSecondary SSA7 SSA6 SSA5 SSA4 SSA3 SSA2 SSAl SSAB
Address
( ReadIWrlte- MSB LSB
Rlght Justlf~ed-
Unused Inputs X)
I
Register Bit Assignment Chart 2
REGISTER DP15 DP14 DP13 DP12 DP11 DP~$ DP09 ~ ~ 6 8
Recelver Status ERR CHK C B A ROR RABIGA REOM RSOM
(Read Only)
TX Status TERR 0 0 0 TXGA TXAB TEOM TSOM
and Control (Read Only)
(ReadIWrite)
Mode Control *APA PROTOCOL STRIP SECADD IDLE Z Y X
(ReadlWrite) SYNC1
LOOP
Data Length TXDL3 TXDL2 TXDLI EXADD EXCON RXDL3 RXDL2 RXDLl
Select
(ReadIWrite)
2) BYTE OP
A2
- 1, data port 8 blts wlde
A1 A0 Register
0 0 0 Recelver Data Buffer
0 0 1 Receiver Status Register
0 1 0 Transmitter Data Buffer
0 1 1 Transmltter Status and Control Register
1 0 0 SYNClAddress Register
1 0 1 Mode Control Register
1 1 0
1 1 1 Data Length Select Register
TRANSMITTER OPERATION
Apply Power
PutseMR TSO 1 Protocol BOP
TBMT
TXACT 0
TSA 0
-
1 APA - NO
Loop NO
Sec Add NO
RXACT - 0 IDLE - ABORT Character
RDA = 0 ZYX C C I U - I
RSA 0 TXDLI, TXDL2. TXDLl = 8 b ~ t
RXDL3. RXDL2. RXDLl 8 b ~ t
EXADD - NO
EXCON NO
All reglster b ~ t set
s lo zero
Set Byte Op :1 (8 bits)
Apply TCP
Note Example bebw based on lnltlally Masler Resetting If other
condlllons are required (different Mode Control settings) load prlor
toTSOM 1
Reqlsler
TSO CRC
-TBMT 0 -TBMT t
cTXACT 1 TSO - FLAG
TSO FLAG TSGA TXAB share flag. lor next
TXGA- TXAB
TEOM=TSOM=O-'
- -TBMT= 1
lake down TSOM
TSOM TEOM - 0 -*
Load Address
--TBMT 0
lrame
Ignore
must be loaded prlor
-
--+
+- TBMT 0 Ignore
Byte to TBMT -. 1
Load Address musl be loaded
Byte prlor to TBMT - 1
.-TBMT 1
TSO Address - --
Character
Load Control OR
Byte -- --- ----
a-TBMT 0
.-TBMT t end of message
TSO Control
Character
t
Load Data __ 11other than 8 blts
Length desired musl be fin- TSO FLAG 11deslred repeat
lshcd prlw to TBMT FLAG sequence
returning l o a "I'
Load Data -
-TBMT 0 TBMT 0
-TBMT t . TBMT 1
TSO - DATA TSO FLAG 01 next lrame
Load Data - TXGA TXAB
take down TSOM
--TBMT - 0 TEOM TSOM o-'
-TBMTy 1 .-TBMT 0 tgnore
repeal sequence un- Load Address -_ must be loaded prlor
111all DATA loaded Byte 10 TBMT- 1
TXGA TXAB=
TSOM- 0, A end of message
TEOM - 1
. TBMT 0
TSO CRC
TBMT 1 llag wilt be sent
TSO FLAG
TXENA 0
TSO 1 allor FLAG. shul down
TX mark llne
TXACT 0
RECEIVER OPERATION
.
Apply Power
Pulse MR TSO - 1
TBMT 1
Protocol BOP
APA NO
CONTROLLER
WIR - 1, DPENA - USYNRT COMMENT
11required, load Mode
Control and Data Length
TXACT - 0 Loop NO Select Registers
TSA 0 Sec Add NO enable receptlon begln
RXACT 0 IDLE - ABORT Character FLAG search
RDA = 0 ZYX CCITT-1 USYNRT synchronzed be-
RSA -- 0 TXDL3. TXDC2. TXDL1 - 8 b ~ t gin l~lllng
p~pel~ne
RXDL3 RXDLP, RXDLI - 8 b ~ t
EXADD NO
-RDA
RSOM 1 -
1. RXACT= 1. address byte (8 b ~ t )
ava~lable
requ~red(d~flerenl
Mode Control or Data Length settings) load prlor to .-RDA 1 llrst data byte (n b~ts)
RXENA = 1
I
WIR-0, DPENA -
-RDA 0
available
read data byte
W/R=O, DPENA -
6
.-RSA-0
RDA=O
read status
WIR-0. DPENA -.
+
.-
RSA t . R O R = l
RDA 0
RDB overwrlnen
read data byte
Terminology
Term Definition Term Definition
- - -- -- - - - -- - - -- - - ---- - - -
BOP Bit Oriented Prolocols: SDLC, HDLC, ADCCP GA 01 11 1111 (0 (LSB) followed by 7-1's)
CCP Control Character Protocols: Bisync, DDCMP LSB First transmitted bit, First received bit
TDB Transminer Data Buffer MSB Last transmitted bit. Last received bit
RDB Receiver Data Buffer RDP Receiver Data Path
TDSR Transmitter Data Shift Register TDP Transmitter Data Path
FLAG 01 1 1 1110 LM Loop Mode
ABORT 111 111 11 (7 or more contiguous 1's)
AC TIMING DIAGRAMS
RCP 1-
TCP 1-
TBMT
RXACT
RDA, RSA
3c
-
DPENA
WIR 1
1
to Transmitter
Registers I
DPENA
WlR 0
to Receiver
Registers
1-
I
RDA, RSA
7
TCP r
-(!)A'
TSO
RXENA
300 ns
u
Preferred readbnq soquence of recelver RDA and RSA
ENTER
0
,:,
RSA 1
READ RPB
4
READ RDB
STATUS
MASTER
RESET
RCP 0
-
0 k 0 'CP
RKENA 0 - - 0 -.i',A
axacT TIMING 8 CONTROL
0 -"aL-
RDA
'S*
RSA 0 - e 7 3 h t -
-1 5i= aL 3 i - l c u -
Y 1
TX PARITY GEN
-
O=a------ SYNC ADDR
SFR
COMPARE
IL
TX CRC GEN
--
-la
TXSEQ A. j - r 3 - -
-5v gc
GND (>c
.- - =
v
T5- V1\> 6 -2V-ilOL
r , 9
RCVR MODE DATA TX ACVR SYNC TX
STATUS CONTROL LENGTH SEL STATUS B DATA ADDRESS DATA
REG REG REG CNTRL REG BUFFER REG BUFFER
. J
4
. A
w
0
r3 PI r Z I
L
C C) G 1 0
2 u 0 3 O Z 2; N
0
z
0
H
rn
Dr:
dLrl
a m -
D4
0
3s
CJ Q
--
R E C L I V Z DATA A (D) BEKG 9.'. h
'RECCIVE DATA R (D) 3 c
2
R E C E I V E c i , -!.
R E C l i T J L CL.6
. n
iii
/I
9 3 .-- -
-
.
"
92 n
-. .-
--
I
TRAXSN.DAT:I
- i: (S!
C l T R h N S I ! . C!.O(:K (S) 'I
37.-. -- .-
" Af-.
-C!TR!\!!S?I. CLOCK iS ) !! -- --
DA7.A S E T R E A D Y (TI II
85 T, ,
"
- c ~ ~ : D~E T~ i Cl C.T . (Ei-
DATA
f--
- --
--
I,
-
- - -1z-z
-! I- -
h 5 ---
i-
I
-- --
-- I I- . --
-
I
I
II
59
I
56
- ,---.VI-.e .
3 : ; 6Y ,,!, ( l:ct~,~:t.s I;c;.l~i.-r,v:i,rf.! L :.
1
,,\f'f,! 7 ' J C L ) L.,'
: ~:L;I:>~,. : ti., .,
[b ', !~ ,. , . , .
, ' I >
,, , : L
6
h ~
--
lo2 MI' '
10 10' bids
Data signalling rate I ~III-~II*-A
Data signalling rate versus cable length for unbalanced interchange circuit related to
V.lO, X.26, R S 423.
.-
lo' 10' to'
Data signalling rate
Curve 1 : terminated interchange circuit
Cur* 2 : unterminstsd interchange circuit
Data signalling rate versus cable length f o r balanced interchange circuit related t o
V.11, X.27, RS422.
SUMMARY OF EIA RS-422 STANDARD FOR A BALANCED DIFFERENTIAL INTERFACE
-- ---- -- --
1
-- ---..- - -. - .-. -----. --- --- -- -- - -
I
Voltage Range 0 25V . V, - OV
I6 At>solule M d x ~ r n u r nInput Voltage
Ellher Output at V, (I,\ . 1001~A D~fferer~t~dl IVdI ' 12V
R ~ s eand Fall T~rries(across 100 ohrn loiltl) Single Ended IV,l ' 1OV
T - Baud interval (I,,tl) - max (0.1T. 20ns) lrlput Bdlarice (threshold s h ~ f t )
R ~ n g l n g(dcross 100 o h m lodd) Corilmon M o d e Volt,~ge Range L 7 ov
Dlfferent~,~l
Threshold (500 ohms In serles wrth edch
Def~nlt~ons
~npirl)
Vdss Vd (steddy state) Either Logrc State lVll 400mV -
Vss - Vds VdM (steddy state)
L ~ m ~(ecther
ts
Percentaye
Absolute
i o g ~ cstate)
lv6 vdssl a 0 ~ V S S
2 OV - lVdl . 6 0 V
T e r r n ~ n a t ~ o(optional)
n
Total Load Res~stance( d ~ f f e r e n t ~ a l ) RT
Multiple Receivers (bus appiicat~ons)
. 90 ohms
I
I
U p to 10 receivers allowed D ~ f f e r e n t ~threshold
s ~ t c v ~of
t y 2001nV must t)e malntdlned
Hysteres~s( o p t ~ o n a l )
al sen-
I
As r e q u ~ r e dfor app!ications w i t h slow riselfall time at
recerver, t o control Osc~llations
Fall Safe ( o p t ~ o n a l )
As r e q u ~ r e dby appllcatlon to provide a steady MARK or
SPACE c o n d ~ t ~ ounn d e r o p e n connector or d r ~ v e r
power
OFF c o n d ~ t i o n .
C. lnterconnectlng Cable
TYPO
Twlsted Pair W ~ r eor Flat Cable Conductor Pair
Conductor Scze
Copper W ~ r e(solld or stranded) 24 AWG or larger
Other (per conductor) R . 30 ohms11000 h
Capac~tance
Mutual P a ~ r
Stray
Pair-to Pair Cross Talk (balanced)
A t t e n u a t ~ o nat 150KHz
A.4 HDLC DATA - HDL C DMA CONTROL INTERCONNECTION
Card M t x l u i e :
> Locai 1/0 Bus L o c a l 1/0 Bus siandls are T R I - S T A T E T f L fcr a11
s ~ g c a i se x c e p t ~ n t e r r u p lines
t a n d D N A request
line, whic5 a t e o p e n c o l l e c t o r T T L .
The HDLC interface for NORD-10 computers is designed around a Mutti Protocol
Communication Controller, MPCC, of the type X2652 from Signetics or the
almost equivalent COM 5025 from SMC Micro systems.
Sixteen different I10 instructions are used t o control the interface. Eight are used
t o read from or write into the MPCC, four are for status and control and four are
for DMA Module Address and Command.
a) CClTT V-24, CClTT X-21 BIS, CClT X-21 (X-27 signal levels), EIA RS-232-C
and EIA RS-422.
b) CClTT V-35.
The interface is also equipped with an internal clock which makes it easy for two
interfaces to communicate without external communication equipment
(MODEMS).
The interface may be extended with a DMA module to reduce software load o n
interrupt and I 1 0 handling. Four I10 instructions are used separate from the DMA
module and four are used together with data module.
Instructions 0-7 operate directly on the MPCC. For a detailed description of these
registers (bit mapping, etc.) the reader is advised to study the data sheets from
the manufacturers or the HDLC Interface Control Hardware Manual (ND-11.018).
Note that all I10 instructions operate only on bits 0-7 when the DMA module is
not installed.
In this text registers 0-7 are named related to X2652 Signetics notations. For cross
reference to COM 5025 and HDLC Hardware Manual equivalent register notations
are given.
A.5.1 /OX Instruction Overview Table
Bit mapping:
0R EMTY LE F E BE Rl DSR SO i!
DMA O N L Y
The receiver has seen the start of a frame, but not the end. This
means that the receiver is active within a frame.
Status of the Data Set Ready (CCITT circuit 107) signal (V-24,
X-21 BIS) or the I signal (X-21) from the Data Communication
Equipment. A change in the status causes an interrupt on level
13 if enabled.
Bit 7: Ring lndicator (RI)
Status of the Ring Indicator (CCITT circuit 125) from the Data
Communication. A change in the status causes an interrupt on
level 13 if enabled.
Note: Bits 8-15 are cleared by reading the Receiver Transfer Status.
Bit mapping:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
LE PE RE MIF Malnt Int En. Int Inl
In? In* In1 Inl O T A (0." En. DMA R X E En, En*
En. En. En. En. cl..rl DM statu Dare
DMA ONLY
Incoming serial data stream is enabled into the receiver. The bit
is cleared by MASTER CLEAR.
A 1 in this bit together with a request from the DMA module will
cause an interrupt on level 13. The bit is cleared by a servicing
IDENT, by MASTER CLEAR and by DEVICE CLEAR.
Bit 5: Device ClearISelect Maintenance
When set, this bit will cause an interrupt on level 13 when one or
more of the Data Communication Equipment status signals
connected to the receiver changed to a state different from the
last reading (SD, DSII, RI). The bit is cleared by servicing
IDENT, by MASTER CLEAR and DEVICE CLEAR.
This bit will, together with Block End and DMA Module lnterrupt
Enable, cause an interrupt on level 13.
This bit will, together with Frame End and DMA Module Inter-
rupt Enable, cause an interrupt on level 13.
This bit will, together with List End and DMA Module lnterrupt
Enable, cause an interrupt on level 13.
Note that List Empty (Receiver Transfer Status, Bit 11) always gives a DMA
Module Request (Bit 4).
Bit mapping:
DMA ONLY 1
Bit 0: Transmit Buffer Empty
Indicates that the Transmit Buffer has not been loaded with a
new character in time. The transmitter will act as defined by the
IOX GP + 1 instruction (PCSARH). The underrun condition
may cause an interrupt on level 12 if enabled. Transmitter
Underrun may be cleared by Master Clear, Device Clear or
Transmit Start of Message (TSOM) command.
Bit 11: Transmission Finished status bit from the DMA module.
This status bit indicates an error stop and the transmitter should
be restarted.
IOX GP + 13, Write Transmitter Transfer Control:
The low byte is for interrupt and data enabling on the data module and also two
signals concerning the connection to the Data Communication Equipment. The
high byte if for the DMA module.
Bit mapping:
DMA ONLY
A 1 in this bit together with a request from the DMA module will
cause an interrupt on level 12. The bit is cleared by a servicing
IDENT, by MASTER CLEAR and by DEVICE CLEAR.
When set, this bit will cause an interrupt on level 12 when Ready
for Sending from the Data Communication Equipment changes
to a state different from the last reading. The bit is cleared by
servicing IDENT, by MASTER CLEAR and by DEVICE CLEAR.
This bit will, together with Block End and DMA Module lnterrupt
Enable, cause an interrupt on level 12.
This bit will, together with Frame End and DMA Module
lnterrupt Enable, cause an interrupt on level 12.
This bit will, together with List End and DMA Module lnterrupt
Enable, cause an interrupt on level 12.
Note that Transmission Finished (Transmitter Transfer Status, bit 11) always
gives a DMA Module Request (bit 4).
The two most significant bits of the address for the first location in a loadldump
area or the first location in a list of buffer descriptors are written into a register
(M2) in the DMA module together with a value giving one of 8 commands. The
data format for this instruction is described in the next section.
The HDLC DMA module is partly controlled by 110 instructions, and partly by con-
trol information in buffers in main memory. 110 instructions are used to set buffer
addresses, to start operations (give commands), to enable interrupts and to read
status.
Control information in the memory is used as additional information for the inter-
face when an operation has been started (by a command).
@
A.5.2 The Commands
1. Device Clear ( 1)
2. Load/ Dump and Initialize (4)
3. Data Transfer (3)
Device Clear
Data Transfer
- Device Clear
- Initialize
- Receiver Start
- Receiver Continue
- Transmitter Start
- Dump Data Module
- Dump Register
- Load Register
SAA 0 % A register = 0
+
IOXGP 11 (octal) % Write Receiver Transfer Control
BSET ONE 50 DA % A register = 40 (octal)
+
IOX GP 11 (octal) % Device Clear t o Data Module
IOX GP +
17 (octal) % Device Clear to DMA Module
The Device Clear sequence as described above will stop all data transfers t o and
from the interface and it can be used at any time. Device Clear will clear all
interrupts from the interface and a dialed up modem connection will be broken.
Initialize (Command 1
The Initialize sequence uses 7 locations in memory. The contents of the locations
are:
The content of the 3 first locations are written into the Data Module and the
mapping of the control bits are described in data sheets for SMC COM 5025 and
Signetics MPCC 2652. Displacement 1 is the number of free bytes reserved at the
beginnning of each buffer containing the start of a message (Frame). Displace-
ment 2 is the number of free bytes reserved at the beginning of each buffer which
does not contain the start of a message (Frame). Maximum Receiver Block
Length is the total number of bytes in a receiver buffer, including displacement.
The Checksum written back from the interface may be used as a control. The
interface should not be used in DMA mode if this checksum is wrong.
This command is used to write a new List Pointer to an enabled and working inter-
face. It should only be used as a response to a "List Empty" interrupt.
This command is always used to start transmission of data. The address written to
the interface is the "Transmitter List Pointer" or the start address for the list of
"Buffer Descriptors".
This command can be used to dump the contents of any number of the 256
random access memory registers in the DMA module. Required space in memory
is 2 locations plus 1 location for each register to be dumped. The contents of the 2
locations are:
If both values are zero, the contents of the 16 registers in the Bit Slice are written
into memory.
The meaning of the different values are illustrated in the figure below.
DMA COMPUTER
MODULE MEMORY
Address written
by IOX GP 15,lOX GP
Load Register
This command can be used to load any number of the 256 random access
memory register in the DMA module. Required space in memory is 2 locations
plus 1 location for each register to be loaded. The contents of the 2 locations are:
The Load Register command is simular to Dump Register except that data is
moved in the opposite direction. It is not possible to load the register in the Bit
Slice by this command.
HDLC DMA LlST STRUCTURE
DATA BUFFER
I
LlST POINTER
I-fC !KEY Dataflow Co
BYTE Count
Most Address
Least Address
Bits 10 9 8
Key for Empty Receiver Block is 0 1 0 = 10008
Full Receiver Block is 0 1 1 = 14008
Block to be Transmitted is 1 0 0 = 200%
Already Transmitted Block is 1 0 1 = 24008
New List Pointer is 1 1 0 = 30008
OFF 0
3C1 ON 1
OFF 0
3 C7 ON 7
OFF 0
3C3 ON 4
OFF 0
, 3C4 ON 10
OFF 0
3C5 ON 20
OFF 0
3C6 ON 40
OFF 0
3C7 ON 100
OFF 0
3C8 ON 700
OFF Test, CLK Disconnected
10A1 ON Normal. CLK Connected ,
OFF X-21 Interface
1OA7 ON V-74laterface
OFF 0
. 10A3 ON 20
OFF 0
, 10A4 ON 40
OFF 0
10A5 ON 100
OFF 0
10A6 ON 200
OFF 0
10A7 ON 400
OFF 0
10A8 ON 1000
NOTES:
THIS B I T IS 1 IF INSPECTED AFTER A DUMP COMMAND. DMA PQ IS A L W A Y S READ AS 0 (CLEARED A T THE START OF THE IOX INSTRUCTION] iOX GP+10
or IOX GPt12.
X BIT 5 I N COMMAND SHOULD BE 0 EXCEPT FOR DEVICE CLEAR COMhqAND
I IOX INSTRUCTION 2 IOX IPISTRUCTION 3 IOX INSTRUCTION MEMORY hr3TES
COMMANDS - _ _ _ -
A REGISTER IOX GP+ A REGISTER IOX G P t A REGIST~R
I _ _
IOX G P t
_ _
BUFFER_ -
DEVICE C L E A R 0 000040 17 - - -
1 0 2 1 6 4 ( I l l 1 h\L\I I K o h l l \ l t U l A ( I
--
RECEIVkR 51 A R T 2 xxxxxx 15 0 0 100
1' 17 (BIT 3 = I ) 11 I S U ~ F E RO E ~ C R I P T I 4 ) 51 I ( I > 1)1\1' 1
.-
1 REG I) G 1 Kki; 4 377
DUMP REGISTERS 6 xxxxxx 15 003C0Y 17 - - \( V H I H <40O 1 I < I ( . : ) H IJI'.~%I
NtJMtjEH
DATA A
-- -V-
-
A-
-ILABLE -.r N A B L E D A T A IIJlEf1RUPT +
RSOlbl - 0 I
5 ii l T l i S A V A I L A B L E ENABLE STATUS INTERRIIPT 0
RXEN 0
ENABLE RECEIVER DMA 0
I
0 (DMA MODULE REQUEST) ENABLE DbIA MOD. INTF-RRUPT RSCL 0 0
-
--
MAlNT RSCL 1 0
1
- - -
ENABLE MOUEhl CHANGE INT. 0
ENABLE BLOCK DONE 0
ENABLE KEY (1)
---- --. ---
LIST END ENABLE KEY (0)
LDA "5
IOX 1655
LDA "4
IOX 1657
WAlT
(ADDRESS)
(COMMAND)
ADDRESS /PC R
SAR
CL
DISP 1
DISP 2
MAX BLOCK
CHECKSUM
ALU 17
LlST
ADDRESS1 KEY
BYTE COUNT
DATA ADDRESS
DATA ADDRESS
KEY
-
30 lnit
40 Dump ALU
50 Dump Memory
60 lnit Receiver
70
100 lnit Transceiver 600 Memory Dump
110
lnit Parameters
ALU dump
ALU dump
Receiver List
Receiver List
Transmitter List
Transmitter List
Transmitter List
Transmitter List
Transmitter Buffers
,,
320
330
340
350
360
370
400 Memory Dump
,,
FCSO -
FSEL,
Ct6
FLAG
TRIGGER
;m -
JJ
'1
FSDO
L ,---
T--EW.I~ m ?7
HD&C O W CONTROL
1151 E Port 1
- .-* TU
*I
-.-
U
'9
RAMS
RAM6
RA M 0,
RAM I,
A
= 7
TO hlOST B I T SLICE
B I T SLICE
DESTINATION
CONTROL
AOH B
F u l v C T l O N SELECT
- -, - -- - -. - - -- - -- - -- - - - - - - -
;I - -1
v I
I -REGIS7'E
- .- R A A OPERAND I
A L U SOURCF 4 BITS D A T A OUT
DArAIN 1 16X4BIT I
REGISTER BLOCK A LU 1 Y811
~ 3 1 18 Y 1 2 15
I B OPERAND I
DB12 15
I I
I . - "__I I ON. oFTbt..lr
SLICES MOST B Y T E
,
L - - - -- - - - - - - - - - - - - - - - - - - - - - - -I
REGISTER A
A OPERAND
A L U SOURCE
1
ONE OF TvVO BIT SLICES
I ! LEAST B Y T E
NORSK DATA A. S.
L q r e n v e i e n 57 - P o s t b o k s 163, @ k e r n
OSLO 1
C O M M E N T A N D EVALUATION SHEET
HIGH LEVEL DATA LINK CONTROL (HDLC) INTERFACE ND-12.018.01
NOVEMBER 1978
In o r d e r f o r t h i s m a n u a l to develop to t h e point w h e r e i t b e s t s u i t s
your needs, w e must have your comments, corrections, suggestions
f o r additions, etc. P l e a s e w r i t e down y o u r c o m m e n t s on t h i s p r e -
a d d r e s s e d f o r m and p o s t it. P l e a s e be s p e c i f i c w h e r e v e r p o s s i b l e .
FROM
- we make bits for the future
-