Scanned Semiconductor_Handbook_V1_1987 Semiconductor Handbook V1 1987

User Manual: Pdf Semiconductor_Handbook_V1_1987

Open the PDF directly: View PDF PDF.
Page Count: 992

DownloadScanned  Semiconductor_Handbook_V1_1987 Semiconductor Handbook V1 1987
Open PDF In BrowserView PDF
1987

Semiconductor

Databook
Volume 1

U.SA
ISRAEL
SCOTLAND

Confidential and Proprietary

• Foreword
We at Semiconductor Operations (SCO) are committed to provide excellence in integrated circuit technologies, products, and services to support our customers, the Digital Systems Groups.
Our primary objective is to optimize Digital's competitive market position by developing leadership system performance at the lowest possible cost and within the appropriate
time constraints.
The execution of programs designed to achieve this 9
Introduction to the V-11 Chipset.; '.' .... ,'. -.4 •• :•••• ' ' ' ••• j • •: " . ;.( • • • • • • • '• • • • • • • • • • 1"207
DC327 V-ll ProcessorROM/RAM Logic ................ <;t; . ; . ; •• n . . , • • " . ' •••.•• 1-209
PC328 V-lll?tocessor Instruction/ExecutiQ1)-lpgic. . . . • .• .
. " J•.." •• '.'." •.•••• t:, 1"217
DC329 V-lll?tocessor Memory Management Logic ... ... i....'"
, ••••••• : .•• \1." 1·227
OC330 V-ll Processor Floating-point Accelerator Logic ........................... 1-241
DCJ1116-bit Microprocessor ............................................... 1-249
FPJll Floating-point Accelerator ............................................ 1-323
DCTlll6-bit Microprocessor .............................................. 1-349

Section 2 • Vadeo Processors and ControUers
78680 Video Processor (VIPER) ............................................ 2-1
78690 Video Control (ADDER) ............................................. 2-31
DC503 Progranunable Sprite Cursor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2-75

Section .3 • Communications Devices
78808 Eight-channel Asynchronous Receiver/Transmitter . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
OC319 DL11 Compatible Asynchronous Receiver/'lhnsmitter . . . . . . . . . . . . . . . . . . . . .. 3-27

Section ... • Bus Support Devices
VAXBI 78732 General Purpose Bus Interconnect Interface ........................ 4-1
VAXBI 78743 BCI Adapter Interface ..........•.............................. 4·135
VAXBI 78733 BCI Bus to MicroVAX II Bus Interface ............................. 4-159
VAXBI 78701 Clock Driver ................................................. 4·191
VAXBI 78072 Clock Receiver ............................................... 4·203
DC003 Dual-interrupt Logic ............................................... 4·213
DC004 Register Select (Protocol) Logic ....................................... 4-223
DC005 4-Bit Transceiver. , ............. , .... , ....................... , ..... 4-233
DC006 Word Count/Bus Address Logic ....... , ............................... 4-243
DCOIO Direct Memory Access Logic ...... , .... , ............................ ,4-255
Dcon UNmus Request and Control Logic ................. , ........... , ...... 4-269
De02t Octal Bus Transceiver ................... , .. , ......... ,., ...... , .... 4-283

Section j • Mass-storage Devices
DC018 Serializer/Deserializer Logic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
DC024 Encoder/Decoder Logic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5-19
DC309 Reed Solomon Generator for ECC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 5-49

SeCtion 6 • General Purpose Devices
DC022 16-Word by 4-bit Register File . . . . . . . . . . . ... . . . . .. . . . . . . . ..• . . . . . . . . . . . 6.1
DC102 Eight-channel Equals Checker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . • . . . .. . .. 6-23
DC30l Dual Baud Rate Generator ..................... ,. . . . . . . . . . . . . . . . .. . .. 6-31

Appendixes
Appendix A • MicroVAX 78032 CPU and MicroVAX 78132 FPU Instruction Set .......... A·1
Appendix B· DCTn and DCJll Microprocessors Instruction Set ...................... B-t
Appendix C • dc Specification Test Circuits ...........•..................... .... Col
Appendix D • Input/Output Voltage Waveform Parameters ....•. , ...... ; ............ D-1
Appendix E • Mechanical Specifications . . . . . .. . . . . . . ... ; ,; ..................... E-I

x

Confidential and Proprietary

· Section 1-Microprocessor and Support Devices
The micropr()cessors~d support devices provide a low-cost ~s to implement the power and
versatility of the PDP"ll and VAX. comp~ters into system designs.

MicroVAX32.bitMic:roproeesSol' '.
...
..
. ...' . .....
.
..,
'.
.
MicroVAX 78032 Central Processing Un it- The MicroVAX. cpU is a.~~-bit N8h-perfo~f;Ice
microprocessor that. contains the architecture. and functions. of .a. VAX minkompl.lter. The
MicroVAX·78032 implements a subset of the VAX. insttuctionset'andfull VAX.;lf memory
management. It is fabricated in ZMOS (double-metatNMtJSfandisc~ht:lrinedin'~{single68-piii
package.

MicroVAX 78132 Floating-point Unit-The MicroVAX FPU is a high-performance cooperative
processor used to accelerate the floating-point instructions of the MicroVAX. 78032 CPu. It
supports floating-point add, subtract, multiply, divide, and convert and other VAX.-ll floatingpoint operations. The FPU is fabricated in ZMOS and is contained in a 68-pin package.

MicroVAX 78516 Vectored Interrupt Controller- The VIC is a programmable interrupt controller that
is fully compatible with the MicroVAX 78032 CPU. The 78516 VIC services up to 16 interrupt
sources, resolves interrupt priorities, drives the IRQ line!> of the CPU, and provides a programmable
16-bit interrupt to the CPU. It is fabricated in high-speed CMOS and is contained in a 68-pin
package.

MicroVAX 78532 Direct Memory Access Controller-The 78532 DMA is a high-performance dualported four channel virtual memory DMA controller that enables high-speed data transfers
between I/O subsytems and peripheral devices and the MicroVAX 78032 CPU bus. It contains dual
ports and four channels that are independently programmable. The 132-pindevice is fabricated in
CMOS.

MicroVAX 78584 Dynamic RAM Controller-The MicroVAX. DYRe provides an interface between
the MicroVAX CPU and up to 4 Mbytes of dynamic random access memory (DRAM). The 78584
DYRC operates at two speeds to support 256K by I-bit DRAMs that operate at different speeds. It
is contained in an 84-pin package and is fabricated in CMOS.

Advanced Development VAX Incircuit Emulator- The ADVICE is contained on a single module and
provides a full-speed incircuit emulator of the MicroVAX 78032 CPU and MicroVAX 78132 FPU. It
is used for the development of hardware and software products using the MicroVAX CPU and FPU.
V.1132·bit VAX Processor
The V-ll processor chip set consists of four custom VLSI chips that were developed for use with the
Scorpio CPU module which is a single module VAX system.

DC327 ROM/RAM Logic-The ROM/RAM chip is a 44-pin cerquad device that provides the
microcode control store function for the
processor.
DC328 Instruction/Execution Logic-The lIE chip is a I32-pin PGA device that functions as the
main data path and contains the microsequencer, minitranslation buffer, and instruction buffer.

v-n

DC329 Memory Management Logic-The M chip is a I32-pin PGA device that provides most of the
memory management logic and includes a tag store for cache memory, four UARTS, and a 512-entry
backup translation buffer.

DC330 Floating-point Accelerator Logic-The F chip is a 132-pin PGA device used to decrease the
execution time of F , D , and G floating-point instructions and some integer multiply and divide
instructions.

Cottfidenfull and Proprietary

PDp·ll 16·bit Processors

DCJllMicroprocessor"":':'The DCJllmicroprocess6r isa60-pin CMOSmP de\"ice that implements
the full PDP·ll instruction set and has Eipe:tformance comparable tothe:PDPl l1/44 mihiprocessor.
FPJll Floating-point Accelerator-The FPJll FPA is a 40-pin DIPthatimplc::rnents in llatdware #
the floating-point instructions of the DC]l1 thereby significantly improving the performance of
fl6!iting-point instructions.
.
DCTn Microprocessor-The DCTll microprocessor is a 40-pin DIP device that contains the
essential elc!:ments of the PDP·ll architecture.

xii

Confidential and Proprietary

• High performance
- 32-bit internal and external data path
- Pipelined ru:clUtecture
- Insirtlctidn prefetch

• Subset of the VAX instruction set
- 245 instructions

• 4 gigabyte virtual address space

: SiXte~ 3~·kif$~~ra1PUll?Os~,register$

• 1 gigabyte physical address space
- 512 Mbyte physical memory space
- 512 Mbyte I/O space

• 22 interrupt levels
- 15 software

• VAX memory management
- Full memory protection
- Four privilege modes
- Process and system space mapped

• .Veetoredspftware and hardware interrupts

- 21 address~~ode~

~9 oata'types·'

•.

-7 hardware
~lndustr,yl»mpatible external interface

• Single 5 V~.,~er.supply

. Description
The MicroVAX 73082 is a high-performal}ce single-chip mic;ropt9F~sor that provides the
architecture and functions oft;he VAX minicomputer in a single'68-p.~ package. Fabricated in
ZMOS (double-metal MOS),·the MicroVAX 780:32 implements a.£Uli· 32"hit architecture that can
directly access 4 Gbytes ?fvif1;Ual m~mory and 1 Gbyte of physie# meptory. Figure 1 is a block
diagram of the MicroVAX78O'32 microprocessor,

GENERAL REGISTERS

A.O
INTERNIAL ReGt$T£~&

CON'fAOI. EHJS$ES

1
\

i

'.6IT ALU
AND
BARREL SHiFTER

L

i.

. - - - -.... .,

i?

il-o

eLKO
elKI
RESET

=3

MICAoseOUENctR
AND

CONTROL STOAe

CLOCKS

I

Figure 1 • MicroVAX 780J2 Microprocessor Block Diagram
Confidclltial ~P1pprietary

1-1

."

, ' ,

'

'

'.'~)?:/
,

'

!':'

"

'.

.' '.:: .)'

J',<, ,.,:::""", . ':,'

tYli:¢:'Q~a1[ 'fSf'}4(uses$&ingletvdt~~s~ppl~~;~~uire~/no~pec~suppott.1o~c,and

is
easily
with industry standard peripheral chlps. It is ideal for use as a single-board
computer, personal computer and workstation, and as a low-end system .

. Pin and Signal Descriptions

.

This section provides a brief description of the input and output signals and p0o/er and g.ro\lnd
connections of the MicroVAX 7803268-pin package. The pin assignments are id~ntified in Figure
2 !lnd the signals are summarized iri Table 1.

'iiiiiiiiiiiiiiic
~@§~~~5~~~S~~~~g

VOD

61

43

Vss

DAL06
DAL05
DAL04
DAlO3
DAL02
DAlO1
DALOO

62
63
64
65

42
41
40
39
38
37
36

DAL22 .
DAL23
DAL24
DAL25
DAL26
DAL27
DAL28
DAL29
DAl30
DAL31

66

67
68

VSS

VOD

1

2

iRi::i3

3

iIlQ2
TEST

4

im:ff

5
6

ifl()5

7

PWRIT
Vas

8

1---------1
I
I
I
I
I
I
MiCroVAX 78032
I
I
PROCESSOR CHIP
I
I
TOP
VIEW
I
I
I
I
IL _________ -1I
I
I

Voo

Vss
~

00
i5'i3r
CLKO

Figure 2· MicroVAX 78032 Pin Assignments

1-2

Confidential and Proprietary

MkroVAX 18032

Preliminary
Table 1 • MicroVAX 78032 Pin and Signal Summary
~t1Outpu;t*

Definition/Funetion

33-42 DAL<:31:00,. ..····input!output
45-59

Data!Address lines-Time multiplexed, ··bidi:reetional data and address bus.

62-68
30

AS

output
.

29

os·

12-15 BM<3:0>

Address
strobe-SY$tem address strobe,
. ...
. ......
H.··
... ..•
i ...'

output
input/output

21

WR

output

28

DBE

output

. Byte tfut~kli;..-:rdEintifi~t:he bytes of th~ DALbus that
containfvatid data.

' .,

'i'

.

transceivers.

ROY

input

20

ERR

input

16

:RESEr

11

BAtT

19

Ready-Providc;s.s~t\is~f~~~~rduring ~

memory or interrupt bus ~. '..

24-26 CS<2:0>

input/output

3,4,
6,7

input/output

IRQ<3:0>

8

,

'"

Interrupt request-Interrupt lines for device interrupts.

input
input

Interval timer- Indkate~
condition.

18

input

DMA request.,.,..~~ststhebus f()rDMA transfeiS.

22

output

DMA grant-Grants bus fot,DM,Atransfers.

23

output

External processor strobe..;.;..Coordinates exrernru

10

INTTIM

an;;:Kter1'lai inte~ timer

processor transactions.
2,32, VDn
44,61

input

Supply voltage-5 Vdcsupply.

1,31, Vss
43,60

input

Ground-Ground refe.rence.

17

CLK!

input

Clock in-Clock input for chip timing.

27

cum

input

Clock out-Clock output at half the frequency of
CKU.

9

VBB

output

Back-bias-For manufacturing use.

5

TEST

input

Test-For manufacturing use.

*All signals are TTL levels except for ~in 23(;ePS) ",Welds CMOS.
Confidential and Proprietary

1-3

nata ancl.A.ddressBus< " ' . , " ,
"f,:';".·,' ..: .hi";,
Uataand adchessbus (DAL< 31:00»-:-~heda~a a9dadclress~l.1sisatime"multiplexedbidirec­
tional bus that transft!rs. address, dat~,and'dth~rirlforml!tioif'a{lririgf)uscycles. Fdf';a'detaife~
desc.tiption ofOAL< .31:00 :>bus, refer to tlwMicraVAX 78032;32~BitGentral~ctssint)}nitJjJser'$
Guide. (Document No. EK-78032-UGJ
Bus Control" "
" "
"
"',"
",
Address, strobe, (AS)-This signal indicates that valid address information is available on the
DAL < 29:02> bus and 'valid status information is 00 the BM < 3:0 >,CS <2:0 > , andWR: lines;
~le~dipgeai?;e of
si~nalc~n be used to lat<:.hthe address.

tJ:is

External processor strobe (EPS)- Thlssignal.\sused by the CPU to coordinate external processor
transactions,.!t is usedwiththdollowing transactiolls:
• ,Transaction'between an extetp.al processorc6ntrolled by the CPU , such as 'the MittoVAX 78132
Floating~Point

Unit.

'

",

.,

.. TransactiQos betweenlogit that implements a register or registers thatare defined as a part of the
Mie:tOVAXlrltertial prbtessot 'register set.
"
'
.,
Data strobe (.QS)--:Thissignal indicates that the OAt" bus is free to re,ceive data'during a GPUread
cydeor that valid datllison the DAL bus during a CPU write cycle. ,. "

Byte maskS (BM < 3:0 > )--These signals ate used to indicate which. bytes of the DAibus contain
va):idqataas lis:te<,i in Table 2. F()r a read cycle, they indicate which by~es. p£ theDAL bus must have
data driven onto them. For a wri~cycle, theY il1dicate which bytes of the DAL bus contain valid
data; Bits BM< H5 > art< valid when the AS ~ignal is asserted.

~ble 2 • MicroVAX 78~32~yte Mask Data Selection

Byte Mask , Valid Data Byte

BMJ

DAL< 31:24 >

BM2

DAL<23:16>

BMI

"PAL<15:Q8>

'.m;ro.,l)AL< 07 :00 >

1-4

Confidential and Propriet~

Preliminary
Writetfi~-1hi$ signal specifies the directionofdatatrmsfer 'on theDA.1L bus £or,thecurret1t bus
cycle;:,Whena~ted,:ithe CPU is performing a. write operatlon.When·notdeassertkcl,the CPtJ

is performing a read operation. The WR signal is valid when the AS or EPS signal is asserte )- These lines areused with ~itbertfie'ASofthe EPS andWRsignals to
define the type of operation in progress for
current bUs CYC~]Jn.e~4;nes cS < 2:0 >~re vaIi9
when the AS or the BPSsignalis asserted.
.

the

During a read,.write,orinterrupt-acknowledge
select the bus cycles indicated in Table 3.

Write Control Status

cycl~(AS asserted},.i'b~WRand CS « :2:0>

Bas: Cycle

WR

CS<2:0>

H

LLL

reserved

H

LHH

interrupt acknowledge

H

HLL

read (instruction)

H

HLH

H

HHL

H

HHH

read (data, no modify intent)

L

llL

reserved

L

llH

reserved

L

reserved

L

U1L
... LIDI

L

HLL

reserved

L

HLH

write unlock

L

HHL

reserved

L

HHH

write (data)

reserved

CoMidential and Proprietary

.'

lines

Preli~ . . · ·

Atthebegiriningohm:,cxternalpracessor .read, Write:,;. orrespo~ qrcle.(m as~ted),the
es< l:Q:> signals select the bfu;cyc1esincli(:atedin
Table 4.

CS2sigllal is.high,.andthe:wR and

~ble 4·

l\.iic:roVAX 78032 Ext:emaJRtgis_lJus Cyde

Write' ContrOl Status Bull Cycle
CS<1:0>

fi

LL

rest!rved

H

LH

read data

H

HL

reseI'Ved

H

HH

response enaple
writec'?mnland (FPU)

L

write data
L

HL

L

HH

. write command (non-,FPU)
reserved

During a response enable Cycle the ts <2 > signal maybe pulled loW bVthe external logic. Refer to
the External Processor Cycle section for a description of a response enable cycle ..

Interrupt ContrOl
Interrupt request (~IR~Q:O:--::<:-:;j"":o~>-)·-These lines are used by the extetnallogic to generate interrupt
requests to the CPU. The lines are sampled by the CPU every microcyde. Table 5 lists the ipterrupt
level assignments.

Table 5 • MicroVAX 78032 Interrupt Request Assignments

IRQ Line· Interrupt Level
IRQ 3

IPL 17
IPL 16

IPL 15
1PL 14

1-6

CcmfidentiaI and Proprietary

Preliminary..•..

MicroVAX71l92

Powerfail (PWRFL)-This line allows the external logic to notify the CPU ofa powerfaii
condition. It is s~mpled by the CPU every microcycle. The PWRFL signal generates aninterrupt at
1PL IE (hexad~imal). This interrupt is internally acknowledged by the CPU and does qat use an
interrupt ac,kn= 1Qand DAL<05:00> == 111111) and then
enters the restart process. The restart proce$s sets tQe CPU to a known state and then passes control
to user code beginning at physical address 20040000 (hexadecim~). Fgr a description of the restart
process, refer to the MicroVAX 78032 User's Guide.
DMAControl
DMA request (DMR)..;.;.This signal is usedby the external logic 1;0 take control of the DAL bus and
its related control signals.
..
DMA grant (DMG)-This signalindicates that the CPU has gran:~dthe use of the DAL bus and its
related control signals.
Clock Signals
Clock in (CLKJ)-A TTI.. input that provides the basic clock timing to the clock generator on the
MicroVAX 78032.
Clock out (CLKO)-A timing signal output at half the frequenCyo,fb(!si~dock (eLKI) to be used
for system timing.
Miscellaneous Signals
Test (TEST)-Reserv(f,d. This pififl/ust be connected to ground..
Power Supply Connections.
Power (VDO)-5 Vdc supply..
Ground (Vss)-Ground reference.

Back-bias generator (VDS)-Reserved. This pin must notbe.coWlected ..

Confidential and Proprietary

1·7

-

• Ai'chite«:tu1'e Summary.
The MlCtuVAX78032 "~hitecture show~ inPigure 3Is. group~into two ,main areas. One' area is
use(fhy the' application programmer and contains general registers, pointer re~isters, and the
processor status word. The remaining area is used by the system programme!: and contains process
control registers, memory management registers, interrupt registers, and theprocessorstiitus

lOogwOrd.

APPLICATIONS

PROGRAMMING

GENERAL REGISTERS

RO
RT
R2
A3

KSP

R4

ESP

AS

SSP

Ae

USP

A1

RS,
RU

RIO

PROCESSOR STATUS WORD

RIT

PSW

SYST~M.

PROGRAMMING

PROCESS CONTROL REGISTERS

INTERRUPT REGISTERS

seeB

SlRR

PCBB

515R

MEMORY MANAGEMENT REGISTERS

L..-_ _ _:.::ISP:..-_ _.-.J

POBR

1,

'i> 32 .

General Register Addressing
The general register address modes use one or more general registers, depending on the instruction
and data type, or information required to locate the operand(s) to be lised by the specifi~d
instruction.

Register mode-:-.The operand is contained in one of the general registers (Rn).
Register deferred mode-Register Rn contains the address of the operand.
Autoinaement mode........ Register Rn contains the address of the operiU1d. After the operand address
is determined, the size of the operand in bytes is detertninedby its data type and is added to the
contents of register Rn and the result is placed in register Rn.
AutoinC1'ement deferred mode-Register Rn contains a longword address that points to the
operand address. After the operand address has been determined, the number four is added to the
contents of Rn and the result is so tred in Rn.

Autodeaement mode-The size of the operand ,in· bytes is determined by its data type and is
subtracted from the contents of Rn and the result is stored in Rn. The updated, content of register
Rn is the address of the operand.
Literal mode-Literal mode addressing provides an efficient means of specifyingioteger constants
in the range of from 0 to 63 (decimal). In addition to short integer literals, this mode can be used to
specify floating-point literals. The value is contained in the operand specifier.
Displacement mode-The displacement contairied in' the operatid specifier, after being signextended to.32 bits if it is a byte or word, is added t() the contents otregister Rn,and the result is
the operand address.
.
Displacement deferred mode-The displacement contained in the operand specifier, after being
sign-extended to 32 bits if it is a byte or word, is added to the contents of register Rn, and the result
is the operand address.

Confidential and Proprietary

Index mode-The Qperandspecifier consistS of two bytes or more, a primary operand specifier and
a base Operand specifier. The primary operand specifier,contained in bits 0 fhro~ 7, iucludes the
,index regi£tet(Rx)and a modespecmer of4. The address of the primary opemndisdetermined by
multiplying the contents of index ~ter Rx by the sWeof the primary operand in bytes which is
determined byc>pC!ran4 type~ Thisyalue is then added 1)) the ~dress spet;ified by the b$C operand
specifier (bits 15 through 8), and the n;s9;lt'is the pp~ryqpeliand addtess.

Program Counter Addressing
Register 15 is used as the program counter (PC). It can also be usedin.·th~a~i03;rqodes,l'he
processor increments the program counter as the opcode, operand specifie~ ~tld immediat~ data or
addresses of the instruction afeeValuated/fheatl1i)Unt thaHhe'iPG isincrementedis detexritinedby
the opcode, number of openioospecifiersartaother values.1'bePCcanbe usedwithalloftneVAX
addressing modes,6ti:ept regiSter; index, ~siterdefetred; orautodecrement.

Immediate mode-This mode is an autoincrement.mode.andthf! PC is~.as the general register.
The contents of the loeationfoDowing the~ddresSingmdde CQMUu.iminddiaie data.
This mod~i~··~· ~ufoili~reinerit d~ferre~.@dellsing the 'J?C.•aSthe general
registe.c The contents of the location following the addJ!essing' mode ,. are takeh. as the operand
address. This is interpreted as an absolute address that is an address that n;~~t~Jll;in.tl-.Ie
memory locatic)flwhel;'e . ~~seml?led.ipstruc.tioJl4~~.ted,

AbsolUte

mocle-

Relative mode--Thismdcleisa displaeementmocle and the PC is" uSed aslhecgeooraltegister. The

displacement that follows the operand specifier is added to the PC Illld the sum is/the address of the
operand.

Relative deferred mode-This mode is similar to the relative mode except that the displacement,
which follows the addressing mode, is added to the PC and the sum is the longword address of the
operand.

Branch Addressing
During branc.hdisplai;ementaddn;ssing,clie byte 91' word displace1l1eht is sign-extended to 32 bits
and added to the updated content of the PC. The/updated content of the PC is the address of the
'
first byte beyond the operand specifier.'

• Instruction S~t
A summary of the VAX instructions implemented by the MicroVAX 78032, the floating-point
instructions supported by the SOating.point unit, and the emulated instrQctionsthat are assisted
by the microcode are listed in Appendix A..

Operand Type
The operand type specifies the use of the operand that is associated with an instruction. The
apcode includes the data type of each eperand and the method of acce:;s as follows:
1. Read-The specified operand is ready-only.

2. Write-The specified operand is write-only.
3. Modify-The specified operand is read, may be modified, and is written.

4. Address-Address ddculation occurs Until tHe address of the . operand is obtained. In this
mode, the data type indicates the operand size to be used in address calculation. The specified
operand is not accessed directly; however, the instruction may use the address to access that
operand.

1-17

Preliminary
5. Variable bitfiekd baseaddress"'-If only .registerR(n] is spedfied;the fie41is iil genim.uregister
R(o] or in R[n't'l}'R[n] (i.e., R[n+ 1] concatenated with R[n]); If R{nlisnot specified, an
address calculation occurs until the actual address of the operand is obtained; This address
specifies the base to which the field position (offset) isawlied.

6. Brandl---No operand is accessed. The operand specifier is the branch displacernent and the
data type indicates the size of the branch displacement.
.

. Memory Management
The mem9ry management. unit provides. a. flexible and efficient virtual memory programming
environment. Memory management and the operating system provide paging with user control
and swapping. It also provides four hierarchical modes-:-kernel1 executive, superyiso,r, and user,
with ~ad/write.access control for each mode.
The VMS Virtual MeU1QrySystem provides a large address SPace and allows programs to tun with
smail memory configurations. Programs are executed ina process environment. Each process can
.
operate with an address space of 4-billion bytes.

VIrtual Address Space .
Memory management divides the virtual address space into two spaces of.equal size-the system
space and the process space. The process space is divided into PO and PI regions. Figure IOshows
'the virtual address space assignments.

00000000
LENGTH OF PO REGION IN PAGES·
I.POLRI
PO
REGION

3FFFFFFF

40000000
PI
REGION

1
1

PO R;EGION GROWTH DIRECTION

PI REGION GROWTH DIRECTION

LENGTH OF PI REGION IN PAGES

12 u ll-PI LRI
1FFf cF FFF
80000000
LENGTH OF SYSTEMR~GION IN PAGeS

ISLRI
SYSTEM
REGION

1

BFFFFFFF

C()ooqooo

SYSTEM REGION GROWTH 01 RECTION

RESERVED
REGION

FFFFFFFF

Figure 10- MicroVAX 78032 VirtuslAddress Space Assignments

1-18

Confidential and Proprietary

_

.. ,

Preliminary

Vartualac.fdtess format-A 32-bit virtUal address is generated £Or eachinstrurtion and operand in
memory. As the process is executed, the processor translates each viruw address into a physical
~s; 1'hefprmat qf ,~~irtual address is shown in Figure 11 aJ'ld describ~d inThbIe 9.
Page pl.'Ot.eetion-Independent of its location in virtual address space, a page of5U bytes may be
protected according to its use. A Pl'9gWD ~y,g~teany ~ss;.hQWeV~. Plep~Jl1 may be
prevented from modifying or acce$sillgpor~ons of tl1eshan:9syS,te;n space. AptogJ;ammay. also be
prevented from accessing or iOOdifYing portions o! proCess space.'
'. ' , ,

VIrtUal address $p8ee l~t"":~sstOthePti,P1, and Sys~enil"e,ii6ns'is Cohtrolledhy the {PDLR,
PUR, and SiR)lengthregisters;Within:theJitnits set byttBe leilgthregiSte&;'tlie"acceSS; is
controlled by a page table that specifies the validity, access requirements, and location of each page
inthe region.

Figure 11. IiMi~VAX 780')2 Virttl4l~,Format

Bit

Desc:riptioos

31:09

VPN (Virtual Page Numbed-This field specifies the virtual page to be referenced.
Virtual,address ~e cont~8;3~~.608pages of~UbYtes each-

Bits <31:30> ofthe.VPNseleet the region (1£ virtual ad~ss space being
re£erencedasfollows:
"
'
Value of
Region
Bits <31:30> Referen<;ed
(j
PO ,"
1
Pl
2
Sys~ni
.3
.. Reset\?ed
08:00

Byte number-This field speclfiesthe number o£'~k byte within the page.

&cess Control
The access control fun<;tiori detelitnines whether a read or wri~,~ory ref~ will be all~
to a memory page. Every page in memory isassignedaprotectWnicoc:k to preVent illegal access to
memory information.

Confidential. and ProprietarY

1-19

,MOde,..,...'i['netourhimucliicaltilW.dcs,'tlsed .• h¥theMitroVAX."1 803210'the'1QtCier of,most :.toJeast
privileged are
a Kern~Iili..b~ed byth2ketbel;of:the operatingsgstertJ. for~age'triariagert1~I1t!" schedUUrig;arid

'. l/O:dr~vers. '.
, l:'EJKeOtitiVeL used formanyofthe operating sy~tern service ~alls;
2' sUPei:visbf:'::":used £6r services;s~~:~scommand interpremibn:

~'"
~-

Us,t;r-;:\lsep for user level code', u'tiHties, co~piIers?Aebugg~rs,
~!c:,'" '.
i: -.,-:,' .', _"
" -', >, ,-

' ,

"

.' ,;

':"; -

,

'

•

- •

,,' '

-', - , '

,."

-' " ;

t: ,.',;

<

The curre~t p~Ces$~:l1: tm;'e;e is~tored in the current mO

R

12

1100

URSW

RW

RW

RW

R

UREW

RW

RW

R

R

'UltRW'

RW

UR

R

R

R

R,

1101

13

14'
15

U'

···.ff10} ,

: -;("

1111

Legend:
- = no access
* = unpredictable
R = readonIy
RW= read/write
W = write

"

R

, 1::-

K = Kernel
E = Executive
S = Supervisor

U

RW

= User

Confidential andJProprietilry

-

MicroVAX780l2

. Memory Management Control
Three registers are used to control memory management .. One register is used to enable ~nd disable
memory management and the other two are used to control the address translation buffer.

Memo!y Management,Enable
The map enable register (MAPEN) determines whether· the 11lemory manag~mentfunctions is
disabled or enabled. The fqrrnat of the map enable: regillteris, $hc:wn in Figure 12 :mddescribed in
Table 1 1 . '
' . . .

I::: :::::: ::: ::~ ;.;:: :: :.::: ::::11I
31

.' .

'.'

.. ' 0100

:MAPEN

MME

Table 11 • Mic:roVAX 78032 Map Enable ~sterDesaiption
Bit

Descriptions

31:01 MBZ (Must be zero).
00

MME (Memory management enable)-used to enable and disable memory management as
follows:
1 =MME' enabled

0= MME disabled

Translation Buffer
The translation bUffer stores frequently used flletnOry page references. The translation buffer
stores eight entries that contain page table entries (P'FE) £or sulleessful:virtUal address translations.
It is cont.roned pythe,~tionbl¢fc;r iilvali~te s~  of the virtual address become the phy~ical address, and access
is allowed in all modes. When MME = 1, the memory mapping is enabled and tbe virtual address is
mapped to a physical address by the memory management. The address translation process when
memory management is enabled is as follows.

Page table entry-All virtual addresses are translated to physical addresses by a page table entry
(PTE) shown in Figure 14 and described in Table 12.

Protection check before valid checlt-The page table entry contains a valid bit that controls the
validity of the modify bit and page frame number field. The protection field is always valid and is
checked first.

OWN

Figure 14 • MicroVAX 78032 Page-table Entry Format

Table 12 • MicroVAX 78032 Page Table Entry Descriptions

Bit

Descriptions

31

V (Valid bit)-Governs the validity of the M modify bit and the page frame number (PFN)
field. V = 1 for valid; V =0 for not valid.

30:27 PROT. (ProteCtion field)-Describes the protection for the page. This field is always valid
and is used by the hardware even when V = O.
26

M (Modify)- This bit is set (= 1) if the page has already been recorded as modified. M = 0
if the page has not been recorded as modified. Used only if V = 1.

25

o(Zero)-reserved.

;24:23 OWN (Owner)-reserved.
22:21

0 (Zero)-reserved.

20:00 PFN (Page frame number)-The upper 21 bits of the physical address of the base of the
page. Used if V = 1.

1-22

Confidential and Proprietary

...

Preliminary

MicroVAX180.32

System Space Address ltansIation
A virtual address with bits 31atld 30 equal to 2 is an address in the system virtual address space
that is mapped by· the system page table (SPT). The·SPT is located in physical memory and its
location and lengthane defined by the system base register (SBR) and the system length register
(SLR), Figure l5.The SBR contains the phys~cal~.s of thesystempagetl!.ble.TheSLRCQ~s
the size of the SPT in longwords that is the·l1\Ul;lh« of page table entries. The page table entry
pointed to by the S~R 1l1jlps to the firstpag¢ o£SYStemvirnW~ spa(;e.that is virtual~byte
ad~ss 80000000 (hexadecimal);.
Figure 16 shows the translation of a system virtual adSVA <08:00 >

Figure 15 • Mi&roVAX 78032 System Mapping Register Formats

313029 .
SVk
ISYSTEM VIRTUAL,
ADDRESS)

00

0908

2

BYTE
E,~TRACT ANP

CHECt< LENGTH

0:2 0100

2322

31

o

o
ADD

SBR,

FeTCH

3130

2120
PFN

PTE,
CHECK ACCESS

THIS ACCESS,q.tECK
tN CU'flP:ENT' MODE

0908

00

PHYSICAL ADR OF DATA,

Figure 16 • MicroVAX 78032 System Virtual.to.Physical Address Translation

Confideritial"and Proprietary

1·23

MicroVAX78032

Preliminary
Process Space Address Translation

.,

A virtual acldress witllbit J 1 s.,t to 0 is an adpress in the process vil'tl,lal address space. The process
space is divided into two equal sized, sepaqltely mapped regions. If virtual address bit 30 is set to 0,
the address is in regionpO. If virtual address bit 30 is settol, the address ism region PL
PO region addreSs transIation~ The pO region ofptocess address space is specified by the PO page
table (POPT). The'POPT is located in system virtual address and its location and length are defined
by the PO base register (POBR) and the PO length register (POLR), Figure 17. The POBR contains the
system virtual address of the PO page table. The POLR contains the size of the POPT in longworos,
that is, the number of page table entries. The page table entry pointed to by the PO base register
maps the first page of the fO region of the virtual
address space, that is,
.
., virtual byte address O. .
Figure 18 shows the translation of a PO virtual address into a physical address.
The algorithm used to generate a physical address from a PO region virtual address is

PVAYTE ... POBR + 4 *PVA < 29:09 >
PTE_PA= (SBR + 4*PViLPTE < 29:09 > ) < 20:00 >'PVAYTE < 08:00 >
PROe_PA = (PTE_PA)< 20:00 > 'PVA < 08:00 >
020100
SystEM VIRTUAL LONGWOAI> AODRESS OF POI'T

MBZ

:POBR

Figure 17 • MicroVAX 78032 PO Region Mapping Register Formats
313029

0908

00

PVA:

(PROCESS VIRTUAL
ADDRESSI

0

BYTE
EXTRACT AND

CHECK LENGTH

31

020100

2322

0

ACD

31

POOR:

0100

I:::::::: :+:+~+HDH+~:::: ::::: If I
I :::::::: :s:S:+f+:AHO~P~E: : : : : : : : : : Ii I
VIStOS

31

0100

FETCH BY SYSTEM SPACE

TRANSLA lION ALGORITHM,
INCLUOING LENGTH AND
-KERNel MODE ACCESS CHECKS

3130

2120

PTE:

00
PFN
TH IS ACCESS CHECK
IN CURRENT MODE

CHECK ACCESS

29

09 OIl

PHVSICALADR OF DATA:

Figure 18 • MicroVAX 78032 PO Virtual-to-physical Address Translation
1·24

Confidential and Proprietary

00

MicroVAX78032
PI region address translation-The PI region of the address space is specified by tbe PI page table
(PIPT). '!be PIPT is located in the system virtual address space and its location and length are
defilledrby the PI base register (PlBR) and the PI length register (PILR) , shown in Figure 19.
Because the PI space eXpands toward smallet addresses, and a consistent hardware interpretation
of the base and length registers isaesirable,tl1eP1BR and PI LR contain the portion ofthe P1i:!!pace
that is nbt accessible. Note tharP1LR containsthefitimber of nonexistent PTEs. PIBR connUns the
system virtual address of what would be the PTE for the first page of PI, which is the virtUal byte
address 40000000 (hexadecimal). The address in the PIBR may not be a valid system virtual
address; however, all the addresses of PTEs must be valid system vit:tval ~~.1?i&qre 20s1;wws
the PI virtual address to physical address translation.
The.alg<)rithm used to gen~rate ~ physi~aladctre~s£rolllapr~onyirtualaddress i~
PVAJTE =PIBR + 4*PVA <29:09 >
PTEJA= (SBR +4*PVA-l'TE <29:09.~)< 20:00 > 'PYAJTE < 08:00 >
. . PROCYA = (PTEYA) ~20:oo> ''pyA -< 08:00 > .
.

I::: ~: ::: I:: ;:+~~?+H+~~f+:::: I
31

,

2221

",.,,' '-

.',

00

-"

, ., 1 ',,, "" "''',, ",,,,' - ,

,P1LR

Figure 19 • MicroVAX 780)2 PI ~~Mapping Register Formats

0909
PVA,
(PROCESS VIRTUAL
ADDRESS)

00
IIYTE

EXTRACT AND
C-HECK -LENGTH

23 22

31

o
ADO

moo

~

P1BR,

I:::::::: :+:vH+H+1+~::: :::.::: If!
I: :: ::::::H~++~+~+H :::,:: ::: :1 fl
YIEL.OS

~

moo

FETCH BY SYSTEM SPACE
TRAN$LAiIQN ALGORITHM,

INCLUDING LENGTH AND
~Ea"E~JIIOOli

3130

ACCESS CHECK'>

00

2120

PTE,

PFN

nus ACCE;SS c;t-tECK

CHECK ACCESS

IN CURRENT MODE

29

0908

00

PHYSICAL ADR OF DATA,

Figure 20· MicroVAX 78032 PI Virtual-to-physicalAddress Translation
ConfidentisU Ilnd Proprietary

1-25

" ary,
Prelimin

MicroVAX 78032

Memory Management Faults
The two types of fawts ~sociated with memory mapping and.protection are translation not valid
and access control violation. An access con;trpl violation fault exists when the protection field of
the PTE indicates that. the intended page reference in the specified access mode is illegal. A
tran$1ation not-valid fault exists when a read .or write reference is attempted through an invalid
PTE. If ~ access control violation and a translation not-valid faults occur, the access control takes
precedence .

• Exceptions and Interrupts
During system operation, events that are not related to the current process can require service.
These events cause the processor to interrupt the process being executed and transfer control to a
program that will service the event.
An exception is the notification of an event that is relevant to the currently executing process and
normally invokes a program in the context of the executing process.
An interrupt is the notification of an event that is relevant to other processes or to the system and is
serviced in a system wide context. The system wide context is defined as executing on the interrupt
stack. The priority associated with the interrupt is the interrupt priority level. (IPL).

Interrupt Priority Levels
The VAX architecture includes 31 priority interrupt levels. Fifteen levels (1 through F hexadecimal)
are software related and 16 levels (10 through IF hexadecimal) are hardware related. Table 13 lists
the interrupt priority level assignments for the MicroVAX 78032.

Table U • MicroVAX 78032 Interrupt Priority Level Assignments

IPL Level
Interrupt Condition
(hexadeclmal)
IF

unused

IE

PWRFL asserted

18-1D

unused

17

iRQJ

16

INTTIM asserted

16

IRQ2

asserted

15

nmI

asserted

14

IRQO

asserted

10-13

unused

01-0F

software interrupt request

1-26

asserted

Confidential and Proprietary

...

MicroVAX 78032

Interrupt Requests
Interrupt requests are serviced during the execution of long interactive instructions such as string
instructions and at the completion of an instruction.
Urgent interrupts-....Interrupt levellE (hexadecimal) indicates a powerfail condition and requires
immediate service in the MicroVAX 78032.

Device internlpts-Interrupts 14 through 17 (hexadecimal) are assigned to the peripheral devices
operating with the MicroVAX 78032.

Software interrupts-Interrupts 1 throughF are used by the MitroVAX 78032 system to generate
.

software controlled interrupts.

.

Interrupt Registers
The interrupt system is controlled by the int~ptpri¢rity level register (IPL) , the software
interrupt request register (SIRR), and the soft~interruPt'~ary register (SISR).
~'~

-

, "

- ,,'

Software interrupt summary Ngister-Thesof~inUU'rupt summary register (SISR), shown in
Figure 21, is a privileged register that recordSl:lI:t~.So(~ interrupts. A 1 is set in the bit
position corresponding to levels on whichsoit\1nll'¢ in~pts:~ pending.
31
:SISR

MOZ

Figure 21 • MicroVAX 78032 Software InJ:emtptSummary Register Format

Software interrupt request register-The software interrupt request register (SIRR),. shown in
Figure 22, is a write-only, 4-bit privileged register used for rrialdng a software lliierrupt request.
The software requests an interrupt by writing the appropriate interrupt leveltothe SIRR. Once a
software interrupt request is made, the corresponding bit in the SISR is set. The processor will clear
the bit in the SISR when the interrupt has beenacknowl~.
31

0400

flO

I:::::::::::::H+? ::::::::::H+Hs,RR
Figure22 • MicroVAX 78032 Jntemtpt Request Regis~ Format

Interrupt priority level register-Writing to the IPL register, shown in Figure 23, loads the
processor priority field in the processor status longwood (PSL).

31

05 04

flO

I:::::::::: :+iRf~ +~Ho: ::::::I:::: I

:IPL

'--v---"
PSL<20:18>

Figure 23 • MicroVAX 78032 Interrupt Priority Level Register Format
Confidential and Proprietary

1-27

mDBlllD

MicroVAX 78032

. Exceptions
An exception is an event that is the direct result of executing a specific instruction. Exceptions also
include errors automatically detected by the proCessor, such as improperly formed instructions.
The MicroVAX 78032 recognizes the six classes of exceptions summarized in Table 14.

1Bble 14 • Mic.roVAX 78032 Classe.s of Exceptions
Exception Class

Condition

arithmetic traps/faults

integer overflow trap
integer divide by zero trap
subscript range trap
floating overflow fault
floating diVide by zero fault
floating underflow fault

memory management exceptions access control violation fault
translation not valid fault
operand reference exceptions

reserved addressing mode fault
reserved operand fault or abort

instruction execution exceptions

reserved/privileged instruction fault
emulared instruction fault
extended function fault
breakpoint fault

tracing exceptio~

trace trap

.system failure exceptions

memory read error abort
memory write error abort
kernel stack not valid abort
interrupt stack not valid abort
machine check abort

System Control Block
The system control block (SeB) is a page in physical memory that contains the vectors for servicing
interrupts and exceptions. Table 15 shows the type and location of the vectors. The SCB is pointed
to by the system control block base register (SCBB), Figure 24.
313029
Maz

PHYSICAL LONGWOAD ADDRESS OF sea

:SCBB

Figure 24 • MicroVAX 78032 System Control Block Base Register Format

1-28

Confidential and Proprietary

Preliminary
Table 15- MiaoVAX 78032 System Control Block Vectors

Vector
Address

Type

~tor

Name

(hexadecimal)
00

unused

abort

04

machine check

abort

08

kernel stack not valid

interrupt

OC

powerfail

fault

10

reserved/privileged
instruction

fault

14

extended instruction

faUlt/abort

18

reserved operand

fault

IC

reserved addressing mode

fault

20

access control violation

faUlt

24

translation not valid

fault

28

trace pending(TP)

f~t

2C

breakpoint instruction

30

unused

34

arithmetic

38-3C

unused

trap

40

CHMK
CHME

trap
. trap

4C

CHMS
CHMU

50-80

unused

interrupt

84

software level I

in~rrupt

88

software level 2

interrupt

8C

soft\yare level 3

int;errupt

9O-BC

sOftware levels 4-15

1nterrupt

CO

interval timer

C4

unused

fault

C8

emulation start

fault

44
48

trap/fault

trap

Confidential and Proprietary

1-29

...

MicroVAX.1S().32
Table 15· MicroVAX 780.32 System Control Block Vectors (Cont.)

Vector

Address

Vector
Name

Type

(hexadecimal)

CC

emulation continue

DO-FC

unused

interrupt

lOO-1FC

adapter vectors *

interrupt

200-3FC

device vectors *

*Used by the MicroVAX 78032 to directly vector interrupts from the external bus. The vector is
determined from bits < 9:2 > of the value supplied by external hardware. If bit < 0 > of the offset
is 1, then the new IPL is forced to 17 hexadecimal. Only device vectors in the range of 100 to 3FC
hexadecimal should be used, except by devices emulating console storage and terminal devices .

• Process Structures
A process is .the basic entity scheduled by the system software. The context of the current process is
contained in the process control block (PCB) shown in Figure 25. The PCB is located in physical
memory and is pointed to by the process control block base register (PCBB) shown in Figure 26.

00

31
KSP

:PCB

ESP

+4

SSP

+B

US!'

+12

RD

+16

Rl

+20

R2

+24

R3

+28

R4

+32

RS

+39

RS

+40

R7

+44

RS

+48

R9

+52

RIO

+66

+60

Rll
AP {R121

+68

FP{RI3)

+72

PC

Mez

PSL

+76

POBR

+80

I tSr I MBZ I

POLR

+84

P1LR

+92

P1BR

PMEI

MBZ

I

+8B

NOTE: THE PME FIELD IS UNUSED.

Figure 25 • MicroVAX 78032 Process Control Block Assignments
1·30

Confidential and Proprietary

-

MicroVAX 78032

Figure 26 • MicroVAX78032 Process Control Block Base Register Format

• Processor RegiSters
The MicroVAX 78032 processor contains many registers~t;~ac<:;essible to the user. These
registers are listed in Table 16 and.~ groupsdc;~ribed by the following categories.
1 = Registers implemented by the MicroVAX 78032 as specified l;)ytheMicroVAx Architecture.
2=Registers implementedooly by the MicroVAX 78032,
3 =Registers passed to the external logic' via the. external processor .register .protocol. If not
implemented externally, they at'e read as ~ and result in no operationdurlng a write cycle.
4 =Register access is not allowed (reserved operarid fault).

Table.
16 • Mie1'OVAX,78632 Intemai Proeessor~
.....
.
';, . . ' , . :
.~
A-lnemo.uc 11ype.
..

Number Register Name

Category*

2

Supervisor Stack Pointer

3

User Stack Pointer

KSP
ESP
SSP
USP

4

Interrupt Stack Pointer

ISP

5

reserved

4

6

reserved

4

7

reserved

4

8

PO Base Register

9

POkngth Register

10

PI Base Register

11

PI Length Register

12

System Base Register

13

System Length Register

14

reserved

4

15

reserved

4

16

Process Control Block Base

0

Kernel Stack Pointer

1

Executive Stack Pointer

POBR
POLR
PIBR
PILR
SBR
SLR

PCBB

RW PROe
~ t£ ;"
RW PROe
RW PRDe
RW PRDe
RW epu

InitiaJile.

',",

RW

RW
RW
RW

RW
RW

RW

1
1

,

PRDe
PRot
PROC
PROC
CPU
CPU

PROC

1
1
1

1
1
1
1

1
1

1

*Refer to Processor Register description.
Confidential and Pr,oprietary

1-31

~DlllmD·

MicroVAX78()32
Table 16 .. MieroVAX 78032 Internal Processor Registers (Cont.)

Number Register Name

Mnemonic: Type Scope Initialize Category'"

17

Syst\!m Control.6lock Base

18

Interrupt Priority Level

SCBB
IPL

RW
RW

CPU
CPU

yes

1

19

ASTLevel
Software Interrupt Request

RW
W

PROC yes
CPU

1

20

ASTLVL
SIRR

21

Software Interrupt Summary

23

CMI Error Register

CPU
CPU
CPU

1

Interprocessor Interrupt

RW
RW
R

yes

22

SISR
IPIR
CMIERR

24

Interval Clock Control
Next Interval Count

26

Interval Count

CPU
CPU
CPU

27

Time Of Year

28

Console Storage Receiver Status

RW
W
R
RW
RW

yes

25

ICCS
NICR

29

Console Storage Receiver Data

30
31

Console Storage Transmitter Status
Console Storage Transmitter Data

32

Console Receiver Status

33

Console Receiver Data

34

Console 'Ihmsmitter Status

35

Console Transmitter Data

36

Translation Buffer Disable

37

Cache Disable

38

ICR
TODR
CSRS
CSRD
CSTS
CSTD

R
RW
W

RXCS
RXDB

RW
R

TXCS
TXDB
TBDR

RW
W
RW

Machine Check Error Summary

CADR
MCESR

RW
RW

39

Cache Error

CAER

40

Accelerator Control/Status

RW
RW

CPU
CPU
CPU
CPU

1

1

4
4
2
3

3
3
3
3
3

CPU

3

CPU
CPU
CPU

3
3
3

CPU
CPU
CPU

3

CPU

3

CPU
CPU
CPU
CPU
CPU
CPU
CPU

3

3

3

4

45

ACCS
Console Saved Interrupt Stack Pointer SAVISP
SAVPC
Console Saved PC
SAVPSL
Console Saved PSL
WCSA
WCSAddress
WCSD
WCSData

46

reserved

4

47

reserved

4

41
42
43
44

R
R
R
RW
RW

2

2
2

4
4

*Refer to Processor Register description.

1-32
-~

..~"" ..... ~--~~-~.

Confidential and Proprietary
~-;;.."."....<---~~~,,"'-~ --.>-.---,,......~-"-~

~~~--=~

-

MicroVAX78032
Tablel6- MicroVAX 78032 Internal Processor Registers (Cont.)

Number Register Name

Mnemonic Type Scope Initialize Category*

48

SBI Fault/Status

SBIFS

RW

CPU

3

49

SBI Silo

SBIS

R

CPU

3

50

SBI Silo Comparator

SBISC

RW

CPU

3

51

SBI Maintenance

SBIMT

RW

CPU

3

52

SBl Error Register

SBIER

RW

CPU

3

53

SBI Timeout Address

SBlTA

R

CPU

3

54

SBI Quadword Clear

SBIQC

W

CPU

3

55
56

10 Bus Reset

IORESET. W

CPU

3

Memory Marutge¢ent Enable

MA~EN:

RW

CPU

57

Trans. Bu£. Invaliqate All

TBlA

'SQ

CPU

1

58

Trans. Buf. Invalidate Single

TBIS

W

CPU

1

59

Translation Buffer Data

TBDATA

RW

CPU

3

60

Microprogram Break

M;6RI<

RW·· CPU

3

61

Performance Monitor Enable .

PM:£(·

RW·· PROC ...-

3

62

System Identification .

SID

R

CPU

1

6,3

Translation Buffer Check

?¥I

cPIJ

1

64:127

reserved

"-"..........'

';<'~ ;, " :'

yes

1

4

*Refer to ProcessOr Register description.

- Interfacing Requirements
The MicroVAX 78032 connects to memory, to external circuits, and to the powef&Ql.lrcethrougb
the connection pins on the package. The .following p~phs~inethe power,reset, and bus
connections and describe .the timing considerations for hLlSQpe~tion.
Power Connections
The MicroVAX 78032 requires a single 5 Vdc power supply. Eight pins are provided for power
connections; four VDD pins and four Vss pins. The VOD pins connect to 5 V and the Vss pins connect
to ground. The power decoupling and grounding is important. Decoupling the power supply is
implemented by connecting a capacitor between each VDD pin and its associated Vss pin as shown in
Figure 27. The recommended capacitor type is 10 I!f tantalum, + 1, -10%. The ground pins (Vss)
should be connected to the common ground for the power supply at the chip.
The MicroVAX 78032 internally generates the required negative voltage that is externally available
on the VBB pin. This voltage does not require filtering and the VBB pin must not be connected either
to ground or to 5 V.

Confidential and· Proprietary

1-33

Preliminary

MicroVAX78032

MicroVAX 78032

+5 Vo----'-'---l2
VCCI

16
ALL CAPACITORS
10".F TANTALUM. +1 -10%

Figure 27· MicroVAX 78032 Power and R.esetConnections

Reset and Powerup Requirements
The MicroVAX 78032 is reset by the following conditions.
1. When power is first applied, the RESET level must be held low for a minimum of 3.0 ms after

Voo has reached 4.75 V. To ensure that the internal voltages are stable before an operation
begins.
2. The RESET level must be held low for a minimum of 3.0 ~s if the RESET level is asserted after
VOD has been at 4.75 V for more than 3.0 ms.

When RESET level is asserted, the MicroVAX 78032 stops executing instrucdonsand enters the
restart process. The restart process sets the CPU to a known state and then passes control to user
code beginning at physical address 20040000 (hexadecimal). For a description of the restart
process, refer to the MicroVAX 78032 Central Processing Unit User's Guide.

Bus Connections
Figure 28 shows a typical interface configuration of the MicroVAX 78032 and includes control
signals and bus connections. The directions of the input and output signal are indicated by the
arrows on the lines.

1·34

Confidential and Proprietary

Preliminary
II'ITERIIUPT
CONTROL

OMA
CONnOL

{§
{=:

m

Hl.i."I'
.PWRFL

iNffiM

MicroVAX 78032
ERR
ROY

RDv
iiM<'3:O>

~

IIM<3:0>

iii
AS

55
AS

•

i5MR

i5MG

A

DAl<31 :00>

MlomVAX78032
CENTI\AL PRDCESSII"G
UNIT

i58e

vm

ADDRESS
LATCH

"

DATA
TRANSCEIVERS _

f f

-

I

~

I'"

y

,. > t.B0<3 .00

...

i5iiE
WR

MicroVAX 78132
FLOATIJ:oja

POINT

iPS
CLKI

l(

t.M<31:00>

.-~

w..,
-,I
Rffii

L
I
J

UN,.!'

CS<2:0>
CLKO

""""c

rn;
CS<2:O>

CLKO

Figtlre 28 • MicroVAX 78032 Typical IntCrfoce Configt:lrati,on

. BusCydes
A bus cycle will be initiated by one of the following conditions:
A microcycle is the bask timing unit for abus~cle. Amic.rqcyde-is shown ih Figure 29 and is
defined as four cycles of CLKO'{TI through T4}~
"

• Acknowledging an interrupt by reading the device interrupt vector.
• Transferring information from or to an external processor.

- - - - -.....- - - - -..'C.OCVCL.-----!
CLKO

Figure 29· MicroVAX 78032 Microcycle

1-35

. .Dill

Preliminary,

MicroVAX18032

CPU Read Cycle
The CPU uses a CPU read cycle to input information from memory or an 1;0 device. A CPU read
cycle timing sequence is shown in Figure 30. A CPU read cycle requires a minimum of 2.0
microcycles and may be extended for slower memory or devices.

MfCROCYCLE

MICROCYCLE

CLKO

OAI.,<:U:OQ>

______~~>---<~__.-oo-.e-~--~)r-------.----------~----~<

~~

:
I

~ ~I

I

,,~------~~------------~
"~-r----------~~

I

/'(
I

I

"'~~------~------~~~--I

CS<2:0>

Figure 30 • MicroVAX 78032 CPU Read Cycle Timing Sequence

1-36

)-

DATA

I
I,--_ _ _~

Confidential and Proprietary

MicroVAX18032
The first microcycle of a CPU read operation is used to transfer the address and control information
and the data is latched into the CPU during the last microcyde.
The sequence of events for a CPU read operation follows:
1. The physical (longword) address is driven onto DAL < 29:02 > and the memory operand length
onto DAL<31:30> by the CPU.
2. The WR signal is unasserted and CS <2:0> are asserted as required to indicate the type of bus
cycle being performed.
3. The BM < 3:0 >llnes are asserted as requited.
4. The AS signaJ is asserted to indicate that the address is valid and can be latched for
de multiplexing and to qualify CS < 2:0> and BM < 3:0> information.
5. The i'5S signal is asserted to indicate that the bus is
to receive the requested information.
The DBE signal is also asserted at this time and can be used to control the DAL bus transceivers.
6. If the requested data is valid, itcan be placedonthe bus duringT30ft~~~t~e, the
external logic asserts the'RD? signal; and the miciocyclethat fOllOWs is the last for thisbus cycle.
If theRDY signal is not asserted by the end of the cUrrent micfuCycle, thebuscyde will be
extended by one microcycle.
If a bus error occurs, external 'logic responds by asserting' the 'E'Usignal.. If '~'is asserted
during a data read, the CPU ignores the data onDAL< 31:00 >,' extends the bus cycle by one
microcycle, and initiates a nw:hlne ch~~k. IftheERR,signalis~tetld~~aninstruction
read witheS <2:t1> •..; 100, ,the, CPU ", stpps...prefetd1ing:"and"whentheitist:ruCtion buffer is
empty; the CPU will attempt to £~tch the nextinstructiotl,.~, ~~h a data rea,d cyqe\ The ~
signal takes preceden~ overtheR:iJ'2' signal;Theas~ttitlno£eithe:r RD"Vor tileERR signals
.'
.
.
results in the completion of the current bus cycle.

free

7. The requested data is latched into the CPU and the DS signal is deasserted.
8. The AS and DBE signals aredeassertedto end the, bus cycle.

CPU Write Cycle
The CPU uses a CPU write cycle to transferWormationto~emol:Y or,to an 1/0 device. A CPU
write cycle, shown in FiguJe 31, requires a minimum of 2 microcycles and may he extended for
slower memory or devices. '
" '
"., -

1·37

-----

___

'-----~----_=

..0'

MicroVAX78032

CLI(O

DAl~1:og:..

I

I

'a

--/"1I
/

I

I
I

--.-/:
~~~I~

w.~
CS<2:0>

ADDRESS

>eX- - - - - . . . - - - - - - ,x==:
DATA

I

"

'--------,------------/:
I
I
~'-----~/

/:

"'"

"'---:---------......

I

~

----~------------~---------------t=J(

--ex

t=

I

I

I

I

_h~~G_
I

I

I

I

Figure 31 • MicroVAX 78032 CPU Write Cycle Timing Sequence .

The first microcycle of a CPU write operation is used to transfer the address and control
information and the valid data is written during the second microcycle.
The sequence of events for a CPU write operation follows:
1. The physical (longword) address is driven onto DAL < 29:02> and the memory operand length
.
is onto DAL<31:30> by the CPU.
2. The WR signal is asserted and CS <2:0> lines are asserted as required.

3. The BM < 3 :0 > lines are asserted as required.
4. The AS signal is asserted to indicate that the address is valid and can be latched for
demultiplexing and to qualify the CS<2:0> and BM<3:0> information.
5. The DBE signal is asserted and can be used to control the DAL bus transceivers.
6. The CPU drives data onto the DAL bus and asserts the DS signal to indicate that the data is valid.
7. If the data can be read during the next microcycle, the external logic asserts the RDY signal and
the following microcycle is the last for this bus cycle. If the RDY signal is not asserted by the end
of the current microcycle, the bus cycle will be extended by one microcyde.

If a bus error occurs, external logic responds by asserting the ERR signal and the CPU initiates a
machine check. The ERR signal takes precedence over the RDY signal.
The assertion of either the RDY or ERR signals results in the completion of the current bus cycle.

1-38

Confidential and Proprietary

-

MicroVAX18032

8. The DS sign,al is deasserted to indicate that the data will be removed from the OAL bus by the
CPU.
9.· The AS and DBE signals are deasserted to end the bus cycle.

Interrupt Acknowledge Cycle
An interrupt acknowledge cycle is used to acknowledge an interrupt request from an I/O device,
and to read a vector. The structure of this cycle is the same as a CPU read cycle shown in Figure 30.
The first microcycle of an interrupt acknowledge cycle is used totransfe;1.' the interrupt priority level
(IPL) that is being acknowledged and the interrupt vector from the interrupting: device is latched
into the CPU during the last microcycle.
The sequence of events for an interrupt acknowledge cycle is as follows:
1. The CPU places the IPL of the interrupt being acknowledged on DAL<04:00>.
OAL<29:05> lines are zero and the DAL<31:.30> lines are =10.
2. Lines CS < 2:0 > are asserted to indicate an interrupt acknowledge cycle .

.3 . Lines BM < .3 :0 > are all asserted and the WR signal is unasserted.
4. The AS signal is asserted to indicate that the IPL level on the OAL < 04:00 > lines is valid.
5. The OS is aSserted to indicate that the bus can receive incoming data. The DBE signal is also
asserted at this time and can be used to control the DAL bus transceivers.
6. If no error occurs, the· external logic responds by placing the interrupt vector on the
OAL < 09:02 > lines the normal Q-bus processing flag on OAL < 00 >, and by asserting the
ROY signal. The OAL < 15:10,01 > lines mustbe a high or low level in aceqrOancew,iththesetup
times specified in the timing diagrams.
7. If an error occurs, the external logic asserts the ~RR signal and the CPU cancels the cycle and
ignores the data on the OAL bus.
.
8. The interrupt vector is latched into the CPU and the i5S signal isde~~erted.
9. The AS and DBE signals are deasserted to end the l;>uscycle. .

DMACycle
A DMA cycle shown in Figure 32, is used by the CPU to relinquishcontrolofthe DAL bus and
related control signals upon requesdro~ a DMAdevice or anot.h~CPU.
The sequence of events for a DMA ,cycle is

1. The DMA device requests use of the bus by asserting thepMR signaL
2. The CPU samples the OMR line for a DMA request during each microcycle unless the current bus
cycle is a read lock cycle.
3. The CPU causes theDAL< 31:00 > , AS, i5S,013E,WR,B¥~3:0>" andCS<2:0> lines to
become a high-impedance and asserts the 'f.5MG line to grant the DMA device use of the DAL
~s.
.
.
4. When the requesting device is finished using the bus, it deasserts the i5MR signal, and the CPU
takes control of the bus.

Confidential and Proprietary

1-39

mllllllB
I"

~
DMii

i5I.1G

CML<31:OU·

D-l:_:...

d_. '.

.......;;.l.Uu.u.uu:,].•

I

MicroVAX t80'32

t,

~,~-------\(/
,,-----"')~
- - - \ 'I

~:.

~\~------------~

>

----i

~--------~--------------~~

----i

~------------~------------~~

----i
---\
----i

\----------------~c==

AS

os

We

aM,
C5<1~,

Figure 32· MicroVAX 780}2 DMA Cycle Timing Sequence

• External Processor Cycles
The CPU uses external processor cycles to communicate with external processors and external
processor registers.

External Pmc:essor Read Cycle
The external processor read cycle shown in Figure 33 is used to transfer information from an
external processor or external processor register to the CPU. An external processor read cycle
requires one microcycle.

The sequence of events for an external processor read cycle is:
1. The CS < 1:0> lines are ~serted as required and the CS21ine is sustained at a high level.
2. The WR signal is not asserted for a read cycle.
3. The EPS signal is asserted to indicate that an external processor bus cycle is in process and to
qualify the CS < 2:0 > lines.
4. The external processor places the requested information on the DAL.
5. The requested information is latched into the CPU and the EPS line is deasserted.
6. The external processor removes its information from the DALbus to end the bus cycle.

External Pmc:essor Response Cycle
The external processor response cycle shown in Figure 33 is used to transfer information and a
completion or confirmation signal from an external processor or external processor register to the
CPU. An external processor response cycle requites one microcycle.

.1-40

Confidential and Proprietary

Preli11Ull8tY.
.
T4

\'

Tl

.

~

ClKO

I

I
I·
DAl<31:00>

I '
I

I
I

CS

CS2

----IX

'l

lX~--"--~----,x,---:--_
I

I

Ir-----~--------~--------~

---~

r'-----

\~.~~~~I

--

Figure 33 • MicroVAX 78032 External Processor Read/Re~me Cycle Timing Sequence

The sequence of events for an external processor response cycle is:

1. The CS < 1:0> lines are asserted as required and the CS.t~i~:sus~athigh level.
2. TheWR signal is not asserted fo:r a read cycle.
. .
3. The EPS signal is asserted to indicate that an external pmcessor bus cycle is in process and to
qualify the CS<2:0> lines.
.
4. The external processor places the requested information on the DALbus and optionally drives
the CS2 line low.

5. The requestedinfotmation is latched intOthe'CPUnnd theE.PS signal is deasserted.
6. The external processor removes its information from the DAL bus and deasserts CS2, if asserted,
to end the bus cycle.

Confidential and Proprietary

Preliminary

MicroVAX 78032

External Processor Write Cycle
The external processor write cycle shown in Figure 34 is used to transfer information from the CPU
to an external processor or external processor register. An external processor write cycle requires
one microcycle.
The sequence of events for an external processor write cycle is:
1. The CS < 1:0> lines are asserted as required and the CS2line is sustained at high level.
2. The WR signal is asserted .

.3. The EPS signal is asserted to indicate that an external processor bus cycle is in process and to
qualify the CS < 2:0 > lines.
4. The CPU drives the information onto the DAL bus.
5. The BPS signal is deasserted and the external processor reads the infromation to the bus cycle.

MICROCYCLE

CLKO

I
I
DAL<31:00>

EPS

--<

)

(

I

I

~I

~

I

WR

DATA:

~
I

CS<2:0>

(c:X

/

>-

I
I

~
I

b
I

Figure 34 • MicroVAX 78032 External Processor Write Cycle Timing Sequence

• Memory Access ProlDcol
The 28-bit address provided by the MicroVAX 78032 on DAL < 29:02> is a longword address that
uniquely identifies one of up to 268,435,456 32-bit memory locations. The chip provides four-byte
masks, BM < 3:0>, to select byte accesses within the 32-bit memory locations. No restrictions
exist on data alignment. The data may start at any memory address except for the aligned operands
of ADAWI instruction and the interlocked queue instructions.
The memory consists of four parallel 8-bit banks, each of which receive the longword address on
the DAL<29:02> lines in parallel. Each bank reads or writes one byte of the data bus
(DAL<31:00», when its byte mask signal is asserted as shown in Figure 35.

1-42

Confidential and Proprietary

Preliminary

MicroVAXi8032

CPU read or write operations are grouped into one of the following categories-byte access, word
access within a longword, word access across longwords, aligned longword acceSs, and unaligned
longword access. Quadword accesses are treated as two successive longword accesses, with no
optimization. Byte accesses, word accesses within a longword, and aligned longward accesses
require one bus cycle. Unaligned longword acCesses and word accesses that cross a longword
boundary require two bus cycles.

8M<1>

..

. 8M

,~~

BBITS

BBITS

BBITS

OAL<31::M>

I>AL<23;16>

I>At<1.5;(11:>

semi

OAL<29:02>-

I>At<07:00>

Figure 35 • MicroVAX 78032 Memory Organization

. External Processor Protocols
External processor protocols allow the MicroVAX 78032 to communicate efficiently with one or
more external processors. Two external processor protocols exist-one for communicating with the
optional floating-point unit and the second for communicating with processor register logic.

Floating-Point Unit Protocols
The optional floating-point unit (FPU) is coa.trolled by the CPU. When the CPU receives afloatingpoint instruction, it passes the opcode and operands to the FPU for processing. The CPU waits for
the FPU to complete the operation and then requests status information and the processing results.
The FPU protocol is as follows:
1. Command transfer-The CPU performs an external processor write cycle to ttansmit a
command to the FPU. During this cycle, the CS contains 00 indicating a FPU command
and the opcode of the floating-point instruction is placed on the DAL < 08:00 > lines.
2. Operand transfer-The VAX opcode determines the number and data type of operands to be
transferred from the CPU to the FPU. The CPU performs one or more external processor write
cycles to transfer the operands. During these cycles, the CS < 1:0> lines are equal to 01 (data
ttansfer), and the DAL< 31:00 > lines contain the data to be transferred.
Confidential and Proprietary

1-43

Preliminary

MicroVAX'78032

3. Operand processing-While the FPU.is processing the operands, the CPU checks to determine
.where the operation is completed by executing extemalprocessor response enable cycles.
4. Status transfer-When ·the. FPU has finished processing the operands, it ·responds to the next
external processor response enable cycle by placing status information on the DAL<05:00>
lines and by driving the CS2 bus low. The CPU responds to the CS2 low signal by reading the
status information on the DAL < 05 :00> lines.
5. Result transfer-After reading the status code, the CPU may initiate one or more external
processor read cycles to transfer the result operand(s). During these cycles, the CS < 1:0> lines
are equal to 01 (data transfer), and the DAL<31:00> lines contain the data to be transferred.
The VAX opcode determines the number and data type of the operand(s) to be transferred from
the FPU to the CPU.

Register Protocols
The external processor register protocol permits the external logic to implement processor register
functions that are a part of the MicroVAX architecture but are not implemented in the hardware of
the MicroVAX 78032. Refer to Table 16 for the processor registers implemented by the MicroVAX
78032. The following CPU protocols are used with a move from processor register (MFPR) or move
to processor register (MTPR) instruction to access a register not contained in the CPU.
Read from processor register-The read from processor sequence is shown in Figure 36. This
sequence is performed when an MFPR instruction is used to read data from processor registers 25
through 39,48 through 55, or 59 through 61. The protocol is as follows:
,
1. The CPU initiates an external processor write cycle to specify the register number. During this
cycle, the CS < 1:0> lines equal 10 to indicate to a non-FPU command, the DAL < 31 > lines
equal 1 (read register), and the DAL<05:00> lines contain the register number specified by the
MFPR instruction.
2. The CPU waits one cycle and then executes an external processor response cycle to read
the register data. If the CS2 line is driven low by the external logic, the data on the
DAL<31:00> lines is the result of the MFPR instruction. If the CS2line is high, the CPU
returns zero as the result.

i_i"
I

I

I

,

I

I

wo~
-,., =:=x,.-------..~(««~<<(c=
=::==>'
~%««<{I««(«<{~««»)J~J))J$_
\ -----1--1=
1

I " ,

cs<'>

IiXHPoNAI. i"fIOC~SSQR
COMIoU./oiD (:'f(:U

NON·~f'lI

I

Nt).O~ "

E)ITIlA"",,U l"kOCES$OP

R£.,t,DIk(SP(l~ cvcv

Figure 36· MicroVAX 78032 Read from Processor Register Timing Sequence
1-44

Confidential and Proprietary

I

-

Preliminary

....

MicroVAX780J2

Write to processor regj.ster.....The write to processor register sequence is shown in Figure 37. This
sequence is performed when an MTPR instruction is used to write data to· processor registers 25
through 39, 48 through 55, or 59 through 61. The protocol is as follows:
1. The CPU initiates an external processor write cycle to specify the register number. During this
cycle, the CS < 1:0> lines equal 10 indicating a non-FPU command, the DAL31lines equal
o (write register), and the DAL lines contain the register number specified by the
MTPR instruction.

2. The CPU executes an external processor write cycle to write the register data. During this.-cycle,
the CS < 1:0 > lines equal 01 (write data), and the DAL< 31:00> lines contain the data specified
in the MTPR instruction.
3. The next cycle is not an external processor cycle.

MfCROCVCLE

MICROCYCLE
T1

T2

T4

T3

Tt

CLKO

I

llAL

~~~I~

I
I

W.a

_/H:

~,-_ _ _...........

I

WAiTEOATA

~

:.
:

~~______K=
I

CS<2>

I
I

. t

I

CS<1:0>

>--,,"-____. . ./..-lj>---

~I>_--------~<:E;,!!::~NUMBER)>---------~(

I

~--------r-------~K=
I

I

EXTERNAL PROCESSOR NON·FPU
COMMAND CYCLE

E,XTEfiNAL PROCESSOR WR!TE CYCL£

Figure 37 • MicroVAX 78032 Write to Processor Register Timing Sequence

de Elect:ric,.t Characteristics
The de electricalcharaeteristicsofthe MicroVAX78032 for the operating voltage and temperatw:e
ranges specified are listed in Table 17.

Confidentwa.ndProptieWy

1-45

. .Dill

Preliminary

MicroVAX 78032

Tablel7 • MicroVAX 78032 dc Input and Output Parameters
Parameter

Symbol

Requirements
min
max

Units

High-level input voltage

~H

2.0

V

Low-level input voltage

~L

High-level output voltage

VOll

Low-level output voltage

VoL

High-level output
voltage (EPS only)

VORl!

Low-level output
voltage (EPS only)

VOLIl

Input leakage
current (CS2)1

IlLS

Input leakage current

IlL

Output leakage current

IOL

Active supply current

0.8

Test Condition

V

V

loR = -400~
IoL = 2.0 rnA

V

loR =

0.2

V

IoL = 1.0 rnA

3.2

rnA

~N

-10

10

~

0.4

-10

10

~

Inn

700

rnA

Input capacitance

CIN

8.0

pF

Output capacitance

COUT

8.0

pF

V

2.4
0.4

2.6

-100~

= 0.4 V

< ~ < Vnn
0.4 < ~N < Vnn
loUT = 0, 1;. = OC

Note:
lWhen CS2 is sustained high by the CPU the maximum sustainer current (IlL) is 3.2 rnA.

ac Electrical Characteristics
The input and output signal timing parameters for the MicroVAX 78032 is shown in Figures 38
through 43.
The following notes apply to Figures 38 through 42 and their associated timing tables.

1. Formulas for the timing parameters are stated in terms of the CLK! period. CLKl
period = top =P.
2. All times are in nanoseconds except where noted.
3. The ac characteristics are measured with a purely capacitive load of 100 pF. Times are valid for
loads of up to 100 pF on all pins.
4. ac hlgh levels are measured at 2.0 volts and aclow levels at 0.8 volts except for the BPS and TEST
signals.
5. An ac hlgh level for the EPS and TEST signals are measured at2.2 volts and an ac low level at 0.6
volts.

6. S = the number of microcycles slipped during a bus cycle.
7. The sampling window is used to sample the following asynchronous signals: RDY, ERR, and
DMR. The RDY and ERR signals are qualified when AS is asserted. The DMR signal is qualified
by the AS signal being deasserted. The effect of these signals on the current bus cycle is as
follows:

1-46

Confidential and Proprietary

Preliminary

MicroVAX 7ICB2

• The bus cycle will conclude at the end of the current microcycle if the RlSY signal is asserted. and
the E'[R signal is not asserted throughout the sampling window while the AS sigr$lisasserted.
• If the ERR signal is asserted throughout the sampling window while the AS signal is asserted, the
current microcycle becomes an extension cycle and the bus cycle ends after the .next microgcle.

• If the RDY or ERR signals go through a transi~>duringtheS4.U1lplingwindowwhile.theAS
signal is asserted, the result is indeterminate,
• The DMR signal is sampled at every microcycleboundary.

• If the DMR signal is asserted throughout the sampling window and the AS signal is not asserted,
and the CPU has not locked the bus, the next mierocycle will be the beginning of a DMA cycle.

the .

• The first microcycle ~ter the end of the/current bl:'s cycle 'YPl pegin a I?MA. cyclei!
~
signal is asserted throughout the sampling wfuilow, theA:'Ssigril:ll is a~serted, and the CPUhas not
'.. . .. '
. ...
. .
locked the bus.
• A DMA cycle concludes at the end of the current microcycle if the DMR signal, is deasserted
throughout the sampling window.

8. There are no internal pull-up circuits on theIRQ<3:0>, N$FL, INTTIM, and HAlT lines .

. Specifications
The mechanical, electrical, and environmental·characteristiClS and specifications for the MicroVAX
78032 ate described in the following paragraphs. The test conditions for the dectrical values are as
follows unless specified otherwise.
• Operating temperature (T".): 70 0 e
• Ground reference (Vss): 0 V
• Supply voltage (Vnn): 4.75 V

Meclumical Coniiguration
The physical dimensions of~he MicroVAX 78032 68-pin cerquad package are contained in
AppendixE.

Absolute Maximum Ratings
Stresses greater than the absolute maximum ratingS may ¢3use. ~rmanent damage to the deviCe.
Exposure to thtl absolute maximum ratings for extended' periods may adversely affect the
reliability of the device.
• Supply voltage (Vnn): -0.5 V to 7.0 V
• Input or output voltage applied: -0.5 V to 7.0 V
• Active temperature (T.J: ooe to 70°C
• Storage temperature (1;): -55°e to 125°C
• Power dissipation: 3.5 watts (maximum)

Confidentialand.Proprietary

1-47

.".'i.

MicroV.Mf7S0j2

Preliminary

~otnrnended Operating COnditions

• Supply voltage (Vou): 4.75Vto·5.25V
• Active supply cu~nt: (100): 700 rnA (maximum)

• Relative humidity: 10% to 95% (noncondensing)
• Minimum airflow over chip: 250 linear feet/minute

Cloclc Input Tuning

Figure 38 shows the timirigspecifications for the eLKI input clock signal andTable 18 lists the
timing parameters indicated on the diagram.
.

Figure 38 • MicroVAX 78032 eLKl Timing Wave/orm

Table 18 • MicroVAX 78032 eLKI Timing Parameters
Timing Symbol

Signal Definition

tCIF

Clock in fall time

telH

Clock in high

8

telL

Clock in low

8

ten>
taR

Clockperiod

25

Requirements (ns)
min
max

Clock in rise time

Confidential and Proprietary

4.5

50
4.5

Preliminary
CPU Read and Write Cycle Timing
Figure 39 .shows the timing sequence for the CPU read cycle and Figure 40 shows the timing
sequence£or the CPU write cyele. The parameters for the CPU read arid write cycles
listed in

are

Table 19.

Figure 39 • MicroVAX 78032 CPU Read Cycle Timing Sequence

ConfidelltW a119 Propri~

--

Preliminary

MicroVAX 78032

Figure 40· MicroVAX 78032 CPU Write Cycle Timing Sequence

Confidential and Proprietary

-

MicroVAX lID)!
1iahle·19 ~ MieroVAX 78012 CPU aridWri1e CydePatameten

Tuning Sipal Defiaition
Symbol
Add.ress set up time to AS assertion

RequiremeDts (as).
max

min

2P-28

tASA

Address hold time after AS assertion

t ASHc

AS rising through 2.0 V to CLKO rising throughO;SV

P.;.)2J.

t ASLC

AS falling through 0.8 V to

1>-20

CLKO rising through 0.8 V
AS· assertion to DBE and i5S (read) assertion

3P-15

AS asSertion toreaddatavalid1
tASnsoAS

llP-.30+8PS

assertion to D'S assertion (write)

.5P+20

tASOZ

AS and DBE deassertion to data three-state

t ASHW

AS deassertion Width

.3P .

tASUI'

AS asserti~ width

121:':"1.5 +8),S

tASWB

tAS'IL'E

tAS'IL'lI

.3P+20

2P-20

(61'.,-45) +8PS

AS assertion to beginning of
RiJY, ERR, andi5MR sampling windoW

AS assertion to end of ID5Y,

6P+I0+8Ps·

ERR, and DMR sampling windoW
WR, BM < 3:0 >, CS <2:0> hold
time £;c,om AS deasser~

·P-l0

I:c:.uH

CLKO rising through 2.0 Vto AS rising thro~ O.S\1

P+15

tc.uL

CLKO rising through 2.0 V to AS falling through 2.0 V P-9

P+16

teo)

CLKO rising through 2.0 V to read data valid

P-5

tCDO

Write data hold time from CLKO rising through 2.0 V P-15

ter

CLKO fall time

trn

CLKO high

(2P-25) x.5

teL

CLKOlow

(2P-25) x.5

to.

CLKO period

50

tea

CLKO rise time

12.5

teWB

T4 CLKO rising through 2.0 V to beginning of
RDY, ERR, and DMR sampling window2

.3P-45

!:ewE

T4 CLKO rising through 0.8 V to end of
RDY, ERR. and DMR sampling window}

12.5

100

.3P+ 15

1·51

Table 19- MictoVAX i80:J2 'CPUaru:tWrite GydeParameters(Cont.)
Timing Signal Definition

Requirements (ns)

Symbol

min

tDBLW

DBE assertion width

9P-20+8PS

tooc

Write data set-up time to CLKO rising through O.S V

.3P-42

tOODS

Write data set-up time to OS assertion

.3P-30

t 05AS

DS deassertion to AS and DBE de assertion

P-15

tUSD

Read data hold time after l5S deassertion

0

tusm

DS assertion to read data valid'

tusoo

Write data hold time from DS deassertion

t050Z

i5S deassertion to read data high impedence

t DSHW

6P

t 05LWI

DS deassertion width
OS assertion width (read)

tDSL'lVO

DSassertion width (write)

6P-20+ SPS

tWEDI

Sampling window end to read data valid

t wllAS

WR, CS < 2:0 > .set up time before

max

SP-35+8PS
3P-20
3P:20

8P-20+SPS

5P-25
3P-.35

AS assertion

Notes:
, Read data is valid early enough if t ASDI or t 05m or tcmis satisfied.
1 Requirements for the beginning of the sampling window are satisfied if either t ASWD or tCWD is
satisfied.
) Requirements for the end of the sampling window are satisfied if either t ASWE or tcW! is satisfied.

1-52

Confidential and Proprietary

...

MicroVAX: 7$Ol2

Ditect Memory~ss CydeT"1Dline:
Figure 41 shows the timing ~u~nce for direct memory acces&(DMA) transfers and Table 20 lists
the timing parametetsfor the symbols referenced on the diagram. .

OAl

----\
----\
'ASG

AS
'G••

os
DiE

iiii<3:i>.
QK2~

----\

Figure 41 • DMA Timing Seq~e

1-53

MicroVAX 78032

Requirements (os)
min
max

Timing Signal Definition
Symbol

t ASG

AS and DBE deassertion to DMG assertion

4P-25

troH

CLKO rising through 2.0 V to
DMG rising through 0.8 V

P-7

P+16

teGL

CLKQ rising through 2.0 V to
DMG falling through 2.Ov

P-7

P+18

t OMKG

DMR to DMG latency

10P~25

60P + 20 + 16PS

tOMIlGU

DMR to DMG latency with
bus unlocked

10P-25

28P+20+8PS

DMR hold with respect to

0

tmwl

i5M:"G assertion
teOALZ

DMG deassertion to external
device three-state of DALS.

4P-20

teOMlt

DMG assertion to'i5MR deassertion
such that no more DMA cycles are
requested

6P-45 +
«N-2) X 8P)1

teRe

DMG rising through 2.0 V to
CLKO rising through 0.8 V

P-25

tmc

DMG falling through 0.8 V to
CLKO rising through 0.8 V

P-23

teL'&'

DMG minimum assertion width

10P-25+
«N-2) X 8P)!

tesz

DMG assertion to three-state
of AS, DS, DBE, WR. CS<2:0>
andBM <3:0>

-10

DMG deassertion to external
device of three-state of AS, DS,
DBE, WR,CS<2:0> <3:0>andBM <3:0>

0

3P-202

Notes:
• The number of microcyles that occur during a DMA grant. A DMA grant is issued for a minimum
of two microcycles.
2 At the conclusion of a DMA grant the external logic must deassert the AS, DS, and DBE signals
before the external bus drivers become a high impedance.

External Processor Cycle Timing
Figure 42 shows the timing sequence for the external processor read and response timing and for
the external processor write command timing. Table 21 lists the timing parameters for the symbols
referenced on the diagrams.

1-54

Confidential and Proprietary

-

MicroVAX.78032

ClKO·

DAL<31:00>

CS

CLKO

DAL<31:00>

Cs<2:(l>

External Processor WrlteICommand Timing

Figure 42 • MicroVAX 78032 External Processor Cycle Timing Sequence

Confidential andfroprietary

MicroV.t\X'8032
. Table 21 • MicroVAX 78032 External Processor Cycl~ Timing Parameters

TlR1in8 Signal De£iniiioQ

Requirements
Min.
Max.

Symbol
t eEP

CLKO falling through 0.8 V toEPS falling through 2.2 V

P-5

t OOEPH

Write data valid set up time to EPS deassertion

2P-35

t EPCSL

EPS assertion to eXternal processor assertion of CS < 2 >

0

3P-40

t EPCSZ

EPS deassertion to CS < 2 > three-stated by external processor

0

2P-20

tEPD[

EPS assertion to read data valid

t EPF

EPS fall time from 2.2 V to 0.6 V

0

t EPHOO

Write data hold time from EPS deassertion

2P-25

t EPLe

EPS falling through 0.6 V to CLKO falling through 2.0 V

P-25

tEPLWI

EPS assertion width (read)

4P-20

4P+20

tEPL\lIO

EPS assertion width (write)

5P-20

5P+20

tEPWIl

WR and CS < 1:0> hold time from EPS deassertion

P-20

tEPZ

EPS deassertion to read data three-state

t\ll1lEP

WR and CS < 1:0 >' set up time before"':Ei5!; assertion.

P+19

4P-40
10

3P-20
2P-35

Reset Tuning
Figure 43 shows the timing sequence for the reset function of the processor and Table. 22 lists the
timing parameters for the symbols referenced on the diagram.

eLlm

Figure 43 • MicroVAX 78032R.eset Timing Sequence

1-56

Confidential and Proprietary

...

MicroVAX 78032
18ble 22 • MiaoVAX 78032 Reset Tuning Parameters

Tuning Signal Definition

Requirements (08)
min
max

Symbol
tus

RESET deassertion to first CLKO pulse if RESET
is deasserted synchronously

3P+10

t RESC

Number of CLKO periods from RESET deassertion
until first DAL activity

32 periods

tUSGH

RESET assertion to DMG, EPS deassertionl

150

t RESH

RESET assertion to AS, DS', 15BE, WR deassertionl

1.0 IlS

t RESW

R'ESET assertion width after VDO := 4.75 V

3.0ms

RESET assertion width if VDO has already been at 4.75 V
for 3 ms when ImSEf is asserted

3.0 IlS

tUSWII

tRI!SZ

RESET assertion to DAL< 31:00 > ,JUOlt<3:0>,
CS<2:0> highimpedence'

3P+85

100

Notes:
1 When the RESET level is asserted, theDMG and EPS signals become high and remain high.
l When RESET is asserted, AS, DS', I5BE and f t outputs become a high impedance state and the
levels become high by low current internal pull-ups.
~ When the mft level is asserted the BM<3:0> lines and CS<2:0> lines become highimpedance .

• Meehanical Specifications
The dimensions of the MicroVAX 78032 68-pin cerquad surface and socket mount packages are
shown Appendix E.

Confidential and Proprietary

1-57

--------_._----------

• High performance
-Accelerates by 50 times the execution of MicroVAX floating-point instructions
-Accelerates by two times the execution of MicroVAX integer multiply and divide
• Subset (70 instructi.ons) of the VAX floating-point instruction set'
• Operates with standard VAX integer data tYPes· "
-byte, wOrd, IOngWord, and quadwortt
• Operates with standard VAX floating-point data types
-single-precision (FJ!oating)
-double-precision (D.Jioati?g)
-extended range double-precision (G_flollting)
• Arithmetic error checkill&andreporting
• High-speed ZMOS technology
• Single 5 Vdc power supply

• Description
The MicroVAX 78132 Floating-Point Unit (FPU), contained in a ~-pin cerquadpackage, is a highperformance cooperative processor that extends the data paths of the MicroVAX 18032 central
processing unit (CPU). Its primary functiot1·is to exeCUte MicroVAXfloating-point instructions to
eliminate the emulation of floating-pomtirtstrUCfionsin software. Figurel is a general block
diagram of the MicroVAX 78132 F P U . · '
..

FRACTION
DATA M1H

FRACTiON
CONTImL

'61

13

MAIN SEQUENCER
12IJO X 35J

CS2

CS1

cso iNA EPS

Figure 1 • MicroVAX 78132 General Block Diagram
Conf~deQti1ll~nd Proprietary

f;.mrr:r _.ltllJClIUIII! _ _

1!m~l~Z:"'"

1-59

- -......- - - - - . - -_ _ _........
IiSll. . . .IU
.................
" ......_ _ _ _ _ _ _ _ _ _ _ _ _ __

·.~ ..

the Mi~VAXFPU handles the FJIoating (single-ptecision), D_floating (double-precision), ~d
G.J1oating (extended range double-precision) VAX floating-point data types. It supports several
VAX floating-point operations, including floating-point add, subtract, multiply, divide, .and
convert.
The MicroVAX FPU also accelerates the execution of integer multiply and divide operations. The
FPU supports sign~d integer ~ultiply and unsign~d integer divide operations .

• Pin and Signal Descriptions
This section provides a brief description of the input and 0\ltput signals and power and ground
connections of the MicroVAX 78132 68-pin package. The pin assignments are identified in Figure 2
and the signals are summarized in Table 1.

DALOO

EPs

'CS2

DALOI

60 59 58
61

DAL02

62

DAL03

63

DAL04

64

DALOS

65

DAL06

66

DAL07

81

vce

68

VSS

NC

vec

vee

NC

51 56 55 54 53 62 51 50 49 48 47 46 45 44

r------------,
I
I

I
I

I
I

MicroVAX 78132

L

FLOATING-POINT UNIT

OAL31

42

DAl30

41

DAU9

40

DAU8

39

DAL27

311

DAUB

37

OAL25

36

OAU4

vec

vss

I

35

2

I

34

VSS

DALOB

3

33

vss.

OAL09

4

I
I

32

OAL23

DAllO

5

I

31

DAL22

DALlI

6

'L ___________ ..JI

30

CAUl

29

DAUO

VSS

(FPUI

I

DALl2
DALl3

8

28

DALIS

DAL14 .

9

27

DALl8

10 11 12

DAllS

vec

13 14 15 16 17 18 19 20 21 22 23 24 26 26

ClKI

RESET

VSS

NC

NC

VSS

Figure 2 • MicroVAX 78132 Pin Assignments

1-60

43

Confidential and Proprietary

DAL17

Preliminary ,

MieroVAX 7852

,1We 1- MkroVAX 78132 ~ and Signal S~,
43-36,
32-25,
10-3,

'DAL<31:00>

input/output Data/address lines-1tansfersdata, status, and
control information between the FPlhmd'CPU.

67-61

57-56

input

CS<1:0>

eoritrolstat~;< 1:0> ~IndkateSthetypeo{

, in£6rnlation~ingtransferred to ot'fromihe PPU
(commarid$,': dats:; orrespofiseenable). Valid
when EPS is asserted.

CS2

58

55

output

Con~lVl ,s~t'9s

2__A~~ 9ut~.anexternal
piocessor~ppnse, .,~1lable b~s' cYcle" wh~n'
FNJ hascq~~~~e ~O~~9~ ()pe,ration.

input

Write.:.....Irlpii'tfrom theMicroVAKCPUfuafindf.
cates' ~ta,aj')w;dU:ection. '~n,ass.etted.,jndl~
cates_flmjJtQmm~·cputo the FPU. Valid

the

,.wheiimil,~~Q.

tps

54

input

txternaIv~t stroqeAsserted'by the
MicroVAX CPIJ to qualify aU' tommurucation
i

between the FPU and CPU.

16

RESET

input

Reset ___Asserted by external logic to resynclm:>~~~ FPVi with ,the CPU.

14

CLK!

input

CIockiD,pUt,~J:4tisi!;r;igek timing input. to, the
FPU. Has the ~amei£l:equency as the MicroV~
CPU clock~CLKI)input.

45

VIII

output

BaCk-biasvoltage.

".,

'I"

Vee

input

VOltaSe-Powet! supply de voltage

1,2,17,18,
Vss
23,24,33,34,
52,53

input

GroundLCommon ground ref.f!rence

11-13,46-48,
35,68

15,19-22,
44,49-51,59

No connection-All unused pins should be left

NC

~oating
and not pull~
up;- or,',,'_grpWl~.
.-' - -';,' -:""\ ,r:"
- '"
'>;,,:
j ' ','

nata and Address Bus
Data, and address bus (OAL < 31:00 > )- The data and address bus is a time-multip~9 bidirectional bUll that transiel'sacidress, data, statUll, and control~nforlllation between the, FPlt~Jhe
GU. The MicroVAX CPU is always the bus master and communicates with the FPU'according to
the protocol outlined in the "CPUjFPU General Protocol" discussion.

Con£idet1tial-and'~
''''$'1.1'1'''"._ _....._

1-61

_n_n__
llli_iIII-..
............._ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ._. _ _ _ .•. _._,_'"_ ... __ ;

. ._ _ _.
_ . ..
_!'"""-1.i!
__
._
........." "
__
PHI.l.,..
..
_ ..&1Il
. .................

-

MicroVAX78132

BUll Control

m

E:x:ternal processor strobe (EPs')~1'he
si~al is used toWtiate'all CPU/FPUbus cycles that are
external processor bus cydes.ftindicatesto the FPU thanheinformation on the CS < 1:0> and
WR lines is valid. Refer to the "Bus Cycles Description" discussion for more information on CPUr
FPU bus cycles.
For reset operations, the FPU uses the first assertion of the EPS cycle following the assertion of the
RESET signal to synchronize itself with the CPU.
Write (WR)-The WR signal is an input from tqe MicroVAX CPU that specifies the direction of
data flow between the CPU and FPU on the DAL<31:00> lines. When WR is asserted, data is
being transferred from the CPU to the FPU.
System Control
Reset (RESiIT)-External logic asserts the RESET signal to synchronize the FPU and the
MicroVAX CPU. The assertion of RESET causes the CPU to perform a number of EPS cycles. The
first external processor (EPS) cycle synchronizes the FPU and CPU. The remaining EPS cycles are
used to verify the presence of the FPU in the system.
Control Status (CS < 2:0> )-The CS lines p1'OVide status information about the current bus cycle.
The CS< 1:0> lines are inputs to the FPU that specify the type of information being transferred.
CS < 1:0> are valid inputs only when the EPS signal is asserted. The WR signal further qualifies
the type of bus cycle, as summarized in Table 2. Refer to the "Bus Cycle Descriptions" section for
more information on the types of bus cycles.

1.able 2 • M.icroVAX78132 Bus Cycle Types
CSline
1

0

Write(WR)

Bus Cycle Type

0

0

0

External processor command write

0

0

1

External processor data read

0

1

0

External processor data write

1

0

0

Non-FPU command write

1

1

1

External processor response enable

CS2 is an open-drain output that is asserted when the current bus cycle is an external processor
response enable cycle and the FPU·gas completed the current commanded operation.

OoekSignal
Ooc:k In (CLKI)-This signal is the basic timing input provided to both the FPU and CPU from an
external clock Source.

.

Confidential and Proprietary

-

Power Supply Connections
Power (Vbc>"":'Theseinputs are used to supply j Vde power to theFPU.
G~ (V"s)-The~ mputs are used as aground reference for the chip.
Back-Bias Generator (Va.)-This is a ~ek-bias voltage that is either bypassed to ground with a
capacitor (typically 0.01 IJf) or attached to a back-bias supply (typically -2.5 volt± 10% at 10
rnA) .

• Architecture Summary
The MicroVAX 78132 FPU architecture, shown in Figure 3, consists of three separate processors-a
1-bit sign processor, a 13-bit <:x~l;lC:9tJ~mc~r,.~r!~a?7-~lM~(:tipp, ~~essof. The extfublts in
the fraction data path acconunOdateex~precisi()n ins,~io~ Such as EMODx. A nUcrosequencer containing 200 35-bit controlwords~C6n.trtih'ib~fioob£ the three p~ssors;,Data
enters and leaves the FPUJhrou~~~/Qb~£~ .GonttolfRfo~on passes to an~:lfrolll the FPU
through the interface controI·logic.
The following paragraphs descritJe

T

Qr

I

are FPtJarchitectureaccessib~to the user.

CL«Y$

'"

UU""fft

r

~~~~~~~==~~
"

Figure 3 • MicroVAX 78132 Detailed Block Diagram

Confidentlithmd·.Proprietary

1.:.6:3

MicroVAX7tt32

Preliminary
Visible State

The MicroVAX FPU does not contaip user-accessible interpal~gisters.or mode bits. The MictoVAX .'
CPU contains the floating-point general registers al')d con,dition codes. Commands sent from the
CPU to the FPU determine the operational modes (round or truncate) and the data types (for
example, F_£loatingor D.:..£Ioating).
. .
Exception Detection and Reporting
Table 3 lists the exceptions that the MicroVAX FPU detects and reports.

Table 3 • MicroVAX 781.32 Reported Exceptions
Condition

Result Returned to CPU

Reserved operand

Unpredictable~CPU unconditionally faults

Integer overflow

Low order 8, 16, or 32 bits of the true'result

Floating overflow

Unpredictable-CPU unconditionally faults

Floating underflow

Floating zero

Floating divide by zero

Original quotient

Unimplemented instruction. Qnpredictable-"command not valid" exception

The exceptions associated with specific MicroVAXFPUinstructions are described in the following
paragraphs:

Data Types

, '.

. ,

The MicroVAX FPU handles seven data types-byte, word, 16ngword, quadword, F JIoating,
D_floating, and G_floating. Figure 4 illustrates the data tYl'e formats. For a summary of the data
types associated with specific MicroVAX FPU instructions, refer to appropriate instruction
discussions that follow.

1-64

Confidential and Proprietary

Prelimin~
!.lli.

W!!ll!:!.

~

BYTE

8BJTS

51GNEDO(I
UNSIGNED INTEGER

WORD

16 BITS

SIGNED DR
UNSIGNED INTEGER

'3~BtT~

SX!NEOQR

00

07

I

I
I
I

:11

00

15

I

:A,

31

LONGWORD

ONSIGNEClIN'T~GER

j'

64 BITS

SIGNED OR
UNSIGNEO INTeGER

~.

'<;

I';

63
1\1 14 ,"

,51

"

00

-<,',',

' :->1
;-''-lr'

""",;

_".,1

FJLOIITING

I

:A

:;;'1;

31

OUAOWORD

00

~ "

,

t ,

'lI'lfJfk; .'". :,

,fin'

f!XI'Of'/ENTI~crIO'H
FRACTION

I:

32

.',.

:1\
:1\+2

31

64 81T5

FLOATING PoiNT

MBITS

Figure 4 • MicroVAX 78112 Di1f4 Types

1,.65

i

,_,

MicroVAX7&W
• MicroVAX 78132 FPU Instruction Set
The MicroVAX 78132 FPU instruction set consists of floating-point instructions, integer multiplication instructions, and integer division instructions. Refer to Appendix A for a summary listing of
the FPU instruction set.

Floating-Point Instructions
The FPU opcode is a nine-bit code for an FPU instruction derived from the opcode of the original
instruction fetched by the MicroVAX CPU. The opcode for a G.,...floating instruction is the original
instruction preCeded by a 1. The opcode for an instruction that is not of extended range
(GJIoating) is the originalinstruction preceded by a O.
The MOV, MNEG, and TST floating-point instructions are marked with an asterisk to indicate that
they are implemented entirely within the MicroVAX CPU. In a system without an FPU, the CPU
performs a reserved operand fault if an attempt is made to execute these instructions.
The MicroVAX FPU treats a two-operand instruction the same way it treats the corresponding
three-operand instruction. The MicroVAX CPU handles the differences in processing these
instructions.
The POLY instruction is implemented as a continuous, interruptible instruction. The MicroVAX
FPU assists the CPU by performing floating-point addition and multiplication operations. After
each step of the polynomial calculation, an intermediate result is returned to the MicroVAX CPU
and a new coefficient is passed to the FPU. (No new command is issued to process this coefficient
during normal operation.) A new intermediate result is then computed. If the CPU is interrupted, it
can restart the POLY instruction by reissuing the POLY command and sending the most recent
intermediate result, the argument, and the current coefficient.

Integer Multiplication Instructions
The MicroVAX FPU can perform signed integer multiplication. The MicroVAX CPU uses this
capability to accelerate the execution speed ofthe following instructions. Refer to Appendix A for
the format and exceptions of the signed integer instructions executed by the MicroVAX FPU.

Opcode

Instruction

7A

EMUL (Extended multiply)
INDEX (Index calculation)
MULL2 (Multiply long 2-operand
MULL3 (Multiply long 3-operand)

OA
C4
C5

During MicroVAX FPU integer multiplication
• The FPU performs a 32 by 32-bit signed multiplication.
• The FPU in all cases returns a 64-bit result.
• The exception code is zero and the condition codes are unpredictable.

Integer Division Instructions
The MicroVAX FPU can perform unsigned integer division. The MicroVAX CPU uses this
capability to accelerate the execution speed of the following instructions. Refer to Appendix A for
the format and exceptions of the unsigned integer division instructions executed by the MicroVAX
CPU.

1-66

Confidential and Proprietary

-

Opeode

Jnstmction
DIVL2 (Divide long 3-operand)
DIVL3 (Divide long 3-operand)
C7
EDiv(Extended divide)
7B
During MicroVAX FPU integer division',

C6

• A 64.bit dividend is divided by a 32-bitdivisoi

• The operands are unsigned.
• The operands are guaranteed not to cause an integer overflow., {'Fhe MicroVAX CPU checks this
condition before actiwtirtg the FPU.)
• The FPUretllrns a 32-bitresult and a }2,bfrremahlder..
• The exception code is zero and the condition iodes~unp~ble ..:·

• Interfacing Requirements
The MicroVAX 78132 FPUis designed. as a coproceSsor fOttb~ MicioVAX 78032 CPU. Therefore,
all in1:ertacing considetatio~ ~. macie wit1;t~t to. tlua,. ,~rqVM,C~U., The:,1i'PU/<;;:Ptl

inter£ace-inc1qding bU$ cycles, the FPUJCrUJil+'P~l; ~.a~icalfPU/crointerconnection
scheme-is described in thefollowing ~hs;
Bus Cycle Descriptions
The MicroVAX FPUrecognizes five typesot bu~cys;~ :¢it:ttAtilprOc~sorcomtpa:Odwrite,
external processor data read, externalprocessordatawnte, rioo-F$J;coiJ)mandwritejmd' external
processor response enable. The following paragraphs briefly describe these busoycles. RefertQ the
"MicroVAX 78032 32-bitCentral~Qr:.p,~it" ~ti":l:l!o~thei:O~J'Onding MicroVA~CPU
bus cycles. Figures 9 and 10 are detlilledbus~cYcIeJllagroms; . "
. '. .
'
External Processor Command Write-An external processor commandwrite, cycleispertormed
when the CPU has acommatld(typically instruction o~e)Jor ~l:teFPB;~;tead'Md ~xecute.
This type of cyc1elasts fom"clock (CLKOY Periods or onemiCiotjcle.THesequen~ &fevents is .

an

,

'

' t ' "

'.

" "

, ' , .

• The CPU drives cycle-status information ol1llnes CS~:l:P:;;1"(C$~f:;O>:;... pp..£qr"th~ty,pe of
cycle), drives the cQmmandon theDAL<31:00> bus, and assert&J:lie
El5Sand'WR
signals .
",,'t--',
,'.', : - "'i"
.

".

"

'

"

,'"''

,,',"

';-

,

'

,'i

"~"

• The Fl'U reads the opcodeol'ltheDAL.
• The CPU deasserts th~ BPS and 'Wit signaIs,and'the cyde ends: .'
External processordouead-AneJ(temalp~$lIQrd~ta ~~te i§ ~or~ed when the FPU
has data for the CPIJ to process. Thist:ypeofcycIe,lalIts foUl:'.~ peri04s,',I'he seq~eJ>f events. is .
• The CPU drives cycle-status information on lines CS< 1:0> (CS< 1:0> =01 for this type of
cycle) and asserts the BPS signal. The WR signal is not asserted because this is not a write cycle.
• The FPU responds by driving thi,DAL < 31:00> bus wit;hdat~.
• The CPU reads the data.
• The CPU deasserts the BPS signal, and the cycle ends.

1-67

Confidential. and Proprietary

-------------------------_ _-_
..

...

__.....

Preliminary
External processor data write-An external processor data write cycle is performed when the CPU
has data to write to the FPU. This type of cycle lasts f01.ir·clock periQds. The sequence of events is
• The CPU drives cycle-status information on lines CS<1:0> (CS<:1:0> =01 for this type of
cycle) and asserts the EPS and WR signals.
.
• The CPU drives the data on the DAL< 31:00> bus and deasserts th~EPS andWR lines.
• TheFPU responds to the deassertion of the EPS signal by reading the data on the DAL < 31:00 >
bus, and the cycle ends.

N'on-FPU command write-A non-FPU command write cycle is perform,ed when the CPU has an
instruction or command for a processing unit other than the FPU. The sequence of events is
• The CPU drives cycle-statusinfQrmation on lines CS< 1:0> (CS < 1:0> = 10 for this type of
cycle) and asserts the EPS and WR signals.
• The FPU initializes itself, suspends its operation, and disables its outputs so that it cannot
respond to an external processor data read cycle or an external processol" response enable cycle
until an external processor command write cycle for the FPU has been initiated.

External processor iesportse. enable-An external processofresponse enable cycle is performed
when the CPU is ready to accept the result of Some operation from the CPU. The sequence of events is
• The CPU drives cycle-status information on lines CS < 1:0> (CS < 1:0> = 11 for this type of
cycle), asserts the EPS signal, and puts the CS2line in the high-impedance state. 'fP.e WR signal is
not asserted because this is not a write cycle.
.
.
.

• When die FPU completes its current instruction, it drives status information on the DAL bus and
pulls line CS21ow.
• The CPU reads the information and deasserts the 'Ei5'S ~ignal to end the cycle.

CPU/FPU. General Protocol
The communicap,on protocol between the CPU and the FPU is grouped into five categoriescommand transfer, operand transfer, operand processing, status transfer, and result transfer. The
following paragraphs describe each transfer. .
. .

Command transfer-The CPU initiates an interaction with the FPU by performing an external
processor command write cycle. The CPU drives a command (an instruction opcode) on the DAL·
bus, drives a status code on lines CS < 1:0> , and asserts the BPS andWR signals.
Although the DAL<.31:00> bus is driven with a command (in this case an instruction opcode)
during the external processor command write cyde, only DAL< 08:00:> is significant to the FPU.
Figure j shows the FPU command format and able 4 describes the bit functions.

31

..

.

...

..

0908

.

00

I::::: ::::::::: :: ::::: :I: : ?++, ;: I
Figure 5· MicroVAX 78132. Command Format

1-68

Confidential and Proprietary

-

Preliminary . . . . . . .

DALLine

Description

<31:09>

Not used

<08:00>

ContahJs theopcode of the in~trilction that the FPU is tbexecute. or assist in
executing.

Fro

Operand transfer-The instru~ion opcode specUiesthe operat~on(s) to he~rtor~ by the
and the number and data type of operands inVolved. The CPU f~tch:es thfreqUired opera:nd(sf~nd'
transfers them to the FPU by performing one'&t'nl0re external processor d~tawrite cycles. Dudnt,
these cycles, lines CS < 1:0>. = 01 and the nAt <31:00 > DUS ccintaihs. th~tNnsfer:re(t ~ata~
The opcode of the mstruclwft t~ be executed determines the number and dlltitype of the operands
transferred from the CPU to ineFPU . The followmgroles apply to the transfer of operanQs from the
CPU to the FPU:
.
• Integer operand-An in~r operand is ~~f!lTed in one externalpro~sspr data wri~ cycI~.if
the integer is a byte,it apPe~son DAL<67:~6> with leading zeroes 01ll)AL<31:P8>. lIthe
integer is a word, it appe~on DAL < 15 :o(». ~th leading ze):Oeson D.t\t .~.'
."
• Floating-point operands~;An FJloating operand is transferred in one ~ternal pIOi:tessor' dilta
write cycle. A DJldIlting or GJloating o~d is transfefred in' two consecutive exrer.ti¥:ti
processor data write cycles; bits < 31:00> are transferred during thefitst cycle: and bits
.
< 63:32 > during the second.
• Multiple operands-Ihoperations requiringt«ro operands, the secondotierand is transfer~
first. In operations ~UiriDg three or more ()l'¢rilnds, the order of operand ttansfer iSderermiried
by the instructionbblng~ted.
•'..
',t

'f_''".',·','",_

-

"

• POLY instruction-Exe<:utio~ of the POLYinstruetioninvolvesan ind~terminate ,number,!;>£
operands and results. DuriJlg a POLY imtruoti~n, the FPU need. 'Only receive a coe£#cient;;to'
calculate the next im;~ediate result. The FE>pcoptinuesto acceptcoeffi¢i(mts and return result:;,,·
until the CPU sendstheFPU another command..
Table 5 summarizes ~ order in which ope~and results are
The ~ble uses the
fonoWipg
conventions:
recognized by the Fi>U.
' . . -' , < ' ,
:'
-."
'., ,,.

transfe~red for allh1structi.ons
' .\ '

.

'..

• An "x" in a mnemonic·indkates thattheFBl;lprocesses the two-operand and tliree-operand
versions of the insttiiction.inexactly the same way
• The "#" nID!t to SOll11? of the operands and reSults of a POLY instruction indicates that .the
number of these operands and results depends on the size of the coefficient table.

• A result may bewundedIR],truncated [Ttpf~act[EJ.·
The MicroVAX FPU User's Guide

prov~de~.cotnpl~ede$Criptio~~fth~ opera~

instructiom .

."'__
.....,....

"'_"'_"""_'_%lIfiJ''''_'''''~'''_JiA4d'''''~'''='''''''

__

~_'_-'-_-~--.--~

.....____________,____________"_,.___ _

of these

-

Preliminaty
Table J- MicroVAX78132 OpetandTtans£er .

VAX
FPU
Flt'St
Second Thircl
Mnemonic Opcoc:Ie 1iansfer '&ansfer Transfer Operation

ACBD
ACBF
ACBG

06F
04F
14F

limit.d add.d
limit.f add.f
limit.g add.g

add1+add2
add1+add2
add1+add2

CMPD
CMPF
CMPG

071
051
151

src2.d
sre2.f
src2.g

src1-src2
srel,src2
srel-src2

CVTBD
CVTBF
CVTBG
CVTDB
CVTDF
CVTDL
CVTDW
CVTFB
CVTFD
CVTFG
CVTFL
CVTFW
CVTGB
CVTGF
CVTGL
CVTGW
CVTLD
CvrLF
CVTLG
CVTWD
CVTWF
CVTWG
CVTRDL
CVTRFL
CVTRGL
DIVDx
DIVFx
DIVGx
EMODD
EMODF
EMODG

O6C
04C
14C
068
076
O6A
069
048
056
199
04A
049
148
133
14A
149
06E
04E
14E
06D
04D
14D
06B
04B
14B

sre.b
sre.b
sre.b
sre.d
sre.d
sre.d
sre.d
sre.£
sre.f
sre.£
sre.£
sre.£
sre.g
src.g
src.g
sre.g
sre.l
src.l
sre.!
sre.w
sre.w
src.w
sre.d
src.f
sre.g

sre1.d
srel.f
srcl.g

066, 067 divd.d divr.d
046,047 divd.f divr.f
146, 147 divd.g divr.g
074
054
154

muirx.b muir.d
muirx.b muir.f
muirx. w muir.g

Result 1

Result 2

index.d (index + add}:limit (index.d[R])
index.f (index + add):limit (index.f[R])
index.g (index + add):limit (index.g[R])

ADDDx 060,061 add2.d addl.d
ADDFx 040,041 add2.f addLf
ADDGx 140,141 add2.g add1.g

1-70

MicroVAX78152

sum.d[R]
sum.£[R]
sum.g[R]

£It cvrt
fItcvrt
fIt cvrt
intcvrt
fIt chatige
intcvrt
intcvrt
intcvrt
£I.t change
£It change
intcvrt
intcvrt
int cvrt
fltchange
int cvrt
intcvrt
flt cvrt
£Itcvrt
flt cvrt
flt cvrt
flt cvrt
fIt cvrt
midint cvrt
midint cvrt
midint cvrt

d...Jloat[E]
Lfloat[EJ
8-fIoat[E]
byte[T]
Lfloat[R]
longword[T]
word[T]
byte[T]
cLfloat[El
cLfloat[E]
longword[T]
word[T]
byte[T]
Lfloat[R]
10ngword[T]
word[T]
cL£loat[EJ
Lfloat[R]
8-fIoat[E]
cLfloat[E]
Lfloat[E]
8-float [E]
10ngword[R]
longword[R]
longword[R]

divd/divr
divd/divr
divd/divr

quo.d[R]
quo.f[R]
quo.g[R]

muld.d muir*(muir'muirx) int.l
muld.f muir*(muir'muirx) int.1
muld.g muir*(muir'muirx) int.!

Confidential and Proprietary

fract.d[R]
fract.f[R]
fract.g(R]

-

Preliminary

nw

VAX
FPU
Fast
Second
Mnemonic Opcode Transfer'liansfer 'Ihmsfer Operation
MULDx
MULGx

064, 065 muk.d muld.d
044, 045 muir.f muld.f
144,145 muir.g muld.g

POIYD
POLYF
POLYG

075
055
155

SUBDx
SUBFx

062, 063 min.d
042,043 min.f
142, 143 min.g

MULFx

SUBGx

arg.d
arg.£
arg.g

intl.d
intl.f
int1.g

prod·8[1~J

#coeff.d

(iI1'g*intl) +coeif
~~£f.f{atg*int1) + coeff

#int2.dQtJ
Hint2.f[R]

IIcoeff:i:(arg*mtl) -f;co~ff #int2.g{Rl

sub.d
sub.f
sub.g

muir.ri muld.ri --

min-suh
min-sub

diff.dQl.l

i'IliiHuh

diftg[R]

,mWt~mul4;

07A
OOA

DlVLx
EDIV

OC6, OC7 divr.rl

divd.rq--

divd/divr

07B

divd.rq-

divd/divr

size~ri

OC4, OC5 rnuiNl muld.ri --:.
divr.rl

prod.cl[R]
prod.fER]

muir*muld
muir*muld
rnuil:*muId

EMUL
INDEX
MULLx

(muir·ti)

Result 1

tnuir*size
mUir*mUld

lint 3.d[R] ...
#int3.f[R] 1."
#int3,g[R] ...

dif£,£[R]

.•

pmd.wqfE]
m~u~.wq[E] --

prod:\\iq[El
rem.w(E]
rem.w(E]

Note: The integer divide instructions require that th~ldWer 32:tn1:s of the dividend be transferred
first, and then the upper 32-bits.

Operand ptOC:e88ing-After the CPU ttatlSfel'$1)he Itst()perand, iteontinuously performs external
processor response enable cycleS and wrutsfOf a responsefroffithe FPu. For each of these cycles,
the CPU asserts the appropriate status code on lines CS< 1:0> (CS< 1:0> ... 11) and asserts the
EPS signal.
.
... .
..•
FPU operand processing is completdyinyisib~ ~. the ~PU iUld may no~~. alt~d h}I.t;he user.
Status transfer-When the FPTt1 is ready to pass.;a result to theOPU; it respondstri the nextextci:nal
processor response enable cycle by asserting theC82Signal.imCl $imultaneouslydrivingstatUs
information onto the DAL,.bus.TheCPU teSpondstoi~iasset1;i~flof theCS2~by.per£or~
one additional externalprocessQl' response enable~cle>iduring,Which the CPU rei.\dstheFPU status
information again.
The format of the status informMion is shOlNn,in.Figure6 and defined inlable 6. When the flPU
asserts the CS2signal, it places n bits of s~tus ()nto,~I'-~:L<31:00> bus. The CPU examines
bits <05:00>.
'
.
.

Figure 6· MicroVAX 7.81)2 StatusForrnat

1-71

Tabie 6- MicroVAX 781.32 Status Qes¢ption
DALLine
31:06

Not used

05

FN (Functlon negative)-Indicates the status asJollows:
FN = 1 if result LSS is 0
FN =0 if LSSnot 0

04

FZ (Functionzero)-Indicates the status as follows:
FZ= 1 if the result EQL is 0
FZ =0 if restilt EQL is not 0

03

BR (Branch)-Indicates the status as follows:
BR..,1 if ABCx should branch
BR ... 0 if ABCx should not branch

02:00

EXC CODE (Exception code}-Indicates that the following events have occurred:

Code

Description

1
2
3
4
5
6

reserved
floating divide by zero
integer overflow
floating overflow
floating underflow
reserved operand detected
operation completed normally

o

If the EXC CODE is not 7 after a floating-to-integer conversion instruction, the condition codes
associated with the instruction are unpredictable and must be determined by the CPU. Integer
multiply and divide instructions always return unpredictable condition codes (that is, in the FN,
FZ, and BR fields) and set the EXC CODE field to 7.
Result ttansfe:r-The CPU performs one or more external processor data read cycles to read a result
from the FPU. During one of.these cycles, lines CS =01 and the DAL<31:00> bus
contains the read data. After the result transfer, the CPU and FPU are free for the 'next transaction.
The following rules apply to result transfers from the FPU to the CPU:

in

• Integer results-An integer result is transferred one external processor data read cyCle. If the
integer is a byte, it appears on DAL<07:00> with unpredictable data on DAL< 31:08>. If the
integer is a word, it appears on DAL < 15:00> with unpredictable data on DAL < 31:16 >. For
integer multiplication, two 32-bit transfers are necessary to return the entire result.
• Floating-point results-An F.J1oating operand is transferred in orieexternal processor data read
cycle. A D..Jloating or G_floating opemnd is transferred in two co.nsecutive external processor
data read cycles; bits < 31:00 > are transferred during the first cycle; and bits < 63:32 >, during
the second cycle.
'
• Overflow and underflow-In integer overflow cases, the FPU always returns the low-order bits of
the true integer result; in floating underflow cases, the FPU always returns a zero result.
• CMPx instruction results-CMPD, CMPF, and CMPG do not cause a result to be generated by the
FPU, but the CPU will request one. The FPU returns a meaningless result that the CPU ignores.
1·72

Confidential and Proprietary

-

Typical FPU/CPU Interconnec:tion
Figure 7 illustrates atypical FPU/CPU hardware configuration. lathe example, a DALt:ransceiver

and latch is included in the design for the benefit of theextemallogic that con1municates with the
FPU/CPU via the DAL. Also included for completeness are several MicroVAX 78032 CPU control
signals that must be interpreted or generated by external logic. Refer to the "MicroVAX 78032
CPU" section for information on these control signals.
eLKI

vee
~

. - - - - - GND, VIlS

AS

~~~----------r---------.As

iNTfiM
5MR
OMG

BM
os
i>WiiFi:

iiALi'
ERFi

......--v~e

FiDY

....--GND,VS8

REsET

Figure '7. MicroVAX 78132 Typical F~tlIMicfoVAX78032
CPU Interconnection
,
"

'

. Specifications
The mechanical, electrical, and environmentalcliaracteristics and specificatiotlsior the MicroVAX
78132 are described in the following paragraphs. The test conditions for theelectrf<;dvalues are as
followsuruess specified otherWise.
. ....
.

• Ground reference (Vss)
• Supply voltage (Vcc): 4.75 V

Mechankal Configuration
The physical dimensions of the MicroVAX 78132 68-pin CERQUAD package are contained in
AppendixE.

Confidential and Proprietary

1-73

...

Preliminary

MicroVAX'7SU2

Absolute Maximum Ratings
Stresses greater than the absolute maximlll,Q ratings may cause permanent' damage to the device.
Exposure to the absolute maximum ratings for extended periods may adversely affect the
reliability of the device.
• Supply voltage (Vee): -':0.5 V to 7.0 V
• Input or output voltage applied: -1.0 V to 10 V

• Storage temperature range: -55°C to 125°C
• Power dissipation: 3 watts (maximum)
Recommended Operating Conditions
• Supply voltage: 4.75 V to 5.25 V
• Active supply current (led: 240 rnA (maximum)
• Temperature range: O°C to 70°C
• Relative humidity: 10% to 95% (noncondensing)

de Electrical Characteristics
The de electrical specifications of the MlcroVAX 78132 FPU for the operating voltage and
temperature ranges specified are listed in Table 7.

Table 7 • MicroVAX 78132 de Input and Output Parameters

Symbol

Parameter

Requirements
Min.
Max.

Units

Vm

High-level
input voltage

2.0

V

Vn,

Low-lever
input voltage

Vllm

High-level
input EPS signal

VILE

Low-level
input EPS signal

VOH

High-level
output voltage

VOL

Low-level
output voltage

VOLS

Low-level
output voltage CS2

1-74

0.8

Test Conditions

V
V

2.2
0.6

V

= -400 I1A

V

IOH

0.4

V

IoL=2.0rnA .

0.4

V

I oL =5.2 rnA

2.4

Confidential and Proprietary

-

Symbol·

In.

MicroVAXlIm.

Pre~
Pannnetet

Requirements
Min.
Max.

Uqits

Test
CS2

IJITIII//IJ I

-,,----,0
=:rcJ
T4

I\\W

x==

~tEPCSL~

T2

T!

T1

T4

13

teEP tEPLC

CLKO
50

) I

OAl<31:00>

EPS

DATA

)-

I~ ..,.:.~~:,~~

---I"---j~L
F
twREP

WR

(

... d--1

tEPLWO (MAX)

\\\\\\\\\\\

I

In.

tEPWA

V7l7lZ
I

CS<1:0>
Wri1a1Command Write Cycle

.Figure 9 • MicroVAX 781j2 Extemal Processor Data TransacHon, Timing

1-76

Confidential and Proprietary

-

MicroVAX 78132
Table 9· MicroVAX78132 External Processor nata Transaction Tuning Parameters

SymboJ Definition

Requirements (ns)

Min.

Max.
P + 19

teEP

CLKO falling through 0.8 V to EPS falling through 2.2 V

P+1

tOOEPH

Write data valid setup time to EPS deassertion

2P- 35

t EPCSL

EPS assertion to external processor assertion of CS < 2 >

0

3P-40

t EPCSZ

EPS deassertion to CS < 2 > three-stated by external processor

0

2P-20

t EPDI

EPS assertion to read data valid

4P-40

t EPHDO

Write data hold time from EPS deassertion

2P-25

tEPLC

EPS falling through 0.6 V to CLKO rising through 2.0 V

P-25

tEPLWI

EPS assertion width (read)

4P-20

4P

t EPLWO

EPS assertion width (write)

5P- 20

5P + 20

tEPWB.

WR and CS < 1:0> hold time from EPS deassertion

P- 20

tEPZ

EPS deassertion to read data three-state

3P-20

tWREP

WR and CS< 1:0> set up time before EPS assertion

2P- 35

+ 20

1-77

Confidential and Proprietary

,.

• Features
• Fully compatibile"with the MicroVAX 78032 CPU, CVAX 78034 CPU and rtVAX 78R32 CPU
• 16 Peripheral Interrupt Request (PIRQ) lines
• Edge or level triggering for each PIRQ line with individually selected priorities
• 16 Programmable vector addresses
• ,Optional external vector generation
• Fixed or round robin priority modes
• Uses a daisychain interrupt-enable scheme for cascading
• High-sp~d,low-power CMOS technology
• Single 5-Vdc power supply

• Description
The MicroVAX 78516 Vectored Interrupt Controller (VIC)* is a low-cost, programmable interrupt
controller that is fully compatible with the MicroVAX 78032 CPU, CVAX 78034 CPU, and rtVAX
78R32 CPU. The VIC manages as many as 16 interrupt sources, resolves interrupt priorities, drives
the interrupt request (IRQ) lines of the CPU, and provides a programmable 13-bit interrupt vector
to the CPU. Users can choose either the fixed or round robin interrupt priority mode. Using a
daisychain scheme, the VIC is ~scadable. Figure 1 is a general block diagram of the MicroVAX
78516 VIC.
PlRO.15
OAt<15,OO>

A1l
W1i
6ll
CS<2-:(I>

PifIJ14

I'IRn'3
MicroVAX

INTERFACE

REGISTERS
AND

CONTROl
LOGIC

m5'1

PtRQ112

ARnH

' I'IRntO
PlAOQ9

~

PIAtlO8

~

PlROO7
PlR006

.,0005
eLK _

PlIlOO4

PlROO.
CleCK
GENERATION
AAO RESET
LOGIC

PRIORITY
AND
ARSITRATION
LOGIC ..

illm_

PlROO!
PlROO.
PlROOO

)MC

iACK
IAlCECW

IAKEI

IA input/output Data/address lines < 15:0> -Time-multiplexed
lines used to transfer address, data, and interrupt
information between the VIC and the CPU.

lnput/Output Definition/Func:tion

47

~nput

Address strobe-Latches the state of the VIC
into interrtaltigisters.

41

input

Data Strobe.;;;;...When asserted during a CPU read
"or interrupt acknowledge cycle:, it indicates that
DAL< 15:00.> lines are available to receive data.
When asserted during a CPU write cycle, it
"'latches the.
on' the DAL < 15:00' >.lines into
the internru:registers.

d:ata

40

WR

input

Write-Indicates the direction of data transfer
on the DAL< 15:00> lines.

43,45,46

CS<2:0>

input

Control status-Used to decode the bus cycle
type.

50

RDY

outpUt

.. Ready ....... SyndOOnizes data transfers betWeen the
VIC and theCPU.

28.13

PIRQ< 15:00;> inputs

peppheral i~f;f:J:lUPtrequests <: 15:00>-Used
by peripherall1evi.ces to request an internipt.

51·54

IRQ<3:0>,

output

Intetruptteq'Uest <3:0>-Used to flotify the
CPU of any pending interrupts. These lines are
maskable by tbeCPU.

55

lACK

output

Interrupt ackno~ledge~:mdicat;~S that the
rent bus cycle edge is Ql).interrupt acknowledge
cycle.
.

6t

)wEC

output

External veetor__ Indicates that the interrupt
request is being acknowledged and the peripheral
device mus.ts.upply a vector.to the CPU.

42

IA.KEI

input

,

'l{ ,

"

"

,

air·

Interrupt . acknowledge enable in....:...Daisychain

control signal that indicates the V1C Can reSpond
to the curreht interrupt acknOWledge CYcle,

56

IAKEOP

output

Interrupt.aCknowledge e,ru,tble out P-Anacdve
high puIlup output .that connects together with
the with the IA1{EON output to the iAK'EI input
of the next device in tht:: daisychain.
.

Confidential and· Proprietary

1·81

-

Pin

Preliminary
Signal

Input/Output,

MicroVAX7SSt6

.
"PefinitionLF
..... , unction

57

IAKEON

output

Interrupt acknowledge enable out N-An active
low pulldown output that connects together with
the IAKEOP output to the lAKEI input of the
next device in the daisychain or connects to the
ERR input of the CPU.

39

CSEL

input

Chip select-Enables read/write operations to
,the internal registers.

31

RESET

input

Reset-Sets the VIC to a known initial state.

30

CLK

input

Clock-Used to generate the internal time states
of the VIC.

10,11,29,44,60 Voo

input

Voltage-Power supply voltage.

U,32,48,58,59 Vss

input

Ground-Ground reference

MicroVAX Bus Interface Signals
lines (DAL < 1.5 :00 > )-These lines are bidirectional and are· used to transfer
address and data between the VIC and the CPU. During internal VIC register access cycles, when
the CSEL line is asserted, the DAL < 15 :00> lines transfer data to and from the internal registers.
During interrupt acknowledge cycles, if the IAKEI input is asserted and the VIC has a pending
interrupt at the level being acknowledged, the VIC places one of its interrupt vector registers on the
DAL < 15:00> lines or assert the external vector control signal (XVEC). When the XVEC signal is
asserted, the interrupting device must then supply a vector. During interrupt acknowledge cycles,
the DAL < 15 :00> lines are driven only when the IAKEI input is asserted, the IAKEON output is
deasserted, and the XVE bit in the interrupt vector register is cleared. The DAL < 15:00> lines are
otherwise in a high-impedance state.

Data!Address

Address strobe (AS)-When asserted, this signal latches the information on the DAL < 06:00 > ,
CS < 2:0 >, and the WR lines into the VIC. This information is used internally to latch the
PIRQ < 15 :00> line information for the duration of a read or interrupt acknowledge bus cycle that
accesses the VIC.
Data strobe (DS)- This signal is used by the VIC for data timing during internal register access
cycles and interrupt acknowledge cycles. When writing to one of the internal registers, the
assertiono£ this signal strobes the DAL < 15: 00 > line data into the selected register. When reading
an internal register, the assertion of this signal is used to transfer the contents of the selected
register onto the DAL< 15:00> lines. When responding to an interrupt acknowledge cycle, the
assertion of this signal is used to transfer the contents of the appropriate interrupt vector register
ontotheDAL<15:00> lines.
Write (WR)- This signal indicates whether the current bus cycle is a read or a write cycle. This
signal is used with the CS < 2:0 > inputs to decode the type of bus cycle in progress and to access
, internal registers to determine whether the operation is a read or write operation. The WR input is
asserted for write cycles and is deasserted for read or interrupt acknowledge bus cycles.

Control status (CS < 2: 0 > )-These lines and the WR input are decoded to determine the presence
of a read, write, or interrupt acknowledge bus cycle. The bus cycle selections are listed in Table 2.
1-82

Confidential and Proprietary

Preliminary

MieroVAX 78'16

1ltbIe 2 • MicrOVAX 18516 Bus Cycle Decoding*
CSEL

Bus Cycle

H

L

Read

H

L

L

Write

H

H

X

I1lterruptaclqxowledge

.CSLine
2
1

o

H

x

x

H

X

L

H

*H=high leveI,L=low level, X=either high or low level.

Ready (Ri)V)-'This signal is asserted by the VIC when its irttel'tlal registers are accessed during a
read or write cycle or during an interrupNlcknowledge (IACK)Cy'dewhenthe VIC is providing an
interrupt vectol: During IACK cycles, at lelUltone rej\dysllp will t5e generated to aI1ew an interrupt
acknowledge enable signal· (iAKEi, IAKEOp, 'Or IAKEON) to ~tOpagatethrough .the daisYchain.
The total number of ready slips that occur depends on the length of the daisychain. This is an open
drain (pulldown) output capable of sinking 16 mAo

Interrupt Inter:faee Signals
Peripheral interrupt request (PIRQ < 15:00 > )-These input lines are used by peripheral circuits
to request an interrupt .. When one.or ·1llOre of these linesal'e asserted ~nd the interrupts are
enabled, .the VIC will assert the appropriateIlQline(s). Mj!.pping between each PIRQIine and the
IRQ line is programmable by softwarethaughthe IRQ Map registers. The interrupt request .can, be
sensed by a signal level or edge or by the signal polarity. The sensing is programmable by the user.
Unused PIRQ lines must. be connected to a valid logic level.
Interrupt request (IRQ < 3:0> )-One or more of these lines will. be asserted by the.VIC when a
PIRQ line is asserted and the interrupts are enabled. The IRQ Map registers determine which IRQ
line is asserted for a particular PIRQ line. An IRQ line will bedeassert¢d when all pending
interrupts mapped to that IRQ line have been serviced. These)~u'¢open drain (pulldown} outputs
that require external pullup resistors.
Interrupt acknowledge (iAC'K)-This signal is a result of decoding the CS<2:0> and the WR
lines and will be asserted for all interrupt acknowledge cycles. The signal isnotaffect:ed by the
interrupt acknowledge daisYc:hain $ignaIs. It allows the ~ternal)ogic to disable the memory
transceivers during an interrupt acknowledge cycle.
..

External vector enable  li$es in the high.imped~, state. The hardware supplying the
vector is required to assert the RDY signal at the correct time.
Daisydtain Interface Signals
Interrupt acknowledge enable in (IAKEI)-This input allows more than one VIC and other
peripheral chips to be connected together in a daisychain. When this input is asserted, the VIC can
respond to the current interrupt acknowledge bus cycle. This signal should be connected to a
ground reference if the VIC is the highest priority device in the daisychain.

Confidential and Proprietary

1·83

-

MicroVAX1s'16

Interrupt ackl'lOwledge enable >QUt lUgh (L\KEOP)- This Qutput and the IAKEON eutput are
cennected to the IAKEI pin of the next lowest device in the interrupt daisychain. The IAKEOP
output is normally an active high pullup. However, when the IAKEI signal is asserted and the VIC
has no. pending interrupts at the level being acknewledged, the IAKEOP eutput is a highimpedance. If the VIC is the lowest-priority device in the daisychain, this line is not cennected to
another device. This is an open drain, pullup output that cannot be pulled low. For daisychain
operation, the pulldown function is performed by the lAKE ON line.
Interrupt ackl'lowledge enable out low/error low (IAKEON)-This is an open drain pulldown
output that is used to either pull down the next IAKEI level in a daisychain application, or pull
down the ERR input to the CPU if this VIC is the last (or enly) device in the daisychain. The
IAKEON line is normally in a high-impedance state. However, when the IAKEI signal is asserted
and the VIC has no. pending interrupts at the level being acknowledged, theIAKEON signal is
asserted. The VIC asserts this signal if PIRQ line is in level mode and the interrupting device
removes its request before the interrupt is acknowledged. The level sensitive inputs are not stored
bithe VIC. Therefore, the PIRQ line that was asserted cannot be used to determine the Vector to
return to the CPU. This output is a high current open drain output.

Miscellaneous Signals
Chip select (CSEL)-This signal, when asserted, enables read/write operations to. the internal
registers.
Reset (RESET)~This signal,' when asserted, sets all the internal registers to a known value except
fer the interrupt vector (IVEe) and IRQ map (IMAP) registers. The contents of the IVEe and lMAP
registers are unknown. The interrupts are disabled and the DAL<15:00> lines become a high
impedance.
Clock (CLK)-This signal is used to gene'rate the internal time states within the VIC. Any escillator
that meets the input requirements of CLK signal may be used.
Power and GroundCOhnections
Power supply voltage (VDD)-Power supply 5 Vdc.
Ground (Vss)-Ground reference .

• Functional De$Crl.ption
The VIC may be connected directly to the CPU bus or to. a buffered I/O bus. It accepts up to 16
priority interrupt requests (PIRQ < 15:00» from peripheral devices and it drives an associated
IRQ line to the CPU. The mapping between the VIC PIRQ lines and CPU IRQ lines is
programmable. The VIC decodes the presence of a CPU interrupt acknowledge (lACK) cycle on the
bus and monitors the interrupt prierity level of the interrupt being acknowledged. It will respond
to. the IACK cycle by transferring the appropriate user programmed vector on lines DAL < 15 :00 > .
The CPU uses the vector as an effset into. the system centrol bleck (SCB) to. lecate the starting
address of the interrupt routine.
A daisychain wiring scheme enables the user to connect more than one VIC tegether so. as to
expand the int~rrUpt handling capability from that of a single VIC. This scheme is compatible with
the daisychain scheme used bY' the other peripheral interfaces.
A peripheral device requests service by asserting one of the PIRQ lines. When the VIC detects the
PIRQ line that has been enabled, it reflects the assertien of the line in the pending summary
register (PSR) bit that corresponds to that PIRQ line. The IRQ output, programmed by the user for
that PIRQ, will also be asserted to indicate to the CPU the interrupt condition at the specified IPL
1-&4

Confidential and Proprietary

Preliminary
level. The CPU will respond with an interrupt acknowledge cycle that contains the priority levd of
the interrupt beingackoowledged; The VIC then decodes the lACK cycle and IPL line information
and ifthe VIC ~eneratedthe interrupt and the lAKEl (daisychain input) signal is asserted, it selects
the vector of the nextPIRQ to be serviced for that IPL level. It then places that vector on the
DAL< 15:00> lines. If the VIC did not request the interrupt, it asserts the IAKEON (daisychain
output) signal to allow the next devices in the daisy chain to be serviced. When the VIC is
responding to an interrupt, it holds the. fAKEON line from be~I1& asserted to prevent devices in the
daisychain that have a lower priority from responding,
Registers
The VIC contains 16 interrupt vector registers andBcinterrupt control registers that allow each
request to be individually configured by software,' The internalVIC registers, shown in Figure 3,
are accessible by the CPU and are used by software to cOIlfigutethe operation of the VIC. Each
register consists of 16-bits and is located on a longword boundary. The base address is determined
by external address decode logic. Direct access to the VIC registers is enabled when the CSEL signal
is asserted and the VIC decodes the address on the DAL < 06:09> lines to select the register to be
accessed.
.
.

NOI'E: Only word access to the lower 16-bits of thelongwordare allowed to transfer data between
the CPU and the VIC. Byte accesses and longword accesses are not allowed. Longword
access may result in the CPU reading the incorrect data or lost data during a write cycle.

ADDRESS
BASE
BASE+4

15

OD

...

POLARITY REGISTER'
, LEVEL/EDGE REGIST£R

BASE+8

PENDtNGSl,JM~ARX REGISTER

BASE+12

INTERRUPT ENASL.E REGISTER

BAS~+16

IRQ. MAP REGisTER .0 .

BASE+20

I IRQ MAP REGISTER 1

BASE +24

IRQ MAP REGISTER 2

BASE+28
BASE +32

BASE+36

IRQ MAP REGISTER 3
•.. 'ROUND ROBlfIH'I.EGISTJ;R

"
.,' ADDRESSES
tBASE+361
:.;,

• '. TQ(BAiSIl~ARe

",NOT INTEflN!'\I..L V
• 'OeCOOE1:>!'V'tHE VIC

•
BASE+64
BASE-+6B

8ASE+124

INTERRUPT VECTOR REGISTER 0

··

INTERRUPT VECTOR R.EG.ISTER 15

Figure 3· MicroVAX 78516 Register Address and Descriptions

Confidential and Proprietary

~ .......

-

....

- ..-.---.-.--...

1·85

------------------,-----.--,~-------------.

-

Preliminary. ,

MicroVAX78516

Polarity register-The polarity (POL) register selects. the polarity of the input used to assert a
PIRQ < 15:00 > line. When a bit is set, the corresponding line is asserted by a low-to-high
transition or by a high leveL When a bitis clear, the corresponding line is asserted by a high-to-Iow
transition or by a low level. The register format is shown in Figure 4.

15

.1

00

:
T

PIRO< 15;OO>lEVEL/EDGE POLARITY

Figure 4· MicroVAX 78516 Polarity Register Format

The POL register is used with the level/edge (LE) register to configure each PIRQ input. A PIRQ
input may be configured to respond to a rising edge, a falling edge, a high level, or a low level signal.
Table 3 shows the bit selections of the POL and LE registers and the resulting state of a PIRQ line.
When the RESET line is asserted, the POL register is cleared.

Table 3 • MicroVAX 78516 PIRQ Input Line Configurations
POL Bit

LE Bit

PIRQ Asserted State

o

0

Falling edge

1

0

Rising edge

o

1

Low level

1

1

Highlevd

LeveJ{Edge register-The level/edge (LE) register is used to select the way in which a PIRQ
< 15 :00> line detects an interrupt request. It allows the user to select either level or edge sensitive
triggering. When a bit is set, the corresponding PIRQ line is level sensitive. When a bit is clear, the
corresponding PIRQ line is edge sensitive. The polarity of the PIRQ line input is selected by the
polarity register (POL). Figure 5 shows the register format.

00

15

T

PlRQ< 1 5;00> LEVEL/EDGE TRIGGER

Figure 5 • MicroVAX 78516 Level/Edge Register Fomtat
1·86

Confidential and Proprietary

MicroVAX 18S16
Level-sensitive inputs allow more than one device to be connected to a single PIRQ line by using a
wired NOR structure. Once the correct polarity level is detected by the VIC, the corresponding
interrupt pending bit is setin the pending summary register (PSR). The interrupt pending bit will
remain set until the PIRQ line is cleared. Therefore, an interrupt acknowledge cycle from the CPU
will not clear the interrupt pending bit in the PSR register until the PIRQ line is deasserted. If a
wired NOR structure is used, a external pullup resistors is required pn the PIRQ line.
Edge sensitive inputs detect either a high-to-Iow (falling edge) or low-to-high (rising edge)
transition. When the correct transition is detected, the corresponding bit in the PSR register will be
set .. The VIC will clear the bit when the interrupt is seryicedllPd will not recognize another
interrupt request onthis line un~ the proper tqmsition occurs. When the IrnSm'line is asserted,
.
the LE register is cleared.

PendingSuounary registef-'The pending summary regis:ter (f$R) pro¢'des a s,ummary of the
internal interrupt pending flags. When a bit is set, an interrupt request is pending for the
corresponding PIRQ line. When a bit is clear, Po interrupt is pending. for t/:1e corre~pol1di.r:%PlRQ
line. The contents of the PSR register are latcp.ed during a read andIACK cycle. The regi.~ter format
is shown in Figure 6.
. .

15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

.
PlRQ< 15:00> INTERRUPT PENDING

Figure 6· MicroVAX 78518 Pending Summary Register Format

The VIC manages the setting and clearing the PSR register bits for level and edge sensitive PIRQ
inputs as follows. When the RESET input is asserted, the PSR register is cleared .
• For level sensitive PlRQ inputs, thecdrresponding .PSR bit will be set· when the PIRQ line is
asserted and cleared when line is deasserted .
• For edge sensitive PlRQ inputs, the corresponding PSR bit is set on the asserting edge of thePtRQ
input. The PSR bit for a PIRQ input will be cleared by an 1nterrupt.acknowledge cycle that
acknowledges the interrupt request of the corresponding PIRQline, when .the software clears the
PSR bit by writing a zero into the appropriate bit, or when in£ormatioriis written into the LE
register.

Interrupt Enable register-The interrupt enable (lEN) register is used to enable or disable the
reporting of interrupts to the CPU by each PIRQ line. When a bit is set, it allows an interrupt
request from the associated PIRQ line to generate an interrupt to the CPU. When a bitis clear, the
associated PIRQ line is prevented from generating an interrupt to the CPU, The register format is
shown in Figure 7..

Confidential and Proprietary

1-87

MicroVAX7Sji6

Preliminary
15

14

13

12

:

11

:

10

:

09

08

07

06

05

04

03

02

01

.00

i.
I·
y

PIRO< 15:00>INTERRUPT ENABLE/DISABLE

Figure 7· MicroVAX 78516 Interrupt Enable Register Format

The lEN register enables or disables the generating of an interrupt to the CPU and does not affect
the detection of interrupts by the VIC. When a PIRQ line is asserted, the corresponding bit in the
PSR register is set regardless of the state of the lEN bit for the PJRQ line. ThelEN register provides
the support for i1 software interrupt polling scheme. The register is cleared when the RESET input
is asserted.
IRQ Map registers (0-3)-The interrupt request map registers (IMAPO through lMAP3) are used to
select the IRQ line to be asserted by the VIC when aPIRQ line is asserted. When a bit in one of the
IMAP registers is set, the corresponding PIRQ line is mapped to the associated IRQ line. The
register format is shown in Figure 8. Each register corresponds to one of the IRQ outputs as defined
in Table 4.
15

14

13

12

I:

11

10

: :

09

08

07

06

05

04

:

03

:

02

01

00

yo

PIRO< 15:00> TO MicroVAX IRO LINE

Figure 8· MicroVAX 78516 IRQ Map Registers (0-3) Format

Table 4 • MicroVAX 78516 !MAP Register to IRQ Mapping

Register

Line

lMAP3

IRQ3

IMAP2

IRQ2

lMAPl

IRQ1

IMAPO

IRQO

Example: If bit 3 of the IMAPlregister is set when the PIRQ31ine is asserted and the lEN register
bit is set for tIlls line, line IRQ1 will be asserted.
The lMAP registers are not initialized when the RESET line is asserted and the contents will be
undefined until programmed by software.

1-88

Confidential and Proprietary

-

MicroVAX'l8116

Round Robin~The round robin (ROBIN) register is used to select either fixed or round

robin priority mode otoperation for each IRQ level. More than one bit maybe set in this register at
a time and the register controls only the PIRQ lines for the asscociated VIC . 'The register is cleared
when the WET input is asserted .. The register for.JDat is shown in Figure 9 . Table 5 describes the
function of each bit.
15

:

..
RAl

:I:
04

':

: :

;

00

03

.

~

'H

t

RR17-RRI4

Figure 9 • MicroVAX 78516 Round Robin R:eJjSfer Format

'DIble 5 • MicroVAX 78516 Round Robin Register Description
Bit

Description

15:04

RAZ (Read as zeros)-Not used

03:00

RR17-RR14 (ROUND ROBIN IPL17-IPL14)-....c1'heSe~sele£tthepriority mbdefor.al1
interrupts mapped to lines IRQ<3:0>. RR17 selects IRQ3 etc, When set,rhe mund
robin mode is selected. When cleared,' the fixed mode·isselected,

Interrupt Vector registers. (O-15)-Eacho£ the 16 interrupt vector (WECO through IV'EC15)
registers contains a fully programmable 16;bit vector. There isan IVEe~giSter£or eachPIRQ line.
The register format is shown in Figurte 10 and Table 6 describes die fdrtdion of each bit.
~

15

!

.

~

• 1

::

'

.

:

'

,

: :

PIRQ INTERRUPT
VECTOR
'"

'

•

02

01

00

; ; : !I I I
XVE

I

OFLG

Figure 10 • MicroVAX. 78516 Intlm'UPt. Vector, Rcgistet;s (0-15) Format

1-89

_-----------

_._---_._._. _---_._--------,_..._-_._-_..._------_._..

MicroVAX78j1.~
Table 6· MicroVAX 78S16lt:de1'tUpt V~tOrRegiMs(O.1S)Descripti()n .
Bh

~prion

15:02

VECTOR (PIRQ interrupt vector}-This vector is the offset into the system
control block (SCB) for the location of the interrupt routine.

01

XVE (External vector enable)-When set, the DAL< 15:00> line drivers are
disabled and the XVEC line is asserted during an lACK t)'de, indicating that an
external vector is to be supplied. When clear, the VIC will drive the contents of
the IVEC register onto the DAL< 15:00> lines during an lACK cycle.

00

QFLG (Normal/Q-bus processing flag)-When set, this bit forces the interrupt
priority line of the CPP to priority IPL17 when servicing the interrupt. When
clear, the CPU will service the interrupt normally.

These registers are not initialized when the RESET input is asserted and the contents of the register
is undefined until programmed by software.

Interrupt Level 1iiggering and Edge Triggering
The sensing of an interrupt condition by the VIC may be programmed for each PIRQ input by the
LE register. Each PIRQ line can be set to respond to either a signal level or to a signal transition
(edge). The polarity of the sensed condition is also programmable.
In the edge-triggered mode, either a high-to-Iow or low-to-high transition on the PIRQ line will
cause the VIC to latch the PIRQ line information. Further transitions on this PIRQ line will have no
effect. After the acknowledgment of the latched assertion by the CPU, the VIC resets the latching
mechanism allowing the ti!ler to again assert the interrupt with a proper transition on the PIRQ line.
A latched PIRQ assertion may be cleared by writing to the LE register or by writing a zero to the
corresponding bit of the pending status register.
In the level mode, the interrupting device must deassert the PIRQ input before the interrupt
service routine ends to prevent the VIC from sensing the previous level and posting the same
interrupt twice. During edge- or level-triggering, a bit in the pending summary register corresponding to that PIRQ line indicates the pending interrupt and if the interrupt is enabled, the VIC will
assert the appropriate IRQ line as programmed in the IMAP register.
If the CPU responds to an interrupt caused by a edge-triggered signal, the completion of the lACK
cycle will cause the VIC to clear the corresponding PSR register bit. If level-triggered mode was
selected, the PSR bit would continue to reflect the PIRQ status.

1-90

Confidential and Proprietary

-

MicroVAX1S'16

Fixed and Round Robin Priority
The two priority modes available to the user are fixed and round robin. Each PIRQ line has a fixed
priority with respect to the other PIRQ lines with line PIRQ15 as the highest priority and line
PIRQO as the lowest.
In fixed priority mode, the highest pending PIRQ for the IRQ level being recognized by the CPU
will be serviced first. In round robin mode, the. highest pending PIRQ for the IRQ level being
recognized by the CPU will be serviced and then prevented from requesting another interrupt until
all other pending interrupts for that IRQ level have been serviced. When all pending interrupts
assigned to an IRQ level have been serviced, the VIC will enable all the PIRQ lines assigned to that
IRQ level and the round robin process will start again. The'round robin mode operates only within
the PIRQ lines of a specific VIC,
The VIC accepts as many as 16 interrupts from peripheral devices and drives an interrupt request
(IRQ) line of the CPU, as determined by the user. The VIC decodes the presence of an interrupt
acknowledge cycle on the bus, monitors the interrupt priority line (IPL) being recognized, and
sends a 13-bit vector to the CPU. Each of the 16 (IRQ) lines i~ configured by software as follows:
• triggering mode and polarity
• IRQ mapping to the CPU
• enabling/disabling of interrupt request
• an interrupt vector

External Vector Generation
External devices can generate their own vector under control of a bit in the IVEC register. The
vector generation sequence is as follows:

1. The VIC provides the external vector enable ~ signal to the external logic that generates
the vector.
;

2. The XVEC signal indicates that the interrupt requested is ge1ng acknowledged.
3. The external logic supplies a vector to the ~ and assert~ an RDYto end the bus cycle.

Daisychain Configuration
More than one VIC can be connected in a daisychain-enable configuration as shown in Figure 11.
The three signals used are the ackrtowWQge enal>le in (i'AKEl), interrupt acknowledge enable out
high (IAKEOP), and interrupt acknowledge enable out low/error low (IAKEON). When the lAKEI
signal is asserted, the VIC can respond to the current interrupt acknowledge cycle. If no pending
interrupts exist for the IPL line being acknowledged, the VIC asserts the iAKEON and !AKBOP
lines to allow the next device in the chain torespohd to the interrupt acknowledge cycle.
Interrupt Operation
The VIC receives interrupt requests £roll1qevices and posts interrupts to the CPU by asserting the
appropriate IRQ lines. It also provides a vector address to the CPU during an interrupt acknowledge
cycle if the XVE bit in the interrupt register is not set. If it is set, the VIC notifies the device that a
vectoraddress is required from the device .•
Posting interrupts-When the VIC detects an assertion on aPIRQ input from a device, it sets a bit
in the in Pending Summary register that corresponds to the PIRQ input, If the corresponding
interrupt enable (lEN) bit in Interrupt Enable register is also set, an IRQ line is set to notify ~he
CPU of the.interPlpt request. The IRQ line that is set is selected by one of the four Interrupt Map
registers. Figure 11 shows the sequence for posting an interrupt req\lest.
Confidential and PlPPrietary

1-91

-

Preliminary' ,

SET BIT
INPSR

NO

ASSERT IRO <3:0>

LINE SELECTED
BYIMAPAEG

Figure 11 • MicroVAX· 78516 Interrupt Request Posting Sequence

Interrupt acknowledge response-After the IRQ line is asserted, The CPU responds with an
interrupt acknowledge cycle that transfers the interrupt priority level (IPL) of the interrupt being
acknowledged on the DAL< 04:00> lines. The VIC decodes this information to determine if it
had requested the interrupt. If it had made the request, an(hhe'IAKEI input is asserted, the VIC
blocks the propagation of the IAKEI signal to another VIC, and sel~cf the vector address associated
with the PIRQ line that requested the interrupt. The VIC then transfers the vector to the CPU
1-92

Confidential and Proprietary

MicroVAX 78516
through the DAL < 15:00 > lines. If an interrupt is not pending at the IPL being acknowledged, the
VIC passes control to the next device in the daisychain by asserting the IAKEON signal and by
placing the IAKBOP line in a high-impedance state. The interrupt acknowledge response sequence
is shown in Figure 12.

NO

DECODE

NO

IPL

ASSERT iAiEON
DEASSERT
IAKEOP

SELECT HIGtfm"
PENDI~
'.

INTeMUPT
fORlPl

YES

PLACEIVEC

REG ON .M!".
ASSERTADY

A

Figure 12 • MicroVAX 78516 Interrnpt Acknowledge Response Sequence

Confidential and Proprietary

1-93

-

MicroVAX'18.516

c

A

NO

NO

BlOCKPIRO
JUST SERVICED
FROM REOU EST
ANOTHER
INTERRUPT

CLEAR PSR BIT
RESET EDGE
DETECTMECH

YES

UNBLOCK
ALL PUlOs

MAPPED TO IPL'

Figure 12· MicroVAX 78516 Interrupt Acknowledge Response Sequence (Continued)

1-94

Confidential and Proprietary

MiaoVAX 71St6
.lQ~~ments

The VIC can beusedmth the MkroVAX78031 CPU, CVAX 78034 CPU, or the rtVAX 78R32 CPU.
It can be. connected to either the CPU bus or to a buf£erred I/O bus. A typical example of the VIC
connecteCl toa MicroVAX 78032 CPU is shown in Figure 13. The circuit includes separate address
decode logic to assert the CSEt input that is used tose1ect regist~rs in the VIC.

PERIPHE~

DEVICE;·

DAl<15:00>
MicroVAX
78032 CPU

.PERlPHI;RAl
DEVICE

PERIPHERAL
DEVICE

D!!
CS<2:O>

WI
~

fAO<3:0>'"

ROY
RESET'"

CLKO

ClK'

~

Rffii'

IAJ(tOp

• ANY CLOCK MEETING PC. SPECIFICATIONS
., SYSTEM-WIDE RESET SIGNAL
••• THESE LINES NEED EXTERNAL PULLUPS.

Figure U • MicroVAX 78516 Typical VIC and MicrovAxi8OJ2 CPU Interface Con/igpration

Daisychain Wiring
Figure 14 is an exampleof ~ 1\4icroVAX 78032.CPUan4 th~ o~VIC and wired in a daisychainenable configuration: The init~'iAKEI input to the VIC is'heldasserted by a ground connection to
allow the VIC to respond to to the current interupt acknowledge cycle. If a pending interrupt does
not exist for the IPL being acknowledged, the VIC asserts the mEON and IAKEOP lines to allow
the next device in the chain to respond to t~~jnterrupt ac~ledgecycle.

Confidential and ProPrietary

1-95

-

, ,,'.
,

D I J I~
n

D1<31.f>

(

"f

V

)

"

...
V

IAKEI

PERIPHERAL
D'EVICES

DAL

MICROVAX
78032 CPU
MICROVAX
78516 VIC
IRQ<3:0>

,:,""

PERIPHERAL
DEVICES

PEAfPHERAi'
DEVICES

PIRQ<15:00>
IAKEOP

°IRQ<3:0>

IAKEON

IAKEI
bAL<15:00>
MICROVAX
78516 VIC
o'RQ<3:0>

PIRO <15:00>
IAKEOP
fAKEON

iAKiIT

DAL<15:00>
MICROVAX
78516

• i'RCf<'31i>

PIRO <"5:00>
IAKEOP
IAKEON

~

.,
TO NEXT DEVICE IN DAISY CHAIN

"EXTERNAL PULLUP CIRCUITS 'REQUIRED

Figure 14· MicroVAX785161AK DaisychainWiring Configuration

Bus Cycles
The VIC responds to read cycles, write cycles, and interrupt acknowledge cycles.

Register read cycle-A read cycle is performed by the CPU to read information from a VIC internal
register. The VIC responds to the read cycle when the CSEL input is asserted and when the address
on the DAL < 15:00 > lines corresponds to the address of a VIC internal register. The signal timing
and parameters for register read cycle are shown in the Specification section. The register read cycle
sequence follows.
1. The CPU transfers an address on the DAL < 15 :00> lines, indicates a read cycle on control lines
CS<2:0>, and deasserts the WR input to the VIC.
2. The CPU asserts the AS signal to indicate that the information on the hus is valid.
3. The VIC latches the DAL< 06:00 > ,CS<2:0>, and WR line information.
4. The external address decode logic, Figure 13, decodes the address on the DAL lines and asserts
the CSEL input to the VIC.

1-96

Confidential and Proprietary

'

Prelimin
. ary
5, The VIC transfers the content of the selected register to the bus and asserts the ROY ootP'llt'.

6. TheCPIilatches the data and deasserts the iSS andASoutputs to. indicate the end of the bus
cycle. 'The VIC th~ deasserts the ROY output to the CPU end the read cycle.
.

to

Register write c:ycle-A write cycle is performed by the cPtI' to write information into a viC
internal register. The VIC responds to the write cycle when the CSEL input is asserted by the CPU
and the address on the DAL<06:00> lines corresponds to the address of a VIC internal register.
The signal· timing ancl parameters. £01' register write cycle are in the SP lines, iiXticaies a write cycle on control lines
CS < 2:0 > , and asserts the WR input to the VIC.

2. The CPU asserts the AS signal to indicate that the infol'mation on the bus is valid.
3. The VIC latches the DAL < 06:00 > , CS < 2:0 > , and WR line information.

4. The external address decode logic, Figure 13, decodes the address on the DAL lines and asserts
the CSEL input to the VIC.
5. The VIC asserts the 'Ri5Y signal, latches the data on the DAL < 15 :00> lines into :the selected
register, and deasserts the RDY output when the CPU deasserts the DS input.
6. The CPU deasserts the AS output to indicate the end of the bus cycle which also ends the register
write cycle.
Iote:rrupJ .~ledge cycle-The CPU performsahinterrupt acknowledge cycle in response to an
intem,tpt request (IRQ<3:0» output from the VIC. The VIC responds to the interrupt
acknowledge bu.s cycle when its IAKEI input is asserted and when its pending interrupt is the same
interrupt .~ recognized by the CPU. The signal timing and parameters for the interrupt
acknOWledge cycle are in the Specification section. The sequence of the interrupt acknowledge
cycle sequence follows.
1. The CPU transfers a hexadecimal value of the IPL on the OAL < 15 :00> lines,. indicates an
interrupt ~cknowledge cycle on control lines CS < 2:0 > , and deasserts the WR input to the VIC.
2. The CPU ass¢rts the AS signal to indicate that the information on the bus is valid.
3. The VIC latches the DAL < 06:00 > , CS < 2:0 > , and WR line information.
4. The lAKEI input is asserted. The timing of thl~ event depends on the'locatl.ono£ the VIC in the
daisychaim
5. The VIC transfers the vector address on the DAL < 15 :00 > lines and asserts the'Ri5Y signal. If
the device is required· to supply the vector' address, the VIC IISs'erls the XVEC output to the
device and the device asserts the'Ri5Y signal.
6. The CPU latches the vector address and deasserts the DS and AS outputs to indicate the end of
the bus cycle. The VIC then deasserts the RDY output, if asserted, to end the cycll . .
..

Con£idendaland Proprietary

-

MicroVAX78Sl6

Power Supply Decoupling
Figure 15 shows the power supply connections to the VIC. The Voo pins connect to 5 Vdc and the
Vss pins connect to a common grourid. All the Voo pins shoUIdbe connected together anCl all the Vss
pins should be connected together. Decoupling is provided by connecting 1. Ou f capacitors between
the Voo and Vss pins as shown on the figure.

r-,--;------r---oooutputs.
SApplies only to the RDY and IAKEON outputs.

ac Electrical Characteristics

Figure 16 shows the input signal apd c1oc.k signal waveforms arid the parameters are listed in Table 8.

tRISnE·
._
'FALL
90%
to%

CLOCK INPUT

elK

INPUT SIGNAL

_Figure 16· MicroVAX 78516 Input and Clock Signal Timing

1-100

Confidential and Proprietary

Table S.MkroVAX 78516 Input and Clock SignsI T~ PuametelS
Symbol

De6rution :

Requirements
Min.
Max.

tCPG

Input clock high .

5.1 ns

500 \is

tePL
tew

Input clock low

5.1 ns

500 J.IS

t R1SE

Input signal riSe

15 or

t pJlLL

Input signal fall

15 nsl

,-,

!

,

50 tis'

Input clock period

.

ITo be deterrDined
2Measuredbet~ri

'

", , .,'

10%, and 90% leve1s.'Appll,~sto'lill il1.put§exeeptPIRQ <'15:00::>. Maximum

tlUSJl and tFALL times£or PIRQ < 15 :00 > isSOO~.

.

Figure 17 and 18 show the signal tipling and symbols for a fugiSterread cycle and register write
cycle, respectively, between the MieroVAX CPU and VIC. Figure 19 shows the signal timmg and
symbols for an interrupt acknowledge cycle when the VIC responds 'with a vector and when the
external device supp1.iisthe vectOr"F~

OAl<15:00>

Figure 17· MicroVAX 78516 Register Read Cycle Timing

os,

CSEL

CS<2:0>

OAl<15:00>

ROY

Figure 18· MicroVAX 78516 Register Write Cyck Timing

1-102

Confidential ~nd Proprietary

.....

....

D-l:~._
......... .
~
,~,';

Wft

CS<2:0>

OAt <15:00>

ROY

IAKEI

lACK

VIC SUPPLIES vecTOR

os

CS<2:0>

DAl< 1S:OO>

XVEC

IAKEI

lACK

~--~~~----------------~
EXiEANAL DE:VICE SUPPLlESVeC'rOA

Figure 19· MicroVAX 78516 Interrupt Acknowledge Cycle Timing

1-103

-.
WR

DAl<15:00>

IAKEI

iAKEoN
IAKEOH

P=_t

IOAS_ _

IAGK

~r--------~------~
DAISYCHAIN-NO PRIORITY PASSED TO VIC

WR

IAKEI

IAKEON
IAK£OH

lACK

55
DAISYCHAIN-PRIORITY PASSED TO VIC

Figure 20 • MicroVA.X 78516DaiSY9hain Priority Signal Timing

1-104

Confidentiafand Proprietary

PtflO<.n>

,
PIRQ ASSERTEDIDEASSERTED TO.IRQ·A$SERTED/06A$S£RT·ED

AS

J

r'pRQS } ______'""-----'-_

~~~~~~~~
PIRQSETUp·

RESET

OAl<15:00::-

AS

R6SET TIMING

Figure 21 • MicroVAX'I851(jPIRQand RndSigtialTiming

Confid~ntial and Propri~tary

1-105

-

PrelimiruIry

MicroVAX"18516

Table 9 • MicroVAX 78516 Signal Timing Parameters

Symbol Definition

Requirements
Min.
Max.

t MSH

DAL < 06:00 > hold after AS assertion

0

t AASS

DAL < 06:00 > setup to AS assertion

15

t ASCS

CSEL assertion after AS assertion

t ASDS

DS assertion after AS assertion

0

t ASH

AS high after deassertion

1.5T

teSLH

CSEL hold after AS deassertion

0

tDRD

RDY or XVEC deassertion from DS deassertion

t DSAS

AS deassertion after DS deassertion

0

tDSS

DS setup before RDY assertion

30

1

RESET deassertion to VIC enabled internally

j.lS

1.5T +45

Read data threecstate delay from DS deassertion

t02
tENA

1

30
5T+250

t lAAS

IACK assertion after AS assertion

1.5T+45

t lDAS

IACK deassertion after AS deassertion

1.5T+45

tlDRD

IAKEO/IAKEOP deassertion from AS deassertion

40

tUDnom

IAKEON/IAKEOP delay from IAKEI assertion (IAKE! asserted
7.5T or more after AS

tHO• ax

IAKEO/IAKEOP delay· from AS assertion (IAKEI asserted less
than 7.5T more after AS

t OH

IAKEI hold after AS deassertion

0

PIRQ assertion to IRQ assertion delay

0

tPL\D

2

25
8.5T+25

tPiDD

PIRQ deassertion to IRQ deassertion delay (applicable to level
triggering only)

tPnom

PIRQ minimum assertion width (applicable to edge triggering
only)

90

PIRQ setup (proper level/edge) before AS assertion

50

Read data delay from CSEL assertion

6.5T

Read data or XVEe delay from iAKEi assertion (lAKE I asserts
7.5T or more after AS)

6T

tPRQS

3

tRDD
tRDDI-.in

t RDDI _

t RDYD

1-106

100

Read data or XVEC delay from AS assertion (IAKEI asserted less
than 7.5T after AS)
RDY delay from CSEL assertion

Confidential and Proprietary

100

7.5T+25

13.5T+25
8.5T

9.5T +25

-

MieroVAX 78S16
Requirements
Min.
Max.

t llSTL4

Minimum RESET low time

t lln

RESET assertion to DALs three-state
RDY delay from IAKEi assertion (JAKEl asserted 7.5Tor m~re

tum....

200 I.Is
100
8T

after AS)
tllyDJ.ax

15.5T + 25

RDY delay from AS assertion (IAKEI asserted less than 7.5T after
AS)

t llyoS

DS deassertion from RDY assertion

0

t WC5H

CS < 2:0 >, WR hold after AS assertion

0

twcss

CS < 2:0 > , WR setup to AS assertion

15

tlll'oo

Write data delay from em assertion

tWDH

Write data hold after D'S deassertion

3.5T-5
20

tVDD must be greater than or equal to 4.75 V during th~ period.
2Maximum time is 100 os unless a PIRQ line is asserted durinS a register read or an lACK cycle. In
these cases the IRQs will be asserted 100 os after the end oithe register read or lACK cycle.
'This ensures that the PIRQ signal will be recognized if the bus cycle started by the AS signal is a
read or interrupt acknowledge cycle. Otherwise the VIC will hot recognize the PIRQ signal until
the bus cycle has ended.
4The VIC requires 5T + 250 os after ~ is deasserted to complete its internal reset. The AS .
signal should not be asserted until after this delay.

Mechanical Confipration
The MicroVAX 78516 is available as a 68 pin cerquad surface mount package or socket mount
package. The physical dimensions of each package is contained in Appendix E.

Confidential and Proprietary

1-107

~. VirtllafthemoryDMA(direct memory access) controner, compatible witp VAXano'Mi61:>VAX

architectures

. .

.

• Full 32-bit architectute and implementation

• Peak data transfer rate of 10 Mbytes/sec
• Maximum DMA transfer length of 1 Gigabyte
• Maximum I/O bus~dressspa~eqf16~S:,
. -

" , : '• .

.

".",.

, i .,
, : '"

~

"

,.
!

.

!

• High-speed CMOS technology

• Single 5-Vdc power,supply

n..........J-..:
.•...•

·~'l''''on

The MicroVAX 78532 MicroDMA controller is a high-performance, dual-ported, foW'~e1
virtual memory DMA contronet. Figure 1 is a block diagram of the MicroDMA controller.

Figure 1 • MicroVAX 78.532 MicroDMA B¥Wk Diagram
It provides two buses, one for the MicroVAX interface and one for the I/O devices. It interfa'q:sthe
32.bit MicroVAX bus with high·speed peripheral devices or inwJligent I/O subsystems ontheS-,
16·, or ;2-bit I/O bus. The MicroI?MA is used for the foilowingapplications:
• ForDMA transfers between memory (or devices) on the MicroVAX bus and memory (or devices)
are the I/O bus
• As a window futo

Micr6vAX memo~ for devices onthel/O bus

• As an access port to devk~s OJ:). the I/O bus.£qr thetvU(;WYA}l:.

'

~/

- "

MicttSDMA is ..~ .VirtualiliemoryDM4, .oon~ller with£Ull lJA.fcqlllpatiblememClty
management capabilities. It processes address translation for :t>MA transfers so that this function is
transparent to the user. Page table information is accessed from MicroVAX memoryancl used
directly without alteration. The MicroDMA. also performs data buffering and byte alignment for
transfers between the MicrovAx bus and the I/O bus.
. .

The

• Pin and Signal Definitions
The input and output signals and power and ground connections of the MiCl'oDMA controller 132pin package are shown in Figure 2. The signals are defined in the following paragraphs in two
groups-signals that connect to the MicroVAX bus and signals that connect to the I/O bus. The
power and ground connections are defined with the I/O bus signals.

VODM

VSSJ<4

iREG

rrRi

iTiU

iii1

W

CU{I

VSS!

tOALOO

IDAL02

tOAI,04',

10.11.\.06

tOAl08

IDALIO

IDAt 12

1DAU4

VOOlQ

"'Xl

"'

.,"

iiMi

H9

so

iiM2

1>0

90

iiiMi

'"
'"

79

IDAl~9

lDAUO

iiM6

iiiS
iWii

ffiii
iAS

iDiiiG
iOPiNT

iCiili

'"

17

"

10At.21
100\l22

",.

100U]

".
'"

"
"
"
70

I04L25

,,.
".

129

iEiii

130

,.....0

'"

132

TEST'

5ir
Dii

MktoVAX 78j32 DMA
TOP VIEW

59

iiiiii

11$1'

CSO

VSSXl

,."
"

DAL29

63

"".....

Con£idential and· Proprietary

DAUD

",,[21

DAL2E1
DAUS

OAl24
DAU3

.Am
"",2,

55

DAUO

54

OAlIS

:"l

DALlS

M

VSOX2

.,

Figuw: 2· MicroVAX 78532 Pin Assignments

1-110

64

."

12

0$'

iAKED

.,

59

11

lOA",>
1OA13O

tDAL31

5.

JO

10AL28

OAl..3t

"

iiM2

IDAUD

lOA'"

.7

..

iiiii

10Al.24

.6

.,

iiiO

Vail
5Miii1

.

6'

Wii

AS

IDAl17
:IDAl~8

7.

123

,,.

iDiiii
ifiijV

JOALI6

041.17

-

Preliminary

MkroVAX Bus Inte:rfaee Signals

~'f911qwing ~s CO~ctto the Mict(lVAX bus and inclu4Ef.da~andaddress \ines,btJ.s conuvI
and statli$llneS, inte,rrljlpt control lines, and a dock input line. The bus signals are summarized in
Table L A more decii1ed.deScription of the signal functions is contained in the following

paragraphs.

'

.

~52

."

,

~i'and aeldress"lliieS <31:00>~Thl1e multi• . ~ lines usedtotransfet data and address infor,mation·between:the MicroDMAand devices on the

DAL<.~l:Ol)1ti.·.

49·33

~AXbus.

Input/ou~puti i\dctl:ess strobe-Asserted to indicate a valid
, ii.;;~sontheDAL<31;OO> lines .

10

5

l)atal!ttObe~Ass~te:~~g

a rea4~e to indi~
cattthat the DALl('3t:OO> lines are available 'to
·~t~ data and deassertedto indicate that data has

.'OS'

'~~i~y~, ...J\~~1i •.4w:~. . a wri~ . ~e . to
in~te that datai,$i~ble on th~tfJW~ 31:00i~
,~~$,and deasserted
the data is to be removed.

when

2
~;:

9-6

BM<3:0>

input/output

'.'

; '-AS!~d to~~te~referencein the YObusrange
'Q~itfJa "MicroD¥Aregister de£ineli by t~e
DAt.< ;1:00> lines,:
{'.,. q"/ . . ~,

Byt~mask-Sp'ecifies

the b}"tes of the

nAL<31:00> lines that co$invalid
d1ttl,
":

~_~",--_ _~........_ _........_ _ _- - , - _...........,""'",".,.....
' .................
'

27

input/output·

'vets~iidf,U£fers ~enab~.
',y".""'h,),""'

",:.\;.,:,:

",;,'>,:"/,<;':""i:/t~

RatdyMllStG.~~y~.ta.t.!l$fe,t'$.~n
d¢¥~i~~~:"l removing
data from the bus.
.
' , ' , ",
if,

26

input/output

,,'

}<-,;"

,""'<

"i','

,,,_,"

-

,

,)'

,,-",

"

Error....,-Asse.rtedto indicate· aiittler condition in
the current MicroVAX cycle.

Confidential and Proprietary

1·111

Pre~···
Pin

Sipl

Input/Output

13-15

CS<2:0>

fuput/outpllt

22-25

IRQ < 3:0 >

output

Interrupt request-Interrupt request lines for the
devices on the MicroVAX bus that are maskable.

29

DMR

output

DMA request-Asserted to indicate that a device on
the MitroVAX bus is. requesting control of the
MicroVAX bus.·
.

20

DMGI

input

DMA grant· input-Asserted to cause the
MicroDMA controller to become bus master of the
MicroVAX bus and perform a DMA transfet:

output

DMA grant output-Used only with systems having
more than one MicroDMA controllers. Asserted
when a DMA request· is to be granted to another
contfuller in the daisychain.

input

Intenupt acknoWledge enable in-Asserted to allow
the MicroDMA to respond to a MicroVAX interrupt
acknowledge.

output

Interrupt acknowledge enable out-Asserted when
an interrupt acknowledge is to be processed by
another device in the interrupt daisychain.

input

Oock in-A TTL clock input used for timing.

19

iA'KEi

16

104

CLKI

103

NC

Control staths-Indicatesthe type of cYcl~lking
performed on the MicroVAXbus.
.

No connection.

MkroVAX Bus Interface LiDes
Data andAdtkess (DAL<31:00»-These are time-multiplexed bidirectional lines used to
transfer data and address information between the MicroDMA controller and other MicroVAX bus
devices such as MicroVAX CPU and MicroVAX memory. The strobe signals AS and DS determine
whether data or address information is tmo.s£erred.

Address Suobe (AS)-The fa1l.ing edge of the: AS signal indicates that lines DAL < 31:00 > contain
~va1iCl address. On the falling edge of AS, the MicroDMA controller latches the .address and
inteqJrets it as. a phy:sical address. If the CSL line is als6 asserted, the CPU is performing a
MicroDMA access op~ration. This access could be to a MicroDMA register. or to a location in I/O
bus memory spaee. Refer to the Access Operations section.

1£ the MictODMA controller is bus rilastet; the AS line indicates that lines DAL < 29:02 > ) contain a
valid MicroVAX physidd memory address. ThbDAL<31:30> lines contain a 1 and a 0,

respectiVely.
The falling edge of the AS signal also mdicates that the information is valid on the BM < 3:0> ,
CS<2:0>, and W'R lines.

1-112

Confidential and ProprietarY

Preliminary

Data stroLe (DS):"'-This sigpal~Pestinting~fll'lt#p~~. ~ ~tt\trimSfer portion of a read
or write cycle. '~. a read cycle, the falling·edge aiDS signal indieates~hat"theDAL< 31;00.>:
lines are available'to receive data and the rising edge indicates that the data mabout to be latd.1~.
During a write cycle, the falling edge of the D'S signal indica~that~tais pl'eSefi.t on the
DAL< 31:00> lines andth.e:rising edge indkatesthat the data is about to be J!iemoved..
Byte Masks  lines~
valid during the curtent datatransfet Duringawrite'C}1Cle,.litltsiW< 3:iJ> specify which byres ot
the DAL < 31:.00 :>Ut1.~~co~ y~d data.' :pUljllgare,a4st8~,Jines B~,: specify which
bytes oftheDAL.~.3l;OO>,lines must be supp1iedwith ~data by an aternaldevice. Th,
information on lines,BY<.3:0>·· is 'Vaiidoll the fidling '~'. of the·As: signaL The byte mask
assignments are 'shown in Table 2.
..

of

>

,',.',

DAL<31:2-t>
DAL<23:16>
DAL<15:0S>

DAL<07:0tb

Write (Wi)-This signal specifies the direction OJf data tr$S£er on lines DAL<31:00> for the
rurrentbus cycle. When I"ISserted,tlie cW.TefiiSiiS ~tel ~~~.O:(l.the~.<.>:~()O,~ ..~
during the data transfer portion ofthe cycle. When\'im: is nousserted, anaternal deVice supplies
the data during the data transfer portion of the cycle or lines DAL < 31:00> do not contain data.
The WI{ signal may be used by extemallogic to control the ~j~9. of.I>M-~U~,~~. ~
WRillput 4validon me~~eo~Jhe ~si&tW.
.' (r,i';';:!":'·,,· ' . '.

Data:lJ.' ~t~E)~ThU~r~:~\~~m.t~i~~,by~rQal~'to
control the DAL<:ll.;OO> ~ ~~v!!'~,,~_~MAisbus~ter,it~s
the DBE signal to enable the buffers or transceivers anddeastle$tmi! to disable them.

Ready (IDY)-This signal is asserted by external logic to indicate that it will complete the current
bus cycle. When not .asserted•. itextends. the.~bus.cyple iora slower memory. or periphe:ral
device. The RDY or1!im:S'Pal rtmsfi:be~;tQ~_;tht~tbus cYde'.
Bus Ertor (EiOO-TlUs siPu is as~t,-~,~;d logic toi1x:ticate ~t an error ~
withthecurrentbuscycle.suchasbustimeout6rparityetrQJ;·hasoc:curredandtoetJdthe~

bus cycle. The ERR or iIDY signal must be asserted to endthe cun-ent buscycle.lf tlle Micro~
is bus master and detects the assertion of tlW ~ signal, it ends the bus cycle, interrupts~~
MicroVAX CPU (if enabled), and reootdstheerror.TheMicroDMAasserts the·E&R signal Han I/O
bus error (iElm) signal is detected during aniltcess transfer.
.,'
Control Status(CS<2:0> )-TheMi~DMA'uses these lines together with the WR ~;(to
. recognize and respond to the type'of bus cycle c:urrently·inprogress. Table 3 lists the bus cycle
selections.

1·113

...
Write

Preliminary .

MicrovMf1S532
BusC:xcleType .

Wi

CSline
2

1

0

1

0

0

0

reserved

1

0

0

1

reserved

1

0

1

0

reserved

1

0

1

1

interrupt acknowledge

1

1

0

0

read instruction

1

1

0

1

read lock*

1

1

1

0

read data, modify intent

1

1

1

1

read data, no modify intent*

0

0

0

0

reserved

0

0

0

1

reserved

0

0

1

0

reserved

0

0

1

1

reserved

0

1

0

0

reserved

0

1

0

1

write unlock*

0

1

1

0

reserved

0

1

1

1

write*

*Used by MicroDMA as bus master.

MkroVAX Bus Interrupt Conttol
Interrupt Request (IRQ < 3:0 > )-These lines are used by the MicroDMA to interrupt the
MicroVAX CPU; The vectors associated with these interrupts are provided to the MicroDMAby
. MicroVAX system software. The interrupt request assignments are listed Table 4.

in

Table 4 ~ MicroVAX 78532 Interrupt Request .A$signments
IRQ Line

Interrupt Level

1PL 15
IPL 14

1-114

Confidential and Proprietary

MicroVAX BUsDMA~,
DWA .lteqaest r(i)iiI).;....nIs sigria1, is'8SSertedbJ,tbeMkroDMA controller to initiate a DMA
ttansfetovertheMi~VAX'bus~ Ont;he~;£olJ;wing the assertion of the lThIf signal, the
MicroVAX CPU disables the bus and assert$,~:.eSigna1. ~ allows,
~croOMA.to take
c()ntrol ' ',' •.. ' .
.' can be as~ by the

the

MicroDMAonly.i£ ~J)MA enab1ebitof~)~;«mtrQl~$~~heenset... ',. .
'
DMA..
Iaput(i.mGl)-Wberi~,';ijle'~J)M.N>¢t)~J1er takes control of the'·
MiciOVAX bus for II .DMA ~ ~S' J.irlti it'CW~ in'. d"i~yenain.if more than one DMA
device is in 11 system.TheMicitWAx:'tUJ~~·~l(!fed tothe··.~ lineofrhe rugnest priority
DMAdevice:I£:thisMictoDMA~~rn6f~ aDMA 1'tlq!.;leSt pending, it asserts its
~1ine,
CO
to the§fl4itj~~\$t;~tDMAdevke. A MicroDMA controner
cannotpeftoml'tl DMAthlbsfer O!ttlleMi~~~6ntilit$I)MGI line is asserted.
DMAGtaat()qtpUt{)$ikW)-~~is~:~~~\~~~.'thanoneD~'~~aw! .
is asserted when a DMA request is to,be ~toa\~ priority OMA device in the daisydtain.

Grant

wJndt n1leets

. 'Hn bOth the~VAXb1.JS

CPU and MlcroVAJC'FPU.

'

. I/0Bas Inwface·SipIs
The.lJObus inkrfaceJines connect to the,lJO~d~s!lP9. co~st (If data and ~s li.nces .a11d
contnnJines,ThI: bus,si,snals,~.~i*l,~lej. A ~j~d descriptiol:)(~fthe signal
functi011$iscontained~the£~~pht
'. ,

<:omidential andP1'Oprietary

1-115

67·82

85-101

IDALinput/butput . Dttaandaddress lihes< 31:00 >:... lunetnwtiplexed
lines •usedwtranSfer data and '. address . information
betweertthe MicroDMA and,devices-ASSertedto ilidi~l1te
that a device on the I/O b1i$ requires servke. '.•:Line$
ITR<3:0> corresponds to duinpe13Vu'Origh G,
respectively.
"
.,' "
.

input

I/O interrupt request-Interrupt request lines lor I/O
bulPdevices., Lines lIR <3~0> corresponds to diannel
3 through 0, respectively. Typically uSed to terminate a
DMA .transfer.

input/output

1/0 address strobe-Asserted to indicate that the
IDAL < 31:00> lines contain .valid data., .'

input/output

I/O data strobe'""'":"Asserted during. a re:adcy.;:kto mdi~
cafe that th(! IDAL < 31:00 > lines are availab.k to
receive data and deas~to indicate that the d~ul. has
been received. As~ed during a write cycle toindicate
that data is~liton thell)AL<31:00> ll,nesat¥!
deasserted to indicate,thatdat!;l is to be.rem.o:ved ..

input/output

1/0 data buffer enable.:....Assettedto.'enablethe
IDAL< 31:00 > transceivers.

121-118 IBM<3:0>

input/output

I/O byte mask-Specifies the bytes on the
IDAL < 31:00> lines that contain valid data.

'JWR

input/output

'I/Owrite-Specmes the direction of data 'tranSfer on
'. the IDAL< 31:00> lines. Asserted to indicate that the
current bus master will be the source of the data. Can
be used to control the directioliof thetDAL<31:00,:>
lines.

131

inplltjoutput

I/Chcidy.:....Usedto synchronize datatransfers;hetween
devices operating at different transfer ratesonthe'I/O
bus. The current bus master must wait for the assertion
of this line before terminating the cycle and removing
the data.

130

input/output

I/O error-Asserted to indicate an I/O bus error condition. In the window mode, it also may indicate a
MicroVAX bus error.

129

input/output

I/O DMA request-Asserted to indicate that a device
on the I/O bus is requesting mastership of the I/O bus.
The transfer could be I/O DMA, DMA, or I/O access.

106-109 IIR<3:0>

124

123

1-116

,i'iSBE

Confidential and Proprietary

Pm·

Preliminary
.••..~
I"

ipput/output

21

I/O DMA gtllOt-Asserted to ~thaftbeJlO;bus
has been re1eru1ed by the currentJjO J;nq;. ~tp allow
~DMAt~~to~'
.
MiC1'O'\1AXbu$;~Causes:;""du:" 'MJ,croDM;A)to

input

requesttht·~ ;6fffieMiCroVAXoos;'!l'ypicaHy'used

wbet\pe~,~;~traQ_

11

VBG

114

nmc'

127

IOPIN't

'output

I/O'"~~~r;~~:Aiset~'~Wn;;~tiY"'DMA

channd initia

'. ·.i ."·'N:,· ··t~a#,ydp~sof.

--~--~~~~~~~--~~~~~

28

'iil')Q{

inpUt .

..~;~.

Itra,~.;

iJO'~~A$~'to

115
.

,

..

.

.

····,~~ilp~'*~,tp

"'J,u~
~e.,~~ '-"~~
, •.
enab'k' ~:~fiMA 't;o

··.~. •t1ien'lastu~;lheItDbushy;&fault"" .

. iOwt "

1,132

'I'est

input

U8

ICLKO

output

~st..,..~· Wt·t5tirtgm.e;Mi.trQDMA;~ller
during~.,\'J;i,;:,

I/O clock output......Ac1ock pulse output at one-fourth

of the eLK! frequency.
32,101
18,50,
84,116
31,102

Vss

input

17.51
83,117
30

I/O Data and Address

.

I/O DataaodAddren 8d.(IDAL<~l~OO;»- TheselineS!Are tlme-mu1t~"h~ona1
and are used to tran$i'er data and address infEi'matio.n betWeenthe,~DMACbnt:WU~ aQd
. devkesor oontroUerson the ItObus:1'beilines can.~pt'Q~£ot8-i J6·, or-.J2"bit.data
widths', 'I'he; strobes~als m,lt'Ildms··deterll'linewb\rtherthe.bus camesduaor ~
information.

1·117

-

Prelimin.my

I/O Address Strobe (W)-If the 1;v,[i~M4.is~U/l ..tnast~;:JtU8e$~emsign:aliojqdicate that
the IDAL<31:00> lines contain valid address information and that the information on
mM < 3:0 > and iW'Risalso \1alid.The iASline 1S use lines
are\1alid during the current data transfer: During a write cycle, the IBM < 3:0 > lines specify the
bytes that contain valid datafofwriting:During a read cycle, the IBM<3:0> lines specify the
DAL<31:00> lines that must be supplied with valid data by an external device. The information
on the IBM < 3:0 < lines is valid on the falling edge of the iAS signal.
The validity oUhe bytes also depends on the width of the current data transfer. If the current
transfer isl byte wi4e, the information on the IBM < 3:0 > lines is not significant because a byte is
transferred orily' on the IDAL<07:00> lines. H the current transfer is 2 bytes wide, the
IBM<3:0> lines specify whether lines IDAL< 15:08> and/or IDAL<07:00> contain valid
information. If the·rurrent transfer is 4 bytes wide, the valid bytes are specified hy IBM < 3:0> .
Table 6 lists the I/O bus byte mask assignments.

an

Table 6· MicroVAX 78')2 I/O Bus Byte Mask Assignments

I/O Byte Mask Line
Valid Data
IBM}

IDAL< 31:24 >
IDAL<23:16>
IDAL< 15;08>
IDAL<07:00>

I/O Write (iWR)-This signal specifies the direction of data transfer on thelDAL < 31:00> lines
for tMrurreht·bus cycle. When the IWR signal is asserted, the current·bus masterdrivesth~ lines
during the data transfer· portion of the cycle;. When the IWR signal is not asserted, 1ltl external
. device supplies the data during the data transfer portion of the cycle or the lines are idle. This signal
maybe used by external logic to control the directional the IOAL"" 31:00> transceivers. The fWR
information is valid on the falling edge of the iAS signal.

1-118

Confidential and Proprietary

-

I/ODataB• . B~ {I6iE)-..,This signalmaybettBdW!:Ilh~;1WRs~ toamtrolextermd
IDAL<,31!OO>~vers and buffers. When asserted, it enables a~ot buffer and
when l'lOt aSserted,the O\1tputs of the tmnsceiverorxbufferate disabled.
I/O Ready (ilO)Y)-During I/O bus cycle data transfer, the bus master must wBit for the assertion
ofthissignalbeforetenm.,.ting the.cui'rent cycle. andx1at~.(tit"re~da.·.&omdlC'Ous.
1/0 •••·Ert:or '(MII)--Thissp indica~*·~bt1S.:el~COndItiOl!rothe ~tx.b6s
~ter> If theMicroDMAdetedS·the.·assertiOhot··$is·. •jJ(,~~itnMAttanSf~lt ·~the
eUitetlt·· bus"'cyehe, mc.t·interruPt$'tbeMicln'\1AX·.~PU;(if~~)1>If··~l\tiCtbnMA··deteCi$ tfle

Biijlsignald~ IlWindo\v transfer;it~ieriimkRsOthat ~buserrofis i1~ftfit& the:ttO
processor.

lIQ,.·1la1a1.iaosfet Control

~,""'&om·I/O·Periee.(iiii< :ltO»-'lbiJ~is~~atJ..JI€)bus;~­

~DMAserviceot by an ~d~1_t"~~5"~~~;' ~1itlb·is
~ed.to.~.cbannel Sim~~~ •.·~.~~~·to~'cbannel~
with "iNO' athigbest·priotityand 1m. at~t;tflJ,~ ~~~to.theaSsertiqnp£a
line by performing a DMA uans£er if the channel is in DMAr$'.Ide ora window transfot,if ithe

channel is in window mode. The MicroDMA does not admow~ these sj~;.~~~

performedau~~tkaIly. ~.~inypl~dirl.t~ ~.~st~~j£.,fI;,~~

device ~ IU\Nu:knpwlq~;$~.
.
Interrupt Request £rom I/O Device (ttf<):O> )-These ~are asserte4.byB~~Qn:the
I/qhtJs tointettUPl,thet&~~.. O~,~el$a~Jo,.e~~~~lfa ~t·~~
wlu,:nthe~o~. .ljtleis~,:the~t~~i~~~Y~~~~
channelis disabled . ~JO!the~pt.~••~.*.1'~",~·~.~a~. ,~
if;rterrupt. conditiOll tbatcausedthclinet9be~~'fr1.,l>e,,~~t~.~~ .c.an,he
enabled again.
I/O BusDMACOnttol
IfODMA' ~t (16II1i),:--:rhls signal iS8$serledbfa~ti~busm~teitotequd$ttt0buS
ownership. When theMicrdDM1\i$ttHeaefmlt;buS;'~~(~Rmtmt'l$~,t~
'i'D'M'I is an inputsigrtalthat istypidUy..~.~l/Op~s$Otor'U_~;ontheI/Obus;
When the MicroDMA is not the de£aultWs l:ll4lSter, it assertstne'~ line to use the bus :for a
local memory transfer or a transfer to a peripheral register.
I/O DMA Grant (1l)im)-This signal is asserted by the CUl'...entbus·' master'inl'¢S1)OOse to the
IDMR signal. It indicates that the bus master has released the l/Obusandthat·1oUS ownetsbip.truly
now be assumed by another device.
I/O ~ Conttol.,

. " ......

............. '.

. '., ....... '. '"

.<

MkloV'AX BUI~it tvm-ThissigriaI~assettedpy~I(Q Pl;fJce5SOl' tocOntrolt:he

Micro\7~blls when'~OrtniJlg aw~~rt'l~~tO~S:&sn£lid:~the
~croVAX cpuaccessesthel/Obusatthe~~;j(nlflinesiiliould be interpreted as a registe1' address; It should be
deasserted at the enq q£ the cycle~

I/o. P!Ocessor Intarupt(lOPINT)..,..Thi& signal is asserted when any ofthe MicroDMA channels
initiates an interrupt to an I/O p1,'O(:esso~ Becausemor; than on~.channel may interrupt atcthe same
time. t:h,e I/O processor.must poll.aU the c~ls.to.determine the.highestpriority interrupt.·l'he
I/O processor software deasserts this ~. by settitlg the £NABLEbit pr clearing the.:poNE bit
of the channel control register of tpe interrupting channel. or .py. redirecting the interrupt.to
the MicroVAX CPU.
MkroVAX Bus Loc:k {I1OCK)-'This signal is asserted by an I/O processor to create locked
MicroVAX bus cycles during a window reference. During window read and write Operations,
asserting this signal ·causes Mic:roVAX memorY read and wrlteoperations to be,~d .witb··a
code of WI on linesCS <2:0 > (read lock or write unlock). The MicroDMA continues to assert ·the
DMR line while the~signal is asserted, but OOesllot assert the read lock cOde while accessing
the page table information required by the willdow access. It dOes not check the sequence of reads
and writes ..

MisceDaneous Signals
itO Bus ~(IM:A,grER)~When asserted, the MicroDMA becomes bus master of the Ifo bus
by default and it responds to the assertion of the IDMR signal by asserting the IDMGlineand by
.
releasing the I/O bus.

CLiP SeIed(Cfi;)-This signal is used by the external logic toallow·the MicroVAX CPU to access
the 1/0 buso! a MiciODMA interr1aIregister. When'asserted, theinf6rmation on the
DAl. < 23:00> lines is interpreted as an I/Obus physical address if lines DAt < 23 :09 > are not all
Zeros or the info.rmationon lines DAl. < 08:00 > are interpreted assn internal register 'address if
the DAl.<23:09> lines are all zeros.
Reset (RESET)-When asserted, this signal sets the MicroDMA to a specified. initial state.

Test (TEST  contains an internal pull-down circuit;
.

I/o. Bus' Qock Output (ICLKO)-Aclock output at one-fourth of the CLKHrequency.
Power and Ground Connections
Voltage (Voo)-5Nde. power supply.
Gtmmd· (Vss)-Ground reference .

• MieroDMA Controller Operation
The Micrp.QMA controller is a multipurpose interface that can be used ~ween.the MiqoVjJc
processprar;~a compatib1e32~bit I/O bus forperipherai devices Of controllers. The MicroDMA has
£ou,riodq,endendy programrpable.channels thro~ which DMA, wind()w,and I/Ohus data
trapsferscan be per£orfiled. ·The four chinuels. are~l!signed a Hxed priodtYm~h chlln~ 0 having
the ~l>t priop,tr. Devi~.thatttlUlSfer.4~ta at th~highest! rates or metnorytransfeqshotlldbe
assign~4the l~t priority chapn~s to
theslowerdeviq!s to.aecessthe bu,s. This ~on
briefly describes the characteristics
these transfers and the otheJ; major .functi0l1s
the
MiCl"ODMA.
. ..
,
' ! ..
.

of

1-120

allow

Confidential and Proprietary

of

1}rpe$of DMATtaosfets
The ptimary function of thet.MiGraIDMAistopmfo~bto&.~'HMA,~~~arnwnts
of data: ClltJ bettarufetftd !between,a~ceodnteJligentl.lOSUbsys~mon theJlO bUswli\ldeviee
or memory on MicroVAX bus without CPU intervention. DMA transfers may als<>involve~
~~n,;data~n't1aytd4ataib\!l~.
Window!T~I~devices. on.thel1Q .·bus·.earti~;!';~l\J.dndows>;';in tht!MiE1,liQVAX

memory. Window transfers allow the devices to access buffers aytd to operate from wotkqueuedri
~Ory> Them.ca~ 1IllIiI·~of i\'~C1W:~4¢~e{.l~!t~~~;~~~~jo~l{W~Vl~~~
~yin'!.101veaddres~~shltion~datI'J~g~~tl

.

's>< "

•.

flO DM.t\ .1NMlers.;...TheMrortIDMAoodtrol1fJt;cat1i,;~br~;1ocal 01/0 ·.bus~.tttlnsfers .
it.tdependehtlyof~het aCtivitiesthat'1lI3Yoo;tti~.ihe~AXJ)us• • i(ODMA ~

allows the I/O bus memory to be used as a large buffer for data tate s~ ..Xhel/QbttstMnlory
can be filled by a channel in I/O DMA mode while another channel in DMA mode transfers the data
to MicroVAX memory. I/O DMA transfers do not involve adclress translation or data realigrunent.
Access Operations
The MicroDMA controller allows the MkroVAX CPU to access memory and devices on thel/O bus
similarly to devices directly connected to the MicroVAX bus. These access operations are
performed by the user application and define a region of MicroVAX physical address space as an I/O
bus access range. When a range is referenced, an access to one or more equivalent locations on the
I/O bus is performed. Access operations may occur in parallel with channel operations such as
DMA, window and I/O DMA transfers. During access operations, data packing and unpacking is
performed and address translation or realignment is not performed.
1·121
-

-----

---

-._-------_._----------'----------------:,

Data Realignment'-:Data iii MiQ'OVAX memory orTIO iriemorycan be accessed on arbitrary byte
boundaries. 'The re#ignmentcanoccur as pattof a lDMA or window transfer. During realignment a
data byte, word, or longword on one bus. is .buffered by the MicroDMA and shifted for proper
~nment on the other bus.
Data Buffering-The MicioDMA provides a buffer oftwo longwords per channd to improve DMA
transfer speed and efficie,ncy. 'The data from a device on one bus can be read and buffered until the·
device on the other bus is ready to accept the data, The buffer can also be used to convert bytes and
words from the I/O bus into longword data for the Micio.VAX bus .. This improves the speed of
MicroVAX bus transfers. During realignment, the buffer is used to hold data temporarily that is to
be realigned.
Data Packing and Unpacking-Data packing and unpacking is used for byte and word DMA
transfers and access operations. It asembles or separates data between the MicroVAX and I/O bus.
Data packing is performed to arrange byte or word data into longwords for the MicroVAX bus. Data
unpacking separates longwords into bytes and words for the I/O bus.
Address Translation
'The MicroDMA performs virtual to physical address translation for DMA and window transfers if
mapping is enabled for the channd involved in the transfer. 'The MicroDMA uses page table
information stored in MicroVAX memory and maintained by MicroVAX system software. This
information includes the system page table (a collection of page table entries contiguous in physical
memory), the process page tables (a collection of page table entries contiguous in virtual memory),
and the global page table used to describeshated pages.
Bus Interfacing

The MicroDMA controller prevents different activities between the buses from interfering with
each other. 'The controller appears as a DMA peripheral device on the MicroVAXbus. It requests
and relinquishes the bus through the DMA request andgrandogic. 'The bus interface. uses signals
with the same timing characteristics as those used .for any· other MicroVAX bus device. such as
MicroVAX·memory.
'The controller appears as an I/O processor or CPU on the IjO·bus. The I/O bus supports the
simultaneous use o£S.;l6-,and 32-bit devices and has an interfacing protocol simil~ to :that of the
MicroVAX bus.
The MicroDMA may operate as a master or a slave on either bus. Therefore, the bus controhignal
AS (address strobe), for example, can be used as an input or output. Thble 7 summarizes the
MicroDMAoperations. It specifies operations for which the MicroDMA is bus master and shows
the source and destination buses for each. MicroDMA internal registers can be accessed from either
the MicroVAX bus or I/O bus.

1-122

Confidential and Proprietary

-

Preliminary

MicroVAX 78'32

'fable 7· MiaoVAX 78'32 OpeNtion Summary
Destination
Address
Source
Bus
Bus
Translation

Data

Data

Alignment

Packing

Yes

Yes

Yes

MicroVAX/IO

~s

Yes

No

10

10

No

No

No

MicroVAX/IO

IO/MicroVAX

No

No

:res

Operation

Bus
Master

DMA
Transfer

MicroDMA

MicroVAX/IO

IO/MicroVAX

Window
Transfer

IOP*

IO/MicroVAX

I/ODMA
Transfer

MicroDMA

Access
Operation

MicroVAX

*IOP = Intelligent I/O device or I/O processor.

Registers
The MicroDMA controller contains 63 byte addressable, user-accessible registers. The MicroDMA
controller contains· one set of global registers that defineS the Overall. state of the MicroDMA
controller and four sets of channel registers that define the stat~o£each channel. The registers may
be accessed from either the MicrovAXbus or the I/O.bus.~
The registers occupy a 512-byte region in MicroVAXI/O address space. The base address of this
region is defined by the user and must begin on a 16-MbYte boundary. The user's application
decodes lines DAL<31:QO> and.assetts the cSL line whenan~ddress in the register region is
referenced. When CSL is asserted, the information on the DAL < 08:00 > lines is interpreted as a
register address if the DAL<23:09> lines are all zeros. HDAL<23:09> are not all zeros, the
information on DAL < 23:00 >is interpreted as an I/O bus address and an I/O access cycle will be
performed. (Refer to Access Operations.) The addresses associated with the global registers are
listed in Table 8. Table 9 lists the addresses assigned to the channel registers.

Table 8 • MicroVAX 78532·GJobaJRegisters.Adchess Assignments

ReadfWrite

Address·
(hexadecimal)

Mnemonic

(RfW)

Description

000

DGCTL

RW

Global ControlRegister

004

DSBR

RW

System Base Register

008

DGBR

RW

Global Base Register

Reserved

OOC-03C

*Register addresses must appear on the DAL < 08:00:> or IDAL <::: 08;00:> lines. References to
reserved addresses will cause unpredictable results. Some registers have more than one function
depending on the current operational mode of the MicroDMA controller.

1-12.3

Confidential and Proprietary

~'el!!!fN'[1l!1i1l:!l

~":I:

8""'!!l

4 .. _ _ _

~_.

-

_____________

~_,

_ _,__ """ __ ,__ _

-

Preliminary

MicroVAX 18'32

Table 9· MieroVAX 78532 Channel Regis1;efIiAddress Assignments

Address"

Read/Write

CbO

ChI

Ch2

Ch.3

Mnemonic+

RfW

Register:!:

040

080

OCO

100

DCCTLx

RW

DMA Channel Control

044

084

OC4

104

048

088

OC8

108

DCINTx

RW

DMA Channel Interrupt Vector

04C

08C

OCC

lOC

DCIOBAx

RW

DMA I/O Base Address

04C

08C

OCC

IOC

DCIDSx

RW

DMA I/O Source Address

050

090

ODO

110

DCIBCx

RW

DMA Initial Byte Count

050

090

ODO

110

DCWMx

RW

Window Mask (window)

054

094

OD4

114

DCBOx

RW

Byte Offset (mapping on)

054

094

OD4

114

DCUPAx

RW

MicroVAX Physical Address (no map)

058

098

OD8

118

DCSPTEx

RW

SVAPTE Register (DMA, window)

058

098

OD8

118

DCIDDx

RW

I/O DMA Destination Address

060

OAO

OEO

120

DCCSVx

R

Current System Virtual Address of PTE

064

OA4

OE4

124

DCIOAx

R

Current I/O Bus Address

068

OA8

OE8

128

DCBCx

R

Current Byte Count

06C

OAC

OEC

12C

DCPTEx

R

Current Page Table Entry

070

OBO

OFO

130

DCPAx

R

Current Physical Address

074

OB4

OF4

134

Reserved

078

OB8

OF8

138

Reserved

07C

OBC

OFC

DC

Reserved

Reserved

'"Hexadecimal notation. Register addresses must appear on the DAL < 08:00 > or IDAL < 08:00 ~
lines. References to reserved addresses will cause unpredictable results.
tx = Register designations 0, 1, 2, or 3, depending on channel number.
:j:Some registers have more than one function depepding on the current operational mode of the
MicroDMA controller.
To access a register from the I/O bus, the user's application decodes IDAL <23:00> and. asserts
the lREG signal to indicate a register access. The MicroDMA interprets the IDAL<08:00>
information as a register address. The I/O buswrite access to the registers is controlled by bit 10 in
theDGCTLregister, the value of which is usually determined by MicroVAX system software.
DMA Global Control Register-The DMA global control register (DGCTL) is used to control,
configure, and deternUne the global status for the MicroDMA controller. The format of the register
information is shown in Figure 4 and defined in TableJO.

1-124

Confidential and Proprietary

MicroVAX 71:5:}2

Preliminary

if::
;:::I::::H::::
I .

DEAD

n): ++ ~mrnI'

.
1 1
.
lOWE
DIiON
MWE

RESET

EBLIM

Figure 4 • MicroVAX 78532 DMA Global Control Register Format

Table 10· MicroVAX 78532 Global Control Register Desc:.ril'Uon
Bit

Description

31

DEAD (Dead1ock)-Aread~only bit that is set to indicatetllat a deadlock situation
existed in a previous I/O bus access operation. Geared during a reset operation or
by writing a one to this bit.
Not used (read as zeros).

30:24
23:12

VID (Version identification)-A read-only field that contains.the version number
of the MicroDMA chip. For the initial Version.of this chip. thetiliti:lbet is 00000001.

11

MWE (Maintenance ~iteenwle~:--Settina~sread/wri~ bit enables writing to
any register includingth~read-only regis~rs.Jtis~itlte~ for diagnostic and
manufacturing test usage only. The status/error bits cannot .he set when this bit is
set. Geared during a reset operation.

10

lOWE (I/O bus register write enable)-A read/write bit set to enable an I/O device
to write data to a channel register. When cleared, a write to external ~gisters will be
ignored. CI~ during a reset o~tion.

9:5

BUM (Burst limit)-Specifies the m~imum letigth (in.~ <:ycles)of a DMA blltst
on the MicroVAXbuswhen EBLlM (bit 1) is set •• Clearedd,l:\ring a reset operation.

4:3

WID fWidth)-A read/write fl~rdtFlat specifies the' data width of 1/0 bus access
operations as follows. These bits Me cleareddut1ng areSet;op.eradon.

<

WID Bits

,,'

,,-,',

';.

-

'-"

' - ' , , '

';

Data Wldth

04

03

o
o
1

0
1
0

1 byte
lbyte
2 bytes

1

1

4 bytes

2

DEN (DMA enable)-A read/write bit that must be set to allow the MicroDMA
controller to perform DMA transfers on the MicroVAX bus. Clearing this bit
prevents the MicroDMA f1'?Ill~Ss~~tingcI5iVM.Cleared durmga,reset operation.

1

EBLIM (Enable burst limit)-A read/write bit. When set~BL:rM(bits 9:5) defiJle
the maximum length of a DMA burst. When· clear, the I)MA burst length is
unlimitecl. Cleared during a reset operation.

o

RESET-A read/write bitthatisset toinitiare,areset operation that forces the
MicroDMA to a known itlitial state.Settmg'thisbit has the same effect as asserting
the RESET input.
..
..

ConfJdential and Proprietary

_._-----------

1·125

...

Preliminary,

MicroVAX'78'32

DMA System Ba" Register"';' The DMA system base register (DSBR) is used in address translation
and contains a copy of MicroVAXsystem base register which is the physical address of the base of
the system page table. Refer to MicroVAX 78032 CPU in this databook for more detailed
information on the MicroVAX system base register: The DSBR must be loaded by MicroVAX system
software before any address translation occurs so that MicroVAX memory will not be corrupted.
The format of the register information is shown in Figure 5 and defined in Table 11.

Figure 5· MicroVAX 78532 DMA System Base Register Format

Table 11· MiCl'OVAX 78532 DMA System Base Reaister Description

Bits

Description

31:30

Not used (read as zeros).

29:02

SBR (System base register)-Contains the physicallongword address of the system
page table. The same as bits 29:02 of the MicroVAX system base register.

01:00

Not used (read as zeros).

DMA Global Base Register....,...The DMA global base register (DGBR) contains a copy of the
information in the MicroVAX global base register. It is used by the MicroDMA during virtual-tophysical address translation to locate the global page table that describes the shared pages in system
virtual memory. The register must be Ioadedby MicroVAX system software before any virtual DMA
activity so that MicroVAX memory will not be corrupted. The format of the register information is
shown in Figure 6 and defined in Table 12.

Figure 6· MicroVAX 78532 DMA Global Base Register Format

Table 12 • MiCl'OVAX 78532 DMA Global Base Register Description

Bits

Desc:.ription

31:.30

Not used (read/write).

29:02

GBR (Global paseregister)-Used to locate. the global page table in the system
virtual memory. The~ as bits 29:02 on the MicroVAX global base register

01:00

Not used (read as zeros).

1-126

Confidential and Proprietary

Preliminary

MicroVAX 78'32

DMA Channel Control Registers (0·)- The four channel control (DCenO through DCCTL3)
registers, one for each ch.annel, are used to control, configure, and determine status for the four
channels. Three translation error bits are used for system, process,aoo global tranSlation errors~
Translation errors can occur when a bus error is detected while fetching a page table entry, by an
invalid.page table, and by a global page table entry that lead$ to another global page table entry.
The cause of errors is indicated only by the error bits that define the location in the translation
process in which.the errol; occurred. For~mplef ~~he el;tc?t occutteddQring the global part of
translation, then the global error bit will be·set.,1J.:'h,e£or1l19,tof t~register information is shown in
Figure land defined in Table 13.
..

IPR

CHAtlIITOr, WIDTH

CIR TE~M

ISPTE

Figure 7· MicroVAX 78.532 DMA Channel Cont1tJfRegisteYS (0-3) Format

Table 13 • MicroVAX 78'32 DMA Channel eonurolRepters{O.3)Deacription
,

, <

'j'

"

' .

'

•••••

, '

"\

Bits

Description

31

ERR (Error)-A read-only bit ,seqo iQcation, or by setting the ENABLE
(bit 00).
.

26

IBE (I/O bus error)-A read-only bitsetto indicate that a bus errol' occurred on the
I/O bus during aDMA transfer on this channel. Cleared during a reset operation, by
writing a 1 to this location, or by setting the ENABLE (bit 00).

ConfiQential and Proprietary

1-127

...

Preliminary

Bits

DeScription

25:24

Not used (read as zeros).

23

OONE~Aread-only bit set to indicate that the current channel operation has
terminated. Cleared during a resetoperation when written to a 1 or when ENABLE
(bit 00) is set.

22

IOI (I/O interrupt)-A read/write bit set to indicate that the IIR line for this
channel has been asserted. If the 101 (bit 10) is also set, the current tranSfer will
terminate. Cleared during a reset operation or when ENABLE (bit 00) is set.

21:18

Not used (read as zeros).

17

PHYS (Physical)-A read/write bit set to disable the address translation for this
channel. The contents of the DCSPTE;x: register are ignored and the contents of the
DCUPAx register are used as the first physical byte address of the transfer.

16:15

IPR (Intemlpt priority)-Read/write bits that specify which IRQ line is asserted if a
channel error occurs or when a DMA operation terminates as follows:
IPR
16

o
o

Bits
15
0
1

1
1

0
1

IRQ Line

. iRQ(}
IRQ1
IRQ2
IRQ3

14:13

NXTCH (Next channel)-Read/writebits that indicate the number of the next
channel to be enabled in a chaining operation when CHAIN (bit 12) is set.

12

CHAlN.;....Aread/write bit set to start a transfer on the channel specified by
NXTCH channel number when the current transfer terminates without error.

11

nop (Interrupt I/O processor)-A read/write bit when set and IE (bit 02) is set, it
causes the channel interrupts to be directed to an I/O bus processor when the
IOPINT signal is asserted: When cleared and IE (bit 02) is set, the channel
interrupts are directed to the MicroVAX CPU as determined by the IPR line.

10

101 (Termination on intettupt)-A read/write bit set to terminate DMA transfers
on this channel upon the assertion of the IIRsignal for this channel.

09:08

CTM (Count mode)-Read/wri~e bits that determine whether addresses on the
MicroVAX bus and/or I/O bus will remain the same or be incremented for data
transfers on this channel; MicroVAX bus addresses are incremented by 4. The I/O
bus addresses· are incremented according to the data width of· the I/O device
involved in the transfer.

CTM
09

o
o
1
1

1-128

Bits
• 08

0
1
0
1

MieroVAX Bus
I/O Bus
Address
Address
sanie
same
same
incremented
incremented
same
i n c r e m e n t e d , incremented

Confidential and Proprietary

-

MicroVAX.78512

07:06

WID'l'H...,....Read,lwrite bits that specify; the.data width of the I/O device associated
with the channel as follows:
wmrH Bitt
Data Width
07
06
1 byte
o
o
1
1 byte
o
1
o
2·~s
1
1
4 bytes

05:04

MODE (Mode field)--Readj'W'ritebits that speci£}r the operational mode of the
channel.
MODE Bits

os

04

0
0

0
1
0
1

1
1
03

DIR (Direction)-A read/write bit that specifies the direction of a data transfer in
DMA mode. Set to specify a transfer from the I/O bus to the MicroVAX bus. Cleared
to

02

Operational Mode

specify a transfer fromthe:MkroVAKbu$t()-~I/G bus.

IE (lntettuptcmah!e)...,.....t\ ~~te bitsettoe~bk~e/~pts to devices on
the MicroVAX bus and I/O bus. Must be set before or at the same time ENABLE (bit
00) .is set. cleared '.during a 'reset operation . to iiilinediately disable all channel
interrupts.

01

00

TERM (Tenninate)-A read/write bit, set to force the termination of the current
channel operation, but alloWS" buffered datatobewrltten.Cleared during a reset
operation'Of by setting ENABLE (bit 00).

ENABLE (Enable)--A~writl! bitsetto ~iatdydear bits 31:27 and 23:22

of this register and to co~ the chanM1 tU;Cotding to bits 17:03. Cleared during
a reset operation to i~ately abort the ~nt channd. operation. Any buffeted
data is lost.

DMA ChannelIn~~ Register$(O-J)-Thechannel interrupt veetor/(DCINTO through
DCINT3) registers cOntain the Vector value used by MicroVAX CPU to process interrupts related to
the operation of the channeL The priority.oft;Q,,1f interrupt is: specified:by thl! LPR field of the
register. The format of the register information is shown in Figure 8 .

. Figure 8· MicroVAX 78532 DMA Channel Interrupt Registers (0-3) Format .

Confident;ial andPl;'Oprietary

1-129

Preliminary

Mic:roVAX78532

DMA I/O Base Address Registers (O.3)-The DMA I/O base address (DeIOBAO through
DCIOBA3) registers contain the base address of the device or memory on the I/O bus that will
participate in a DMA transfer on this channel. When the DMA transfer is started, the register is
copied into the DCIOAx register which may be modified during the transfer. The DCIOBAx
register information may be used in subsequent transfers or in chaining operations. The format of
the register information is shown in Figure 9.

Figure 9· MicroVAX 78532 DMA I/O B~e Address Registers (0-3) Format

DMA I/O Source Address Registers (O-3)-The DMA I/O source address (DCIDSO through
DCIDS3) registers contain a 24-bit physical I/O bus address that specifies the source of an I/O DMA
transfer. This address may be associated with a peripheral device or the start of a memory buffer in
I/O bus memory~ The format of the register information is shown in Figure 10.

Figure 10· MicroVAX 78532 DMA 1/0 Source Address Registers (0-3) Format

DMA Initial Byte Count Registers (O.3)-The initial byte count (DCIBCO through DCIBC3)
registers contain the initial byte count for a DMA or I/O DMA transfer. When the transfer is started,
the register information is copied into the DCBCx register where it is decremented as the transfer
proceeds. The maximum DMA transfer length is 1 Gbyte and the maximum 1/0 DMA transfer
length is 16 Mbytes. The format of the register information is shown in Figure 11.

Figure 11- MicroVAX 78532 DMA Initial Byte eountRegisters (0-3)Format

DMA Wintlow Mask Registers (O-3)-The DMA window mask (DCWMO through DCWM3)
registers are used during window mode data. transfers to help determine where in MicroVAX
memory a window mode transfer will occur. Refer to the Window Transfers paragraph for more
information. In window mode, the register information is logically ANDed with the address on the
I/O bus to specify an offset within the window. The format of the register information is shown in
Figure 12.

1-130

Confidential and Proprietary

MicroVAX18532

Preliminary

F::~.J: ::::::::H7: : : : : : : : : : n
S

Figure 12-MicroVAX 78532 DMA Window M.4sk Registers (0·3) Format

DMA Byte Offset Registers (0·3)-The DMA byte offset(DCBOO through DCB03)~gisters are
used with the DMA system virtual PTE (OCSPTEO through DCSPTE:3) registers to 4etermine a
memory location where a mapped DMA·· buffer or MicroVAX· window starts. The register
information is used tofind the physical address of thdirst (baSe) page of the tranSfer. Each register
contains an offset (in bytes) that,
added to the base page address, specifies the physiCal
address of the first byte of the buffer or window. Refer to the Address Translation paragraph for the
use of these registers. The format of the register information is shown in Figure 13.

when

Figure 13· MicroVAX 78532 DMA Byte Offset Registers (0-3) Format

DMA MicroVAX Physical Address· Registers (0.3)-The DMA MicroVAX physic31 address
(DCUPAO through DCUPA3) registers contain the base physical address in MieroVAX memory for
unmapped transfers in DMA and window modes. For unmapped DMA mode transfers, this register
specifies the physical address in MicroVAX memory at which a DMA transfer will begin. For
unmapped window mode transfers, an offset is added to the contents of these registers to
determine the starting address of thetransfer. The offset is obtaif1eJd by ANDing the address on the
I/O bus with the DCWMx register. The fomrat of the· register information is shown in Figure 14.

Figure 14· MicroVAX 785J2DMAPhysicai Address Registers (0-3) Format

DMA System V'trtual Address PTE Registers (O-3)-The system virtual address PTE (DCSPTEO

through DCSPTE)) registers contain the system virtual address of a page table entry. The page table
entry points to the base·add~ssof the page at which a mapped DMA buffer or window begins. An
offset (expressed as a number of bytes) contained in the DCBOx register is added to the base
address to specify the address of the first byte in the butfer or window. The format of the register
information is shown in Figure 15.

Confidential and Proprietary

1-131

.-

MicroVAX785J2
313029

00

~ :::::::::::H7eis : : : : : : : : :: : : : : I
0

Figutr! 15 • MicroVAX 78532 DMA System Virtual Addtr!ss PTE Registers (0-3) Format

DMA I/O Destination Address Registers (O-3)-The DMA I/O destination address (DCIDDO
through DCIDD3) registers contains a 24-bit physical 1/0 bus address that specifies the destination
of an I/O DMA transfet This address may be associated with a peripheral device or the start of a
memory buffer in I/O bus memory. The format of the register information is shown in Figure 16.

Figutr! 16· MicroVAX 785)2 DMA I/O Destination Addtr!ss Registers (0-3) Format

DMA Current System Vtttual Address PTE Registers (0·3)-The current system virtual address
PTE (DCCSVO through DCCSV3) registers contain the system virtual address of the page table
entry currently being accessed. If a translation error occurs (for example, when a page table entry is
invalid), the system virtual address of the erroneous page table entry is in this register. These
registers are read only. The format of the register information is shown in Figure 17.

Figure 17· MicroVAX 78532 DMA Current System Virtual Address PTE Registers (0-3) Format

DMA Current I/O Bus Address Registers (0.3)-1£ an I/O bus error occurs, the DMA current I/O
bus addre~s (DCIOAO through DCIOA3) registers contain the I/O bus address associated with the
error. These registers are read only. The format of the register information is shown in Figure 18.

Figure 18· MicroVAX 78532 DMA Current I/O Bus Addtr!ss Registet! (0-3) Format

1-132

Confidential and Proprietary

-

Preliminary .

MicroVAX 785:12

DMA Current Byte Count Registers (0.3)-The current byte count (DCBCOthrough DcaC3)
registers contain the byte count for the transfer currently in progress. It specifies the number of
bytes remaining In thetrans£et. TheSe registers are read only. The format of the register
information is shoWn in Figure 19.

Figure 1~. MicroVAX 785}iPMA c.urrentByte CoujdR.egtstersro.:3)Formaf

DMA Current Page 18ble Entry Registers (0-3)-The DMA current page>table ~try (QCJ!I'EO
through DCPTE3) registers contain the page table entry currently being accessed. If a translation error occurs due to an invalid page table entry, the erroneous page table entry can be found in
these registers. These registers are read only. The format of the register information is shown in
Figure 20.
.

Figure 20 • MicroVAX 78532 DMA CurrentPage TttbkEntry RegisteiS (0-3)Format
,
"

"

',.'

;-,

','

'\"',

.,

-",',-

,.

'

,

,

DMA CurrentPhysicd Address Registers (O.l}:-I£:aMicrovax; buserroto(;curs, theOMA Cl.ij:'rent
physical address (DCPAO through DCPAJ} registet5:CIU1 usually be decrelllentedby 4 to obtain the
MicroVAX longwonlphysical addresSI.\$S0ciatedWiththeerrot.An~ception is when bits 8:0 = 0
during a mapped transfer (Le. ,a page boundary.iserossedJ.and thelongwondthat caused the efror
is the last longword of the previous page. These registers are read only. The format of the register
information is shownm Figure 21.

Figure 21 • MicroVAX 78532 DMA Curretit Physical AddressRigisters (0-3) Format

Confidential and Proprietary

1-133

,..

Preliminary

MicroVAX 78532

• cLanneJ Operations
The type of operation performed by a channel is specified by MODE bits 05 and 04 of· the
appropriate DMA configuration register (DCCTLO through DCCTL3).·· A channel operation is
performed by the following:
• The configuration data is entered into the DMA global control register.
• The I/O device involved in the transfer must be appropriately configured and enabled. This is
usually accomplished by an access operation that writes data to the I/O device.

• In the MicroDMA, the user registers that define the parameters of the channel operation are
written (initialized) with appropriate data. If mapped transfers are to occw; the DMA global base
register and DMA system base register must also be initialized.
• The data that configures the channel and initiates the channel operation is written into the DMA
channd control registet

DMA Transfers
A DMA transfer requires the user to specify the starting MicroVAX bus address, the starting I/O bus
address of the transfer, and the number of data bytes to be transferred. The configuration
parameters such as the direction and data width of the transfer are then written into the
appropriate DMA channel control register.
For unmapped DMA transfers, the starting MicroVAX bus address of the transfer is completely
specified by the physical byte address of the beginning of the data buffer. This is contained in the
DMA MicroVAX physical address register. For mapped DMA transfers, the system virtual address of
the page table entry that points to the first buffer page and the byte offset from the start of that
page to the first data byte must be entered. These addresses specify the beginning of the buffer in
virtual memory when the DMA· system base register and the DMA global base register are
initialized. The system software computes these quantities from a virtual address and the process
context, and loads them into the appropriate DCSPTEx' register and the DCBOx register to define
the virtual buffer. The starting I/O bus address of a transfer is contained in the DMA I/O base
address register.
The initial byte count is contained in the DMA initial byte count register (DCIBCx). At the
beginning of the transfer, the DCIBCx register information is loaded into the current byte count
register (DCBCx) and the reglster is decremented as the transfer progresses. When DCBCx reaches
zero or becomes negative, the transfer is complete and is terminated.
Configuration information for the DMA transfer is contained in the DCCTLx register. In addition
to specifying the data width and direction of the transfer, it also contains a "count mode" that
specifies which addresses will be incremented !lnd the value pf the increment as data is transferred
from one bus to another. Addresses to or from the MicroVAX bus may be incremented by 0 or 4
because memory is always addressed in longworos on that bus. Addresses to or frof)1 the I/O bus
may be incremented by 0,1,2, or 4 depending on the programmed width of the I/O bus. I/O bus
addresses are not incremented for DMA transfers to or from a peripheral device through its data
register. I/O bus addresses are incremented for I/O bus memory to MicroVAX memory transfers.
Table 14 lists the initial conditions of the registers involved with a DMA transfer. When these
conditions have been established, a DMA transfer is initiated by the assertion of the ITR signal by
the I/O device. A simplified flow diagram of the actions of an I/O device, the MicroDMA controller,
the MicroVAX CPU, and MicroVAX memory during a typical DMA transfer is shown in Figure 22.

1·134

Confidential and Proprietary

-

Preliminary .

MicroVAX 78'32

Table 14 lists the initial conditions of the registers involved with a DMAtransfer:. When these
signal by
conditions have been established, a DMA transfer is initiated by the assertion of the
the I/O device. A simplified flow diagram of the actions of an I/O device, the MicroDMA controller,
the MicroVAX CPU, and MicroVAX memory during a typical DMA transfer is shown in Figure 22.

m

18ble 14· MicroVAX 78532 DMA 'liansfer Initial Conditions
Bit

Content

DGCTL

OC(16)·(DEN =1, WID 03:02 (byte)

DCIOBA2

1001(16) (1/0 base address)

OCIBC2

OA(16)(Iqitial byte count)

DCB02

3316}(Byteof£set)

OCSPTE2

System virt:u8l address of base page table entry

DCCTL02

03

~

DCCTL2

05:04

10 (DMAfmode)

OCCTU

07:06

01 (Byte wide)

OCCTU

09:08

10 (HOLD I/O addre~a.nd INC MicroVAX address)

(Transfer is to MicroVAX)

Data to be transferred is 01,02,03,04,05,06,07/08,09, and OA.

Confidential and Proprietary

1·135

, MieroVAX
~I'lmory

MicroVAX

CPu

110 Bus "

MicroDMA
Controller

Device·

,t
WAITING 'FOB

D~TA

MAY PERFORM
ADDRESS
TRANSLATION

Figure 22· MicroVAX 78532 DMA Transfer Flow Diagram

1-136

Confidential and Proprietary

Preliminary
MloroVAl<
CPU

Micl'OVAX 78"2
110 BUS
Device

MiCNOMA

Controiler

ASSERTS As; Wrf. ETC.

ASSE\lTS Rl'W

LOOPeACK

TOWAIT.,OROATA

Figure 22 • MicrOVAX 78532DMA ffans/er
Flow Diagram
(Continued)
.
'.
,.

:

-

"

~'-

, ";

Confidential· and ,Proprietary

,,'

MicroVAX785)2

Preliminary

An example of a DMA sequence to transfer 10 bytes of data from a bytewideI/O device at I/O bus
address 1001 (hexadecimal) to a buffer in MicroVAX virtual memory at offset 33 (hexadecimal)
from the base page is listed in Table 15. Channel 2 is used for the transfer.

Table 1.5 • MkroVAX 78532 DMATransfer Sequence
Byte MicroVAX
Bus
Count Operarion Address'" BM < 3:0 > Data
10
write

---30

0111

9
8
7
6
write

---34

0000

5
4
3
2
1
0

write

---38

write
---3C
Transfer terminates

0000
1110

I/O

mM < 3:0 >

Bus
Data

1001

xxxO

xxxxxx01

1001
1001
1001
1001

xxxO
xxxO
xxxO
xxxO

xxxxxx02
xxxxxx03
xxxxxx04
xxxxxx05

1001

1001

xxxO
xxxO
xxxO
xxxO

x-xxxxx06
xxxxxx07
xxxxxx08
xxxxxx09

1001

xxxO

xxxxxxOA

Operation Address

read
01xxxxxx read
read
read
read
05040302 read
read
read
read
09080706 read
xxxxxxOA-

1001
1001

*The upper bits of the MicroVAX address depend on the page table information and are not shown.
The lower two bits of the MicroVAX address are indeterminate and not necessarily zero.

Window '&ansfers
To perform a window transfer, a window (Le., a set of I/O bus addresses that correspond to
locations in MicroVAX memory) must first be defined by the user. The user application decodes I/O
bus addresses (IDAL<23:00> such that the ITRx signal is asserted when an address in the
window region is referenced.
When the I/O processor begins a window access, the MicroDMA uses the IBM < 3 :0> information, and the width of the I/O bus (byte, word, or longword) the effective byte count of the transfer
and to perform substitution for the low one or two bits of the incoming address, shown in Figure 23
and Table 16.
For unmapped window transfers, the base of the window region is completdy specified by the
physical byte address of the window in MicroVAX memory. This must be loaded into the
MicroDMA physical address register (DCUPAx), and is added to the window address derived from
the I/O bus device requesting the window access.

1-138

Confidential and Proprietary

-

MicroVAX78S32
IDAL<23:D2>

TQOCBCx
(BVTE COUNTf

00
WINDOW ADDRESS (W.o.)

Figure 23 • MicroVAX 78532 Window Addressing Logic

This window address is derived by ANDing the effective 24-bit I/O address with thewindow'mask
register DCWMx). Using the window mask to mask off the "don't care" bits from the address,
simplifies the external hardware required to decode the
signal. The sum of this window
address and the DCUPAx register forms the MicroVAX physical address of the window transfer. The
actual transfer will require 1I1Ofe than one access ,~. MicmVAX ~ is the.
bytes cross of
longword boundar}r..
. .,' .

rmx

accesS

&r mapped wln<;low,trans£ers, both the SYlj;tem virtual ad~sof th~ p~~tabk entry and byte
offset in the £irs~ window page must be s~ied ~ly,toaDM,4 t;ansfetTh~incomingI/()bus
address and byte tQaSb define a displacetn¢Dt;£rom the base ol,t&~.Ths is masked by the
contents of DMA window mask register and ~.to compute a new system. virtual address PTE and
byte offset.
For both mapped.and unmapped window transfers, the width qhhe channd is defined by DMA
channel contJ.t)l register bits 7 and 6. .
.,
,.
.

COn£identialiend Proprietary
.....v......_....." ...'_'R""ll...
P.f"_ _
C!O...
V'R.......""''"'_'_1iI1Jf_......_ .......,.... .......,__

~_""_'_"''''Il-IlI_

_~

~

1-1.39

_ _ _"'__ _ _ _...
~

,,~_~

-

MicroVAX 785j2

Table 16 • MicroVAX 7~'32 WiQdow Transfer Byte Count and Effective Displacement

Channel Width

IBM<3:0>

Byte Count

Effective I/O
Bus Address < 01:00 >

Byte

xxxx
xxOO

1

IDAL < 01:00 >

2
1
1

IDAL<01> '0*
IDAL<01> '1
IDAL
    '0 4 .3 00 01 10 11 00 01 Word xxOl xx 10 Longword 0000 0001 0011 0111 1000 1001 1011 1100 1101 1110 2 1 .3 2 1 2 1 1 10 00 01 00 "(') indicates concatenation. If the MicroVAX CPU performs an I/O bus access when' a windoW' access is being performed, a deadlock may occur as the MicroVAX and I{O processor each wait for the other's bus. The I/O processor can ensure a unique access·to MicroVAX memory. Before beginning a window access, the I{O processor must assert VBR and wait for VBG to be asserted. Because the MicroVAX pus is acquired by the· MicroDMA before the window access, the possibility of deadlock is eliminated. Aftei the window access (or accesses), VBRshould be deaSserted to allow the MicroVAX processor to regain control of its bus. The MicroDMA chip conciinshardware that detects the presenCe of a deadlock if it occurs. It breaks the deadlock by causing a bus error on the MicroVAX bus by asserting the ERR· signal and sets a bit in the DMA global control register to inform the MicroVAX CPU of the cause of the error. Thble 17 lists the initial conditions for an example of a window transfer. The sequence of events involved in this example is shown in Table 18. One byte is to be transferred from the I/O bus to the MicroVAX bus. The channel is configured in word mode. The user application decodes I/O bus addresses in the range xxxlOOOO-xxxl01FF (hexadecimal) as window references. The I/O processor writes data word 55xx to location 10022 (hexadecimal). Confidential and: Proprietary Preliminary , MicroVAX1SSl2 Table 17 • Mic:roVAX 78S32 Wmdow 1iansfer Initial Conditions Bit Content 04 DEN = 1 .IFF (Mask high bits of I/O bus address) DCWMx DCCTLx 05:04 11 (Wirtdilw mode) DCCTLx 17 1 (Physical addressing) DCCTLx 07:06 10 (Word width) 7341 (MicroVAX memory base physical address) DCUPAx Address Table 18 •MieroVAX 78.532,Wmdow ~erSequence Data Qpeqa~ ·.\.ddress . 1J~<3:0:> ~ta 10022 xxOl I/O Bus xxxx55xx Write 7364 1110 Operation xxxxxx55 Write The MicroDMA adjusts the value of the lower bits of the I/O bus address, as shown in Table 16. A byte count of 1 is llent to the DMA 'current byte C6tlnt :reiistet. • , ' 1 I/O DMATransfer An I/ODMA: transfer is an unmapped, unbUffereddita transferbetweert an I/O bus source and an I/O bus destination. Because buffering arid datil liligrimeht are not performed, the source and destination addresses must be aligned on "nat_'boundaries.ilf a channd.is configured to 'perform word transfers; theacidresseslitU$tbe:a multiple of 2. If a channel is configured to perform loogword transfers,. theaddressesrnust beainultiple of 4. An' I/e· DMA operation has the following sequence: 1. The appropriate ITR < 3:0 > signal is asserted by an I/O device. 2. An I/O bus read cycle is performed at the address specified by the DMA I/O source address register (DCIDS). 3.If bit 8 of the DlvIA channel cohtrorrewster (DCC1L)iss~t,theDCIDSregister is in.:remented by the width of the channel specified by bits 7:6 of the DCCTL register. If cleared, d)e.DCIDS register is not changed. 4. An I/O bus write cycle is performed at the ~dress speci£iedby the D.MA I/O destin,atio.1,l address (DCIDD) register. The appropriate ITR< 3:0> line should be de asserted by the end of this write cycle if the I/O device is not ready for another transfer. 5. If bit 9 of DCCTL register is set, the DMA destination address (DCIDD) register is incremented by the width of the channel. If cleared, the DCIDD register is not changed. 6. The byte count initially contained in DCIBC register and subsequently contained in DCBC register is decremented by the width of the channel. If the byte count is zero or a negative value, the transfer terminates. If it is not, the transfer continues at step 1. Confidential and Proprietary 1-141 Preliminary MicroVAX 7Sl32 • &cess OperatiOI,1S Figure 24 shows the relationship between a user-defined "access region" in MicroVAXphysical address space and its counterpart in I/O bus address space. The user application decodes MicroVAX bus addresses such that csr; is asserted whenever a reference to the access region is made. The access region always starts on a 16-Mbyte boundary and the lower 512 bytes of the region are reserved for the MicroDMA internal registers. MicroDMA I I I I I I MicroVAX BUS XXFFFFfF I/O BUS ACCESS XXOOO200 XX0001FF XXOOOOOO MicroDMA REGISTER ACCESS -- I/O BUS FFFFFF I/O BUS LOCATIONS I I 000200 MicroDMA REGISTERS I 000000 Figure 24 • MicroVAX 78532 Access Operation When the CSL signal is asserted and the address on lines DAL<23:09> is equal to zero, a MicroDMA internal register is accessed by the address on lines DAL<08:00>. When the DAL<23:09> address is not zero, the I/O bus is accessed. An access operation may require the transfer of a byte, word, or Iongword as determined by bits 4 and 3 of the DGCTL register and the infortpation onlinesBM<3:0>. The following are. more detailed examples of the access operation. Example 1-able 19 lists the sequence required to perform an access operation to write a word in I/O bus· memory from the MicroVAX CPU. The number 1234 (hexadecimal) is to be written into location 2002 (hexadecimal) and the I/O bus width is 16 bits. The MicroDMA has an address of 21000000 (hexadecimal) in MicroVAX physical address space. Table. 19 • MicroVAX 78532 Access Operation Sequence 1 I/O MicroVAX Address BM<3:0> Data 21002000 0011 1234xxxx Write- 1-142 Operation Address 2002 IBM<3:0> Data Operation xxOO Write Confidential and Proprietary 1234 MicroVAX7S'12, Example 2-Table 20 lists the sequence required to perform access operation 2 from the MicroVAX CPU. The number 332211 (hexadecimal) is read from location 2001 (hexadecimal), The I/O bus width is 8 bits: ThE! MicroDMA has'an address of'21000000 {hexadecimal)in MicroVAX physical address space. The initial condition of the DGCTL register is bits 4:3 = 01 (I/O bus byte width). 18ble 20 • MicroVJ,1\X 785.32 Access ()peJation Sequeru:e 2 < Address ;BM;-;-<~3;-::O:::-:>~ ,> ,'" ," .',,- ", _.,,', _. t I/O MiaoVAX Data Operation Addtess Read- 21002000 0001 2001 .2002 2003 mMData Operation x:~.~O Read x:xxO xxx{) ---11 ---22 ·--33 Read Read 332211xx • Address Translation When bit 17 (PHYS) of a channel control register is clear, mapping is enabled and virtual to physical address translation will occur for DMA and . window .. mode transfers on that channel. For mapped DMA transfers, the information requirements to completeIyspeclfy a buffer in virtual memory after the DSBR an.d DGBRregisters h~he~ninitia1ized lire that the DCSPTEx register must point to the page table entry that references the phY,'sicalpage in which the virtual buffer or window starts. The DCBOxregistermust contlrlnthe byte, offset from the beginning of that physical page to where the virtual buffer or window starts:' Figure 25 shows the address translation for DMAtrans£ers ~atq~ references to process (PO or P1) or system page tables. Figure 26 shows a DMA transfer th~t uses references to global (Le., shared) page tables. Further information related to VAX memory mahagement is in Chapter 5 of the VAX-ll Architecture Reference Manual (EK-VAXAR·RM). Confidentialand Proprietary 1-143 - Preliminary . .... 31 MicroVAX1g,;32 09 OS DCBOXLI______ ~--------O----------------~I--~;·~8-YT-E----~1 3130 29 DCSPTEx 00 09 08 VPN OF PTE 10 EXTRACT 31 2322 o ADD 31 OSBR 00 PHYSICAL BASE ADDRESS OF SYSTEM PAGE TABLE YIELDS 31 00 PHYSICAL BASE ADDRESS OF SYSTEM PTE ~ PERFORM MEMORY REFERENCE TO FETCH SYSTEM PTE; CHECK VALID. IF BUS ERROR. OR INVALID. OR GLOBAL,. DCCTLx<3O: 28>" 001. ~~ 00 SYSTEM PTE PFN 00 09 08 29 PHYSICAL AORESS OF PO, PI, OR SYSTEM PTE L -__________________ ~ __ --~--~ PERFORM MEMORY REFERENCE TO FETCH PO. Pl. OR SYSTEM PTE. CHECK BITS < 31. 26, 22>. IF BUS ERROR. OR INVALID, OCCTLx<30:2S>= 010. iF VALID. THEN USE PFN TO FORM PHYSICAL ADDRESS. IF GLOBAL, TO TOP OF.FIGURE B. 00 PTE PFN 29 09 08 PHYSICAL ADDRESS OF DATA OR INSTRUCTION PTE <31.26.22> lXX 000 001 01X PTE TYPE VAUDPFN VALID PFN GLOBAL PTE (SEE FIGURE 261 INVALID. I/O ABORT Figure 25· MicroVAX 78532 DMA Address Translation for Process and PTE References 1·144 Confidential and Proprietary 00 Preliminary 00 GLOBAL PAGE TABLE INDEX EXTRACT 24 23 020100 ADO SYSTEM VIRTUAL BASE ADDRESS OF GLOBAL PAGE TABLE OGBR YIELDS 31 30 29 SYSTEM V I RTUAl ADDRESS OF GLOB ALPTE I 00 0908 VPN OF PTE BYTE I EXTRACT 31 I DSB A , 23 22 02 0100 f 0 , , 31 ADD I PHYSICAL BASE ADDRESS OF SYSTEM PAGE TABLE 31 oj 00 I YIELDS 00 ~ ( ;': " ;.-'vl PHYSICAL BASE OF SYSTa4 filE' ,d '" ; " ;::'}.' "',," '" , " PERFORM MEMORY REFERENtE'TO FEl'CK S¥STIlMPTt:; CHI!CK';Vll.tlO: IF BUS ERROR, OR INVALID, OR,GLOBAI...aoerL"'<30,28>~101V ' 21 20 31 00 I PFN 29 00 09 08 PHYSICAL ADDRESS OF , FINAL PTE PERFORM MEMORY REFERENCE TO FETCH GLOBAL PTE; CHECK VALID, IF BUS ERROR, OR INVALID, OR GLOBAL, DCCTl,,<30:28>=10L 31 00 21 20 I I PFN 09 08 29 00 J pHYSICAL ADDRESS OF oATA OR INSTRUCTION LOW BYTE = OCBO" IF FIRST TRANSLATION = 0 OTHERWISE , Figure 26 • MicroVAX 78532 DMA Address Translation for Global References Confidential and Proprietary 1-145 MicroVAX 78532 Preliminary i For mapped window transfers, the actual transfer might not start in the page referenced by the DCSPTEx register. The window address, shown in Figure 23) is used to compute new values for the SVAPTE register and byte offset shown in Figure 27. The operation is transparent to the user. A byte offset (BO') and system virtual address (PTE) are associated with point B in Figure 28 that must be calculated before address translation can occur. Figure 28 shows how these parameters are determined. Once BO' and DCSPTE' are found, they are used to perform address translation in the same way as for a DMA transfer (see Figures 25 and 26). SYSTEM VIRTUAL ADDRESS SPACE . B 1 DCSPTEx' HIGHER ADDRESSES 1 -~ WA WA' Ao DCSPTEx A == B'" WA'" WA' = t 80 of BASE ADDRESS WINDOW ADDRESS WITHIN WINDOW THAT IS REFERENCED WINDOW ADDRESS RELATIVE TO BASE WINDOW ADORESS RELATIve TO"FIRST PAGE DCSPTE,,' AND BO' ARE THE DISPLACEO SVAPTE AND BYTE OFFSET DERIVED FROM DCSPTEx AND BO. Figure 27· MicroVAX 78532 Address Translation for Window References 1-146 Confidential and Proprietary -, Pre1iminary 31 WINDOW ADDRESS (WA) Mkl'OVAX 7"'2 2423 I 0 00 I I ADD 0908 31 DeBOx I 2423 YIELDS BO r 00 0908 SOl 0 1716 31 I 1 0 31 WINDOW A DDRESS' (WAit 00 I 02 0100 0 o I ADD DCSPTEx YIELDS 31 30 29 DCSPTEx' 1 Figure 28· MicroV'AX 78532 WinfJow RejerencePdrameters . MieroDMA Interrutrts The MicroDMA can interrupt the MicroVAX CPU otan I/O p~sor; ~pending onthe contents of the interrupting channel's DCCTLx register. .. . . ' The termination o{'aDMA tran$fer sets DONE (bit '3) oftheDMA cMnnelcontrol(])CCTL) regist~ resUlting in an interrupt if IE (bit 02) is ~t. The.i,ntenupt will be' proces~d by the MicroVAX CPU if nop (bit 11) is cleared or by an I/O processor ifbit 11 is set. For a MicroVAX CPU interrupt, • The MicroDMA asserts an IRQ < 3:0> line according to the level encoded by IPR (bits 16 and 15) of the DCCTLxregister. " • The MicroVAXCPU responds by initiating an inteuupt~knowledge bus (}Tcle. Th¢ MicroDMA provides an interrupt vector frOm the the DCINTx register. • If the systemcoilta:ins more tharttme MicroDMA controller, the MlcroDMA closest to the CPU with respect to the interrupt daisychain that has posted art iilteriuptat the current level , participate in the interrupt acknowledge cycle. will • If .more cllan one channel on the MicroDMAcp.ntl'()ller ,has posted an, interrupt, at the current level, the channel with the highest priority will return the interiupt vector Confidential ~nd Proprietary to the CPU. 1-147 - Preliminary MicroVAX78'32 • The system software dears DONE (bit 2)) qf the DCCTLxregister after the interrupt has been acknowledged to prevent the same interrupt from heing acknowledged ag~. For an I/O processor interrupt, • The MicroDMA asserts the 10PINT signal. • The I/O processor polls all MicroDMA channels to determine which channel caused the interrupt. • The I/O processor processes the interrupt according to some I/O processor dependent protocol. • The I/O processor software dears DONE (bit 23) of the DCCTLxregister after the interrupt has been acknowledged . . Termination of DMA Transfers DMA and I/O DMA transfers are normally terminated when the byte count associated with the transfer and contained in DCBC register becomes zero or a negative value. A transfer can also be terminated before the byte count reaches zero when the TERM (bit 01) of the DCCTL register is set or when the external hardware asserts the appropriate IIR signal and TOI (bit 10) of a DCCTL register is set. The 101 (bit 22) of the DCCTL register is also set to indicate that termination was caused by an interrupt. The number of bytes remaining to be transferred can be read from the DCBCx register. DMA transfers can also be terminated when the i'E'RR signal Is asserted during an I/O bus cycle, when the E'RR signal is asserted during a MicroVAX bus cycle, or when an invalid page table entry is referenced.A global page table entry reference that is either invalid or refers to another global page table entry will also terminate the transfer. If the transfer is terminated by an error, a corresponding bit in the DCCTL register is set to specify the error type. The MicroDMA performs the following for all DMA transfer that are terminated. • Sets DONE (bit 23) of the DCCTL register. • Sets 101 (bit 22) of the DCCTL register if an I/O interrupt caused the termination. • Clears ENABLE (bit 00) of the DCCTL register. • Asserts the IOPINT signal if IE (bit 02) and nop (bit 11) of the DCCTL register are set. • Initiates a MicroVAX interrupt at the level specified by IPR (bits 16 and 15) of the DCCTL register if IE (bit 02) is set and nap (bit 11) is cleared . • Chaining The MicroDMA includes logic to automatically switch channels after the data transfer has terminated. This is defined as chaining and is normally used by I/O subsystems that continuously transfer data at high data rates. To reduce the time required to service an interrupt and reconfigure a channel following the termi{lation of.a DMA transfel; chaining is used to switch channels and the buffers associated with the channels to prevent data loss. Chaining is enabled by setting CHAIN (bit 12) of the DCCTL register and the next channel in the chain is specified by NXTCH (bits 14 and 13). If the current DMA transfer terminates without errol; the channel specified by the NXTCH bits begins operation. Interrupts that were enabled for the first chanriel will be serviced when the next: channel in the chain is active. The pins for the ITR < 3:0 > channels involved in a chain should be connected together to preserve the transfer requests. 1-t48 Confidential and Proprietary -- Preliminary The pins for the ITR < 3:0> channels involved in a chain should be ~nnectecl together txj.~ the transfer requests • . MiaoDMA Reset When the RESET line isasserted,the RESET (bit 00) of the DGCTLregister is set and the MicroDMA performs the following reset operation: • DGCTL regist:er-C!ears'theDEAD(bit31),IOwE (bit 10), wtO'bit<04:()3> an lines. 2. TheWRline is unassertc:dandthe CS<;2:0 >.lines life drivefl.1:Jy the busmastertoi,ndicate the type of cycle being performed. 3.· The bus master drivesthe~BM~·:<:::-O.j"".:O~>:-. lines. 4. The bus master asserts the AS signal to indicate that the address on the DAr.,. lines is valid a~ can be latched. When the· MicroDMA is be:\ngaddtessed for n;gi:ster OJi'·. I/O bus §\GCe$s,theCID: signal must be asserted. The AS signal also qualifies the~~for~iol;l ontbeCS<2:0> ,WR, and BM < 3:0 > lines. 5. The bus master asserts the DS signal to indicate that the bus is available to receive the required information. The bus master also asserts the DiE signallit~time whlcP. canbe used to control DAL line bus transceivers. • .. .• 6. If the slave can supply valid data within minimumaccesstimc>.it, asserts,.the R'DYsigna!·at the first sample window. after the assertion of AS and the master latches the data. If ·gata is, not available at this time, the master waits eight periods of the Cuq·~ and samples the ROY signal again. This sequence continues every eight clock peri~ unt:Uthe ROY signal is asserted. If a bus error occurs, the external logic or the bus slave will respond by asserting the ERR signal. The bus master must then process thc:error. The current bUl! CYl';lejs completed when the RDY or ERR signals are asserted. The bus master latches the request:eddata anddea~rts theDS line. 7. The bus master deasserts the line if it is asserted, and asserts the AS and DBE lines to end the bus eycle. m ConfidentiaLand Proprietary Preliminary MicroVAX 78532 MicroVAX Bus Write Cycle A MicroVAX bus master performs a MicroVAX bus write cycle to transfer information to another MicroVAX bus device. During the first part of the bus cycle, address and control information is sent to the bus slave. During the second part, the data to be written is transferred. The sequence of events follows: . 1. The bus master drives the physicallongword address of .the location to be read onto the DAL < 29:02> lines. 2 . The WR signal is asserted and the CS<2:0> lines are driven by the bus master as required. 3. The bus master drives the BM < 3:0 > lines and asserts the AS signal to indicate that the address on the DAL lines is valid and can be latched. When the MicroDMA is being addressed for signal must be asserted. The AS signal also qualifies the register or I/O bus access, the information on the CS <2:0 >, WR, and BM < 3:0 > lines. 4. The bus master asserts the DBE signal, drives data onto the DAL lines, and asserts the DS line to indicate that the data is valid. 5. If the slave can accept valid data within the minimum write cycle time, it asserts the RDY signal at the first sample window after the assertion of the AS signal and latches the data when the DS line is deasserted. If the data cannot be accepted at this time, the master waits eight periods of the CLKI signal and samples the RDY signal again. This sequence continues every eight clock periods until the RDY line is asserted. If a bus error occurs, the external logic or the bus slave responds by asserting the ERR signal and the bus master must then process the error. The current bus cycle is completed when the RDY or ERR signal is asserted. 6. The bus master deasserts the DS signal to indicate that it will remove the data from the DAL lines and deasserts the AS and DBE lines to end the bus cycle. m MkroVAX Bus DMA Cycle This cycle is used to force the bus master to release control of the DAL lines and related control signals to another MicroVAX bus device. The sequence of events follows: 1. A device requests the use of the MicroVAX bus from the bus master by asserting theDMR signal. 2. If the bus master is not performing a locked read cycle, it responds to the assertion of the DMR by releasing the DAL<31:00>, AS, DS, DBE, WR, and BM<3:0>, lines. 3. The bus master asserts the DMG signal when it releases control of the bus and grants the use of the bus to the requesting device. 4. One or more read and/or write cycles occur on the bus between the requesting device .(the new bus master) and its slave. 5. When the requesting device is finished with the bus, it deasserts the DMR line to return control of the bus to the original bus master. 6. The bus master deasserts the DMG signal and resumes operation on the bus. Mic.ro VAX Bus Interrupt Acknowledge Cycle A MicroVAX bus master performs an interrupt acknowledge cycle to acknowledge an interrupt request from a slave through the IRQ lines and to read a vector, The timing for this cycle is the same as the MicroVAX bus read cycle shown in Figure 30. The sequence of events follows: 1. The bus master transfers the priority of the interrupt being acknowledged onto lines DAL< 04:00 > . The DAL<29:05> lines contain zeros and the DAL<31:30> lines contain the value of 10. 2.· TheCS < 2:0 > lines are driven by the bus master to indicate an interrupt acknowledge cycle. 3. The bus master asserts all the BM <3:0> bits.· The WR signal isunasserted. 1-150 Confidential and Proprietary - MicroVAX 18"2 4. 'The bus master asserts~he AS signal to indicate that the interrupt.priority on the DAL lines is valid and asserts !;he OS signal to indicate that the bus is available to receive incoming data. The bus master also asserts the DBE line, which can be used to control DAL line transceivers. 5. If no error occurs, the exter:nallogic or the bus slave transfers the illterrupt vector on the DAL<09:02> lines, the normal processing/Q-busprocess;.qg flagon the DAL line,and asserts theRDY signal. Refer to the Micra VAX CPU User's Guide for a description of the normal processinglQ-bus processing flag. The DAL < 15 :10,Q1 > lines ~ust be set to a valid high or low level in accordance with the setup times shown in Figure 30. . 6. If an error occurs, the external logic or the bus slave asserts the ERR signal. Thebus master cancels the cycle jUld ignores the data on the PAL lines. 7. The bus master latches the interrupt vector" dea~erts the D'S signal, and deasserts the AS and DBE signals to end the cycle. . I/OBusC~ I/O Bus Read Cycle~An I/O busmasterper£ormsan 110 bus re~ cyele when it requires informacion from another I/O busdevice. During the first part oh read cycle, address and control informacion is sent to the bus slave. During the secondplU;t of the cycle the data is read. The sequence of events follows: 1. The bus master drives the physical longword address of the locationto be read: onto the IDAL<23:00>.lines. 2. The iWR signal is left unasserted. 'The bus masteras~rtsJihe IBM <3:(,» .as required. 4. The bus master as~rtsthe lAS signal to indicate. that theadqress on theclD.t\J. Unesisvalid and ready ~ be latched. The lAS signal also qualifies the informatipnon!;heIBM <3:0 > and iWR lines. .. . 5. 1£ the MicroDMA is not I/O bus master. and is performing ~ wiPdow~ss, then the iTR signal for the requested window channel should be asserted when the lAS" signal is asserted. If a MicroDMA register access is to beoorfofmed) theIREG sigmllshould. be asserted at this time. 6. The bus master asserts the IDS signal to indicate that the bus is available. t9receive: the required in£or~tion. At this time tn.e bus master also asserts IDBE which can be used to control IDAL line transceivers. 7. If the slave can supply valid data within the minimum acces$tii:rI.~, it assert.S the IRDY signal at the first sample window after the assertion of the lAS signal and the master latches the data. If it cannot supply valid data during this time, the master waits four periods of the eLK! signal and samples the IRDY signal again. This sequence continues every f~ur clock periods until thenmY' line is asserted. If a bus error occurs, the external logic or th~ pus s1~ve responds by asserting the IERR signal, and the bus master must then proceSS the error. The current bus cycle is completed when the 'iRi5Y or IERR signals are asserted. 8. 'The bus master latches the requested data, deasserts the IDS. signal, and deasserts the '!AS arid IDBE signals to end the bus cycle. I/O Bus Write Cycle An I/O bus master performs an I/O bus write cycle to transfer information to another I/O bus device. During the first part of the cycle, address and control information is sent to the bus slave. During the second part, the data is written. The sequence of events follows: 1. The bus master drives the physical longword address of the loca.tion to be read onto the IDAL<23:00> lines. 2. The iWR signal is asserted. Confidential and Proprietary 1-151 ----------"- ~----------------------g---~ Preliminary MicroVAX 78>32 3. The bus mastet drives IBM<3:0> lines and asserts the lAS signaIto indicate that the address on the IDAL lines is valid and should be latched; The lAS sign-al also qualifies IBM < 3:0> and IWR line information. 4. If the MicroDMAis not bus master and is performing a window access, the 'iTRsignal for the requested window channd should be asserted when the lAS signal is asserted. If:a MicroDMA register access is to be performed, the IREG signal should be asserted at this time. 5. The bus master asserts the iDBE line which can be used to control the IDAL line transceivers, transfers data onto the IDAL lines, and asserts the IDS signal to indicate that the data is valid. 6. If the slave can accept valid data within the minimum write cycletime, it asserts the IRDY signal at the first sample window after the assertion of the lAS line and latches the data when the DS signal is deasserted. If the slave cannot accept the data during this time, the master waits four clock periods and samples the IRDY line again. This sequence continues every four periods of the eLK! signal until the IRDY signal is asserted. If a bus error occurs, the external logic or the bus slave responds by asserting the !ERR signal and the bus master must then process the error. The current bus cycle is completed when theIRDYorIERR signal is asserted. 7. The bus master deasserts the ii'5S signal to indicate that it will remove the data from the IDAL lines and deasserts the lAS and IDBE signals to end the bus cycle. I/O Bus DMA Cycle This cycle is used to force the bus master to rdease control of the IDAL lines and control signals to another I/O bus device. The sequence of events follows: 1. A device requests the use of the I/O bus from the bus master by asserting the IDMR signal. 2. If the bus master is not performing a locked read cycle, it responds to the assertion of IDMR by releasing the IDAL<31:00>, lAS, IDS, IDBE, IWR, and IBM < 3:0> lines. 3. The bus master asserts the IDMG line to release control of the bus and to grant the useo£ the bus to the requesting device. 4. One or more read or write cycles occur on the bus between the requesting device (the new bus master) and its slave. 5. When the requesting device has finished with the bus, it deasserts the 'fi5MR signal to return control of the bus to the original bus master. 6. The bus master deasserts the IDMG signal and resumes operation on the bus . • Specifications The mechanical, electrical, and environmental characteristics and specifications for the MicroDMA are described in the following paragraphs. The test conditions for the dectrical values are as follows unless specified otherwise . • Temperature: 70°C • VOD=4.75V, Vss=OV Meclumica1 Configwation The physical dimensions of the 133-pin package are contained in Appendix E. 1-152 Confidential and Proprietary Preliminary Absolute Maximum Ratings Sttesse8'gttater thal'1 the absolute maximum ratings may cause permanent damage to the devlce,~ Exposure to the absolute' maximum ratings for extended" periods may adversely affect the reliability of the device. The functional operation of the device at these or other conditions greater than indicated is not defined. • Power supply voltage (Voo): -0.5 V to 5.5 V • Input or output vOltage applied: V ss -0.3 V toVDO 0.3 V • Storage temperature (Ts): -55°(; to 125°C • Relative humidity: 10% to 95% (noncondensing) Reeommended Operating Conditions • Power supply voltage (V00): 5 V ± 5% • Supply current (Icc) : 500 rnA (maximum) de ~ Cl.traCter;sdcs The dc electrical characteriStics of the MicroVAX 78532 for 'the' operating voltage !:Indtemperature ranges specified are listed in 'Dahle 21. . "' , v '2;0 Hjgh-level itlput voltage Low-level 0.8 V input voltage High.level output voltage .Low-lerel output voltage Low·level output open-drain I;,H ... 4()OiLA CL = lOOpF v ~=2,OmA C~;=100pF v. IoL=U5mA, CL =100 pF voltage* illY, ERR DMR, lRA<3:0» Confidential and Proprietary 1-153 ---------------------------------~--~---" maDI8 Preliminary MicroVAX 78'32 Requiemet1tl1 Mm. Max. Symbol Parameter Test Condition Iu Input leakage current OMR signal is sampled at every I/O bus microcycle. Clock Input Timing Figure 29 shows the timing specifications for the clock input (CLKI) signal and Table 22 lists the timing parameters indicated in the diagram. Figure 29. Mim>VAX 78.5J2CLKI Timing Wave/orm Clock input fall time 4.5 Clock input high 8.0 Clock input low 8.0 Clock period 25 Clock input rise time 50 4.5 Coo,fidentia1,and Proprietary ------------ -.----.."------~-----.----------------------- . -.......-.- ... -. Preliminary . MicroVAX;1s532. MicroVAX Bus Read arid Write Cycles Figure 30 shOWs the MieroVAXbus ,mastet read CYcletitning!U1dFigureJl showsthe MicroVAXb\ls ,master write cycletitning, TaI:>le 23 defines the read and write cycle tilllingparameters. IClKO DAL<31:0> _ _ _ _oJ' C5<2:0> ¢~§~)-..,;------1~~!§~~tt-------- -----,....--i-t--...;,...;------+----..:or'----- BM<3:0> Figure 30· MicroVAX 78532 MicroVAX Bus Master Ret:tdCycle Timing Confidential and Proprietary DAl<31:0> CS<2:0> -----.../lJ...!~!!!:~,.....----.....;..;....-----"""f,---- - ......................, Figure 3l.~ MjcroVAX 78512 MtcmVAX Bus'MtJ$tl!rW'rite Cycle)'iming Symbol SignaI'Definition' tAAS DAL < 31:0 > address setup time td. WS'IiSsertibrt' tASA DAL < 31:0 > address hold time after AS assertion 2P-15 t,uDIl AS assertion to DBE and DS (read) assertion 3P-15 t,uDl AS assertion to read data valid* t,uDSO AS assertion to I5S assertion (write) t,um: - llP-30+8PS 5P-15 AS and DBE deassertion to busslave DAL<31:0> three-state tASH'&' AS deassertion width t ASLw AS assertion width 3P+20 5P+20 2P-20 4P-25 12P-15+8PS Confidential and 'Proprietary 1·157 MicroVAX'15l2 Symbol ·De£ioition Requirements (ns) Min. • tARB • Max. J ~ assertion to beginning of ltiSY and 'ERR sample window 6P - 45 + 8PS t AsWIl AS assertion to end of RDY and ERR sample window . 6P + 10 + 8PS tASWII WRfBM < 3:0 > les < 1> hold time from AS P - 20 deassertion t.w.s BM < 3:0 > setup time before AS assertion 2P - 25 tDBLW DBE assertion width 9P-20+SPS tDOllS DAL < 31:0 > write data setup time to D'S assertion 3P-30 D'S4eassertion to AS and Dill'! deassertion P-15 DAL < 31:0 > read data hold time after DS deassertion o tosm ~assertiontoDAL<31:0> read data valid SP-35+SPS t DSOO DAL<31:0> writedataholdtimefrom'i:5S deassertion 3P-20 DS deassertion to bus slave DAL< 31:0 > three-state 3P-20 tosoz on¥ bUs cycles tOSHW DS deassertion width (read) SP - 50 tOSLWI ~ assertion width (read) 8P - 20 + SPS t DSLWO DS assertion width (write) 6P - 20 + 8PS tWI!DI RDY internal sample window end to DAL<31:0> read data vatid tWIIAS WR and es < 1> setup time before AS assertion *Read data is valid if tASDI or tIlSDI conditions are satisfied. 1-158 Confidential and Proprietary 5P-:25 3P - 35 Preliminary MicroVA.X78")3 Figure 32 shows the MicroVAX bus slave read cycle timing and Figure 33 shows the MicroVAX bus slave write cycle timing. Thble 24 lists the timing parameters. IClKO DAL<31:0> ===:::)(~~~~--:------4t=~§:~~Pr----- tS<2:0> - .....---I-----+"Ii"'----- .....-~.,....--++---- Figure 32· MicrovAX 78532 MicroVAX Bus Slave Read Cycle Timing Confidential arid Proprietary ... Preliminary IClK0 DAl<31:0> CS<2:0> ---------'.~~~~,--------~~--------~~------- ______-J,.__-++-______________ ~ ____ ~.'---------- Figure 33· MicroVAX 78532 MicroVAX Bus Slave Write Cycle Timing .'l8hle 24 • MicroVAX 785.32 Bus Slave Read and Write Cyde Timin,g Parameters Symbol Signal Definition Requirements (ns) Max. Min.. tAIIE AS assertion to RDY/ERR assertion for MicroDMA bus-slave cycles " * t ASDSR Required AS assertion to DS assertion delay (read cycles) 3P-20 3P+25 AS assertion to OS assertion delay (write 5P-20 5P+25 tASDSW Required cycles) tASH AS deassertion width tASlII! AS deassertion to RDY/ERR deassertion t BMS BM < tDDHll t Dnmv 1-160 2P+25 31:00 > setup time before AS assertion OAL<31:00> data hold time after OS deassertion (slave reads) 100 2P-25 0 Required DAL < .31:00 > hold time after OS deasser- 35 tion on MicroOMA bus-slave writes Confidential and. Proprietary - Preliminary Symbol Sipal DeSnition tDDSW Requirements (nil) Min. Max. Required DAL<31:00> setup time before m deas- 20 serrion on MicroDMA bus-slave writes tosASS Required 00 deassertio,n to:ASdeassertion delay tosos mdeassertion to DAL < 31:00> three-state tHDA Required DAL < 31:00 > hold timeafter.E assertion 35 P-20 55 RDY assertion to DAL<31:00> data valid fof - 35 MicroDMA bus-slave reads Required DAL<31:00> assertion t1f1lH setup time before AS 15 WR/BM< 31:00>/CS <2:0> hold time after AS P-25 deasserrion tftS WR/CS<2:0> setup time before :AS assertion time depends on the system configutation. transfer, etc.) . *tAlUl 3P-50 (memory speed, number of cycle slips, type of Figure 34 shows the MicroVAX bus signal timing for the DMA cycle and able 25 lists the MicroVAX bus DMA cycle titnin,g parameters .. ICLKO .\.,s 5S 15 £T N it II.. u - DAL<31 :0> - 'OCNO l- JJ i--- {( 'OAWE -I " t='OOOT ( s~ J5 --0 'DVWE M" Figure)4. MicroVAX 78532 MicroVAX Bus DMA Cycle Timing Confidential and Proprietary 1-161 - MicroVAX 785)2 Preliminary IClKO iAKEi~. -'AAEO ______ '-+-t:=-. twEl-O ::1-. __________ \ ~ BUlll!lnd OMA A$serted by Another Device 'CLI(O 5iiiGi ----.,. \Io..4-L-'DWE-O\"----"-_-______ Mk;roDMA Not Using BuB ICLKO 0Miii DMGO -----J ~ooF---. MicroOMA Was Not Using Bus IClKO~~ ~~ ~~~'----No Interrupt Pending for MicroOMA Figure 34· MicroVAX 78532 MicroVAX Bus DMA Cycle Timing (Continued) 1-162 Confidential and Proprietary Preliminary Reqll~(ns) Symbol Signal Defiqitioo Min. tAllG tDCND 2H'7"". 25 AS and OBE deassertion to DMGO,a&Sertion End of DMGI s~ewindo~ to AS ~~n request pending for MicroDMA) Max. (P¥A:;" Deassert DMR to 'AS/DSIV/t[/CS< 1 > !DBE(-- BM<3:0> three-state DeaSsert DMR to DAt < 3i:oo;:J'three-state . lOP+20+4Pl{" 3P+25 P+20 2P+33 End ofDMm sample wirldOw to ~usertion(n()­ DMA request ~JorMicroDMA) Deassert DYGI to 'i5M(jO deassert tWEro 0 IAKE! sample window end to IA'K&) asserts :?P+.30 60 2P+30 *K =the number of microcycles (0, 1, 2, .3. 4) that the sequencer is busy. MicmVAX Bus Genentl Tuning Figure 35 shows the general signals for the MicroVAX bus timing and Table 26 lists the general timing signal parameters. ICLKO ROY. ERR ---------+---"\1 Figure 35 • MicroVAX 78532 MicroVAX Bus General Signal Timing Confidential· and Proprietary 1-163 - MicroVAX78S12 Symbol SignatDe6nition:·' RequitementS'(ns) Min. Max:. ICLKO to beginning of AS sample window ICLKO to end of AS sample window -35 JP+5 ICLKO to beginning of IiDCK sample window ICLKO to end of IWCK sample window tlLWE tsWB -50 . 5 ICLKO to beginning. of CSL/Vl3R/DMGI/IAKEI sample window 3P-50 , tSWll ICLKO to end of CSr:tVBR/DMGi/iAKEi sample 3P+5 window ICLKO to ER'R/R'DY assertion 1·164 Col'lfidential and Proprietary 3P-5 3P+26 . MicroVAX1M32 I/O Bus M8itet.~ and 'Write ~ycles Figures 36 and 37 are tim.ing qiagrams for the I/O bus maste,r read and write cycles, respectively. Table.271isis thesytnp<'>ls and PQta11leters for the timing sigrwls. Figure 36 • MicroVAX 78532 I/O Bus Master ~ad Cycle Timing 1·165 Preliminary MicroVAX18.532" ICLKO . . . . . . . . . .; .;.;.;.;:.;. -.................- - i.........- IDAL<31:0> - - - - -..... 'I'I-~~iOoIIf.,...--- ...........; IBM<3:0> Figure37 • MicroVAX 78532 I/O Bus Master Write C'Y,c/e Timing Symbol Signal Definition Requirements (ns) Min. IDAL < 31:00 > address setup time to IAS assertion m assertion tL\SA IDAL< 31:00 > address hold time after tIASDB m assertion to IDBE and IDS (read) assertion 2P-28 2P-15 3P-15 iAS assertion to read data valid t IASD50 IAS assertion to 'iDS assertion (write) Max. 3P+20 llP-30+4PS 5P-15 IAS and IDBE deassertion to bus slave IDA- 5P+20 2P-20 L<31:00> three-state 4P-25 IAS deassertion width 12P-15+4PS - lAS assertion width lAS assertion to beginning of IERRjiRiSY/IDMR sample window 1-166 Confidential and Proprietary 6P-45+4PS Preliminary Symbol SignalDe6nition t lASWE Requirements (os) Min. Max. lAS assertion to end of IRDY/IERR/IDMR sample 6P+ lO+4PS - window t lASBM mM < 3:0 > hold time £tom lAS assertion· 3P-20 P-20 tl8MAS IBM < 3:0 > seruptime. before iAS assertion tlDBLW IDBE·assertion width tlOODS IDAL < 31:00> write data setup time to iDS assertion) 3P- 30 tlDSD tlDSDI tlDSDO tlDSDZ IDAL < 31:00 > read data hold time after iDS deassertion pc-: 25 0 SP - .3;5 + 4 PS iDS assertion to IDAL <31:00 > teaddltta valid IDAL<.31:00> write data hold time £tom iDS deassertion 3F-20 iDSdeassertion to bus slave IDAL~31:0Q> ~ sta.teonread bus cycles tlDSHW IDS dea&sertion width (read) tIDSLWI IDS assertion width (read) tIWEOl IRDY internal sample window end to IDAL < 31:00 > read data valid t IWIIAS IWR setup time before lAS assertion .3P-20 8P-20+4PS - 5P - 25 3P - 35 Confidential and Proprietary _ _ _ _ _ _......_ _ _ _......._ ......_,..u_"~... __ m_ _ _ _ _ _ _ _ _ _ _ _ _ _ • ·1-167 _~_, _ _ _ _ ,___ _ ... I/O Bus Slave Read. and Wq~Cycl.es . ... .... . ..... . Figures.38 aJ;ldJ9 are timlng~ms for the I/O bus slave read and writecycies, respectively.1able 28 lists the as~ated timing pal-ameters. ICLKO DAL<31:0>====:)(~~~)------"""~~~~~~-----"" lAS IDS Figure 38· MicroVAX 78532 I/O Bus Slave Read Cycle Timing 1·168 Confidential and Proprietary IDAl<31:0> IBM<3:0> ------ ---- Figure 39· MicroVAX 78532 I/O Bus Slave Write Cycle Timing Symbol Sipal Definition RequDements(ns) Min. tIASDIIIt tWiDSW Required lAS assertion to cycles) 'IDS .assertiondelay (tead }P""20 Required lAS assertion to ms assertion delay (write cycles) . 5P - 20 tWl>mv tWI>SW tlDSASS 5P+25 2P+25 lAS deaSsertion to I1IDY~ deassertion tWI>HIt 3P+25 . lAS deassertion width t UIMS Max. UiM < 3:0 > setup time before lAS assertion 100 P - 25 IDAL<31:00> data hQld timeafteriQS' de~~rtion 0 (slave reads) Required IDAL< 31:00 > hold time after II)S deas). 35 sertion on MicroDMA bus-slave writes Required IDAL< 31:00 > setup time before TI5S deas- 20 serrion on MicroDMA bus-slave writes Required i'i)S deassertion to lAS deassertion delay Confidential and Proprietary P - 20 1-169 ... MicroVAX 785}2 Symbol Signal Definition Requirements (ns) Min. t msDs IDS deassertion to IDAL < 31:00> three-state tnmA Required IDAL < 31:00 > hold time after lAS assertion 35 55 IRDY assertion to IDAL< 31:00> data valid for MicroDMA bus-slave reads tlRDR Max. P+35 tImA Required IDAL< 31:00 > setup time before assertion t lWm iWR/IBM<3:0> hold time after lAS deassertion P-25 tlWRS IWR setup time before lAS assertion 3P-50 lAS 15 I/O Bus DMA Cycle Figure 40 is a timing diagram for the I/O bus DMA cycle. Thble 29 lists I/O bus.DMA cycle timing parameters. leLKO . ~ '1AllD f-- -. Ir-'IAOC ~===========~~~~~~~----------------r:::::= ~ iAS.i6BI -------' ~ASG -- \ 551----------'------ IMASTER IS ASSERTED ICLKO~~ iDMll~J . ~~~~ :==============================~S~5~~Z~~~~~===A=.·r}:-~-~--IMASTER IS OEASSERTED Figure 40· MicroVAX 78532 I/O Bus DMA Cycle Timing 1-170 Confidential and Proprietary Symbol SipalDe6nition Requiremebts(tu) Min. Max. ····40 Assert Il'»l(j to iAS,IU5J~/IBM<:3:0> three-state twx: IDAL<: 31:00 > three-state to assert ~ tlAJ)D tLUG 2P+5 Asserted IDMR (internal) sample windPw., end,to,'~J?, .* 4P-25 iAS and IDBE deassertion tolf5MG assertion Asserted iIlMC:i (internal) sample window end to m - 10P+35+4Pl(t 'iiS'&IG assertion t IDAS . . '. assertion Asserted "ImYie' (internal) sample Wittdowend to IBM Ilsrertiori' . tJDBM tUlCND tJDDDT Deassert IDMR to iAS/Ii5S~IBM <: 3:0> three-state 3P+35 Deassert mm to IDAL <31~OO > three-state P+:30 Deasserted IDMR (internal) sample window end to ,,~ ~~~ *Maximumvalue determfueby latency specificanom. tK == The number ofmicroc.ydes(O, 1.2,3, 414tat~~u~~busy, JlOBus~Request ,.',',," ',' ',' , ". ", ," 2P+40 "". ..: Figure 41 shows tbeJlQ'llus ttlmSfer~uest~ ~)~n4 $b&)~lit!lt;~~ng parameters. ICLKO ----'l iTR<3:O>--------. 1~~=======_t_ITIIA_5S...._;.;-_~-. ._:..-~. __:...-It=- .:=:j lAS _ _ _ _ _ _ _ Figure 41 • MicroVAX 785321/0 Bus Tmtts/tr.&quest Timing Confidential: and Proprietary 1-171 - Preliminary "" Symbol Sign_Definition R.equftments(hs) Min. Max. ITR < 3:0> assertion to m asserti6nror requestmg channel 25P+30+4PK* m assertion to ITR < 3:0 > deassertion to assure present requested"bus cycle is last of ITRrequested bus cycles (MicroDMA is bus master) 6P..;.35+4PS "K= The number of microcycles (0, 1, 2, 3, 4) that the sequencer is busy. I/O Bus General Signal Timing . Figure 42 shows the general timing forthe I/O bus signals. Table 31 lists 1/0 bus general signal timing parameters which include sample windows times for the asynchronous signals. ICLKO~: lAS ITR<3:0> IREG IIR<3:0> SAMPLE WINDOWS FORASYNCH.RONOUs SIGNALS ICLK°----JI \ I tl_AS_PH_~_"~ ~~ ______ lAS IRO¥ • r- """ \'---_ ~ --"'--------.......-'----'-_'____----\!===-+--\_ ~~~ T!ffiR DRIVE TIMES Figure 42· MicroVAX 78532 liD Bus General Signal Timing 1-172 Confidential and Proprietary _. Pte.liminary 'fabIe}l-;MicroVAX 78'32 I/O Bus General Timing Parameters Symbol SipaJ Definitioo ReqUire1nents(ns) Min. . ICLKOto m asserted· P-12 ICLKO to begjnnjng ofWsample window ICLKO.!oe~.?fiASsamplewindow Max. P+25 -35 3P+5 trowB ICLKO t6~~iitDY~ple w~dO\V ~P+5 end..,"·' tlR'B ICLKOtobepmingofITR1tREG ~; window . .. . . ICLKO to end of :rni <3:0 >- sample wfudoW ICLKO to iERR/Iiill'Y assertion 50 P +5 3P+26 • Interfacing Requir¢!Jle1lts MicroDMA interface designs vary depending on the type of peripherals being interfaced. Figure'4i3 is a simplified example of a typical interface application. The MicroDMA is used as an interface between the MicroVAX CPU and an 8-bit peripheral chip similar to an Intel* device. *Intel is a trademark of Intel Corporation. An address latcb and decoder enables the MicroDMA and other devices on the MicroVAX bus. If more than one device on the MicroVAX bus can respond to a DMA or an interrupt acknowledge in cycle, the devices are connected as a daisychain as shown. The peripheral chip has separate read and write controls. The assertion of the IWR and iI5S lines indicates that a write operation is required. The assertion of the IDS signal without the IWR being asserted indicates that a read operation is required. The peripheral interface includes buffers 'for the IDAL data and addresses, and a decoder for asserting signals such as DACK (a DMA data transfer acknowledgment signal), ~ (a peripheral chip select signal), and peripheral chip register addressing signals.·The !MASTER signal is asserted (MicroDMA is the default master of the I/O bus) and the IDMR signal is deasserted so that another device cannot request control of the I/O bus. Timing for the interfa(:e is from a common 40-MHz clock. The timing logic used depends on the type of peripheral chip(s) being interfaced and determines when an I/O bus cycle can be terminated and when IRDY line should be asserted. All the chips are reset by common reset circuit. 1-173 .- Preliminary ~ ilM1l CS<2> i51ifH: iiM'<'3':'O'> I ICS I m mwm rnTIIIII1TOIFROMOTHER MICROVAX DEI/ICES TO OTHER DEVICES IN DAISY CHAIN B!§\ASI DAl<31 :00> ~ ffip..----' ORO INT s·sn PERIPHERAL CINTEl) DEVICE INTERfACE SIGNALS Figure 4,3 • MicroVAX 78532 1-174 Typical MicroDMA Inter/acing Confidential and Proprietary aus • Featul'es • Compatible with the MicroVAX 78032 CPU • Supports battery backup refresh • 32-bit memory data organization • Suppo~ pa#ty erJ;Qr reporting with address capture • Controls operation of 4 Mbytes of 256K by I-bit dynamic RAMs • Generates multip1exed address, RAS and CAS signals for as many as four banks of memory • Two acceSs speeds for use with differentspeed dynamic RAMs • Bus timeout error detection and reporting • Generates 100-Hz interval dock • Doubl~~~ CM()~t~ology • Minimum parts count memory interface • Four refresh modes • Description The MicroVAX 78584 Dynamic Ram Controller (DYRC) provides a low cost interface between the MicroVAX 78032 CPU and 4 Mbytes of dynamic RAM (DRAM). The DYRCsupports 256Kl>y I-bit DRAMs and supplies mcltiplexed address, timing strobes, and refresh/access arbitrationoontfQl. Two operating speeds allow the designer to use different speed DRAMs. The choice ot speed determines whether memory errors are reported during the same cycle or iii following cycle. Error address capture logic is implemented in the PYRC.to aid in the reporting of memory errors. The DYRC also provides battery backup refresh suppqlt.r~ lOQ-Hz interval timer, and bus timeQut logic to report nonexistent addresses or no response to the address strobe. Figure 1 is a block diagram of the MicroVAX 78584 DYRC' AOWAPOAfSS Figure 1 • MicroVAX 78584 DYRC Block Diagram ConfidelltW and Proprietary 1-175 Using the DYRC results ina triininl'*m part count 32·bit DRAM memory interface that requires a single 5-Vdc supply and is compatible with the MicroVAX 78032 CPU . . Pin and Signal Description This· section provides a description of the input and output signals and power and ground connections used by the MicroVAX78584DYRC. The signal pin assignments are shown in Figure 2 and summarized in Table 1. VPARITY ~ FlEFSElO RINPRG 20MHZ VSS EAS(j 7& 53 BSl CAS1 76 52 BSO CAS2 77 51 NC CAS3 78 50 NC SPARE 79 49 NC DALO DA1l9 DAl1 DAlfs ADS ADO DAL2 vss MicroVAX 78584 DYNAMIC RAM VOD CONTROLLER DAL3 45 DAL17 44 DALl6 43 VDD 42 VSS ADI 3 41 AD7 DAl4 4 40 DAL15 DALS 5 39 DAL14 AD2 6 38 ADS 37 DAL13 DAL6 DAL7 8 36 DAU2 AD3 9 35 ADS DALS 10 34 DUTENB DAL9 11 33 i5iiE DALl 0 INTTIM 8M1 8M3 vss elKI Figure 2· MicroVAX 78584 Pin Assignments 1-176 Confidential and Proprietary CS1 ENBTMR Preliminary Pin Signal, 48,47,45,44, DAL<19:00> 40,39,37,36, 14,13,11,10, 8,7,5,4,2,83 Input/Output Function{Definition input/output Data address lines < 19:00>-During the address pottion of a memory cycle, the address on DAL < 19:02> is used to form the row and column addresses. The D~$15:00> lines. are used for ~ transfer of information to and from the commandstatusand faultaddt'ess registers. 66 SLOW milut Slow-MatJbes the operating speed of the DYRC with the speed of slower memory chips. 45 SELEC'r input Select-,Sel.eds the'chip£or,~memory acce~s cycle. ' 61 ~ input Register lie:lect-Selectstl(,:CeSs to the two internal registers. 62 CSR input Comma~d,,' status regis.t~ select-Selects which ohhe two internarregJ.sters is to be accessed. 57 AS input Addres~strdbe-A stro&; ~rom the CPU that latches, address aoocontrol information into the DYRC and starts a RAM access cycle if the SELECT signal is asserted or an internal register ac~es~ if,the as'~ ~~erted. ; " , 'r '. ,', ~' " ,' 28-30 (:5.<2:0> input Control status-Determines the type of bus cycle to be performed. 19-16 BM<3:0> input Byte m,asks-Selects the,'byte(s) to b~ accessed. 53,52 BS<1:0> input Bank se~--Se1ects the 'haa:lk of memory to be accessed. 46,41,38,35 12,9,6,3,82 AD<8:0> output Address <8;O>-Providesthe multiplexed memory~dress to theAA¥ array. 59,58,56,55 RAS<3:0> output Row address strobe-Strobe signa1s used to latch the row address into the meOlOry bank selectedbv,,BS < 1:0 >., 78-75 CAS<3:0> output Column address strobe-Strobe signals used to latch the CQlumn address into the byte(s) of the memory array selected by BM < 3:0 > . output Ready-Synchronizes the data transfers. input Outputenable--o;.Enables the DYNe outputs. 24 34 OUTENB Confidential and Proprietary JtI1lll''''''''''''''_'''''''' ___'_llIif1o_P._'_________ 1117_ _ _ _ _ _, ...... __ «&4QW_ik~!l!llIll1""~_ ~ 1-177 Pin - Signal Inpttt/Outp1:Jt Function/Definition. 26 WR input Writ;e..,....Indicates the direction of data transfer on the DAL < 19:00 > lines. 33 DBE input Data buffer enable-Enables the three-state DAL < 19:00> lines drivers during an internal register read. 70,69 REFSEL< 1:0 > input Refresh select-Select one of four refresh modes. 27 EPS input External processor strobe-Provides a refresh request· synchronization for processors that use external processor cycles. 68 RRQST input Refresh request-Used by external logic to request a refresh cycle. 67 RINPRG output Refresh in progress-Indicates that a refresh cycle is in progress. 31 ENBTMR input Enable timeout timer-Enables the bus timeout function. 74 PARIN input Parity in-Used by external logic to report a parity error to the DYRC. 25 ERR output Error-Indicates a parity error or bus timeout condition to the CPU. 73 VPARITY output Valid parity-For use by diagnostics to verify the operation of parity logic by forcing it to write a wrong parity. 32 DV output Data valid-Indicates that the data being written to or read from memory is valid. 23 CLKI input Clock input-A clock input that provides timing for the DYRC and synchronization with the CPU. 65 20MHZ input 20 MHz-An optional clock input for generating 100-Hz internal timing and bus timeout timing. 71 INCLKSEL input Internal dock select-Selects the clock source to be used for generating internal timing and bus timeout timing. 15 INTTIM output Internal timer-A lOO-Hz clock that can be used to support operating system timing functions. 1·178 Preliminary MicroVA¥·1SJIJ4 Confidential and Proprietary Pin Signal 60 input Powerfail-Continues memory refresh opera.. tion during a powerfail conditicm when refresh mode 0 or 1 is selected and memory . ~b~t~ry backup. 20 input Reset.-.;..;Sets the 'nYRC to a known initial state. 1,22,43,64 Voo input 21,42,63,84 Vss input Gtound........Grounclrefere:t)(;le. input Input and Output Signals ......... Data address lines (DAL < 19:00 > )-These lines . ~~sed ~. form the multiprexed address for th~ 256K dynamic memory chips and to transfer infortl1atio~;t)etwtren the CPU and the two internlll registers. During a memory read or write t}'cle, litl~s 0At;<19:02 > are latched into the DYRC by the assertion of the ~input.The multiplexed row coIumn address i$Jormed from this information. Lines DAL< 19, 17, 15, 13, 11,09,07,05,03> areusedtocfotmthe·9-bitroilradd:ress and linesDAL< 18,16,14,12,10,08,06,04,02> are used to form the9-bitcolumn address. The DAL < 15:00 > lines are used to transfer information between the two internal registers and the CPU. .Access to the internal registers is controlled by the RS and CSR inpu!~: . and Input Signals . ,. Select (SELECT)-This signal, when aSserted by eitetnaladt:fteSs decode logiC,enables amemoty access cycle when the AS signal is asserted. TheCAS, nv. RAS<3:0>, CAS<3:0> , DAL< 15:00>, 'im?, ill"&PRG,l!RR, IN"fTIM, and VPARITY.lf the OUTENB input is not asserted, these outputs are .~~nce. Address strobe (AS)-This signal, when asserted, latch~ t~p~i < 19:02> and BS < 1:0> line information into the DYRC. The assertion of the AS btPUt~s a memory ~ecess t}'Cle if the SELECT input is asserted or an internal register access cycle it the RS input is asserted. The AS inputis also used to internally synchronize the refresh logic. ' External processor strobe (EPS)-This signal and the AS and SELECT signals internally synchronize the refresh logic. are used to Control status lines (CS < 2:0 > )-These signals are decoded by the DYRC with the WR input to monitor the type of bus t}'cle being performed. Table 2 lists the bus t}'cle assignments and indicates if a memory access is allowed for the cycle selected. 1·179 MicroVAX78584 Preliminary TaMe"2·MietOVAX~78'84 Bus WR CSlJne* 2 BusC,cle Type 1 0 H L L L H H H H H H L L L H L H H L H H H H H H L L H L H H L L H L H L L L L L L L H L H H L L. H L H H L L L L CYcle Assignments L H H L H H L H Memory Access reserved reserved reserved interrupt acknowledge read (instruction) read lock read (data, modify intent) read (data, no modify intent) No No No No Yes Yes Yes Yes reserved reserved reserved reserved reserved write unlock reserved write (data) No No No No No Yes No Yes *H =high level, L=low level. Byte masks (BM < 3:0 > )-These signals are used to generate the information on the CAS < 3 :0 > outputs. During a memory read or write cycle, the byte mask BM < 3:0 > lines that are asserted result in the corresponding CAS <3:0 > line being asserted. . Bank select (BS < 1:0> )-These signals select one of the four banks of memory for access. by selecting the RAS line to be asserted as described in Table J. Table .3 • MicroVAX 78;84 Bank Select Decoding BS Line· RASLine 1 0 L L H H L H L H RAS RAS RAS<2> RAS<3> *H =high .level, L =low level. 1-180 Confidential and Proprietary Preliminary ContrOl iltatustegisttr(CSR)-Thissignai is used with theRSinput t6·select the internidregisterto be'aCcessed. When the~inputis aSserted, the control status register is selected. When theCSR input is riot asserted, the fauluddress register is selected. Write (WR)-This signal is used by the bYRc to detect a read or a wnte bus cycle. nata buffet enable (DBE)'-:'1bis sigrtal is used With the RSsighai to enable fnethree-state DAL < 15:00 > drivers when one of the interfialmgisterSis beingrrea )-These lines are ~.toRlect oneoftheiour ref~h lnodeS. The DYRC selects the re~h . mOOewbett;>~~:~i'ppu;t;.is a&se~. Th~pinsshould·1.>e connected to the proper voltage level. Thble 4 lists the refresh mode selections. R,EFSJi:L l.ine 1 0 o o 1. 1 0 o 1 0 1 2 1 J, Refresh teqUeSt'(RRQST)~ Thj$'sjgnal is ,.•~~ .b)r. ext~~ic:~Q~tl~t~'memo~refi:esh cycle. whenretm~ mode .2.i~ ~lecteP,. Ut~J:lYRC js.• ~~~ll8.ili;~~~.~~eQj .1. Br} . .lltld signal is assert:ed,an extra refresh cycle be~formed .• trus.dOesnot have~ affect on the refresh interVal;bec~~se ffic:int&nalc6~ntersof~ ~9 arefiqt·~ .. " ,.,' .t.· Slow (SLOW)-This sign~ is~cltomat~ th~p~rat' '" ., ·~hhePY~C'witht&operi.ting s~dof the DRAMSbelngijSed.~n assertea;the ..............•...• ~'Wi~tlir$·i.ncreakdaridthe CAS < 3:0 > .and.RiJY signals aretldayecl, alloWing theDYKC' h5b!ius@WIth slower Dlti\1v1s. This pin shoUld be connected toVDIl()!YU' . will this f1oWever, Enable, timeout .·.timet· (EN1fHia)' .' When .aSseft(!4, '·this ~~tiliabl~~ .the bus titneaut. timer. When enabled and the AS iriput has been asSerted' for 251lS,' t:h;\!!'·~c willas'sert the'mm Otlq,ut to notify the CPU of an error. The CPU is then required to examine theCSR to determine tnecause of the error. This pit, shotlld be connei:ted:ft5:VDD or V~li; '.' Parity in (PARIN)-This signal is assertedbyexternalparitychecking 10gicwh~1'l apanby errorha& occurred. If this signal isoot',used, it· shoutd'be coonecte(VroVDD'throUgh ari'e:x:temalpullup resistor. ClOck input (CLKI);";';This is the input clock that ptovidesthebwic timinS'refcremee forthe·DYRC. 20 MHz (20MHZ)-This clock is used to generate the l00~HziNfflM output and the 25 I.lS bus timeout timer if selected by the INCLKSEL input. " Internal clock select (INCLKSEL)-This signal selects the clock source to be used to generate the IOO-Hz INTIIM output and 25-1JI!! bus timeout timer:. When the INCLKSEL signal is asserted, the CLK! divided by two is selected as the dock source. When the INcLKSEL signal is deasserted, the 20MHZ input is selected as the dock source. This pin should be connected to VDO or V5S' Confid¢ntial and Proprietary 1-181 ... ·Preliminary MicroVAX7eS4 10m PowerfaiI (PFAiL)-This~na1isasse~~ by external to notify t~DYR<::.pf a system power failute and that the DYRC is to continue refreshing memQry foo lIl ab~ckuppower source. This signal is functional in refresh modes 0 or 1 only. When thF: DYRC is used without a backup power source, the PFAIL input must l:>e pulled up by an external resistor. Reset (RESET)-This line is asserted to set the DYRC to a known state. Voltage (VDD)-Connects to the power supply voltage. Ground (Vss)-Connects to the ground refet'¢hce. Test (TEST)-Resetved for manufacturing use. This pin must be connected to V DD . Output Signals Address (AD < 8:0 > )-These are the multiplexed memory address outputs. When the selected RAS < 3:0 > output is asserted, these lines contain the row address for the DRAMs. When the selected CAS < 3:0> output.or outputs are aSserted, lines AD <.8:0 > contain the column address for the DRAMs. These outputs cannot drive the DRAMs direcdy. Therefore a memory driver is required between these lines and the memory array. Each line is capable of driving up to four memory driver inputs. Row address strobe (·=RA,.....,..S-<,....3.....,:0~>,....)-These signals are used to latch the row address into the selected bank of memory. The RAS<3:0> line or lines to be asserted are selected by the BS < 1:0> inputs or by the refresh logic. The RAZ < 3:0> outputs cannot direcdy drive the DRAMs. A memory driver is required between these lines and the memory array. Each line is capable of driving up to four memory driver inputs. . Column address strobe (CAS < 3:0> )-These signals are used to latch the column address into the selected byte(s) of the memory array. The lines to be asserted are selected by the BM < 3:0> inputs. 'these outputs cannot drive the DRAMs directly. Therefore a memory driver is required between these lin~s and the memory array. Each line is capable of driving up to foUr memory driver inputs. Ready (IIDY)- This signal is asserted to notify the controlling processor that the current memory access bus cycle or internal register data transfer bus cycle can be completed. . Data valid (DV)-This· signal is asserted by the DYRC to notify the external error detection and correction IQgic that the data being read from or written to memory is stable. Enor (ERR)- This signal is asserted by the DYRC to notify the CPU that the parity checking logic has reported a parity error to the DYRC by asserting the PARIN signal or that a bus. timeout condition has occurred. When there is more than one DYRC ina system, only one should report a bus timeout. Refresh in progress (RINPRG)-This signal is asserted to notify the eXtemallogic that a refresh cycle is in progress. Intervaltitner {trINLi.Ii'TTIM. ~)-A 100-Hz timer for use by the operating system. Valid parity (VPARITY)-This signal can be used by diagnostics to verify the operation of the external parity checking logic. This signal is controlled by the write wrong parity (WWP) bit in the command status register. When VPARITY is asserted, the parity logic should function normally. When deasserted, the parity should be inverted. 1-182 Confidential and Proprietary .... • FunCtional Description This section describes the basic operation and organization of the MicroVAX 78584 DYRC. Memory OrganizatMln . The DYRG supports a .32"bit, byte Qriented,.memory dataorga~tion.. Because of the byte orientation of the mernYsignal reqUired for bus c.;ycle termination. The timing informa.tionJor a read or .~ite\Cyde is in the Specifictltiort section. A memory read orwriteCyclels initiated by the assertion 6fthe SEL~eTand AS signal~.If a refresh request is not pending or in progress' the DYRC t,ral'!$,fersthe row ad~sson the memory address bus and assert t~ RAS < 3:(5 >ouqmt as se1ectedbY~S< 1:0 >1l,neS . .After thesPecif~ row address hold time, the DYRC transfers the colUmn addtess' onto the' memory addreSs bus and asserts the CAS <3:0> outputs as selected by the BM <310 >·lines.The DYRe asserts ·the lillY signal to notify the CPU that'the current bus cyde cat:i'be Completed. The assertion oftheRl)Y line is determined by the type of memoryc.;ycle (slow. or faSt) being performed. The data on the DAL<31:0> lines i'sthedata·'to'·be written intiil1lr readfrom·tbe accessed DR.AMchips~TbeDV signal is asserted to notify the external logic, such as parity or EDAC logic, that the data is valid. The AS signal is deasser,ted and the memory access is comp1trted.. The DYl\<;: l,iIsesthe "early write" mode of theDHAM fOl:' writing data into memory.. If a memoryteftesh is pending or in progress when the .D'ilRCili selected and the AS signal is: asserted, the·memory access \Vill beddayed until the refresh cycle is oot:npleted. The MicroVAxbus cycle is stretched by the delay of the aSSet'tion·tjf the RD'Y signal ft6m the DYRG. RefresbOperation The AS, SELECT, EPS, and PFAIL inputs are used by the DYRC to arbitrate a ref.-esh c.;yde. The DYRe performs the arbitration and control for the refresh cycles that may be started by the following: • Detecting thed~ssertion of the AS signal whentheSELECThlgrihl is asserted. The D$Cknows when the p~t as:;ertion of the AS signal will ocCur. This allbws time for the DYRC to arbitra,te . between a refreshc.;ycle and the next memory cycle.' • Detecting the deassertion of BPS. TheDYl\Cwill perform the:necessary refresh cycles during the execution of long floating-point instructions . • Detecting the assertionof the As sisllarwhen the SELECT 017ErS are deas~ for an extended period of time (62.5 \.IS maximum). Four consecutive rows will be refreshed during the refresh cycle. This allows refresh c.;ycles to bepertormed while theCPU'is' commuriicating with sloW peripheral devices. .. Confidential and Proprietllry -----------------------_._--_._-------------------------- 1·183 I11III0 Preliminary • At the assertion of the PFAIL signal. This condition inhibits memory accesses other thMrefresh cycles. When the PFAIL signal is asserted, the aut~matic refresh occurs only when refresh mode 0 or 1 is selected and there is a badmp power sourc:e.· . . A refresh cycle consists of transferring the refresh address onto the memory address bus, asserting the RAS< 3:0 > line information, and incrementing the refresh row address counter by 1 until four rows have been refreshed. While a refresh cycle is in progress, the DYRC aSSerts the RINPRG signal. The refresh cycle is completed when the RAS < 3:0 > lines and the RINPRG signal are deasserted. Any· memory accesses attempted during· a refresh operation· are deferred until the refresh is completed. DMA devices that access memory controlled by the DYRC must consider the latency time that may occur as a result of a refresh cycle. The DMA device can use RINPRG to detect a refresh cycle in progress. The four refresh modes that are selected by the REFSEL< 1:0> lines refresh mode to be used is selected when the R:ESE'i" line is asserted. are listed in Table 2. The . ModeO-In this mode refresh operation is automatically controlled by the DYRC. The DYRC will ·refresh 256 consecu.tive locations in 4 ms when the clock input is.40 MH.z. During the powerup sequence, the memory anay is initialized with eight refresh cycles before any access is permitted. The RINPRG output will be asserted during refresh cycles. Mode l.,.,-In this mode, refresh operation is automatically controlled by the DYRC. The DYRC will refresh 512 consecutive locations in 4 ms when the dock input is 40 MHz or 256 consecutive locations in 4 ms when it is 20 MHz. During powerup, the memory array is initialized with eight refresh cycles before any access is permitted. The RINPRG output will be asserted during refresh cycles. Mode 2-1n this mode, refresh operation is controlled by external logic. The external logic requests a refresh cycle by asserting the RRQST input. 'The DYRC arbitrates the refresh cycle, asserts the RINPRG output, performs the four refresh cycles, and increments the·refresh counter. The RINPRG output can be used to clear the RRQST signal. During the powerup sequence, the memory array is initialized with eight refresh cycles before any access is permitted. Automatic refresh is not performed after powerup. Mode 3-1n this mode the refresh operation is disabled and no refresh will occur during the powerup sequence. Internal Registers The, DYRC contains two 16-bit registers. The control and status register (CSR) is a read/write register. that is used to transfer control and status information between the processor and the DYRC. The fault address register (FAR) is a read-only register that is .used to store the addreSS of the page in memory being accessed at the time a parity error is reported. Access to the CSRand FAR is controlled by the RS;CSR, andWR inputs. TheRS input selects the DYRC for a register access, the CSR input selects the register to be accessed, and the WR input determines whether a read or write transaction is to be performed. The addresses for the CSRand FAR registers must be on a longword boundary. Because these registers are 16 bits wide, they must be accessed using word instructIons. Control Status Register-The control status register (~SR) enables parity errol; support, reports parity a~d bus timeout status, and forces a wrong parity for diagnostic purposes. During the initiai powerup sequence or at the assertion of the RESET input, this register is cleared. Figure· J shows the CSR register format and Table 5 describes the function of each bit. 1-184 Confidential and Proprietary .00 ERRSTAT \. ENB WWP ,READ AS.Q';s I. I BTO Figure ;·MiCroVAX 87584 Control StatuS Ritgister Format··, 1abIe' • MicroVAX 81'84 Control Status Register Desc:riP:~. Bit 15 14 Description ERRSTAT (Error statUs)~ lrusbitis used to report 9~ity erroratid is set when the ENS (bit 13) is set and the PA.RiN input is asserted. When set, this bit indicates that a parity errol" has 1Jet!~ dete<.:ted.1?Ythe external parity logic, This bit is cleared when the CSR is read or tbe~inputis4s$erteti< WWP (Write wrong parity)-This bit is set and cleared by software.·Whenset, it causes the VPARttYoul;put to be qeaSSetted:Wht;rt cleated~ the vPA:l(trY output is llsserted. Can.beus. .ed. during .........••....diQ.g. p. •.o• Stics .... OperatlqnS.·; .........to ..... ~ .•.~.,.' .. .' input ()~.,ra. . istiOn.·.'of. t.h.e exte .. rnal parity asserted. :iT. '. . . logic by forcing wrong.p~ty. Cle~ wl;1en the ? 13 J.:- ' j ) ENB (e~bl~h-' Tbtshit.is ,l,1Secl.to eAAblethenablethe parity. error reporqngfiqiction of tlu{ !m:~C;~~ dearecito tliSablethe parity error reporting asserte(l. ~cti~n i.n~ the E.~~:rAT fl\lS,.·qe~ when ,the tmm input is . J " .•...•. . . . ...,' _. • •• When repbrtiilg ~. pafit)'errorto thil:~' the nYiCdkablesthe'parityerror reporting function by clearing .t'lili 1;,it.'This is.cfu'~tdkeep'irtw.tiPle parity e11'0rs from· Corrupting thefaultaddressm.theFAR.Mter handling a parit'y;error software mustreenable parity error reporting by setting this bit. 12 BTO (BU$tim@ut)-Wh~ ~t.Jrn$ bitindic~te~.tlu!~ Jbe bus has timed 9ut.This bit is set enabled when the ENBTMR input is asserted. This bit is cleared when the CSR is read or the RESET input is asserted. 11:00 RAZ (Read as zeros)-Not used. Confidential and Proprietary ------.------- 1-185 - Preliminary MicroVAX78S84 Fault AddressRegiste1'..,...The fault address register(FARUs~~rUyre!Pstertha't is used to store the address of the page in memory being accessed when a parity error is reported to the DYRC. This register is cleared wheh the RESET input isassetted. Figure 4 shows the FAR format and Table 6 describes the function of each bit. 15 14 13 I I 12 I 11 10 00 I I~l I ... RESERVED'---------O-A-L< .......T9:09> 85<1:0> ERRSTAT Figure 4 • MicroVAX 78584 Fault Address Register Format Table 6 • MkroVAX 78584 Fault Address Register. Description Bit Description 15 ERRSTAT (Parity error status)-This bit is set when external parity logic detects a parity error and asserts the PARIN input. When set, register contents cannot be changed. Cleared by a processor read transaction or when the.RESET input is asserted. 14:13 BS < 1:0> (Bank select)-These bits contain the value of the BS < 1:0> information at the time the PARIN input was asserted. This value can be used to determine the bank of memory with the parity error. Cleared when the RESET input is asserted. l2:11 RESERVED (Reserved)-These bits are cleared at powerup and set after the first memory operation. They remain set until the RESET input is asse.rted. 10:00 DAL< 19:09> (Data/Address < 19:09> )-These bits contain the address of the page in memory being accessed at the time the PARIN pin was asserted. Cleared when the RESET . inpu,t is asserted. Error Reporting The DYRC reports memory parity errors, bus timeout, and nonexistent memory address errors to the CPU. For a memory parity errol; the DYRC provides the error reporting interface between external parity checking logic and the CPU. TI'le bus timeout logic monitors the MicroVAX bus activity and reports a timeout error when the addressed device does not respond by asserting the RDY signal. When an error has been reported to the CPU by the DYRC, the error handling routine must read the CSR to determine the type of error being reported. Parity Error Reporting-The DYRC provides the interface between external parity checking logic and the MicroVAX 78032 CPU for reporting a parity error. Parity error reporting is enabled by setting the ENB bit in the CSR. When a parity error has been detected by external parity checking logic, it asserts the PARIN input of the DYRC. This causes the page address to be captured in the FAR, the ERRSTAT bit in the CSR to be set, the parity error logic to be disabled by the clearing of the ENB bit in the CSR, and the CPU to be notified of an error by asserting the ERR output. The 1·186 Confidential and Proprietary - Preliminary DYRC will hold the ERR signal asserted until the next data stream access to memory. This ensures that the CPU will detect the error condition and respond. After responding to the parity error, the software must reenable the parity error logic by setting the ENB bit in the CSR. Refer to the MicroVAX 78032 Central Processing Unit User's Guide for information on error handling. The parity error reporting logic also aids parity and error detection and correction (EDAC) designs by providing a data valid strobe. The TN strobe can be used by external parity or EDAC logic as an indicator that the d-ata on the bus is valid. ... Bus timeout ert'Ol'-The bus timeout logic provides a means to monitor the MictoVAX ~s activity and to notify the CPU oia nonexistentmen;l.ory error or some other error that causes AS to be asserted for more than 25 ~s.Proper operation of this logic requires a .to-MHz clock input with the INCLKSEL input assertedot a 20-MHz inJ?ut with tbeiNanEtinputcleassetted. The bus timeout logic is enab1edor disabled by conn«rlng the ENB'i'Ml(inp\1t toVilD 01' Vss· When the bus timeout logic is e~ledand the AS inpm has been asserted for more than 25 \.1$, the DYRC will set the IITO bit in the CSR and asseit the ERR'signal. Interval Timer The interval timer provides a 100-Hz output (IN1'fiM) that can be used to support operating system timing functions. The clock source for this. output is selected by the INCLKSEL input. When this input is asserted, the clock squrce (cLio) is divided by two and the output is the clock source for the timing circuit. When . not asserted, the 2o.;MH~input is the clock source for the timing circuit. The IN'ITIM output will be 100Hz when the input is 40 MHz or the 20 MHz input is 20 MHz. Powerfail Standby Powerfail standby. is functional.only whenrefte·sh mode 0 Ol' l·is selected. The powerfail logic provides automatic memory refresh for powerfail conditions when memory and the DYRC have a backup power source. Powerfail standby operation is enabled by the assertion of the PFAIL input. This input must be asserted by external logic before the system power supply becomes unstable. When asserted and refresh mode 0 or 1 is selected, any activity on the MicroVAX bus is ipored, and the DYRC continues to refresh memoryuntil.the ~ signal. is deasserted or the backup power supply fails. The PFAIL signal should be deasserted a..ID.ll.xhllUm of 10 ~ before pprmal operation is resumed. •. . . .. Reset/Powerup The DYRC will resetits internal counters and timing sequencers 'when .theRE'SET input is asset:ted for a minimum of 800 I.IS and the clock input is operating. When the RESET input is deasserted, the DYRC will initialize theDAAMs with eight refresh cycles. Menl0ry·a.ccess is delayedun~.i1 the completion of the eight RAS-only refreshes. The DRAM data will belast when 'itESET is aSserted. When power is first appliedtotheDYRC, the RESET input must be asserted fot a minimum of 800 IJS after the power supply voltages havestabilize& • Interfacing Requirements A typical MicroVAX CPU and DYRC interface configuration is shown in Figure 5. The external logic required to interface a dynamic memory system is also shown. The actual logic may vary according the requirements of the system. The typical external components consist of external address decode logic, data bus transceivers with parity, memory address bus drivers, RAS and CAS drivers, and a write buffer. Confidential and Proprietary 1-187 I.- Preliminary MicroVA'X 78584 CKLI Rm'f < I l l ' l ERR 20 MHZ iNciJ OV INTTIM REFSEL m mil DBE Si:Qi.ii DYRC AS CS<2:0> .A WR I DUTENB ! ! R'RaST RINRPG ~ ADDRESS ~<31~ DECODE LO\'lIC DBE SYSTEM CONTROL SIGNALS Eiiiii'fiiiiR SE'LECf CSA ---- OAl<19:00> --to 85<1,0> DBE Rs BUFFER RAS<3:0> CAS<3:0> :----"'\ IiP.Aiiii"Y PARIN WR AO<8:0> rV AODR RAS<3:0> DIN ENS OAL<31:00> BUFFER ~ / .A B A ( TRANSCEIVERS " DIR RAM BANKS CAS<3:0> BDAL<31:00> WRT ~ OOUT I loo REAO/WRITE DATA f Figure 5· MicroVAX 78584 Typical MicroVAX CPU and DYRe Interface Configuration Dynamic RAM Requit'ements TheDYRC supports 256K dynamic RAMs that have the following characteristics. • Multiplexed row and column addresses • 9-bit memory address bus • Data in and three-state data out to allow common input/output .. RAS only refresh • 256 count or 512 count 4 ms refresh The dynamic RAMs that meet the timing specifications in Table 7 will allow the MicroVAX 78032 CPU to access memory with no wait states or one cycle slip. 1-188 Confidential and Proprietary Preliminary Table 7 • MicroVAX 78584 Dynamic RAM Specifieatiolls Parameter Aa:esswith no cycle slip (os) Min. Max. &cess with one c:ydulip{n$) Min. Max. Access time from RAS 1.50 200 Access time from CAS 75 100 Row address hold time 20 25 Column address setup time 0 9 Column address hold time 45 5.5 RAS to CAS delay time 30 35 RAS precharge time 100 120 CAS precharge time 30 35 150 200' RAS pulse width DMA Interface . ., . ....'. .. ...- . The DYRC performs DMA read and write cycles s4Jillar to CPUread and write cycles. TheDMA < controller must controI:~tJALOC;:19:0 > , CS <2:(», BS 1:0 > , WIt, BM <3:0> ; SELEEl' 'and AS lines, and check the'. state of the iIDY and DY. sigllals to transfer data to or from memory. It must also check the state o£the ERR line for error conditions. When the DMA accesses a memory that is controlled by the DYRC, the DMA·de.vi.ce must consider the latency timetllllt may occur a result of arclreS'hCycle.TheDMA device (;Q1l use the RINPRG signal to detect a refresh cycle in progress. The DYRC does not support ref.reshhold off. A DMA device must process a request without waiting or RAM data rould be lost . as • Specifications The mechanical, electrical, and environmental characteriStics and specifications for the MicroVAX 78584 DYRC are described in the following paragraphs. The test conditions for the dectrical values are as follows unless specified otherwise. • Power supply voltage (VDD): .5 V ±5% • Ground (Vss): 0 V Mechaniad Configuration The physical dimensions of the 78584 84-pin cerquad package are contained in Appendix E. Confidential and. Proprietary 1-189 MicroVAX78;84 Preliminary Absolute Maximum Ratings Stresses greater than the absolute maximum ratings may cause permanent damage to the device. Exposure to the absOlute maximum ratings for extended periods may adversely affect the reliability of the device. • Power supply voltage (VDD): 5.0V ±5% • Input and output voltage applied: -0.5 V VOD plus 0.5 V (5.5 V maximum) Recommended Operating Conditions • Power supply voltage (VDD): 5 V ± 5 % • Temperature (TJ O°C to 70°C de Electrical Charae:teristics The de electrical parameters of the MicroVAX 78584 DYRC for the operating voltage and temperature ranges specified are listed in Thble 8. Table 8 • MicroVAX 78584 de: Input and Output Parameters Symbol Parameter Test Conditions Requirements Min. Max. Units Vrn High-level input voltage 2.0 VDD V Va Low-level input voltage 0 0.8 V VmE High-level input voltage (EPS only) 2.6 VDD V VILE Low-level input voltage (EPS only) 0 0.2 V Von High-level output voltage Ion =28 2.4 VDD V VOL Low-level output voltage IoL= 11 rnA 0 0.4 V IlL Input leakage current V..,* 0 -10 !-IA IoL Output leakage current V..,* 0 -10 !-IA 1m High-level input current 1-190 rnA 100 Confidential and Proprietary J.LA - Symbol Preliminary Parameter ...·Requirements Min. Max. -40 High-level output current Active supply current 300 Cm Input capacitance 5.0 C"", Output capacitance 5.0 Units mA mA pF *To be determined. ac Electrical Characteristics The ac timing parameters for the MicroVAX 78584 are grouped according to their functions. Figure 6 shows the clock input waveform and symbols and the parameters are defined lmle 9. Figure 7 shows the timing and symbols for the reset operation and the parameters are listed in Table 10. The memory read signal timing is shown in Figure 8 and ~eWrite signal timing in Figure 9. Table 11 lists the timing requirements for both memory read and write transactions. The refresh signal timing is shown in Figure 10 andthe timing parameters are listed in Table 12 . The register read and write timing is shown in Figuresn and 12, respectively, and the parameters are listed in Table 13. Figure Ushowsthe error reporting timing and Tabte14 lists the timing requirements, The 'following notes apply to Figures 7 through 13 and to the associated timing parameter tables, • All times are in nanosecl>ndsexcept ~here nOted, • The ac high levels are measured at 2.0 V and the low levels at 0.8 V. • The ac characteristics are measured with a purely capacitive load at the output of 50 pF on RAS <: 3:0>, CAs <: 3:0> AD <: 8:0>. Rf:)Y, andOV. j telR Figure 6· MicroVAX 78584 Clock Input Timing Con£id~tial and Proprietary 1-191 1ltble9 • Mi'UoVAX 78;84 ··CIbclt I:titmt Parameters Symbol Definition tru Clock in fall time taH Clock in high 8 ten. Clock in low 8 tclP Clock in period tc.K Clock in rise time Requirem.ents (ns) Min. Max. 4.5 25 50 4.5 ··t,t,.w -\ UNKNOWN I - IAt.FI_ UNKNOWN J UNKNOWN J Figure 7· MicroVAX 78584 Reset Input Signal Tirning Table 10· MicroVAX 78584 Reset Input Timing Param.et.ers Symbol Defmition* Requirem.ents (ns) Min. Max. tIlLW RESET assertion width after VDD=5.0 V 800 IlS tKHA RESET deitssertion to AS assertion 100 tRUl tRHI t lKEP RESET assertion to RAS<3:0>, CAS<3:.0>, RDY, and DV deassertion RESET deassertion to start of initial eight refresh cycles refresh enabled) 50 (if Time required to perform eight initial refresh cycles (if refresh enabled) 200 31ls *Delay from assertion of RESET to deassertion of AS by the MicroVAX 78032 CPU is typically 1.5 j.IS. CLKI input must be applied while RESET is being asserted. 1-192 Confidential and PrOprietary Preliminary MkroVAX18'84 DM<31:OO> 85<1:0> ....<3... ""TA Figure 8· MicroVAX 78j84MemoryRe~C;yc!e Timing DAl<-;:I:OO> BS 8M<3'~ ----(I A.II)ORESS' ' ~ _ _ _ _ _- ' 1:10<'0:0> COLUMN At)ORfSS ----.,..""--I~ Io-,-----------'r RAS<3:0> SGLECTED BANK . CAS<3:0> -~~~~ ______________________ ~mw~ ROY f'-'.------------'ASlOVl.-----. :1 -----\l Figure 9· MicroVAX 78584 Memory Write Cycle Timing Confidential!lnd Proprietaty H93 - Pteli~y Tahl4;') 11· MicroVAX 78'84 Memory~te Cycle Timing Parameters Symbol Definition tARAV MicroVAX18584 Requirements (ns) Slow Cycle Fast Cycle Min. Max. Min. Max. 20 10 20 DAL< 19:02> valid to tow ad~ss valid tAsHCASH AS deassertion to CAS < :>:tI > deassertion 50 50 t ASHDVH AS deassertion to i5V deassertion 50 50 tASHRDH AS deassertion to RDY deassertion 50 50 t ASLDVL AS assertion to DV assertion tASLRDYL* AS assertion to RDY assertion t ASLRL * AS assertion to RAS assertion tASLSH SELECT hold time after AS assertion tunAsn Column address hold time after AS deassertion tRAn Row address hold time after RAS < 3:0> assertion t RLRCL 425 450 225 250 260 300 60 100 20 15 20 15 20 20 55 100 30 75 RAS < J:O > assertion to read CAS assertion 105 150 55 110 tRW RAS < Bj > pulse width 315 350 240 275 tRLWCL RAS assertion to write CAS < J:O> assertion 115 140 115 140 tSA DAL < 19:2> and BS < 1:0> setup time to AS assertion t SLASL SELECT setup time to AS assertion t SRCA Corumn address setup time before read CAS < 3:0 > assertion 20 30 20 30 t SWCA Column address setup time before write CAS<3:0> assertion RAS < J:O > precharge time 70 80 70 80 23 23 8 8 150 125 *The maximum times for tASLRDYL and tASLRL assume there is no refresh cycle in progress. 1-194 Confidentialand Proprietary ·Table 12 • Mic:roVAX 78S84 Rdiesh TimiogParameters ~ts(n8} Symbol Definition Slow Cycle Min. Max. Fast Cycle Min. Max. 25 100 Refresh address setup time. to RAS < 3:0 > assertion 100 Refresh address hold time· after RAS < 3:0 > assertion 235 265 .135 165 tllEFPllll RAS<3:0> precharge . ,165 185 165 185 to", lwk.lo> pulse width 215 235 165 185 tAOS tAJ>H Figure 10· MicroVAX 78584 &fresh Signal Timing Wli / I. - Preliminary MicroVAX.78.584 DATA, ---{ 00' Figure 12 • MicroVAX 78584 Register Write Signal Timing Table 13 • MicroVAX 78584 Register Read/Write Timing Parameters Symbol Definition t ASHlIDH AS deassertion to RDY deassertion 35 t"SLRDL AS assertion to RDY assertion 25 tDADBEH Data setup before 'i5BE deassertion 50 tDAH Required data hold time after DBE assertion 10 t DBED" tRSASL 1·196 Requirements (ns) Min. Max. DBE assertion to stable I/O data on DAL< 15:00 > RS setup time before AS assertion Confidential and Proprietary 25 15 CS<2:O> MicroVAX 78584 Preliminary -<. . ____ --'X'--__ OAT_AS_""_"'_M_ _ ---J>- X'-___ S_"_"A_"_ _...... '"_STR_UCT_'O_" ~\~_____~r\ OA_T_AS_"'_EA.. ___ r\~-----f '_PAE_R.l_)~~._{__---l! ,_" ~ PA: _ _ _ _ _ _ Parity Error OAL<31:00> BM --< AOCRESS >----<. ._______ \)_"O_"_'N'_O_ _ _ _ _ =-->>---- ~~~-------------------1 IIASURL---~ 9 ~"SH'Rl}- Time·out Error Figure 13· MicroVAX 78584 Error Reporting Signal Timing Symbol Table 14· MicroVAX 78S84 Error Reporting Timing Parameters Definition Requirements (ns) Min. Max. t pAElIRL PARIN to ERR assertion 50 tpAEllKH ERR deassertion after data stream cycle 50 tASLI!KL AS assertion to ERR assertion t ASHElIH AS deassertion to ERR deassertion Confidential and Proprietary 25 IlS 50 1-197 .Fea~ ·Low~costMicro"AX d~lopmellt$ystem contairyed a single module • Full-speed incircuit emulation of MicroVAX 78032 microprocessor chip and MicroVAX 78132 floating-point unit chip • PROM-resident monitOr with pOwerful eomtnand set • 64 Kbytes of relocatable memory simulation RAM for target applicatiGn , • Two RS.232-compatible serial lines for host and terminal connections, one with modem control • Internal clock of 10-,20-, or 40-MHz or external clock • Bus timing controllable by ADVICE and t3.l'8et()rbytr;qet~ne (wait states only) • Powerup diagnostic tests to verify its own oPeration • Connectors for dock-in, trigger-in, trigget-~ut, power supply~ and R$-232 ports • Single 5-volt power supply . Description The ApplicationsDevelopment MicroVAX Irlcircuit Elllwator (ADVICE) is a low-cost, incircuit emulator used for the development of ~ardware ~4s6£tware products based on the MicroVAX 78032 32-bit microprocessor and thelvJiicroVAX 78~2 floating.pointut1it~ ~ostic or application programs for the user's target miiy~ developed on a VAXNMS ¥st'an(t~nloaded to ADVICE. ADVICE containsalfthe necess!uyhardw~ alldSroprietary 1-199 • Sy81em Overview The ADVICE enables the hardware emulation of the MicroVAX CPU and FPU at full-speed (40MHz) and provides the user with complete control over MicroVAX CPU operation. This includes the ability to start and stop the program operation and to single-step through a program. It contains hardware and software that can be used directly by the target application to simplifythe development of the target hardware and software. Figure 2 shows the system interconnections to the ADVICE module. The host computer is used to write, edit, and optionally debug the user programs that will eventually run on the target system. These programs are converted to hexadecimal format by the DECPROM software and downloaded to the ADVICE over a serial line. A local console terminal is used to enter commands and control the entire development process. HOST COMPUTER POW.E!I ON LEO CLOCK IN SNC Figure 2· MicroVAX ADVICE System Interconnection 1-200 Confidential and Proprietary Module Connectors Table 1 lists the connector types that are included on the ADVICE module and their function. R.efur to Figure 2 for the location of the connectors on the module and to the ADVICE User's Guide for the connector applications and signals . .'BIttle 1 • ADVICE Module: Connectors Connector J1 J2 J3 J7 J8 J9 Type. '. Function BNe Clock in Target circuit Target circuit . 4O-pin 40-pin . BNC. Triggerip BNC Trigger out Power supply Host computer port (serial-line) Console port( serial-line) 4-pin 25-pin 25-pin J10 J11 , SwiteheSand Indka10ts TheADVlCE mOdule Contains eight switches inll.4!l~-in:lj.rte p~~JDIP)tha~ a:(e ~~,selea various functions. a reset pushbutton switch, arid two tED indicitOrs~ Table2 lists the positions and selections of the SWitches on the DlP.·Theresftt-pushoatfonis'use'dtoWtiali!e,the moduleiiid causes a series of diagnostic tests to he perlormed.The power on1i&htindiQl~~ tl1aithe . DMR, :o.:«:?< 3:0>, • The output of an address comparator that indicates whether a MicroVAX bus address is greater than, less than, or equal to a stored value • The logical level of a BNC connector input The ADVICE can be programmed.to igno~ eve.msQr halt pl."Q1Jl:'8m ~tiol:lwhen an event ocCurs. In either case, a trigger output from ADVICE indicates the occu.r:rence of an eVent. Memory Simulation The ADVICE contains 32·Kbytes or 64.Kbytes of memory simulation RAM (MSR) that can be mapped anywh(:re in the UU"get address space. The eIlabling of ¥S.R ensure$thht tlsersthllf\'alid memory is available during the application development. Serial-line Ports One EIA RS-232 serial-line port is used to connect the host processor to the ADVICE and includes modem control. The remaining EIA RS-232 serial-line port connects to the console terminal. These ports are used in nontransparent mode and an internal subroutine is included to access these ports. SeH-diagn.ostks Several diagnostic tests are performed in the ADVICE during the powerup sequence or when the Reset pushbutton on the ADVICE module is pressed. These programs verify the integrity of the information in PROM and RAM (including MSR) and the operation of serial-line ports, event detection logic, and MicroVAX CPU and FPU. The user can select a limited diagnostic routine to preserve RAM contents or a comprehensive diagnostic routine that tests RAM without regard for its original contents . . User-suppJied Equipment The standard and optional equipment and software required for use with the ADVICE is listed· as follows. The optional listing depends on the type of application to be developed. • A VAX processor system with an available RS·232 serial-line port • VAXjVMS operating system, Version 3.4 or higher • DECPROM software, Version 1.0 or higher • 5·Volt power suppJy - Local VT100 compatible terminal • Appropriate etch layout around target MicroVAX CPU surface mount pads to match ADVICE connector (Refer to the ADVICE User~ Guide) • RS232-compatible modem for remote host or terminal (optional) • External clocks or triggering circuits including cables (optional) Confidential and Proprietary ______'__ --·-~~~'·~--~~-_""A_A!!l_r.r'!P'W_I'iI '_._MIII!J_'_ _ _ _ _ _ _ __ "'~_ISM_i 1-205 - , MicroVAX Incircuit Emttla_ • Specifications The phY!iical and electrical specifications of the ADVICE are as fonows: Operating Environment • Temperature: 15°Cto 32°C at 200 linear feet/minute air flow • Relative humidity: 20% to 80% (noncondensing) Module Dimensions • Height: 26.0 em (10.25 inches) • Length: 40.6 cm(16.0 inches) • Width: 2.5 em (1.0 inches) Power~ents • Power supply: 5 V ±5 % at 6 A (maximum) 4.5 A (typical) 1·206 Confidential and Proprietary . Features • Enitllates the VAX proceSsors· • CoIlsistsof the DC328 irutruction/ex;ecution lqgic {I/l':chiIA,tlw DC3.29l1l ) that are also time multiplexed. The DAL line addresses are driven during the first half of each.0'cle, and DAL data is dtiven during the seCond half. The V-ll chips interface to main memory and 1/0 devices through three gate arrays that form the port controller. This logic provides three ports, one of which is the CPU port to the V-U chips. The remaining two ports access main memory and 1/0 devices. Main memory and system I/O are on the VAXBI bus and are accessed through the VAXBI bus port and the VAXBI 78732 bus interconnect interface chip (BIIC). The third port is used for localI/O transfers to the control panel, floppy disk, etc. Related Documents Additional information on the V-ll chip set is contained in the following specifications. • V-ll CPU Functional Specification • De327 ROM/RAM Chip • DC328 l/E Chip • DC329 M Functional Specification Functional Specification Chip Functional Specification • DC330 F Chip Hardware Specification • Scorpio Port Controller Specification • KA820 CPU Modt& Specification 1-208 Confidential. and Proprietary • Featutes • Custom. deSigned VLS1 ROMjRAM chip for the Von processor. • Contains 16K by 8-bit word ROM, 1K by 8-bit word RAM and 32 by 14-bit word CAM . . Description The D027 ROM/RAM, contai~ ina,~47pin'Packag~.is~VI.sI chip designed for the V·U processor. It~ontains 16K 8-bhwords Qf maskedlll;Ogra~ROM(read-oruy, memory), 1K by Sbit words R.A1v1' (randOril~cXesslliemoty')and.:32 .i 4-bit' words of CAM (content addt-essable memory). The PC.32ichip is deSiglle AND MSElB LATCH ' D<7:0> WE Figure 1· Del21 ROM/RAM Block Di4gram Confidential and Proprietary .1-209 De327 .. Ym 8nd Signal Descriptions The input and output signals and power and ground connections for the DC327 44-pin package are summarized in Table 1. The table also contains the physical pin locations that are shown on Figure 2. The following paragraphs provide more detailed descriptiops of the inputs and outputs of the Mchip. Table 1 • DC327 Pin and Signal Summary Pin Signal Input/output 17-14,1O~7 D<7:00> inputs/outputs' Data-Transfers data from the ROM and transfers data to and from the RAM and CAM. 3,4,30-33, 36-43 A<13:00> inputs Address-The ROM, RAM, and CAM address inputs. 5 CE input Chip enable-Clock signal to latch the A < 13 :00 > and MSELB inputs. 26 MATCH outpue Match-Indicates the result of the CAM match operatioIl during a read cycle. 29 MSELB input M sdect B-Sdects the ROM, RAM,· and CAM arrays for data access. 19 OE input Output enable-Activates the output buffers during a read operation . . TRISTATE . input Three state-Used only during manufacturing test. 6 Description/Function . 20 WE input Write enable-Selectsa. read or write operation for the RAM or CAM. 28 VSB input Voltage back-bias-Power supply back·bias voltage. 18 VH input Voltage high-Connects to VDD through an external lO-ke 5% resistor. 27 V input Voltage low-Connects to Vss. 21 Not used. 35,34,22, 23,13,2 Von input Voltage-Power supply voltage. 25,24,11, 12,1,44 Vss input Ground-Common ground reference. 'Three-state output 20pen-drain 1·210 Confidential and Proprietary Dell7 Preliminary ~ ~ OQ <0 .... ~ ~ .... U) g ~ III q- w i i :;( ~ N ;;; ~ C') '" '" '" '" '" '" '" A03 - ... aI Cl 0 II) ~ '"28 N VBS A02 27 ilL AOI 26 MATCH AOO 25 VSS 24 VSS 23 liDO 22 liDO 21 NOT USED 20 WE 19 .OE .......18 VH VSS 44 . . - - - PIN '·'DENTIFIER VSS ~327 TOPVlEW ~ 6 .... OQ § 8 QI ;.! 88 -- - ,..'" - ...'" q- N ~ ~ .. ~ g Cl ,';'. ..... c· 8. g g ",. FigUn! 2- DCJ27 PintliSigtiments Data (D < 7:0> )-Bidlrectional data lines used to transfer data from the ROM, and to and from the RAM and CAM. . , .Address (A < 13:00 »-The address inptIts to reference the ROM,; RAM, andCA¥.These inputs are latched during read and write. cycles during.the high-to~loW tnttisitionof the C! input. Chip Enable (CE)...-A clock signalthatlatchestheA~ 13:00>~MSf:LB hlputs, and initiates the internal.aca;ss cycle with'll high.tp..lowttansition. Whende~ted.the~ signal <;auses the data output buffers to become a high iD)pedance. Match .(MAMJJ-An open-drain output that indicates the reswt9f the CAM match operation during.a read cycle. The CAMmatch ~tiona.nd the MA1t;H Q~~put are active durirlg RAM read cycles as well as ROM read cycles. The M1\1'CH' output is disabled only when the ROM/RA.?vJ: chip is in test mode. The state of the MA1eH' signal is not define<;t duri~ JtAMlCAM write cycles. M Select B (MSEL6~-An address input that ~crlects. the ROM or.CAMarrays and theRAM array for data access. This sijplal is latchedduriDg read. or write cycles. OutputEnahle (OE)-Activ:atesthe output buffets during a read operation. 1-211 Three State (TRISTATE)-l}sed only for manufacturing test purposes and not used during normal operation. The input connects the power llupJ:!Iy voltage (Voo) through a lO-kn ±5% external resistor. When enabled, the D < 7:0> outputs are a high imped~. Write Enable (WE).,...This input selects the read and write operations to the RAM or CAM. When asserted, the output lines of the buffer become a high impedance independently of the state of OE input. Voltage High (VH)-This input connects to the power supply voltage (VDO) through a lO-kn ± 5% resistor. Voltage Low (VL)-This input connects the ground reference. Voltage (VBB)-Power stlpply -3 V (nominal) back-bias input voltage. Voltage (VDD)-Power supply 5 V (nominal) input voltage. Ground (V.s).....Common ground references for the chip. Functional Operation The patching of incorrect ROM data with RAM data is performed by the.following operation. The 14-bit ROM addresses of the incorrect ROM data are written into the CAM. The correct data is written into RAM locations that have lO-bit addresses that are identical to the low-order lO-bits of the incorrect ROM data. BaCh time the ROM is accessed, the incoming ROM address is automatically compared with the addresses stored in the CAM. If the addresses are the same, the MA'It:H output is asserted to inform the external logic that the ROM data currently being accessed is incorrect and that the correct data is in the RAM. The RAM is then accessed in the following cycle(s) with the same address. tThe ten low-order address bits must be identical to access the correct data. The DC327 ROM{RAM chip contains an address/MSELB latch; a ROM,RAM, CAM" a data multiplexer, and an output buffer shown in Figure 1. . ' ., Address/MSELB 'Latch-Thi,siatch ,holds address inputs A < 13 :00 > and the' MSELB 'input. When the CE input is deasserted, the address and the MSELB inputs pass through the latch to the intetruillogicof the chip ..A high-to-Iow transition of the CE input loads the state ofthe address and MSELB H informationint6 the latch, and any trahsitions on those inputs that follow are ignored. Read-only Memory (ROM)-The 16K by 8-bit word ROM is accessed by the address information onthe A < 13:00> lines £rot'nthe output of the address latCh. The ROM is accessed during a highto:low transition of the CE input and the 8-bits of the ROM data are transferred to the data mrl+iplexer. ' Random Access Memory (RAM)-The lK' by 8-bit word RAM is accessed by the' address iliformation onthe A< 9:0> lines from the output of the addresslatch. A high-to-Iow transition of the CE input when the WE input is deasserted will access the RAM and transfer 8-bits of the RAM data to the data multiplexer. The RAM is written with the data on the D < 7:0> lines when the latched MSELB signal is asserted, the CE signal makes a high-to-Iow transition, and the WE input is asserted with the proper timing. Content Addressable Memory (CAM)-The CAM consists of 32 14-bit registers, 32 14-bit comparators, logic for detecting an address match, a CAM test address register, and logic for testing the CAM. When the CAM operates in the normal mode (not test mode), the latched address information on lines A< 13:00> is cqmpared with the addresses stored in the 32 14-bit CAM registers. If the latched address is the same as an address stored in the CAM registers, the MATCH output is asserted. The MATCH output is indeterminate during a RAM or CAM write cycle. In test mode, the MATCH output is disabled. The MATCH open drain output is internally disabled at the beginning of each cycle and must be pulled up to its inactive state by an external resistor. 1-212 Confidential and Proprietary 'D__t ! - ! _ rn:umm.ary CAM Write Operations The mask progm~le CAM write decoder enables up to eight ROM,IRAM chips to be tonn~ in p~rallel while main~ a unique write access to each CAM register on each of the eight ROM} RAM chips., AROMIRAM chip can access each of the 32· individual CAM registers. The CAM registers arewrit~l'l ",hen the WE input is asserted,the rylSELB input is Zero, the CE input is asserted, and when the write decoder decodes one of the reserved addresses shown in Table 2. Address A < 13:00 > Internal Sttucture &cessed (bexadecimal)* CAM Register '0 <07:00> 0<13:08> 1 <07:00> 1 0000 0001 '0002 0003 Data D<7:0> 'D<:5:0:> D<''7:(l> D<5:0> (continued through) 31 <07:00> 31<:13:08> '. oo3E 003F D<7:0> D<5:0:>. *Assume mask p~ble bifs A < 8:6 > o£;th~CAM write decoder are zerOs. Datil Mtd~~ . The data multiplexer selects the data to be transferred to the output buffer and then to the I D<7:0> ,lines. Eight bits of RONfdata, RAM data, or CAM register match state are selected depending on thesta!;e of the intewal CAMSEL signal and the latch MSELB signal listed in Table,3. CAMSEL MSELB D<7:0> output o o o ROM 1 RAM 1 X "X=lorO: Output Buffer The output bUffer driVes the output ofthe data multiplexer onto the D<7:0 > lines. When not tra.nsferringdata; ,the Qutputs of the buffer area high imped~ce. Tabl~ 4,·lists the. state. of the outputs depending on the input signal conditions. Confidential and Proprietary 1·213 ... Preliminary 00'27 Table 4 • DC327 Output Buffer States'" TRISTATE CE WE OR Output. 1 0 1 0 Drive output 1 0 1 1 high-impedance 0 X X X high-impedance X 1 X X high-impedance X X 0 X high-impedance . "X=lorO. Summary of Read and Write Operations Thble 5 lists the inputs required for read and write operations for each of the ROM/RAM chip sections. Table.5 • DC327 Read and Write Operation Selection'" CE TRISTATE WE OE MSELB A< 13:0> Operation 0 1 1 0 0 3FFB-OOOO ROM read 0 1 1 0 1 3FFB-OOOOI RAM read 0 1 1 0 X 3FFF-3FFC CAM m~tch state read 0 1 0 X 0 003F-00OQ2 CAM write 0 1 0 X 0 0201-0200 CAM test address reg write 0 1 0 X 1 3FFB-00OOI RAM write IThe RAM is accessed by address bits A < 09:00 >. Bits A < 13:10> are not used. 2Mask programmable bits A < 08:06 > of the CAM write decoder are zeros. *X= 1 orO . • Specifications The mechanical, electrical, and environmental specifications for the DC327 are contained in the following paragraphs. The test conditions for the parameters in these specifications, unless specified otherwise, are as follows: • Ambient temperature (TA): O°C to 70 0 e • Power supply voltage (VDD): 5.0 V ± 5 % (maximum ripple 200 m V peak-to-peak) • Power supply back-bias voltage NBB): -3.0 V ±15% (maximum ripple200mVpeak-to-peak) 1-214 Confidential and Proprietary ... Preliminary DC327 Mechanical Configuration The mechanical dimensions for mounting the DC327 44.pin leadless package are shown in AppendixE . . Absolute Maximum Ratings Stresses greater than the absolute maximum ratings may cause permanent damage to a device. Exposure to the absolute maximum rating conditions for ex:tended periods may adversely affect the reliability of the device. • Power supply voltages (VDD): -1.5 V to 7.0 V • Power supply substate voltage (Vss): -6.0 V to 0 V • Input/output pin voltage: -1.0 V to 10.v • Storage temperature range: -55°C to 125°C • Ambient temperature operating range (TJ: OOC to 70°C Recommended Operating Conditions • Power supply voltage (V(0): 5.0 V ± 5% • Power supply back-bias voltage (V88): - 3.0 V • Ambient temperature (TA): 25°C at: and dc Electrical Characteristics Refer to the DCJ27 ROM/RAM Chip Functional Speci/icationfor the de input and output parameters and ac timing parameters. Confidential and Proprietary 1-215 • FeatUres • Main processor element for the V-ll chipset • Used with the M-chip and F-chip to emulate VAX instruction set and memory management • Initiates memory references and containsaddres~ translation logic v','_" 'r.< . Description The De32S Ins~n/Execution(I/E) logic'ls contained in a 132"pinPGA package and is the main processing elem~nto£ theV-ll processor chipset. It pre£etcltesinstnictions, parses opcodes and specifiers, initiates all memory references, and contains the resister fUe~nd arithmetic logic unit (ALU) and most of the address translation hardware. Together with the F chip and M chip, it emulates the VAX instruction set and memory architecture. The function:U block diagram of the I/E chip is shown in F~re 1. . . '. FBOXN FBOXZ 110 . .... '1 BOX ,. t ~Brnt AWIW$<30..21.5:0> ....; -"'. Dt~) ... ~[. .' I'iAt"S'I'IQl. ~;I. ;I. A CMISS " CAM MATCH ~ M'E'RRiiW> T i:7 ~ r- - MICROSEOVENCER MEMORY r- IlI/TEllFACE r- PHYS ADOR Aii5'iii' MTBMISS ; ;' ... - - I;}IIl INTEIW.CI' r; ... I-- . 'lI£I\IS '. II;}I\L<3':OO~ A ..... I DIiIUS<31:00> • ...... 10A1..<31:00> .' MICRO TEST<3:0> .~ l~~ , ~/ ~ - . r-. '- IMI8<3aoo> I A CLK CLK lIAR CLKSYNC M18< 39:00 3! ri MIS INTERFACE MAB<14:OO> CLOCKS OCtO ~j!;TATE CSWE Figure 1 • DC328 lIE Chip Block Diagram 1-217 .Confidentialand.Proprietary -. ~ ------·-~--------- -'--'-"_II!__ _____ ___'_I O____'.._."'_. .~_. '_I~""'''''''''''''''''''_",_~_._!I'IlIi''''''"' OC328 Pin ~ SigtW Descriptions The input and output signals and power and ground connections to the DC328 I/E chip are shown in Figure 2 and summarized in Thble 1. The paragraphs that follow provide a more detailed description of the signal functions listed in Table 1. 14 13 12·11 10 9 8 7 6 5 4 3 p 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N 0 0 0 0 0 0 0 0 0 0 0 0 0 0 N P 0 0 0 M 0 0 0 L o· 0 0 0 0 K 0 0 0 0 J 0 H M 0 0 0 l 0 0 0 K 0 J ·0 0 0 0 0 0 0 0 0 0 H 0 o· 0 0 0 G 0 0 0 0 0 0 G F 0 0 0 0 0 0 F OC328 E 0 0 0 0 0 0 E 0 0 0 0 0 0 0 D C 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C 8 0 0 0 .0 0 0 0 0 0 0 .0 0 0 0 B A 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .. A 10 9 8 7 6 5 4 3 2 14 13 12 11 mpVIEW Figure 2· DC328 Pin Assignments 1·218 2 Confidential and Proprietary PACKAGE··IDENTlFIQATION 'lable 1- DC)28 Pin and S p Summary Pin 8ipaJ P4,P3,N3,P2, M3,N2,M2,Pl, L3,Nl,L2,Ml, K3,Ll,K2,Kl, DAL<31:00> input/output Data/address lines-Transfer. data and address information to and from the I/E chip. Input/output Deseripdon/Function J2,HIJl,Gl, H2,Fl,E2,El, E3,Dl,D2,Ct, C2,Bl-B3 C02 DAt BUSY input Data/address lines busy---Indicates that the port controller has control of the DAL lines. A7 bAt STALL input Data/address linestall--Indicates that the data source cannot respond to a data request during the same cycle. B7 CMISS input CaC~mjss--Indica~s that the backup translation buffer miss has occurred. K13 CAMMA'ItH input Content .··addressablememory match-Indicates that an improper address has been detected by the ROM'JMM logic. ; "", , J12 CPU FAULT output ~ , " CPU fault-Indicates that a hardware error has been deteCted. L14 MERR TRAP input Memory error trap-Indicates that the M chip ha$. detected an error condition. M14,A9,AlO,BIO, MIB<39:00> input/output Microinstruction bus-Transfers microAU,ClO,A12,Bll, address;micromstructioO!>, andintetclUpstatus. A13,B12,AI4,B13, C13,BI4,D13,Cl4, E13,DI4,F12,E14, F13,F14,H14,PS, N9,P9,M9,Pll, PIO,P12,N12,M12, P13,M13,N13,L12, P14,L13,NI4,K12 J13 output Control store output enable-Controls the stateo£ the control store output buffers. K14 output Control store write enable-Controls the writing of information into the RAM or CAM of the control store memory. M14 MIBPAR input/outputMlB paritY-lndicatesthe odd parity of the infl,)rmationon theMIB < 39:00 > lines. Confidential and Prop1'iet:ary ~~~ 1-219 ______ • •_ _ _ _ _ _..._ _ i ~.~.--~-------~----------~-.---.- ~ Pin Initial instruction decode-Indicates the start of a macroinstruction to an F chil?o P7 lID P6 FBOX N input F chip sign N flag-Indicates that the result of an F chip computation is negative. P5 FBOX Z input F chip sign Z flag-Indicates that the result of an F chip computation is zero. A2,B4,A3,B5, A4,B6,A5 PAL<6:0> output Physical address lines-Transfer part of the DAL line address information to the M chip. AO ABORT output Abort-,-Indicates that the current microinstruction should be ignored. A6 Mrs MISS outPJ.lt Mini translation buffer miss-Indicates that a mini translation buffer lookup has failed. G3 eLK input Clock-A MOS dock signal from the M chip. F3 CLK BAR input Complemented MOSclock-A complementary CLK signal. G 14 . CLK SYNC input Clock synchronization-Provides a phase 2 reference marker during a cycle. N6 TRISTATE input Tristate-Causes the output buffers to become a high impedance. J14 DCW input dc low-Indicates that the dc power is not within the required specifications. Al Vuu input Voltage back-bias-Power supply voltage for the substrate of the chip. (-3.0 Vdc nominally) B9,C3,C6,C9, Cll,C12,D3,G2, H12,H13J3,M5, M7,Mll,N5,N7, Nll Vnn input Voltage-Power supply voltage. B8,C4,C5,C8, D12,E12,F2,G12, G13,H3,M4,M6, MS,MIO,N4,NS, Vss input Ground-Common ground reference. NlO Data Address Lines{D,fU.. < 31:00 >.-B.idirectionallines used to transmit address and data to and from the Vll chipset, .the port controller, and the cache and backup translation buffer (BTB) RAMS. The I/E chip transfers address information during the first half of the the microcycle. Data is transmitte<;l and recc:iv<;d by the DAL lines. The data is valid only during phase P7 when the data is received from the cache or BTB )tAMs ..When the data is received from other sources, it is valid during phases P7 and P8. 1-220 Confidential and Proprietary - DAJ.Busy WALBUS).'>-This input is asserted when the port c0ntroller has conttol of the DAL< 31:00>li~.Whenasserted. the DAL< 31:00 > outputs become a high i~ance.1'he Dicr:.lJp$Y.sigtlal is a$serted.dUJ:ing cache fillcycles . after the port controller bas accepted the comm.ndsent. to it by the M chip. It is held.by the port con~ller until the .last loQgwordof .the cache £ill has been received. !he port controller also asser~!the DAL lJusysi,gnal during. I/O invalidate cycles to hold the DAL lines while the controller transfers the invalid address to the Mchip. DAL Stall (DAL STALL)-This input is asserted when a data SOurce cannot respond to a data transferrequestdurtngthe same cycle; !'he'sOuWe that fequ.estedthe data'is stalle!d'until the responder can resporlquring memory reqtiest write transactions, memory request read transactions that have cach~ miS$e$. IB-fill trarlsactions that have cache misses,. load PTE operations, and Mini-TBmiss cycles that result in amiss in the BTB. This input is used by the I/E chip only to indicate that a backup TB miss has occurred. Content Addressable Memory Match (CAM MATCH)-Used to detect patched ROM locations during a ROMaccess ••Thig,:signal is;assertedwhenthe CAM.in~_DC3~1cMtrol StOre .detects an address with a pstchedmb:toinstructiotL. The execution0f'thefaultymicroinstruction is suppressed by the AH6RT signal. CPUPault (CPU FAtIL'f)-ThisJ.ine indicates. that a hatttware emtirhasd(iCllTred andisased for driving an LEDin the field. Refer to. Microseque:ru:eJl.sect:icm£oriietalled information. M Error Trap (M ED TRAjt}..~Thit.lib.e isasst'i'ted:by ~M chip to infOrm the lJEchip o£an errot. The assertion of this signal causes the I/E chip to abort the microtrap operation. It is' asserted when apa1dtyerror~ bnthe&tareadbperation£rom OllIe of;the'tag~ys 'duringamcmOl'y request (MEMREQ)"m.fill, or Mini..TBmis&operati.on~k isalsoasseJtted:i'nenitw: POl'tconttoller asserts a port controlenordue 'to adatlt·'er.rm(dtat:'haS~.duringamemorytead orwrlte operation. [ Microinstruetio Bus (MID < 38:00 > )-This is the primary cOhttdlbuS .. Internal status bits and mit:roaddresseslJ1'l::transferredonthisbUsinpba$esP)'iUldP4during.the~shalfoftheCyde. TheDC327controistotedtivesthemkroinst:nrotioMorltheMIB-<38:00>1inesirtphasesP7.and P8 during the laSt half of the ¢ycle. Control Store Output Enable(~...;;;.ASserted. to causethe.outPut btiliefs'of the control store to become./thighimpedancedwingiphllSesiP6.thtoughP8. Control Store ~BnahIe (GSWE).;...Controlsthe \VritiDg()flilie'40~bl:t~rd to the RAM or CAM in thecontrol.store. MID Parity (MID PAR)-This line indicates odd parity for the 39·bit control word during phases P7 and P8;It. is.not·used duringphasesPJ and P4 •. When a pari,ty;f1rror isdeteeteci; the.I/E.chip forces a microttap. Initial Instruction Decode (llD)-Indicates to the F chip that a new macroinstruction execution is beginning and thattheopcode on lines MIB < 22:15 > is valid. F Chip N Bit (FBOX N}-Indicates that the reSult Qf an F chip computation is negative during phases P7 and P8. When no F chip is present, a pullupresistormust be connected to this input. The F chip also indicates an error by asserting the N bit during phases P3 and P4. F Chip Z Bit (FBOX Z)-Indicates that the result of an F chip computation is zero during phases P7 andPS. 1·221 - D0.32S Physical Address Lines (l?At < 6:0> )-These lines provide the M chip with part of the address earlier than the address is available on the bAL < 38:00 > lines. When the MTB MISS signal is asserted, the value on these lines is a virtual address. If the MTB MISS signal is not asserted,· the address on the DAL<38:00> lines is a physical address. The mapping of the virtual and physical address of the DALlines to thePAL<6:0> lines is shown in Table 2. Table 2 • DCl2S Physical Address Line VIrtUal and Physical Addre~s Correlation Virtual Address DAL Line < 31 > PAL Line <30:17> <0> <16:11> <10:00> <6:1> Physical Address DALLine PAL Line <28:13> <12:06> <6:0> <05:00> Abort (ABORT)-This signal indicates that the current microinstruction should be ignored. This inhibits execution of the current microinstruction and forces the loading of the next microinstruc. tion. Mini-TB Miss (MTB MISS)-This output is asserted during memory requests and IB·fill operations when a Mini-TB lookup fails. It indicates that a Backup TB read cycle should be performed, a PTE should be passed from the BTB to the IjE chip, and the microinstruction or I .boxrequest should be initiated again. Clock (CLK)-This signal is driven by the M chip and is used by the lIE chip, M chip, F chip, and port controller chips. The eLK input makes a transition from a 0 to 1 at the beginning of every odd phase. The eLK frequency is one half the frequency of the Tn eLK IN input to the M chip that is used to generate the eLK and eLK BAR signals. The nominal value for TTL eLK IN input is 40 MHz resuting in a 20.MHz eLK input. Clock Bar (CLK BAR)-Thls signal is used by the I{E chip, M chip, F chip, and port controller chips. The eLK BAR signal makes a transition from a 0 to l·at the beginning of every even phase. The frequency of this signal is one·half the frequency of the TTL eLK IN signal. The nominal value for TTL eLK IN is 40 MHz, thus producing a 20·MHz eLK BARinput. Clock Synchronize (CLK SYNC)- This signal is from the M chip and is used to synchronize the chip set and port controller by supplying the reference marker for phase 2 in the cycle. dc Low (DeW) -This signal is driven by the module to indicate that the dc power is not within specifications or is heingrestored. Three State (TRISTATE)-This signal forces all of the output buffers to theirhigh·impedance state. This feature is used only during parametric characterization, debugging operations, and for module .test purposes. Back·bias Voltage (VBB)-A -3.0 V from an external supply used for substrate bias. Voltage (VDD).....Power supply 5.0 V (nominal) voltage. Ground (GND < ).....:Ground reference. 1-222 Confidential and Proprietary - ..PreIiminary I/E Chip Iimhtg 'TheIlE chip.mictocycleisdivided intoeigbt:time slots PI throughP8 shown in Figund. Two . nonoverIapping clocks and a .synchronization strobe' are' requtted to generate thesephase~ The ei8ht time slots can be qivided into five. ~ional time slots.-fetch, decode. drive the operands onto theipput buses, A:LUoperation.and wtjte the results .. 1'he liE chip ismpelin~ .such that the fetch and write cycles, liU"e. overlapped. The overlap of mknJirJs~~cti0IlS Ularu.i U2 is shown. PI MICRO Cl'CLE WRITE I P2 DECOOEVI I P3 I P41 ORIVEU10PERANDS: I P5 P6 Ul ;>.LUOPEAATlON. I I .LQAl>U2 '; '., Figure J. DCJ28 MiCmcycle ~g The liE. chip is interlaced with the systemthro* thetime.mulijplexed microinsttuction. bus (MIB < 39:00 > ) and the data address lines (DAL < ThOO»,.I:he"aQ$ess isttansfenedduringthe first half of the cycle (1)3 and P4) and the~ta is t~tnittl!d~r~eived in the 5e(lOnd, h!Uf of the cycle and Dtti.. Timw.· g , "', ' , ' FW1~I>eset~ Flgut'e lshows the f\mctional elements, bus struc~,and ·~lines o,.tht;.I/Echip. Refer ~ DenS liE Chip Funetional Speciijattion fot detai1edope~i9~·o£t~chip. A brie( deS'eription of the I/EchipJollows: Inst:l'tKtiOlt·~ and Decoder (I Bdrt)-.-The I box prefetches the instruction stream, generates microprogram fork addresses, and provides instmctionjdatatotbe E box. The instructionp~gl'3mmable 199ic array (IPLA.tis 19Catedin the.J;b9¥:. Microsequencer-The microsequencer determines the address ofthe next microiasJ;metiontObe fetched and executed from the external control store ROM/RAM. Its facilities included an eightentry stack, and two adders for fast next-address generation in conditional branches. It also has special hardware used to enhance the power of microdiagnostics and handles microtrap generation. Execution Box (E Box)-The E box contains facilities to implement the VAX instruction set. The E box contains the general purpose registers (GPRs), temporary registerS" (TEMPs), and working registers. It also includes a shifter, a 32-bit arithmetic logic unit (ALU), a constant generator (KMUX), and the shift counter (SC) register. - Memory Interface-The memory interface converts program generated virtual" addresses' to physicaiaQdresses and' governs all data requests of mijn memory or thecachedt also:has facilities .to improve the performance of common memory management exceptions. DAf.: Interface-TheDAL interrace COnnects the I/Echip to the external data path. It performs byte rotation, buffering, and determines when the data on the DAL< 31:00 > .lines is valid. Mm Interface-Th~ MIB interface connects the I/E chip to the external control store through the MIB. It receives and checks the parity of the microcode wards that are read from the external control store, controls the sequencing of the ROM/RAM chips, and oversees the use of the MIB for passing interchip status signals. It is also used for writing the patch RAM section of the DC327 ROM/RAM chips. . Interri.a1 Bus Structure Five of the internal lIE chip buses are 32-bit data buses and the remaining two are used for control. The f()l1owing is a brief description of the major buses. . Internal Memory Information(IMm < 38:00 > )-The IMIB < 38:00 > lines provide the main control and are used to transfer the microinstruction to all other logic functions in the chip. Because the lIE chip cannot stall the clocks, it must execute a microinstruction every cycle. The information on this bus is v:tlid every cycle. The memory interface logic inhibits write operations that are associated with a stalled microinstrUction. . . Microtest <):0::>';";"The miciotest bus is used t6 transfer 'the results oia conditional branch test to the microsequencer. The microsequeneef uses thls' value and the branch command field to determine the next microaddress to be driven to the control store. Internal DatalAddress (IDAL < 31:00 > )-The IDAL bus connects the DAL < 31:00> lines to the internal register HIe. It is driven by the memory interface during the address portion of the microcycle and during the data half of the microcycle if the datais being written by the l/Echip. It is drivenby'the DAL <31;00 >linesll theI/Echip is executing a read transactiori. D-stteam Bus (DBtJS < 31:00 > -This bus connects the E box registers to the IDAL bus and IS driven when the lIE chip reads D stream data or external registers. The microinstruction specifies the E box register to be loaded from this bus. AW Bus (AWBUS < 31:00 > -This is the main data bus between the I box, E box, and memory interface and is used as one of the input buses to the ALU. It also transfers the result of the computation from the ALU. During a normal ALU operation, one of the operands (inputs to the ALU) is driven onto the AW bus by an E box register. After the ALU operation, the results are transferred onto this bus and are then written into an E box register. Whetidata is beitig written from the E box to the DAL lines, the AW bus is used to transfer the data to the memory interface that then drives, the DAL lines. It is also used to connect registers located in the Ihemory.intertace and I box to the E box registers. B Bus (B <31:00> )-This bus is located in the E box and is driven by Eboxregisters to provide the .remlUo)ng input to the ALU. 1-224 Confidential and Proprietary - DC328 • Specifications The mechanical, electrical, and environmental specifications for the DC328 are contained in the following paragraphs. The test conditions for these specifications, unless specified otherwise, are as follows: • Ambient temperature (TJ: O°C to 70°C • Supply voltage (VDD): 5.0 V ±5% (maximum ripple ~OO mV peak-to-peak) • Back-bias voltage (Vn ): -3.0 V ± 15% (maximum ripple 200 mV peak-to-peak) Mechanical Configuration ThemechanicaidimensionsformountingtheDC328132-pinPGApackageareshowninAppendixE . . Absolute Maximum Ratings Stresses greater than the absolute maximum ratings may caus~ permanent damage to a device. Exposure to the absolute maximum rating conditions for extended periods may adversely affect the reliability of the device. • Supply voltage (VD~: -0.5 V to 7.0 V • Pin voltages: -1.0 V to 10 V • Power dissipation (TA =O°C): 7.5 W • Power dissipation (TA = 70°C): 5.0 W • Ambient temperature operating range (TA): O°C to 70°C • Storage temperature range: -55°C to U5°C Recommended Operating Conditions • Supply voltage (Vcc): 5.0 V ± 5% • Ambient temperature operating range (TA ): O°C to 70°C ac and de Electrical Characteristics Refer to the DC328 I/E Chip Functional Specification for the de input and output parameters and ac timing parameters. Confidential and Proprietary 1-225 • Features • Contains memory management logic • Provides tag store for cache memory and backup translation buffer • Provides functions Eor interrupts, communications, and timing • Description The DC329V.Uprocessor memory management (¥drip} Jogic,ooritainedin a 132-pin,pin,grid array (PGA) package, i11cludesmost of thetnemory management hardware and the tag store for the cache memory and for a 512-entry virtual·tp.physical address backup translation buffer (TB;snJO). The BTB supplements the mini-TB that is located in the I/E chip. The cache data and the, DTB address translation entries are stored in exremal static BAM chips. The M chip also contains miscellaneous CPU functions such as CPU clock drivers, processor registers, the in1:el'Vatand timeof-day timer registers, interrupt hardware, clock-generation circuits, and four serial-line unitS, Figure 1 is a block diagram of the DC329 M chip. <, M\II,<31;~8>'0: A, ... , MlII...;a,,:M;> ~ :.. :b ... A ... . r . .~ <... L,. I ADDRESS TIWj$LATIOI'j mD .. lOGIC /' ~,. , ;, ~. ., )0. : 'Ii >- "'I TIMER ~, >- mCLK CLOCK GENERATOR • ~ .(,). ,..: . )P, UARtlli 4,UARTS .~H~.- fUAltttT RECEIVER! TRANSMITTERS . UN!T2 R UAlfu:T iJ.AIl1'3!t. UARt3T tmmfrj! ClKBAR .. W\RTOIl UARI'Ot om elK i" ,'Ii PME BIINTR·4 tlKSYNC Io~ G ';'1 I PCNTL<3:0> ~ ClKDIS ft .OAL<3"0> ~ ···Ae 4 "~!I'·· i!1'IR$ OUTPUT EN "REGISTER , COMMJI~7:0> LOGIC RAM TEM!'QI\I\RY fUIITAUSl , 'fliT:. CONTROl } CAl<10:0> CASHECS TRANSLATION BUFFER \. IiITlIMISS " ) .QlII!Ir WREN<3:Q> PAJ".<1I:0> .A CA$IIIi tAG ARRAY f1UTAGs) PIUOIIiTY INTERRUPT CONTROLLER IiiIm'Ii ~ 5C"£1r Figure 1 • DC329 Memory Management Logic Block DiagnJm 1-227 _3····· .... ~.......... . • Pin and SignaIDescripticms The input and output signals and power and ground connections for the 132-pin package are summarized in Table 1. The table also contains the physical pin locations that are shown in Figure 2. The following paragraphs provide a more detailed description of the inputs and outputs of the Mchip. Table 1 • DC329 Pin and Signal Summary Pin Signal Input/output'" Description/Function K13,K14,G13, DAL<31:00> input/output Data/address lines-Transfers data and address information to and from the V-ll chipset. D2 DALBUSY input DAL busy-Indicates thatthe D~L < ?1:00 > lines are controlled by the porfcontroller. Al DALSTALL input/output J14,G12,H14, F13,G 14,F12, F14,E13,E14, E12,D14,D13, . C14,C13,BIJ, BI4,B12,AI4, Bll,A13,BlO, A 12,C9,All,B9, AlO,C8,A9,B8 BI DAL stall-Indicates that the data ~urce cannot respond to the data request in the Same .cycie. input Abort'-Asserted to ignore the last chieminstruction. N12,N13,M12, P14,M13,NI4, L12,MI4,L13, L14,K12 MIB<38:28> input/output Microinstruction bus-The primary control bus to transfer commands and status information. B4,A4,C5,A5, B5,A6,C6,A7, B6,A8,B7 CAL<10:00> outputs Cache address lines-Provid.es physical address to cache and virtual addresS1:oBTB PTE. J1 BCIACLO input BCI ac low-Initiates an ac power low interrupt. H2 L1 L2 L7 BIINTR4 BIINTR5 BIINTR6 BIINTR 7 inputs BI interrupts (4-7)-B1 bus interrupt}eve,k14 through 17 output BTB chip select-Asserted to transfer data to or from the BTB PTE RAMs. A2 1·228 Confidential and Proprietary Input/output* Deseription/Funetion Pin B3 'mHEcs output M9 CLK· input/output Cache chip select-Asserted to transfer data to or from the cache data RAMs. Clock.;..,...A MOS clOck signal to the I/E chip;F chip, and port controllers. MIO CLKBAR input/output Clock bar-A comPlement MOS eLK sigOal . to theIJEchlp,Ff1U~a~~port controllers. NlO CLKSYNC B2 inputJputput Clock synchronization-Provides Phase 2 reference for synchronization. input/output Cachemiss......Asserted during cache misses, load PTE operations, and cycles that miss in the Mta. J2 CNSLINTR K3 CRl)IN'I'R input Console, interrupt-Asserted to indicate an ·~blein~l?t ... input ,' .. C:or~c:redreadda,ta interrupt-Asserted to reqUJ::$t an intd:rtiptanlPL 16. M5,N4,M4,N3 .WREN<3:0;> inputs PlO BtinCW' input ."BTB/c~he wr!te enable::- BClCic!IOw-lt1&catJsthat the power supply voltage will be. below .the specified minimum value; D1 MERR output M chip error-Inforros theJJE chip of an el'l"Ot wtidition. P9 MTBMISS input . Mini,TBmiss::-::-:1ndicateS.whether a cache or BTB'a()(less is ri:4uired.• when a mini-TB miss has occurred. K2 NIINTR input NI inteftupt-Indicates that, atiunmaskable interrupt is posted. . A3 OUTPUT EN output Otttput~ble-Controls the outpUt enable of the ~a'che and BTB. P3-Pl,Nl PCMD<4:0> C2 PCNTLERR output Port controller command...... PrQVides)c~m­ ma.nds-tothe portcontrolJer. , . input Port controller error-Indicates an error has ~inthe port controller during a data , , ~ ttansfer. ". . " .. C1 PCNTLRDY input Port controller ready-Indicates that a command can be sent to the port controller. P7,N6,P6,M6, PAL<6:0> input Physical addiess < 6:0 > - Provides a physical or virtual address to the M chip. CollfidentW,andProp:rictal'y 1-229 Pin Signal Input/output· ,Deseription/Func:tion, M2 PMEOUT output Performance monj.tor enable-Indicates the state of the PME bit in the PILR. N9 TTLCLKIN input TTL clock-A TTL 20-MHz clock signal for UARTs and timers. P8 CLKDIS input Clock disable-Disables the clock outputs. MI TRISTATE input Three state-Disables all outputs of the M chip except for the CLK, CLK BAR, and CLK SYNC. G3 UARTORCV input UARTO receive-Serial-line input from UARTO. F2 UARTOXMIT output UARTO transmit-Serial-line output to UARTO. HI UARTIRCV input UARTI receive-Serial-line input from UARTl. Fl UARTIXMIT input UARTl transmit-Serial-line output to UARTl. G2 UART2RCV input UART2 receive-Sedal-line input from UART2. E2 UART2XMIT input UART2 transmit-Serial-line output to UART2. Gl UART3RCV, input UART3 receive-Serial-line input from UARTJ. E2 UART3XMIT input UART3 transmit-Serial-line output to UARTJ. C3,C4,CI0,C11, VDD H3,H12J12,M3, M7,M8,N8 input Voltage-Power supply voltage. C7,C12,D3,D12, V's E3,H13J12J13, LJ,M11,N7,N11 input Ground-Common ground reference. N2 input Back-bias voltage-Power supply back-bias voltage.. Preliminary VBB .. All pihs have TTL compatible levels except eLK and eLK BAR. 1-230 Confidential and Proprietary OC3Z9 - PreIitninary l4 13 12 11 10 P N i 9 ·8 1 :6 5 4 3 2 1 0 0 0 0 0 0 0 0 0 O. 0 .0 0 0 0 0 0 0 0 0 0 O· 0 0 0 0 0 Q N M 0 0 0 L 0 0 0 0 0 0 0 0 0 0 0 P 0 0 0 M 0 0 0 L K K 0 0 0 0 0 0 J 0 0 0 0 0 0 J H 0 0'0 0 0 0 H G 0 0 0 0 0 G F 0 0 0 0,> 0 0 F E 0 0 0 0 0 0 E D 0 0 0 C 0 0 0 0 0 0 B 0 0 0 0 0 0 A 0 0 0 0 0 1 DC329 0 14 13 12 11 10 9 0 0 0 0 0 0 8 7 6 6 43:' 2 10PVIEW Figure 2· DC329 Pin As#g?t~1S Dataladdress Lines (DAL < 31:00 > )-These lines are used for transmitting addresses and data to and from ~V·llchipset, the PQ~t contro~.andthe:cac:bc! RAM1~.~e:Mchip~eivesaddress and data ipformaiion~ transn;dts dataon, this:bus .The da~.iJi.validQmy .dtJ;rlngphase 7~hen the ~ta is frOm the,cilChe da~RAMs. When the,lataish'ol:ntheM>duP.kis valid for>M~es P7 3Jld.)?s. DAL·B~(DAL IUSY).....This inpgt iS1\sserted lines. When asserted, the OALlines are ahighimpedanceand the DAL STALL'and CMISS are released by the Mchip. It is '$S$err.eddut~ tachefill:¢yc1es after the po:i:t controller.'has ac~pted thecomm.and s~t.1;9 it byth,e;:M chj,fl.,Itis held>~the;P9ncontrolleruntil t:h,elast longw:ordof the cache anopenldonhasblren~ivr;d. 'J;'he ~·controner .a1:l0 $sserts this. ~t during I/O invalidate cycles to ~nable it to drivetheinv~~te~~onto the.OAf. < 31:0 >. tines,_ DAL Stall(DAt .STALL);-This signal.~)~sse~ when a~ta$O~ .cannot ~P9nd JO a data transfer requestir} thesapre cycle. Th~resQu~ ~tte<1uest¢ldtheda'ta is stalled until the soorce can resPQnd. The M chip asserts this'signal when the cache'or bac~pm.nslatU?nbuffer is busy with a previOQs .conunand~d a new COtnn1al1d isteCt!ived "rhi~ requests the M chip~ It~ used during the first ready cycle ~£an MREQ read transiu:tiont~~lha~a ca~he ,miss, at¥l when there is a read miss or a cache write and the PQrt controller is not ready. The Mchip alsoassertstheJ5XL STArI signal when the lIE chip ~t~!Dpts to read the PTEadderlUid the Mchipisc~atin~ the result. It is also used tostallthe 'I/E chi!? during the first cycle of the two cycle MXPR read operations and during the second cycle of the tWo cycle MXPR write openltions if the microcode is attempting to initiate another operation that requires the M chip. The M chip does not assert this signal when the DAt BUSY input is asserted. The DAL STAll signal must be deasserted by the end of phase P4 if it is to remain deasserted for the rest of the cycle. Confidential and Proprietary 1·231 Microinstruction Bus (MIB <: 38:28> )-This is the primary control bus and the M chip receives U of the MIB<39:00> lines in the system. LinesMIB < 38:32::> are used as input to the M chip and lines MIB < 31:28> are bidirectional three-state lines. During the first half of the cycle, the M chip transfers status information on lines MIB < 31: 28 > and during the second half of the cycle it receives status information· on. lines MIB < 38:32 >. The M chip receives commands on lines MIB < 38:32 > during the second half of the cycle. The status information received by the M chip during the P3 and P4 phases is listed in Table 2. Table 3 lists the status transmitted by the M chip during phases P3 and P4. 'lable 2 • DC329 MIB Line Status Received MIBLine Description 38-35 Write mask bits as follows: Bit 38-Longword bits 31:24 (byte 3) Bit 37-Longword bits 23:16 (byte 2) Bit 36-Longword bits 15:8 (byte 1) Bit 35-Longword hits 31:14 (byte 0) 34 IB Fill 33 Using DAL 32 Request second reference The write mask (bitd8:3) indicate to the Mchip which longword bytes are to be written into the cache and main memory or to the 1/0 device. The M chip uses these bits to enable the cache write enables if the cache hits on a MEM REQ write instruction. Each bit corresponds to the assoCiated cachewrite enable output. These bits are asserted to 1 and are supplied to the port controller on the PCMD4:o outputs; These bits must be set whenever the microcycle is not a MREQ write instruction and low when asserted on the MIB asserted implies that the byte is to be written. TheIB Fill MIB34 'line is asserted low when the M chip is not completing a p~ious operation and initiates a read operation to read the requested VAX instructioniocated at the address present on the DAL lines during the address half of the DAL cycle. The UsingDAL MIB33 line is asserted high to indicate to the M chip that thecurtent microinstruction uses the DAL lines. This bit is used in determining when the current microinstruction has been completed. The Request2nd reference MIB32 is asserted low to indicate to the M chip that the reference is unaJjgned'~na that two MJffiQoperationsare required to transfer aIIofthe data. This appues to urialigned read and unalignedwrite transactions. It is asserted fot the first unaligned data reference and pre~nts.t;he ~-chip £ium updating the microinstruction that ~()Uld cause it t() reexecute the memory ~uest (MREQ). The upd~ted address is supplied by the lIE chip~ . 1-232 Confidential and Proprietary Prelimimtty 31 . llCJ29 Letigth violation 30 29 IID interrupt request 28 FPD intenuptrequest i '. The length :violation MIB31 output reports the rompUiS()nofthe :valueS'contairiedina selected p~~.O! sy*mlengtl;tremte!Yfith,qe·MVA~He.:tft~MYA~in ~cle(~},the.first microcycle that can branch on the new sta.~ .. .is(n+:4).~ . ," , ; '- , - ,- ~, The systemsp~e M$.30 outp~t ~,~qyil\l~ent to th~;vallltt'9£~N'A~l, The lID interrupt request .MIB29.outputis the intetruptftequest genel'atedrh¥the iirtettupt controller, It is asserted high . n there is"~'I?Mdi:ni tmiSkable .mrruptinputthllt baSil: wIue ,above .the.currentI}lL,. 'YJJel}.1th~ .isan. H~W~ int~l'!tJJiI!::pen4in&,ort~~,;ISTA1'US H,t\1I~it is set:WJjtitlglto t~ SI~It> the ~>OF~ I~Wt.T$~f~a~e.in f:he intert;l;lpt Silltus on,~.~; l1ris·.isin~gpntom~.in~~~,~Pl,lts t:luu;.~cal,lSeintertupts . •There lsa ~betweettchqWsonea£tlutse re~ters ~;~~~ o;that~on tJ:te lID input· The FPD interrupt request MIB28 'output'. is the, interruPt ·.request generated by the interrupt contronet. It is asserted. high when 'there is apendingmuk~intttNpt1np\tt that has a wlUe above the currentm!;; il).f whenmunmaSkableinterl'1.lptis:~ed,;The ~istheSame '.IIS for the llD ilitettupt request status signal. . The microinstruction formats that are recognized" dn MIRdurlngphasesP7 aiid PS shown in FigtU:e 3; . ····'r the are MXPR: MIS MEM REO: Figure 3 • DC329 MIB Microinstrnction Format Cortfidentiahmd Pmprietary "1.233 - Preliminary ;'OCJ29 Abort (ABo'RT)-This input i~ ~~rtedwhel'l th(d~$tinstructionon theMIB intheprevious P7 and P8 phase is to be ignored. Becausethe AB"C5RTsignal is generated by the lIE chip, the M chip may not be executing the same microinstruction as the I/E chip and therefore it applies to the instruction that the I/E chip is executing. When this occurs, the M chip ignores the abort. If the M chip asserts the MERR signal, the ABORT signal will be asserted by the lIE chip in a subsequent cycle, causing a microtrap to occur. This ABORT signal must be deasserted by the end of phase 3 if it is to remain deasserted for the rest of the cycle. Micro Error (M ERR)-This signal is asserted by the M chip to inform the I/E chip of an error condition. It causes the I/E chip to abort and microtrap when there is a parity error on data read from one of the tag arrays in an MREQ, IB fill, or MTB miss operation and when the port controller asserts a port control error due to a data error on an MREQ read or write operation. BCI ac Low (BCI ACLO)-This is an interrupt input to the M-chip. When asserted, an interrupt is requested at IPL 16. This signal is sampled each cycle and is not latched by the M chip. PortCobtroDer Error (PCNTL ERR)-This inputinforms the M chip that an error has occurred in the port controller as a result of a data transfer operation. Port Controller Ready (PCNTL READY)-This input informs the M chip that the port controller is ready to accept a command. When deasserted and the current instruction requires the port controller, the M chip will assert the DAL STALL signal until the port controller becomes ready. Cache Address Lines (CAL < 10:00 > )-These outputs provide the physical address to the cache during cache read and write cycles and the virtual address to the BTB during PTE· read and write cycles. The cache data array is organized into 2K longwords that require 11 address lines. The B'tB contains 512 PTEs of one longworcl each. The CAL < 10:00> outputs reflect the address sent to the M chip on the DAL<.31:00> lines during the first cycle of cache read operation and MTB miss cycles. The source of the CAL < 10:00> information is the MVA for the load PTE operation. During cache fill operations, the M chip modifies the value of the CAL < 1:00> lines by incrementing them by modulo four (starting from the value of these bits supplied on the DALlines) each time one of the four Iongwords are received. The CAL line value is derived from the address received on the DAL < 31:00 > lines or from the MVA. Cache Chip Select (CACHE CS)-This signal is asserted when data is to be transferred to or from the cache data RAMs during read and write operations. The direction of transfer is specified by the WREN <3:0> lines. The RAMs address is on the CAL < 10:00> lines. Write Enable (WREN < 3:0 > )-These lines specify the direction of the data to the cache and BTB data and parity RAMs. When active, the data for the associated byte in the cache or BTB RAM arrays is written. The chip selerct lines determine which bank of cache or BTB is to be written. The lines are asserted during the following: • An MREQ write operation that has a cache hit. The write mask that is received by the M chip during the MIB line status transfer is used to determine which of the 4 bytes in the longword are to be written. • When the cache is written with data on a cache fill. All 4 bytes are written and the write mask contains all ones. • During an MREQ read operation of the PTE. ,When the PTE returns from memory, it is loaded into the PTE store and the write mask contains all ones. • During an MXPR write operation to the PTE. All 4 bytes are written and the write mask contains all ones. 1~234 Confidential and Proprietary BTB Chip Seleet (BTli eS)-This signal is .as$erted when data is to be transferred to Of from the BTB PTE.UMs dtll:':il'lg read and write opet:a.tions. The ~ion of transfer is speci£ied.by the WREN < 3:0 lines. The RAM address is on the CAL < 10:00> lines. Output Enable (OUTPUT EN)-This output is used to enable the cache and BTB data chips. When asserted, the selected bank of data. RAMs will drive the DAL lines. Caclte Miss (~~This signal is an 9U~p,Ut%>~~ M ~pw~en the . :'DA""L""'B""',tJ""'S""y . signal is not asserted aad is an inPut to the M..chlp wheD:the fiAt IftiSYsign8I iussertetl It is asserted on MREQ write and read operations that result in .cache misses,m fills transactions thlIt rt:sult in cache misses, load PTE operations, and MTB miss cyclesth'it: reSult in a miss in the BTB. When asserted by the M chip and the MTBtniss is not true, this !lign~#@lcates to the PQrtC(lntrol1er !hat the command that was sent to it is to be executed. The ~l~nal is deasserted by the end of phase 4 if it is to remaindeasserted for the rest of the cycle. DU1'ing cache read misses and load PTE operations, the CMISS signal is asserted by the M. chip for each cycle up to and including the first cycle in which the port controller is ready. The port controller then asserts the CMISS signal until the completion of the £i11operatiol}.TheMF,hip $0 waits £ort~ePQrt C()at~ to ~~ ~Y during. write CYcks- The CMISS~put.is~ to.~cate~tthe l>4. chlpisto perior~an. 1/0 ~te cycle. Theport~ntroner d~this bydeasSf!rtingthis.,S~at: thesame time. thilt the DAL StALL andDALBtJSY ~ignals:u-easserted. ,.... .. . Port Conunand (PCMD <4rtl»--These outputsprQVide thecotrul,lQ,lld to:the PQrt>controller dur~ phasesP3 and P4 and the write maslc d)Jl~pbaSf!~.1'1al1c.i P8.Theco~and is eJtectlted only by. the !?Ort controller Hthe ~ is~ted~tet4t¢at.cyde .. The wrl,te .• mask is used by only by the port controller during write openltions. ..... '. . Clock (CLK)-The eLK signal is pM9S levelinput'1'he~~p~%~,thisputpl,lt back ~o its<;l£ as an input and it is used on the module by theI/¥cMp,F clUp,,~~ portcoP~lk:r chips, A transition of this signalfrom ll. 0 to 1occurs at the beginningofev!=ry )-These inputs· provide part of the address that was previously referenced on the DALlines. Table 4 lists the address bitcorre1ation for a virtualaddress (MTB MISS asserted) and for a physical address(MTB MISS not asserted). 18ble 4 • DCl2' PAL Line V1rtual and Physical Address Correlation Virtual Address DAL Line PAL Line 31 0 Physical Address DALLine PAL Line < 11:6> <6:0> < 16:11 > < 6:1 > Mini·TB Miss (MTB MISS)-This input is asserted by the IfE chip when there is a mini-TB miss. The M chip uses this signal to indicate whether the BTB or the cache is to be accessed during an MREQ operation. It is aqualifieron the address received on the DAL and PAL.<6:0> linesthat indicates whether the address is virtual or physical. When asserted, the M chip transfers the virtual address onto the CAL < 10:0> lines and reexecutes the last microinstruction. BI Interrupt (BI iNTi < 4:0 > )-These are interrupt inputs to the M chip. When a line is asserted, an interrupt is requested on IPL 14 through IPL 17. These signals are sampled during each CYge and are not latched by the M chip. Console Interrupt (CNS! INTR)-When asserted, an unmaskable interrupt is posted. This signal is sampled each cycle and it is not latched by the M chip. CRD Interrupt (CRDI'NfR)-When asserted, an interrupt is requested at IPL 16. This signal is sampled each cycle and it is not latched by the M chip. NI Interrupt (NI INTR)-When asserted, an unmaskable interrupt is posted. This input is sampled each cycle and is not latched by the M chip. ac Low (BCI ACW)-This input is asserted when the ac voltage is below the specified limit and initiates an interrupt request on IPL 16. This input is sampled each cycle. de Low (BCI DCW)-This input signal is asserted by the power supply when its output voltage is about tobe lower than the specified minimum value. When asserted, all.outputs of the M chip become a high impedance except for the CLK, CLKBAR, CLK SYNC, and OUTPUT EN outputs. The CLK and CLK BAR outputs are normal. The CLK SYNC signal and OUTPUT EN signals are deasserted.When the BCI DCW signal is deasserted and the CLK and CLK .BAR signals are asserted,the first assertion of the CLK SYNC signal is within four or six TTL CLK IN cycles. After this signal is deasserted, the M chip will remain in a reset state and the outputs will be a high impedance for the first three cycles of the CLK SYNC output. When the CLK SYNC signal has pulsed a minimum of four times, the M chip will respond to microinstructions on the Mm, and the high-impedance outputs will be enabled. Voltage (VBB)-ThiS input is used to supply the back-bias voltage to the module. PerfortnatK:e Monitor Enable Output (PME OUT)-This output has the same value as the PMEbit mthe Pl length register (PILR). Refer to the Register section for a description of the P1LR If the state of PME hit changes, the PME OUT signal will be valid during phase P4 of the following two cycles. If the PME bit does not change, the PME OUT signal will be stable for phase PI through P8. 1-236 Confidential and Proprietary TTL Clock Input (TTL eLK IN)-The TTL clock input is nominally 40 MHz and is used to generate aUdocksignaJs to the V-U chipset. The M chip provides a 20·MHz MOS level dock pulse to the·other¥l1chips by dividing the input. by two as the reference. UART Receive and transmit (UARTO R-UART3 Rand UARTO T-UART3 T)-These lines provide the serial line inputs from the fout UARTS and serial.line outputs to the four UAR'Th. Each input is asynchronous to the"reterence clock Voltage (VDD)-Power supply voltage 5 V (nominal) Ground (Vss)-Signal ground reference . • Functional Description The DO 29 contains the functions shown in Figure 1 and is d¢SCribedas follows. • Address translation logic • Backup translation buffer tags (BTB) • Cache tag array • Clock generator • Control logic • Priority interruptfhalt controller • RAM temporary regis~rs • Timer logic • FourUARTS Address 'lianslation Logic The address translation logic (ATL) calculates a page-table entry address when the page~tableelltry: necessary to translate a virtual address.is not in themini.Q~. b~p tl;aIilSlation buffet's. The' A'lL contains the following registers; ". . • PO base register (POBR) • PO length register (POLR) • Pl base register (PlBR) • Pl1ength register (P1LR) • SO base register (SOBR) .. SO length registet' (SOLR) • PTE translated address (PTE ADR) 1-237 ... Preliminary Backup Translation Buffer The backup translatitln buffer (BTB) is ad.irect mapped arraywith 128 entries,grouped into system and process spaces as determined by bit .31 of the virtual address. Each entry'containsa tag that corresponds to a group of four page-table entries (PTEs) and four valid bits, one for each PTE, The 512 PTEs are not included in the chip and are typically industry-standard RAMs. This array is used on MREQ or IB FILL operations when the MTB MISS signal is asserted and on the MREQ read PTE operations. It is also used in some MXPR instructions and contains the following registers. • Memory address register (MAR) • Missed virtual address register (MVA) • Invalidate address register (INVAR) • Refresh address register (REFR) • BTB tag, valid bits, and parity bits register (BTB ENTRY) • BTB invalidate register (lITB INV) • PTE array register (BTB PTE) • BTB status register (BTB STAT) • Error status register (ERR STAT) Cache Tag Array This section contains 128 direct mapped cache tags each of which is mapped to a 64-byte block of contiguous physical data. Each tag has four valid bits to indicate the validity of each octaword (16 bytes) in the allocated block. The registers in this section are • Cache tag, valid bits, and parity bits (CACHE ENTRY) • Cache status register (CACHE STAT) Control Logic The control logic is distributed throughout the chip. It receives the control inputs and generates the internal and external control and contains the following registers. • Indirect MXPR register (INDIR) • Indirect address value register (INDIR ADDR) • No-Op diagnostic register (NO DRIVE) Clock Generator The clock generator divides the 40-MHz TTL CLK IN input by two and generates the dock sources (CLK, eLK BAR, and CLK SYNC). It also receives the CLK, CLK BAR, and eLK SYNC inputs so that it can generate the M chip internal phases. 1·2.38 Confidential and Proprietary Pte.Iim· . mary Priority Interrupt ContmDer . . The ir).terruptsectiO,n.of. the .M chip receives the internal arld external interrUpt requests and reports an active interrupt if there is an interrupt whose priority is higher than that of. th~ processor's current priority. The software HALT request in the ISTATUS register is reported with the interrupt requests during the MIB status transaction. It also containsh~ware logic to support REI instruction. The registers contained in this section are .,. .' • Interrupt prioHtylevel (lPL) • Interrupt status register (ISTATUS) • Asynchronous system trap level (ASTLVL) • Processor status longword (PSL) • Processor statUs longword temporary register (PSI. TEMP) • Software interrupt status register (SISR) RAM1emporary Registers . ..' . The RAM temporary registers are MTi::MPO thn:>ijghMTeMPlti TnnerLogk The logic consists of the interval counter (IVC) and time-o~-<:!a~ ~s,t~('IOI)~).'l11~IVC:is used to provide a source of interrupts at a repeatable ratethatcari&p~edby ~f~8.rein i IlS steps. The mDR supplies the real-time clock £unction.te£1ecrlrigtheirel4~·timeJ~mitslllSt initialization. The TODR alsO is used to piov~~pCriOdiC~?f~.~ka:ble,i,q~Pts . ~ timer 1.28 seconds. This logic oontains thcdolloWing registers:' .' '. .. .,. , . . • Interval counter.control and status register (ICCS) • Interval counter·vaIue register (ICR) • Next interval counter value register (NICR) • Time-of-day register (TODR) • Time-of-day prescaler register (TODPRE) Universal Asynchronous Receivers and Transmitters Each of the four universal asynchronous receivers and transmitters (UARTO through DART3) contain a status register and a data registet. The mechanical, electrical, and environmental specifications for the DC329 are contained in the fonowing paragraphs. The test conditions for the parameters specifications, unless specified otherwise, are as follows: • Ambient temperature (T,J: O°C to 125°C • Supply voltage (VJlI): 5.0 V ± 5% (maximum ripple 200 mV peak-to-peak) • Back-bias voltage (VBB): -3.0 V ± 15% (maximum ripple 200 mV peak-to-peak) Confidential and.Proprie~ 1-239 DC329 Mechankal Configuration The mechanica1dimel1~oQs for moUnting the DC329 132-pin CERQUAD package are shown in AppendixE. . . . .. . . Absolute Maximum Ratings Stresses greater than the absolute maximum ratings may cause per~anentdamage to a gevic~. Exposure to the absolue maximum rating conditions for extended periods may adversely affect the reliability of the device. • Power supply voltage (Voo ): -0.5 V to 7.0 V • Back-bias voltage (Vau): -7 V to 0 V • All other pin voltages: -1.0 V to 10 V = O°C): 5.25 W Power dissipation (TA = 70°C): 3.5 W • Power dissipation (TA • • Ambient temperature operating range {TAl: oo~ to 70°C • Storage temperature range: -55°C to 125°C • Power supply voltage (Vcc):5,O V±5% • Arribient temperattlreoperating range (TA): O~C to 70°C 8C and de Eledl'kal Cbara~tics Refer to the DC329 M Chip F.unctional Specification for the dc input and output parameters and ac , . timing parameters. 1-240 Confidentiru ~nd PrOprietary . Features • Contains a fraction processor and exponent and sign processor • Accelerates a subset of the VAX instructions • Description The DC330 V-ll processor fIp~ting.pomt,accelerator, contaiped in a 132~pin grid array {PGA) package, receives opcodesahd normalizedfloating~pOint dperands from the lIE chip, and exeqJtes the instructions faSter than lfE chip'microCode. It is optimized to accelerate a subset ohre'VAX.' instruction set. Figure 1 is a block diagram of the DC330 floating-point accelerator. . ClK CLKBAR CL.KSYNC CLOCK lOGIC PH12 . 'ffliS'fA"i'E OCtO A < . , .~'. '-c, FRf'.CT!ON ... PROCESSOR DAt.; 31:00::- '" DAlBUSY DALSTALL ABORT FBOXN . II" OAL INTERFACE FBOXZ 110 ... <"" MTBMISS MIRTEST OPEltVALID OATAOUT <:= -- ~ ~ r- . NORM VALUE '" '" SIGN, ALIGf'lMENT "I" STATUS l- EXPONENT· 1'ROCESSOR'· r Ill" . I II 1 '. DECOOED'Qf1CODE .' j: Ir Itm;RNAL MIQ1QWQ1!o ., , I II DECODED EXTERNAL· MICfIOWOfID· " ... ' ., '. .i ... ... 10AL <:31:00 > .... MIRTEST<5:0> ) I: j .. CONTROL STORE .......... J I-- ' MIBSYNC 1 MI8<35-:15> .liB ... ,t'" INTERFACE ',' .. Figure .1, DCJ30FJoating-poim fJeceJerator Block Diagram 1-241 -_._.. _._--_._------------------ -, , D..-1:_:_A . _'. .1;" J."ftI,?UU~, DC33() • Pin and Signal Descriptions 'The input and output signals and power and ground connections of the DC330 are shown in Figure 2 and are summarized in Table 1. Refer to the paragraphs that follow for a more detailed description of the signal functions. Thble 1 • DC330 Pin and Signal Summary Pin Signal Input/output De~ptionfFunction DAL<31:00> input/output Data/address lines-Transfer data, status, and B3,A4,B6, B8,B9-Bll, address information to and from the F chip. C12,C4,C5, A6,A8,A3,A5, B7,C8-Cll, C13,B4,B5,A7, A9,All,A13, B13,C14 J2 DALBUSY input DAL busy-Indicates that the DAL<31:0> lines are controlled by the port controller. Dl DALSTALL input DAL stall-Indicates that the data source cannot respond to the data request in the same cycle. N5,P4,M5, MIB<38:15> input N4,M4,N3, M3,N2,K2, ]lJ3,Hl,L2, Microinstruction bus-Transfers microinstnictions, synchronization control, and opcodes. Ll,K3,Kl, G3 MTBMISS input Mini-TB miss-Indicates that the mini-TB in the IfE chip has missed. I/E chip is G2 lID input Input instruction-Indicates that the starting a new VAX instruction. Fl . ABORT input Abort-When asserted, the last instruction is ignored. El TRISTATE input Tristate-Disables all outputs of the F chip. Gl DeW input dc low...,...Asserted for 70 illS after the power supply voltage is within the specified value to initialize theF chip. F2 FBOXN output F box N code-Indicates a negative value or an exception to the I/E chip at the completion of a floating-point calculation. C3 FBOXZ output Fbox Zcode-Indicates a zero value to the lIE chip at the completion of a floating-point calculation. Confider)rial-.nd Proprietary - Ym Signal Input/output Description/Function M6 OPERVAUD input Operand valid-Indicates the successful assembly of the operand. P5 DATA OUT output Data out-Indicates that the F chip read result is pending. E14 PH 12 output Phase 12-Internal phase 12 output. H12,H13 CLK input Clock-The MOS clock signal from the lIE chip. G12,G13 CLKBAR input Clockbar-A complement MOS eLK signal from the I/E chip. J14 CLKSYNC input Clock synchroniza,tion--:-A synchronizing clock signal that indica~ T, of the 200 ms microcycle. K14,L13, L14,M13, L12,M12 MIR 9-4 outputs Microcodetest-Intet1lal test bits MIR 9 through MIR4. C6,D12,D13, VDn E2,E3,F12F14,GI4,M8, N8,P8 input Voltage-Power supply voltage. C7,D2,D3, Vss E12,E13,F3, H2,H3J12, J13,K12,K13, M9,N9,P9 input Ground-Co.!ll1DOD ground reference. Preliminary Confidential and Proprietary DCJ30 1·243 ... De3l0 14 13 12 11 10 .. 9 8 7 6 5 4 3 2 p 00000000000000 P N 00000000000000 N M 00000000000000 M l 0 0 0 000 l K 0 0 0 000 K J 0 0.0 000 J H 0 0 000 H 0 DC330 GOO 0 000 G F 0 0 0 000 F E 0 0 0 000 E D 0 0 0 000 D COO 0 000 C B 00000000000000 0 B A o A 000 14 13 12 11 0 0 0 0 000 0 0 0 0 0 0 0 0 o 10 9 8 7 6 5 4 3 2 0.... PACKAGE IDENTIFICATION TOP VIEW Figure 2· DC330 Pin Assignments Data/address Lines (DAL<31:00> )-These are bidirectional, three-state lines that are used for receiving operands, transmitting results, and for reading and writing the control/status register of the F chip. Addresses are received from the DAL lines for detecting unaligned memory references and to properly assemble the data. DAL Busy (DAL BUSY)-This synchronization signal is driven by the port controller to indicate that it is driving the DAL < 31:00 > lines. Any microcoded data that was transferred during the cycle is ignored and must be sent again. The DAL < 31:00 > lines are a high impedance when this signal is asserted. DAL Stall (';::n"'lA,L';"·-:;S.::;tr.l\";"L";"'L·)-This synchronization signal is driven by the V-ll chips to stall the microinstructions so that operations that require more than one cycle can be completed. It is used when the I/E chip reads a result of a calculation that is not completed. Abort (ABORT)-When asserted, it indicates that the microword received during the last T150T200 phase is not valid and should not be executed. de Low (DCW)-This signal is asserted for 70 ms after the 5-Vdc power is within the specified limits. It is used for initializing the control sequencers in the F chip. F Box Negative (F BOX N)-This condition is transferred to the liE chip to indicate a negative result upon completion of a floating-point calculation. It is also used to indicate exceptions. F Box Zero (F BOX Z)- This condition is transferred to the ljE chip to indicate a zero result upon completion of a floating-point calculation. 1-244 Confidential and Proprietary - Initial Instruction ~e (DD)-This input indicates that the I/E chip is .sqtttfug ~.~ ..~ instruction and that a newopcode may be transferred to the F chip. If a calculation was in progress, it must be aborted anet the'new instruction started. " ., . . ~str1,IWonBqs(MIB <)~MS > >-Theselint;$ C.9ntail1.~mi.:;roinstruction t1"Q.1ll·~.r150 to T200and provide $y~Qiz~ti0n ~oPtrol £ro~,. t~e·');'O ttittOO. , . Mini Translation Buffer Miss (MTB MISS)-This input is used for DAL line synchronization. I~ indicates that·theMini~TB in the'IfE'chip has missed data; and that· a Pageta91eentryis lJeing transferred from the BTB,OQ the DALlines. The .cut:tent miq:piAstru.ctiof1 ~h~Id;b¢ stall~. Operation Valid (OPER VALID):-This is an input sequencer. test signalthatin )"0'T4e~~~,~es~,!l~tput~c~~.the,.Y~~.~£;the inter~microinst;uction regisj;¢t )\M:!R<9;4?) .. ~, . lU"e. ~~req'(iillddri~n;by ~n~ devicesand~nal plillup.te$~tors of.lk. ~,t;equ~r; •. ~in~rn~~~ changes'ev~ 100 ns at PHIl apL1'flII5. CIock.(CLK)-Thissignalis,the·MqS'clocl<..input~.the,'M:';chip.andis.us~.JO.·gene;a~.the internaltitiUng.. The CLK inputbasa~of50 ,nsanti,is,highidttting odo..phases. Clock Bar(Cl.K IWI)":'"TIiis signal is theoofuplement '6£theMOS CLKsignill'£rOfn the M Chip arid is used·w generate the intefnilldming. Th¢CLl·.BAR.inputisthe.no~pping inverse of the CLK signal. Clock Syncltroruze(ctK SYN~)-1'hissigha.l ih'd1ctafuS time~T~o£tbc! 200fismicrocycle; Ittisesat time T175 and £allSafT25. . , i . Pb8se12(PHI2Y':;"This rstheintema1 PHI2 sigrial'tftitt'is inverted andbttfferedby an 6pen Source. An extemal1-k pulldownresiiltOi-'isrequired. . . 1Httate ('MIS'fAfE)..-.Causes the DAL<31:00 >. FBOX Ni FBOXZ; and DA'LST.fii:U.outputs to beeomea high itripedance. . . . .., ,\ \1Qlmse (Vnn ) -ThePc>weI ~upply yq!~<; t§the 11 pg~~' iOpu~ ~~.,' ,'<, " t -'"; :, ' ' ~,," -' , , :,,:"" .','," )'_".', ","'., ",~ ,J;~,' (." , f . " ~ (VsJ-The powe!;. supply~turn and signal»t'und tO~ ~3, ifQuJild input pil:l!1r ~tina·PQint Jn~Set . ' . ,'. ....•.. . . . ." TheFchip isoptiml.zedto.ac~.~ f~~ ~~Iil~oftw..VA¥ .il:l!1t!'Uttion~t.Jie£erto,the VAX· $Ylltem Re£~rert,ce Manuai.(s"lU4) ·foll··a. Clilmp~4escript;ionq£ thf.! o~tions. It.does not execute the PDP-ll compatibility mode instruction set. ADDF2.AODP2"ADD(12, APDF3, ADQDJ, APDG},~\.lBFZiSt1l}P~t,S:PBG?,StJ:SFl, S\.lBDJ, SUBGJ, MULF2>~Um2, ~ULG2;,MT;1.LF3, ~f!JLP~i;¥UI.G3,,?lNF~~,.QIVD2jD:rvv2, PI~3, DIVD3; DIVG3,PQLYF.J;'0IXl),PO:rXQ,C¥Pl1,. CMJm,CMPO, CVTLF, OJTLD,CVTLG, MULI2, MULL3, DIVL2,DIVLJ, EMVL,an,d EDIV' Itexetures ina nonoptimizedmannerthe folldwing$ubset ofrthe VAX instuction set. ADDF, .AnnD,·ADDG, SUB'F,SUBD,'SUBG,'MULF,MULD, MUtG, DIVF, DIVO,DIVGPOLYF, POlYD, POLYG, CMPF, CMPD, CMPG, CVTIF, CVTLD, CVTLG, EDIV' and EMUL. . . .liD Preliminary • Functitmal Operation The F chip operates in the 200-ns cycle of the synchronous V-ll processOr system. It receives microinstl1lctions from the V-ll cont~l store that can initiate sequences in the F chip controlled by . the internal control store. The illternal opeJ.'ations of the F chip cycle are performed at 100 ns. Figure 1 shows the main logic elements described in the following paragraphs and includes the following: • A·DAL and MIB interface • A control store memory • Afraction processor • An exponent and sign processor • Clock logic DALInterface--The DAL interface conneCts the F chip to the DAL < 31:00> lines. Together with theMIB interface, its conttollogic deterfuines when data on the DAL is valid. It provides the interfaces between the external DAL lines and the internal data paths, and it formats the data internally in a standard floating-point form. It also detects unaligned data and latches and rotates the data to the proper format. It detects short literals and unpacks them into the standard floatingpoint formats. The DAL Interface also contains the Fchipcontrol and status register (CSR) that is used by the I/E chip microcode to determine the exceptional conditions that may occur. MIB Interface-This interface connects the F chip conttollogic to the microinstl1lction bus (MIB) and contains the currently executing external microinstruction, the current opcode and some of the DAL line synchronization bits. h contains logic that decodes the current external microinstruction and opcode, sending control information to the DAL interface and control store. Control Store-The control store is a 160-word by 36-bit ROM that provides the internal microinstruction for the F chip. It also contains the simple microsequencer. Fraction Processor-The fraction procesSQr contains the 67-bit. data path and control logic. It accelerates the execution of the VAX floating-point ADD, SUB, MUL, DIV, and POLY instructions on the Float, Double, and grand data types.!t also accelerates the MULL and DIVLinstructions. The fraction data path contains a registerfile of two temporary and eight constant registers, a 67bit arithmetic logic unit (ALU), a 67-bit shifter, registers for storing the ALU information; shifter data and Q data, and a shift register able to shift up to 3 bits at a time. The operands are assembled in the I/O register that forms the interface between the fraction data path and the DAL interface. The fraction control logic receives encoded control signals· .from the control store (internal microinstruction) and MIB Interface (external microinstruction}. It decodes these signals and drives the data-path control lines. Exponent and Sign P:rocessot-The exponent processor is a 13-bit data path with control logic. It allows calculations tobe performed on exponents and signs of operands in parallel with operations in the fraction processor. The data path consists of a four location dual-ported RAM with zero detection on each output, an ALD, and latches for holding ALU data. A PLA is included to detect certain cases ·of exponent differences and a path for normalization data to get from the. fraction data path to the exponent ALU. Literals can be transferred .to the exponent data path from a dedicated' ROM. .. 1-246 Confidential and Proprietary - DC330 Clock Logic-The clock logic receives the V-ll high-level, 50 ns cycle time dock signals and the TTL-compatible 200 ns cycle time phase signal. It generates clocks that allow the DAL and MIB interfaces to synchronize to the 200 ns data transfers, and the internal data paths and control machines to cycle at 100 ns . • Specifications The mechanical, electrical, and environmental specifications for the DC330 are contained in the DC330 F Chip Hardware Specification. The test conditions for the parameters in these specifications, unless specified otherwise, are as follows: • Supply voltage (VDD): 5.0 V ±5% (maximum ripple 200 mV peak-ta-peak) • Back-bias voltage (VBB): -3.0 V ± 15% (maximum ripple 200 mV peak-to-peak) • Ground (Vss): 0 V Mechanical Configuration The mechanical dimensions for mounting the DC330 132-pinPGApackageareshowninAppendixE. Absolute Maxinuun Ratings Stresses greater than the absolute maximum ratings may cause permanent damage to a device. Exposure to the absolute maximum rating conditions for extended periods may adversely affect the reliability of the device. • Power supply voltage (VDD): -5.0 V to 7.0 V • Power supply voltage (Vss): -3.0 V to -6.0 V • Pin voltages: -1.0 V to 10 V • Power dissipation (TA = lOO°C) 3.5 W • Power dissipation (TA =O°C) 5.25 W • Storage temperature range: -55°C to U5°C Recommended Operating Conditions • Supply voltage ~t/o\itpUtl . Data/address lines-Time-multiplexed data and ~$S.b1,lS. 43-44., 47,60 17-18 BS < 1:0> output! Blink'select-These time-multiplexed signals define theitypeo£ physical address on the data/address bus, and il;l~~~~te ifeithera each!! memory~~s or a force miss occurs. j " -.'.' .,' • - .- '-, - ~. - , - -' 19 MAP output' Map-This time-mulitiplexed signal indicates if the , I/O ~pis~nabled (}r ifa DMAgtant ocC\lrs. 2-5 AIO<3:0> output' Ap~sinput/output-1'hese signals indicate the type of· transac~ion . currently being executed" , i.e;; read, '·'write/or'fACK. " " 40 ALE outputl Address Ultchenable-Lat-ches addresses, AIOcodes, L·., .". _, '. i mape:tlll~l~~ignals~and d.1~BS C()ntro1si~nals. Bliffet 'ci:mtrol- InQicates, i:h~~cti¢n \6£ data on .the . OAL bus. The line is active (low) when the DC} 111s not driVi~gwi:he DAL bus. 41 BUFCTt outpufl 38 SCTL output' 39 STRB o';ttPUt' 29 PRDC outputl Predecode strobe-Indicates when the prefetchbu,tfer is being decoded as the next macroinstructi<>o,. 20 ABORT input/outpue Abort-Indicates that an abort condition exists, i.e., a memory management or address error, bus timeout, nonexistent memory, or parity error. 28 MISS input' Miss-RepOrts the hit or miss status of the current cache memory entry lookup. 42 DV input' Data valid-Set to latch data into the DC}11. 32 CONT inpue Continue-Used to terminate all extended cycles. 27 DMR input' Direct memory access request-Used to force a current cycle to be extended. 10-13 IRQ<3:0> input' Interrupt Request < 3:0> -Four maskable interrupt request lines. 9 HALf inpue Halt-A low-priority nonmaskable interrupt that forces the system into console mode. 8 EVENT input' Event-A maskable interrupt that forces a trap through vector location 100. ."' ~ Stretc;~c;?ntrol~Ideritin~s 'the extended,pOriiori of stretCheclcycles. The edges can be used. to strobe data. $~r?~""":General purpOse Strobe signal. , . ConfidentiallUlcU\!Oprietary ·"PreJiminary Pin Signal 6 input' :Powerf!ill2A high~prioritynonmaskable interrupt that forces a trap throughvectodocation24:- 7 input' Floating·point enable-Reserved for a future FPA coprocessor implementation. A high-priority notlmaskable interupt that. forces a trap through . vector location 244. Used 'to report parity errors. 14 PARITY input' 35 CLK output2 . Clock-An output for intra-hybrid and diagnostic use only. 34 CLK2 output1 Clock 2-An output with identical frequency as eLK. Can be used as system dock. . 33 INIT input' Initialize-:Initializes or resets the system by forcing it through the powerup procedure. 36 XTALI input Crystal input-External crystal input 37 XTALO output Crystal output':"'-External crystal output input Voltage..,.....Power supply voltage I"~ 16,46 . Vee ~-------------------- 15,45 GND input Ground~Ground reference. 1 TESTP input Disables all outputs. 31 TEST22 input Disables the dock outputs .. Permits external logic to drive the DC] 11 clock circuitry through CLK output. 'TTLlevds 'MOS levels , 1.2;2 Confidential and Proprietary - . 'Nlinsinary Figure 3sbows the input and output signals grouped according to signal fuhcti.oo.: DCJ11 ........_ IRaQ - - - - I .'- , IRQ,~; ........_ _l.r . INTERRUPTS ..... DAL :...}1~~"""nAL t--.............··OAL < 16> 'PWRF ................--I FPE 1 - - - - OAL EVENT--'" HALT ........~........ · • DATNAOORESS <: 21 > t----~IOO 1----A.I03 DATA CONTR9L'J 1 1~ADDRESS 110 t - - - - 8S0 t---- SSt BANK SELECT t---- BOf'CT[ t----·AtE BUS ERROR DMACONTROL CACHE CONTROL t - - -.., 'STIrs 1---- ,SCll INIT1AL~E t----M5C CLOCK INPUT [ .. 1 - - - - MAP XTALI XTALO·--....... . ~,'~.;;;........:~ t - - -.... ClK2 t----ClK TEST'2 -......,....,..... ,figu,re ;- QC]~lSignal F,u1{f!fpns , ,~_ - ",,, --: "y, ,r ' - -' ',', ,>",C, ~ '-~:'_"~ -, Data and Address Bus Data Bct'~'tms(l)AL;;';'!he'dm and addi\::ss "bUS consists'of 22 time;'Multiplexed datii'mdaddresslirie~.TIiebasit-buSdjmist!sofDAL 'and', is "'used ''for odtP\i£s!'oniy.; Dt:lririg thefiJist halfof.iea& transaction, the DCJll provides either a physical address, the acknowledged in~ level Or a general purpose code. The physical address can use all 22 bits of the bus. The acknowledged interrupt level uses DAL< 03:00:> and the general purpose code uses DAL < 07:00 > . Durine the second half of the transaction, the DCJll, transmits, or receives data, ori;·the6asicbtis (DAL< 15:00> );The extended bmllirl~ (DAl~'21t!6»\tIe' driveri' witb~t mtoHn~tioil when the BtffiCTL"Sigmll,is' assertea. 1'he'databeblg'ttafuimittedor ~ivedd~ on the type of bus tranS{tctioq being pet£o~ md is 'd~ibed:under bUs opeHitiorlS. . , ," , 1-2j3 - A ddless Input/OutputLinell Address input/output (AIO < 3:0 > )-The address input/output signals are latched at the start of any bus transaction and are coded to indicate the type of transaction being performed. Table 2 lists the bus transactions selected by the AIO lines. 1able 2 • DCJIIBus 1iansaction SeleCtion AIOLine Transaction l 3 2 1 0 1 1 1 1 Non-I/O operation (NOP)2 1 1 1 0 General purpose read 1 1 0 1 Interrupt acknowledge (read vector) 1 1 0 0 Instruction stream request read 1 0 1 1 Read-m9(lliy-write,no bus lock 1 0 1 0 Read-modify-write,: ous lock 1 0 0 i Data stream read 1 0 0 0 Instruction stream demand read 0 1 1 X Reserved 0 1 0 X General purpose word write 0 0 1 X Bus byte write 0 0 0 X Bus word write lX=logic lorO A NOP transaction is an internal operation that does not require a bus transfer. 2 A bus transaction uses the DAL bus to access memory, 1/0 devi~s, or addressableregi.,sters. A gerwral purpose transaction is used to access interface devices th~t are not directly addressable by the DAL bus. Int¢rrupt acknowledge (lACK) transactions are in response to the DCJll granting an interrupt request, B..bk Select Lines <: Bank ~~t(BS 1:0> )-The bank select signals (BS 1 and.BSQ) are time7multiplexed. During the first half ofa bustra~action, they are used toqefine the type of acldress that is .present on the DAL < 21:00 > bus. During the second halfaf the ,read and write transa~tions, the~e lines define the cache memory status. A cache memory bypass condition exists if the Bsf signal is asserted high, and a force cache miss exists if the BSO signal is asserted high. Table 3 lists the address space selected by the bank select signals. Confidential andProprietaty - DQU Table 3 • DCJll Bank Select Line Assignments BS~ 1 0 0 0 0 1 1 0 External jJO 1 1 Internal register Memory Table 4 lists the addresses assigned to the system registers and intert:talreg,isters of the DCJl1 microprocessor. Physical addres$~sIessthan 17760000 are inem,()ryaddresses:AddreSsesin the I/O ' page (17760000-17771777) that ~o not. ac~saDCJl1 rewsmr,are external I/O addresses. Addresses in the I/O page that access intenlal registers; 'exCePt for'CCR, 'lire internal register addresses. Addresses in the range of 177 77740 to 17777150areclassi£.ied as system registers, RqJister Address Register Classification 17777 776 17 777 772 17 777 766 17777 752 17 777 740-17 777 750 Processodtattis woiu(PSW) Programintettupt'request (PIRQ)'" . CPU error System register space Internal' Internal Internal lnterool. System 17 777 746 17777707-17 777 700 17 777 676-17 777 660 17 777 656-17 777 640 17777636-17777620 Cache control CPU general registers User data PARl Reg.O~ 7 UsednstntctionPAR, Reg.C-7 User dataPDR, Reg. 0: 7 System lriternal Internal InterriaI Internal 17 777 616-17 777 600 17777 576 17777 574 17 777572 17 777516 UserinstI'll~tionPDR,Reg., 0- ~ MM Status Register 2 (W4R2) MM StatusRe~i~ter 1(M~R1) MMStattls Register 0 (MMRO) MM Status Register 3 (MMR3)' ' .. Int!!rnal Internal Internal .Internal Internal 17 772 376--;-17 772 360 17772 356-17 772 340 17 772 336-17 772 320 17772316-17 772300 17772276-17772260 Kernel data PAR, Reg. 0-7 Kernel instruction PAR,Reg. 0-7 Kernel data PDR, Reg. 0- 7 Kernelinstruction PDR,Reg. 0-7 Supervisor data.PAR,,. Reg. 0-7 Internal Internal Internal Internal Internal 17772256-17 772 240 17 772236-17772220 Supervisor instrticiion PAR, Rei 0-7 Supervisor instruction PDR, Reg. 0-7 Internal Internal Hit/Miss register " ' , "-"'," \-,;' All other addresses in I/O Page 17760000-17777777 0-,17 757 777 physical memory space memory Confi~t;i.al and Proprietary External I/O 1-255 ·tX:Jll· Data Control Lines Buffer control (""'B:;";U""FC""'TL"""'"')- The BUFCTL lirieis asserted when J;he DAL < 15:00), bus is not being driven by the DCJll when receiving data during read transactions and during the stretched portion of any nonwrite transaction. The BUFCTL signal is negated when the DCJll is writing an address ordatatotheDAL<15:00> bus. Address latch enable (ALE)-The ALE line is asserted anhestart ofa transaction and is used to latch the address, I/O bank, I/O map and AIO code irifonnation. During the second half of the transaction, the signal is negated and can be used to latch the cache memory data. Strobe (STRB)-The STRB is negated at the end of every tfarisaction and asserted by the end of the second dock period of the next transaction. The STRB signal identifies the end of a transaction and can be used for external bus control. Stretch c:ontrol(SCTL)- Th~ SCTLline is asserted for the stret~hed portiQn of a bus transaction. During ~rite transactions, the leading or trailing edges of theSCTL signal may be used to latch data. During read transactions, the trailing edge of SCTL max be used to latch bus. The DMR line status is sampled bythe DCJllat the rising edge of TO andthe request is acknowledged by the DCJll by asserting the MAi3·1ines. The.I5MR signal is not acknowledged during write transactions. AssertingDMR ensures that the next transaction will be stretched. All write transactions are stretched. . 1-256 Confidential and Proprktary Cache miss (MISS)-The MISS input is received from the system interface to indicate the status of the current dai:!flememory lookup entry. The DCJll samples the status of the ~ISS line at the rising edge of T3 during a read transaction. If the MISS signal is asserted to ihdicate the entry was not located in cache memory, the current read transaction will be stretched. Initialize (INIT)-The INIT input is driven by the system interface to initialize the DC] 11 by forcing it to go through a powerup routine. Interrupt Lines ..... . Interrupt request (IRQ < 3:0> )-IRQ < 3:0> are fouttnaskable in~rrupt request lines that allow the system interface to interrupt DCJll operations. ~ four j;tputs represent four interrupt levels and are synchronized and latched by theDCJli:' ' . The interrupt is acknowledged only if the current PSW bits 07 :05 are set to a lower level than requested by the system intetface.Th,ble ; lists theintet'l'Uptlevel a~ents. InPut LeVel PSWbits 01 06 IRQ 3 7 1 1 IRQ 2 6 1 1 IRQ. 1 5 1 IRQ 0 .4 1 0" 1 0 Powerfail (PWRF)-The i.5WRF input is a nonmaskable interrupt from the system interface. The DC]l1 traps to vector address 24 for the powerfail routine. F1oa~"}P9int~on(FfE)-The FPE.input is a nontl\lll$kable: interrupt from. thesyste!tn interfa,ce that cl;luses the DC] 11 to .trapj;() ~ectot:address 244Jor the servi6e rQutin~. . Bus even~ (£VENl~The. EVENT itlput. is ,8. hl.l!> fl1terrupt· ft:Om the system in,terfaeea,nd. the DC]ll traps to vector address 100 for the ~ervit:e 1'9utine. Halt (HALT)-The HALT input is the lowest nonmaskable interrupt from the system interface and it fo(ces the DCJll into the console mode. ,'''..' - - , .' ',< '-, ..-',;'.,' ,.'; I ' .', " ," Confidential and Proprletary , L' ," '.'.' 1-257 DCJU Clock Lines . .. Crystal input (XTALl and XTALO)-TheXTALl anq XTALO inputs provide connections for an external crystal as shownil'l Figure 4. . 68pF r--....---,.--- XTALI CRYSTAL c::::J 1M 1-_-'-_ _""--"'--_ XTALO 68pF Figure 4 • DC]l1 Typical Crystal Connections Clock (CLK)-The CLK signal is used for testing purposes and should not be used. Clock 2 (CLK2)-The CLK2 signal is the same as the CLK and can be used by the system interface as the system dock. The frequency of this signal is the same as the crystal frequency. Misc::eIlaneous Lines Test 1 (TESTl)-The TESTl input is asserted by the system interface and disables all the DCJ11 output signals. The input is pulled up internally. Test 2 (TEST2)-The TEST2 input is asserted by the system interface to disable the CLK and CLK2 outputs and to allow an external dock to drive the DC] 11. The input is pulled up internally. Power Supply 11 0 0 10 09 I I I 0 0 os 07 0 0 06 05 I I 0 00 • fLOW Figurel0' D(.:Jll Hit/Miss RegiSter Format • Floating-point Register Set The floating-point registers are used to store floating-point data and to control and report floatingpoint information. ' Floating-point Accumulator Six 64-bit accumulators (ACO through AC5) are used to store and manipulate 32-bit and 64-bit floating. point data types. Confidential and Proprietary - Floating-point Status Register The floating-point status (FPS) register provides mode and interrupt control for the floating"point unit andconditions,resulting from the execution of the previous instrucuon.'t'he FPS register contains an, error flag and' ~our ,conditioncooes-'-+Cal"ty, I,overflow, zero, and nt!@ative,-that are equivaientto the CPU condition codes. Thefloating..poi~tprooes50r(FPP) recognizesthe following Hoating:-point exceptions. • Detectibnoftheptesence of the undefinedvrffiilib1e intne~rY • Floating overflow o FlOating underflow o Failure of floating to integer conversion • Attempt topivJde py~rp • Illegal floating opeode the For the first four, exceptions, ,the bits in, FPSfegist~are available tp enable or disable interrupts.An interrupt caused bjr the la~t tW6 exceptloPs,canlje dis~l),led,onlybysetting a bit that disables ,the intenilpts of all, seven of the exrep~ons. tbe:er1'C!r'f1ag ahd~onditioilcodes are set by the FPP as Pllft of t~e output oia. flw~ting"poi~~' instructiol1. The piode and interru~tcontrol bits may be set byusUlg the LDFS ~tructiQh. ~i~ 11 showstlle format o£ the FPSregister, and the functions of the registerbits are described in Table 10. ", ' RESERVED RESERVED Figure 11 • Delli FlOiJfi1rg-point SfatUsRegister Format Bit DescriPtiotl 15 FER' (Floating error)-This bit is set during afioaiing-p<,intinttroction when a division by zero occurs, an illegal opcode1sspecifi~;or l'lnyoHheremainin.g errors are detected when the corresponding error interrupt is enabled. hitis,set,l)y the Fl9ating-point Processor (FPP) and deared(.mly anLDFPS instructiJ?n. Th~ bit" status is valid only if the most'recent floating-point instruction produced a floating-point exception. This action is independent of the FID bit status. This 14 FID (Floating interrupt disable)-Whenset,al!flollting-point illterrupts ate disabled: TheFID bit i~ primarily a maintenance feattl1'e andshooldnormally be clear to assure that the storage of -Oby an FPP is always accompanied by an interrupt. This bit is assumed to dearIor all desct1ptionsthat follow that involyingoverflow, underflow, and OCC1lrtence of -0, and "<,' iniegerconversi()n errors. :;i'i" , _ f ' ~,' Confidential and 'Proprietary Bit Desc:tiption 13:12 Not used-Reserved. 11 Preliminary FIUV (Floating interrupt on undefined variahle)-An interrupt occurs when this bit is set and a -Ois obtained from memory as an operand of an ADD, SUB, MUL, DIV, CMF, MOD, NEG, ABS, TST, or any WAD instruction. The interrupt occurs before execution except for a NEG, ABS, and TST instructions whenit occurs after execution. When FIUV is reset, -0 can be loaded and used in any FPP operation. The interrupt is not activated by the presence of -0 in any BC operand of an arithmetic instruction and trap on -0 does not occur in mode O. The FPP will not store a result of -0 without a simultaneous interrupt. 10 FlU (Floating interrupt on underflow)-When set, a floating underflow will cause an interrupt. The fractional part of the result of the operation causing the interrupt will be correct. The biased exponent will be too large by 400 (octal) except for the special case of 0, which is correct. If the FTIJ bit is reset and if underflow occurs, no interrupt occurs arid the result is set to exact O. 09 FIV (Floating interrupt on overflow)-When set, a floating overflow will cause an interrupt; The fractional part of the result of the operation causing the overflow will be correct. The biased exponent will be smaller by a value of 400 (octal). No interrupt will occur if the FlV is reset and overflow occurs. The FPP returns to exact O. Special cases of an overfloW condition are defined in the detailed descriptions of the MOD and LDEXP instructions. 08 FIC (Floating interrupt on integer conversion)-When set and the conversion to an integer instruction fails, an interrupt will occur. The destination is set to 0, and all other registers are not affected. If this bit is reset, the result of the operation will be the same as previously described but an interrupt will not occur. The conversion instruction fails if it generates an integer that is longer than the short or long integer word specified by the FL bit. 07 FD (Floating double precision mode)-This bit determines the precision that is used for floating-point calculations. When set, double-precision is assumed; when reset, singleprecision is used. 06 FL (Floating long integer mode)-This bit is used in the conversion between integer and floating-point format. When set, the integer format assumed is double-precision two's complement (i:e., 32 bits). When reset, the integer format is assumed to be singleprecision two's complement (i.e., 16 bits). 0.5 FT (Floating chop mode)-When set, the result of any arithmetic operation is chopped (or truncated). When cleared, the result is rounded. 04 Not used-reserved. 03 FN (Floating negative)-This bit set when the result of the last floating-point operation wasO. . 02 FZ (Floating zero)-This pit is set if the result of the last floating-point operation was O. 01 FZ (Floating overflow)-This bitisset if the last floating-pointing operation resulted in an exponent. 00 FC (Floating ·carry)-This bit is set 1f the last operation resulted ih a carry of the most significant bit. This can occur only in a floating ordouble-to-integer conversion. 1-266 Confidential and Proprietary Floating-point EEeption Register . .'. ..... . . . '.. .' . One int~ptvec;tod~ ~sigQedto all floating-point ~ePti6n:s. The six ~ssible e11'Ors ~ coded in the 4-bithting eXceptiofH!ode (FEe) register asf0llOws~ • 2 Floating-opcodeerror • 4 Floating-divide by ·zero • 6 Floating~ or doubJe..to-integer conversion error • 8 Floating-overflow • 10 Floating~UndeHlow • 12 Floating-undefined variable The address of the instruction producing the ~eption is stored in the Floating Exception Address (FEA) register. The FEe and FEA registers ~ updated when one of the following occurs: • Divide by zero • megal opcode If one of the five exceptions.~s with. the~r~nding ,interrupt :disabled, the FEe and FEA are not updated. Inhibition of .it)terruPtll"by~he,F.JQatihg tnter1JlP(DisableJFID) bit does not inhibit updating of the FEe and FEAif an ,~on()cC\lrs.Th~F}~:<:;~n4 FI!:t\ are not updated if no exception occurs. Therefore, the storestatu!i (S':['ST)it)str~ction wi1:retur0cl.lrrent information only if the most recent floating-point instruetiori'pr04uc~ an exception. 'No instructions are provided for storage into the FEe and F£Aieg!Siers. I . Memory Management The DCJll· implements the complete PDP-ll memory management and protection architecture with its extensions for extended direct addressing. This architecture provides a fully supported protection model for the design of, reliable mu!tiuser ()r multitasking systems. Address relocation and protection logic is'm~l;ed~~the,Pi~~~e~~;so~t]J&(ormance penalty is not incurred by using the memory management urrlt'(MMU). The MMU provides.three sepiU11te, addressfPaces---kern.el,s~pel'Visor, a~~~imodes_with differentprivilegesandindependenisets6f16.hitmappi~gamt'p~lHegiSter$;This structure protectstheoperatingS)i'sten'i frortl'lesspriViiegeiJ progritrtl$anlitni~zes s;tSteInuveri1ead from switching. The executiono£ some of the instructions is--diffe¥erit~ndibg on the cUttent program mode. ."--.. - .... . .. 1-267 . Supervisor/UserMcxle' Instruction Kernel Mode HALT Executes as specified Traps through 4 WAIT, RESET, SPL Executes as specified Execute as a NOP instruction RI'I. RTT, MPTS Alter PSR priority level bits 07:05 freely Cannot alter PSR priority leVel bits 07:05 Stack references Checked for overflow Not chec1wd f()roVerfl~ INSTRUCTION SPACE PDR DATASPAd PDR PAR PAR .. .' "'. .... :i • , . I I I I MMRO MMR2 MMR3 . 'MMRI T INDEPENDENT SET FOR EACH MODE: KERNEL SUPERVISOR. USER Figure 12 • DC] 11 Memory Management Registers Table 12 .. OCJl1Page Descriptor Register DeScriptions Bits* Description 15 Bypass c~che,..... This bit implements a conditional cache 'bypass mechanism. If the 1'DR .accessed during a .reloc4l,tion operation has this bit set, the time-multiplexed signalBS 1 is asserted during the subsequent I/O cycle. . . 14:08 PLF (Page length field)-This field specifies the block number that defines the page boundary. The block number of the virtual address is compared against the page length field to detect length errors. An error occurs when expanding upward if the block number is greater than the page length field, and when expanding downward if the block number is less than the page length field. 07 Not used. 06 W (Page written)-This bit indicates whether the page has been written into since it was loaded in memory. When this bit is set, it indicates a modified page. This bit is automatically cleared when the PAR or PDR of that page is written into. 1-268 Confidential and Proprletary - .DeJl! ED (Expansion.clirection)-/fhisbit speci£iesdnwhicltdirection the page ~. If 03 :S:D'*(),tht'lpage expmds.upwll1'd &omhh:k number () to in~ bbclcs.:with .higher. addresses;. IfED.l,thepage'ekpahds:~fJl)mblooknumbert27 blocks with lowerac:ldnesses. 02:01 w'iticlUd~ .ACF(ACc~sCo~trol·lieldb'irus·t~aconiamsthe.j&essCode£~r'thispmicib.ar.page. The access code specifies the manner in which a page may be accessed and whether Q' given' access should result in an arortof thecUirerit OPefation .. The ~~ ~ .' ,: :>," " '1'. '_','" .,1 Access'Code Pase'Atcess Bit02 BaOl o 0 Nonresident-aoort all accesses o 1 REAd only--abOrt ~n ~tes 1 0 Notused;;';':"lIbortrulllCCesses . 1 1 Read/wrlte' acceSs. J, ()() Not used. *All bits can be read or written except as indicated. TheMMU conta.iDsfour memorymanag~t~~J'~t~tate~ to C()ntrolar,tdl-~corctthe status of the memory m~asement functions. '!lteregisters and a4dress ~~t:s'.!~:asf6lt~: • Memory man~ementregister 0 (addre~ 17 777 572) , • Memory management register 1 (address 17777574) • Memory management register 2 ~ad~s 17777576) • MemoryllllUlagement register 3 (address 17777 516) Page Address and Page Deserlptor Registers Each operating'mode is aSsigned 16 page-address registers(PAR)~J6 p~escriptor registers (PDR) to control the instruction and data space.. These 96registe.t:s ate addresSable to the external DAL bus. A PAR contains a 16-bit displacement that is added to bits 12:06 df the virtual PC or to the address received £rom the execution section tClcreate pariofthe:~Io~~,,~hysicat address. A PDR contains information relative to page datuuch as expansion, length,andaecess controtThe format of the information in the PDR is shown in Figure 13 and the function of the register bits is described in Table 12. 15 I I 08 14 f ''--------v-f-----' BYPASS CACHE PAGE LENGTH FIELD PAl WRITTEN EXPAL~ OIRECTld~ I ACCESS CONTROL FIELD Figure 13 • DCJll Page Descriptor Register Format Confidential and .Proprietary ... OC}u ThebCJI1 can optionally implement instruction and data space (lID Space) nllqcatipn to expand the direct addressingrangeofa DC]l1 programor to facilitate efficient code sharing ina ~ultiuser environment. lID space relocation can be separately enabled for each of theprclcessor modes. When l/Dspace, relpcationis.enabled, the DC] 11 Classifies memory references as instruction stream or data stream'referel1ces and independendyrelocates them.through the corresponding PAR and PDR. The me~ory refereD(;e~aredassifiedbyt:he DC] 11 as I space references. All other references are classified as D space references. If the I/D space relocation is disabled, ,all memory references are relocated via the instruction space for that mode that includes the following information: ~, Instf\lction fetches • Immediate operands (mode 27) • Absolute addresses (mode 37) • Index words • First references in modes 17,47, and 57 The classifications of memory references by addressing ~ocles for the first, second, and third memory reference are listed in Table 13. Table 13 • DCJll ID Space Relocation Address MQde ~ster 0-6 7 o 1 D 2 D 3 DID lID 4 D I 5 DID lID 6 lID lID 7 '1/D/D I/DID 1-270 I Confidential and Proprietary ····DCJ·:n Memory Management Register 0 The memorY management register 0 (MMRO) provides memory management register control and' recotdsstatus. The format of the information in the MMRO is shown in Figure 14 and the function of the i!lformation is described in Table ·14. .... 1.", - ABORT PAGE ' - - - - LENGTH ERROR . ABORT '-----.,-. NOIt-REI~IOENT PAGE ADPRESS SPAcellt)" ENABLE RELOCATION Figure 14 • DCJll Memory ManagemeniRegister 0 Format Table 14· DCJll Memory Management Reamer 0 Description Bits* Description 15 Abort nonresident-Set by attempting toaccesu p~withan access control-field key equal to 0 or 2. It is.also set by attempting to use1lletOOry relocation Wifh':an mt:g~ processPr.1llQde· (PSR 15:14"l'~), 14 Abort page length;error-$etby~tteirtpfitlg tOac'<:essa'locationina~ witha block nwnber(~ ~s:bits12,:O(l)tha~is outsideth:~ @t.llQ~l>y~J.ge lqth field of the pagedesaipto~ registet!~r~lltpage: .. 13 Abort read-onlyac{;essviolatiM--,Setby.l1ttemptitlg~·Write iQ..l1~d-onlypage. Readonly pages ~access key-sof 1. .' 12: 7 Not used. 06:05 Processor mooe-A read-only bit that indicates the processor mode kernel/supervisor/ user/illegal associated with the page causing the abort (kernel =00, supervisor =01, user = 11, illegal = 10). If the illegal mode is specified, an.abort.i~generat~,~ bi,t;t,?is set .. 04 Page spac~A read"onlybit trult indicates thead ) are latched at the DCJlloutputat the beginning of a transaction and indicate the type of transaction being performed. The Ala < 3:0 > codes for the type of transaction are identified in Table 2. The bank select (BSI and BSO) signals are used with bus and general purpose, read or write transactions. The~e signals provide .coded information to define the type of physical address that is on the DAL < 21:00> lines. Thebimk select transactions are listed in Table 3. Physical addresses that are less than 177 60000 (octal) are memory references. Addresses in the I/O p8.ge (17769000-17777777) that do not access a DCJll register are external 1/0 references. Ac!.d.ressesinthe I/Opage access internal registers, except for CCR, are internal register references. System register references are addresses 17777740 through 17777750. No Operation Transaction During a no operation (NOP) transaction, the DCJll performs an internal operation and the bus is used for external data as shown in, F~gure ,17. The assertion of ALE latches the Ala code that identifies the transaction as non-1/0. The ttansiictionrequires four periods to complete provided no DMA requests occur. If DMR is asserted at the start of the cycle, the Nap transaction is stretched. A stretched transaction is shown in Figure 18. The DMA request stretches the transaction to a minimum of eight periods. The DMA request is received 011 DMR and is granted by MAP line. The BUFCTL an'd scn signals are asserted during the stretched portion.' the transaction continues to stretch in twoperiod increments until the DCJl1 receives the CONT signal to end the transaction. TO T1 T2 T3 elK Si'iiii AIO - t - - - I - - - - t '.... -t----f"'''"'''- Figure 17· DC]l1 Nonstretched Non-I/O Cycle Timing Sequence 1-276 Confidential and Proprietary Bus Read Transaction A bus read transacti~ns~pwflirt,Ft-gure 19~~,e~ ~h~.J?#~lJs !Sl.~aW~orwatio.nITom memory, I/O, and other addressable rl!gisiers. These transactiOns may be instruction read, data stream read, or the read portions of read-modify-write. The type of read tnmsaction being Performed is identifie4 by theAlqcode .. The DCJll reads wprds a~dif a l:>yte iu;~quir¢, the complete word is tead .!lIla the eXce~sbytt: i§ignor¢1.·'\ .' '.. . stl-eam T~ DCJl1f ,alldMAp lilies sn6ti1abeigllored angTh~lius transactiol1;~oo1dnofbestarted. ~. read transaction ~jnitiated .bythe assertion of m.TIussigtl,lll.,,4t.' 'ilncode, the pliysicaladdress on"l.)}\Lbus,theB~, eiata;·andfhe"'M1Ji'{~~~J': . .' f$ignal. The DQ1l1atches the dataOfi tnerillillg,. .. BS<1:0.> set to zeros (memory reference) • No cache bypass • No cache fOf~~. ~';U Bus Write 1iansadion .' . . . . '. . . ". '. . ." ., .... .. ., . '. ... . During a buswri~~Cti()n, '$bQ\vn in F'igQre 21, the PAL bu~ is Used t6 wri~infpr~tion into memory, I/O, and other addressable registers. The information can be a byteotlaWord~,,~ bytheAIOcode.·Th.eOCJll reports memory man~ment or.addre~~rrors on;t'lwi~'~ the first part of the cycle. If the ABORT signal.isassetted,the informationon'DAL < 21:00 > . BS < 1:0> , and MAP lines should be ignored. The write transaction is initiated by the assertion~£theOOJt.~.Thiuignallat~ the AID~; the physical addressonDAL <21:00> , BS< 1:0 >. andthe: ~(I/9 MIt' '~) signals: A~ write requires amimimum ofeight periodsandcanbutretdledlP.t . 'diikementsuntil the ocJll receives the ct>NT signal to end the transaction. Thest~siPal.is~ during the stretched portion andihewrite<1atills Vtilidon leiiding ~d':~~pg~1i9K~ ~. Si8~, Sixteen bits of theDALbU8~ used forhrte write with tile ~cdataQAdlelow byte if the address is evenand the correct data on the high byte iftheaadres$·if6da.'i'fhe data on the remaining byte is not defined.' . . . .' .... . " ., ClK DAl ~,t::t]lt:~~~~= BUFCTl +-~+-~~~~~~~~-4~~--~~~"~~~--~--~~ sen ~ Purpose Writar Transactions.," . . . '. . n ' " ' . The genetal purpose write tmMactiOn is used.~ad~ ftOO-~DP.ll interface hardware through t1re~ purp<>SeicodesonI?AL<07 :Qt}~: Either'bytcor~rite$ canbeit'litiated·1{S defil;l.e,4 by the l\IP~,zt&e ~~liotitI)eJ)A.t~us~g?9()~~Th~ .XJP'bit~.re~tthe gen~nd purpose write' ,code.. ::a,ble 19 lists the write code assignments for the. general purpose tetld· transaction; ConfidentiRl atld P,roprietary 1-279 .... Write Code Function" 014 Asserts bus reset signal RdeilSes system from consOle ODT mode 040" 100 J Acknowledges EVENT 214 " 140 Acknowledges powerfall .. 220 Microdiagnostic test 1 passed 224 Microdiagnostic test 2 passed 230 ~crodiagnostic test 3 pas~ed 234 Places .s,ystem iritO '~onsole ODT'mode m The general pu~se ~rite trans~ction shown in F'ig~re 22 is itli"tiat~d..\,Y the~s~rtion~fthe line; This' signal latches theAIO code and the genera!, ,purpose ctOdeon i~he DALbus. The transa.ction reqUires aininimuth of eight periods and is stretched in two-period incrementS until the DCl iirece1vesthe CON'fsig~llltQendthe ~nin~!lctiqn. The SC'rLsigrlaI i~' asserted during: the stretched portion and the. write data is valid ,on leading and trailing edges. of this signal. elK DAL ALE icT!' ' , '~' DV Figure 22 • DCJll General Purpose Write Cycle Timing Sequence 1-280 - General Purpose a.e.d Transaction Th¥ gen~PurPose' Wtitetialisactio~ is USed to addreSs non·PDP~ll'interface'harti~thtouAll: the ~;~~espl$Cedonbt1s. 0hly viOrds.re~by the~ ~,.·~s.·~!i·i£'i1·.~.• is.reqUired, .the 'excess' byte is·~.·The~··on !be DAr: is l~~XXX: ~:'XD: bit~;tepMent the ge~;~~code:Tab'M 2O'Ji$tS there8& cede assigninentHorthe~purP6$ereadttaii~ot( , .,' . 001 002 ," Reads FPA data. \ - .'Rdads"th~ 'pOv.i~prribde,'haliby,tlPfi;FPA.,oPti9ti;PbK~al:-'a~b\;lOr:~~iis,:. andcl~~'FPA'sF:PS.' '0 ." :", " ' ? ' .. " : " " 'I . . The general pu~ re~ tmnsactioq, s~n in F,Jgure~3, is iffliated by th~assertion of the ALE line.Th.!s ~g~ ·~tshe~..~e 4Iq¥~~ an~""the 's~n.e~J~Qi.~:~ tCadt! /on~th,~1;)t\L~, l'h~ ~~aE~9.n,t'eCl~a' nurumum of elghtpefl0ds theIDqll tereiyes~flilrCfjN'j"sigfuilt~rertathe' latchestbedatawhile;SGtL~. . t ·J~Q:~upcl..!!;lttements until .;.' ............ ~~t~DV~nale'ncl : ;:" ;': . , ' . , CLIC DAL Figure 23 • DCJll General Purpose Read Cycle Timing Sequence ,1·281 - D MA Request and Grant 1 h m s a c t i o n " . · , .. ' . . " . When theextetnaJ!system req¥~ststhe use of th~ D~I,..Ql,lS or want~. tp,stallthe Dqll, ,if ~er.tsthe DM,R input. This disables; t~ DCJll frqmthe BAt bus. anq .~ses astJ:!':t<:hed. transaction:. The DMRinputisacknowledged,aftetthe I/O map i!lf9l:mation is Qothe'¥4l? ()u~put;The R¥R inpq~ is the P;.1Arequestandthe Mf\P output .is theDMA grant. These. signals should be recog,l)ized during NOP or read transactions. The write transactions stretch beyond four peri,ods l\11d the I)~ bus may contain write data. The DMA transfer stretches the transaction beyond eight periods by two period increments, until the DC]U receives the CONT signal to end the transaction. Interrupt Acknowledge .., The interrupt acknowledge trimsaction is used to acknowledgeari interruJ;>t requestrecehTed. through the IRQ<3:0> inputs. The. vector add:ress specified can be an interrial predesignii:el address cran cbcternal address received on the DAL bus. The deooded interrupt level acknowledged" is sent on the DAL < 03:00 > lines at the beginning oithe thutsaction.The DAL< 21:16 > lines are set to one and DAL bits < 15:04> are set to zero. Thdnterruptac~owledge transactionshown inFigure 24, is il1itiatedby the assertion of the Au: line that latches the AlO code and the acknowledged interrupt level.' The trans~tion requires eight periods to read the vector address and can be stretched in two"period increments until the CONT input is asserted'. 'The DV input is asserted to latch the interrupt vector address while the SCTL signal is asserted. ·eLK ~ru~rw'r\-~'rufu~~~n • . L ..... lilA BJJFCTL "" .... .... . ~\\\\ III/I .. .. I I ~\\\\ SYSTEM ABORT STATUS \\\~ I' i\UU. 11111 \M ALE ~. ~ .,'.' " . SYSTEM INTERFAceil'l1rl ·.ORIVESOAL INTERRUPT L E V E L l 'c. I I .! I ~\\\\ " '" ; i.' (. I i ....' • .CQf\I;rINUE \\\\1 , um I ' .. II/II • . 11111 1111. Figure.24 • Interrupt Acknowledge Cycle Timing Sequence ~\\\\. Initialization ......;. . < i." ....... ..·..i· thE: DCJllstarts the initialization processwhen\he~ystem interface pro~es 5 volts. {Vccland assertsINIT for a minimum of 25 dock periods. The IN IT signal can be a.ssetted4>y the sys~ in~f~,bY us~a.~wakeupcircui~, ~~nitWizati9n process can~itDpJe~nted at ~y timE: the systE:m interface asserts !NiT as showq~lf~ 25'~i r--- e l K , ,"",- .. (OFFSETI ~., '.'-./' lNrlTL sc .', ~ -.--t= . ~'._;:_;':'~;-f..~! .··-·:,-,-:,-,-.".,-,*-~:~::~-----------+-"-+----. ~_ ~I.LH+-:""""',"""",,~_~_,,",II IND- ..,.. • Figure 25· DC/II InitialiZiltion Timing Sequence Th~ inltiauzarlon p~s uses the powerupiC>~ijOe,t&~;~ijrie:~~~i~~ ~t returns the DCJll from the console ODT mode. A 002 G'P'~~bnl$~£OJ;m<:d dUrilig'ahY routine, and thE: .system interface provides the configuration data through the DAL < 15:00 > . The system interil!.Ce provides .tbi,s. data byJwd~,~ft:w~,PtJ~.r.~6 ~c:ny~ the fomut t of the information in the ~~tioni.te;arutW."'e:f21lists the function of the information. UNUSED--------------------' HALTO"'ION(---------------------------------~ POWERUPMODE--------------------------------------~ POK----------------------------------------------------~ Figure 26· DC/ll Powerup Configuration Register Format Bits~. 15:09 BOOt address..';4Jrovides th~bOOe adcIteS;; asthePG· fortheusets prograrnwheiithe powerup option #.3 is used. The PSW is .340. . . 08 FPA available-Indicates the system interface is using a floating-point accelerator. 07:(l4 Not used-Res~rved. 03 Haltoption-'-"'Selectsaction to be taken when a halt is executed in kernel mode. 02:01 Powerup mode-Selects the powerup mode for the syst~m mterfag! .. 00' roK~lndicates when the system ac power supply is OK. *All bits are read-only mode ~l' 7 ':fable 22 lists th,!1 fo~ pc>weru~ ortions available to the user and selected by mode .. . . bits Oland 01 oftheconflguration J;egis~r:. . . . " , ,- "";' I, Powetup Bit 02 Bit 01 Mode Description o o 0 PC at 24, PS at 26 1 Mlcro ODT,Ps=O 1 o PC= 173000;PS;.. 340 1 1 User bootstrap, PS = 340 . Confideritialand Proprietary - • Powerup option O~The proc~or reads Physkalm.eUlOry locations24aitif26 and loads the data into the PC andPSR, respectively. The processor services. pending interrupts or starts program execution beginning at the memory locat~p?#ttedtobythe PC. • Powerup option l-The processor uncon. M ate cleared and the PSRlS set to 340. The processor then services pendi981~~ii:g!s~s the program execution beginning at the memory location pointed to by theIPc~. fr;,: ',,<: , _~,' '" '( ". ,;"1 ',;', \' (;, " Power OK-The power OK (POK) inpuJisl'roV~by th~Jrstem interface to indicate that the ac supply is operating at the <:O~ voltag~: \'IUben,:~tf.iis'~, the voltage is correct; when bit 0 is deal; the DCJU' ~~~'~ is off. " ", "".,"1 Boot Address-The boot address reads the·~~t·bits (15:09) of the starting address from the system interface. The remaining bits (08:~J.~,~iiS'~s. This ~the bootstrap address to reside on any 2,048-word boundary. 'Fheboo"~sis5ele(:ted by powerup option 3. FPA Available-The system interface s~thi~~11~ffl;¥ no.ting-point ac~tor is in the system and is eleared when a floating-point accdeMtoPi$>~1Acl~. Halt-The halt option is used by the s~il\:~~J\?ipdicate the interpretation of the halt instruction in kernel mode. When set, tHis bit ~G~;~t;the processor will trap through vector address 4. When cleared, it indicates thatt~wmbJ placed into console ODT mode. '!iL Initiali:r.ation Sequence i"":'" The initia.lization sequences are shownin~:toJlGWingflOw diagrams. The powerup routine is described in Figure 27, sheets 1 throughf1i'Th!:'~routine is desc.rlbed in Figure 28. The return from the our routine is described:,mE~.Z';~ 1 and 2. All ffiese routines perform a variety of GP read and write transactions that are~ed in the Bus Operation section. !: ' 1-285 GPWRITE SYStEM IS NOT IN CONSOLE OOT MODE . .GPWRITE NIP. GPWRITE NIO 1'410 'NIO BUS WRITE NIO Figure 27· DC]l1 Powerup Sequence Flow Diagram (sheet 1 of 4) 1-286 ConfiClenruu and Proprietai:y BUS CYCLE GP READ NIQ ~T 8 OF THE CCR, WHICH IS IMPLEMENTED BY THE. R /11$. l"HEFLUSH CACHE 8'I'r;(J.. ,AcCHiSYSTEMSI. CLEAR THEOTH.~JN;CR BITS. "tv BUS WRITE ~~fARTHE MEMORY SYSTEM ...iR~J\.$EGm.E,R, WHICH MAY ',l1A'~'(.~T !!t!:lIMPLEMENTED BYri'lltt~,*fI.' ",.10 NIO .' Figure 27· DCJ11 Powerup Sequence Flow Dis~ (sheet 2 of4) - n.....h_!_ :rRlUDlll&ry 8USCVCLE DCd'1'\):'" OPERATION GPWRITE . T:EST U'.t.sSii.D. CPU ERROR REGISTER WRITTEN AND READ CORRECTLY. BUS READ DETERMINE IF EXTERNAL LOGIC THINKS LOCATIQ:N (lIS IN NONEXISTEIliT M~ORY UTSHOUl.[)NOT). IF IT DOES, EXTERNAL LOGIC "tYPICALLY GENERATES AN ABORT. BUS READ ,DIfTE;R~INEIF ~XTERNAL LOGIC THINKS \..O,.CATIQN17777700 IS IN NONEXISTENT MEMORY (IT SHOULD}. IF IT DOES, 'EXTERNAL LOGIC TYPICALLY GENERATES .. AN ABO 1fT•. 'fl':s:t :U~ASSED. NXM ABORT NOT GPWRITE GENERATED BY REFERENCE TO LOCAT10N:QBUT WAS GENERATED BY .•MfERENCE lTO LOCATION mntOD. BUS READ . READ RECEIVER CONTROL AND STATUS REGISTER lRCSR) Figure 27· DC]l1 Powerup Sequence Flow Diagram (sheet 3 of 4) Confidential. ana Proprietary - NOTES BUS CYCLE ~' OeTEaMINE IF EXTERNAL LOGIC !HINt,>TEST"i.,PASSED. NXM ABORT NOT GENERATED BY R£FERENCE TO RCSR. GPWRITE TRAP THROUGH LOCATION,24 ~:::: -'i'*.,,- Figure 27· DCJll Powert4p'SequenceFlowBjagram (sheet 4) .''', ' " "~,~j ~ 1·2,89 - 'Di..._H_! __ _ ;;o.n:W:U.IlIlIUU-Y DCJll BClseVCLE OPERATION GPWRITE 2 BUS READS 2 BUS WRITES EXECUTE NEXT POWER DOWN SERVICE ROUTINE INSTRUCTION GP READ S£TaIT7 OF CPU ERROR REGISTER AND TRAP THROUGH LOC4 SETBIT7 OFCPUERAOR REGISTER AND TI'IAPTHROUGH LOC4 . ENTER CONSOLE ODT Figure 28· DCJll Powerdown Sequence Flow Diagram 1·290 Confidentiil and Proprietary - BUS CYCLE Gf>W'UTE OCJ 11 OPERATION Ng'rES SvsrEM IS NOT ,IN CONSOLE OOT M€)t)E GPWRITE 1410 GPWRITE .NIO HIO BUS WRITE NIO Figure 29· DC]l1 Console Start Sequence Flow Diagram· 1-291 - BUS CYCLE ,QWI1 ~ OI'ERATION NOTES READ POWER·UP CONFIGURATION DATA THAT IS DRIVEN ON CAL BY EXTERNAL LOGIC. SET BIT 8 OF THE CCR, WHICH ,,"IS TYPICALLY IMPLEMENTED BY THE USER AS THE FLUSH CACHE BIT (IN CACHE SYSTEMS). CLEAR THE OTHER CCR BITS. BUS WRITE CLEAR THE MEMORY SYSTEM ERROR REGISTER, WHICH MAY OR MAY NOT BE IMPLEMENTED BY THE USER. BUS WRITE BUS WRITE NIO BEGIN EXECUTING CODE Figure 29 • DC]l1 Console Start Sequence Flow Diagram (Continued) . Instruction Timing The execution time for an instruction depends on the type of instruction executed, the mode of addressing used, and the type of memory being referenced. In general, the total execution time is the sum of the base instruction fetch and execute time plus the operand(s) address calculation/fetch time. Tables 23 through 30 and the source and destination tables Sl, Dl through D6, and Fl through F4 are used to determine the execution time of an instruction in microcydes. The execution times listed in the tables specify the number of microcycles required to fetch and execute the base instruction. The read/write (R/W) columns specify the number of read and write microcydes required. If the instruction involves a calculation or fetch operation of one or more operands, a source or destination table is referenced in the table. The source and destination tables specify the number of microcycles required to perform the calculation or fetch operation for the source or destination. It also lists the number of read and write microcycles required. During the remaining microcyc1es, no operations (NOP) are performed . 1~292 .Confidential andProprietaty The table vatuesaij;;~.uculated.~l'lJm~ thatlill:'ead froqul,l,<:lll011'~tio~ ~uires aminithum of of eight clOck periods,anda four clock ~iods,a:write to memory operation requires NOP'rrt~ti4¢tionr&t~res fo~ ci " , shows Determinetne execution time 000 i03400 2 l(}(JOOO 1/0 1/0 4 4 I/O 4 2/Q~ 2/0 2/0 .. 2ie 2/0 2/0 4: 2 '1/0<" 1/0 4 4 2 1/0 4 ..2/0 2{~F 2/0' Signed Conditional Branches BGE SLT BGT BLE Br if greater.or equal t.o 0 Br#.~~~g_ Brif greater than 0 Br if less .01: equaltdU" ';}i'f','" ':,:",1 -"\""_'i'" unstgn . cd ConditionalBranches r/', 020000 ,,{Qq2100·· 00:3000' 003400 , ~. .. ~ 2/0 ·i./O liP \,,'''':: .2 2 1/0 I/O 2/0 4 .if , .~, " -- ,. 2/0 .. i;!'/ , BHI 101000 2 1/0 4 .. 2/0' BIDS '101400 2 4 2/0' 499 2 2 3 I/O 1/0 1fG Br if higher . Br if lowerot same SHISBr if highelior same BlO Brif lower' . SOB Sul?tract 1 a,hd bran~ if not equal to.O lQ3QQQ 103 07'7RNN 1/0 4 2/Q 4 5 '2/0 '-" 210 Table 26 ~ DCJll JumP and'~Une InstruetiQn Execution Tunes',. Exeeution Me-- DestiRat:iOQ p;['f{; " \ ,l@).;Je :. ,J .. ;:;" /! MnetnOnk Instrudio11 Opeode' JMP Jump 0001 DO 05 }SR Jump to subroutine 004RDD D64 RTS ' Return from subroutine 00020R 5 3/0 Stack cleanup 0064NN 10 3/0 w MARK ,.' .:.\ ' .I' 14 Mnemonic Inst:i.uCtion EMT' TRAP 'Emu1~tor tr!lp Opcode 'j"" Tmp Execution Time (Ilc) R/W 10400020 104377 104400~ 20 20 20 4/2 4/0 Breakpoint tmp lOT··. Input/output tmp 000003 000004 RTi: Return from intet~pt 000602 9 RT&' .•· Return from interrupt 000006 9 r~\ '-,: 4/2 104777 BPI ",1- .. ) Table:28 • DCJ1t Con~tion Code Operators Instruction Execntibn'TImes Mnemonic Instruction Opcode Execution Time (Ilc) Cu:; ClearC 000241 3 CLV Clear V. 3 CLZ ClearZ OQ024,'? 000244 CLNi Clear N. ,3 CCC Clear all CC bits SEC SetC . QOO250 000257 000261 SEV Set V 000262 3 000264 000270 3 3 1/0 000277 3 1/0 "'.', RfYJ WI f SEZ SEN SCC 'Setall CC i'its" 3 3 ,I/O 1/0 3 1/0 .Cnnfidentiahmdl?roprietary \. - ....~ Execution Taae(~) R/W'pi H:A:I:f ..... Halt WAIT. ····Wait£Q1'inteJ:Npt 000001' ... . NOP, ~ t' (No operation) . . 0066SS . "\., ~-, .~ '-3 ·1fl. . , 'DJ MTPD ~. 1;0' previousdat'll spacel~S 2/(l '.+ MFPT Mo\te&ot11p~sor (RO operations. One of the ltEAD opexations!s acconnted for in ~ exet;:ute,;£etch timing. 3. Read-only and read-modify-write destination mode 57 re£~s actually perform four READ operations. One of the READ operations is accounted for in the execute, fetch timing. 4. Subtnlct 11J.C if the link register is the PC. 5. Add 1J.IC·if ~!~~,~~~,~~,;,.: 6. SUbtrap;.~Mcif~$Puri:emode'is fl9t~;, ' ......... " . "", ., ............ . 7. Add 1 MC if the;q~~nt is even. Add2·~~~i~ overflow ~~~\4Memory Cycles Destination Mode Destination Register 1 0-7 9 2 1 2 0-7 10 2 1 3 0-6 10 3 1 3 7 9 3 1 4 ,0-7 10 2 1 5 .0-7 11 3 1 6 0-6 10 3 1 6 7 9 :3 1 7 0-7 12 4 1 Read 'Write Tattle Fl • DCJll Floating Source Modes 1 through 7 Cycle ri,me Microcode Mode Single Precision 1 2 2 3 3 4 5 6 7 Memory Re8ister :Memory Cycles Read 0-7 0-6 3 3 2 2 .·Write 0 0 0 7 1 1 0-6 4 7 3 0 0 4 3 3 2 3 3 6 4 0 5 5 4 4 0 0 0 0 0 0-7 0-7 0-7 0-7 4 5 0 0 0 Double Precision 1 2 2 3 3 4 5 6 7 0-6 7 0-7 0-7 0-7 7 0-7 0-7 0-6 01> 6 5 6 1 5 5 4 7 5 6 8 5 6 Con£jdential~d Proprietary 0 0 0 0 1:303 ... Microcode Mode 1:·· •.. PIeIiminary Table F2· oCJUFloating~tinatiott Modes 1. through 1 eyed, Time-,.' .Memory ·Memory . Register Cycles Read Write Single Precision 1 2 2 3 3 4 5 6 0-7 0-6 7 0-6 7 0-7 7 0-7 0-7 0-7 3 .3 1 0 0 0 4 3 4 5 4 0 6 2 5 5 0 1 1 1 1 2 2 1 2 2 2 2 2 2 Double Precision 1 2 2 3 3 4 5 6 7 1-304 0-7 0-6 7 0-6 7 O~7 0-7 0-7 0-7 (-1)1~ 6 5 6 7 6 8 0 0 1 1 4 4 1 4 4 0 4' 1 4 1 2 4 Confidential and Proprietary 4 ,",Mju ",":n....u:...:_..... . . .- , ~1~ Table F)d)CJl1 FlOa~ Reaa~modify.write Modes htlUougli1 €yde IlDJe Mkrooode Mode Memory ""Register Memory Cycles '"-Read ~:Write Single Precision 1 0-7 2 2 3 3 ,0-6 4 0-7 0-7 0-7 0-7 5 6 7 -'1 0-6 "J Double Precision 1 0-7 2 0-6 2 3 3 4 5 6 7 7 0-7 0-6 7 0-7 0-7 0-7 5 5 '. It.; 6 5 6 7 6 8 9 9 _211 10 9 10 11 10 12 2 '2 1 3 3 2 3 3 4 4 4 i 5 .5 2 2 1 2 2 2 2 2 '2 4 ,4 1 4 4 (4 .5 5 ,4 6 ,4 Confidential and Proprietary 4 4 " 1..305 Microcode Mode f\>'OC)U' Preliminary Tabt~ F4,.DGJUiln.l:eger Sow:ee Modes.l:thtough Memory Register Memory Cycles 0-7 0-6 7 0-6 7 0-7 0-7 0-7 0-7 2 7Cyde Time Read Write 1 1 1 2 2 1 2 2 0 0 Integer 1 2 2 3 3 4 5 6 7 2 01 ' 3 2 3 4 3 5 0 0 0 3 0 0 0 0 Long Integer '0-7 0-6 4 4 2 0 2 2 2 7 015 1 3 3 0-6 5 A 5 6 5 7 3 3 0 0 0 0 0 0 0 0 1 4 7 0-7 6 0-7 0-7 7 0-7 5 1·306 2 3 3 4 Confidential and Proprietary Preliminary DC}1l. Table F5 • DCJll Integer Destination Modes 1 through 7 Cycle Time Microcode Mode Memory Register Memory Cycles 0-7 0-6 4 Read Write 2 2 2 5 4 0 0 0 1 1 Integer 1 2 2 3 3 4 5 6 7 7 4 1 0·6 7 0-7 0-7 0-7 5 0 2 6 5 1 1 2 0-7 7 2 2 0-'7 0-6 7 2 2 2 3 2 3 0 0 1 1 1 1 2 2 2 Long Integer 1 2 2 3 3 0-6 7 4 5 0-7 0-7 6 0-7 7 0-7 0 1 1 0 1 1 4 1 1 3 5 1 2 1 Confidential· and Proprietary 1 1-307 - PmJiminary . Instruction Se*. Refer to Appendix B for a complete list of the DCJll ~Cl,'Oprocessor in.s~ction set . . Specifications The mechanical, electrical, and environmental characteristics and specifications for the DC319-AA are described in the following paragraphs. The test conditions used for the electrical values listed are as follows unless specified otherwise. Refer to Digital specification A-PS-2100002-GS for the general specifications for integrated circuits. • Operating temperature (T,~): 70°C • Power supply voltage (Vcc): 4.75 V Mechanical Con£isuration The physical dimensions of the DCJll 60-pin ceramic DIP are contained in Appendix E. Absolute Maxnnum Ratings Stresses greater than the absolute maximum ratings may cause permanent damage to the device. Exposure to the absolute maximum ratings for extended periods may adversely affect the reliability of the device. These ratings are for stress conditions only and do not imply that the device will function properly at these ratings or ratings above those indicated. • Power supply voltage (Vcc): 7.0 V • Input or output voltage applied (Vss): -0.3 V, {Ved: 0.3 V • Active temperature: -55°C to 125°C • Storage temperature: -65°C to 150°C Recommended Operating Conditions • Temperature range: ooe to 70°C • Voltage range: 5 V ±5% • Relative humidity: 10% to 95% (noncondensing) de Electrical Characteristics Table 31 contains the dc electrical parameters for the input and outputs of the DCJll for the specified operating voltage and temperature ranges. Refer to Appendix C for test circuit configurations referenced in the tables and used to perform the tests. Table J2 lists the applicable dc tests required for the input and outputs of the DCJll. Co1:1fidential and Proprietary . Symbol ."Preliminary 'OOJB . 18bIe :n·· DCJU dtInput and Output Parameters Pamneter Test Condition Vm High·level MOSinput Vu. Low-level ... Units ')fit Chadt V Cl,C2 30%Vcc V Cl,C2 V Cl,C2 V Cl~G2 pA C3,C4 rnA C5 rnA Cl Requirements Min. Max. 70% Vee ,~' ,; MOSmput VIHT High-level 'ITLinput VaT Low-lel('el 2.2 TTL input II IlIL Input-leakage current non-Test inputs oV !:!VI !:!Vee Input current Test inputs VIN=OV ,.," -10 10 Vcc =5.25 V 0.1 5.0 Vcc =5.2'V Vour=Vcc·-.(My lou Outputcuttent lox. Output current at }owlevel VciIir=OAV 2.0 rnA Cl,C2 10m Output cuttent at high TTt. level Highlevel . VOUT=2.4V -2.0 rnA C2 VOUT= Vee -to V -0.2 -(}.p. rnA - C6. 0.2 0.8 rnA C6 at high'leYei suStainer current ';i VOUT =1.0V current Vcc == 5.25 V Ioz Output leakage current l oV !:!VO !:!Vcc L:csB Static power supply current 2 e., '~ Vcc =5.25V Low level sustainer Ion -:-2.0 CB'iC9 Vee =5.25 V 30.0 Vee =5.25 V Input only cllpacitanc;eJ 7.0 Con£identialand Ptoprtetaty • rnA C7 - ;'IL..;.l' , :r:RIlnunaty Symbol ·PaWneter ~t Units . Condition Input/output capacitance' 15 pF C.., . Output capacitance' 15 pF C.... DCJll capacitance plus external capacitance 100 pF Test Circuit lApplies only in the high-impedance condition. 2With TESTi, TES1'2, and all outputs open circuit. All other inputs equal to Vee. 'Sampled and guaranteed, but not tested. Does not apply to TESTi or fEST'i. Table 32 • OCJll de Signal Test Summary Type Name Applicable de Test TIL input IRQ <3:1>, HALT, PW'RF, EVENT, PARI1Y DV, MISS, CONT, DMR, INIT and FPE Vrm:, V'LT,II TTL output DAL< 21:16 > , AIO<3:0>, ALE, BUFCTL, sC':rL, STRB, BS < 1:0 > , MAP, and PRDC IoL' 101fT. loll MOSinput TESTl and TEST2 Vm, TIL, IILL MOSoutput CLKandCLK2 Ion, lot, 1m TTLIjO AB'Oi'IT* V'tT' IoL, 10m, ~,IosH TTLI/O DAL<15;OO> VrnT, VItT. IoL, loHT'Ioz Power Vee Ices8 *A'B'QRT must be driven with lll1 open-collector driver because the DCJll has a. pullup device that supplies losn. ae f:lectrical Chapteteristics The timing references and signal parameters of the DCJll are shown in the following figures and tables. Figure 3() shows the input and output voltage waveform characteristics. The test conditions used to perform the ac measurements follow: Figure 33 shows the output load circuits referenced on the tables and used to perform the output measurements. Confidential and Proprietary REFERENCE OUTPUT ClK (MaS) OV (TTL) MaS, TTL (INPUT) VOH MOS, TTL ~ Vee -.04 VOL =0.4 V td = t;, DEL~ y TlM~ =HOLD TIME t. = SETUP TIME Ien= ENABLE TIME tdii> =DiSAB~~riME . Figure 30 • DCJll Input and Output Voltage Waveforms Confidential and :proprietary 1-311 - Preliminary OUTPUT UNDER _ - - -......- -...--~ TEST POINT TEST 50PF MA-9423 Load A-Three-state disable lest circuit vee TEST POINT RL RL IS SELECTED TO PROVIDE IOLOF2MAATO.4VOLTS OUTPUT UNDER 0 - - -....-4111-.... TEST ALL DIODES ARE EITHER IN916 OR IN3064 -= CLOAD = CMAX-J-11 PIN CAPACITANCE ~ 8-TTL Oulpullest circuit OUTPUT UNDER TEST O'O---I. . . ----O CLOAD TEST POINT ~ CLOAD = CMAX - J-l1. PI N CAPACITANCE Load C-MOS output test circuil Figure 31 • DC]l1 Output Loading Circuits Clock Signal Timing Figure 32showsthe timing references for the dock pulses referenced in the following measurements. The reference edges are defined as' whole- and half-unit clock cycles. A whole unit is the time between the rising edges of the clock cycles and a haIf unit dock pulse is defined as the time betwe~n the riSIng and falling edge of a clock cycle. Figure 33 shows the timing references for the clock outputs and Table 33 lists the.clock timing parameters. ~~ TO. 5 Tl.S T2.5 T3.5 T4.5 T-2.5 T-1.5 Figure 32· DC]l1 Clock Cycle Reference Edges 1-312 Confidential and Proprietary T-0.5 - n..._1!_!..... . rl.'CW.lWlary Figure 33· DCJll Clock Output Timing Wave/orms Load Refelence Circuit! Symbol Patamder tINJTW INIT pulse width, N/A '''';:''; . 225 tSHTU.H Initialization interVal tcvCLB tam CLK cycle time . 61' CLK high width 28. '. t CLn CLK low width 28 til eLK rise time tl' CLK fall time ......:.:.: tpeyc CLK2 cycle time 67 .ns tPCIJ[J)2 CLK to CLK2high time tPCLKH CLK2 high width 28 ns tl'CLKL CLK2low width 28. tl'll CLK2 rise time ' fis ns ,- t pp CLK2 fall time ............ os ..".... os 7 os '7 hs , """l'- 7, . 7 N/A N/A N/A N/A N/A N/A N/A ; , ' LoadC LoadC LoadC LoadC LoadB LoadB os N/A N/A nS NJA LoadB 'ns N/A LoadB lRefer to Figure 31 for output load circuits used for the timing measurements. zDependent on output" loading)of CLK and CLK2. ";' ' LoadC \ Confidential and Proprietary LoadB - Preliminary Signal Timing . The following figures show the timing references forthe bus read and write transactions, general purpose (GP) read and write transactions, and the interrupt acknowledge bus cycles. Figure 34 shows the nonstretched bus read timing sequence and Table 34 lists the timing.parameters. Figure 35 shows the stretched bus read timing sequence and Figure 36 shows the bus write. timing sequence. Table 35 lists the timing parameters for both the stretched bus read arid bus write transactions. Figure 37 shows the GP read timing sequence and Figure 38 show the GP write timing sequence. Thble 36 lists the timing parameters for both the GP read and GP write transactions. Figure 39 shows the interrupt acknowledge timing sequence and Figure 40 shows the interrupt timing sequence. The timing parameters for the interrupt sequences are listed in Table 37. Refer to Table 38 for the tSD and t 5m parameter references in respect to the eLK signal timing shown in Figure 39. eLK T2/T6 T3m TO T1 T2 T3 TO AIO BS OAL DV Figure 34· DCJ11 Nonstretched Bus Read TimingSequence 1-314 Confidential and Proprietary - Preliminary 1ibIe '4.' DCJllNonsttetcbed Bus Read Taming ~ ~ts Symbol .P.meter Min. tAJO» AIO< 3:0 >deJay. 75 DALvaiid delay 65 DAL valid hold tm! Load Max. Units RefeMnee Cireui~l >:£-1.5 LoadB 5 Load A DAL o\iltputdisable 30 20 DMiihold2 tos .. DAL< 15:00 > seru,;.e ,. tsm ns 1'3 30 'ns T3 10 .nS 1'3 . ns TO PRDC valid delay 50 PRDCinactive delay '(1' $ tsD ns 35 MISS hold tPID n5 .. :1'2, t ,Strobe active 4elm' Strobe uiactive dd.ay '. 35 ns Table 38 35 ns Table 38 4 _"'''-" LoadB LoadB LoadB LoadB lRefer to Figure }1 for output load circuits used for the timing measurements. 'The serup and hold signaI~ts ensure the recognition of the lle1d: sample point. ConfidenHaland. Proprietary 1-.315 - T2fT8 13rr? TO . T1 .. " T2 . AIOO.... . ',. 14'" 14 14 '''''00111 _P"" T5 T4 ~~IpIOj ____ - - lSi> ,....!m!l ~ ....i- X ; 7'C.. \1Af' It- -ooi 85<1:0> j 'sOo4oj 'r1 'sID '1 .... ~ II+/' " TSO .... I-- 'so -oi X ~ r~/1 r-,. r 'cALO'" OAL :::~ " _ ...., ~~tOALH =- I--- J ADDRESS Oil -!DH ~'cS K:' " __ AB f.l.:-tABD 'cNTS 'ABW -- IsID ..... ---- , ~ ~ rr-- -- "5,['" I---- 'AIli;- I- ./'' 9i" __ L , 'J 'so... " ---. ---------- DMG BYP/FORCE ~ ~'s0 " _.', IX I+- 'so , . TO __ ;I 'sID- '" " , DMRH -to X "', tHMS HMH I--'t""'"IX! ' T7 ..... r-1~ __ 3C..... - J.o:.:t 'sO.... "- - ~'sOX --- __ C;'_,,,_'"'\_ :::>/' ~tp)-.T , 0 85 14 T4 .~~~f-!)::~~~ r-' " eLK ' .::...r'r __r - " tsD V~ '" 'cNTH ,,' ' r-~ SLOW READ L I ~ JTA ~ X---- .x ~X FAST IIEAD OllTA * to~ ./ _ ~ .......I", OVW I •• 'OVOH tOVF ',,' ,'OVH ,! >C ·1 -- I----tovs Figure 35 • DC! 11 Stretched Bus Read Timing Sequence T21T6 T3I17 TO 11' T2 T3 14 T4 T4 T4 T4 elK AID PR1iC OAl m STAB BuFC'f'l ,/ sen. BS BYP/FOACE WJ' TABOd I+- DMG AmmT CONi' Figure 36· DCJll Bus Write Timing Sequence 1-316 ,CGnfidentialand Proprie.tary T5 T6 17 TO tMOO 75 '. AIO<3:0> delay ~... 30 tanu . 20 t-15 t~ LoadB LoadB DAL yalid hola T 1.5.Tl Load B 5 T t5,T4 LoadA 20 tDMII1J. tDYDl:( TO " ns 30 DAL< 15:00:> hold '.MDV.L 'fr: t Dm DV deassertion tDVS DV deassertion tDVW DV pulse width tm i?Ri'5C valid dday tl'fl) PRDC inactive delay 0 ll$ .i',M/A os ·T65 ns T4 N/A TO T2 ns 50 ns ns LoadB LoadB ''lable3S) LoadB ,,,<:.> lable38. LoadB 1Refer to Figure31 lor output load citcUitsused torthetiriiliig'm~rneIlts: ....•.......•.... 2The setue,andholdsignal~~ ensurew ~piition~f. ~.tl,~.samplt:. pcint. C9nfi~ial and Proprietary T21T6 T3fT7 1:1 12 TI TO 104 T4 TO T7 ~~~.:;.r tAl 0 . ,...,.. ~~~~,.-, 'AIOD (1)'0 11 . . . __ ~ ru.. >c;;;. ~ KJ -trt:1 .... i--'PIO .'. - eLK AID "' ~ iW 'X .:: =- X -X - 'DMRS. ---;;~ .... X /'" ... 'so X OMG tOMRH '50-1 100-.... .... --- ~ID'" ---------- L.:" - ' - c:::; 'SO ~ ~ /1 'I+- 'sID .-40 /' .r'sD '" teNTS:; /1 'sO..... FO- , !;-... tOALO- ::::5 OAL ov ~ 1-- I ... --- .... ~.'s0 r--'s0 -01 X --- IX. r'SO 1-' I- '--1- 'SO SLOW ~tsiO /" ~'cNTH ----.......r--/ .....-1~~' -- X-- 1-'s10 __ --X -~X ~IHA ." -:x:---'OIS-1-J:;;,. ~ 'o~ r:-~OVH J 'o~ tOALH-tlci GP.COOE '.-- ::::.:::. I GPOATA _tOYS tOVF -- Figure 37· DC]l1 GP Read Timing Sequence T21T6 TJIT] TO 11 T2 T3 T4 T4 T4. T4 104 T5 TS ClK AID OAL =-::;~~:j~~£Ijt>cC:::t:::~t=t===~G~PWRITE DATA BS DMG ltCNTH Figure 38· DC]l1 GP Write Timing Sequence 1~318 Confidential and Proprietary T7 TO OOj'u Preliminary 18bIe }6 • CJU GP Read and Write Timing Parameters .' Requirements Symbol tABS A.BOR'f delay ,;". . "'1'· ABPR.T drive tAllY AJ30lg wi4~ tAliD tMoo Min. Pumleter . . Max. 0 os 3'0 ns 40+ ' AIO<3:0::> del " " . ..sr. Reference. Units tCLJtll ns 7'5 . ns T-15 Load Circuitl LoaclB t.orrs CONTsetup' 30 ns t:",3;5 tcNm CONThold 20 os T;..,3.5- tOALD DAL \\'alid delay ns 'I'-1,T1.5 LoadB tOALH bAL valiclhQld . 5 :ru!. XL ',T3 tOR DAL<:~,:OO> hOld 5 ns T3 tOlS DAL,output disable tDllOlS DMRsetup' 6'5 ns 35 30 LoadB 'Tq~T4 ns Load A TO ,~ j '.' Tll. . tDM\tH ilMRhoid' ~Q, .ns tm; PAL <15 :00 > setup 35 ,'os tOVOH DAL < 15 :00> hold ,35 ns tovns DAL < 15:00> setup 35 ns MDV-L MDV.L tDVP DV fall time 15 ns N/A t Dm DV deassertion 0 ns T6.5 t DVS DV cleassertion 0 ns T4 tovw DV pulseWklth ' 35 ns N/A tHKS MISSsettip 30 ns T3 tWIN MISS hold 10 ns T3 ns TO LoadB t po ,PRDCVlilld ck:lay " ,50 :n tPID PRDC inactive delay ns T2 LoadB tSD Strobe active delay os Table 38 LoadB t 5m Strobe inactive delay ns Table 38 LoadB 0 35 lRefer to Figure 31 for output load circuits used for the timing measurements. :the setup and hold signal requirements ensure the recognition of the next sample point. Confidentialancl Proprietary " .• "" ......... " 1'>;.4"" ..........""'._!lI!J:!'I;_,()I!",",!I.___, ..... "_'1HI....... 1 .....""_ ......"""... ... UIJii..,'"......_ !&Ji_~ ......._ _ _ • _ .... ___D_ _ _ _ _ _ _ _ • ____ - 1·319 ,~ ... ~.---- ...• - T2fT6" T31T7 TIJ T1 T4' T3 T2 T4 T4 T4 ,~'""'~~~~~ ~"'-- CLK AID i,,: :::!:::...i- ~4:-.~ X ....... 's0-001 , " -- I-~HMH 1-'- ~X MA1I' IX iX ~ !,' tpl~ !t,.'HMS .'PO..,! 'so OMG ~ :!!::. r'"""'OMR 'so .. ~ ;:X 'so..... --- " D< ..... I-tso X J I+- 'sID'" ~ ~'s0 'SID V 'I i- r 'sD""", ..... I-'sD XI I....... f.i,...tABD ,.I - _,!CNTS~ ~ 'sID'" 'sD-40 ---" ---==:;; I tolS ,,:::.0. ~ INTE.jRUPT LEVEL pv I+- ....... ~ .'2.~~~ DAL ------------.. --------- " ::> IINI r: l/1f- J'SO l -- INTERRUPT . VECTOR ~:.t:..1 t~ .. x ~ INT~TVECTOR (FASTI • T __ ~"~ D~',~tOVDH /rD~ ......I. I.--, 'ovs , 'O\lF __ -- 'O\lH------ HALT,PWRF, FPE, EVENT PARITY Figure 40· DC]l1 Interrupt Timing Sequence Confidential arilProprietary - ~ DQtl 'lible 37· DCJU Interrupt mel Acknowledge Timing Parameters i" Symbol ~ t ABO AlIDRT delay " Requirements Max. Min. Units 0 nS 30 ns tAlOD 'i\iIDR.T .drive ABORT width AlO < 3:0 > delay teNts CONTsetllIT, I:cNm <::5NThold tOALD DAL valid delay tn.uu tAIlS tAB'&' 40+ tallH ;,': T-2., 11S'·, 7, .ns T-1S 30 os ' T-35 20 ns T-35 as T-l LoadB DAL valid bQld T1.5,T3 LoadB t DlS DAL outPUt disa~5 T1.5T4 Lo~gA. tOMas i'5MR setupl 30 tDMJIB DMRhokP 20 os TO tDVDH DAL<15:00> hold 35 ns MDV·L tDVI>S DAL< 15:00> setup 55 'ns tDW Dvfall time toVH DV deassertion tOYS DV deassertioo tovw DV pulse width t llMS MISS setup tHMH 65 LoadB TO 1 1Y>, MbV-L N/A 15 ns T6.5 ns T4 as· N/A 30 os T3 MISShoI.d 10 ns T3 tpAllS PARI1Y setup 20 ns Figure 39 tpAltH PARITY hold' 20 os Figure 39 tm PRDC valid delay 50 as TO LoadB tPJD 'i?Ri5'C inactive delay 50 os T2 LoadB tso Strobe active delay 0 35 os Thble38 LoadB tsm Strobe inactive delay 0 35 os Table 38 LoadB 0 O' ·35 Confidential and Proprietary r""'....!$1l!lIISl ........ .... --,If', ... !W!i.... ~ ~ Circuit! 1U"'"".1_ 1·321 _.\1miie_".."""""'...., __...""""'..".,._____w_.O'ii_""'""'________ .".".....W_.¢I._li...... ~ '-_~~· __·___·,__·_ .Requirements Min. Max. Units Reference Citcuit' IRQ<3:0>, mr.r, PWRF, FPE, EVENT setup: 20 ns Figure 41 . IRQ<3:0>, HAlT, PWRF, FPE, EVENT hold' 20 ns Figure 41 Parameter t svcs Load lRefer to Figure 31 for output load circuits used for the timing measurements. 2The setup and hold signal requirements ensure the recognition of the next sample point. Table 38 • DCJll tsn and tsm Parameter References Signal tsn Reference Edge tsm Reference Edge ALE TO.5 T3 STRB T1.5 TO BUFCTL Tl.5, first T4 T3, T-l SCTL Second T4 or T5 T-2 BS T-0.5,T1 MAP T1.5 ABORT T-0.5 1·322 Confidential and Proprietary . Features • Accderates by five to eight times the DCJll floating-point instruction perfotru.ahce. • Improves by three to five times the system performance in floating-point applications. • Supports the complete FPll floating-pointins~onset;. • Supports single- and double-precision :qoating-point, !is ~U Q$ 16.- and 32-bit integers. • High-speed, double-metal ZMOS ttchnhlogy. • Single 5-Vdc power supply. -Description The FPJll, shown in Figure 1, isavery large ~caleintegratiqf! (VLSI) floating-point coprocessor for the DCJU microprocessor thatirnplements the FPll floating-point instruction set on a single 40pin chip. The high performance of the FPJU'significantly ifupl'O\(es the performance of computation-intensive applications. . . The FP]l1 interface provides the ai)illtytp overlap instruction ~tion in a DCJll system. This ability allows the effective execution. time· of floating-point ins~ons to be measured as the time required to execute the support microCOde" in the OCJl1\ and .any time waiting for a previous floating-point instruction to complete. I I I I I I I I I I I I I .-J Figure 1 • FP]11 FPA Block Diagram Confidential and Prop:t:~ 1·323 This section provides a description of the input and output signals and power and ground connections of the FPJll package. The pin assignments are identified in Figure 2 and the"signals are summarized in Table 1. .Figure :2 • FPJll Pin Assignments Table 1 • FPJll Pin and Signal Summary P'm Signal Input/Output Definition/Fm.ction 2-9 32-39 DAL < 15:00> input/o';tput Data lines-Transfer data; control, and status information between the DCll1 and the FPJ11. 13-16 AIO<3:0> input Address input/output-Transfers control signals to indic(:lte the type of DCJll cycle being performed. 17,18 ADDR< 1:0> input Address-The two least significant bits of the DCJlladdress used to determine the FPJl1 function during GPreaa and CP write cycles. 19 INIT input Initialize-Initializes the FPJl1 and clears the floating-point status register. 1-324 COnfidential i and Proprietary - Input/Output ~tion/FunctioQ. 20 input Stretch control-Used to enable the samplingo~the abort condition and clear the initialization condi· tion. 21 input Abort-..:indicates a noncompletion of the ctlt1'ent Cycl~ to the FPJU; 22 input Acknowledge-Enables the transfer of the FPJll output data onto DAL< 15:00 > . Pin 23 Signal DV input Data valid--:J\n ~~~fi()u~strobe from the sys- tem "!:nterla:te 'i,1~e«to .1~tct1 iQPut data dur4ig stretchedrellds and general purpose write ~: 24 STRB S~be-Atimipg~ign.al f~!ll·tllc::. DCJll used to input and to indicate the end of input latch ~e. 25 theru:mc input PredecQde""":lndicates .that an instruction is being . decoded. input Address latch enable-A timing signal us~ to latch the AlO<3;0> and A.DDR<1:0> inputs at lowto-high tnmsition and to read cache data at high-to19W .transition. output Floa~"point accelerator opetation-Asserted to inforinthe syStem intedace.of Write cycles that use >"~. 26 ALE 27 FPJll data. 28 FPASTL 30 FPARDY 31 FPAFPE output 10 eLK input 11 TEST input Test"","":Used during manufacturing test only. 1,29 Voo input Voltage-P9Wer supply voltage. 12,40 Vss input Ground-Gro\lnd"refere:nce: output Fia.tipg-point ..al:celenttor '~y-Indi~tes . the FPJll output data iSl'ellJdyfot;t:mlls£.:r. . Floating·point accelerator floating-point exception-Assertedto inform the DCJll of a floatingwint ~Ptiop~tipn. . Confidential and Proprietary ----- -.-----.--.--------~--.~--.----.--'.-"-.-----.--~.---- 1-325 - n.._I!.;;...~.L _ •• cR!llllllllilry Data Lines . . .. . Data lines (DAL < 15,00 > )-These lines are bidirectional I/O lines used for data com'munication witlnhe DeJll. System Control OOc::k (CLK)-Basic clock input to theFPJll. Address input/output (A10 < 3:0 »-The AIO < 3:0> lines indicate to the FPJll the type of I/O cycle as described in Table 2. 18ble 2 • FPJU Addtess inPUt/Output Code Assignments AIOIiae 3 2 Cydetype 1 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 1 0 X 1 0 X X X X 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 Non-I/O mictocycle (Non 10) General purpose read (GP Read) Not used Instruction stream read request (I Read request) Read-modify-Write (RMW) Data stream read (D Read) Instruction stream read demand (I Read demand) Not used General purpOse word write (GP Write) Not used External word write (Write) X=either lor 0 Addtesslines(ADDR < 1:0> )-The ADDR < 1:0> lines contain the two least significant bits of the Dqll address. They are used by the FPJll to decode the type ofgeneraI purpose (GP) read and write cycles as described in Table 3. 18ble 3 • FPJU GP Read and Write Address Code Assignments ADDRLine 1 0 Cycle Function GP Read cycle o o 0 Read powerupoptions 1 Read data from the FPJll 1 1 0 1 Read powerup options and clear floating-point status register Read floating-point exception code and clear floating-point exception signal GP Write Cycle 1 1-326 1 Load data into the FPJll Confidential and Proprietary - Address latch enable (ALE)-The low-to-high transition of this signal is used· to latch the information from the: AID < 3:0> and ADDR < 1:0> lines. The high-ta-low tritriSition is: used to the latch cache-hit input data to the FPJll. 'The polarity of this signal is inverted from,the ocJn output. Strobe (STRB)-The high-to-Iow transition of this signal indicl,l.t~s the ,~dof Ii DCJ1~cycle. During FPJU read cycles, the STRB signal indicates that data was loaded by either the ALE or DV signal. The low-to-high transition is used to sample the'PRl'5'e signal. ~,po~rity ofthissigpalis . inverted from the nCJu output. . ' Ptedecode(PBl)C)-This signal indicates to the FPJll that ~iDCJl1 i$''initiating ihstruction decode. . , ' . /. Stl'etm control (SCTt)-this signal enables.the samplingof.tPeAUOftT llne by 0-e FPJ]J. during a DCJll stretched I/O cycle. The low-to-high transition of scTtis'~so ~ed after the negation of the !NIT signal to cleltttheil}itf~2;ationcOtiditi6ti~.. .... . "~', . . .......i '.' . . ' Abott ' lines. The DV signal is used by the FPJU to latch inJ;lUt data duringGP write or stretched FPJU read cycles. Aclmowledge (ACK)-This signal is used to enable the operation of the FPIll output drivers. The low to high transition of ACK indicates that output data ha.sheen.Jatched:rh~, FPA RDY signal is then deasserted by the FPJU. . Initia1ize (INIT)-This signal initia1i~theFPJU andclear$the~Ps re~ster.·Thepolarity of this signal is inverted from the DCJ11 input. ... r~ Output~. ...... . .. FPA ope!ate (FPA OP)-Thissigr)al is asserted by the FPJll to iQf9rmthe system interlace that data for the nextwrite ,cycle will bepl'OVided by~he FPJll.The:fi5A ($p sigfilllisvalid by the assertion of the ALE signal for DeJlI bus write cycles; It is also asse~J;ed during GP read cycles that read the system powerttp optioIl.s,toindicate tPe presence of an FPJU.inthe system. FPA ~ .(i'iPA S'tC)-This signal is asserted by the FPJll to stall the DCJR It should be OR gated into the DCJlI DMRinput.The system interface must assert the CONT signal to the DCJll after the negation of FPA STL to restart the DCJU.~ FPA floating-point exception (pPA FPE)-This signal is asserted by the FPJl1 to indicate that the last completed floating-point instruction hadcausoo aqexc~.. The system interface must assert the CaNT signal to the DCJ 11 without performing the bus write cycle. The FPA FPE signal is cleared by a GP read operation of the floating-point exception code cycle. This cycle is described in the architecture section. FPA ready (FPA RDy)-:']thissigtl4ll is asserted by the fPAto~catetbat.9utputda,~isready. The ACK signal must be asserted trom the systeDl;QlterfaceQurinfj Gp;read,.cydes be~ore thefPJ 11 will assert the FPA RDY signat.l'be FPARDY signal may be ~ priQrto ACK fOr'wnte cycles. The low-to-high transition of Ae'KnegatestheFPJ\ RDy~gnal. ItwULnot bereassel.'t~d until after completion of the current write or GP read cycle. Confidenti~ and Prop~ 1-327 - Miscellaneous TeSt (TEST).....This signal is ~erved £or use by the manufacturer; . It is puHedup internally to the inactive state. Power (VDD)-The 5-Vdc power supply. Ground (Vss)--Groundreference . • ArclUtect't1re SUDlI11aI'Y ;The FPJll architectural configuration, shown in Figure 3, contains six. user-addressable 64-bit floating-point accumulators (ACO-AC05), a floating-point status (FPS) register and a floating-point exceptioQ code (FEC). register. The FPll architecture also includes .a floatiQg-point exception address (FEA) registerthat is implemented in the DCJll. The FPJll opera~es on single-precision (F) a~d doublc-precisiol1 (D) floatiQg-point, and 16- and 32bit integer data. Single-precision format uses the··32 most sigriificant bits of the.floating-point acCuniulators and produces·· 8-decinial-digit precision. DoUble-precision format produ.ces 17decinial-digit precision. . r------------------~~ .. 64.BIT . I I ACCUMULATOR. ~ I 3 2·BIT ACCUMULATOfl I I I I I I ~ . ,.' FPP EXCEPTION CODE , REGISTER ACO I AC1 r-- FPP STATUS REGISTER I AC2 II AC3 I AC4 I AC5 FlOAT,ING POINT ARITHMETIC AND COIolVERSION UNIT I I I , , " T~!.O~T.!..R~E'::~ _ _ _ _ _ _ _ _ _ ;.... ~ . L~o~ I I I I I/O BUS I I I I ,I I I I CENTRAL PROCESSOR ARITHMETIC AND LOGICAL UNIT I I I .J ~ H '--- MEMORY CPU PROC!;&I)OR .. '\ STATUS CPU GENERAL REGISTER I PROGRAM POINTER ;(0 LAST INSTRUCTION CAUSING EXCEPTION Figure J·PPJ11 Architectural Configuration Operational Units The FPJl1 consists of two main functional units. The execution unit (EB) consists'of the fraction, exponent, and sign processors; The bus interface unit (BIU} controls all interface functions between the EU-andDCJll system. Both units contain independent control sequencers that intetacttoallow possiblepefiormance impl'tivement through parallel operation of the I/O operations in the BIU and instruction execution in the EU. The BIU receives all instruction stream data and decodes instructions in parallel with the DC] 11. Support microcode in the DCJll initiates all I/O cycles required by the FPJll. On completion of the support microcode, the DC]l1 proceeds to the next instruction. Subsequent integer instructions can proceed without FPJl1 intervention. For subsequent load class floating-point instructions, the 1-328 Confidential and Proprietary - 'FfJl1 BID can support the overlap of operand data loading while the EU completesl!Xecuti,on of the previous instruction; For subSC'1uent store class floating-point instructiOIi, the DQl n prbceeds to the bus write cycle and then waits for the FPJll to provide write data or to signal an exception by the FPA FPE input. Floating-point Data .Forrna~.. '. . '.' . . . . . ..... A Boating-point number may be defin~as having t.he form ( + or - )(2K) X £, where K is an integer and £is a fraction. For a nonzeronumbet;K anMare determined by imposing. the condition lh ± < f 1. The fractional part (f) of the number is then normalized. For the number 0, f is assigned the value 0 and the value of K is indeterminate. Thei pP]l1floating"point data fc:lJ:tiUlts are derived from: this represeomtiotifor floating-point numbers. Two types offloating-pointd~taare J?rovided. Ins§Peprecision, or fl~tingmOde, the data is 32 bits long. In double precision, or double mode, the data is &fbits long. Sign magnitude notation is used. . Nonzero Floating-point Numbers The fractional part (f) is assumed to be binary norttl;ilized, SO that i~s ~tsigt:Uficax:¢.bit must be 1. Uris 1 is thehi

Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.6
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c041 52.342996, 2008/05/07-21:37:19
Creator Tool                    : HardCopy
Modify Date                     : 2018:07:11 14:10:25-07:00
Create Date                     : 2018:07:11 13:08:04-07:00
Metadata Date                   : 2018:07:11 14:10:25-07:00
Producer                        : Adobe Acrobat 9.0 Paper Capture Plug-in
Format                          : application/pdf
Title                           : Scanned Document
Document ID                     : uuid:d88dc764-d69d-6f41-96a6-7f08d6e72252
Instance ID                     : uuid:2a3b3025-6a58-d041-8070-99430acfc40a
Page Layout                     : SinglePage
Page Count                      : 992
Creator                         : HardCopy
EXIF Metadata provided by EXIF.tools

Navigation menu