Download Print this page

Control Data Cyber 170 State Hardware Reference Manual page 194

Advertisement

lnstruction Lookahead Purge Control
Instruction Lookahead Purge Control
Prefetching of i n s t r u c t i o n s a t a branch t a r g e t address by i n s t r u c t i o n lookahead
hardware can l e a d t o program f a i l u r e s i f a program modifies i t s own code
dynamically.
Under normal c o n d i t i o n s , t h e lookahead r e g i s t e r s a r e purged by
execution of a r e t u r n jump i n s t r u c t i o n (OlO),
UEM
read i n s t r u c t i o n (0111,
exchange jump i n s t r u c t i o n (0131, o r unconditional branch i n s t r u c t i o n ( 0 2 ) .
Selecting extended purge c o n t r o l extends these conditions.
When extended purge
c o n t r o l i s i n e f f e c t , lookahead r e g i s t e r s a r e a l s o purged by execution of any
c o n d i t i o n a l jump i n s t r u c t i o n (03 through 07) o r any CM s t o r e i n s t r u c t i o n (50
through 57 when
i
equals 6 o r 7 ) .
To enable extended purge c o n t r o l , t h e system
s e t s b i t 52 of the f l a g r e g i s t e r i n the CYBER 170 exchange package.
When
self-modifying code is present,
it
may be h e l p f u l t o s e t extended purge
c o n t r o l ; however, the a d d i t i o n a l purging causes a degradation i n execution and
does not cover all cases of code modification.
Purge Control
I f normal purge conditions a r e i n e f f e c t , a s t o r e i n s t r u c t i o n t h a t modifies a
s e q u e n t i a l i n s t r u c t i o n must modify a t l e a s t P p l u s 6 words ahead t o ensure
execution of t h e modified code.
I n a d d i t i o n , a s t o r e i n s t r u c t i o n followed
by
a
branch t o a modified i n s t r u c t i o n executes t h e modified code only i f t h e r e a r e
a t l e a s t 12 executed i n s t r u c t i o n s between t h e s t o r e and t h e modified code.
I f the extended purge o p t i o n i s s e l e c t e d , a s t o r e i n s t r u c t i o n can modify t h e
next s e q u e n t i a l i n s t r u c t i o n and be assured of executing t h e modified
i n s t r u c t i o n .
Likewtse, a s t o r e i n s t r u c t i o n followed by a branch t o
a
m o d i f i e d ,
i n s t r u c t i o n always executes t h e modified code.
Error Response
When the
CP
d e t e c t s o r i s informed of an e r r o r ,
it
records the e r r o r .
Depending on the type of e r r o r and t h e e x i t mode s e l e c t i o n b i t s s e t i n t h e
EM
r e g i s t e r , the program i n execution may be i n t e r r u p t e d .
I f
t h e e r r o r i s an
i l l e g a l i n s t r u c t i o n o r an address-range e r r o r on an
RNI
o r branch, the program
i n t e r r u p t i o n i s unconditional.
For o t h e r types of e r r o r s , t h e e x i t mode
s e l e c t i o n b i t s determine whether o r not t h e program i s i n t e r r u p t e d .
I f t h e
e x i t mode s e l e c t i o n b i t i s s e t and the corresponding c o n d i t i o n i s d e t e c t e d , the
program i s i n t e r r u p t e d .
The e x i t mode s e l e c t i o n b i t s a r e contained i n word
N
plus 3 of t h e exchange package.
Figure 5-5 shows the format of t h e e x i t
condition r e g i s t e r a t
(RAC).
Table 5-6 d e s c r i b e s t h e p o s s i b l e c o n t e n t s of the
r e g i s t e r .
Tables 5-7 and 5-8 l i s t CP e r r o r responses.
The
CP
has the following e r r o r conditions:
i l l e g a l i n s t r u c t i o n s , hardware
e r r o r s , and c o n d i t i o n a l software e r r o r s .

Advertisement

loading
Need help?

Need help?

Do you have a question about the Cyber 170 State and is the answer not in the manual?

Questions and answers