162Bug Implementation

162Bug Implementation

MVME162Bug is written largely in the "C" programming language, providing benefits of portability and maintainability. Where necessary, assembler has been used in the form of separately compiled modules containing only assembler code - no mixed language modules are used.

3

Physically, 162Bug is contained in two of the four 28F020 Flash memories, providing 512KB (128K longwords) of storage. Optionally, the 162Bug can be loaded and executed in a single 27C040 PROM. (128K longwords) of storage. Both memory devices are necessary regardless of how much space is actually occupied by the firmware, because of the 32-bit longword-oriented MC68040 memory bus architecture. The executable code is checksummed at every power-on or reset firmware entry, and the result (which includes a pre- calculated checksum contained in the memory devices), is tested for an expected zero. Thus, users are cautioned against modification of the memory devices unless re-checksum precautions are taken.

Installation and Startup

Even though 162Bug is installed in the Flash memories on the MVME162 module, for 162Bug to operate properly with the MVME162, you must follow the steps below:

Caution

Inserting or removing modules while power is applied could damage module components.

1.Turn all equipment power OFF. Refer to the Hardware Preparation section in Chapter 2 and install/remove jumpers on headers as required for your particular application.

Jumpers on header J22 affect 162Bug 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.

These readable jumpers can be read as a register (at $FFF4202D) on the Memory Controller (MCchip) ASIC. 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 J22) contains eight bits. Refer also to the MVME162 Embedded Controller Programmer’s Reference Guide for more information on the MCchip.

The MVME162Bug reserves/defines the four lower order bits (GPI3 to GPI0). The following is the description for the bits reserved/defined by the debugger:

MVME162IG/D2

3-3

Page 65
Image 65
Motorola MVME162 manual 162Bug Implementation, Installation and Startup