To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
What is computable? There is a practical answer to that question that is defined by the processors and associated memory hierarchies that we have discussed. This state-of-the-art varies over time with the progress of computer architecture and computing technology (as covered in Chapter 3). We refer to this level of computing performance as a general purpose computer. There is also a theoretical answer to that question, which we will address in Section 6.4.
In this chapter we review the major dimensions of computer architecture covered, summarizing the high points and providing an overall perspective. Specifically, we highlight how each has shaped computers and computing. Computer architecture continues to advance, so we discuss its ongoing evolution, including the major technology and architecture trends. In many cases, the promise of computing is great, but as with parallelism and accelerators, increasingly its progress comes with compromises. We highlight the critical emerging constraints. Outlining these provides a strategic perspective on likely vectors of change that form a roadmap for the future.
Each computer can perform a set of instructions (basic operations) to move and transform data. To support software, which evolves at a different pace, instructions are a critical interface for compatibility. For the hardware, the instruction set is the specification that must be implemented correctly, and as fast and cheaply as possible. To illustrate these concepts and give a practical understanding, we describe the elements of an instruction set using an emerging open-source instruction set, the RISC-V. This concrete example illustrates how an instruction set supports basic software constructs, and the challenges of implementation.