Hardware Reference
In-Depth Information
4
THE MICROARCHITECTURE LEVEL
Above the digital logic level is the microarchitecture level. Its job is to imple-
ment the ISA (Instruction Set Architecture) level above it, as illustrated in Fig. 1-2.
Its design depends on the ISA being implemented, as well as the cost and per-
formance goals of the computer. Many modern ISAs, particularly RISC designs,
have simple instructions that can usually be executed in a single clock cycle. More
complex ISAs, such as the Core i7 instruction set, may require many cycles to ex-
ecute a single instruction. Executing an instruction may require locating the oper-
ands in memory, reading them, and storing results back into memory. The
sequencing of operations within a single instruction often leads to a different ap-
proach to control than that for simple ISAs.
4.1 AN EXAMPLE MICROARCHITECTURE
Ideally, we would like to introduce this subject by explaining the general prin-
ciples of microarchitecture design. Unfortunately, there are no general principles;
every ISA is a special case. Consequently, we will discuss a detailed example in-
stead. For our example ISA, we have chosen a subset of the Java Virtual Machine.
This subset contains only integer instructions, so we have named it IJVM to
emphasize it deals only with integers.
We will start out by describing the microarchitecture on top of which we will
implement IJVM. IJVM has some complex instructions. Many such architectures
243
 
 
 
Search WWH ::




Custom Search