MOTOROLA MVME166-223
Specifications
Operating temperature
0° to 55° C at point of entry of forced air (approximately 490 LFM)
PC board with mezzanine module only
Height 9.187 inches (233.35 mm), Depth 6.299 inches (160.00 mm), Thickness 0.662 inches (16.77 mm)
PC boards with connectors and front panel
Height 10.309 inches (261.85 mm), Depth 7.4 inches (188 mm), Thickness 0.80 inches (20.32 mm)
Physical dimensions
Double-high VMEboard
Power requirements (excluding external LAN transceiver) (at 33 MHz with 32
+5 Vdc (± 5%), 5.0 A (typical), 6.5 A (max.) (includes transition modules), +12 Vdc (± 5%), 100 mA (max.) (1.0 A (max.) with offboard LAN transceiver), -12 Vdc (± 5%), 100 mA (max.)
Relative humidity
5% to 90% (non-condensing)
Storage temperature
-40° to +85° C
Features
- 1 MB of Flash memory and a download EPROM
- 128KB SRAM (with battery backup)
- 4/8/16/32/64/128/256MB of 32-bit DRAM with ECC protection
- 8K by 8 RAM and time of day clock with battery backup
- Eight software interrupts
- Four 32-bit tick timers for periodic interrupts
- MC68040 Microprocessor
- RESET and ABORT switches
- Status LEDs for FAIL, STAT, RUN, SCON, LAN, RPWR, SCSI, VME, TPWR and VSB
- Watchdog timer
Datasheet
Extracted Text
MVME166
Single Board Computer
Installation Guide
(MVME166IG/D2)
Notice
While reasonable efforts have been made to assure the accuracy of this document,
Motorola, Inc. assumes no liability resulting from any omissions in this document, or
from the use of the information obtained therein. Motorola reserves the right to revise
this document and to make changes from time to time in the content hereof without
obligation of Motorola to notify any person of such revision or changes.
No part of this material may be reproduced or copied in any tangible 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 possible that this publication may contain reference to, or information about
Motorola products (machines and programs), programming, or services that are not
announced in your country. Such references or information must not be construed to
mean that Motorola intends to announce such Motorola products, programming, or
services in your country.
Restricted Right 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 general board level hardware description, hardware preparation
and installation instructions, debugger general information, and using the debugger;
for the MVME166 Single Board Computer.
This manual is intended for anyone who wants to provide OEM systems, supply
additional capability to an existing compatible system, or work in a lab environment
for experimental purposes.
A basic knowledge of computers, and digital logic is assumed.
After using this manual, you may wish to become familiar with the publications listed
in the Related Documentation section in Chapter 1 of this manual. This installation guide
is based on these other documents.
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 License for Computer Programs (Article 14) contained in
Motorola's Terms and Conditions of Sale, Rev. 1/79.
This equipment generates, uses, and can radiate radio
! frequency energy and if not installed and used in
accordance with the documentation for this product, may
WARNING
cause interference to radio communications. It has been
tested and found to comply with the limits for a Class A
Computing Device pursuant to Subpart J of Part 15 of FCC
rules, which are designed to provide reasonable protection
against such interference when operated in a commercial
environment. Operation of this equipment in a residential
area is likely to cause interference in which case the user, at
the user’s own expense, will be required to take whatever
measures necessary to correct the interference.
Motorola and the Motorola symbol are registered trademarks of Motorola, Inc.
Delta Series, VMEmodule, and VMEsystem are trademarks of Motorola, Inc.
Timekeeper and Zeropower are trademarks of Thompson Components.
All other products mentioned in this document are trademarks or registered
trademarks of their respective holders.
©Copyright Motorola 1993, 1994
All Rights Reserved
Printed in the United States of America
April 1994
Safety Summary
Safety Depends On You
The following general safety precautions must be observed during all phases of
operation, service, and repair of this equipment. Failure to comply with these
precautions or with specific warnings elsewhere in this manual violates safety
standards of design, manufacture, and intended use of the equipment. Motorola, Inc.
assumes no liability for the customer's failure to comply with these requirements.
The safety precautions listed below represent warnings of certain dangers of which
Motorola is aware. You, as the user of the product, should follow these warnings and
all other safety precautions necessary for the safe operation of the equipment in your
operating environment.
Ground the Instrument.
To minimize shock hazard, the equipment chassis and enclosure must be connected to
an electrical ground. The equipment is supplied with a three-conductor AC power
cable. The power cable must either be plugged into an approved three-contact
electrical outlet or used with a three-contact to two-contact adapter, with the
grounding wire (green) firmly connected to an electrical ground (safety ground) at the
power outlet. The power jack and mating plug of the power cable meet International
Electrotechnical Commission (IEC) safety standards.
Do Not Operate in an Explosive Atmosphere.
Do not operate the equipment in the presence of flammable gases or fumes. Operation
of any electrical equipment in such an environment constitutes a definite safety hazard.
Keep Away From Live Circuits.
Operating personnel must not remove equipment covers. Only Factory Authorized
Service Personnel or other qualified maintenance personnel may remove equipment
covers for internal subassembly or component replacement or any internal adjustment.
Do not replace components with power cable connected. Under certain conditions,
dangerous voltages may exist even with the power cable removed. To avoid injuries,
always disconnect power and discharge circuits before touching them.
Do Not Service or Adjust Alone.
Do not attempt internal service or adjustment unless another person, capable of
rendering first aid and resuscitation, is present.
Use Caution When Exposing or Handling the CRT.
Breakage of the Cathode-Ray Tube (CRT) causes a high-velocity scattering of glass
fragments (implosion). To prevent CRT implosion, avoid rough handling or jarring of
the equipment. Handling of the CRT should be done only by qualified maintenance
personnel using approved safety mask and gloves.
Do Not Substitute Parts or Modify Equipment.
Because of the danger of introducing additional hazards, do not install substitute parts
or perform any unauthorized modification of the equipment. Contact your local
Motorola representative for service and repair to ensure that safety features are
maintained.
Dangerous Procedure Warnings.
Warnings, such as the example below, precede potentially dangerous procedures
throughout this manual. Instructions contained in the warnings must be followed. You
should also employ all other safety precautions which you deem necessary for the
operation of the equipment in your operating environment.
Dangerous voltages, capable of causing death, are present in
this equipment. Use extreme caution when handling,
!
testing, and adjusting.
WARNING
Contents
CHAPTER 1 BOARD LEVEL HARDWARE DESCRIPTION
Introduction .............................................................................................................1-1
Overview...........................................................................................................1-1
Related Documentation ..................................................................................1-2
Requirements....................................................................................................1-5
Features .............................................................................................................1-5
Specifications ....................................................................................................1-6
Manual Terminology .......................................................................................1-6
Block Diagram .........................................................................................................1-8
Functional Description ...........................................................................................1-9
Front Panel Switches and Indicators.............................................................1-9
Data Bus Structure .........................................................................................1-10
MC68040 MPU ...............................................................................................1-10
Flash Memory and Download EPROM......................................................1-10
SRAM...............................................................................................................1-11
Onboard DRAM.............................................................................................1-12
Battery Backed Up RAM and Clock............................................................1-13
VMEbus Interface ..........................................................................................1-13
VME Subsystem Bus (VSB) Interface ..........................................................1-13
I/O Interfaces .................................................................................................1-13
Serial Port Interface ................................................................................1-13
MC68230 Parallel Interface/Timer.......................................................1-14
Parallel Port Interface.............................................................................1-15
Ethernet Interface....................................................................................1-15
SCSI Interface ..........................................................................................1-16
SCSI Termination....................................................................................1-16
Local Resources ..............................................................................................1-16
Programmable Tick Timers...................................................................1-17
Watchdog Timer .....................................................................................1-17
Software-Programmable Hardware Interrupts..................................1-17
Local Bus Timeout ..................................................................................1-17
Connectors ......................................................................................................1-17
Memory Maps .......................................................................................................1-18
Local Bus Memory Map................................................................................1-18
Normal Address Range .........................................................................1-18
VMEbus Memory Map..................................................................................1-22
vii
VMEbus Accesses to the Local Bus...................................................... 1-22
VMEbus Short I/O Memory Map............................................................1-22
VSB Memory Map .............................................................................................1-22
CHAPTER 2 HARDWARE PREPARATION AND INSTALLATION
Introduction.................................................................................................................2-1
Unpacking Instructions..............................................................................................2-1
Hardware Preparation ...............................................................................................2-1
SCSI Terminator Enable Header J2 ...................................................................2-2
General Purpose Readable Jumpers on Header J3 .........................................2-4
System Controller Header J6..............................................................................2-4
SRAM Backup Power Source Select Header J7 ...............................................2-5
Installation Instructions .............................................................................................2-6
MVME166 Module Installation .........................................................................2-6
System Considerations .......................................................................................2-8
CHAPTER 3 DEBUGGER GENERAL INFORMATION
Overview of M68000 Firmware ................................................................................3-1
Description of 166Bug ................................................................................................3-1
166Bug Implementation.............................................................................................3-3
Installation and Startup .............................................................................................3-3
BOOTBUG ...................................................................................................................3-7
166BBug Implementation ...................................................................................3-7
Execute User Program ........................................................................................3-8
Setup System Parameters ...................................................................................3-8
Autoboot ......................................................................................................................3-9
ROMboot....................................................................................................................3-10
Network Boot ............................................................................................................3-10
Restarting the System...............................................................................................3-11
Reset ....................................................................................................................3-11
Abort....................................................................................................................3-12
Break....................................................................................................................3-12
SYSFAIL* Assertion/Negation........................................................................3-12
MPU Clock Speed Calculation ........................................................................3-13
Memory Requirements ............................................................................................3-13
Terminal Input/Output Control.............................................................................3-14
Disk I/O Support......................................................................................................3-15
Blocks Versus Sectors ........................................................................................3-15
viii
Device Probe Function ..................................................................................... 3-16
Disk I/O via 166Bug Commands ................................................................... 3-16
IOI (Input/Output Inquiry) ..................................................................... 3-16
IOP (Physical I/O to Disk) ....................................................................... 3-16
IOT (I/O Teach) ......................................................................................... 3-16
IOC (I/O Control)...................................................................................... 3-17
BO (Bootstrap Operating System)........................................................... 3-17
BH (Bootstrap and Halt) ........................................................................... 3-17
Disk I/O via 166Bug System Calls ................................................................. 3-17
Default 166Bug Controller and Device Parameters ..................................... 3-18
Disk I/O Error Codes....................................................................................... 3-19
Network I/O Support ............................................................................................. 3-19
Intel 82596 LAN Coprocessor Ethernet Driver............................................. 3-19
UDP/IP Protocol Modules .............................................................................. 3-19
RARP/ARP Protocol Modules........................................................................ 3-20
BOOTP Protocol Module ................................................................................. 3-20
TFTP Protocol Module...................................................................................... 3-20
Network Boot Control Module ....................................................................... 3-20
Network I/O Error Codes ............................................................................... 3-20
Multiprocessor Support .......................................................................................... 3-21
Multiprocessor Control Register (MPCR) Method ...................................... 3-21
GCSR Method.................................................................................................... 3-23
Diagnostic Facilities ................................................................................................. 3-23
CHAPTER 4 USING THE 166Bug DEBUGGER
Entering Debugger Command Lines ...................................................................... 4-1
Syntactic Variables .............................................................................................. 4-2
Expression as a Parameter.......................................................................... 4-3
Address as a Parameter .............................................................................. 4-4
Address Formats.......................................................................................... 4-4
Offset Registers ............................................................................................ 4-6
Port Numbers ...................................................................................................... 4-8
Entering and Debugging Programs......................................................................... 4-9
Calling System Utilities from User Programs........................................................ 4-9
Preserving the Debugger Operating Environment ............................................... 4-9
166Bug Vector Table and Workspace.............................................................. 4-10
Hardware Functions......................................................................................... 4-10
Exception Vectors Used by 166Bug ................................................................ 4-11
Using 166Bug Target Vector Table.......................................................... 4-12
Creating a New Vector Table................................................................... 4-13
ix
166Bug Generalized Exception Handler.................................................4-15
Floating Point Support.............................................................................................4-17
Single Precision Real .........................................................................................4-18
Double Precision Real .......................................................................................4-18
Extended Precision Real ...................................................................................4-18
Packed Decimal Real.........................................................................................4-19
Scientific Notation .............................................................................................4-19
The 166Bug Debugger Command Set....................................................................4-20
APPENDIX A CONFIGURE AND ENVIRONMENT COMMANDS
Configure Board Information Block........................................................................A-1
Set Environment to Bug/Operating System..........................................................A-2
APPENDIX B DISK/TAPE CONTROLLER DATA
Disk/Tape Controller Modules Supported............................................................ B-1
Disk/Tape Controller Default Configurations ...................................................... B-2
IOT Command Parameters for Supported Floppy Types.................................... B-5
APPENDIX C NETWORK CONTROLLER DATA
Network Controller Modules Supported...............................................................C-1
x
List of Figures
FIGURES
Figure 1-1. MVME166 Block Diagram..................................................................1-8
Figure 2-1. MVME166 Switches, Headers, Connectors, Fuses, and LEDs......2-3
xi
xii
List of Tables
TABLES
Table 1-1. MVME166 Specifications......................................................................1-6
Table 1-2. Local Bus Memory Map .....................................................................1-19
Table 1-3. Local I/O Devices Memory Map ......................................................1-20
Table 4-1. Debugger Address Parameter Formats..............................................4-5
Table 4-2. Exception Vectors Used by 166Bug...................................................4-11
Table 4-3. Debugger Commands.........................................................................4-20
Table A-1. ENV Command Parameters ..............................................................A-3
xiii
xiv
BOARD LEVEL
1
HARDWARE DESCRIPTION
Introduction
This chapter describes the board level hardware features of the MVME166
Single Board Computers. The chapter is organized with a board level
overview and features list in this introduction, followed by a more detailed
hardware functional description. Front panel switches and indicators are
included in the detailed hardware functional description. The chapter closes
with some general memory maps.
All programmable registers in the MVME166 that reside in ASICs are covered
in the MVME166/MVME167/MVME187 Single Board Computers Programmer's
Reference Guide.
Overview
The MVME166 is based on the MC68040 microprocessor. The MVME166 has
4/8/16/32/64/128/256 MB of ECC-protected DRAM, 1 MB of Flash memory
with download EPROM, 128KB of static RAM (with battery backup), 8KB of
static RAM and time of day clock (with battery backup), Ethernet transceiver
interface, four serial ports with TTL interface, four tick timers, watchdog timer,
SCSI bus interface with DMA, Centronics printer port,
A16/A24/A32/D8/D16/D32/D64 VMEbus master/slave interface, VMEbus
system controller, and a VSB interface.
The I/O connection for the MVME166 is provided by two high density
shielded front panel I/O connectors. The SCSI bus is connected through a 68
pin connector. The printer, four serial ports and Ethernet interface are
connected through a 100 pin connector. The MVME712-10 transition module
and the MVME712-06/07/09 I/O distribution board set were designed to
support the MVME166 boards. These transition boards provide configuration
headers, serial port drivers and industry standard connectors for the I/O
devices.
The VMEbus interface is provided by an ASIC called the VMEchip2. The
VMEchip2 includes two tick timers, a watchdog timer, programmable map
decoders for the master and slave interfaces, and a VMEbus to/from local bus
DMA controller, a VMEbus to/from local bus non-DMA programmed access
interface, a VMEbus interrupter, a VMEbus system controller, a VMEbus
interrupt handler, and a VMEbus requester.
MVME166IG/D21-1
Board Level Hardware Description
1
Processor-to-VMEbus transfers can be D8, D16, or D32. VMEchip2 DMA
transfers to the VMEbus, however, can be D16, D32, D16/BLT, D32/BLT, or
D64/MBLT.
The VSBchip2 provides the VSB interface on the MVME166. The VSBchip2
includes programmable map decoders for the master and slave interfaces, a
VSB master interface, a VSB slave interface, a VSB interrupter, a VSB interrupt
handler, a VSB serial requester, a VSB serial arbiter, and a VSB parallel
requester. The VSB is connected to the P2 connector rows A and C on the
MVME166.
The PCCchip2 ASIC provides two tick timers and the interface to the LAN
chip, SCSI chip, serial port chip, printer port, BBRAM, and download EPROM
for Flash memory.
The MCECC memory controller ASIC provides the programmable interface
for the ECC-protected DRAM mezzanine board.
Related Documentation
The MVME166 does not ship with all of the documentation that is available for
the product. The MVME166 instead ships with a start-up installation guide
(the document you are presently reading) that includes all the information
necessary to begin working with these products: installation instructions,
jumper configuration information, memory maps, debugger/monitor
commands, and any other information needed for start-up of the board. The
installation guide is MVME166IG/D for the MVME166.
The following publications are applicable to the MVME166 and may provide
additional helpful information. They may be purchased by contacting your
local Motorola sales office. Non-Motorola documents may be purchased from
the sources listed.
Motorola
Document Title
Publication Number
MVME166 Single Board Computer User's Manual MVME166
MVME166 Single Board Computer Support Information SIMVME166
MVME167Bug Debugging Package User's Manual MVME167BUG
Debugging Package for Motorola 68K CISC CPUs User's 68KBUG
Manual
1-2 MVME166 Single Board Computer Installation Guide
Introduction
1
Motorola
Document Title
Publication Number
Single Board Computers SCSI Software User's Manual SBCSCSI
MVME166/MVME167/MVME187 Single Board MVME187PG
Computers Programmer's Reference Guide
MVME712-06/07/09 I/O Distribution Board Set User's MVME712IO
Manual
MVME712-10 Transition Module User's Manual MVME712-10
M68040 Microprocessors User's Manual M68040UM
The SIMVME166 manual contains: the connector
Notes
interconnect signal information, parts lists, and the
schematics; for the MVME166.
Although not shown in the above list, each Motorola
Computer Group manual publication number is suffixed
with characters which represent the revision level of the
document, such as "/D2" (the second revision of a manual);
a supplement bears the same number as a manual but has a
suffix such as "/D2A1" (the first supplement to the second
edition of the manual).
These manuals may also be ordered in documentation sets as follows:
68-MVME166SET for use with the MVME166.
MVME166/D
MVME167BUG/D
68KBUG/D
SBCSCSI/D
MVME187PG/D
SIMVME166/D
MVME166IG/D2 1-3
Board Level Hardware Description
1
To further assist your development effort, Motorola has collected user's
manuals for each of the peripheral controllers used on the MVME166 from the
suppliers. This bundle, which can be ordered as part number 68-1X7DS,
includes manuals for the following:
NCR 53C710 SCSI Controller Data Manual and Programmer's Guide
Intel i82596 Ethernet Controller User's Manual
Cirrus Logic CD2401 Serial Controller User's Manual
SGS-Thompson MK48T08 NVRAM/TOD Clock Data Sheet
The following publications are also available from the sources indicated.
Versatile Backplane Bus: VMEbus, ANSI/IEEE Std 1014-1987, The Institute of
Electrical and Electronics Engineers, Inc., 345 East 47th Street, New York, NY
10017 (VMEbus Specification). (This is also Microprocessor System Bus for 1 to 4
Byte Data, IEC 821 BUS, Bureau Central de la Commission Electrotechnique
Internationale; 3,rue de Varembé, Geneva, Switzerland.)
IEEE Standard for Multiplexed High-Performance Bus Structure: VSB, ANSI/IEEE
Std 1096-1988, The Institute of Electrical and Electronics Engineers, Inc., 345
East 47th Street, New York, NY 10017 (VSB Specification). (This is also Parallel
Sub-system Bus of the IEC 821 VMEbus, IEC 822 VSB, Bureau Central de la
Commission Electrotechnique Internationale; 3,rue de Varembé, Geneva,
Switzerland.)
ANSI Small Computer System Interface-2 (SCSI-2), Draft Document X3.131-198X,
Revision 10c; Global Engineering Documents, P.O. Box 19539, Irvine, CA
92714.
CL-CD2400/2401 Four-Channel Multi-Protocol Communications Controller Data
Sheet, order number 542400-003; Cirrus Logic, Inc., 3100 West Warren Ave.,
Fremont, CA 94538.
82596CA Local Area Network Coprocessor Data Sheet, order number 290218; and
82596 User's Manual, order number 296853; Intel Corporation, Literature Sales,
P.O. Box 58130, Santa Clara, CA 95052-8130.
NCR 53C710 SCSI I/O Processor Data Manual, order number NCR53C710DM;
and NCR 53C710 SCSI I/O Processor Programmer’s Guide, order number
NCR53C710PG; NCR Corporation, Microelectronics Products Division,
Colorado Springs, CO.
TM TM
MK48T08(B) Timekeeper and 8Kx8 Zeropower RAM data sheet in Static
RAMs Databook, order number DBSRAM71; SGS-THOMPSON
Microelectronics Group; North & South American Marketing Headquarters,
1000 East Bell Road, Phoenix, AZ 85022-2699.
i28F020 Flash Memory Data Sheet, order number 290245; Intel Literature Sales,
P.O. Box 7641, Mt. Prospect, IL 60056-7641.
1-4 MVME166 Single Board Computer Installation Guide
Introduction
1
Requirements
These boards are designed to conform to the requirements of the following
documents:
� VMEbus Specification (IEEE 1014-87)
� EIA-232-D Serial Interface Specification, EIA
� SCSI Specification, ANSI
� VSB Specification (IEEE 1096-1988)
Features
Features of the MVME166 are listed below.
� MC68040 Microprocessor
� 4/8/16/32/64/128/256MB of 32-bit DRAM with ECC protection
� 1 MB of Flash memory and a download EPROM
� 128KB SRAM (with battery backup)
� Status LEDs for FAIL, STAT, RUN, SCON, LAN, RPWR, SCSI, VME, TPWR and VSB
� 8K by 8 RAM and time of day clock with battery backup
� RESET and ABORT switches
� Four 32-bit tick timers for periodic interrupts
� Watchdog timer
� Eight software interrupts
� I/O
– SCSI Bus interface with DMA
– Four serial ports with TTL buffers
– Centronics printer port
– Ethernet transceiver interface with DMA
� VMEbus interface
– VMEbus system controller functions
– VMEbus to local bus interface (A24/A32,
D8/D16/D32 (D8/D16/D32/D64BLT) (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/D64BLT))
� VSB interface
– Local bus to VSB interface (A16/A24/A32, D8/D16/D32)
– VSB to local bus interface (A16/A24/A32, D8/D16/D32)
– Control and Status Register sets (Board CSRs accessible from both
local bus and VSB; local CSRs accessible from local bus)
(Includes Global CSR for IPC (General Purpose Registers 1 and 2))
– Local bus interrupter
– VSB interrupter and VSB interrupt handler
– Bidirectional write posting - local bus to VSB and VSB to local bus
– EVSB compatible
MVME166IG/D2 1-5
Board Level Hardware Description
1
Specifications
General specifications for the MVME166 are listed in Table 1-1.
Table 1-1. MVME166 Specifications
Characteristics Specifications
Power requirements +5 Vdc (± 5%), 5.0 A (typical), 6.5 A (max.)
(includes transition modules)
(excluding external LAN
transceiver) +12 Vdc (± 5%), 100 mA (max.) (1.0 A
(max.) with offboard LAN transceiver)
(at 33 MHz with 32 MB
ECC memory) -12 Vdc (± 5%), 100 mA (max.)
Operating temperature 0° to 55° C at point of entry of forced air
(approximately 490 LFM)
Storage temperature -40° to +85° C
Relative humidity 5% to 90% (non-condensing)
Physical dimensions Double-high VMEboard
PC board with mezzanine
module only
Height 9.187 inches (233.35 mm)
Depth 6.299 inches (160.00 mm)
Thickness 0.662 inches (16.77 mm)
PC boards with connectors
and front panel
Height 10.309 inches (261.85 mm)
Depth 7.4 inches (188 mm)
Thickness 0.80 inches (20.32 mm)
Manual Terminology
Throughout this manual, a convention is used which precedes data and
address parameters by a character identifying the numeric format as follows:
$ dollar specifies a hexadecimal character
% percent specifies a binary number
& ampersand specifies 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 (*) following the signal name for signals which are level significant
denotes that the signal is true or valid when the signal is low.
1-6 MVME166 Single Board Computer Installation Guide
Introduction
1
An asterisk (*) following the signal name for signals which are edge significant
denotes 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 is active
or true; negation and negate indicate a signal that is inactive or false. These
terms are used independently of the voltage level (high or low) that they
represent.
Data and address sizes are defined as follows:
� A byte is eight bits, numbered 0 through 7, with bit 0 being the least
significant.
� A two-byte is 16 bits, numbered 0 through 15, with bit 0 being the least
significant. For the MVME166 and other CISC modules, this is called a
word.
� A four-byte is 32 bits, numbered 0 through 31, with bit 0 being the least
significant. For the MVME166 and other CISC modules, this is called a
longword.
The terms control bit and status bit are used extensively in this 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 indicate that
the bit is in the state that disables the function it controls. In all tables, the
terms 0 and 1 are used to describe the actual value that should be written to
the bit, or the value that it yields when read. The term status bit 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.
MVME166IG/D2 1-7
Board Level Hardware Description
1
Block Diagram
Figure 1-1 is a general block diagram of the MVME166.
MK48T08
82596CA CD2401
53C710 PRINTER
BBRAM
MC68040 LAN SCC
SCSI PORT
& CLOCK
ETHERNET SERIAL IO
DOWNLOAD
PCCchip2
EPROM
128KB
DRAM VMEchip2
FLASH VSBchip2 STATIC
RAM
VMEbus VSB
bd078 9304
Figure 1-1. MVME166 Block Diagram
1-8 MVME166 Single Board Computer Installation Guide
Functional Description
1
Functional Description
This section contains a functional description of the major blocks on the
MVME166 Single Board Computers.
Front Panel Switches and Indicators
There are switches and LEDs on the front panel of the MVME166. The
switches are RESET and ABORT. The RESET switch resets all onboard devices
and drives SYSRESET* if the board is system controller. The RESET switch
may be disabled by software.
When enabled by software, the ABORT switch generates an interrupt at a user-
programmable level. It is normally used to abort program execution and
return to the debugger.
There are ten LEDs on the MVME166 front panel: FAIL, STAT, RUN, SCON,
LAN, RPWR, SCSI, VME, TPWR and VSB.
The red FAIL LED (part of DS1) lights when the BRDFAIL signal line is active.
The MC68040 status lines are decoded, on the MVME166, to drive the yellow
STAT (status) LED (part of DS1). In this case, a halt condition from the
processor lights the LED.
The green RUN LED (part of DS2) lights when the local bus TIP* signal line is
low. This indicates one of the local bus masters is executing a local bus cycle.
The green SCON LED (part of DS2) lights when the VMEchip2 in the
MVME166 is the VMEbus system controller.
The green LAN LED (part of DS3) lights when the LAN chip is local bus
master.
The MVME166 supplies +5V, +12V, and -12V power to the transition board
through fuses. There is one fuse for each voltage. The green RPWR (remote
power) LED (part of DS3) lights when all three voltages are available to the
transition board interface.
The green SCSI LED (part of DS4) lights when the SCSI chip is local bus master.
The green VME LED (part of DS4) lights when the board is using the VMEbus
(VMEbus AS* is asserted by the VMEchip2) or when the board is accessed by
the VMEbus (VMEchip2 is the local bus master).
The MVME166 supplies +5V to the SCSI bus for terminator power through a
fuse. The green TPWR (terminator power) LED (part of DS5) lights when
TERMPWR is available to the SCSI bus. SCSI bus TERMPWR may be supplied
by other devices on the SCSI bus.
The green VSB LED (part of DS5) lights when the MVME166 is using the VSB
(VSB PAS* is asserted by the VSBchip2) or when the MVME166 is accessed by
the VSB (VSBchip2 is the local bus master).
MVME166IG/D2 1-9
Board Level Hardware Description
1
Data Bus Structure
The local data bus on the MVME166 is a 32-bit synchronous bus that is based
on the MC68040 bus, and supports burst transfers and snooping. The various
local bus master and slave devices use the local bus to communicate. The local
bus is arbitrated by priority type arbiter and the priority of the local bus
masters from highest to lowest is: 82596CA LAN, CD2401 serial (through the
PCCchip2), 53C710 SCSI, VSB, VMEbus, and MPU. In the general case, any
master can access any slave; however, not all combinations pass the common
sense test. Refer to the MVME166/MVME167/MVME187 Single Board
Computers Programmer's Reference Guide and to the user's guide for each device
to determine its port size, data bus connection, and any restrictions that apply
when accessing the device.
MC68040 MPU
The MC68040 processor is used on the MVME166. The MC68040 has on-chip
instruction and data caches and a floating point processor. Refer to the
M68040 user's manual for more information.
Flash Memory and Download EPROM
The MVME166 includes four 28F020 Flash memory devices and a download
EPROM. These parts replace the four EPROM sockets used on the
MVME167/187. The Flash parts are programmable on the MVME166 board
and the programming code is provided in the download EPROM. The Flash
devices provide 1 MB of ROM at address $FF800000-$FF8FFFFF. The
download EPROM provides 128 KB of ROM at $FFF80000-$FFF9FFFF. The
download EPROM is mapped to local bus address 0 following a local bus reset.
This allows the MC68040 to access the stack pointer and execution address
following a reset. The download EPROM appears at 0 until the DR0 bit is
cleared in the PCCchip2 chip. The Flash devices are controlled by the
VMEchip2 and the download EPROM is controlled by the PCCchip2. The PC0
bit in the MC68230 PI/T chip must be low to enable writes to Flash.
The EPROM contains the BootBug product (166BBug). Because Flash memory
can be electronically erased, the EPROM firmware is a subset of the regular
debugger product. It contains enough functionality from the debugger to
permit downloading of object code (via VMEbus, serial port, SCSI bus, or the
network) and reprogramming of the Flash memory.
A jumper on the MVME166 (J3, pins 7 and 8) controls the operation of the
BootBug. If the jumper is in place, the BootBug (which always executes at
power-up and reset) passes execution to the full debugger contained in Flash
memory. If the jumper is removed, execution continues (with diminished
functionality) in the BootBug.
1-10 MVME166 Single Board Computer Installation Guide
Functional Description
1
Before you perform any SCSI, VMEbus, or Ethernet I/O with the MVME166,
it may be necessary to define some parameters (e.g., SCSI ID, Ethernet address,
VMEbus mapping). For details on configuring the MVME166, refer to the
setup command description in Chapter 3 in this manual, and in the
MVME167Bug Debugging Package User's Manual.
SRAM
The boards include 128KB of 32-bit wide static RAM with onboard battery
backup that supports 8-, 16-, and 32-bit wide accesses. The SRAM allows the
debugger to operate and limited diagnostics to be executed without the
DRAM mezzanine. The SRAM is controlled by the VMEchip2, and the access
time is programmable. The boards are populated with 100 ns SRAMs.
The SRAM is also battery backed up on the MVME166. The battery backup
function is provided by a Dallas DS1210S. The DS1210S supports primary and
secondary power sources. When the main board power fails, the DS1210S
selects the source with the highest voltage. If one source should fail, the
DS1210S switches to the redundant source. Each time the board is powered,
the DS1210S checks power sources and if the voltage of the backup sources is
less than two volts, the second memory cycle is blocked. This allows software
to provide an early warning to avoid data loss. Because the DS1210S may
block the second access, the software should do at least two accesses before
relying on the data.
The MVME166 provides jumpers that allow either power source of the
DS1210S to be connected to the VMEbus +5 V STDBY pin or one cell of the
onboard battery. For example, the primary system backup source may be a
battery connected to the VMEbus +5 V STDBY pin and the secondary source
may be the onboard battery. If the system source should fail or the board is
removed from the chassis, the onboard battery takes over.
For proper operation of the SRAM, some jumper
Caution
combination must be installed on the Backup Power Source
Select Header. If one of the jumpers is used to select the
battery, the battery must be installed on the MVME166. The
SRAM may malfunction if inputs to the DS1210S are left
unconnected.
The onboard power source is a RAYOVAC FB1225 battery which has two
BR1225 type lithium cells and is socketed for easy removal and replacement.
A small capacitor is provided to allow the battery to be quickly replaced
without data loss. The lifetime of the battery is very dependent on the ambient
temperature of the board and the power-on duty cycle. The lithium battery
supplied on the MVME166 should provide at least two years of backup time
MVME166IG/D2 1-11
Board Level Hardware Description
1
with the board powered off and the board at 40° C. If the power-on duty cycle
is 50% (the board is powered on half of the time), the battery lifetime is four
years. At lower ambient temperatures the backup time is greatly extended
and may approach the shelf life of the battery. When a board is stored, the
battery should be disconnected to prolong battery life. This is especially
important at high ambient temperatures. The MVME166 is shipped with the
batteries disconnected.
The power leads from the battery are exposed on the solder side of the board,
therefore the board should not be placed on a conductive surface or stored in
a conductive bag unless the battery is removed.
Lithium batteries incorporate inflammable materials such
Caution
as lithium and organic solvents. If lithium batteries are
mistreated or handled incorrectly, they may burst open and
ignite, possibly resulting in injury and/or fire. When
dealing with lithium batteries, carefully follow the
precautions listed below in order to prevent accidents.
� Do not short circuit.
� Do not disassemble, deform, or apply excessive pressure.
� Do not heat or incinerate.
� Do not apply solder directly.
� Do not use different models, or new and old batteries together.
� Do not charge.
� Always check proper polarity.
To remove the battery from the module, carefully pull the battery from the
socket.
Before installing a new battery, ensure that the battery pins are clean. Note the
battery polarity and press the battery into the socket. When the battery is in
the socket, no soldering is required.
Onboard DRAM
The MVME166 onboard DRAM is located on a mezzanine board. The
mezzanine boards are available in different sizes and with ECC protection.
Mezzanine board sizes are 4, 8, 16, 32, 64, or 128MB, and two mezzanine
boards may be stacked to provide 256MB of onboard RAM. The main board
and a single mezzanine board together take one slot. The stacked
configuration requires two VMEboard slots. The DRAM is four-way
interleaved to efficiently support cache burst cycles.
1-12 MVME166 Single Board Computer Installation Guide
Functional Description
1
The DRAM map decoder can be programmed to accommodate different base
address(es) and sizes of mezzanine boards. The onboard DRAM is disabled
by a local bus reset and must be programmed before the DRAM can be
accessed. Refer to the MCECC in the MVME166/MVME167/MVME187 Single
Board Computers Programmer's Reference Guide for detailed programming
information. Most DRAM devices require some number of access cycles
before the DRAMs are fully operational. Normally this requirement is met by
the onboard refresh circuitry and normal DRAM installation. However,
software should insure a minimum of 10 initialization cycles are performed to
each bank of RAM.
Battery Backed Up RAM and Clock
The MK48T08 RAM and clock chip is used on the MVME166. This chip
provides a time of day clock, oscillator, crystal, power fail detection, memory
write protection, 8KB of RAM, and a battery in one 28-pin package. The clock
provides seconds, minutes, hours, day, date, month, and year in BCD 24-hour
format. Corrections for 28-, 29- (leap year), and 30-day months are
automatically made. No interrupts are generated by the clock. The MK48T08
is an 8 bit device; however, the interface provided by the PCCchip2 supports
8-, 16-, and 32-bit accesses to the MK48T08. Refer to the MK48T08 data sheet
for detailed programming information.
VMEbus Interface
The local bus to VMEbus interface, the VMEbus to local bus interface, and the
local-VMEbus DMA controller functions on the MVME166 are provided by
the VMEchip2. The VMEchip2 can also provide the VMEbus system controller
functions.
VME Subsystem Bus (VSB) Interface
The local bus to VSB interface and the VSB to local bus interface are provided
by the VSBchip2, only on the MVME166 board. The VSB uses the P2 connector
of the MVME166.
I/O Interfaces
The MVME166 provides onboard I/O for many system applications. The I/O
functions include serial ports, printer port, Ethernet transceiver interface, and
SCSI mass storage interface.
Serial Port Interface
The CD2401 serial controller chip (SCC) is used to implement the four serial
ports. The serial ports support the standard baud rates (110 to 38.4K baud).
The four serial ports on the MVME166 are functionally the same. All serial
ports are full function asynchronous or synchronous ports. They can operate
MVME166IG/D2 1-13
Board Level Hardware Description
1
at synchronous bit rates up to 64 k bits per second. They use RXD, CTS, DCD,
TXD, RTS, DTR, and DSR. They also interface to the synchronous clock signal
lines. Additional control signals are provided for each serial port by the
MC68230. These include local loopback control, self test control, and ring
indicator. The ring indicator signal can be programmed to generate a local bus
interrupt. Refer to the MC68230 section for additional information. Note that
the usable functionality of the serial ports depends on the transition module
used.
All four serial ports on the MVME166 use a TTL interface to the transition
board. This allows the interface specific drivers to be located on the transition
board. This allows more flexibility in configuring the serial ports for different
interfaces like EIA-232-D or V.35. An external I/O transition module such as
the MVME712-10 should be used to provide configuration headers, interface
drivers, and industry-standard connectors.
The interface provided by the PCCchip2 allows the 16-bit CD2401 to appear at
contiguous addresses; however, accesses to the CD2401 must be 8 or 16 bits.
32-bit accesses are not permitted. Refer to the CD2401 data sheet for detailed
programming information.
The CD2401 supports DMA operations to local memory. Because the CD2401
does not support a retry operation necessary to break VMEbus or VSB dual
port lockup conditions, the CD2401 DMA controllers should not be
programmed to access the VMEbus or VSB. The hardware does not restrict the
CD2401 to onboard DRAM.
MC68230 Parallel Interface/Timer
The MVME166 provides an MC68230 parallel interface/timer (PI/T) chip.
When the MVME166 is used with the MVME712-10 transition module or the
MVME712-06/07/09 I/O distribution board set, the MC68230 is used to
provide additional control lines for the serial ports. These include local
loopback, self test, and ring indicator. The ring indicator signals can be
programmed to generate local bus interrupts. Refer to the MVME712-10
transition module manual for more information.
The base address of the MC68230 is $FFF45E00, and because it is an 8-bit
device it appears only at odd addresses. Space for the MC68230 was created
by dividing the area occupied by redundant copies of the CD2401 registers
into eight segments. The CD2401 is still addressed at $FFF45000 to $FFF451FF.
Addresses $FFF45200 to $FFF45BFF are reserved, and if accessed on an
MVME166 cause a local bus timeout error, if the local bus timer is enabled.
The address range from $FFF45C00 to $FFF45DFF always returns a local bus
timeout error if the local bus timer is enabled. The CD2401 appears
redundantly from $FFF45200 to $FFF45FFF on the MVME167/187.
1-14 MVME166 Single Board Computer Installation Guide
Functional Description
1
The presence of the MC68230 can be determined by reading address
$FFF45C00. If a timeout error occurs, then the board is an MVME166 and and
the MC68230 is present. If a timeout does not occur, then the board is an
MVME167/187 and the MC68230 is not present. The local bus timeout timer
in the VMEchip2 must be enabled for this test.
The MC68230 may be used for general purpose I/O when the MVME166 is not
used with the MVME712 family of transition modules. Because the outputs
are unbuffered and unprotected, these signals should be used with caution.
The port A signal lines PA<7..0> are connected to the front panel connector J9.
The port A signal lines can be programmed as inputs or outputs. The port B
signal lines PB<3..0> are connected to the port H signal lines H<4..1> and the
front panel connector J9. This allows these four lines to be inputs or outputs
or receive interrupts. The port B signal line PB<7> is also connected to the front
panel connector J9. When used with the MVME712 family of transition
modules, the PB<7> signal line is used to read the configuration of the serial
ports. Timer interrupts from the MC68230 are not supported on the
MVME166. The MC68230 is connected to a 10 MHz clock. The PC0 bit in the
MC68230 PI/T chip must be low to enable writes to Flash memory.
Parallel Port Interface
The PCCchip2 provides an 8-bit bidirectional parallel port. All eight bits of the
port must be either inputs or outputs (no individual selection). In addition to
the 8 bits of data, there are two control pins and five status pins. Each of the
status pins can generate an interrupt to the MPU in any of the following
programmable conditions: high level, low level, high-to-low transition, or
low-to-high transition. This port may be used as a Centronics-compatible
parallel printer port or as a general parallel I/O port.
When used as a parallel printer port, the five status pins function as: Printer
Acknowledge (ACK), Printer Fault (FAULT*), Printer Busy (BSY), Printer
Select (SELECT), and Printer Paper Error (PE); while the control pins act as
Printer Strobe (STROBE*), and Input Prime (INP*).
The PCCchip2 provides an auto-strobe feature similar to that of the MVME147
PCC. In auto-strobe mode, after a write to the Printer Data Register, the
PCCchip2 automatically asserts the STROBE* pin for a selected time specified
by the Printer Fast Strobe control bit. In manual mode, the Printer Strobe
control bit directly controls the state of the STROBE* pin.
Ethernet Interface
The 82596CA is used to implement the Ethernet transceiver interface. The
82596CA accesses local RAM using DMA operations to perform its normal
functions. Because the 82596CA has small internal buffers and the VMEbus
has an undefined latency period, buffer overrun may occur if the DMA is
programmed to access the VMEbus. Therefore, the 82596CA should not be
programmed to access the VMEbus or VSB.
MVME166IG/D2 1-15
Board Level Hardware Description
1
Every MVME166 is assigned an Ethernet Station Address. The address is
$08003E2XXXXX where XXXXX is the unique 5-nibble number assigned to the
board (i.e., every MVME166 has a different value for XXXXX).
Each module has an Ethernet Station Address displayed on a label attached to
the VMEbus P2 connector. In addition, the six bytes including the Ethernet
address are stored in the configuration area of the BBRAM. That is,
08003E2XXXXX is stored in the BBRAM. At an address of $FFFC1F2C, the
upper four bytes (08003E2X) can be read. At an address of $FFFC1F30, the
lower two bytes (XXXX) can be read. The MVME166 debugger has the
capability to retrieve or set the Ethernet address. So does the MVME166
BootBug.
If the data in the BBRAM is lost, the user should use the number on the
VMEbus P2 connector label to restore it.
The Ethernet transceiver interface is located on the MVME166 main module,
and the industry standard connector is located on the MVME712X transition
module.
Support functions for the 82596CA are provided by the PCCchip2. Refer to the
82596CA user's guide for detailed programming information.
SCSI Interface
The MVME166 provides for mass storage subsystems through the industry-
standard SCSI bus. These subsystems may include hard and floppy disk
drives, streaming tape drives, and other mass storage devices. The SCSI
interface is implemented using the NCR 53C710 SCSI I/O controller.
Support functions for the 53C710 are provided by the PCCchip2. Refer to the
53C710 user's guide for detailed programming information.
SCSI Termination
The individual configuring the system must ensure that the SCSI bus is
properly terminated at both ends. On the MVME166, the SCSI bus termination
is provided on the main board. The terminators are enabled/disabled by a
jumper. If the SCSI bus ends at the MVME166, the SCSI terminators must be
enabled by installing the jumper. Refer to the jumper configuration tables in
Chapter 2.
Local Resources
The MVME166 includes many resources for the local processor. These include
tick timers, software programmable hardware interrupts, watchdog timer,
and local bus timeout.
1-16 MVME166 Single Board Computer Installation Guide
Functional Description
1
Programmable Tick Timers
Four 32-bit programmable tick timers with 1 μs resolution are provided, two
in the VMEchip2 and two in the PCCchip2. The tick timers can be
programmed to generate periodic interrupts to the processor.
Watchdog Timer
A watchdog timer function is provided in the VMEchip2. When the watchdog
timer is enabled, it must be reset by software within the programmed time or
it times out. The watchdog timer can be programmed to generate a SYSRESET
signal, local reset signal, or board fail signal if it times out.
Software-Programmable Hardware Interrupts
Eight software-programmable hardware interrupts are provided by the
VMEchip2. These interrupts allow software to create a hardware interrupt.
Local Bus Timeout
The MVME166 provides a timeout function for the local bus. When the timer
is enabled and a local bus access times out, a Transfer Error Acknowledge
(TEA) signal is sent to the local bus master. The timeout value is selectable by
software for 8 μsec, 64 μsec, 256 μsec, or infinite. The local bus timer does not
operate during VMEbus or VSB bound cycles. VMEbus bound cycles are
timed by the VMEbus access timer and the VMEbus global timer. VSB bound
cycles are timed by the VSB access timer, the VSB transfer timer, and if its serial
arbiter is enabled, by the VSB arbitration timer.
Connectors
The MVME166 has two 96-position DIN connectors: P1 and P2. P1 rows A, B,
C, and P2 row B provide the VMEbus interconnection. P2 rows A and C, on
the MVME166, provide the connection to the VSB. The MVME166 has a 20-pin
connector mounted behind the front panel. When the MVME166 board is
enclosed in a chassis and the front panel is not visible, this connector allows
the reset, abort and LED functions to be extended to the control panel of the
system, where they are visible. The MVME166 has a 68-pin mini D ribbon
shielded connector for the SCSI bus interface. The MVME166 has a 100-pin
mini D ribbon shielded connector for the serial ports, Ethernet, and printer.
MVME166IG/D2 1-17
Board Level Hardware Description
1
Memory Maps
There are two points of view for memory maps: 1) the mapping of all resources
as viewed by local bus masters (local bus memory map), 2) the mapping of
onboard resources as viewed by externa masters (VMEbus memory map or
VSB memory map).
Local Bus Memory Map
The local bus memory map 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 tables. The normal address range is defined by the
Transfer Type (TT) signals on the local bus. On the MVME166, Transfer Types
0, 1, and 2 define the normal address range.
Table 1-2 is the entire map from $00000000 to $FFFFFFFF. Many areas of the
map are user-programmable, and suggested uses are shown in the table. The
cache inhibit function is programmable in the MMUs. The onboard I/O space
must be marked cache inhibit and serialized in its page table.
Table 1-3 further defines the map for the local I/O devices.
1-18 MVME166 Single Board Computer Installation Guide
Memory Maps
1
Table 1-2. Local Bus Memory Map
Software
Address Range Devices Accessed Port Size Size Cache Notes
Inhibit
$00000000 - DRAMSIZE User Programmable D32 DRAMSIZE N 1, 2
(Onboard DRAM)
DRAMSIZE - $FF7FFFFF User Programmable D32/D16 3GB ? 3, 4
(VMEbus or VSB)
$FF800000 - $FF8FFFFF FLASH D32 1MB N 1
$FFC00000 - $FFDFFFFF reserved -- 2MB -- 5
$FFE00000 - $FFE1FFFF SRAM D32 128KB N --
$FFE20000 - $FFEFFFFF SRAM (repeated) D32 896KB N --
$FFF00000 - $FFFEFFFF Local I/O Devices D32-D8 1MB Y 3
(Refer to next table)
$FFFF0000 - $FFFFFFFF User Programmable D32/D16 64KB ? 2, 4
(VMEbus A16)
NOTES:
1. There is 1MB of FLASH in this 4MB map area. Download
EPROM on the MVME166 appears at $00000000 - ROMSIZE
following a local bus reset. The Download EPROM appears
at 0 until the DR0 bit is cleared in the PCCchip2. The DR0 bit
is located at address $FFF42000 bit 15. The EPROM must be
disabled at 0 before the DRAM is enabled. The VMEchip2,
VSBchip2, and DRAM map decoders are disabled by a local
bus reset.
2. This area is user-programmable. The suggested use is shown
in the table. The DRAM decoder is programmed in the
MCECC chip, and the local-to-VMEbus decoders are
programmed in the VMEchip2. The local-to-VSB decoders
are programmed in the VSBchip2.
3. Size is approximate.
4. Cache inhibit depends on devices in area mapped.
5. This area is not decoded. If these locations are accessed and
the local bus timer is enabled, the cycle times out and is
terminated by a TEA signal.
MVME166IG/D2 1-19
Board Level Hardware Description
1
The following table focuses on the Local I/O Devices portion of the local bus
Main Memory Map.
Table 1-3. Local I/O Devices Memory Map
Address Range Devices Accessed Port Size Size Notes
$FFF00000 - $FFF3FFFF reserved -- 256KB 5
$FFF40000 - $FFF400FF VMEchip2 (LCSR) D32 256B 1,4
$FFF40100 - $FFF401FF VMEchip2 (GCSR) D32-D8 256B 1,4
$FFF40200 - $FFF40FFF reserved -- 3.5KB 5,7
$FFF41000 - $FFF41FFF VSBchip2 D32-D8 4KB 1,10
$FFF42000 - $FFF42FFF PCCchip2 D32-D8 4KB 1
$FFF43000 - $FFF430FF MCECC #1 D8 256B 1
$FFF43100 - $FFF431FF MCECC #2 D8 256B 1
$FFF43200 - $FFF43FFF MCECCs (repeated) -- 3.5KB 1,7
$FFF44000 - $FFF44FFF reserved -- 4KB 5
$FFF45000 - $FFF451FF CD2401 (Serial Comm. Cont.) D16-D8 512B 1,9
$FFF45200 - $FFF45DFF reserved -- 3KB 7,9
$FFF45E00 - $FFF45FFF MC68230 -- 512B 1,9
$FFF46000 - $FFF46FFF 82596CA (LAN) D32 4KB 1,8
$FFF47000 - $FFF47FFF 53C710 (SCSI) D32/D8 4KB 1
$FFF48000 - $FFF4FFFF reserved -- 32KB 5
$FFF50000 - $FFF6FFFF reserved -- 128KB 5
$FFF70000 - $FFF76FFF reserved -- 28KB 6
$FFF77000 - $FFF77FFF reserved -- 4KB 2
$FFF78000 - $FFF7EFFF reserved -- 28KB 6
$FFF7F000 - $FFF7FFFF reserved -- 4KB 2
$FFF80000 - $FFF9FFFF Download EPROM -- 128KB 11
$FFFA0000 - $FFFBFFFF reserved -- 128KB 5
$FFFC0000 - $FFFCFFFF MK48T08 (BBRAM, TOD Clock) D32-D8 64KB 1
$FFFD0000 - $FFFDFFFF reserved -- 64KB 5
$FFFE0000 - $FFFEFFFF reserved -- 64KB 2
NOTES:
1. For a complete description of the register bits, refer to the
MVME166/MVME167/MVME187 Single Board Computers
Programmer's Reference Guide or to the data sheet for the
specific chip.
1-20 MVME166 Single Board Computer Installation Guide
Memory Maps
1
2. On the MVME166 this area does not return an acknowledge
signal. If the local bus timer on the MVME166 is enabled, the
access times out and is terminated by a TEA signal.
On the MVME187 this area is used.
3. Byte reads should be used to read the interrupt vector. These
locations do not respond when an interrupt is not pending. If
the local bus timer is enabled, the access times out and is
terminated by a TEA signal.
4. 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.
5. 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.
6. This area does return an acknowledge signal.
7. Size is approximate.
8. Port commands to the 82596CA must be written as two 16-bit
writes: upper word first and lower word second.
9. The MC68230 is included only on the MVME166. The area
from $FFF45200 to $FFF45DFF does not return an
acknowledge on the MVME166. If the local bus timer is
enabled, the access times out and is terminated by a TEA
signal.
10. The VSBchip2 is included only on the MVME166.
11. The Download EPROM is only on the MVME166.
MVME166IG/D2 1-21
Board Level Hardware Description
1
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. Refer to Appendix A.
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 ending address and the modifiers the MVME166 responds to.
VMEbus Short I/O Memory Map
The VMEchip2 includes a user-programmable map decoder for the GCSR.
The GCSR map decoder allows you to program the starting address of the
GCSR in the VMEbus short I/O space.
VSB Memory Map
This section describes the mapping of local resources as viewed by VSB
masters. The VSBchip2, on the MVME166, includes a user-programmable
map decoder for the VSB to local bus interface. This map decoder allows VSB
masters access to devices on the local bus. Default addresses for the slave,
master, and address decoders are provided by the ENV command. Refer to
Appendix A.
1-22 MVME166 Single Board Computer Installation Guide
HARDWARE PREPARATION
2
AND INSTALLATION
Introduction
This chapter provides unpacking instructions, hardware preparation, and
installation instructions for the MVME166. Hardware preparation and
installation for the MVME712 series transition modules is described in a
separate manual. Refer to the Related Documentation section in Chapter 1.
Unpacking Instructions
If the shipping carton is damaged upon receipt, request
Note
carrier's agent be present during unpacking and inspection
of equipment.
Unpack equipment from shipping carton. Refer to packing list and verify that
all items are present. Save packing material for storing and reshipping of
equipment.
Avoid touching areas of integrated circuitry; static discharge
Caution
can damage circuits.
Hardware Preparation
To select the desired configuration and ensure proper operation of the
MVME166, certain option modifications may be necessary before installation.
The MVME166 provides software control for most of these options. Some
options can not be done in software, so are done by jumpers on headers. Most
other modifications are done by setting bits in control registers after the
MVME166 has been installed in a system. (The MVME166 registers are
described in the MVME166/MVME167/MVME187 Single Board Computers
Programmer's Reference Guide as listed in Related Documentation in Chapter 1.)
MVME166IG/D22-1
Hardware Preparation and Installation
Figure 2-1 illustrates the placement of the switches, jumper headers,
2
connectors, and LED indicators on the MVME166. The MVME166 has been
factory tested and is shipped with the factory jumper settings described in the
following sections. The MVME166 operates with its required and factory-
installed Debug Monitor, MVME166Bug (166Bug), with these factory jumper
settings. Settings can be changed for the following headers:
� SCSI terminator selection (J2)
� General purpose readable register (J3)
� System controller selection (J6)
� SRAM backup power source selection (J7)
SCSI Terminator Enable Header J2
The MVME166 provides terminators for the SCSI bus. The SCSI terminators
are enabled/disabled by jumpers on header J2. The SCSI terminators may be
configured as follows.
J2 J2
1 2 1 2
Onboard SCSI Bus Terminator Enabled Onboard SCSI Bus Terminator Disabled
(Factory Configuration)
2-2 MVME166 Single Board Computer Installation Guide
P1 P2
F3 F4
A1 A1 A32
A32
B1 B1 B32
B32
C1 C1 C32
C32
1 2
1
J3
J6
MEZZANINE BOARD
2
15 16
J7
1 2
5 6
F1 F2
J2
12
34 2 49 1
33 50 2
1
S1 S2 J8 J9
68 36 99 51
67 35 100 22
PRIMARY SIDE
SCSI I/O
1381 9404
Hardware Preparation
2
MVME
166 LGA
FAIL STAT
DS1
RUN SCON
DS2
LAN RPWR
DS3
SCSI VME
DS4
TPWR VSB
DS5
ABORT
RESET
Figure 2-1. MVME166 Switches, Headers, Connectors, Fuses, and LEDs
MVME166IG/D2 2-3
Hardware Preparation and Installation
General Purpose Readable Jumpers on Header J3
2
Each MVME166 may be configured with readable jumpers. These jumpers can
be read as a register (at $FFF40088) in the VMEchip2 LCSR. The bit values are
read as a one when the jumper is off, and as a zero when the jumper is on.
J3
GPIO012
GPIO1
GPIO2
GPIO378
IN = Normal Debugger
OUT = BootBug
GPIO4
GPIO5
GPIO6
GPIO7 15 16
All Zeros
(Factory Configuration)
System Controller Header J6
The MVME166 can operate as VMEbus system controller. The system
controller function is enabled/disabled by jumpers on header J6. When the
MVME166 is functioning as system controller, the SCON LED is turned on.
The VMEchip2 can be configured as a system controller as follows.
J6
J6
1
1
2
2
System Controller Not System Controller
(Factory Configuration)
2-4 MVME166 Single Board Computer Installation Guide
Hardware Preparation
SRAM Backup Power Source Select Header J7
2
Header J7 is used to select the power source used to backup the SRAM on the
MVME166.
J7
J7
1 2
1 2
5 6
5 6
Primary Source VMEbus +5V STBY
Primary Source OnboardBattery
Secondary Source VMEbus +5V STBY
Secondary Source Onboard Battery
(Factory Configuration)
J7
J7
1 2 1 2
5 6 5 6
Primary Source Onboard Battery
Primary Source VMEbus +5V STBY
Secondary Source VMEbus +5V STBY
Secondary Source Onboard Battery
Do not remove all jumpers from J7. This may disable the
Caution
SRAM.
If the battery is removed, jumpers must be installed on J7,
between pins 1 to 3 and pins 2 to 4, as shown in the Factory
Configuration drawing above.
MVME166IG/D2 2-5
Hardware Preparation and Installation
Installation Instructions
2
The following sections discuss the installation of the MVME166 in a VME
chassis, and describe system considerations relevant to the installation.
Ensure that an EPROM device is installed as needed. The factory
configuration provides for one EPROM (installed for 166BBug, the BootBug
firmware subset of the MVME166Bug debug monitor contained in Flash
memory) in socket U12. Ensure that all header jumpers are configured as
desired.
MVME166 Module Installation
Now that the MVME166 module is ready for installation, proceed as follows:
a. Turn all equipment power OFF and disconnect power cable from ac power
source.
Inserting or removing modules while power is applied
Caution
could result in damage to module components.
!
DANGEROUS VOLTAGES, CAPABLE OF CAUSING
DEATH, ARE PRESENT IN THIS EQUIPMENT. USE
WARNING
EXTREME CAUTION WHEN HANDLING, TESTING,
AND ADJUSTING.
b. Remove chassis cover as instructed in the equipment user's manual.
c. Remove the filler panel(s) from the appropriate card slot(s) at the front and
(if the chassis has a rear card cage that you intend to use) rear of the
chassis.
The MVME166 module requires power from both P1 and P2. It may be
installed in any double-height unused card slot, if it is not configured as
system controller. If the MVME166 is configured as system controller, it
must be installed in the leftmost card slot (slot 1) to correctly initiate the
bus-grant daisy-chain and to have proper operation of the IACK-daisy-
chain driver.
2-6 MVME166 Single Board Computer Installation Guide
Installation Instructions
The MVME166 is to be installed in the front of the chassis. The MVME712
2
module(s) is/are to be installed either in the front or the rear of the chassis,
depending on the I/O option you select:
Through the front panel I/O connector via cable to the MVME712-10
transition module, which may be mounted either in the forward card cage
alongside the MVME166 (recommended) or in the rear transition module
area.
Through the front panel I/O and SCSI connectors via cable to the
MVME712-06/07/09 I/O distribution board set, which likewise may be
mounted either in the forward card cage alongside the MVME166 or in the
rear transition module area.
If you opt for front mounting of the transition module(s), the MVME166
should be located at their left if possible to make use of the cabling slots
provided in its front panel. You may need to shift the placement of other
modules in the forward card cage to allow space for the double- or triple-
wide MVME166/MVME712 combination.
d. Carefully slide the MVME166 module into the card slot. Be sure the
module is seated properly in the P1 and P2 connectors on the backplane.
Do not damage or bend connector pins. Fasten the module in the chassis
with the screws provided, making good contact with the transverse
mounting rails to minimize RFI emissions.
e. On the chassis backplane, remove the IACK and BG jumpers from the
header for the card slot occupied by the MVME166.
f. Connect the transition module(s) and specified cable(s) to the MVME166
(at the I/O connector on the MVME166 front panel, according to
configuration) to mate with (optional) terminals or other peripherals at the
serial ports, parallel port, SCSI ports, and LAN Ethernet port. Connect the
peripherals to the cable(s).
Refer to the manuals listed in Related Documentation in Chapter 1 for
information on installing the MVME712 series transition modules. (Some
connection diagrams are in the MVME166/MVME167/MVME187 Single
Board Computers Programmer's Reference Guide.) Some cables you require
may not be provided with the MVME712 series modules; you may need to
fabricate or otherwise provide those cables. (Motorola recommends using
shielded
cables for all connections to peripherals to minimize radiation.) Connect
the peripherals to the cable(s).
g. Install any other required VMEmodules in the system.
MVME166IG/D2 2-7
Hardware Preparation and Installation
h. Replace the chassis cover.
2
i. Connect the power cable to the ac power source and turn the equipment
power ON.
System Considerations
The MVME166 draws power from both the P1 and P2 connectors on the
VMEbus backplane. P2 is also used for the upper 16 bits of data for 32-bit
transfers, and for the upper 8 address lines for extended addressing mode.
The MVME166 may not operate properly without its main board connected to
P1 and P2 of the VMEbus backplane.
Whether the MVME166 operates as a VMEbus master or as a VMEbus slave, it
is configured for 32 bits of address and for 32 bits of data (A32/D32).
However, it handles A16 or A24 devices in certain address ranges. D8 and/or
D16 devices in the system must be handled by the MC68040 software. Refer
to the memory maps in the MVME166/MVME167/MVME187 Single Board
Computers Programmer's Reference Guide as listed in Related Documentation in
Chapter 1.
The VME Subsystem Bus (VSB, a subset of the VMEbus) used in the MVME166
is a local extension bus. It allows the MVME166 to access additional memory
and I/O over a local bus, removing traffic from the global VMEbus and
improving the total throughput of the system. The VSB interface occupies 64
I/O pins on connector P2 and utilizes the multiplexing of address and data in
order to achieve full 32-bit functionality, along with appropriate control
signals, within the 64-pin allotment.
The MVME166 contains shared onboard DRAM whose base address is
software-selectable. Both the onboard processor and offboard VMEbus
devices see this local DRAM at base physical address $00000000, as
programmed by the MVME166Bug firmware. This may be changed, by
software, to any other base address. Refer to the
MVME166/MVME167/MVME187 Single Board Computers Programmer's
Reference Guide for details.
If the MVME166 tries to access offboard resources in a non-existent location,
and is not system controller, and if the system does not have a global bus
timeout, the MVME166 waits forever for the VMEbus cycle to complete. This
would cause the system to hang up. There is only one situation in which the
system might lack this global bus timeout: the MVME166 is not the system
controller, and there is no global bus timeout elsewhere in the system.
Multiple MVME166 modules may be configured into a single VME card cage.
In general, hardware multiprocessor features are supported.
2-8 MVME166 Single Board Computer Installation Guide
Installation Instructions
Other MPUs on the VMEbus can interrupt, disable, communicate with and
2
determine the operational status of the processor(s). One register of the GCSR
set includes four bits which function as location monitors to allow one
MVME166 processor to broadcast a signal to other MVME166 processors, if
any are present. All eight registers are accessible from any local processor as
well as from the VMEbus.
The MVME166 provides +12 Vdc, -12 Vdc, and +5 Vdc power to the transition
modules through fuses F1, F3, and F4. The fused +5 Vdc power is also
provided to the 20-pin remote reset connector. These voltage sources are used
by the transition modules to power the serial port drivers and any LAN
transceivers connected to the transition module. The RPWR LED (DS3) on the
MVME166 front panel lights when all three voltages are available.
The MVME166 provides +5 Vdc to the SCSI bus TERMPWR signal through
fuse F2, located near the front panel SCSI bus connector. The TPWR LED (DS5)
on the MVME166 front panel monitors the SCSI bus TERMPWR signal; when
the MVME166 is connected to an SCSI bus, either directly or via the
MVME712-07 module, the TPWR LED lights when there is SCSI terminator
power. Because any device on the SCSI bus can provide TERMPWR, the LED
does not directly indicate the condition of the fuse. If the LED is not
illuminated during SCSI bus operation, the fuse should be checked.
MVME166IG/D2 2-9
Hardware Preparation and Installation
2
2-10 MVME166 Single Board Computer Installation Guide
DEBUGGER GENERAL
3
INFORMATION
Overview of M68000 Firmware
The firmware for the M68000-based (68K) series of board and system level
products has a common genealogy, deriving from the BUG firmware currently
used on all Motorola M68000-based CPU modules. The M68000 firmware
family provides a high degree of functionality and user friendliness, and yet
stresses portability and ease of maintenance. This member of the M68000
firmware family is implemented on the MVME166 Single Board Computer,
and is known as the MVME166Bug, or just 166Bug.
Description of 166Bug
The 166Bug package, MVME166Bug, is a powerful evaluation and debugging
tool for systems built around the MVME166 CISC-based microcomputers.
Facilities are available for loading and executing user programs under
complete operator control for system evaluation. 166Bug includes commands
for display and modification of memory, breakpoint and tracing capabilities,
a powerful assembler/disassembler useful for patching programs, and a self-
test at power-up feature which verifies the integrity of the system. Various
166Bug routines that handle I/O, data conversion, and string functions are
available to user programs through the TRAP #15 system calls.
166Bug consists of three parts:
� A command-driven user-interactive software debugger, described in
Chapter 4 and hereafter referred to as "the debugger" or "166Bug".
� A command-driven diagnostic package for the MVME166 hardware,
hereafter referred to as "the diagnostics".
� A user interface which accepts commands from the system console
terminal.
MVME166IG/D23-1
Debugger General Information
When using 166Bug, you operate out of either the debugger directory or the
diagnostic directory. If you are in the debugger directory, the debugger
prompt "166-Bug>" is displayed and you have all of the debugger commands
at your disposal. If you are in the diagnostic directory, the diagnostic prompt
3
"166-Diag>" is displayed and you have all of the diagnostic commands at your
disposal as well as all of the debugger commands. You may switch between
directories by using the Switch Directories (SD) command, or may examine
the commands in the particular directory that you are currently in by using the
Help (HE) command.
Because 166Bug is command-driven, it performs its various operations in
response to user commands entered at the keyboard. When you enter a
command, 166Bug executes the command and the prompt reappears.
However, if you enter a command that causes execution of user target code
(e.g., "GO"), then control may or may not return to 166Bug, depending on the
outcome of the user program.
If you have used one or more of Motorola's other debugging packages, you
will find the CISC 166Bug very similar. Some effort has also been made to
make the interactive commands more consistent. For example, delimiters
between commands and arguments may now be commas or spaces
interchangeably.
3-2 MVME166 Single Board Computer Installation Guide
166Bug Implementation
166Bug Implementation
MVME166Bug is written largely in the "C" programming language, providing
benefits of portability and maintainability. Where necessary, assembler has
3
been used in the form of separately compiled modules containing only
assembler code - no mixed language modules are used.
Physically, 166Bug is contained in four Flash memory components. The
onboard Flash memory provides 1.0MB (256KB longwords) of nonvolatile
storage. The 166Bug consumes the first half (512KB) of this memory, leaving
the second half available for user applications. A command is provided, both
in the regular "Bug" product and the "BootBug" product, to allow erasing and
reprogramming this Flash memory.
!
Reprogramming any portion of Flash memory, will erase
WARNING everything currently contained in Flash, including the
166Bug product! You must copy the 166Bug from Flash to
RAM, combine your application with the 166Bug image,
and then reprogram Flash with the combined object image.
Installation and Startup
Even though the MVME166Bug firmware is installed on the MVME166
module, for 166Bug to operate properly with the MVME166, follow this set-up
procedure.
MVME166IG/D2 3-3
Debugger General Information
Inserting or removing modules while power is applied
Caution
could damage module components.
1. Turn all equipment power OFF. Refer to the Hardware Preparation section
3
in Chapter 2 and install/remove jumpers on headers as required for your
particular application. Jumpers on header J3 affect 166Bug operation as
listed below. The default condition is with all eight jumpers installed,
between pins 1-2, 3-4, 5-6, 7-8, 9-10, 11-12, 13-14, and 15-16.
The MVME166 may be configured with these readable jumpers. These
jumpers can be read as a register (at $FFF40088) in the VMEchip2 LCSR.
The bit values are read as a one when the jumper is off, and as a zero when
the jumper is on. This jumper block (header J3) contains eight bits. Refer
to the MVME166/MVME167/MVME187 Single Board Computers
Programmer's Reference Guide.
The MVME166Bug reserves/defines the four lower order bits (GPI3 to
GPI0). The following is the description for the bits reserved/defined by
the debugger:
3-4 MVME166 Single Board Computer Installation Guide
Installation and Startup
Bit J3 Pins Description
Bit #0 (GPI0) 1-2 When this bit is a one (high), it instructs the debugger
3
to use local Static RAM for its work page (i.e.,
variables, stack, vector tables, etc.).
Bit #1 (GPI1) 3-4 When this bit is a one (high), it instructs the debugger
to use the default setup/operation parameters in ROM
versus the user setup/operation parameters in
NVRAM. This is the same as depressing the RESET
and ABORT switches at the same time. This feature
can be used in the event the user setup is corrupted or
does not meet a sanity check. Refer to the ENV
command (Appendix A) for the ROM defaults.
Bit #2 (GPI2) 5-6 Reserved for future use.
Bit #3 (GPI3) 7-8 When this bit is a one (jumper out) the BootBug will
continue execution after reset or power up. Normal
operation (jumper in) results in the BootBug executing
the 166Bug debugger in Flash memory.
Bit #4 (GPI4) 9-10 Open to your application.
Bit #5 (GPI5) 11-12 Open to your application.
Bit #6 (GPI6) 13-14 Open to your application.
Bit #7 (GPI7) 15-16 Open to your application.
Note that when the MVME166 comes up in a cold reset, 166Bug runs in
System Mode. Using the Environment (ENV) or MENU commands can
make 166Bug run in Board mode. Refer to Appendix A.
2. Configure header J6 by installing/removing a jumper between pins 1 and
2. A jumper installed/removed enables/disables the system controller
function of the MVME166.
MVME166IG/D2 3-5
Debugger General Information
3. Refer to the set-up procedure for your particular chassis or system for
details concerning the installation of the MVME166.
4. Connect the terminal which is to be used as the 166Bug system console to
the default debug EIA-232-D port at serial port 1 on front panel I/O
3
connector J9 through an MVME712-10 or MVME712-06 transition module.
Refer to the MVME166/MVME167/MVME187 Single Board Computers
Programmer's Reference Guide for some possible connection diagrams. Set
up the terminal as follows:
– eight bits per character
– one stop bit per character
– parity disabled (no parity)
– baud rate 9600 baud (default baud rate of MVME166 ports at power-
up)
After power-up, the baud rate of the debug port can be reconfigured by
using the Port Format (PF) command of the 166Bug debugger.
In order for high-baud rate serial communication between
Note
166Bug and the terminal to work, the terminal must do some
form of handshaking. If the terminal being used does not
do hardware handshaking via the CTS line, then it must do
XON/XOFF handshaking. If you get garbled messages and
missing characters, then you should check the terminal to
make sure XON/XOFF handshaking is enabled.
5. If you want to connect devices (such as a host computer system and/or a
serial printer) to the other EIA-232-D port connectors (marked SERIAL
PORTS 2, 3, and 4 on the MVME712-10 or MVME712-06 transition
module), connect the appropriate cables and configure the port(s) as
detailed in step 4. above. After power-up, this(these) port(s) can be
reconfigured by programming the MVME166 CD2401 Serial Controller
Chip (SCC), or by using the 166Bug PF command.
Note that the MVME166 also contains a parallel port. To use a parallel
device, such as a printer, with the MVME166, connect it to the
PRINTER/PARALLEL port on an MVME712-10 or MVME712-07
transition module. Refer to the MVME166/MVME167/MVME187 Single
Board Computers Programmer's Reference Guide for some possible
connection diagrams. However, you could also use a module such as the
MVME335 for a parallel port connection.
3-6 MVME166 Single Board Computer Installation Guide
BOOTBUG
6. Power up the system. 166Bug executes some self-checks and displays the
debugger prompt "166-Bug>" (if 166Bug is in Board Mode). However, if
the ENV command (Appendix A) has put 166Bug in System Mode, the
system performs a selftest and tries to autoboot. Refer to the ENV and
3
MENU commands. They are listed in Table 4-3.
If the confidence test fails, the test is aborted when the first fault is
encountered. If possible, an appropriate message is displayed, and control
then returns to the menu.
BOOTBUG
166BBug Implementation
The MVME166 board has a byte-wide EPROM in addition to the Flash
memory used to contain the debugger and diagnostics firmware. The EPROM
supplied contains the BootBug product (166BBug). Since Flash memory can be
electronically erased, the firmware contained in this EPROM is a miniature
version of the regular debugger product. It contains enough functionality to
enable downloading of object code (by means of the VMEbus, serial port, SCSI
bus, or the network) and reprogramming of the Flash memory.
The following table lists the the new commands available in the 166BBug
product.
Command Description
EXEC Execute User Program
SETUP Set "System" Parameters
Detailed descriptions of additional subset commands can be found in the
Debugging Package for Motorola 68K CISC CPUs User's Manual.
There is a jumper on the MVME166 board that controls the operation of the
BootBug. If the jumper at J3 pins 7 and 8 is in place (GPI3), then the BootBug
(which always executes at reset and powerup) will unconditionally jump to
the debugger product contained in the Flash memory. If this jumper is
removed, execution will continue in the (diminished functionality) BootBug.
Before using some of the features of the MVME166 BootBug, some parameters
may need to be defined. For example, the SCSI ID, the Ethernet address, the
clock speed of the board, or possibly the mapping of VMEbus. There is a new
command provided for this purpose, the setup command. You should run
this command and answer the prompts to be sure the board is configured
properly before using any SCSI, VME, or Ethernet I/O.
MVME166IG/D2 3-7
Debugger General Information
Execute User Program
EXEC [ADDR]
The EXEC command is used to initiate target code execution. The specified
3
address ("ADDR") is placed in the target Program Counter (PC). Execution
will start at the target PC address.
Setup System Parameters
SETUP
Setup allows configuring certain parameters that are necessary for some I/O
operations (SCSI, VME, and Ethernet). When you execute this command, the
default value is displayed, if any is available, and then you are prompted for
input.
The SETUP command VME parameters do not stay through a reset. These
parameters are not saved to NVRAM. The remaining parameters (MPU Clock
Speed, Ethernet Address, Local SCSI Identifier) are saved to NVRAM, but are
not checksummed.
166-Bug>setup
MPU Clock Speed = "3300"?
Ethernet Address = 000000000000?
Local SCSI Identifier = "07"?
VME Slave Enable [Y/N] = N?
VME Slave Starting Address = 00000000?
VME Slave Ending Address = 00000000?
VME Slave Address Translation Address = 00000000?
VME Slave Address Translation Select = 00000000?
VME Slave Control = 0000?
VME Master Enable [Y/N] = Y?
VME Master Starting Address = 40000000?
VME Master Ending Address = 4FFFFFFF?
VME Master Address Translation Address = 00000000?
VME Master Address Translation Select = 00000000?
VME Master Control = 0D?
3-8 MVME166 Single Board Computer Installation Guide
Autoboot
Autoboot
Autoboot is a software routine that is contained in the 166Bug Flash /ROM
firmware to provide an independent mechanism for booting an operating
3
system. This autoboot routine automatically scans for controllers and devices
in a specified sequence until a valid bootable device containing a boot media
is found or the list is exhausted. If a valid bootable device is found, a boot from
that device is started. The controller scanning sequence goes from the lowest
controller Logical Unit Number (LUN) detected to the highest LUN detected.
Controllers, devices, and their LUNs are listed in Appendix B.
At power-up, Autoboot is enabled, and providing the drive and controller
numbers encountered are valid, the following message is displayed upon the
system console:
"Autoboot in progress... To abort hit (delete or Performs the same function as ^H.
rubout)
^D (redisplay) The entire command line as entered so far is redisplayed on
the following line.
^A (repeat) Repeats the previous line. This happens only at the command
line. The last line entered is redisplayed but not executed.
The cursor is positioned at the end of the line. You may enter
the line as is or you can add more characters to it. You can
edit the line by backspacing and typing over old characters.
3-14 MVME166 Single Board Computer Installation Guide
Disk I/O Support
When observing output from any 166Bug command, the XON and XOFF
characters which are in effect for the terminal port may be entered to control
the output, if the XON/XOFF protocol is enabled (default). These characters
are initialized to ^S and ^Q respectively by 166Bug, but you may change them
3
with the PF command. In the initialized (default) mode, operation is as
follows:
^S (wait) Console output is halted.
^Q (resume) Console output is resumed.
Disk I/O Support
166Bug can initiate disk input/output by communicating with intelligent disk
controller modules over the VMEbus. Disk support facilities built into 166Bug
consist of command-level disk operations, disk I/O system calls (only via one
of the TRAP #15 instructions) for use by user programs, and defined data
structures for disk parameters.
Parameters such as the address where the module is mapped and the type and
number of devices attached to the controller module are kept in tables by
166Bug. Default values for these parameters are assigned at power-up and
cold-start reset, but may be altered as described in the section on default
parameters, later in this chapter.
Appendix B contains a list of the controllers presently supported, as well as a
list of the default configurations for each controller.
Blocks Versus Sectors
The logical block defines the unit of information for disk devices. A disk is
viewed by 166Bug as a storage area divided into logical blocks. By default, the
logical block size is set to 256 bytes for every block device in the system. The
block size can be changed on a per device basis with the IOT command.
The sector defines the unit of information for the media itself, as viewed by the
controller. The sector size varies for different controllers, and the value for a
specific device can be displayed and changed with the IOT command.
When a disk transfer is requested, the start and size of the transfer is specified
in blocks. 166Bug translates this into an equivalent sector specification, which
is then passed on to the controller to initiate the transfer. If the conversion
from blocks to sectors yields a fractional sector count, an error is returned and
no data is transferred.
MVME166IG/D2 3-15
Debugger General Information
Device Probe Function
A device probe with entry into the device descriptor table is done whenever a
specified device is accessed; i.e., when system calls .DSKRD, .DSKWR,
.DSKCFIG, .DSKFMT, and .DSKCTRL, and debugger commands BH, BO,
3
IOC, IOP, IOT, MAR, and MAW are used.
The device probe mechanism utilizes the SCSI commands "Inquiry" and
"Mode Sense". If the specified controller is non-SCSI, the probe simply returns
a status of "device present and unknown". The device probe makes an entry
into the device descriptor table with the pertinent data. After an entry has
been made, the next time a probe is done it simply returns with "device
present" status (pointer to the device descriptor).
Disk I/O via 166Bug Commands
These following 166Bug commands are provided for disk I/O. Detailed
instructions for their use are found in the Debugging Package for Motorola 68K
CISC CPUs User's Manual. When a command is issued to a particular
controller LUN and device LUN, these LUNs are remembered by 166Bug so
that the next disk command defaults to use the same controller and device.
IOI (Input/Output Inquiry)
This command is used to probe the system for all possible CLUN/DLUN
combinations and display inquiry data for devices which support it. The
device descriptor table only has space for 16 device descriptors; with the IOI
command, you can view the table and clear it if necessary.
IOP (Physical I/O to Disk)
IOP allows you to read or write blocks of data, or to format the specified
device in a certain way. IOP creates a command packet from the arguments
you have specified, and then invokes the proper system call function to carry
out the operation.
IOT (I/O Teach)
IOT allows you to change any configurable parameters and attributes of the
device. In addition, it allows you to see the controllers available in the system.
3-16 MVME166 Single Board Computer Installation Guide
Disk I/O Support
IOC (I/O Control)
IOC allows you to send command packets as defined by the particular
controller directly. IOC can also be used to look at the resultant device packet
after using the IOP command.
3
BO (Bootstrap Operating System)
BO reads an operating system or control program from the specified device
into memory, and then transfers control to it.
BH (Bootstrap and Halt)
BH reads an operating system or control program from a specified device into
memory, and then returns control to 166Bug. It is used as a debugging tool.
Disk I/O via 166Bug System Calls
All operations that actually access the disk are done directly or indirectly by
166Bug TRAP #15 system calls. (The command-level disk operations provide
a convenient way of using these system calls without writing and executing a
program.)
The following system calls are provided to allow user programs to do disk
I/O:
.DSKRD Disk read. System call to read blocks from a disk into memory.
.DSKWR Disk write. System call to write blocks from memory onto a disk.
.DSKCFIG Disk configure. This function allows you to change the configuration
of the specified device.
.DSKFMT Disk format. This function allows you to send a format command to
the specified device.
.DSKCTRL Disk control. This function is used to implement any special device
control functions that cannot be accommodated easily with any of the
other disk functions.
Refer to the Debugging Package for Motorola 68K CISC CPUs User's Manual for
information on using these and other system calls.
MVME166IG/D2 3-17
Debugger General Information
To perform a disk operation, 166Bug must eventually present a particular disk
controller module with a controller command packet which has been
especially prepared for that type of controller module. (This is accomplished
in the respective controller driver module.) A command packet for one type
3
of controller module usually does not have the same format as a command
packet for a different type of module. The system call facilities which do disk
I/O accept a generalized (controller-independent) packet format as an
argument, and translate it into a controller-specific packet, which is then sent
to the specified device. Refer to the system call descriptions in the Debugging
Package for Motorola 68K CISC CPUs User's Manual for details on the format and
construction of these standardized "user" packets.
The packets which a controller module expects to be given vary from
controller to controller. The disk driver module for the particular hardware
module (board) must take the standardized packet given to a trap function
and create a new packet which is specifically tailored for the disk drive
controller it is sent to. Refer to documentation on the particular controller
module for the format of its packets, and for using the IOC command.
Default 166Bug Controller and Device Parameters
166Bug initializes the parameter tables for a default configuration of
controllers and devices (refer to Appendix B). If the system needs to be
configured differently than this default configuration (for example, to use a
70MB Winchester drive where the default is a 40MB Winchester drive), then
these tables must be changed.
There are three ways to change the parameter tables:
� Use BO or BH. When you invoke one of these commands, the
configuration area of the disk is read and the parameters corresponding to
that device are rewritten according to the parameter information
contained in the configuration area. This is a temporary change. If a cold-
start reset occurs, then the default parameter information is written back
into the tables.
� Use the IOT. You can use this command to reconfigure the parameter
table manually for any controller and/or device that is different from the
default. This is also a temporary change and is overwritten if a cold-start
reset occurs.
� Obtain the source. You can then change the configuration files and rebuild
166Bug so that it has different defaults. Changes made to the defaults are
permanent until changed again.
3-18 MVME166 Single Board Computer Installation Guide
Network I/O Support
Disk I/O Error Codes
166Bug returns an error code if an attempted disk operation is unsuccessful.
Network I/O Support
3
The Network Boot Firmware provides the capability to boot the CPU through
the ROM debugger using a network (local Ethernet interface) as the boot
device.
The booting process is executed in two distinct phases.
� The first phase allows the diskless remote node to discover its network
identify and the name of the file to be booted.
� The second phase has the diskless remote node reading the boot file across
the network into its memory.
The various modules (capabilities) and the dependencies of these modules
that support the overall network boot function are described in the following
paragraphs.
Intel 82596 LAN Coprocessor Ethernet Driver
This driver manages/surrounds the Intel 82596 LAN Coprocessor.
Management is in the scope of the reception of packets, the transmission of
packets, receive buffer flushing, and interface initialization.
This module ensures that the packaging and unpackaging of Ethernet packets
is done correctly in the Boot PROM.
UDP/IP Protocol Modules
The Internet Protocol (IP) is designed for use in interconnected systems of
packet-switched computer communication networks. The Internet protocol
provides for transmitting of blocks of data called datagrams (hence User
Datagram Protocol, or UDP) from sources to destinations, where sources and
destinations are hosts identified by fixed length addresses.
The UDP/IP protocols are necessary for the TFTP and BOOTP protocols; TFTP
and BOOTP require a UDP/IP connection.
MVME166IG/D2 3-19
Debugger General Information
RARP/ARP Protocol Modules
The Reverse Address Resolution Protocol (RARP) basically consists of an
identity-less node broadcasting a "whoami" packet onto the Ethernet, and
waiting for an answer. The RARP server fills an Ethernet reply packet up with
3
the target's Internet Address and sends it.
The Address Resolution Protocol (ARP) basically provides a method of
converting protocol addresses (e.g., IP addresses) to local area network
addresses (e.g., Ethernet addresses). The RARP protocol module supports
systems which do not support the BOOTP protocol (next paragraph).
BOOTP Protocol Module
The Bootstrap Protocol (BOOTP) basically allows a diskless client machine to
discover its own IP address, the address of a server host, and the name of a file
to be loaded into memory and executed.
TFTP Protocol Module
The Trivial File Transfer Protocol (TFTP) is a simple protocol to transfer files.
It is implemented on top of the Internet User Datagram Protocol (UDP or
Datagram) so it may be used to move files between machines on different
networks implementing UDP. The only thing it can do is read and write files
from/to a remote server.
Network Boot Control Module
The "control" capability of the Network Boot Control Module is needed to tie
together all the necessary modules (capabilities) and to sequence the booting
process. The booting sequence consists of two phases: the first phase is labeled
"address determination and bootfile selection" and the second phase is labeled
"file transfer". The first phase will utilize the RARP/BOOTP capability and the
second phase will utilize the TFTP capability.
Network I/O Error Codes
166Bug returns an error code if an attempted network operation is
unsuccessful.
3-20 MVME166 Single Board Computer Installation Guide
Multiprocessor Support
Multiprocessor Support
The MVME166 dual-port RAM feature makes the shared RAM available to
remote processors as well as to the local processor. This can be done by either
3
of the following two methods. Either method can be enabled/disabled by the
ENV command as its Remote Start Switch Method (refer to Appendix A).
Multiprocessor Control Register (MPCR) Method
A remote processor can initiate program execution in the local MVME166
dual-port RAM by issuing a remote GO command using the Multiprocessor
Control Register (MPCR). The MPCR, located at shared RAM location of $800
offset from the base address the debugger loads it at, contains one of two
longwords used to control communication between processors. The MPCR
contents are organized as follows:
$800 * N/A N/A N/A (MPCR)
The status codes stored in the MPCR are of two types:
� Status returned (from the monitor)
� Status set (by the bus master)
The status codes that may be returned from the monitor are:
HEX 0 (HEX 00) -- Wait. Initialization not yet complete.
ASCII E (HEX 45) -- Code pointed to by the MPAR address is executing.
ASCII P (HEX 50) -- Program Flash Memory. The MPAR is set to the
address of the Flash memory program control packet.
ASCII R (HEX 52) -- Ready. The firmware monitor is watching for a change.
You can only program Flash memory by the MPCR method. Refer to the
.PFLASH system call in the Debugging Package for Motorola 68K CISC CPUs
User's Manual for a description of the Flash memory program control packet
structure.
The status codes that may be set by the bus master are:
ASCII G (HEX 47) -- Use Go Direct (GD) logic specifying the MPAR address.
ASCII B (HEX 42) -- Install breakpoints using the Go (G) logic.
MVME166IG/D2 3-21
Debugger General Information
The Multiprocessor Address Register (MPAR), located in shared RAM
location of $804 offset from the base address the debugger loads it at, contains
the second of two longwords used to control communication between
processors. The MPAR contents specify the address at which execution for the
3
remote processor is to begin if the MPCR contains a G or B. The MPAR is
organized as follows:
$804 **** (MPAR)
At power-up, the debug monitor self-test routines initialize RAM, including
the memory locations used for multi-processor support ($800 through $807).
The MPCR contains $00 at power-up, indicating that initialization is not yet
complete. As the initialization proceeds, the execution path comes to the
"prompt" routine. Before sending the prompt, this routine places an R in the
MPCR to indicate that initialization is complete. Then the prompt is sent.
If no terminal is connected to the port, the MPCR is still polled to see whether
an external processor requires control to be passed to the dual-port RAM. If a
terminal does respond, the MPCR is polled for the same purpose while the
serial port is being polled for user input.
An ASCII G placed in the MPCR by a remote processor indicates that the Go
Direct type of transfer is requested. An ASCII B in the MPCR indicates that
breakpoints are to be armed before control is transferred (as with the GO
command).
In either sequence, an E is placed in the MPCR to indicate that execution is
underway just before control is passed to RAM. (Any remote processor could
examine the MPCR contents.)
If the code being executed in dual-port RAM is to reenter the debug monitor,
a TRAP #15 call using function $0063 (SYSCALL .RETURN) returns control to
the monitor with a new display prompt. Note that every time the debug
monitor returns to the prompt, an R is moved into the MPCR to indicate that
control can be transferred once again to a specified RAM location.
3-22 MVME166 Single Board Computer Installation Guide
Diagnostic Facilities
GCSR Method
A remote processor can initiate program execution in the local MVME166
dual-port RAM by issuing a remote GO command using the VMEchip2 Global
Control and Status Registers (GCSR). The remote processor places the
3
MVME166 execution address in general purpose registers 0 and 1 (GPCSR0
and GPCSR1). The remote processor then sets bit 8 (SIG0) of the VMEchip2
LM/SIG register. This causes the MVME166 to install breakpoints and begin
execution. The result is identical to the MPCR method (with status code B)
described in the previous section.
The GCSR registers are accessed in the VMEbus short I/O space. Each general
purpose register is two bytes wide, occurring at an even address. The general
purpose register number 0 is at an offset of $8 (local bus) or $4 (VMEbus) from
the start of the GCSR registers. The local bus base address for the GCSR is
$FFF40100. The VMEbus base address for the GCSR depends on the group
select value and the board select value programmed in the Local Control and
Status Registers (LCSR) of the MVME166. The execution address is formed by
reading the GCSR general purpose registers in the following manner:
GPCSR0 used as the upper 16 bits of the address
GPCSR1 used as the lower 16 bits of the address
The address appears as:
GPCSR0 GPCSR1
Diagnostic Facilities
The 166Bug package includes a complete set of hardware diagnostics intended
for testing and troubleshooting of the MVME166. These diagnostics are
completely described in the MVME167Bug Debugging Package User's Manual.
To use the diagnostics, switch directories to the diagnostic directory. If you are
in the debugger directory, you can switch to the diagnostic directory by
entering the debugger command Switch Directories (SD). The diagnostic
prompt ("166-Diag>") appears. Refer to the MVME167Bug Debugging Package
User's Manual for complete descriptions of the diagnostic routines available
and instructions on how to invoke them. Note that some diagnostics depend
on restart defaults that are set up only in a particular restart mode. The
documentation for such diagnostics includes restart information.
MVME166IG/D2 3-23
Debugger General Information
3
3-24 MVME166 Single Board Computer Installation Guide
USING THE 166Bug
4
DEBUGGER
Entering Debugger Command Lines
166Bug is command-driven and performs its various operations in response to
user commands entered at the keyboard. When the debugger prompt
(166-Bug>) appears on the terminal screen, then the debugger is ready to
accept commands.
As the command line is entered, it is stored in an internal buffer. Execution
begins only after the carriage return is entered, so that you can correct entry
errors, if necessary, using the control characters described in Chapter 3.
When a command is entered, the debugger executes the command and the
prompt reappears. However, if the command entered causes execution of user
target code, for example GO, then control may or may not return to the
debugger, depending on what the user program does. For example, if a
breakpoint has been specified, then control returns to the debugger when the
breakpoint is encountered during execution of the user program. Alternately,
the user program could return to the debugger by means of the TRAP #15
function ".RETURN".
In general, a debugger command is made up of the following parts:
a. The command identifier (i.e., MD or md for the Memory Display
command). Note that either upper- or lowercase is allowed.
b. A port number if the command is set up to work with more than one port.
c. At least one intervening space before the first argument.
d. Any required arguments, as specified by command.
e. An option field, set off by a semicolon (;) to specify conditions other than
the default conditions of the command.
MVME166IG/D24-1
Using the 166Bug Debugger
The commands are shown using a modified Backus-Naur form syntax. The
metasymbols used are:
boldface strings A boldface string is a literal such as a command or a
program name, and is to be typed just as it appears.
italic strings An italic string is a "syntactic variable" and is to be
replaced by one of a class of items it represents.
4
A vertical bar separating two or more items indicates that
|
a choice is to be made; only one of the items separated by
this symbol should be selected.
Square brackets enclose an item that is optional. The item
[ ]
may appear zero or one time.
{ } Braces enclose an optional symbol that may occur zero or
more times.
Syntactic Variables
The following syntactic variables are encountered in the command
descriptions which follow. In addition, other syntactic variables may be used
and are defined in the particular command description in which they occur.
DEL Delimiter; either a comma or a space.
EXP Expression (described in detail in a following section).
ADDR Address (described in detail in a following section).
COUNT Count; the syntax is the same as for EXP.
RANGE A range of memory addresses which may be specified either
by ADDR DEL ADDR or by ADDR : COUNT.
TEXT An ASCII string of up to 255 characters, delimited at each end
by the single quote mark (').
4-2 MVME166 Single Board Computer Installation Guide
Entering Debugger Command Lines
Expression as a Parameter
An expression can be one or more numeric values separated by the arithmetic
operators: plus (+), minus (-), multiplied by (*), divided by (/), logical AND
(&), shift left (<<), or shift right (>>).
Numeric values may be expressed in either hexadecimal, decimal, octal, or
binary by immediately preceding them with the proper base identifier.
4
Data Type Base Identifier Examples
Integer Hexadecimal $ $FFFFFFFF
Integer Decimal & &1974, &10-&4
Integer Octal @ @456
Integer Binary % %1000110
If no base identifier is specified, then the numeric value is assumed to be
hexadecimal.
A numeric value may also be expressed as a string literal of up to four
characters. The string literal must begin and end with the single quote mark
('). The numeric value is interpreted as the concatenation of the ASCII values
of the characters. This value is right-justified, as any other numeric value
would be.
String Numeric Value
Literal (In Hexadecimal)
'A' 41
'ABC' 414243
'TEST' 54455354
Evaluation of an expression is always from left to right unless parentheses are
used to group part of the expression. There is no operator precedence.
Subexpressions within parentheses are evaluated first. Nested parenthetical
subexpressions are evaluated from the inside out.
MVME166IG/D2 4-3
Using the 166Bug Debugger
Valid expression examples:
Expression Result (In Hex) Notes
FF0011 FF0011
45+99 DE
&45+&99 90
4
@35+@67+@10 5C
%10011110+%1001 A7
88<<4 880 shift left
AA&F0 A0 logical AND
The total value of the expression must be between 0 and $FFFFFFFF.
Address as a Parameter
Many commands use ADDR as a parameter. The syntax accepted by 166Bug
is similar to the one accepted by the MC68040 one-line assembler. All control
addressing modes are allowed. An "address + offset register" mode is also
provided.
Address Formats
Table 4-1 summarizes the address formats which are acceptable for address
parameters in debugger command lines.
4-4 MVME166 Single Board Computer Installation Guide
Entering Debugger Command Lines
Table 4-1. Debugger Address Parameter Formats
Format Example Description
N 140 Absolute address+contents of
automatic offset register.
N+Rn 130+R5 Absolute address+contents of the
4
specified offset register (not an
assembler-accepted syntax).
(An) (A1) Address register indirect. (also post-
increment, predecrement)
(d,An) or (120,A1) Address register indirect with dis-
d(An) 120(A1) placement (two formats accepted).
(d,An,Xn) or (&120,A1,D2) Address register indirect with index
d(An,Xn) &120(A1,D2) and displacement (two formats
accepted).
([bd,An,Xn],od) ([C,A2,A3],&100) Memory indirect preindexed.
([bd,An],Xn,od) ([12,A3],D2,&10) Memory indirect postindexed.
For the memory indirect modes, fields can be omitted.
For example, three of many permutations are as follows:
([,An],od) ([,A1],4)
([bd]) ([FC1E])
([bd,,Xn]) ([8,,D2])
NOTES: N — Absolute address(any valid expression).
An — Address register n.
Xn — Index register n (An or Dn).
d — Displacement (any valid expression).
bd — Base displacement (any valid expression).
od — Outer displacement (any valid expression).
n — Register number (0 to 7).
Rn — Offset register n.
MVME166IG/D2 4-5
Using the 166Bug Debugger
In commands with RANGE specified as ADDR DEL ADDR,
Note
and with size option W or L chosen, data at the second
(ending) address is acted on only if the second address is a
proper boundary for a word or longword, respectively.
Offset Registers
4
Eight pseudo-registers (R0 through R7) called offset registers are used to
simplify the debugging of relocatable and position-independent modules.
The listing files in these types of programs usually start at an address
(normally 0) that is not the one at which they are loaded, so it is harder to
correlate addresses in the listing with addresses in the loaded program. The
offset registers solve this problem by taking into account this difference and
forcing the display of addresses in a relative address+offset format. Offset
registers have adjustable ranges and may even have overlapping ranges. The
range for each offset register is set by two addresses: base and top. Specifying
the base and top addresses for an offset register sets its range. In the event that
an address falls in two or more offset registers' ranges, the one that yields the
least offset is chosen.
Relative addresses are limited to 1MB (5 digits), regardless
Note
of the range of the closest offset register.
4-6 MVME166 Single Board Computer Installation Guide
Entering Debugger Command Lines
Example: A portion of the listing file of an assembled, relocatable
module is shown below:
1
2 *
3 * MOVE STRING SUBROUTINE
4 *
4
5 0 00000000 48E78080 MOVESTR MOVEM.L D0/A0,—(A7)
6 0 00000004 4280 CLR.L D0
7 0 00000006 1018 MOVE.B (A0)+,D0
8 0 00000008 5340 SUBQ.W #1,D0
9 0 0000000A 12D8 LOOP MOVE.B (A0)+,(A1)+
10 0 0000000C 51C8FFFC MOVS DBRA D0,LOOP
11 0 00000010 4CDF0101 MOVEM.L (A7)+,D0/A0
12 0 00000014 4E75 RTS
13
14 END
****** TOTAL ERRORS 0——
****** TOTAL WARNINGS 0——
The above program was loaded at address $0001327C.
The disassembled code is shown next:
166Bug>MD 1327C;DI
0001327C 48E78080 MOVEM.L D0/A0,—(A7)
00013280 4280 CLR.L D0
00013282 1018 MOVE.B (A0)+,D0
00013284 5340 SUBQ.W #1,D0
00013286 12D8 MOVE.B (A0)+,(A1)+
00013288 51C8FFFC DBF D0,$13286
0001328C 4CDF0101 MOVEM.L (A7)+,D0/A0
00013290 4E75 RTS
166Bug>
MVME166IG/D2 4-7
Using the 166Bug Debugger
By using one of the offset registers, the disassembled code addresses can be
made to match the listing file addresses as follows:
166Bug>OF R0
R0 =00000000 00000000? 1327C.
Frequently asked questions
How does Industrial Trading differ from its competitors?

Is there a warranty for the MVME166-223?

Which carrier will Industrial Trading use to ship my parts?

Can I buy parts from Industrial Trading if I am outside the USA?

Which payment methods does Industrial Trading accept?

Why buy from GID?

Quality
We are industry veterans who take pride in our work

Protection
Avoid the dangers of risky trading in the gray market

Access
Our network of suppliers is ready and at your disposal

Savings
Maintain legacy systems to prevent costly downtime

Speed
Time is of the essence, and we are respectful of yours
What they say about us
FANTASTIC RESOURCE
One of our top priorities is maintaining our business with precision, and we are constantly looking for affiliates that can help us achieve our goal. With the aid of GID Industrial, our obsolete product management has never been more efficient. They have been a great resource to our company, and have quickly become a go-to supplier on our list!
Bucher Emhart Glass
EXCELLENT SERVICE
With our strict fundamentals and high expectations, we were surprised when we came across GID Industrial and their competitive pricing. When we approached them with our issue, they were incredibly confident in being able to provide us with a seamless solution at the best price for us. GID Industrial quickly understood our needs and provided us with excellent service, as well as fully tested product to ensure what we received would be the right fit for our company.
Fuji
HARD TO FIND A BETTER PROVIDER
Our company provides services to aid in the manufacture of technological products, such as semiconductors and flat panel displays, and often searching for distributors of obsolete product we require can waste time and money. Finding GID Industrial proved to be a great asset to our company, with cost effective solutions and superior knowledge on all of their materials, it’d be hard to find a better provider of obsolete or hard to find products.
Applied Materials
CONSISTENTLY DELIVERS QUALITY SOLUTIONS
Over the years, the equipment used in our company becomes discontinued, but they’re still of great use to us and our customers. Once these products are no longer available through the manufacturer, finding a reliable, quick supplier is a necessity, and luckily for us, GID Industrial has provided the most trustworthy, quality solutions to our obsolete component needs.
Nidec Vamco
TERRIFIC RESOURCE
This company has been a terrific help to us (I work for Trican Well Service) in sourcing the Micron Ram Memory we needed for our Siemens computers. Great service! And great pricing! I know when the product is shipping and when it will arrive, all the way through the ordering process.
Trican Well Service
GO TO SOURCE
When I can't find an obsolete part, I first call GID and they'll come up with my parts every time. Great customer service and follow up as well. Scott emails me from time to time to touch base and see if we're having trouble finding something.....which is often with our 25 yr old equipment.
ConAgra Foods