PERL – A Register-Less Processor
A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy
by P. Suresh
to the Department of Computer Science & Engineering Indian Institute of Technology, Kanpur February, 2004 Certificate
Certified that the work contained in the thesis entitled “PERL – A Register-Less Processor”, by Mr.P. Suresh, has been carried out under my supervision and that this work has not been submitted elsewhere for a degree.
(Dr. Rajat Moona) Professor, Department of Computer Science & Engineering, Indian Institute of Technology, Kanpur.
February, 2004
ii Synopsis
Computer architecture designs are influenced historically by three factors: market (users), software and hardware methods, and technology. Advances in fabrication technology are the most dominant factor among them. The performance of a proces- sor is defined by a judicious blend of processor architecture, efficient compiler tech- nology, and effective VLSI implementation. The choices for each of these strongly depend on the technology available for the others. Significant gains in the perfor- mance of processors are made due to the ever-improving fabrication technology that made it possible to incorporate architectural novelties such as pipelining, multiple instruction issue, on-chip caches, registers, branch prediction, etc. To supplement these architectural novelties, suitable compiler techniques extract performance by instruction scheduling, code and data placement and other optimizations. The performance of a computer system is directly related to the time it takes to execute programs, usually known as execution time. The expression for execution time (T), is expressed as a product of the number of instructions executed (N), the average number of machine cycles needed to execute one instruction (Cycles Per Instruction or CPI), and the clock cycle time ( ), as given in equation 1.