Memory Control Storage; Computer Modes - Xerox 550 Reference Manual

Computer
Hide thumbs Also See for 550:
Table of Contents

Advertisement

avai lable to a program. The register block pointer can be
changed when the basic processor is in the master mode or
the master-protected mode.
Only the first 16 general reg-
isters of a register block may be used by programs; the last
eight are reserved.
Each of the first 16 general registers in a register block is
identifi ed by a 4-bi t code in the range 0000 2 through 11112
{O
through 15 in decimal notation, or
X'O'
through
X'F'
in
hexadecimal notation}.
Any or" these 16 registers can be
used as a fixed-point temporary data storage location, or
to contain control information such as a data address, .count,
pointer, etc.
General registers 1 through 7 can be used
as index registers.
MEMORY CONTROL STORAGE
The memory control storage for the memory map and the
associated memory access protection codes are contained
in the Memory Interface (MI). Memory control storage for
the 4-bit write locks are contained in the memory units.
Memory control storage can be modified when the basic
processor is in the master mode or the master-protected
mode.
MEMORY MAP
Two terms are essential in understanding the memory map-
ping concept: actual (i. e., absolute or real) address and
'!h·t~d
0dd!"ess.
An actual address is used within the memory unit (memory
address registers) to access a specific, physical memory lo-
cation for storage or retrieval of information as required by
the execution sequence of an instruction. Actual addresses
are fixed and are dependent on the wired-in hardware.
A virtual address refers to a logical location as required by
an individual program.
Like an actual address, a virtual
address may designate a location that contains a program
instruction, an element of data, a data address (indirect
address), or it may also be an explicit quantity. Normally,
virtual addresses are derived from programmer-supplied
labels through an assembly (or compi lation) process followed
by a loading process.
Virtual addresses m~y also be com-
puted during a program's execution.
Virtual addresses in-
clude all instruction addresses, indirect addresses, and
addresses used as counts within a stored program, as well as
those instructions computed by the program.
(See "Virtual
and Real Memory", later in this chapter.)
Memory mapping transforms virtual addresses as seen by the
individual program into actual addresses as seen by the
memory system. Thus, when the memory map is in effect,
any program can be broken into 512-word pages and dy-
namically relocated throughout memory in whatever pages
of space are avai lable.
When the memory map is not in effect, all virtual address
values above 1510 are used by the memory as actual ad-
dresses. Virtual addresses 0 through 15 are alwayst used by
the basic processor as general register addresses rather than
as memory addresses. For example, if an instruction uses
virtual address 5 to address the location where a result is
to be stored, the basic processor stores that result in gen-
eral register 5 in the current register block instead of in
memory location 5.
When the basic processor is operating with the memory map
in effect, virtual addresses 0 through 15 are still used as
general register addresses.
Virtual addresses above 15 are
transformed into actual addresses by replacing the high-
order portion of the virtual address with a value obtained
from the memory map. (The memory map address replace-
ment process is described in "Memory Address Control ",
later in this chapter.)
MEMORY ACCESS PROTECTION
When the basic processor is operating with the memory map
in the slave mode or the master-protected mode, the access
protection codes determine whether the program may access
instructions from, read from, or write into specific regions
of the virtual address continuum (virtual memory). If the
slave mode or master-protected f}1ode program attempts to
access a protected region of virtua
I
memory, a trap occurs
(see "Memory Address Control ", "Virtual and Real Mem-
ory", and "Trap System", later in this chapter).
MEMORY WRITE PROTECTION
The memory write-protection feature operates independently
of access protection and the memory map. The 4-bit write
lock operates in conjunction with a 4-bit field, called the
write key, in bits 32-35 of the Program Status Words (PSWs).
The lock and the key de term i ne whether any program may
alter any word of main memory. The write key can be
changed when the basic processor is in the master mode or
the master-protected mode.
(The functions of the write
lock and key are described in "Memory Address Control ",
later in this chapter.)
COMPUTER MODES
The basic processor operates in one of three modes: master,
master-protected, or slave.
The operation mode is deter-
mined by the setting of three bits (bits 8, 9, and 61) of the
Program Status Words (PSWs). (See "Program Status Words",
later in this chapter.) Additionally, the basic processor
operates in a mapped mode or an unmapped mode.
t
Except for the READ DIRECT (RD)/WRITE DIRECT 0/VD) in-
structions which can read from and store into these locations.
Basi c Processor
11

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents