INSTRUCTION SET REFERENCE
6-63
6
Action:
if (PC.em != supervisor)
generate_fault(TYPE.MISMATCH);
switch (src1[7:0]) {
case 0:
# Disable instruction cache.
disable_instruction_cache( );
break;
case 1:
# Enable instruction cache.
enable_instruction_cache( );
break;
case 2:
# Globally invalidate instruction cache.
# Includes locked lines also.
invalidate_instruction_cache( );
unlock_icache( );
break;
case 3:
# Load & Lock code into Instruction-Cache
# src_dst has number of contiguous blocks to lock.
# src2 has starting address of code to lock.
# On the i960 Jx, src2 is aligned to a quad word boundary
aligned_addr = src2 & 0xFFFFFFF0;
invalidate(I-cache); unlock(I-cache);
for (j = 0; j < src_dst; j++)
{
way = way_associated_with_block(j);
start = src2 + j*block_size;
end = start + block_size;
for (i = start; i < end; i=i+4)
{
set = set_associated_with(i);
word = word_associated_with(i);
Icache_line[set][way][word] =
memory[i];
update_tag_n_valid_bits(set,way,word)
lock_icache(set,way,word);
} } break;
case 4:
# Get instruction cache status into src_dst.
if (Icache_enabled) src_dst[0] = 1;
else src_dst[0] = 0;
# Atom is 4 bytes.
src_dst[7:4] = log2(bytes per atom);
# 4 atoms per line.
src_dst[11:8] = log2(atoms per line);
src_dst[15:12] = log2(number of sets);
src_dst[27:16] = number of ways-1; #in lines per set
# cache size = ([27:16]+1) << ([7:4] + [11:8] + [15:12])
break;
Содержание i960 Jx
Страница 1: ...Release Date December 1997 Order Number 272483 002 i960 Jx Microprocessor Developer s Manual ...
Страница 24: ......
Страница 25: ...1 INTRODUCTION ...
Страница 26: ......
Страница 35: ...2 DATA TYPES AND MEMORY ADDRESSING MODES ...
Страница 36: ......
Страница 46: ......
Страница 47: ...3 PROGRAMMING ENVIRONMENT ...
Страница 48: ......
Страница 73: ...4 CACHE AND ON CHIP DATA RAM ...
Страница 74: ......
Страница 85: ...5 INSTRUCTION SET OVERVIEW ...
Страница 86: ......
Страница 111: ...6 INSTRUCTION SET REFERENCE ...
Страница 112: ......
Страница 195: ...INSTRUCTION SET REFERENCE 6 83 6 Opcode mov 5CCH REG movl 5DCH REG movt 5ECH REG movq 5FCH REG See Also LOAD STORE lda ...
Страница 233: ...7 PROCEDURE CALLS ...
Страница 234: ......
Страница 256: ......
Страница 257: ...8 FAULTS ...
Страница 258: ......
Страница 291: ...9 TRACING AND DEBUGGING ...
Страница 292: ......
Страница 309: ...10 TIMERS ...
Страница 310: ......
Страница 324: ......
Страница 325: ...11 INTERRUPTS ...
Страница 326: ......
Страница 369: ...12 INITIALIZATION AND SYSTEM REQUIREMENTS ...
Страница 370: ......
Страница 412: ......
Страница 413: ...13 MEMORY CONFIGURATION ...
Страница 414: ......
Страница 429: ...14 EXTERNAL BUS ...
Страница 430: ......
Страница 468: ......
Страница 469: ...15 TEST FEATURES ...
Страница 470: ......
Страница 493: ...A CONSIDERATIONS FOR WRITING PORTABLE CODE ...
Страница 494: ......
Страница 502: ......
Страница 503: ...B OPCODES AND EXECUTION TIMES ...
Страница 504: ......
Страница 515: ...C MACHINE LEVEL INSTRUCTION FORMATS ...
Страница 516: ......
Страница 523: ...D REGISTER AND DATA STRUCTURES ...
Страница 524: ......
Страница 550: ......
Страница 551: ...GLOSSARY ...
Страница 552: ......
Страница 561: ...INDEX ...
Страница 562: ......
Страница 578: ......