sds - CS61c Introduction to Synchronous Digital Systems J...

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

View Full Document Right Arrow Icon
CS61c: Introduction to Synchronous Digital Systems J. Wawrzynek October 8, 2007 Reading: 1 Instruction Set Architecture Among the topics we studied thus far this semester, was the following big idea. Our high-level language programs (C, or C++ for instance) are converted to a list of assembly language instructions which in term are converted to a set of machine instructions. C Language constructs/data structures assembly language list of CPU instructions (with memory references) machine language list of binary coded machine instructions ? How are these instructions carried out? What happens to the machine instructions? One thing we can do is to read them into a simulator (such as MARS or SPIM). However, most of the time, we are interested in actually running the instruction on real hardware. How does the hardware execute our instructions? That is the topic of the remainder of the semester. The set of opcodes that a processor can carry out, along with a description of the processor “state” (all the user visible registers), is called the Instruction Set Architecture (ISA) . Software Instruction Set Architecture Hardware It is an abstraction of the hardware for the benefit of the software. More precisely it is a 2-way contract between the hardware and the software. 1
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 Wawrzynek 2007 c ± UCB The hardware promises that it will faithfully implement the ISA and the software promises to only try to do things supported by the ISA. Software designers can write operating systems, compilers, and applications without fear that their software will not work on new versions of the hardware. Also, the software really doesn’t know (nor should care) about how the hardware implements the ISA. Therefore the hardware designer is free to design and optimize the implementation of the processor as he/she sees fit. It can be tailored to the latest technology, or to some particular market need (a particular price or performance point for instance), as long as the design meets the contract by faithfully implementing the ISA. As new, more advanced, implementations can come along, all our old programs and operating systems will still function. The ISA is an abstraction and doesn’t specify in detail how the instruction execution should be implemented. Consequently their are many different ways to design the processor. We will study a few of the basic concepts behind processor design, leaving many of the performance enhancements for CS152. 2 The Physical Hardware We will start by looking at a photograph of a microprocessor. This one is from a few years ago, but still is representative of today’s processors.
Background image of page 2
CS61c Lecture Notes 3 This microprocessor happens to be a powerPC (similar to what user to be inside Apple computers). However, most processors, even ones with different instructions set, for instance the MIPS, look very
Background image of page 3

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

View Full Document Right Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

Page1 / 9

sds - CS61c Introduction to Synchronous Digital Systems J...

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

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