Chapter03Rev17 - Chapter 3(Revision number 17 Processor...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
1 Chapter 3 (Revision number 17) Processor Implementation The previous chapter dealt with issues involved in deciding the instruction-set architecture of the processor. This chapter deals with the implementation of the processor once we have decided on an instruction set. The instruction-set is not a description of the implementation of the processor. It merely serves as a contract between hardware and software. For example, once the instruction-set is decided, a compiler writer can generate code for different high-level languages to execute on a processor that implements this contract. This naturally begs the question; can we have different implementations of the same instruction set? The answer is yes! As we will see in this chapter, there are a number of factors that go into deciding the implementation choice that one may make. 3.1 Architecture versus Implementation First of all, let us understand why this distinction between architecture and implementation is important. 1. Depending on cost/performance, several implementations of the same architecture may be possible and even necessary to meet market demand. For example, it may be necessary to have a high performance version of the processor for a server market (such as a web server); at the same time there may be a need for lower performance version of the same processor for an embedded application (such as a printer). This is why we see a family of processors adhering to a particular architecture description all of which may be released by a vendor around the same time frame (e.g. Intel Pentium series, IBM 360 series, DEC PDP 11 series, etc.) 2. Another important reason for decoupling architecture from implementation is to allow parallel development of system software and hardware. For example, validating system software such as compilers, debuggers, and operating systems to run on a particular architecture can be done even prior to an implementation of the architecture is available! This ensures that the time to market a computer system can be cut short drastically. 3. Customers of high-performance servers make a huge investment in software. For example, Oracle database is a huge and complex database system. Such software systems evolve more slowly compared to generations of processors. For example, Moore’s law predicts that processor speed doubles every 18 months. This means that a faster processor can hit the market every 18 months. You would have observed this phenomenon if you have been following the published speeds of processors appearing in the marker year after year! Clearly, software changes more slowly compared to hardware technology; therefore, it is important that legacy software runs on new releases of processors. This suggests that we want to maintain the contract (i.e. the
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
2 instruction-set) the same so that much of the software base (such as compilers and related tool sets, as well as fine-tuned applications) remain largely unchanged from one generation of processor to the next. Decoupling architecture from
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

Page1 / 39

Chapter03Rev17 - Chapter 3(Revision number 17 Processor...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online