RISC CPU PROCESSOR Riscore MILITARY and COMMERCIAL TEMPERATURE RANGES

RISC CPU PROCESSOR Riscore MILITARY and COMMERCIAL TEMPERATURE RANGES

IDT79R3500 RISC CPU PROCESSOR® RISCore MILITARY AND COMMERCIAL TEMPERATURE RANGES RISC CPU PROCESSOR IDT79R3500 RISCore™ Integrated Device Technology, Inc. FEATURES: • Supports concurrent refill and execution of instructions. • Efficient Pipelining—The CPU’s 5-stage pipeline design • Partial word stores executed as read-modify-write. assists in obtaining an execution rate approaching one • 6 external interrupt inputs, 2 software interrupts, with instruction per cycle. Pipeline stalls and exceptions are single cycle latency to exception handler routine. handled precisely and efficiently. • Flexible multiprocessing support on chip with no impact on • On-Chip Cache Control—The IDT79R3500 provides a uniprocessor designs. high-bandwidth memory interface that handles separate • A single chip integrating the R3000 CPU and R3010 FPA external Instruction and Data Caches ranging in size from execution units, using the R3000A pinout. 4 to 256kBs each. Both caches are accessed during a • Software compatible with R3000, R2000 CPUs and R3010, single CPU cycle. All cache control is on-chip. R2010 FPAs. • On-Chip Memory Management Unit—A fully-associative, • TLB disable feature allowing a simple memory model for 64-entry Translation Lookaside Buffer (TLB) provides fast Embedded Applications. address translation for virtual-to-physical memory map- • Programmable Tag bus width allowing reduced cost cache. ping of the 4GB virtual address space. • Hardware Support of Single- and Double-Precision Float- • Dynamically able to switch between Big- and Little- Endian ing Point Operations that include Add, Subtract, Multiply, byte ordering conventions. Divide, Comparisons, and Conversions. • Optimizing Compilers are available for C, FORTRAN, • Sustained Floating Point Performance of 11 MFlops single Pascal, COBOL, Ada, PL/1 and C++. precision LINPACK and 7.3MFLOPS double precision • 20 through 40MHz clock rates yield up to 32VUPS sus- • Supports Full Conformance With IEEE 754-1985 Floating tained throughput. Point Specification • Supports independent multi-word block refill of both the • 64-bit FP operation using sixteen 64-bit data registers instruction and data caches with variable block sizes. • Military product compliant to MIL-STD 833, class B IDT79R3500 PROCESSOR CONTROL Master Pipeline/Bus Control CPO FPA (System Control Coprocessor) CPU FPA Registers Exception/Control General Registers Exponent Add Unit Registers (32x32) FPA Divide Unit Memory ALU Management Unit Registers Local Shifter FPA Multiply Unit Control Logic Integer Translation Multiplier/Divider Lookaside Buffer Address Adder (64 entries) PC Increment/Mux Virtual Page Number/ Virtual Address Data (32+4) TAG (20+4) ADDRESS (18) The IDT logo is a registered trademark and RISCore, CEMOS are trademarks of Integrated Device Technology, Inc. 2871 drw 01 MILITARY AND COMMERCIAL TEMPERATURE RANGES OCTOBER 1992 © 1992 Integrated Device Technology, Inc. 5.3 DSC-9054/3 IDT79R3500 RISC CPU PROCESSOR RISCore MILITARY AND COMMERCIAL TEMPERATURE RANGES DESCRIPTION: FPA REGISTERS The IDT79R3500 RISC Microprocessor consists of three The IDT79R3010A FPA provides 32 general purpose 32- tightly-coupled processors integrated on a single chip. The bit registers, a Control/Status register, and a Revision Identi- first processor is a full 32-bit CPU based on RISC (Reduced fication register. Instruction Set Computer) principles to achieve a new stan- Floating-point coprocessor operations reference three types dard of microprocessor performance. The second processor of registers: is a system control coprocessor, called CP0, containing a • Floating-Point Control Registers (FCR) fully-associative 64-entry TLB (Translation Lookaside Buffer), • Floating-Point General Registers (FGR) MMU (Memory Management Unit) and control registers, sup- • Floating-Point Registers (FPR) porting a 4GB virtual memory subsystem, and a Harvard Architecture Cache Controller achieving a bandwidth of 320MBs/second using industry standard static RAMs. The General Purpose Registers third processor is the Floating Point Accelerator which per- forms arithmetic operations on values in floating-point repre- 31 0 Multiply/Divide Registers sentations. This processor fully conforms to the requirements r0 31 0 of ANSI/IEEE Standard 754-1985, “IEEE Standard for Binary r1 HI Floating-Point Arithmetic.” In addition, the architecture fully r2 supports the standard’s recommendations. 31 0 The programmer model of this device will be the same as LO the programmer model of a system which uses a discrete IDT79R3000 with the IDT79R3010: 32 integer registers, 16 floating point registers; co-processor 0 registers; floating point Program Counter r29 status and control register; RISC integer ALU; Integer Multiply 31 0 and Divide ALU; Floating Point Add/Subtract, Multiply, and r30 PC Divide ALUs. The device pipeline will be the same as for the r31 IDT79R3000, as will the co-processor 0 functionality. No new instructions have been introduced. Pin compatibility extends 2871 drw 02 to AC and DC characteristics, software execution and initial- Figure 2. IDT79R3500 CPU Registers ization mode vector selection. This data sheet provides an overview of the features and Floating-Point General Registers (FGR) architecture of the IDT79R3500 CPU, Revision 3.0. A more There are 32 Floating-Point General Registers (FGR) on detailed description of the operation of the device is incorpo- the FPA. They represent directly-addressable 32-bit regis- rated in the R3500 Family Hardware User Manual, and a more ters, and can be accessed by Load, Store, or Move Operations. detailed architectural overview is provided in the MIPS RISC Architecture book, both available from IDT. Documentation Floating-Point Registers (FPR) providing details of the software and development environ- The 32 FGRs described in the preceding paragraph are ments supporting this processor are also available from IDT. also used to form sixteen 64-bit Floating-Point Registers (FPR). Pairs of general registers (FGRs), for example FGR0 IDT79R3500 CPU Registers and FGR1 (Figure 3) are physically combined to form a single The IDT79R3500 CPU provides 32 general purpose 32- 64-bit FPR. The FPRs hold a value in either single- or double- bit registers, a 32-bit Program Counter, and two 32-bit regis- precision floating-point format. Double-precision format FPRs ters that hold the results of integer multiply and divide opera- are formed from two adjacent FGRs. tions. Only two of the 32 general registers have a special purpose: register r0 is hardwired to the value “0”, which is a Floating-Point Control Registers (FCR) useful constant, and register r31 is used as the link register in There are 2 Floating-Point Control Registers (FCR) on the jump-and-link instructions (return address for subroutine calls). FPA. They can be accessed only by Move operations and The CPU registers are shown in Figure 2. Note that there include the following: is no Program Status Word (PSW) register shown in this • Control/Status register, used to control and monitor ex- figure: the functions traditionally provided by a PSW register ceptions, operating modes, and rounding modes; are instead provided in the Status and Cause registers incor- • Revision register, containing revision information about porated within the System Control Coprocessor (CP0). the FPA. IDT79R3500 RISC CPU PROCESSOR RISCore MILITARY AND COMMERCIAL TEMPERATURE RANGES General Purpose Registers (FGR/FPR) 63 32 31 0 FGR1 FGR0 Control/Status Register FGR3 FGR2 31 0 FGR5 FGR4 Exceptions/Enables/Modes Implementation/Revision 31Register 0 FGR27 FGR26 FGR29 FGR28 FGR31 FGR30 2871 drw 03 Figure 3. FPA Registers Instruction Set Overview The IDT79R3500 instruction set can be divided into the All IDT79R3500 instructions are 32 bits long, and there following groups: are only three instruction formats. This approach simplifies • Load/Store instructions move data between memory and instruction decoding, thus minimizing instruction execution general registers. They are all I-type instructions, since the time. The IDT79R3500 processor initiates a new instruction only addressing mode supported is base register plus 16- on every run cycle, and is able to complete an instruction on bit, signed immediate offset. almost every clock cycle. The only exceptions are the Load The Load instruction has a single cycle of latency, which instructions and Branch instructions, which each have a single means that the data being loaded is not available to the cycle of latency associated with their execution. Note, how- instruction immediately after the load instruction. The ever, that in the majority of cases the compilers are able to fill compiler will fill this delay slot with either an instruction these latency cycles with useful instructions which do not which is not dependent on the loaded data, or with a NOP require the result of the previous instruction. This effectively instruction. There is no latency associated with the store eliminates these latency effects. instruction. The actual instruction set of the CPU was determined after Loads and Stores can be performed on byte, half-word, extensive simulations to determine which instructions should word, or unaligned word data (32-bit data not aligned on a be implemented in hardware, and which operations are best modulo-4 address). The CPU cache is constructed as a synthesized in software from other basic instructions. This write-through cache. methodology resulted in the IDT79R3500 having the highest • Computational instructions perform arithmetic,

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    16 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us