Colorado 3 RT6226N Hypersparc™ Dual CPU Module/Power Module
Total Page:16
File Type:pdf, Size:1020Kb
830-0058-00 Rev A 11/15/96 Colorado 3 RT6226N hyperSPARC DualĆCPU Module/Power Module Features D Based on ROSS’ fourth-generation — Hardware support for symmetric, — Zero-wait-state, 512-Kbyte or hyperSPARC processor shared-memory multiprocessing 1-Mbyte 2nd-level cache D Each module consists of two complete — Level 2 MBus support for cache — Demand-paged virtual memory SPARC CPUs coherency management D Each processor includes D SPARC compliant D Module design — RT620C Central Processing Unit — SPARC Instruction Set Architec- — CPU Module fits in MBus-standard (CPU) ture (ISA) Version 8 compliant form factor: 3.30” (8.34 cm) x 5.78” — RT626 Cache Controller, Memory — Conforms to SPARC Reference (14.67 cm) Management, and Tag Unit MMU Architecture — Power Module attaches to the rear (CMTU) — Conforms to SPARC Level 2 MBus of the CPU module through a stan- — Four (512-Kbyte) or eight Module Specification (Revision 1.2) dard 25-pin D shell connector (1-Mbyte) RT628 Cache Data Units D Dual-clock architecture — Provides CPU upgrade path at (CDUs) module level Ċ CPU scaleable up to 142 MHz Ċ IntraĆModule Bus incorporates low — Advanced packaging technology voltage logic to reduce power and— MBus scaleable up to 66 MHz for a compact design D increase speed Each hyperSPARC processor features D High performance * — Dual-level caches — Superscalar SPARC CPU with inte- — 174 SPECint92 (per CPU) D Full multiprocessing implementation grated floating point unit and 8-Kbyte instruction cache — 212 SPECfp92 (per CPU) * in a 50MHz MBus system CPU Module PLL CPU0 RT620C CPU1 RT620C Clock CPU CPU Generator IMCLK IMCLK +5V IMA[31:0] IMA[31:0] Power Module IMD[63:0] IMD[63:0] RT626 RT626 CMTU RT628 RT628 CMTU RT628 RT628 CDU CDU CDU CDU MBus (Level 2) Figure 1. Logic Block Diagram Selection Guide Part Number: RT6226N* Ć142/1024 CPU Operating Frequency (MHz) 142 Typical Power Consumption (w)** 74 Second-level Cache Size (per CPU) 1M SPECint92 / SPECfp92 174 / 212 SPECrateint92 / SPECratefp92 7684 / 9163 (dual processor) SPECrateint92 / SPECratefp92 (quad processor) *See Appendix C for hyperSPARC ordering information ** Commercial • ROSS Technology, Inc. • 5316 Hwy. 290 West • Austin, Texas 78735 • TEL (512) 436-2000 •FAX (512) 892-3036 1 830-0058-00 Rev A 11/15/96 Colorado 3 RT6226N Functional Description user’s time to market, but provides a mechanism for upgrad- The RT6226N hyperSPARC Module consists of a dual CPU ing in the field. module (RT6226N1) and a power module (RT6226N2). The Component Overview CPU module is a complete dual-SPARC CPU, including on- board primary and secondary cache memories. It is packaged Superscalar SPARC Processor (RT620C) as a compact PCB and interfaces to the remainder of the sys- The RT620C Central Processing Unit is the heart of ROSS’ tem via a SPARC-standard MBus connector. Each of the two fourth-generation of microprocessor. The RT620C CPU ar- CPUs on the RT6226N1 consists of a high-speed superscalar, chitecture employs two advanced concepts for increasing highly pipelined processor with dual integer ALUs and an on- computer system performance: superscalability and superpi- chip floating-point unit (RT620C), a Cache Controller, pelining. Memory Management, and Tag Unit (RT626), and four The RT620C is a high performance full-custom CMOS im- (512-Kbyte) or eight (1-Mbyte) RT628 Cache Data Units. plementation of integrated SPARC integer and floating-point The RT6226N1 fits within the clearance envelope for MBus logic, with an on-chip cache for instructions. modules per the SPARC MBus Specification. The RT6226N2 power module provides the low voltage needed by the CPU Advanced architecture and manufacturing technologies give the RT620C ultra high performance without requiring soft- module from the +5V MBus source. It interfaces to the CPU module through a standard DB–25 connector. It is housed in ware recompilation. Figure 2 is a logic block diagram of the an enclosure which mounts remotely from the CPU module. RT620C. The RT6226N1 interfaces to the rest of the system via the IDP. The Integer Data Path comprises several units. Two SPARC MBus and conforms to the SPARC Reference MMU. independent Arithmetic and Logic Units (ALUs) handle inte- ger arithmetic, logical, and shift instructions. The Load/Store This standardization allows the RT6226N1 to be interchange- able with other SPARC MBus-based CPU modules without Unit (LSU) handles instructions that load and store data be- tween memory and registers which includes the loading and having to modify any portion of the memory system or I/O. This CPU “building block” strategy not only decreases the storing of both integer and floating-point data. The Special IDP Special Registers Integer Registers (IREGS) Floating Point Registers (FREGS) Input Selection Input Selection Input Selection Input Selection ALU ALULDST FPADD FPMUL Align Check Align Check FPDP Floating Program Global Decoder Floating Counter Point Point Dependency Checker Queue Unit Schedule and Control Scheduler Load Store Align Align FPSCHED Exception Logic ISCHED Data Address Instruction Address Instruction Instruction Instruction Cache Intramodule Fetch Bus Controller Interface IFETCH ICACHE IBIU Control Address Out Control Data/ In Instruction Figure 2. RT620C CPU Logic Block Diagram 2 830-0058-00 Rev A 11/15/96 Colorado 3 RT6226N Register Unit (SRU) handles instructions that read and write Cache Control, Memory Management, and Tag Unit the SPARC Special Registers (SREGS). The Integer Register (RT626) File (IREGS) is also contained in the IDP. The CMTU (RT626) is a combined Cache Controller and FPDP. The Floating-Point Data Path also comprises several Memory Management Unit optimized for multiprocessing units. These are the Floating-Point Queue (FPQ), the Float- systems. The CMTU is a high-speed CMOS implementation ing-Point Arithmetic Unit (FAU), The Floating-Point Multi- of the SPARC Reference MMU, combined with cache, a plier Unit (FMU), the Floating-Point Register File (FREGS), memory controller, and on-chip physical cache tag memory. and the Floating-Point Status Register (FSR). These floating- The CMTU supports the SPARC MBus Level 2 protocol for point units handle all SPARC floating-point instructions. multiprocessing systems. Figure 3 depicts the CMTU block diagram. ISCHED. The Integer Scheduler performs key control func- tions. It provides global instruction decodes to identify which The CMTU directly connects to the RT620C Central Proces- execution unit resources are required, and determines wheth- sing Unit and RT628 Cache Data Units without any external er sequential or simultaneous execution is possible. circuitry. The RT626 CMTU uses four or eight RT628 CDUs to realize 512-Kbytes or 1-Mbyte, respectively, of zero-wait- The ISCHED also determines whether data forwarding can state, direct-mapped virtual cache memory. be performed and whether instruction dispatches (also called “launches”) need to be delayed due to data dependencies. MMU. The MMU portion of the CMTU provides translation The ISCHED initiates instruction launch and identifies and from a 32-bit virtual address (4 gigabytes) to 36-bit physical controls interrupt and trap handling. address (64 gigabytes), as provided in the SPARC reference MMU specification. Virtual addresses are further extended FPSCHED. The Floating-Point Instruction Scheduler per- with the use of a context register, which is used to identify up forms key control functions for the floating-point unit. When to 4096 contexts or tasks. The TLB entries contain context the Integer Unit detects floating-point instructions in the numbers to identify tasks or processes. This minimizes un- decode stage, it offloads these instructions to the floating- necessary TLB entry replacement during task switching. point functional units and continues processing. Therefore, functional blocks exist that perform necessary decode, sched- The CMTU performs its address translation task by compar- uling, and control for the floating-point operations. ing a virtual address supplied by the RT620C through the In- tra-Module Bus to the address tags in the TLB entries. If a The FPSCHED performs floating-point instruction decoding, “hit” occurs, the physical address stored in the TLB is used to resolves floating-point data dependency and data-forwarding translate the virtual-to-physical address. If the virtual address conditions, and provides the ISCHED with floating-point does not match any valid TLB entry, a “miss” occurs. This execution status. Delayed instructions are stored temporarily causes a table walk to be performed by the MMU. The table in the Floating-Point Instruction Queue (FPQ). Instructions walk is a search performed by the MMU through the address are launched from the FPQ as data dependencies are translation tables stored in main memory. Upon finding the resolved. PTE, the MMU translates the address and selects a TLB entry IFETCH. The Instruction Fetch Unit consists of two major for replacement. functional blocks referred to as the Program Counter Unit Cache Controller The CMTU’s cache controller supports (PCU) and the Instruction Fetch Controller (IFETCHC). two modes of caching: write-through with no write allocate The PCU calculates the address of the next instruction to be and copy-back with write allocate. The cache is “virtually in- fetched. It handles instructions that cause program control dexed” and “physically tagged.” transfer, such as CALL and BRANCH. This unit handles both In 1-Mbyte secondary cache versions, the cache is organized integer and floating-point branch instructions. as 16384 lines with two sub-blocks, each of which is 32 bytes. The IFETCHC fetches two instructions at a time, and in each Intra-Module Bus address bits IMA[19:6] select the cache clock cycle, the CPU attempts to launch both at once. line, IMA[5] selects the sub-block, and IMA[4:3] select the ICACHE. The on-chip instruction cache is organized as a 64-bit word of the cache line. In 512-Kbyte secondary cache two way set associative buffer. The ICACHE stores 8 Kbytes versions, only one sub-block is populated, and IMA[18:5] of instructions.