Notes
79RC32438 User Reference Manual
2 - 1
November 4, 2002
Chapter 2
MIPS32 4Kc Processor Core
Introduction
The MIPS32 4Kc processor core from MIPS
Technologies is a high performance, low power, 32 bit
MIPS RISC core intended for custom system-on-silicon applications. The 4Kc processor incorporates
aspects of both the MIPS Technologies R3000
and R4000
processors. This chapter provides basic infor-
mation on the architecture and operation of the 4Kc processor core as it applies to the RC32438. Additional
information about the 4Kc core can be obtained by contacting MIPS Technologies or visiting their 4Kc web
page at: http://www.mips.com/products/s2p4.html.
Functional Overview
The 4Kc core contains a fully-associative translation lookaside buffer (TLB) based MMU (Memory
Management Unit) and a pipelined MDU (Multiply/Divide Unit). The instruction and data caches are both 16
Kbytes in size and organized as 4-way set associative. On a cache miss, loads are blocked only until the
first critical word becomes available. The pipeline resumes execution while the remaining words are being
written to the cache. Both caches are virtually indexed and physically tagged. Virtual indexing allows the
cache to be indexed in the same clock in which the address is generated rather than waiting for the virtual-
to-physical address translation in the Memory Management Unit (MMU).
The 4Kc core executes the MIPS32 instruction set architecture (ISA). The MIPS32 ISA contains all
MIPS II instructions as well as special multiply-accumulate, conditional move, prefetch, wait, and zero/one
detect instructions. The R4000-style memory management unit of the 4Kc core contains a 3-entry instruc-
tion TLB (ITLB), a 3-entry data TLB (DTLB), and a 16 dual-entry joint TLB (JTLB) with variable page sizes.
The 4Kc MDU supports a maximum issue rate of one 32x16 multiply (MUL/MULT/MULTU), multiply-add
(MADD/MADDU), or multiply-subtract (MSUB/MSUBU) operation per clock, or one 32x32 MUL, MADD, or
MSUB every other clock. The basic Enhanced JTAG (EJTAG) features provide CPU run control with stop,
single stepping and re-start, and with software breakpoints through the SDBBP instruction. In addition,
optional instruction and data virtual address hardware breakpoints, and optional connection to an external
EJTAG probe through the Test Access Port (TAP) may be included.
Features
32-bit Address and Data Paths
MIPS32 compatible instruction set
–
All MIPSII instructions
–
Multiply-add and multiply-subtract instructions (MADD, MADDU, MSUB, MSUBU)
–
Targeted multiply instruction (MUL)
–
Zero and one detect instructions (CLZ, CLO)
–
Wait instruction (WAIT)
–
Conditional move instructions (MOVZ, MOVN)
–
Prefetch instruction (PREF)