J-11 Programmers Reference Jan82
J-11 Programmers Reference Jan82
PROGRAMMER'S REFERENCE
REVISION HISTORY
2.01 7/80 Added Table of Contents; revised I/O space, CPU Error
Register, and Memory System Error Register;
reorganized chapters 3, 4, and 5
1.01 0/79 Added I/O bus time error bit in CPU Error Register;
added CPU abort error bit in Memory System Error
Register; added disable interrupt bit in Cache
Control Register; fixed up original
TABLE OF CONTENTS-
1.0 INTRODUCTION
1.1 Scope
1.2 Method
1.3 Applicable Documents
5.1 Cache
5.1.1 Cache Control Register (17777746)
5.1.2 Hit/Miss Register (17777752)
5.1.3 Cache Multi-Processor Hooks
5.1.4 Cache Response Matrix
5.2 I-Stream Buffer
5.3 Memory System Error Register (17777744)
9.0 CONSOLE
10.0 11/44 HARDWARE DIFFERENCES
1.0 INTRODUCTION
1.1 Scope
Th is document spec i f ies the prog rammer-v is i ble function~ 0 f the, J.."...ll, a
high performance, MOS CPU ch~i-p set for the PDP-II family.~, ''''The J-11
implements the important 11/44 and 11/70 features:1see sections 10 and
11 for summary ,di-ffe~ence lists) and achieves 11/7,0 performance', in most
applications.
1.2 Method
The J-11 is in'fended'to replace both the 11/44 <ind the ~1/7,0. £: It will
run RT-11, RSX-11M, RSX-11M+, RSTS/E, DSM-11, UNIX, and KSOS. The 11/44
and 1 1/7 0 a r ~~ not e n t ire 1 y com pat i b 1 e • Wh e n a ~: hO,: ~ e e . bet wee n
4
These include:
The Processor Status Word (PS) contains information on the sta'tus' o:f the
processor.
15 14 13 12 11 10 ' . 9 8 7 5 4 3 2 1
+-------------------------------------------------------------------+
, -I- 1.1 II-I I I I I I I I I 1 I I
:, oN "
,
I I11111111I
II1111111I
1 T
I
I
, "
,Z I V
,
I
,
C I
,
+- --~ . ,._. . .:...---~--,- -,-.'I ::----.-:.-------------------------------------
I . , ":;..'~;-'...;. .. -~+.
I' "
, I I
Current I
Mode "
f
.,
,/ , I
I
I
I
I
I
I. I I
,
I
Prev iouS'-Mode~.....:.._:J
I ,I I
I
I
,
I
Reg ister Set - I , I
----..--~--
.. I r I
Instruct·ion, Suspen,s ~o'I1' I r I
. .,I ------------- I I
priority___________~~_ _ _~~______~___ I I
I I
Trace \ Trap- .
I --~-------------~------------------------
I
,
I
ConditionCOd~s I J
--------------------------------------~------
BIT NAME' FUNCTION
15:14 'Current Mode' Current processor mode: .~ :'
,(RW., protected)_ 00 = kernel
01 = supervisor
10 = illegal ( traps)
11 = user.
Fo r the protection on the PS unde r va r ious cond i t'ions, see Table 3-1.
Th e PSi s i n i t i ali zed a t po we r up ( de pe nd son po we 'r U pop t i 0 ri s " and is,
cle-ared at console start. The RESET instruct"ion does not affect , ;
the PS.
Table 3-1
PS PROTECTION
I I--~-----/--------I--------I 1--------1--------1--------1 I
, / I . RTI, RTT I I TRAPS & INTERRUPTS I I
PS - ~.i.~lsJ~ _../1 User I Super I Kernel/ I User I Super/-Kerne·lll-
___ -------_1 1--------1---------/--------1 /-----:---.;--.-.~ /_-_ ... ______1_____·. . . .---1 I
Condition 1/ loaded I loaded I loaded I I loaded I loaded I loaded / I
Codes I I from I from I from I I from I from I from I' I·,
PS <3:0> II stack stack I stack II vector I vecto.r I r-
I vector
/ 1-------- --------1--------1 /--------I--------I--,~;;..~·.;...,-....:·r /
I I loaded loaded I loaded / I loaded / loaded r~loaded 1 1
Trap Bit / I from from I from I I from I. ~ rom, ..__ . f' fro m ,11'
PS <4> II stack stack I stack II vector / .v.~ctor ',\7Eic,tor"'I';L
I 1---:..---- --------1--------1 I------.:-~J. -.::- ....:.·~.:..:...:'r=·~--~- . . ~ I I
Processor I I un- un- I loaded -,~ I-.loaded L. loaded .- ~.' loaded 1 t .
Pr ior i ty I I changed changed 1 from / / from L from . L from I /-
PS <7: 5> 11 ./ s t ac k I / "ve.c to'--.J .'y.~c.to.L _I vecto r 'I I,
. I 1-------- --------1--------11--------1--------1-----.;...--1 I
CIS 1 I loaded loaded I loaded I_load~d I loaded 1- lo~ded 1 I.
Suspend Bi t I I from from I from I from 1- from'-- I' fioin , I.
PS <8> ~.+- stack stack I stack J vector. I vector I 'vector II--
I 1-------- --------1-------- I--------I---:..--:-I----.. ---~ I I
Register I I ORed ORed I loaded 1 loaded I loaded I lo~(feif I I
Select 1 I from from I from from I from I fr6~~~1 1
PS <11> I I sta6k stack 1 sta6k vector I vectbr'I·-vector I I_
I 1--------1--------1-------- ________ I ___ .;..._...:.;;..~·I·~...;. __ ·... i... __ 1 /
Previous I I ORed I ORed I loaded copied 1 copied I copied I I
Mode I I from I from I from from I from I from I I
PS <13: 12> I I s tac k I s tac k I s tac k PS I PS 1 PS I I
J .J ~ I I <1 5: 1 4 > I <1 5 : 1 4-> I <1 5: 1 4 > I I
Il~-------I--------I-------- --------I------~-f-~------I I
Cur rent I / ORed I ORed / loaded loaded I lo'aded~ I ~ loaded I I
Mode 11 from I from / from from I from I from,;. I /
PS <15: 14> :/ I~···:=sta.·ck I stack / stack I vecto,( t vector I I
vecto r·
I I-------- / -------- I-------- -------- I-------- I---~;- ... -- I I
J-ll ,PROGRAMMER'S REFERENCE
A request is queued by setting one of the bits <IS: 9> 'wh1ch corresponds
- ··to a~'prog-r'am -interrupt request at levels 7-1. Bits <T·:5)~·':'"and '("3-11') '~a.r-e
set by hardware to the encoded value of the highes~'pendin~ re~ue~~sai. .. • "# .• ~
PIR 3
- .' ::-
, I I'
I
I,
I I
PIR 2:- -I I
I I
PIR 1 I I
I I
Priority encoded value of bits <15:9> -I I
PIRQ bits <15:9> are read/write; bits <7:5,3:1> are read only; the
remaining bits always read as zeroes. PIRQ is cleared at power up, by a
console start, and by a RESET instruction.
J-11 PROG~AMMER'S REFERENCE Page 11.: "
This register identifif,!s the source of any abort or trap that cal!sed a'"
trap through location 4~
15 8 7 0 5 4 3 -.2 1 0'
~~~--~-----~------------------------------------------------~---+
'- - II) 11 I I I // 1/ / / / / I / / I / / / / /1 / I / /1/ I . I , 1-1// II I / J"
1//11/1//1/////1/111/1/1/1/111111 I il/ili/iit
I1111111111111111111111111111111I I 11/111/11
+-------~---~-------~--------------------------------------~~-~~~
I
IJ.l¢g,al~ ~Hl\,L.! ___
. , '___".-"....'...;.,'
-+-'!_ _ _ _ _ _ _ __ I
I
Add ress Er [-0 r .I
I
Non-exi?tent~Memp~y~ __________________ ·1
" I
I/O Bus, Timeo,u:t ,-.: I,
~------------------------------------
I
Yellow Stack Violation I
----------------------------------- I
Red Stack Violation ~ ~ I
----------------------------------------- ," <
The' J':"11 checks ke rnel stack references aga inst a 'f i xed 1 iin i t /) f 400 (8.) ._,
If the virtual address of a kernel stack reference is less th~n 4'A(8),
a yellow stack trap occurs at the end of the current instruction (except
for CIS instructions, which abort at the start of instruction
I execotion). A' ~stack trap can occur only on a kernel sta-ck' ref~rence, ,.
which is' defined as a kernel mode 4 or 5 reference through R6, a CIS ppj'
stac~ push, or a JSR, trap, or interrupt stack push. ' ~
IIn add i" t i on , the J -11 c h ec k s for k ern e 1 s t a c k a bo I" t s" d'di'log' ' i rt t err u pt ,
trap, or abort sequences. If a kernel stack push during an .!:in1;:errupt,
trap, or abort causes an abort, the J-ll initiates a r"ed-.".-'z,one· stack~ t'rap--
by creat ing an emergency stack at loca tions 2 and 0 , setting bi t <2,> "qf,
the CPU Error Register, and vectoring through 10cat.iQn 4~.,.-.. '
NOTE: The J-ll treatment of yellow stack t I" ap.i s',-c-iden t ieai . to fhe'
11/44. The 11/70 includes a stack limit register, and a.mor~
inclusive definition of a stack reference. Tl1-g.c~-;.lI's'd'efinition
of a red stack trap is unique.
Th es e . pro t e c t ion me c han i sm s a I" e f u 11 yeo mpa t ih1 e _wit h t De 11/4 4 and
11170. :'.,
J-l1 PR:OGR"AMMER' S REFERENCE Page 13
Th e -, J -11 " imp 1 em e n t s 11 I 4 4 -11 I 70 com pat i b 1 e mem 0 r y man a gem e n t • "Th i s'
features:
NOTE: No I/O map is, supplied with the J-ll chip set. It is _coupled
with t~e UNIBUS adapter module, if any.
Th e vis i b Ie' me rn 0 r y man age rn en t s tat e con sis t s 0 f 4 8 ~ P g' e ~'Ad d ~':s s~ a
Registers (P~Rs), 48 Page Descriptor Registers (PDRs), and four Memory
Management Re9isters (MMR0-3).
The page Address Registers (PAR?) contain the In-bit Page Address Field
(PAF) ~
+__
15 ____ ___ ______ .-_ . . __________________________________________ '...:.J.+
~ ~- ~
~ .. , -, I
PAF I
I
+----~--~~~~-?~-~-----~-----------------------------------~------+
All bits- are reao/wrlte. These registers are not affected by console
star"t -or-. . . ....a'RE"SE't'<'in-tst-ruction.
c:-
Their state at power up is UNDEFINED •
,-' i .~
J-ll PROGRAMMER'S REFERENCE Pa·ge 1.4·
2.:...1 ... '.....·Ac c e,s s· _,-(:·0 n tr·,Q I This field contains the access rights-tQ:
Field (RW) to this particular page. The access codes
or "keys" specify the manner in which a j:
page may be accessed and whether or not a,
given access should result in an abort'of.
the current operation. The access codes'
are:
NOTE: The J-l1 PDR's are identical to the 11/44 PDR's. The--,J-ll,:,-cJ
eli min a t: e~~:r "t h e II/70's "A" (any access) status bit, 'adds the
~ypas.s ca'che bit, and only supports 11/70 access modes ':0, ,2., ',ana r.
'1): --":1:n' -addit16n, "the J-l1 sets the W (page written) bit on writes
which cause aborts or modify internal registers, while th~ 11/44
and 11/70 do not.
J-ll PROGRAMMER'S REFERENCE
MMR0 con'tains error flags, the page number whose reference caused the
abort~ and various other status flags.
15,::' - 14 13 12 4 3 7 1 5
+-~--~----------------------------------------------------~-~~---~---+
·I~ - I I 1111111111111111111111111111 I 1 1 1
I I I 1111111111111111111111111111 I 1 I 1
I I 1 II I I I I I I I I I I I I I I I I I I I I I I I I I I 1 I. "I I,
+;.;.. ,;.-;;,..~ ------ -- -- -- -- - -- -- - - ---- ---- -- -- -- -- - - -- -----.,--- --- -- --- ---- --~
1- -' J
+
Abort I I'
Non-<:; -t'.:, - I
Res.~I,' - f
::. - '. t.
Abort-Page I
Length I
Er ro rc:, ,': ' I,
Abort-Read'
Only Error
---
Process'o r Mode
--------------------------------------
Page Space ________________________________________________
page,Number________________________________________________~~~~
::""',"
BIT NA-ME
Note that bits <15:13> can be set by an explicit write; however such an
action does not cause an abort. Whether set explicitly or by an abort,
bits <15: 13> cause memory management to freeze the contents of
MMR0<15: 13, /): 1>, MMRl, and MMR2. The status registers remain frozen
until MMR0<15:13> are cleared by an explicit write or any initialization
sequence.
J-11 PROGRAMMER'S REFERENCE Page -1'7
I lnstructlon.
~MR0<15:~3,0> is cleared at power up, by a console start, and by a RESET
MMROJ<f1: 1> is UNDEFINED at power up. .....
NOTE: The J-l1 eliminates the 11/44-11/70 maintenance mode feature, and
the 11/70 memory management trap and instruction complete
features. The J -11 and 11/44 upda te MMROJ< n: 1> on references .. to
: in t e rna I pro c e s so r reg i s t e r s i t he 11/7 0 doe s no t • Th e 11/4 4
'sets onlY_f:':1.MR0<15> on an abort due to the illegal processor mode;
the 11/70 sets MMR0<15:14>; the J-11 sets MMROJ<15>, but the state
of MMR~<~1:~3> is unpredictable •
•- • .>-
NOTE: The 11/70 also loads MMR2 with the vector during an interrupt or
trap.
MMR3 enabl'es or disables D space, 22-bi t mapping, the C9M '·.inst ruction,
and the I/O map (when applicable) •
.::.15 4 3 _25
+-----~------------------------------------------------------~-~--+
1///111//////////////////////////////////1 I I I I I I
1////////////////////////////////////////1 I I I I I I
1////////////////////////////////////////1 I , , 1 , 1
+----------------------------------------------------------------+
I 1 It'
Enable I/O Map_________________________________ , , , I I
I I I I
Enable 22-bit Mapping _______________________________ , , I I
, I I ,
Enable ,CSM Instruction , , I
-------------------------------- I I
Enable '.Kernel Data Space , I
I
Enable Supervisor Data Space
------------------------------------- ,
Enable User Data Space
-----------------------------------------------
BIT NAME FUNCTION
2:0 Enable Data Space These bi ts enable Data Space_ m~ppingt .,.'
(RW) for kernel, supervisori and user modej
respectively.
When the data space feature is enabled, the J-ll classifies memory
references into instruction (I) and data (D) space references and uses
the cor res po n din g ma pp i ng reg i s t e r s • In g e n era 1 , the follow i ng are
classified as I space references:
- instruction fetches
-index w¢>rds
-' inline operands (CIS instructions)
Table 4-1
I AND D SPACE OPERATION
(first/second/third memory references)
00 - 0; na na na
10 - 16 D I D
17 I I D
20 - 26 D I o
27 I I D
30 36 D/D D/I D/D
37 I/D 1/1 I/D
40 - 46 D I o
- 47 I I o
50 - 56 D/D D/I D/D
57 I/D I/I I/O
60 - 67 I/D I/I I/D
70 - 77 I/D/D I/D/I I/D/D
J-ll PROGRAMMER'S REFERENCE Page 20
5.1 Cache
, V,
I I
~+---~--------------------------------------------~----~--+
I-
Valid
Bit
-----
,
I
I
Tag Field
,,,
----------- I
Data Block - Byte 1
-------------------------
Data Block - Byte 0___________________________________________ ,
15 11 10 9 8 7 (, 5 4 3 2 1 0
+ ---;...'-....-.------ ---- -- ---------- --- -- - - --- - - -- - - -- - ---- ---- - -- - - - -- -- ---+
11/1/ II;; I 11/;'1 I I I I I I I I I I I I I I I I I I ' I I 1 1
1IIIIIllltll!!!111111111111 1 I I I I I I I 1
111//111//1111/111111111111 I I I I 1 I 1 1 I
+~,:"':';'~:--'';';'~'':'---;...-.-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ------+
~ ~.,
.,.' I I I I I 1 I I I
Write Wrong Tag Parity I I I I I I I I I
I I I I I I I I
Byp-a~'s. Cac~le- . ~" ,_, I I I I I I I I
-~.;.;....;...~------ I I I I I I I
Flush ·'Cach~' I 1 I I I I I
I I I I I I
Enable P~rity Error Abort I I I I I I
-------- I I I I I
Write Wrong Data Parity I I I I I
-------------------------- I I I I
Force Replacement I I I 1
~---------------------------------- III
Force Mis$ 1 I 1
----------------------------------------------- 1 1
Disable Bus Traps I 1
------------------------------------------------- I
Disabie Cache Traps' I
Write Wrong Tag This bit, when set, causes the cache tags
Parity (f~W) to be written with wrong parity an all
update cycles. This will cause a cache
tag parity error to occur on the next
access to that location.
9 Bypass Cache This bit, when set, forces all CPU memory
(RW) references to go directly to main memory.
Read or write hits will result in
invalidation of accessed locations in the
cache.
3:2 Force Miss (RW) These bits, when either_ i$ set, force all
CPU mem 0 r y ref ere n c est 0 god i r e-c t I Y to
main memory. The cache tag and data
stores are not changed.
This register indicates whether the six most recent CPU memory
references resulted in cache hits or cache misses:
15 5
+--~-----------------------------------------------------------+
1111111111111111111111111111111111111111 I
I111111111111111111111111111111111111111 <---FLOW I
11/111/(1/111111111/11111111111111111111 I
+--------------------------------------------------------------+
Bits ente~·f~om ~~e right (at bit <0» and are shifted leftward. A one
indicates a cache,hit, a zero indicates a cache miss.
NOTE: The HitlMiss Register is compatible with both the 11144 and the
11/70.
1 CPU 1 1 DMA 1
1-----------------------1
1 Hit 1 Miss 1
1-------------------.;..-.;..-1-
I Hit 1 Miss 1
Read
1-----------------------1
IRead cachedlRead memoryl
1-----------------------1
1 Re a d i R e ad' 1
1 data 1 & allocatel 1 memory 1 memory 1
1 1 cache 1 1 "I _ 1
1-----------------------1 I------~----~-~~-----~--I
Write IWrite thru 1 Write 1 IInvalidate ,'Write ,
I cache to i memory t I cache & I , mem~ry _1
1 memory 1 1 1 wr i tern em " ,- ,
1-----------------------1 I------------~~---------,
Read bypass IInvalidate 1 Read 1 1 na 1 na 1
1 cache & 1 memory 1 1 1 I
1 read mem 1 1 1 I 1
1-----------------------1 1-----------------------1
Write bypass IInvalidate 1 Write 1 1 na 1 na 1
1 cache & 1 memory 1 1 1 1
I write mem 1 1 1 1 1
Read forced
1-----------------------1
I Read 1 Read 1
1-----------------------1
1 na 1 na 1
miss 1 memory 1 memory 1 1 1 1
1-----------------------1 1-----------------------1
Write forced 1 Wr i te 1 Wr i te 1 1 na 1 na 1
miss 1 memory 1 memory 1 1 I 1
15 14 13 12 11 10 9 8 7 5 4 3 2 1
+--------------------------------------------------------------------+
I -11111/1111111111111111111111111111 I I I III/I
I 111I111111111111111111111111111111 I I I 11I11
-I lllllllllllllllllllllllllllllllill I I I 11111
+-------------------------------------------------------------------~+
I
CPU Abort
The floa t ing po i nt instruc t ion set is impl emen ted e i the r in microcode
res id ing in the base Cont rol ch i p, 0 r ina sepa rate coprocessor. The
coprocessor acts as a floating po int accelerator (FPA) and provides
a p p r ox i mat ely f i v e t i me s the per for man c e o f th e m ic roc 0 d e
implementation.
This register provides mode and interrupt control for floating point
instructions and records conditions resulting from the execution of the
previous instruction. Three bits of the FPS register control the modes
of operation:
For the first four of these exceptions, bits in the FPS register are
available to individually enable and disable interrupts. An interrupt
on the occurrence of either of the last two exceptions can be disabled
only by setting a bit which disables interrupts on all six of the
exceptions, as a group.
J-ll PROGRAMMER'S REFERENCE Page 27
Of the thirteen FPS bits, five are set by the FP-ll as part of the
out put 0 f a flo at in g po in t i n s t r u c t ion: the err 0 r f 1 a g and con d i t ion
codes. Any of the mode and interrupt control bi ts may be set by the
user; the LDFPS instruct ion is ava i lable fo r th i s purpose. The FPS
register is formatted as follows:
15 14 13 12 11 10 9 8 7 5 4 3 2 1
+---------------------------------------------------------------+
IF F I111I111I F I F I F I F I F I F I F I111I F I F I F I F ,
J
-I' E I I I111I111I I I I I I I I I D I LIT I111I N I Z I V I C I
IRI D I111I111I
U I U I V I C I I I I111I I I I I
I I I111I111I
V I I I I I I I111I I I I I
+--~------------------------------------------------------------+
NOTES
1. The FID bit is primarily a maintenance
f eat u r e • I t s h 0 u I d no rm a 11 y be c 1 ear.
In particular, it must be clear if one
wishes to assure that storage of -0 by
the FP-ll is always accompanied by an
interrupt.
The FEC and FEA registers are updated only when one of the following
occurs:
1. Divide by 0
2. Illegal opcode
This implies that when and only when the FER bit is set by the FP-ll are
the FEC and FEA registers updated.
NOTES
6.3 Accuracy
The FIV and FIU bits (of the floating point status word) provide the
user with an opportunity to implement his own correction of an overflow
or underflow condition. If such a condition occurs and the
corresponding interrupt is enabled, the microcode stores the fractional'
part and the low eight bits of the biased exponent. The interrupt will-
take place and the user can identify the cause by examination of the FV
( flo at i n g 0 v e r flo w) bit 0 f th e FE C ( flo at in 9 ex c e p t ion) reg i s t e r • Th e
reader can readily verify that (for the standard arithmetic operations
ADD, SUB, MUL, and DIV) the biased exponent returned by the instruction
be a r s the folIo wi ng reI a t ion t o t he cor r e c t e x po n e n t g e n era ted by the
microcode.
1. On overflow, it is too small by 400 8 •
Note that if an abort occurs during either the vector fetch or the stack
pushes, the PS and PC are restored to their original values prior to
recognition of the abort.
address error
memory management violation
timeout/non-existent memory
parity error
trace (T-bit) trap
yellow stack trap
power fa i 1
floating point trap
PIRQ 7
interrupt level 7
PIRQ 6
interrupt level r)r
PIRQ 5
interrupt level 5
PIRQ 4
interrupt level 4
PIRQ 3
PIRQ 2
PIRQ I
Halt line
J-ll PROGRAMMER'S REFERENCE Page 34
9.0 CONSOLE
The J-ll contains console microcode. This will enable a user to access
mo s t 0 f the J -11 s tat e, run d i a g nos tic s, and mo nit 0 r the s y stem. Th e
J-ll console replaces the "lights and switches" programmer's console
with microcode that interprets ASCII characters to perform equivalent
panel functions.
The J-11 does contain additional functionality not present in the 11/44:
The following list summarizes the hardware differences between the 11/44
and the J-1l:
17 777 f)7fl
to User Da ta PAR No difference.
17 777 660
17 777 656
to User Instruction PAR No difference.
17 777 640
17 777 636
to User Data PDR No difference.
17 777 620
J-11 PROGRAMMER'S REFERENCE Page 30
17 777 1116
to User Instruction PDR No difference.
17 777 1100
17 772 37fi
to Kernel Data PAR No difference.
17 772 360
17 77.2 356
to Kernel Instruction PAR No difference.
17 772 340
17 772 336
to Kernel Data PDR No difference.
17 772 320
17 772 316
to Kernel Instruction PDR No difference.
17 772 300
17 772 276
to Supervisor Data PAR No difference.
17 772 260
17 772 256
to Supervisor Instruction No difference.
17 772 240 PAR
17 772 236
to Supervisor Data PDR No difference.
17 772 220
17 772 216
to Supervisor Instruction No difference.
17 772 200 PDR
J-11 PROGRAMMER'S REFERENCE Page 37
The J -11 is des ig ned to repl ace the PDP-11/70 in existing and future
applications; however it does not contain the following PDP-l1/70
hardware features:
The J-11 does contain additional functionality not present in the 11/70:
- CIS instructions
The following list summarizes the hardware differences between the 11/70
and the J-11:
17 777 676
to User Data PAR No difference.
17 777 660
17 777 656
to User Instruction PAR No difference.
17 777 ()40
17 777 ()3()
to User Data PDR Added bypass cache, eliminated
17 777 n20 access flags and access modes
other than 0, 2, and ~.
17 777 616
to User Instruction PDR Added bypass cache, eliminated
17 777 ()00 access flags and access modes
other than 0, 2, and 6.
17 772 376
to Kernel Data PAR No difference.
17 772 360
17 772 356
to Kernel Instruction PAR No difference.
17 772 340
J-11 PROGRAMMER'S REFERENCE Page 39
17 772 33h
to Kernel Data PDR Added bypass cache, eliminated
17 '7'7')
, 'L- 320 access flag and access modes
other than 0, 2, and h.
17 772 316
to Kernel Instruction PDR Added bypass cache, eliminated
17 772 300 access flag and access modes
other than Cil, 2, and n.
17 772 270
to Supervisor Data PAR No difference.
17 772 2h0
17 772 256
to Supervisor Instruction No difference.
17 772 240 PAR
17 772 23n
to Supervisor Data PDR Added bypass cache, eliminated
17 772 220 access flag and access modes
other than 0, 2, and n.
17 772 21n
to Supervisor Instruction Added bypass cache, eliminated
17 772 200 PDR access flag and access modes
other than Cil, 2, and fie
J-II PROGRAMMER'S REFERENCE Page A-I
4.1 INTRODUCTION
15 8 7
+-----~-~======================================-----+
I111111111111111111111111 1111111111111111111111111
1111111111111111111//1//1 D 1111111111111//1/1////1/1
1111111111111111111111111 111111111111111/111111111
+---------------------------------------------------+
Figure 4-1 Receiver Status Register
Bit Description
Bit Description
15 8 7
+-------------------------------------------------------+
11111111111111111111111111111 I
I1111111111111111111111111111 DATA I
I1111111111111111111111111111 I
+-------------------------------------------------------+
Figure 4-2 Receiver Buffer Register
Bit Description
15 8 7
+--------------------------------------------------------+
11111111111111111111111111 111111111111111111111111111
11111111111111111111111111 D 111111111111111111111111111
11111111111111111111111111 111111111111111111111111111
+--------------------------------------------------------+
Figure 4-3 Transmitter Control and Status Register
Bit Description
15 8 7 o
+-------------------------------------------------------+
1111111111111111111111111111 I
1111111111111111111111111111 DATA ,
I111111111111111111111111111 1
+-------------------------------------------------------+
Figure 4-4 Transmitter Buffer Register
Bit Description
<15:8> Unused. These bits are don It ca res and can be in any
state since console ODT does not use them. In DIGITAL
interfaces, these bits may be defined.
J-ll PROGRAMMER'S REFERENCE Page A-7
Upon entry to console ODT, the RBUF register is read and the
character present in the buffer is ignored. This is done so that
erroneous characters or user program characters are not
interpreted by console ODT as a command, especially when a program
is halted.
fi. Enter a wait loop for terminal input. The Done flag, bit
<7> in RCSR, is tested •. If it is 0, the test continues.
The parity bit (bit <7» on all input characters is ignored (i.e.,
not stripped) by console ODT. If the input character is echoed,
the state of the parity bit is copied to the output buffer (XBUF).
Output characters internally generated (e.g., <CR» by ODT have
the parity bit equal to 0. All commands are echoed except for
ASCI I codes in the range 0-17 • Where appl icable, upper- and
8
lowercase of command characters are recognized.
J-11 PROGRAMMER'S REFERENCE Page A-9
Th e wo r d "10 cat ion," as use din the follow i n g sec t ion s, ref e r s to
a memory location, an I/O device register, an internal processor
register, or the processor status word (PS).
NOTE
Example: ~001000/012525<SPACE>
where:
In this case the user desired to change RI, so new data, 1234, was
entered before issuing the <CR>. Console aDT deposited the new
data in the open location and then printed <CR><LF>@.
Console aDT does not directly echo the <CR> entered by the user
but instead prints a <CR>, followed by a <LF>, and @.
This command is used to close an open location and then open the
next contiguous location. Memory locations and processor
registers are incremented by 2 and 1 respectively. If the PS is
open when a <LF> is issued, it is closed and a <CR><LF>@ is
printed; no new location is opened. If the open location's
contents are to be changed, the new data should precede the <LF>.
If no data is entered, the location is closed without being
altered.
In this case, the user entered <LF> with no data preceding it. In
response, console ODT closed R2 and then opened R3. When a user
has the last register, R7, open, and issues <LF>, console aDT
opens the beginning register, R0.
Example: fS0/000123<SPACE>
or
@R7/000123<SPACE> <LF>
R0/054321<SPACE>
J-ll PROGRAMMER'S REFERENCE Page A-II
Note the trace bit (bit <4» of the PS cannot be modified by the
user. This is done so that PDP-II program debug utilities (e.g.,
ODT-ll), which use the T bit for single-stepping, are not
accidentally harmed by the user.
Example: @200G<NULL><NULL>
Example: @P
2. The host system at the other end of the serial line must
send two 8-bit bytes which console ODT interprets as a
starting address. These two bytes are not echoed.
All I/O addresses (17 7~0 000 to 17 777 777) must be entered by
users with all 22 bits specified. For example, if a user desires
to open the RCSR of the console serial interface he must enter
177775~0, not 1775~0, or 777Sfi0 •
•
4. S. 1 General Registers
Accessing the general reg ister sets 'is accompl ished in the
following way. Whenever R0-RS are referenced in console ODT, they
access the general register set specified by the PS register set
bit (PS<ll». If a program operating in general register set zero
(PS<ll> = 0) is halted and a general register is opened, register
set zero is accessed. Similarily, if a program is operating in
register set one, "R0-R5" accesses register set one.
Example: PS = 000000
Example: PS = 140000
In this case, the kernel mode stack po inter was desi red. The PS
was 0 pe ned, and PS <1 5 : 14 > we r e s e t to 00 ( k ern elm 0 de). Th en R n
wa sex ami ned and c los e d • Th e 0 rig ina 1 val ue 0 f PS < 1 5: 1 4 > wa s
restored, and then the program was continued using the P command.
The flo at i ng po in t a c c urn u 1 a tor s can not be a c c e sse d fro m con sol e
ODT. Only floating point instructions can access these registers.
When the user is specifying an address, console ODT will use the
last eight octal digits if more than eight have been entered.
When the user is specifying data, console ODT will use the last
six 0 c tal dig its i f m0 r e t han six h a v e bee n en t ere d • Th e use r
need not enter leading 0s for either address or data; console aDT
forces 0s as the default. If an odd address is entered, console
ODT responds to the error by printing ?<CR><LF>@.
J-ll PROGRAMMER'S REFERENCE Page A-IS