While reasonable efforts have been made to assure the accuracy of this document,
Motorola, In c. assume s no l iabilit y result ing fro m any omis sions in this document, or from
the use of the information obtained therein. Motorola reserves the right to revise this
document and to ma ke c hanges from time to ti me in the content hereof without ob li ga ti on
of Motorola to notify any person of such revision or changes.
No part of this material may be reprod uced or copied in any ta ngible medium, or stored in
a retrieval system, or transmitted in any form, or by any means, radio, electronic,
mechanical, photocopying, recording or facsimile, or otherwise, without the prior written
permission of Motorola, Inc.
It is possibl e tha t th is pu bli cation may c ontai n refer ence t o, or info rmatio n a bout Motoro la
products (machines and programs), programming, or services that are not announced in
your country. Such refere nces or informat ion must not be construed to mean that Moto rola
intends to announce such Motorola products, programming, or services in your country.
Restricted Rights Legend
If the documentation contained herein is supplied, directly or indirectly, to the U.S.
Government, the following notice shall apply unless otherwise agreed to in writing by
Motorola, Inc.
Use, duplication, or disclosure by the Government is subject to restrictions as set forth in
subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at
DFARS 252.227-7013.
Motorola, Inc.
Computer Group
2900 South Diablo Way
Tempe, Arizona 85282
Preface
This manual provides board level information and detailed ASIC chip information
including register bit descriptions for the MVME172 Embedded Controller. The
information contained in this manual applies to the following MVME172 models:
This manual is intended for anyone who wants to program these boards in order to design
OEM systems, supply addi ti onal capability to an exi st ing compatible system, o r wor k i n a
lab environment for experimental purposes.
A basic knowledge of computers and digital logic is assumed.
To use this manual, you should be familiar with the publications listed in Related
Documentation below.
Manual Terminology
Throughout this man ual, a conven tion is used whi ch precedes data and addr ess parameter s
by a character identifying the numeric format as follows:
$dollarspecifies a hexadecimal character
%percentspecifies a binary number
&ersandspecifies a decimal number
For example, “12” is the decimal number twelve, and “$12” is the decimal number
eighteen.
Unless otherwise specified, all address references are in hexadecimal.
An asterisk (*) f ollowing the signal name for s ignals which are level significant deno tes that
the signal is true or valid when the signal is low.
An asterisk (*) f ollowing the signal name for s ignals which are edge significant deno tes that
the actions initiated by that signal occur on high to low transition.
In this manual, assertion and negation are used to specify forcing a signal to a particular
state. In particular, assertion and assert refer to a signal that i s acti ve or t rue; ne gation and negate indicate a sign al that i s inact ive or false . Thes e terms a re u sed inde pendent ly of t he
voltage level (high or low) that they represent.
Data and address sizes are defined as follows:
❏A byte is ei ght b it s, numbered 0 through 7, with bit 0 bei ng the least significant.
❏A word is 16 bits, number ed 0 t hr ough 1 5, wit h bi t 0 be in g the lea st si gni fi can t.
❏A longword is 32 bits, numbered 0 through 31, with bit 0 being the least
significant.
The terms contr ol bit, s tatus bit,true, and false are used ex tensi vely i n thi s document . The
term control bit is used to describe a bit in a register that can be set and cleared under
software control. The term true is used to indicate that a bit is in the state that enables the
function it controls. The term false is used to i ndicate that the bit is in the state that disable s
the function it controls. I n all table s, the term s 0 and 1 are us ed to desc ribe the act ual value
that should be wri tten to the bit, or the value that i t yi elds whe n read . The te rm st atus b it is
used to describe a bit in a register that reflects a specific condition. The status bit can be
read by software to determine operational or exception conditions.
Recent Updates
This edition of the MVME172 VME Embedded Controller Progr ammer’s Reference Guide
incorporates the following changes:
❏The ‘‘MVME172 Version Regis ter‘ ‘ sect ion has an impr oved des cript ion of the
function of bit V6.
❏The ‘‘PROM Access Time Cont rol Reg ist er ’’ and ‘‘Flash Access Time Control
Register ’’ have clarif ication relating to bus speeds and access ti mes with the
MVME172’s MC68060 processor.
❏In accordance wit h recent MCG prac tice, the ‘ ‘Related Document ation’’ sec tion
has been moved from the front of the document to a separate appendix.
The computer programs stored in the Read Only Memory of this device contain material
copyrighted by Motorola Inc., first published 1990, and may be used only under a license
such as the Licens e for Computer Pro grams (Article 14) contained in M otorola’s T erms and
Conditions of Sale, Rev. 1/79.
This equipment generat es, uses, and can radiate electro- magnet ic
!
WARNING
Motorola and the Motorola symbol are registered trademarks of Motorola, Inc.
All other product s ment io ned in this document are trademarks or regist ered trademarks of
their respective holders.
energy. It may cause or be susceptible to electro-magnetic
interference (EMI) if not i nstalled and used in a cabinet wi th
adequate EMI protection.
This manual provides programming information for the MVME172
Embedded Controller . Extensive programming information is prov ided for
the Application-Specific Integrated Circuit (ASIC) devices used on the
board. Reference information is included for the Large Scale Integration
(LSI) devices used on the board and so urces for a dditiona l informati on are
provided.
This chapter briefly describes the board level hardware features of the
MVME172 Embedded Controller. The chapter begins with a board level
overview and feat ur es list. Memory maps are next, and th e c hapter closes
with some general software considerations such as cache coherency,
interrupts, and bus errors.
and Memory Maps
1
All programmable registers in the MVME172 that reside in ASICs are
covered in the chapt ers on th ose ASICs. Cha pter 2 c overs t he VMEchip2,
Chapter 3 covers the MC2 chi p, and Chapter 4 covers the IP2 chip. Chapt er
5 covers the MCECC chip, used only on 200/300-Series MVME172.
Appendix A describes using interrupts. For those interested in
programmable register bit definitions and less interested in hardware
functionality, focus on Chapters 2, 3, 4, and 5. In some cases, however,
Chapter 1 gives rela ted background information.
Overview
The MVME172 is based on the MC68060 or MC68LC060
microprocessor. The MVME172 is available in various versions with the
features listed in Table 1-1 on page 1-3. A “No VMEbus” option is also
available.
The I/O connection for the 200/300-Se ries MVME172 is provided through
four RJ-45 front panel connectors.
1-1
1
Board Description and Memory Maps
The I/O connection f or t he 400/500-Series serial ports is prov ide d by t wo
DB-25 front panel I/O connecto rs. The I/O i s connected t o the VMEbus P2
connector. The main board is con nected through a P2 transi tion board and
cables to transition boards. The Series 400/500 MVME172 supports the
transition boards MVME712-12, MVME712-13, MVME712M,
MVME712A, MVME712AM, and MVME712B (referred to in this
manual as MVME712x, unless separately specified). These transition
boards provide configuration headers, serial port drivers and industry
standard connectors for the I/O devices. The MVME712 series transition
boards were designed to support the MVME167 boards, but can be used
on the MVME172 by following some special precautions. (Refer to the
section on the Serial Communications Interface in the MVME172
installation and use manual furnished with your 400/500-Series
MVME172, for more information.)
The VMEbus interface is pr ovided by an ASIC call ed the VMEchip2. The
VMEchip2 includes two tick timers , a watchdog timer, programmable map
decoders for the master and slave interfac es, and a VMEbus to/fr om local
bus DMA controller, a VMEbus t o/from local bus non-DMA pr ogrammed
access interface, a VMEbus interrupter, a VMEbus system cont roller, a
VMEbus interrupt handler, and a VMEbus requester.
Processor-to-VMEbus t ransfers can be D8, D16, or D32. VMEchip2 DMA
transfers to the VMEbus, howev er, can be D16, D32, D16/BLT, D32/BLT,
or D64/MBLT.
The MC2 ch ip ASIC provides four tick timers, the interface to the LAN
chip, SCSI chip, s erial port c hip, BBRAM, the pro grammable interf ace for
the DRAM and/or SRAM mezzanine board, and Flash write enable.
The IndustryPack Interface Controller (IP2 chip) ASIC provides control
and status information, including DMA control, for up to four single size
IndustryPacks (IPs) or up to two double size IPs that can be plugged into
the MVME172 main module.
1-2Computer Group Literature Center Web Site
The MCECC chip Memory Controller ASIC on the 200/300-Series
MVME172 provides the programmable interface for the ECC-protected
16 MB DRAM mezzanine board.
Table 1-1. MVME172 Features Summary
Feature200/300-Series400/500-Series
Overview
1
Processor6
0 MHz 32-bit MC68060 microprocessor, or 64 MHz 32-bit
MC68LC060 microprocessor
DRAM4MB, 8 MB, or 16 MB of shared
DRAM with parity protection on a
mezzanine module, or up to 64 MB of
ECC-protected DRAM
SRAM128 K
B of SRAM with battery
4MB, 8 MB, or 16 MB of shared
DRAM with no protection
512KB of SRAM with battery backup
backup
PROM/
EPROM
Sockets
FlashOne Intel 28F016SA 2M x 8 Flash memory device (2MB Flash memo ry
NVRAM and
TOD
TimersFour 32-bit Tick Timers and Watchdog Timer (in the MC2 Chip ASIC) for
Two JEDEC standard 32- pin DIP
PROM sockets
total) with write protection (optional)
8K by 8 Non-Volatile RAM (NVRAM) and Time-of-Day (TOD) clock with
battery backup
periodic interrupts
Two 32-bit Tick Timers and Watchdog Timer in the VMEchip2 ASIC) for
periodic interrupts
ne JEDEC standard 32-pin
O
PLCC EPROM socket (EPROMs
may
be shipped separately)
Software
Interrupts
I/O Four serial ports, both EIA-232-D RJ-45Tw
http://www.mcg.mot.com/literature1-3
Eight software interrupts (for MVME172 versions that have the VMEchip2)
Serial port controller
Optional Small Computer Systems Interface (SCSI) bus interface with 32-bit
local bus burst Direct Memory Access (DMA) (NCR 53C710 controller)
Optional LAN Ethernet transceiver interface with 32- bit lo cal b us DMA (Inter
82596CA controller)
o serial ports; one EIA-232-D
DCE, one EIA-232-D DCE/DTE or
EIA-530 DCE/DTE or EIA-42
DCE/DTE or EIA-485
s (Zilog Z85230)
1
Board Description and Memory Maps
Table 1-1. MVME172 Features Summary
Feature200/300-Series400/500-Series
Two MVIP IndustryPack
interfaces with DMA
VMEbus
interface
(boards may be
special ordered
without the
VMEbus
interface)
Switches Two pushbutton switch e s
Light-Emitting
Diodes (LEDs)
VMEbus system controller functions
VMEbus interface to local bus (A24/A32,
D8/D16/D32 (D8/D16/D32/D64 BLT) (BLT = Block Transfer)
Local bus to VMEbus interface (A16/A24/A32, D8/D16/D32)
VMEbus interrupter
VMEbus interrupt handler
Global CSR for interprocessor communications
DMA for fast local memory - VMEbus transfers (A16/A24/A32, D16/D32
(D16/D32/D64 BLT)
Four LEDs: FAIL, RUN, SCON,
FUSES (LAN power)
Four MVIP IndustryPack
interfaces with DMA
(ABORT and RESET)
Eight LEDs: FAIL, STAT, RUN,
SCON, LAN, FUSE (LAN power),
SCSI, and VME
Requirements
These boards are d esigned to confo rm to the requirement s of the foll owing
documents:
Figure 1-2 on page 1-7 is a general block diagram of the 200/300-Series
MVME172. Figure 1-2 on page 1-7 is a general block diagram of the
400/500-Series MVME172.
Functional Description
This section covers only a few specific features of the MVME172.
A complete functional description of the major blocks of the MVME172
Embedded Controller is provided in your MVME172 installation and use
manual.
No-VMEbus-Interface Option
Block Diagrams
1
The MVME172 can be operated as an embedded controller without the
VMEbus interface. For this option, the VMEchip2 and the VMEbus
buffers are not popul ated. Als o, the bus gra nt daisy chain and the interr upt
acknowledge daisy chain have zero-ohm bypass resistors installed.
To support this feature, certa in logic in the VMEchi p2 has been dupl icated
in the MC2 chip. Table 1-2 on page 1-8 defines the location of the
redundant logic. This logic is inhibited in the MC2 chip if the VMEchip2
is present. The enables for these functions are controll ed by software and
MC2 chip hardware initialization.
Note that an MVME 172 ordered wi thout the VMEbu s interf ace is shippe d
with Flash memory blank (the factory uses the VMEbus to program the
Flash memory with debugger code). To use the 172Bug package,
MVME172Bug, in such models, be sure that the General Purpose
Readable Jumpers Header is configured for the EPROM memory map.
Refer to Chapters 3 and 4 of your MVME172 install atio n and use manual
for further details.
http://www.mcg.mot.com/literature1-5
1
Board Description and Memory Maps
21009702
2MB
Flash
Optional
4 Serial Ports
Optional
RJ-45 Front
Panel
SCSI
Ethernet
EIA-232
Transceivers
Connector
Peripherals
Panel SCSI
68-pin Front
Panel
Connector
Transceiver
DB-15 Front
Serial
Dual 85230
I/O Controllers
MC2 chip
Sockets
EPROM
Two 32 -pin
SCSI
53C710
Coprocessor
Ethernet
Controller
i82596CA
M48T58
Battery Backed
8KB RAM/Clock
4,8,16,32,64MB
4,8,16MB Parit y
w/Battery
128KB SRAM
Memory Array
ECC DRAM
Memory Array
Configuration Dependent
Array
DRAM Memory
A32/D32
I/O
IndustryPack
Optional
VMEbus
A32/24:D64/32/16/08
Figure 1-1. 200/300-Series MVME172 Block Diagram
1-6Computer Group Literature Center Web Site
2 Channels
Master/Slave
IP2
Interface
IndustryPack
MPU
Optional
MC68LC060
VMEbus
Interface
VMEchip2
MC68060
Optional
Functional Description
1
2038 9706
2MB
Flash
or
Via P2 and
2 Serial Ports
Transition Module
DB-25 Front Panel
SCSI
Peripherals
Optional
Ethernet
Transceiver
Via P2 and
connections are
Transition Modules
Via P2 and
connections are
Transition Modules
EIA-232
Transceivers
Serial
Dual 85230
I/O Controller s
MC2 chip
Socket
1 PLCC
SCSI
53C710
Coprocessor
Ethernet
Controller
i82596CA
A32/D32
M48T58
Battery Backed
8KB RAM/Clock
4,8,16MB Parity
w/Battery
512KB SRAM
Memory Array
Array
DRAM Memory
Configuration Dependent
I/O
4 Channels
IndustryPack
Optional
VMEbus
Master/Slave
A32/24:D64/32/16/08
Figure 1-2. 400/500-Series MVME172 Block Diagram
http://www.mcg.mot.com/literature1-7
IP2
Interface
IndustryPack
MPU
Optional
MC68LC060
VMEbus
Interface
VMEchip2
MC68060
1
Board Description and Memory Maps
Table 1-2. Redundant Functions in the VMEchip2 and MC2 Chip
5. Bit numbering for VMEchip2 and MC2 chip has a one-toone correspondence.
ABORT switch interrupt control. Implemented also in the
6.
VMEchip2, but with a diff erent bit or ganiza tion ( refe r to the
VMEchip2 description i n Ch apter 2). In the MVME172, the
ABORT switch is wired to the MC2 chip, not the VMEchip2.
7. The SRAM and PROM decoder in the VMEchip2 (ver sion
2) must be disab led by software before any accesses are made
to these address spaces.
8. 32-bit prescaler. The prescaler can also be accessed at
$FFF40064 when the optional VMEbus is not enabled.
1-8Computer Group Literature Center Web Site
VMEbus Interface and VMEchip2
The local bus to VMEbus inte rface an d the VMEbus t o loca l bus int erface
are provided by the VMEchip2. The VMEchip2 can also provide the
VMEbus system controll er functions. Refer to the VMEchi p2 in Chapter 2
for detailed programming information.
Memory Maps
1
Note that th e
inputs to the VMEchip2 which are located at $FFF40088 bits 7-0 are not
used. The
MC2 chip ASIC at lo cation $FFF42043. The GPI inputs are integra ted into
the MC2 chip ASIC at location $FFF4202C bits 23-16.
Memory Maps
There are two points of view for memory maps: 1) the mapping of all
resources as view ed by local bus masters (local bus memory map), a nd 2)
the mapping of onboard resources as viewed by VMEbus masters
(VMEbus memory map).
The memory and I/O map s which are des cribed in the foll owing tab les are
correct for all local bus masters. There is some address translation
capability in the VMEchip2 . This allows multiple MVME172 modules on
the same VMEbus with diff erent virtual local bus maps as viewed by
different VMEbus masters.
ABORT switch logic in the VMEchip2 is not used. The GPI
ABORT switch interrupt is integrated into the
Local Bus Memory Map
The local bus memory ma p is split into different address spaces by the
transfer type (TT) signals. The local resources respond to the normal
access and interrupt acknowledge codes.
Normal Address Range
The memory map of devices that respond to the normal address range is
shown in the following tabl es. The normal addre ss range is define d by the
Transfer Type (TT) si gna ls on the local bus. On the MVME172, Transfer
Types 0, 1, and 2 define the normal address range. Table 1-2 is the entire
http://www.mcg.mot.com/literature1-9
1
Board Description and Memory Maps
map from $00000000 to $FFFFFFFF. Many areas of the map are
user-programmable, an d suggested us es are shown in th e table. The ca che
inhibit function is programmable in the MC68xx060 MMU. The onboard
I/O space must be marked cache inhibit and serialized in its page table.
Table 1-3 on page 1-10 further defines the map for the local I/O devices
for the 200/300-Series MVME172, and Table 1-4 on page 1-12 further
defines the map for the local I/O devices for the 400/500-Series
MVME172.
Table 1-3. 200/300-Series MVME172 Local Bus Memory Map
Notes1. Devices mapped at $FFF80000- $FFF9FFFF also appear at
$00000000- $001FFFFF when the ROM0 bit in the MC2
chip EPROM control register is high (ROM0=1). ROM0 is
set to 1 after ea ch reset. The ROM0 bit must be cl eared before
other resources (DRAM or SRAM) can be mapped in this
range ($00000000 - $001FFFFF).
The EPROM/Flash memory map is also controlled by the
EPROM size and by control bit V11 in the MC2 chip ASIC.
Refer to t he EPROM/Flash configuration tables in your
MVME172 installation manual for further details.
2. This area is user-programmable. The DRAM and SRAM
decoder is programmed in the MC2 chip, the local-toVMEbus decoders are programmed in the VMEchip2, and
the IP memory space is programm ed in the IP2.
3. Size is approximate.
1
4. Cache inhibit depends on the devices in the area mapped.
5. The EPROM and Flash are dynamica lly sized by the MC2
chip ASIC from an 8- bit p rivate b us t o the 32-bit MPU local
bus.
6. These areas are not decoded unless one of the
programmable deco ders is initia lized t o decod e this s pace. If
they are not decod ed and the local ti mer is enabled , an access
to this address range will generate a local bus time-out.
http://www.mcg.mot.com/literature1-11
1
Board Description and Memory Maps
Table 1-4. 400/500-Series MVME172 Local Bus Memory Map
Address Range
ProgrammableDRAM on boardD324MB-16 MBN2
ProgrammableSRAMD32128KB-2MBN2
ProgrammableVMEbus
Notes1. Reset enables the decoder for this space of the memory
map so that it will decode address spaces
$FF800000-$FF9FFFFF and $00000000-$003FFFFF. The
decode at 0 must be disabled in the MC2 chip bef ore DRAM
is enabled. DRAM is enabled with the DRAM Control
1-12Computer Group Literature Center Web Site
Memory Maps
Register at address $FFF42048, bit 24. PROM/Flash is
disabled at the low address space with PROM Control
Register at address $FFF42040, bit 20.
2. This area is user-programmable. The DRAM and SRAM
decoder is programmed in the MC2 chip, the
local-to-VMEbus decoders are programmed in the
VMEchip2, and the IP memory space is programmed in the
IP2 chip.
3. Size is approximate.
4. Cache inhibit depends on devices in area mapped.
5. The PROM and Flash are sized by the MC2 chip ASIC
from an 8-bit private bus to the 32-bit MPU local bus.
Because the device size is less than the allocated memory
map size for some entries, the device contents repeat for
those entries.
1
If jumper GPI3 is installed, the Flash device is accessed. If
GPI3 is not installed, the PROM is accessed.
6. The Flash and PROM are sized by the MC2 chip ASIC
from an 8-bit private bus to the 32-bit MPU local bus.
Because the device size is less than the allocated memory
map size for some entries, the device contents repeat for
those entries.
If jumper GPI3 is in stalled, the PROM is accessed. If GPI 3 is
not installed, the Flash device is accessed.
7. These areas are not decoded unless one of the
programmable decoders are initialized to decode this space.
If they are not decoded, an access to this address range will
generate a local bus time- out. The local bus timer must be
enabled.
http://www.mcg.mot.com/literature1-13
1
Board Description and Memory Maps
Table 1-5 below and Table 1-6 on page 1-18 describe the "Local I/O
Devices" portion of the local bus main memory ma p for the 200/300-Series
and 400/500-Series MVME172, respectively.
Table 1-5. 200/300-Series MVME172 Local I/O Devices Memory Map
Notes1. For a complete descripti on of the regi ster bits , refer to the
data sheet f or the specific chip. For a more detailed memory
map, refer to the following detailed peripheral device
memory maps.
2. The SCC is an 8-bit device locate d on an MC2 chip private
data bus. Byte access is required.
3. Writes to the LCSR in the VMEchip2 must be 32 bits.
LCSR writes of 8 or 16 bits terminate with a TEA signal.
Writes to the GCSR may be 8, 16 or 32 bits. Reads to the
LCSR and GCSR may be 8, 16 or 32 bits. Byte reads should
be used to read the interrupt vector.
4. This area does not return an acknowledge signal. If the
local bus timer is enabled, the access times out and is
terminated by a TEA signal.
5. Size is approximate.
1
6. Port commands to t he 82596CA must be wri tten as two 16bit writes: upper word first and lower word second.
7. Not used.
8. To use this area, the ECC mezzanine board must be
installed. If it is not installed, no acknowledge signal is
returned; if the local bus timer is enabled, the access times
out and is terminated by a TEA signal.
9.Repeats on 8KB boundaries.
http://www.mcg.mot.com/literature1-17
1
Board Description and Memory Maps
Table 1-6. 400/500-Series MVME172 Local I/O Devices Memory Map
Notes1. For a complete descripti on of the regi ster bits , refer to the
data sheet f or the specific chip. For a more detailed memory
map, refer to the following detailed peripheral device
memory maps.
2. The SCC is an 8-bit device locate d on an MC2 chip private
data bus. Byte access is required.
The data register of the Zilog Z85230 device which is
interfaced by the MC2 chip ASIC cannot be accessed. The
Zilog Z85230 has an indirect access mode to the data
registers which is functional and must be used.
3. Writes to the LCSR in the VMEchip2 must be 32 bits.
LCSR writes of 8 or 16 bits terminate with a TEA signal.
Writes to the GCSR may be 8, 16 or 32 bits. Reads to the
LCSR and GCSR may be 8, 16 or 32 bits. Byte reads should
be used to read the interrupt vector.
4. This area does not return an acknowledge signal. If the
local bus timer is enabled, the access times out and is
terminated by a TEA signal.
5. Size is approximate.
6. Port commands to the 82596CA must be written as two
16-bit writes: upper word first and lower word second.
7. Refer to th e Flash and PROM Int erface section i n the MC2
chip description in Chapter 3.
1-20Computer Group Literature Center Web Site
Detailed I/O Memory Maps
Tables 1-7 through 1-17 give the detailed memory maps for:
VMEchip2Table 1-7
MC2 chipTable 1-8
IP2 chipTable 1-9
IP2 chip Control and Status RegistersTable 1-10
MCECC chipTable 1-11
Z85230 SCC Register addressesTable 1-12
82596CA Ethernet LAN chipTable 1-13
53C710 SCSI chipTable 1-14
MK48T58 BBRAM/TOD clock Table 1-15
Memory Maps
1
BBRAM configuration areaTable 1-16
TOD clock Table 1-17
NoteManufacturers’ errata sheets for the various chips are
available by contacting your local Motorola sales
representative. A non-disc losure a greement ma y be requi red.
http://www.mcg.mot.com/literature1-21
1
Board Description and Memory Maps
Table 1-7. VMEchip2 Memory Map (Sheet 1 of 3)
VMEchip2 LCSR Base Address = $FFF40000
OFFSET:
16171819202122232425262728293031
10
14
18
1C
20
24
28
2C
30
0
4
8
C
SLAVE ADDRESS TRANSLATION ADDRESS 1
SLAVE ADDRESS TRANSLATION ADDRESS 2
ADDER
2
SLAVE ENDING ADDRESS 1
SLAVE ENDING ADDRESS 2
SNP
2
WP2SUP2USR2A322A24
BLK
BLK2PRGM2DATA
D64
2
2
2
16171819202122232425262728293031
MASTER ENDING ADDRESS 1
MASTER ENDING ADDRESS 2
MASTER ENDING ADDRESS 3
MASTER ENDING ADDRESS 4
MASTER ADDRESS TRANSLATION ADDRESS 4
MAST
D16
EN
MAST
WP
EN
GCSR GROUP SELECT
MAST
MAST
D16
WP
EN
EN
GCSR
BOARD SELECT
MASTER AM 3MASTER AM 4
MAST
MAST
MAST
EN
4
3
EN
EN
MAST
2
1
EN
16171819202122232425262728293031
WAIT
RMW
ROM
ZERO
DMA TB
SNP MODE
SRAM
SPEED
34
38
3C
40
44
48
TICK
2/1
TICK
IRQ 1
EN
CLR
IRQ
IRQ
STAT
VMEBUS
INTERRUPT
LEVEL
VMEBUS INTERRUPT VECTOR
DMA CONTROLLER
DMA CONTROLLER
DMA CONTROLLER
DMA CONTROLLER
This sheet continues on facing page.
1-22Computer Group Literature Center Web Site
SLAVE STARTING ADDRESS 1
SLAVE STARTING ADDRESS 2
SLAVE ADDRESS TRANSLATION SELECT 1
SLAVE ADDRESS TRANSLATION SELECT 2
ADDER
1
SNP
1
WP1SUP1USR1A321A24
MASTER STARTING ADDRESS 1
MASTER STARTING ADDRESS 2
MASTER STARTING ADDRESS 3
MASTER STARTING ADDRESS 4
Memory Maps
1
0123456789101112131415
BLK
BLK1PRGM1DATA
D64
1
1
1
0123456789101112131415
MAST
MAST
WP
D16
EN
IO2ENIO2
ARB
ROBN
DMA
TBL
INT
EN
WP
EN
MAST
DHB
DMA LB
SNP MODE
IO2
S/U
MAST
DWB
MASTER AM 2MASTER AM 1
IO2
IO1ENIO1
P/D
MST
FAIR
DMA
INC
VME
LOCAL BUS ADDRESS COUNTER
VMEBUS ADDRESS COUNTER
BYTE COUNTER
TABLE ADDRESS COUNTER
DMA TABLE
INTERRUPT COUNT
MPU
CLR
STAT
MASTER ADDRESS TRANSLATION SELECT 4
MAST
MAST
WP
D16
EN
D16
EN
MST
RWD
DMA
INC
LB
MPU
LBE
ERR
IO1
WP
EN
MASTER
VMEBUS
DMA
WRT
MPU
LPE
ERR
IO1
S/U
DMA
D16
MPU
LOB
ERR
EN
DMA
HALT
DMA
D64
BLK
MPU
LTO
ERR
ROM
SIZE
DMAENDMA
DMA
DMA
ERR
BLK
LBE
ROM BANK B
TBL
DMA
AM
5
DMA
LPE
ERR
SPEED
DMA
FAIR
DMA
AM
4
DMA
LOB
ERR
DMA
AM
3
DMA
LTO
ERR
DM
RELM
ROM BANK A
DMA
AM
2
DMA
TBL
ERR
SPEED
DMA
VMEBUS
DMA
AM
1
DMA
VME
ERR
1360 9403
0123456789101112131415
DMA
AM
0
DMA
DONE
This sheet begins on facing page.
http://www.mcg.mot.com/literature1-23
1
Board Description and Memory Maps
Table 1-7. VMEchip2 Memory Map (Sheet 2 of 3)
VMEchip2 LCSR Base Address = $FFF40000
OFFSET:
4C
50
ARB
BGTO
EN
DMA
TIME OFF
DMA
TIME ON
16171819202122232425262728293031
VME
GLOBAL
TIMER
TICK TIMER 1
54
58
5C
60
64
68
6C
70
74
78
7C
80
84
88
SCONBRD
AC
AB
FAIL
IRQ
IRQ
EN
EN
IRQ
IRQ
31
30
CLR
CLR
IRQ
IRQ
31
30
VECTOR BASE
REGISTER 0
SYS
FAIL
SYS
FAIL
IRQ
EN
IRQ
29
CLR
IRQ
29
AC FAIL
IRQ LEVEL
VME IACK
IRQ LEVEL
SW7
IRQ LEVEL
SPARE
IRQ LEVEL
FAIL
STAT
MWP
BERR
IRQ
EN
IRQ
28
CLR
IRQ
28
PURS
STAT
PE
IRQ
EN
IRQ
27
CLR
IRQ
27
CLR
BRD
PURS
FAIL
STA T
OUT
IRQ1E
TIC2
IRQ
IRQ
EN
EN
IRQ
IRQ
26
25
CLR
CLR
IRQ
IRQ
26
25
ABORT
IRQ LEVEL
DMA
IRQ LEVEL
SW6
IRQ LEVEL
VME IRQ 7
IRQ LEVEL
VECTOR BAS E
REGISTER 1
RST
SW
EN
TIC1
IRQ
EN
IRQ
24
CLR
IRQ
24
SYS
RSTWDCLR
VME
DMA
IACK
IRQ
EN
IRQ
23
CLR
IRQ
23
MST
SYS
IRQ
FAIL
EN
LEVEL
TO
IRQ
EN
IRQ
22
CLR
IRQ
22
WD
CLR
CNT
SIG3
IRQ
EN
IRQ
21
CLR
IRQ
21
SYS FAIL
IRQ LEVEL
SIG 3
IRQ LEVEL
SW5
IRQ LEVEL
VME IRQ 6
IRQ LEVEL
AC
FAIL
LEVEL
WD
TO
STA T
SIG2
IRQ
EN
IRQ
20
CLR
IRQ
20
ABORT
LEVEL
TO
BF
EN
SIG1
IRQ
EN
IRQ
19
CLR
IRQ
19
TICK TIMER 1
TICK TIMER 2
TICK TIMER 2
WD
WD
SRST
RST
LRST
ENWDEN
SIG0
LM1
IRQ
IRQ
EN
IRQ
IRQ
18
CLR
CLR
IRQ
IRQ
18
MST WP ERROR
IRQ LEVEL
SIG 2
IRQ LEVEL
SW4
IRQ LEVEL
VME IRQ 5
IRQ LEVEL
GPIOEN
EN
17
17
PRE
16171819202122232425262728293031
LM0
IRQ
EN
IRQ
16
CLR
IRQ
16
8C
1-24Computer Group Literature Center Web Site
This sheet continues on facing page.
VME
ACCESS
TIMER
LOCAL
BUS
TIMER
COMPARE REGISTER
COUNTER
COMPARE REGISTER
COUNTER
OVERFLOW
COUNTER 2
WD
TIME OUT
SELECT
CLR
OVF
2
COC
EN
Memory Maps
1
0123456789101112131415
PRESCALER
CLOCK ADJUST
TIC
COC
TIC
EN
2
2
OVERFLOW
COUNTER 1
CLR
OVF
1
EN
EN
1
1
SCALER
SW7
IRQ
EN
IRQ
15
SET
IRQ
15
CLR
IRQ
15
SW6
IRQ
EN
IRQ
14
SET
IRQ
14
CLR
IRQ
14
P ERROR
IRQ LEVEL
IRQ LEVEL
IRQ LEVEL
VME IRQ 4
IRQ LEVEL
GPIOO
SW5
IRQ
EN
IRQ
13
SET
IRQ
13
CLR
IRQ
13
SIG 1
SW3
SW4
IRQ
EN
IRQ
12
SET
IRQ
12
CLR
IRQ
12
SW3
IRQ
EN
IRQ
11
SET
IRQ
11
CLR
IRQ
11
SW2
SW1
SW0
IRQ
IRQ
EN
EN
IRQ
IRQ
10
9
SET
SET
IRQ
IRQ
10
9
CLR
CLR
IRQ
IRQ
10
9
IRQ1E
IRQ LEVEL
SIG 0
IRQ LEVEL
SW2
IRQ LEVEL
VMEB IRQ 3
IRQ LEVEL
GPIOIGPI
IRQ
EN
IRQ
8
SET
IRQ
8
CLR
IRQ
8
SPAREVME
EN
IRQ
7
MP
IRQ
EN
IRQ7
EN
IRQ
6
REV
EROM
VME
IRQ6
EN
IRQ
5
TIC TIMER 2
IRQ LEVEL
LM 1
IRQ LEVEL
SW1
IRQ LEVEL
VME IRQ 2
IRQ LEVEL
DIS
SRAM
VME
IRQ5
EN
IRQ
DIS
MST
VME
0123456789101112131415
VME
VME
IRQ4
IRQ3
EN
EN
IRQ
3
NO
EL
BBSY
IRQ
2
TIC TIMER 1
IRQ LEVEL
IRQ LEVEL
IRQ LEVEL
VME IRQ 1
IRQ LEVEL
DIS
BSYTENINT
4
IRQ2
EN
IRQ
LM 0
SW0
1
VME
IRQ1
EN
IRQ
0
DIS
BGN
1361 9403
This sheet begins on facing page.
http://www.mcg.mot.com/literature1-25
1
Board Description and Memory Maps
Table 1-7. VMEchip2 Memory Map (Sheet 3 of 3)
VMEchip2 GCSR Base Address = $FFF40100
OffsetsBit Numbers
VME
-bus
Local
Bus
1514131211109876543210
00Chip RevisionChip ID
24
LM3LM2LM1LM0SIG3SIG2SIG1SIG0RSTISFBFSCONSYS
48General Purpose Control and Status Register 0
6CGeneral Purpose Control and Status Register 1
810General Purpose Control and Status Register 2
A14General Purpose Control and Status Register 3
C18General Purpose Control and Status Register 4
E1CGeneral Purpose Control and Status Register 5
A summary of the IP 2 chip CSR registers i s shown in Table 1 -10. The CSR
registers can be accessed as bytes, words, or longwords. They should not
be accessed as lines. They are shown in the table as bytes.
1-28Computer Group Literature Center Web Site
Memory Maps
Table 1-10. IP2 Chip M emory Map - Control and Status Registers
IP2 Chip Base Address = $FFFBC000
Register
Offset
$00CHIP ID00100011
$01CHIP
$02RESERVED00000000
$03VEC T O R BA S EIV7IV6IV5IV4IV3IV2IV1IV0
NoteA bug in MVME172s that have MC2 chip revisi on $01 does
Port B Control$FFF45001
Port B Data$FFF45003
Port A Control$FFF45005
Port A Data$FFF45007
Port B Control$FFF45801
Port B Data$FFF45803
Port A Control$FFF45805
Port A Data$FFF45807
not allow the data regis ters to be accessed dir ectly. You must
access them indirectly via the SCC chip. The software must
send a command to the control register that tells it that the
next thing read or written to the control register will go to the
data register. The fol lowing two macros are examples:
dev_addris a pointer to the base address of the SCC.
SCCR0 is the offset to the SCC control register #0.
$FFF46000Upper Command WordLower Command Word
$FFF46004MPU Channel Attention (CA)
Data Bits
Notes1. Refer to the MPU Port and MPU Channel Attention
registers in Chapter 3.
2. After reset you must write the System Configuration
Pointer to the command registers prior to writing to the MPU
Channel Attention register. Writes to the System
Configuration Pointer must be upper word first, lower word
second.
NoteAccesses may be 8-bit or 32-bit, but not 16-bit.
http://www.mcg.mot.com/literature1-39
1
Board Description and Memory Maps
BBRAM/TOD Clock Memory Map
The MK48T58 BBRAM (also called Non-Volatile RAM or NVRAM) is
divided into six areas as shown in Table 1-15. The first five areas are
defined by softwar e, while the si xth ar ea, the time-o f-day ( TOD) cloc k, is
defined by the chi p har d war e. The fi rst area is reserved for user data. The
second area is used by Mot orola n etworki ng sof tware. Th e thir d area may
be used by a n operat ing syst em. The fou rth are a is us ed by t he MVME172
board debugger (M VME172Bug). The fifth a rea, detailed in Table 1-16, is
the configuration area. The sixth area, the TOD clock, detailed in Table
1. Four bytes are reserved for the revision or version of this structure.
This revision is stored in ASCII format, with the first two bytes
being the major version numbers and the last two bytes being the
http://www.mcg.mot.com/literature1-43
1
Board Description and Memory Maps
minor version numb ers. For example, i f the versi on of this str ucture
is 1.0, this field contains:
0100
2. Twelve bytes are reserved for the serial number of the board in
ASCII format. For example, this field could contain:
000000470476
3. Sixteen bytes are reserved for the board ID in ASCII format. For
example, for an MVME172 boar d wit h MC6806 0, SCSI, Ethernet,
4MB DRAM, and 512KB SRAM, this field contains:
MVME172-
(The 12 characters are followed by four blanks.)
xxx
4. Sixteen bytes are reserved for the printed wiring assembly (PWA)
number assigned to this board in ASCII format. This includes the
01-W prefix. This is for the main logic board if more than one board
is required for a set. Additional boards in a set are defined by a
structure for that set. For example, for an MVME172 board with
MC68060, SCSI, Ethernet, 4MB DRAM, and 512KB SRAM, at
revision A, the PWA field contains:
01-W318xB01A
(The 12 characters are followed by four blanks.)
5. Four bytes contain the speed of the board in MHz. The first two
bytes are the whole number of MHz and the second two bytes are
fractions of MHz. For example, for a 60.00 MHz board, this fiel d
contains:
6000
6. Six bytes are reserved fo r the Ethernet address. The addre ss is stored
in hexadecimal format. (Refer to the detailed description earlier in
this chapter.) If the board does not support Ethernet, this field is
filled with zeros.
7. These two bytes are reserved.
8. Two bytes are reserved for the local SCSI ID. The SCSI ID is stored
in ASCII format.
1-44Computer Group Literature Center Web Site
Memory Maps
9. Eight bytes are reserved for the printed wiring boar d (PWB) number
assigned to the memory mezzanin e board in ASCII format. This
does not include the
01-W prefix. F or example, for a 4MB
mezzanine at revisi on A, the PWB field contains:
3992B03A
10. Eight bytes are reserved for the serial number assigned to the
memory mezzanine board in ASCII format.
11. Eight bytes are reserved for the printed wiring boar d (PWB) number
assigned to the serial port 2 personality board in ASCII format.
Static Memory Mezzanine pwb identifier in ascii
Static Memory Mezzanine serial number in ascii
ECC1 Memory Mezzanine pwb ide ntifier in ascii
ECC1 Memory Mezzanine serial number in ascii
ECC2 Memory Mezzanine pwb ide ntifier in ascii
ECC2 Memory Mezzanine serial number in ascii
1
12. Eight bytes are res erved f or th e ser ial numbe r assi gned to the seria l
port 2 personality board in ASCII format.
13. Eight bytes are reser ved for the bo ard identifi er, in ASCII, assig ned
to the optional first IndustryPack a.
14. Eight bytes are reserve d for the serial number, in ASCII, a ssigned to
the optional first IndustryPack a.
15. Eight bytes are reserved for the printed wiring boar d (PWB) number
assigned to the optional first IndustryPack a.
16. Eight bytes are reser ved for the bo ard identifi er, in ASCII, assig ned
to the optional second IndustryPack b.
17. Eight bytes are reserve d for the serial number, in ASCII, a ssigned to
the optional second IndustryPack b.
18. Eight bytes are reserved for the printed wiring boar d (PWB) number
assigned to the optional second IndustryPack b.
19. Eight bytes are reser ved for the bo ard identifi er, in ASCII, assig ned
to the optional third Indus tryPack c.
http://www.mcg.mot.com/literature1-45
1
Board Description and Memory Maps
20. Eight bytes are reserve d for the serial number, in ASCII, assigned to
the optional third Ind ust ryPack c.
21. Eight bytes are reserved for the printed wiring boar d (PWB) number
assigned to the optional third IndustryPack c.
22. Eight bytes are reser ved for the bo ard identifi er, in ASCII, assig ned
to the optional fourth IndustryPack d.
23. Eight bytes are reserve d for the serial number, in ASCII, assigned to
the optional fourth IndustryPack d.
24. Eight bytes are reserved for the printed wiring boar d (PWB) number
assigned to the optional fourth IndustryPack d.
25. Growth space (65 bytes) is reserved. This pads the structure to an
even 256 bytes.
26. The final one byte of t he area is re served for a checks um (as defined
in the Debugging Package for Motorola 68K CISC CPUs User’s Manual) for security and data integrity of the configuration area of
the NVRAM. This data is stored in hexadecimal format.
Interrupt Acknowledge Map
The local bus distinguishes interrupt acknowledge cycles from other
cycles by placing the binary value %11 on TT1-TT0. It also specifies the
level that is being acknowledged using TM2-TM0. The interrupt handler
selects which device within that level is being acknowledged.
VMEbus Memory Map
This section describes the mapping of local resources as viewed by
VMEbus masters. Default addresses for the slave, master, and GCSR
address decoders are provided by the ENV command.
1-46Computer Group Literature Center Web Site
Software Support Considerations
VMEbus Accesses to the Local Bus
The VMEchip2 includes a user-programmable map decoder for the
VMEbus to local bus interface. The map decoder allows you to program
the starting and endin g address and the modifiers t he MVME172 responds
to.
VMEbus Short I/O Memory Map
The VMEchip2 includes a us er-programmable map decoder for the GCSR.
The GCSR map decoder allows you t o program the st arting add ress of the
GCSR in the VMEbus short I/O space.
Software Support Considerations
The MVME172 is a complex board that interfaces to the VMEbus and
SCSI bus. These multiple bus int erfaces raise the is sue of cache coherency
and support of indivi sible cycles. There are al so many sources of bus erro r.
First, let us consider how interrupts are handled.
1
Interrupts
The MC68060 uses hardware-vectored interrupts.
Most interrupt sources are level and base vector programmable. Interrupt
vectors from the MC2 chip and the VMEchip2 have two sections, a base
value which can be set by the processor, usually the upper four bits, and
the lower b its which are set according to the particular interrupt source.
There is an onboard dais y cha in of int er ru pt sources, with interrupts from
the MC2 chip having the highest priority, those from the IP2 chip having
the next highest pri ority, and interrupt sources from the VMEchip 2 having
the lowest priority. Refer to Appendix A for an example of interrupt usage.
The MC2 chip, IP2 chip, and VMEchip2 ASICs are used to implement the
multilevel MC680x0 interrupt ar chitectu re. A PLD i s used to c ombine the
individual IPLx signals from each ASIC.
http://www.mcg.mot.com/literature1-47
1
Board Description and Memory Maps
Cache Coherency
The MC68060 has the abi li ty t o watch local bus cycles executed by other
local bus masters such as the SCSI DMA controller, the LAN, the
VMEchip2 DMA controller, the VMEbus to local bus controller, and the
IP DMA controller.
When snooping is enabled, the MPU can invalidate cache entries as
required by the current cycle. The MPU cannot watch VMEbus cycles
which do not access t he local bus on the MVME172. Software must ensure
that data shared by multiple pro cessors is kept in memory that is not
cached. The software must also ma rk al l onboa rd and off- boar d I/ O areas
as cache inhibited and serialized.
Sources of Local BERR*
A TEA* signal (indicating a bus error) is returned to the local bus master
when a local bus time-out occurs, a DRAM parity error occurs and parity
checking is enabl ed, or a VME bu s err or occ urs dur ing a VMEbus acc ess .
NoteThe 400/500-Serie s MVME172 models do not contain parity
The devices on the MV ME172 that are able to assert a local bus error are
described below.
Local Bus Time-out
A Local Bu s Time-out occurs whenever a local bus cycle does not
complete within the programmed time (VMEbus bound cycles are not
timed by the local bus timer). If the system is configured properly, this
should only happen if s oft war e ac cesses a nonexistent location within the
onboard address range.
DRAM.
1-48Computer Group Literature Center Web Site
VMEbus Access Time-out
A VMEbus Access Time-out occurs whenever a VMEbus bound transfer
does not receiv e a VMEbus bu s grant wit hin the pro grammed time. Thi s is
usually caused by another bus master holding the bus for an excessive
period of time.
VMEbus BERR*
A VMEbus BERR* occurs when the BERR* signal lin e is a sserted on the
VMEbus while a local bus master is accessing the VMEbus. VMEbus
BERR* should occur only if : an initialization routine samples to see if a
device is present on the VMEbus and it is not, software accesses a
nonexistent device within the VMEbus range, incorrect configuration
information causes the VMEchip2 to incorrectly access a device on the
VMEbus (such as driving LWORD* low to a 16-bit board), a hardware
error occurs on the VMEbus, or a VMEbus slave reports an access error
(such as parity error).
Software Support Considerations
1
Local DRAM Parity Error
NoteThe 400/500-Serie s MVME172 models do not contain parity
DRAM.
When parity checking is enabled, the current bus master receives a bus
error if it is accessing the local DRAM and a parity error occurs.
VMEchip2
An 8- or 16-bit write to the LCSR in the VMEchip2 causes a local BERR*.
Bus Error Processing
Because differ ent cond itions can cause bus error excepti ons, the softwar e
must be able to distinguish the source. To aid in this, status registers are
provided for every lo cal bus master. The next section des cribes the various
causes of bus error and the associated status registers.
http://www.mcg.mot.com/literature1-49
1
Board Description and Memory Maps
Generally, the bus error ha ndler can int errogate t he status bi ts and procee d
with the result. Howe ver , an i nt err upt can happen during the execution of
the bus error handler (before an instruction ca n wri te to the status register
to raise the interrupt mask). If the interrupt service routine causes a second
bus error, the status that indicates the source of the first bus error may be
lost. The software must be written to deal with this.
Description of Error Conditions on the MVME172
This section list the various error conditions that are reported by the
MVME172 hardware. A subsection heading identifies each type of error
condition. A sta ndard format gives a description of the error, i ndicates how
notification of the error condition is made, indicates which status
register(s) have information about the error, and concludes with some
comments pertaining to each particular error.
MPU Parity Error
NoteThe 400/500_Series MVME172 models do not contain parity
Description:
A DRAM parity error.
MPU Notification:
TEA is asserted during an MPU DRAM access.
Status:
Bit 9 of the MPU Status and DMA Interrupt Count Register in the
VMEchip2 at address $FFF40048.
Comments:
After memory has been initia lized, this error normally indicates a
hardware problem.
DRAM.
1-50Computer Group Literature Center Web Site
MPU Off-board Error
Description:
An error occurred while the MPU was attempting to access an off-board
resource.
MPU Notification:
TEA is asserted during off-board access.
Status:
Bit 8 of the MPU Status and DMA Interrupt Count Register. Address
$FFF40048.
Comments:
This can be caused by a VMEbus time-out, a VMEbus BERR, or an
MVME172 VMEbus acces s time-out. The la tter is the t ime from when th e
VMEbus has been requested to when it is granted.
Software Support Considerations
1
MPU TEA - Cause Unidentified
Description:
An error occurred while the MPU was attempting an access.
MPU Notification:
TEA is asserted during an MPU access.
Status:
Bit 10 of the MPU Status and DMA Interrupt Count Register at address
$FFF40048 in the VMEchip2.
Comments:
No status was given as to the cause of the TEA assertion.
MPU Local Bus Time-out
Description:
An error occurred while the MPU was attempting to access a local
resource.
MPU Notification:
TEA is asserted during the MPU access.
http://www.mcg.mot.com/literature1-51
1
Board Description and Memory Maps
Status:
Bit 7 of the MPU Status and DMA Interrupt Count Register, (actually in
the DMAC Status Register) at address $FFF40048.
Comments:
The local bus timer timed out. This usually indicates the MPU tried to
read or write an address at which there was no resource. Otherwise, it
indicates a hardware problem.
DMAC VMEbus Error
Description:
The DMAC experienced a VMEbus error during an attempted transfer.
MPU Notification:
DMAC interrupt (when enabled).
Status:
The VME bit is set in the DMAC Status Register (ad dress $FFF40048 bit
1).
Comments:
This indicates the DMAC atte mpted to acce ss a VMEbus a ddress at which
there was no resource or the VMEbus slave returned a BERR signal.
DMAC Parity Error
NoteThe 400/500-Serie s MVME172 models do not contain parity
Description:
Parity error while th e DMAC was reading DRAM.
MPU Notification:
DMAC interrupt (when enabled).
Status:
The DLPE bit is set in the DMAC Status Registe r (address $FFF4004 8 bit
5).
DRAM.
1-52Computer Group Literature Center Web Site
Comments:
If the TBL bit is set (address $FFF 40048 bit 2) the er ror occurre d during a
command table access, otherwise the error occurred during a data access.
DMAC Off-board Error
Description:
Error encountered while the local bus side of the DMAC was attempting
to go to the VMEbus.
MPU Notification:
DMAC interrupt (when enabled).
Status:
The DLOB bit is set in t he DMAC Status Register (address $FFF40048 bit
4).
Comments:
This is normally cause d by a p rogrammin g error. The loca l bus addre ss of
the DMAC should not be pro grammed with a lo cal bus address that maps
to the VMEb us. If the TBL bit is set (address $FFF40048 bit 2) the error
occurred during a command table access, otherwise the error occurred
during a data access.
Software Support Considerations
1
DMAC LTO Error
Description:
A local bus time-out (LTO) occurred while the DMAC was local bus
master.
MPU Notification:
DMAC interrupt (when enabled).
Status:
The DLTO bit is set in the DMAC Status Register (address $FFF40048
bit 3).
http://www.mcg.mot.com/literature1-53
1
Board Description and Memory Maps
Comments:
This indicates the DMAC attempted to access a local bus addre ss at which
there was no resour ce. If the TBL bit is set (address $FFF40 048 bit 2) the
error occurred during a command table access, otherwise the error
occurred during a data access.
DMAC TEA - Cause Unidentified
Description:
An error occurred while the DMAC was local bus master and additional
status was not provided.
MPU Notification:
DMAC interrupt (when enabled).
Status:
The DLBE bit is set in the DMAC Statu s Register (add ress $FFF40048 b it
6).
Comments:
An 8- or 16-bit write to the LCSR in the VMEchip2 causes this error. If the
TBL bit is set (address $FFF40048 bit 2) the error occurred during a
command table access, otherwise the error occurred during a data access.
LAN Parity Error
NoteThe 400/500-Serie s MVME172 models do not contain parity
Description:
Parity error while th e LANCE was reading DRAM MPU.
Notification:
MC2 chip Interrupt (LAN ERROR IRQ).
Status:
MC2 chip LAN Error Status Register ($FFF42028).
DRAM.
1-54Computer Group Literature Center Web Site
Comments:
The LANCE has no ability to respond to TEA so the error interrupt and
status are pro vided in the MC2 chip. Cont rol for the int errupt is in the MC2
chip LAN Error Interrupt Control Register ($FFF4202B).
LAN Off-Board Error
Description:
Error encountered while the LANCE was attempting to go to the VMEbus.
Status:
MC2 chip LAN Error Status Register ($FFF42028).
Comments:
The LANCE has no ability to respond to TEA so the error interrupt and
status are pro vided in the MC2 chip. Cont rol for the int errupt is in the MC2
chip LAN Error Interrupt Control Register ($FFF4202B).
Software Support Considerations
1
LAN LTO Error
Description:
Local Bus Time-out occurred while the LANCE was local bus master.
Status:
MC2 chip LAN Error Status Register ($FFF42028).
Comments:
The LANCE has no ability to respond to TEA so the error interrupt and
status are pro vided in the MC2 chip. Cont rol for the int errupt is in the MC2
chip LAN Error Interrupt Control Register ($FFF4202B).
http://www.mcg.mot.com/literature1-55
1
Board Description and Memory Maps
SCSI Parity Error
NoteThe 400/500-Serie s MVME172 models do not contain parity
DRAM.
Description:
Parity error detected while the 53C710 was reading DRAM.
MPU Notification:
53C710 Interrupt.
Status:
53C710 DMA Status Register 53C710 DMA Interrupt Status Register
MC2 chip SCSI Error Status Register ($FFF4202C).
Comments:
53C710 interrupt enables are controlled in the 53C710 and in the MC2
chip SCSI Interrupt Control Register ($FFF4202F).
SCSI Off-Board Error
Description:
Error encounter ed while th e 53C710 was attemptin g to go to the VMEbus.
MPU Notification:
53C710 Interrupt.
Status:
53C710 DMA Status Register 53C710 DMA Interrupt Status Register
MC2 chip SCSI Error Status Register ($FFF4202C).
Comments:
53C710 interrupt enables are controlled in the 53C710 and in the MC2
chip SCSI Interrupt Control Register ($FFF4202F).
SCSI LTO Error
Description:
Local Bus Time-out occurred while the 53C710 was local bus master.
1-56Computer Group Literature Center Web Site
Software Support Considerations
MPU Notification:
53C710 Interrupt.
Status:
53C710 DMA Status Register 53C710 DMA Interrupt Status Register
MC2 chip SCSI Error Status Register ($FFF4202C).
Comments:
53C710 interrupt enables are controlled in the 53C710 and in the MC2
chip SCSI Interrupt Control Register ($FFF4202F).
Example of the Proper Use of Bus Timers
In this example, the use of the bus timers is ill ustrated by describing the
sequence of events when the MPU on one MVME172 accesses the local
bus memory on another MVME172 using the VMEbus. In this scenario
there are three bus timers involved. These are the local bus timer, the
VMEbus access timer, and the Gl obal VMEbus t imer. The l ocal bus t imer
measures the time an access to an onboard resource takes. The VMEbus
timer measures the time fr om when the VMEbus req uest has bee n initiated
to when a VMEbus grant has been obtained. The global bus timer
measures the time from when a VMEbus cycle begins to when it
completes. Normally these timers should be set to quite different values.
1
An example of one MVME172 accessing another MVME172 illustrates
the use of these ti mers.
When the processor or another local bus master initiates an access to the
VMEbus, it first waits until any other local bus masters get off the local
bus. Then it begins its cycle and the local bus timer starts counting. It
continues to count until an address decode of the VMEbus address space
is detected and then terminates. This is normally a very short period of
time. In fact all local bus non-error bus accesses are normally very short,
such as the time to access onboa rd memory. Therefore , it is recommended
this timer be set to a small value, such as 256 µsec.
The next timer to take over when one MVME172 accesses another is the
VMEbus access timer. This measures t he time between whe n the VMEbus
has been address decoded and hence a VMEbus request has been made,
http://www.mcg.mot.com/literature1-57
1
Board Description and Memory Maps
and when VMEbus mastership has been granted. Because we have found
in the past that some VME sys tems can become very busy, we recommend
this time-out be set at a large value, such as 32 msec.
Once the VM Ebus has been g ranted, a third timer takes over. This is the
global VMEbus timer. This timer starts when a transfer actually begins
(DS0 or DS1 goes active) and ends when that transfer completes (DS0 or
DS1 goes inactive). This time should be longer than any expected
legitimate transfer time on the bus. We normally set it to 256 µsec. This
timer can also be disabled for debug purposes. Before an MVME172
access to another MVME172 can complete, however, the VMEchip2 on
the accessed MVM E172 must decode a slave access and request the local
bus of the second MVME172. When the local bus is granted (any
in-process onboard transfers have completed) then the local bus timer of
the accessed MVME172 starts. Normally, this is also set to 256 µsec.
When the me m ory has the data available, a transfer acknowl edge signal
(TA) is given. This t ranslates int o a DTACK signal on the VMEbus which
is then transla ted into a TA signal to the first reque sting proce ssor, and the
transfer is complete. If the VMEbus global timer expires on a legitimate
transfer, the VMEbus to local bus controller in the VMEchip2 may become
confused and the VMEchip2 may misbehave; therefore, the bus timers’
values must be set correctly. The correct settings depend on the system
configuration.
MVME172 MC68060 Indivisible Cycles
The MC68060 performs operations that require indivisible
read-modify-write (RMW) memory accesses. These RMW sequences
occur when the MMU modifie s table entri es or when the MPU e xecute s a
TAS, CAS, or CAS2 instruction. TAS cy cles are always single-address
RMW operations, while the CAS, CAS2, and MMU operations can be
multiple-address RMW cycles. The VMEbus does not support
multiple-address RMW cycles and there is no defined protocol for
supporting multiple -address RMW cycles which start onboard and then
access off-board resources. The MVME172 does not fully support all
RMW operations in all possible cases.
1-58Computer Group Literature Center Web Site
Software Support Considerations
The MVME172 makes the following assumptions and supports a limited
subset of RMW instructions. The MVME172 supports single-address
RMW cycles caused by TAS and CAS instructions. Because it is not
possible to tell if the MC68060 is executing a single- or multiple-address
read-modify-write cycle, software should only execute single-address
RMW instructions. Multiple-address RMW cycles caused by CAS or
CAS2 instructions are not guaranteed indivisible and may cause illegal
VMEbus cycles. Lock cycles caused by MMU table walks do not cause
illegal VMEbus cycles, and they are not guaranteed indivisible.
Illegal Access to IP Modules from External VMEbus Masters
When a device other than the local MVME172 is operating as VMEbus
master, access by that device to the local IP modules is subject to
restrictions.
1
Access to the IndustryPack memory space is supported in all cases. As a
result of the difference in data width between the VMEbus and the IP
modules (D32 versus D16), however, access to the IndustryPack I/O, ID,
and Interrupt Acknowledge space is not supported for single IP modules.
This applies to IndustryPacks a, b, c, and d.
http://www.mcg.mot.com/literature1-59
1
Board Description and Memory Maps
1-60Computer Group Literature Center Web Site
Introduction
This chapter describes the VMEchip2 ASIC, local bus to VMEbus
interface chip.
The VMEchip2 interfaces the local bus to the VMEbus. In addition to the
VMEbus defined functions, the VMEchip2 includes a local bus to
VMEbus DMA controller, VME board support features, and Global
Control and Status Regi ster s (GCSR) for int erpro cessor communicat ions.
Summary of Major Features
❏ Local Bus to VMEbus Interface:
–Programmable local bus map decoder.
2VMEchip2
2
–Programmable short, standard, and extended VMEbus
addressing.
–Programmable AM codes.
–Programmable 16-bit and 32-bit VMEbus data width.
–S oftware-enabled write posting mode.
–Write post buffer (one cache line or one four-byte).
–Automatically performs dynamic bus sizing for VMEbus cyc les.
–Software-configured VMEbus access tim ers.
–Local bus to VMEbus Requester:
Software-enabl ed fair request mode;
Software-configured release modes:
Release-When-Done (RWD), and
Release-On-Request (ROR); and
Software-configured BR0*-BR3* request levels.
2-1
VMEchip2
2
❏ VMEbus Bus to Local Bus Interface:
–Programmable VMEbus map decoder.
–Programmable AM decoder.
–Programmable local bus snoop enable.
–Simple VMEbus to local bus address translation.
–8-bit, 16-bit and 32-bit VMEbus data width.
–8-bit, 16-bit and 32-bit block transfer.
–Standard and extended VMEbus addressing.
–S oftware-enabled write posting mode.
–Write post buffer (17 four-bytes in BLT mode, two four-by tes in
–Programmable 16-bit, 32-bit, and 64-bit VMEbus data width.
–Programmable short, standard, and extended VMEbus
addressing.
–Programmable AM code.
–Programmable local bus snoop enable.
–A 16 four-byte FIFO data buffer.
–Supports up to 4 GB of data per DMA request.
–Automatically adjusts transfer size to optimize bus utilization.
–DMA complete interrupt.
–DMAC command chaining is supported by a singly-l inked list of
–F our location monitors.
–G lobal control of locally detected failures.
–G lobal control of local reset.
2
–Four global attention interrupt bits.
–A chip ID and revision register.
–Four 16-bit dual-ported general purpose registers.
❏ Interrupt Handler:
–All interrupts are level-programmable.
–A ll interrupts are maskable.
–All interrupts provide a unique vector.
–Software and external interrupts.
❏ Watchdog timer.
❏ Two 32-bit tick timers.
http://www.mcg.mot.com/literature2-3
VMEchip2
2
Functional Blocks
The following sections provide an overview of the functions provided by
the VMEc hip2. See Figure 2-1 for a block diagram of the VMEchip 2. A
detailed programming model for the local control and status registers
(LCSR) is provided in the following section. A detailed programming
model for the glob al control and status r egisters (GCSR) is provided in the
next section.
Local Bus to VMEbus Interface
The local bus to VMEbus interface allows local bus masters access to
global resources on the VMEbus. This interface i ncludes a local bus slave ,
a write post buffer, and a VMEbus master.
Using programmable map decoders wit h programmabl e attribut e bits, the
local bus to VMEbus in terface can be configur ed to provid e the fol lowing
VMEbus ca pabilities:
Addressing capabilities:A16, A24, A32
Data transfer capabilities:D08 , D 16, D32
The local bus slave includes six local bus map decoders for accessing the
VMEbus. The first four map decoders are gener al purpo se progra mmable
decoders, while t he other two ar e fixed and ar e dedicated for I/O decoding.
The first four map de code rs compare local bus address lines A31 through
A16 with a 16-bit sta rt a ddress and a 16-bi t en d a ddress . When an addre ss
in the sele cted range is detected, a VMEbus select is generated to the
VMEbus master. Each map decoder also has eight attribute bits and an
enable bit. Th e a tt ri but e b it s a re fo r VM Ebus AM co des, D16 enable, and
write post (WP) enable.
The fourth map decoder also includes a 16-bit alternate address register
and a 16-bit alternate address select register. This allows any or all of the
upper 16 address bits from the local bus to be replaced by bits from the
alternate addr ess register. The feature allows the local bus master to acc ess
any VMEbus address.
2-4Computer Group Literature Center Web Site
Functional Blocks
2
DATA
CONTROL
ADDRESS
1344 9403
VMEBUS TO LOCAL BUS INTERFACE
VMEBUS MASTER
FIFO
LOCAL BUS MASTER
DATA
ADDRESS
CONTROL
DATA
DATA
CONTROL
DATA
16 ENTRY BY 4 BYTES
CONTROL
DMA CONTROL
DATA
GCSR
DATA
DMA CONTROLLER
CONTROL
CONTROL
CONTROL
ADDRESS
ADDRESS
ADDRESS
GLOBAL CONTROL / STATUS REGISTER
DATA
CONTROLCONTROL
DATA
CONTROL
DATA
CONTROL
ADDRESS
CONTROL
CONTROLCONTROL
DATA
CONTROL
ADDRESS
VMEBUS SLAVE
FIFO
DATA
ADDRESS
CONTROL
DATA
CONTROL
ADDRESS
CONTROL
DATA
ADDRESS
CONTROL
16 ENTRY BY 4 BYTES
DATA
ADDRESS
CONTROL
DATA
CONTROL
ADDRESS
CONTROL
DATADATA
CONTROL
ADDRESS
4 ENTRY BY 4 BYTES
LOCAL BUS TO VMEBUS INTERFACE
CONTROLCONTROL
DATA
CONTROL
ADDRESS
CONTROL
DATA
CONTROL
ADDRESS
DATA
CONTROLCONTROL
DATA
ADDRESS
CONTROL
LOCAL BUS MASTER
DATA
CONTROL
CONTROL
ADDRESS
DATA
ADDRESS
LOCAL BUSLOCAL BUS SLAVEFIFOVMEBUS MASTERVMEBUS
CONTROL
Figure 2-1. VMEchip2 Block Diagram
http://www.mcg.mot.com/literature2-5
VMEchip2
2
Using the four programmable map decoders, separate VMEbus maps can
be created, each with its own attributes. For example, one map can be
configured as A32, D32 with write posting enabled while a second map
can be A24, D16 with write posting disabled.
The first I/O map decoder decodes local bus addresses $FFFF0000 thr ough
$FFFFFFFF as the short I/O A16/D16 or A16/D32 area, and the other
provides an A24/D16 space at $F0000000 to $F0FFFFFF and a n A32/D16
space at $F1000000 to $FF7FFFFF.
Supervisor/non-pri vileged and program/data space is determined by
attribute bits. Write posting may be enabled or disabled for each decoder
I/O space and this map decoder may be enabled or disabled.
When writ e posting is ena bled, the VMEc hip2 stores the local bus add ress
and data and t hen acknowled ges the l ocal bus mas ter. The l ocal bus i s then
free to perform other oper ations while the VMEbus master requests the
VMEbus and performs the requested operation.
The write post buffer stores one byte, two-byte, four-byte, or one cache
line (four four-bytes). Write posting should only be enabled when bus
errors are not expected . If a bus error is returned on a write posted cycle,
the local pr ocessor is i nterrupted, if the interr upt is enabl ed. The address of
the error is not saved. Normal memory never returns a bus err or on a write
cycle. However, some VMEbus ECC memory cards perform a readmodify-write operation and therefore may return a bus error if there is an
error on the r ead po rtion of a r ead-modi fy-wr ite. Write postin g shoul d not
be enabled when this type of memory card is used. Also, memory should
not be sized using write operations if write posting is enabled. I/O areas
that have holes should not be write posted if software may access nonexistent memory. Using the programmable map decoders, write posting
can be enabled for “s afe” areas and disable d for areas which are not “s afe”.
Block transfer is not supported because the MC68060 block transfer
capability is not compatible with the VMEbus.
The VMEbus master supports dynamic bus sizing. When a local device
initiates a quad -byte acce ss to a VMEbus sl ave tha t only h as the D1 6 data
transfer capability, the chip executes two double-byte cycles on the
VMEbus, acknowledging the local device after all requested four-bytes
2-6Computer Group Literature Center Web Site
Functional Blocks
have been accessed. This enhances the portability of software because it
allows software to run on the system regardless of the physical
organization of global memory.
Using the local bus map decoder attribute register, the AM code that the
master places on the VMEbus can be programmed un der software control.
The VMEchip2 includes a softwar e-controlled VMEb us access timer, and
it starts ti cking when the chip i s request ed to do a VMEbus dat a transfer or
an interrupt acknowl edge cycl e. The timer sto ps ticki ng once th e chip has
started the dat a transfer o n the VMEbus. If the data tr ansfer does not begin
before the timer times out, the timer drives the local bus error signal, and
sets the appropriate status bit in the Local Control and Status Register
(LCSR). Using control bits in the LCSR, the timer can be disabled, or it
can be en abled to drive the local bus error signal after 64 µs, 1 ms, or 32
ms.
The VMEchip2 includes a software-controlled VMEbus write post timer,
and it starts ticking when a data transfer to the VMEbus is writ e posted.
The timer stops ticking once the chip has started the data transfer on the
VMEbus. If this does not happen before the timer times out, the chip aborts
the write post ed c ycl e and send an interrupt to the loc al b us interrupter. If
the write post bus error interrupt is enabled in the local bus interrupter, the
local processor is interrupted to indi cate a write post time-out has occurred.
The write post timer has the same timing as the VMEbus access timer.
2
Local Bus to VMEbus Requester
The requester provides all the signals necessary to allow the local bus to
VMEbus master to request and be granted use of the VMEbus. The chip
connects to all signals that a VMEbus requester is required to drive and
monitor.
Requiring no externa l jumpers, the chip provide s the means for software to
program the re quester to request th e bus on a ny one of the four bus r equest
levels, automatically establishing the bus grant daisy-chains for the three
inactive levels.
http://www.mcg.mot.com/literature2-7
VMEchip2
2
The requester requests the bus if any of the following conditions occur:
1. The local bus master initiates either a data transfer cycle or an
interrupt acknowledge cycle to the VMEbus.
2. The chip is requested to acq uire contro l of the VMEbus as signale d
by the DWB input signal pin.
3. The chip is requested to acq uire contro l of the VMEbus as signale d
by the DWB control bit in the LCSR.
The local bus to VMEbus requester in the VMEchip2 implements a fair
mode. By setting the LVFAIR bit, the requester refrains from requesting
the VMEbus until it detects its assigned request line in its negated state.
The local bus t o VMEbus requ ester at tempts to relea se the VMEbus when
the requested d ata transfe r operation i s complete, the DWB pin is neg ated,
the DWB bit in th e LCSR is negated an d the bus is not bei ng held by a loc k
cycle. The requester releases the bus as follows:
1. When the chip is configured in the release-when-done (RWD)
mode, the request er r el eases the bus when the above c ondi ti ons a re
satisfied.
2. When the chip is configured in the rele ase-on-requ est (ROR) mode,
the requester releases the bus when the above conditions are
satisfied and there is a bus request pending on one of the VMEbus
request lines.
To minimize the timing overhead of the arbitration process, the local bus
to VMEbus requester in the VMEchip2 executes an early release of the
VMEbus. If it is about to release the bus and it is executing a VMEbus
cycle, the requester releases BBSY before its ass ociated master compl etes
the cycle. This allows the arbiter to arbitrate any pending requests, and
grant the bus to the ne xt r equester, at the same time that the active master
completes its cycle.
2-8Computer Group Literature Center Web Site
Functional Blocks
VMEbus to Local Bus Interface
The VMEbus to local bus interface allows an off-board VMEbus master
access to onboard re sources. The VMEbus to local bus interface includes
the VMEbus slave, write post buffer, and local bus master.
Adhering to th e IEEE 1014-87 VMEbus St andard, the slave can withstand
address-only cycles, as well as address pipelining, and respond to
unaligned transfers. Using programmable map decoders, it can be
configured to provide the following VMEbus capabilities:
Addressing capabilities:A24, A32
Data transfer capabilities: D08 (EO), D16, D32, D8/BLT,
The slave can be prog rammed to perform write posting opera ti ons. When
in this mod e, the chip latches incoming data and addressing infor mation
into a stagi ng FIFO and t hen a cknowle dges the VMEbus wr ite tran sfer by
asserting DTACK. The chip then requests control of the local bus and
independently a ccesses the local reso urce after it has been gr anted the local
bus. The write-post ing pipeline is two deep in the non-blo ck transfer mode
and 16 deep in the block transfer mode.
2
D16/BLT, D32/BLT, D64/BLT
(BLT = block transfer)
To significantly improve the access time of the slave when it responds to
a VMEbus block read cycle, the VMEchip2 contai ns a 16 four-byte deep
read-ahead pipeli ne. When responding to a block read cycle, the chip
performs block read cycles on the local bus to keep the FIFO buffer full.
Data for su bsequent transfers is then retrieved from the on chip buffer,
significant ly improving the response time of the slave in the block tra nsfer
mode.
The VMEchip2 includes an onchip map decoder that allows software to
configure the global addressing range of onboard resources. The decoder
allows the local address range to be partitioned into two separate banks,
each with its own start and end address (in increments of 64KB), as well
as set each bank’s address mo difier co des and write post enable and snoop
enable.
http://www.mcg.mot.com/literature2-9
VMEchip2
2
Each map decoder includes an alternate address register and an alternate
address select register. These registers allow any or all of the upper 16
VMEbus address line s to be replace d by signal s from the alte rnate addres s
register. This allows the address of local resources to be different from
their VMEbus address.
The alternat e address regi ster also pr ovides the uppe r eight bits of the local
address when the VMEbus slave cycle is A24.
The local bus master requests the local bus and executes cycles as
required. To reduce local bus loading and improve performanc e i t a lway s
attempts to transf er data using a b urst tr ansfer a s define d by the MC680 60.
When snooping is enabled, the local bus master requests the cache
controller in the MC68060 to monitor the local bus addresses.
Local Bus to VMEbus DMA Controller
The DMA Con troller (DMAC) operates in conjun ction with the local bus
master, the VMEbus master, and a 16 four-byte FIFO buffer. The DMA
controller has a 32-bit local address counter, 32-bit table address counter,
a 32-bit VMEbus address counter, a 32-bit byte counter, and control and
status registers. The Local Control and Status Register (LCSR) provides
software with the ability to control the operational modes of the DMAC.
Software can program the DMAC to transfer up to 4GB of data in the
course of a singl e DMA operation. The DMAC supports tra nsfers from any
local bus address to an y VMEbus addr ess. The t ransf ers may be fr om one
byte to 4GB in length.
To optimize local bus use, the DMAC automatically adjusts the size of
individual data transfers until 32-bit transfers can be executed. Based on
the address of the first byte, the DMAC transfers a single-byte, a
double-byte, or a mixt ure of both, and then con tinues to execute quad- byte
block transfer cycles. When the DMAC is set for 64-bit transfers, the
octal-byte transfers takes place. Based on the address of the last byte, the
DMAC transfers a single-byte, a double- byte, or a mixture of both to end
the transfer.
2-10Computer Group Literature Center Web Site
Functional Blocks
Using control register bits in the LCSR, the DMAC can be configured to
provide the following VMEbus capabilities:
Addressing capabilities:A16, A24, A32
Data transfer capabilities:D16 , D 32, D16/BLT, D32/BLT,
D64/BLT (BLT = block transfer)
Using the DMA AM control register, the address modifier code that the
VMEbus DMA controller places on the VMEbus can be programmed
under software cont rol. In addition, the DMAC can be programmed to
execute block-transfer cycles over the VMEbus.
Complying with the VMEbus specification, the DMAC automatically
terminates bloc k-transfer cycl es whenever a 2 56-byte (D32/BLT) or 2-KB
(D64/BLT) boundary is crossed. It does so by momentarily releasing AS
and then, in accordance with its bus release/bus request configuration,
initiating a new block-transfer cycle.
To optimize VMEbus use, the DMAC automatically adjusts the size of
individual data transfers until 64-bit transfers (D64/BLT mode), 32-bit
transfers (D32 mode) or 16-bit transfers (D16 mode) can be executed.
Based on the address of the first byte, the DMAC transfers single-byte,
double-byte, or a mixture of both, and then continues to execute transfer
cycles based on the programmed data width. Based on the address of the
last byte, the DMAC transfers single-byte, double-byte, or a mixture of
both to end the transfer.
2
To optimize local b us use when the VMEbu s is operating in the D16 mode,
the data FIFO conv erts D1 6 VMEbus t ransf ers t o D32 loca l bus t ransf ers.
The FIFO also aligns data if the source and destination addresses are not
aligned so the local bus and VMEbus can operate at their maximum data
transfer sizes.
To allow other boards access to the VMEbus, the DMAC has bus tenure
timers to limit the time the DMAC spends on the VMEbus and to ensure a
minimum time off the VMEbus. Since the loca l bus is generally faster t han
the VMEbus, other local bus masters may use the local bus while the
DMAC is waiting for the VMEbus.
http://www.mcg.mot.com/literature2-11
VMEchip2
2
The DMAC also supports command chaining through the use of a singlylinked list built in local memory. Each entry in the list includes a VMEbus
address, a local bus addr ess, a byt e count, a co ntrol word, and a poin ter to
the next entry. When the c ommand chai ning mo de is ena bled, t he DMAC
reads and executes commands from the list in local memory until all
commands are execu t ed.
The DMAC can be programmed to send an interrupt request to the local
bus interrupt er when any specific t able entry has complete d. In addition the
DMAC always sends an interrupt request at the normal completion of a
request o r when an error is detected. If the DMAC interrupt is enabled in
the DMAC, the local bus is interrupted.
To allow increased flexibility in managing the bus tenure to op t imize bus
usage as required by the system configuration, the chip contains control
bits that allow the DMAC time on and off the bus to be programmed. Using
these control bits, soft ware can inst ruct the DMA Co ntroller t o acquire th e
bus, maintain mastership for a specific amount of time, and then, after
relinquishing it, refrain from requesting it for another specific amount of
time.
No Address Increment DMA T ransfers
During normal memory-to-memory DMA transfers, the DMA controller is
programmed to incr ement the local bu s and VMEbus a ddress. Thi s allows
a block of data to be transferre d betwe en VMEbus memory and loc al bus
memory. In some applications, it may be desirable to transfer a block of
data from local bus memory to a single VMEbus address. This single
VMEbus address may be a FIFO or similar type device which can accept
a large amount of data but only appears at single VMEbus address. The
DMA controller provides support for these devices by allowing transfers
without incrementing the VMEbus address. The DM A controller also
allows DMA transfers without incrementing the local bus address,
however the MVME172 does not have any onboard devices that benefit
from not incrementing the local bus address.
The transfer mode on t he VMEbus may be D16, D16/BLT, D32, D32/BLT
or D64/BLT. When the no increment address mo de is selected, some of the
VMEbus address li nes and local bus ad dress lines co ntinue to incr ement in
some modes. This is re quired to support t he various port size s and to allow
2-12Computer Group Literature Center Web Site
Functional Blocks
transfers which are not an even byte count or star t at an odd address, with
respect to the port size. A 16-bit device should respond with VA<1> high
or low. Devices on the local bus should respond to any combination of
LA<3..2>. This is re quired to support the burst mode on the MC68 060 bus.
Normally when the non-increment mode is used, the starting address and
byte count would be aligned to th e port size. For example, a DM A transfer
to a 16-bit FIFO would start on a 16-bit boundar y and would have an even
number of 16-b it t ransfer s. If t he star ting ad dress is not aligned or the byte
count is odd, the DMA controller will increment the lower address lines.
This is re quired because the lower order address li nes are used to define
the size of the transfer and the byte lanes.
The VMEbus uses VA<2..1>, LWORD*, and DS<1..0>* to define the
transfer size a nd byte lanes. I f the VMEbus port size is D32, then VA<1 >,
LWORD* and DS<1..0>* are used to define the transfer size and byte
lanes. During D16 transfers, the VMEbus address line VA<1> toggles. If
the VMEbus port size is D64, then VA<2..1>, LWORD* and DS<1..0>*
are used to define the transfer size and byte lanes. Local bus address
LA<3..0> and SIZ<1..0> are us ed to define the tr ansfer size and byte lanes
on local bus. During local bus transfers, LA<3..2> count.
2
The DMA controller internally increments the VMEbus address counter
and if the transfer mode is BLT, the DMA controller generates a new
address strobe (AS*) when a block boundary is crossed.
DMAC VMEbus Requester
The chip contains an independent VMEbus requester associated with the
DMA Controller. This allows flexibility in instituting different bus tenure
policies for the single-transfer oriented master, and the block-transfer
oriented DMA controller. The DMAC requester provides all the signals
necessary to allow the onchip DMA Controller to request and be granted
use of the VMEbus.
Requiring no externa l jumpers, the chip provide s the means for software to
program the DMAC requeste r to request the bus on any one of the four bus
request level s, automatically esta blishing the bus gran t daisy-chains for t he
three inactive levels.
http://www.mcg.mot.com/literature2-13
VMEchip2
2
The DMAC requester requests the bus as required to transfer data to or
from the FIFO buffer.
The requester implements a fair mode. By setting the DFAIR bi t, the
requester refrains from requesting the bus until it detects its assigned
request line in its negated state.
The requester rele ases the bus when requested to by the DMA controller.
The DMAC always releases the VMEbus when the FI FO is full ( VMEbus
to local bus) or empty (local bus to VMEbus). The DMAC can also be
programmed to release the VMEbus when another VMEbus master
requests the bus, when the time on time r has expi red, or when the time on
timer has expired and another VMEbus master is requesting the bus. To
minimize the timing overhead of the arbitration process, the DMAC
requester executes an early release of the bus. If it is about to release the
bus and it is executing a VMEbus cycle, the requester releases BBSY
before its associat ed VMEbus master completes th e cycle. This allows the
arbiter to arbitrate any pending requests, and grant the bus to the next
requester, at the same time that the DMAC completes its cycle.
Tick and Watchdog Timers
The VMEchip2 has two 32-bit tick timers and a watchdog t imer . The tick
timers run on a 1 MHz clock which is der ived fr om the loca l bus clo ck by
the prescaler.
Prescaler
The prescaler is used to derive the various clocks required by the tick
timers, VME access timers, reset timer, bus arbitration timer, local bus
timer, and VMEbus timer. The prescaler divides the local bus clock to
produce the constant-frequency clocks required. Software is required to
load the appropriate constant, depending upon the local bus clock,
following reset to ensure proper operation of the prescaler.
2-14Computer Group Literature Center Web Site
Functional Blocks
Tick Timer s
2
The VMEchip2 include s two general purpose t ick timers. These timers can
be used to generate interrupts at various rates or the counters can be read
at various times for interval timing. The time rs have a resolution of 1 µs
and when free running, they roll over every 71.6 minutes.
Each tick timer has a 32-bit counter, a 32-bit compare register, a 4-bit
overflow register, an enable bit, an overflow clear bit, and a
clear-on-compare enable bit. The counter is readable and writable at any
time and when enabled in the free run mode, it increments every 1µs.
When the counte r i s e n abl ed in the clear-on-compare mode, it in cre m ent s
every 1µs until the counter value matches the value in the compare
register. When a match occurs, the counter is cleared. When a match
occurs, in either mode, an interrupt is sent to the local bus interrupter and
the overflow counter is incremented. An interrupt to the local bu s is only
generated if the tick timer interrupt is enabled by the local bus interrupter.
The overflow counter c an be cleared by writing a one to the overflow c lear
bit.
Tick timer one or two can be programmed to generate a pulse on the
VMEbus IRQ1 interrupt line at the tick timer period. This pr ovides a
broadcast interrupt function which allows several VME boards to receive
an interrupt at the same time. In certain applications, this interrupt can be
used to synchronize multiple processors. This interrupt is not
acknowledged on the VMEbus. This mode is intended for specific
applications and is not defined in the VMEbus specification.
Watchdog T imer
The watchdog timer has a 4-bit counter, four clock select bits, an enable
bit, a local r eset enable bit, a SYSRESET enable bit, a board fail enab le bit,
counter reset bit, WDTO status bit, and WDTO status reset bit.
When enabled, the counter increments at a rate determined by the clock
select bits. If the counter is not reset by software, the counter reaches its
terminal count. When this occurs, the WDTO status bit is set; and if the
local or SYSRESET funct ion is e nab led, t he se lecte d res et i s gene rated ; if
the board fail function is enabled, the board fail signal is generated.
http://www.mcg.mot.com/literature2-15
VMEchip2
2
VMEbus Interrupter
The interrupter provides all the signals necessary to allow software to
request interrupt service from a VMEbus interrupt handler. The chip
connects to all signals that a VMEbus interrupter is required to drive and
monitor.
Requiring no externa l jumpers, the chip provide s the means for software to
program the interrupter to request an interrupt on any one of the seven
interrupt requ est lin es. In addit ion, the chi p contro ls the prop agation of the
acknowledge on the IACK daisy-chain.
The interrupter operates in the release-on-acknowledge (ROAK) mode.
An 8-bit control r egister pr ovides sof tware wit h the means to dynamica lly
program the status/ID information. Upon reset, this register is initialized to
a status/ID of $0 F (the uninitialize d vector in the 68K-b ased environment).
The VMEbus interrupter has an additional feature not defined in the
VMEbus specification . The VMEchi p2 s upports a broadcast mode on the
IRQ1 signal line. When this feature is used, the normal IRQ1 interrupt to
the local bus interrupter should be disabled and the edge-sensitive IRQ1
interrupt to the local bus interrupter should be enabled. All boards in the
system which are not participating in the broadcast interrupt function
should not drive or respond to any signals on the IRQ1 signal line.
There are two ways to broadcast an IRQ1 interrupt. The VMEbus
interrupter in the VMEchip2 may be programmed to generate a level one
interrupt. This interrupt must be cleared using the interrupt clear bit in the
control register because the interrupt is never acknowledged on the
VMEbus. The VMEchip2 allows the output of one of the tick timers to be
connected to the IRQ1 interrupt signal line on the VMEbus. When this
function is enabled, a pulse appears on the IRQ1 signal line at the
programmed interrupt rate of the tick timer.
2-16Computer Group Literature Center Web Site
Functional Blocks
VMEbus System Controller
With the exception of the optional SERCLK Driver and the Power
Monitor, the chip includes all the functions that a VMEbus System
Controller must provide. The System Controller is enabled/disabled with
the aid of an external jumper (the only jumper required in a VMEchip2
based VMEbus interface).
Arbiter
The arbitration al gor it hm use d by th e chip arbiter is selected by software.
All three arbitration modes defined in the VMEbus Specification are
supported: Priority (PRI), Round-Robin-Select (RRS), as well as Single
(SGL). When operating in the PRI mode, the arbiter asserts the BCLR line
whenever it det ects a req uest for t he bus who se level i s higher t hat the o ne
being serviced.
The chip includes an arbitration timer, preventing a bus lockup when no
requester assumes control of the bus after the arbiter has issued a grant.
Using a control bit, this timer can be enabled or disabled. When enabled,
it assumes control of th e bus by driving the BBSY signal after 256 µsecs,
releasing i t after satis fying th e requir ements of the VMEbu s spec ificat ion,
and then re-arbitrating any pending bus requests.
2
IACK Daisy-Chain Driver
Complying with the latest revision of the VMEbus specification, the
System Controller includes an IACK Daisy-Chain Driver, ensuring that
the timing requirements of the IACK daisy-chain are satisfied.
Bus Timer
The Bus Timer is enabled/disabled by software to terminate a VMEbus
cycle by asserting BERR if any of the VMEbus data strobes is maint ained
in its asserted state for longer than the programmed time-out period. The
time-out period can be set to 8, 64, or 256 secs. The bus timer terminates
an unresponded VMEbu s cycle only if both it a nd the system control ler are
enabled.
http://www.mcg.mot.com/literature2-17
VMEchip2
2
Reset Driver
In addition to the VMEbus timer, the chip contains a local bus timer. This
timer asserts the local TEA when the local bus cycle mainta ined in its
asserted state for longer that the programmed time-out pe riod. This timer
can be enabled or disabled under sof tware control. The time-out period can
be programmed for 8, 64, or 256 secs.
The chip includes both a global and a local reset driver. When the chip
operates as the VMEbus system controller, the reset driver provides a
global system reset by asserting the VMEbus signal SYSRESET. A
SYSRESET may be generated by the
RESET switch, a power up reset, a
watch dog time-out, or by a c ontrol bi t in the LCSR. SYSRESET remains
asserted for at least 200 msec, as required by the VMEbus specification.
Similarly, the chip provides an input signa l and a control bit to initiate a
local reset operation.
The local reset dr iver is enabled even when the chip is not the system
controller. A local reset may be generated by the
RESET switch, a power
up reset, a watch dog time-out, a VME bus SYSRESET, or a co ntrol bit in
the GCSR.
Local Bus Interrupter and Interrupt Handler
There are 31 interrupt sources in the VMEchip2: VMEbus ACFAIL,
ABORT switch, VMEbus SYSFAIL, write post bus error, external input,
VMEbus IRQ1 edge-sensitive, VMEchip2 VMEbus interrupter
acknowledge, tick t imer 2-1, DMAC done, GCSR SIG3-0, GCSR location
monitor 1-0, softwa re interrupts 7-0, and VMEbus IRQ7- 1. Each of the 3 1
interrupts can be enabled to generate a local bus interrupt at any level. For
example, VMEbus IRQ5 can be programmed to generate a level 2 local
bus interrupt.
The VMEbus AC fail interrupter is an edge-sensitive interrupter connected
to the VMEbus ACFAIL signal line. This interrupter is filtered to remove
the ACFAIL glitch which is related to the BBSY glitch.
The SYS fail interrupter is an edge-sensitive interrupter connected to the
VMEbus SYSFAIL signal line.
2-18Computer Group Literature Center Web Site
Functional Blocks
The write post bus error interrupter is an edge-sensitive interrupter
connected to the local bus to VMEbus write post bus error signal line.
The VMEbus IRQ1 edge-sensitive interrupter is an edge-sensitive
interrupter conne cted to t he VMEbus IRQ1 signal line. Thi s interrup ter is
used when one of the tick timers is connected to the IRQ1 signal line.
When this interrupt is acknowledged, the vector is provided by the
VMEchip2 and a VMEbus i nt er rup t acknowledge is not generated. When
this interrupt is enabled, the VMEbus IRQ1 level-sensitive interrupter
should be disabled.
The VMEchip2 VMEbus interrupter acknowledge interrupter is an edgesensitive inter rupter conn ected to the ackn owledge outpu t of the VMEbus
interrupter. An interrupt is generated wh en an interrupt on the VMEbus
from VMEchip2 is acknowledged by a VMEbus interrupt handler.
The tick timer interr upters are edg e-sensit ive interru pters connect ed to the
output of the tick timers.
The DMAC interrupter is an edge-sensitive interrupter connected to the
DMAC.
2
The GCSR SIG3-0 interrupters are edge-sensitive interrupters connected
to the output of the signal bits in the GCSR.
The location monit or interrupters are edge-s ensitive interrupters connected
to the location monitor bits in the GCSR.
The software 7-0 interrupters can be set by software to generate interrupts.
The VMEbus IRQ7-1 interrupters are level-sensitive interrupters
connected to the VMEbus IRQ7-1 signal lines.
The interrupt hand ler provides all logic neces sary to identify and handle all
local interrupts as well as VMEbus interru pts. When a local interrupt is
acknowledged, a unique vector is provided by the chip. Edge-sensitive
interrupters are not cleared during the interr upt acknowledge cycle and
must by reset by software as required. If the interrupt source is the
VMEbus, the interrupt handler instructs the VMEbus master to execute a
VMEbus IACK cycle to obtain the vector from the VMEbus interrupter.
The chip connects to all signals th at a VMEbus handle r is required to drive
http://www.mcg.mot.com/literature2-19
VMEchip2
2
and monitor. On the local bus, the interrupt handler is designed to comply
with the interrupt handli ng sign ali ng protocol of the MC68060
microprocessor.
Global Control and Status Registers
The VMEchip2 includ es a set of register s that are accessible from both th e
VMEbus and the local bus. These registers are provided to aid in
interprocessor communications over the VMEbus. These registers are
fully described in a later section.
LCSR Programming Model
This section defines the programming model for the Local Control and
Status Registers ( LCSR) in the VMEchip2. The loc al bus map decoder for
the LCSR is incl uded in the VMEchip2. The base address of the LCSR is
$FFF40000 and the registers are 32-bits wide. Byte, two-byte, and
four-byte read ope rations are per mitted: however , byte and two-byte wr ite
operations are not permitted. Byte and two-byte write operations return a
TEA signal to the local bus. Read-modi fy-write oper ations should be us ed
to modify a byte or a two-byte of a register.
Each register definition includes a table with 5 lines:
❏ Line 1 is the base address of the register and the number of bits
defined in the table.
❏ Line 2 shows the bits defined by this table.
❏ Line 3 defines the name of the register or the name of the bits in the
register.
2-20Computer Group Literature Center Web Site
LCSR Programming Model
❏ Line 4 defines the operations pos sible on the regis ter bits as foll ows:
RThis bit is a read-only status bit.
R/WThis bit is readable and writable.
W/ACThis bit can be set and it is automatically cleared. This bit can
also be read.
CWriting a one to this bit clears this bit or another bit. This bit
reads zero.
SWriting a one to this bit sets this bit or another bit. This bit reads
zero.
❏ Line 5 defines the state of the bit following a reset as follows:
PThe bit is affected by powerup reset.
SThe bit is affected by SYSRESET.
LThe bit is affected by local reset.
XThe bit is not affected by reset.