20.02.2013 Views

Sable CPU Module Specification

Sable CPU Module Specification

Sable CPU Module Specification

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Copyright © 1993 Digital Equipment Corporation.<br />

The 21064 DTB supports a single address space number (ASN) with the PTE[ASM]<br />

bit. Each PTE entry in the DTB contains an address space match (ASM) bit. Writes<br />

to the DTBASM IPR invalidate all entries that do not have their ASM bit set. This<br />

provides a simple method of preserving entries that map operating system regions<br />

while invalidating all others.<br />

For load and store instructions, the effective 43-bit virtual address is presented to<br />

the DTBs. If the PTE of the supplied virtual address is cached in the DTB, the PFN<br />

and protection bits for the page that contains the address are used by the Abox to<br />

complete the address translation and access checks.<br />

The DTB is filled and maintained by PALcode. Note that the DTB can be filled in<br />

kernel mode by setting the HWE bit in the ICCSR IPR.<br />

3.3.18 Bus Interface Unit (BIU)<br />

The BIU controls the interface to the 21064 pin bus. The BIU responds to three<br />

classes of <strong>CPU</strong>-generated requests:<br />

• Dcache fills<br />

• Icache fills<br />

• Write buffer-sourced commands<br />

The BIU resolves simultaneous internal requests using a fixed priority scheme in<br />

which Dcache fill requests are given highest priority, followed by Icache fill requests.<br />

Write buffer requests have the lowest priority.<br />

The BIU contains logic to directly access an external cache to service internal cache<br />

fill requests and writes from the write buffer. The BIU services reads and writes<br />

that do not hit in the external cache with help from external logic.<br />

Internal data transfers between the <strong>CPU</strong> and the BIU are made through a 64-bit<br />

bidirectional bus. Since the internal cache fill block size is 32 bytes, cache fill operations<br />

result in four data transfers across this bus from the BIU to the appropriate<br />

cache. Also, because each write buffer entry is 32 bytes wide, write transactions may<br />

result in four data transfers from the write buffer to the BIU.<br />

3.3.19 Load Silos<br />

The Abox contains a memory reference pipeline that can accept a new load or store<br />

instruction every cycle until a Dcache fill is required. Since the Dcache lines are only<br />

allocated on load misses, the Abox can accept a new instruction every cycle until a<br />

load miss occurs. When a load miss occurs the Ibox stops issuing all instructions<br />

that use the load port of the register file or are otherwise handled by the Abox. This<br />

includes LDx, STx, HW_MTPR, HW_MFPR, FETCH, FETCH_M, RPCC, RS, RC,<br />

and MB. It also includes all memory format branch instructions, JMP, JSR, JSR_<br />

COROUTINE, and RET.<br />

However, a JSR with a destination of R31 may be issued.<br />

54 Functions Located on the DECchip 21064

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!