CA Classes-166-170
CA Classes-166-170
One of the unusual characteristic from the desktop point of view is that the
programmer is allowed to state five autonomous operations that can be
issued simultaneously. In case the five autonomous instructions are not
available (which means that others are dependent), then no operations
(NOPs) are positioned in the remaining slots. We call this method of
instruction coding a VLIW (Very Long Instruction Word) method.
It is known that as Trimedia TM32 CPU comprise longer instruction words
and frequently includes NOPs, the instructions of Trimedia are compressed
in the memory. Also the instructions are decoded to the full size when they
are loaded into cache. In Figure 7.8, we have shown the TM32 CPU
instruction mix for EEMBC bench-marks.
Figure 7.8: TM32 CPU Instruction Mix for EEMBC Customer Benchmark
7.9 Summary
Implementation of branching is done by using a branch instruction. The
address of target instruction is included in the branch instruction
The branch penalty can be reduced to one cycle. It can be efficiently
reduced further by means of Delayed branch execution.
Effective processing of branches has become a cornerstone of
increased performance in ILP-processors.
Branch prediction is a method which is basically utilised for handling the
problems related to branch. Different strategies of branch prediction
include:
Fixed branch prediction
Static branch prediction
Dynamic branch prediction
The new architecture, generated mutually by means of Hewlett Packard
as well as Intel , is known as IA-64
IA-64 model is also known as Explicitly Parallel Instruction Computing
(EPIC).
7.10 Glossary
Branch penalty: Wasteful work done by pipelines for a considerable
time.
Condition code registers: A condition code register is used for
attaining communication among the instructions for condition as well as
branching.
EPIC: Explicitly Parallel Instruction Computing.
ILP: Instruction level parallelism.
Merced: A dual mode processor, which is capable of executing the
programs of both IA-32 as well as IA-64.
VLIW: Very Long Instruction Word.
7.12 Answers
Self Assessment Questions
1. Jump instruction
2. False
3. Branch
4. Branch penalty
5. SPARC, MIPS
6. No operation (NOP)
7. Layout, micro-architectural implementation
8. a) Detecting branches
b) Handling of unresolved conditional branches during instruction
decoding.
c) Accessing the branch target path
9. Never taken, always taken
10. Instruction opcode
11. Addresses, registers
12. Explicitly Parallel Instruction Computing (EPIC)
13. "Classic" VLIW processor.
14. Set top boxes and advanced televisions.
Terminal Questions
1. This type of branch is considered as the simplest one. It is used to
transfer control to a particular target. In conditional branches, if a
particular condition meets its requirements, then only the jump is
conducted. Refer Section 7.2.
2. Branch Handling is executed when the flow of control is altered. For
example branch requires special handling in pipelined processors.
Refer Section 7.3.
3. Delayed branching is the reduction of branch penalty to one cycle.
Refer Section 7.4.
4. Branch processing receives branch instructions and resolves the
conditional branches as early as possible. Refer Section 7.5.
5. Branch prediction predicts the outcome of branch. Refer Section 7.6.
6. a) In Fixed Branch Prediction, prediction is fixed. Refer Section 7.6.1.
b) The new architecture, generated mutually by means of Hewlett
Packard as well as Intel , is known as IA-64. Refer section 7.7.1.
References:
Hwang, K. Advanced Computer Architecture. McGraw-Hill.
Godse, D. A. & Godse, A. P. Computer Organization. Technical
Publications.
Hennessy, John L., Patterson, David A. & Goldberg David. Computer
Architecture: A Quantitative Approach, Morgan Kaufmann.
Sima, Dezsö, Fountain, Terry J. & Kacsuk, Péter, Advanced computer
architectures - a design space approach. Addison-Wesley-Longman.
E-references:
http://www.scribd.com/doc/46312470/37/Branch-processing,
http://www.scribd.com/doc/60519412/15/Another-View-The-Trimedia-
TM32-CPU-151.