Startup Self Identification; Bbus; Curly; Shemp - GE Marquette MAC 5000 Field Service Manual

Resting ecg analysis system
Hide thumbs Also See for Marquette MAC 5000:
Table of Contents

Advertisement

CPU Theory of Operation: Theory of Operation

Startup Self Identification

5-14
Although there are four of these little fellows in the MAC 5000, each
performing a different function, there is only one firmware image. By
merging the code from each of the four functions into a single ROM
image confusion is reduced. It is impossible to place a processor in the
wrong spot on the board.
As each controller is released from reset, it executes a common
"WhoAmI" routine to determine its identity on the board. Each
controller's environment is uniquely and easily identified with a few
port pin tests. Once the identity is discovered, the code jumps to the
appropriate entry point in the unified image and microcontroller
assumes the desired personality.

BBus

Three of the four stooges (Moe, Larry and Shemp) communicate with
the StrongARM via BBus connections. BBus is a single wire, half-duplex
serial connection that places minimal hardware requirements on the
microcontroller while yielding respectable bit transfer rates (~50KBps).
A common set of BBus commands allow the StrongARM to access 128
bytes of RAM in each microcontroller. This dual port access allows the
StrongARM to examine and modify internal variables in each controller
while code is executing. This ability is used to allow the unalterable
HC05 code to handle modest changes in hardware, such as changes in
paper drive gearing or battery pack capacity.

Curly

Curly is responsible for configuring the FPGA and loading the first level
bootstrap program into the StrongARM. When Reset is released, Curly
reads the PCB ID code from three port pins and then searches the
SmartMedia card via the XBus data bus for a matching FPGA
configuration image (pages with ID "Xn" where n is the 3-bit PCB ID
code 1-8). Once located, the configuration image is loaded into the
FPGA. Included in the FPGA internal logic is "bus-unpacking" circuitry
that constructs 32-bit wide StrongARM instructions from sequences of
bytes on the X data bus. During the earliest phase of the startup process,
these bytes are read from the SmartMedia card by Curly and then
loaded into the "bus-unpacker". This early bootstrap code is stored in
the SmartMedia card in a special format that Curly understands and
contains a small program that enables the StrongARM to read the
SmartMedia card by itself. Once this first stage bootstrap program is
loaded (SmartMedia ID of "Bn", where n is the PCB ID) the StrongARM
is able to read the SmartMedia card without Curly's help and Curly
shuts off (effectively disappearing from the circuit) until the next system
startup.

Shemp

Shemp scans the keyboard and queues key presses for the StrongARM.
Key presses are reported both on press and release, allowing system
software to implement auto-repeat as well as the continuous operation
of treadmill control keys (up/down, faster/slower). A special key code
indicates when all keys are up as a safeguard against stuck keys in the
application software.
MAC 5000 resting ECG analysis system
2000657-002
Revision B

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents