Restriction 1 : Reset Sequence Required by Retire Logic and Mapper

br

r31,bccshf

 

/* continue shifting*/

bccend:mtpr

r31,EV6__EXC_ADDR + 16/* dummy IPR write - sets SCBD bit 4 */

addq

r31,r31,r0

 

/* nop*/

addq

r31,r31,r1

 

/* nop*/

mtpr

r31,EV6__EXC_ADDR + 16

/* also a dummy IPR write -

 

 

 

/* stalls until above write

 

 

 

/* retires*/

beq

r31, bccnxt

/* predicts fall through in PALmode*/

br

r31, .-4

/* fools ibox predictor into infinite loop*/

addq

r31,r31,r1

/* nop*/

 

bccnxt:addq

r31,4,r0

/* load PCTX.....*/

mtpr

r0,EV6__PROCESS_CONTEXT

/* ..... FPE=1 (SCRBRD=4)*/

lda

r0,DC_CTL_INIT_K(r31)

/* load DC_CTL.....*/

mtpr

r0,EV6__DC_CTL

/* .....ECC_EN=0, FHIT=0, SET_EN=3

 

 

/* (SCRBRD=6)*/

addq r31,r31,r0 addq r31,r31,r1 lda r0,0xff61(r31) zap r0,0xfc,r0

mtpr r31,EV6__DTB_TAG0 mtpr r31,EV6__DTB_TAG1 mtpr r0,EV6__DTB_PTE0 mtpr r0,EV6__DTB_PTE1

mtpr r31,EV6__SIRR lda r0,0x08FF(r31) sll r0,52,r0 itoft r0, f0

mt_fpcr f0

lda r0,0x2086(r31) ldah r0,0x0050(r0)

mtpr r0,EV6__I_CTL

/* nop*/ /* nop*/

/* R0 = ^xff61 (superpage) */

/* PTE protection for DTB write in next block*/

/* write DTB_TAG0 (SCRBRD=2,6)*/ /* write DTB_TAG1 (SCRBRD=1,5)*/ /* write DTB_PTE0 (SCRBRD=0,4)*/ /* write DTB_PTE1 (SCRBRD=3,7)*/

/* clear SIRR (SCRBRD=4)*/

/* load FPCR

*/

/*

initial FPCR value*/

/* nop

 

itoftr0,f0; value = 0x8FF0000000000000*/

/* nop

 

mt_fpcrf0,f0,f0; do the load*/

/* load I_CTL.....*/

/* .....TB_MB_EN=1, CALL_PAL_R23=1, SL_XMIT=1,

/* SBE=0, SDE=2, IC_EN=3*/

/* value = 0x0000000000502086 (SCRBRD=4)*/

mtpr

r31,EV6__CC

/*

clear CC (SCRBRD=5)*/

lda

r0,0x001F(r31)

/*

write-one-to-clear bits in HW_INT_CLR,

 

 

/* I_STAT and DC_STAT*/

sll

r0,28,r0

/* value = 0x00000001F0000000*/

mtpr

r0,EV6__HW_INT_CLR/* clear bits in HW_INT_CLR (SCRBRD=4)*/

mtpr r0,EV6__I_STAT

lda r0,0x001F(r31) mtpr r0,EV6__DC_STAT addq r31,r31,r0

mtpr r31,EV6__PCTR_CTL

bis r31,1,r0 bis r31,1,r0 mulq/v r31,r31,r0

/* clear bits in I_STAT /*(SCRBRD=4) creates a map-stall

/* under the above mtpr to SCRBRD=4*/ /* value = 0x000000000000001F*/

/* clear bits in DC_STAT (SCRBRD=6)*/ /* nop*/

/* 1st buffer fetch block for above map-stall /* and 1st clear PCTR_CTL (SCRBRD=4)*/

/* set up value for demon write*/ /* set up value for demon write*/ /* nop*/

D–6PALcode Restrictions and Guidelines

21264/EV68A Hardware Reference Manual

Page 302
Image 302
Compaq EV68A specifications 6PALcode Restrictions and Guidelines