Please note: In order to keep Hive up to date and provide users with the best features, we are no longer able to fully support Internet Explorer. The site is still available to you, however some sections of the site may appear broken. We would encourage you to move to a more modern browser like Firefox, Edge or Chrome in order to experience the site fully.

Processor Microarchitecture : An Implementation Perspective, PDF eBook

Processor Microarchitecture : An Implementation Perspective PDF

Part of the Synthesis Lectures on Computer Architecture series

PDF

Please note: eBooks can only be purchased with a UK issued credit card and all our eBooks (ePub and PDF) are DRM protected.

Description

This lecture presents a study of the microarchitecture of contemporary microprocessors.

The focus is on implementation aspects, with discussions on their implications in terms of performance, power, and cost of state-of-the-art designs.

The lecture starts with an overview of the different types of microprocessors and a review of the microarchitecture of cache memories.

Then, it describes the implementation of the fetch unit, where special emphasis is made on the required support for branch prediction.

The next section is devoted to instruction decode with special focus on the particular support to decoding x86 instructions.

The next chapter presents the allocation stage and pays special attention to the implementation of register renaming.

Afterward, the issue stage is studied. Here, the logic to implement out-of-order issue for both memory and non-memory instructions is thoroughly described.

The following chapter focuses on the instruction execution and describes the different functional units that can be found in contemporary microprocessors, as well as the implementation of the bypass network, which has an important impact on the performance.

Finally, the lecture concludes with the commit stage, where it describes how the architectural state is updated and recovered in case of exceptions or misspeculations.

This lecture is intended for an advanced course on computer architecture, suitable for graduate students or senior undergrads who want to specialize in the area of computer architecture.

It is also intended for practitioners in the industry in the area of microprocessor design.

The book assumes that the reader is familiar with the main concepts regarding pipelining, out-of-order execution, cache memories, and virtual memory.

Table of Contents: Introduction / Caches / The Instruction Fetch Unit / Decode / Allocation / The Issue Stage / Execute / The Commit Stage / References / Author Biographies

Information

Other Formats

Information

Also in the Synthesis Lectures on Computer Architecture series