770 likes | 909 Views
CS147. Lecture 11 Sequential Logic,ISA, ALU. Prof. Sin-Min Lee Department of Computer Science. Registers. Two independent flip-flops with clear and preset. Registers. Missing Q , preset, clocks ganged Inversion bubbles cancelled, so loaded with rising Can make 8- bit register with this.
E N D
CS147 Lecture 11 Sequential Logic,ISA, ALU Prof. Sin-Min Lee Department of Computer Science
Registers • Two independent flip-flops with clear and preset
Registers • Missing Q, preset, clocks ganged • Inversion bubbles cancelled, so loaded with rising • Can make 8- bit register with this
Review: CPU Building Blocks • Registers (IR, PC, ACC) • Control Unit(CU) • Arithmetic Logic Unit (ALU)
The Simplest Computer Building Blocks Instruction Register (IR) Program Counter (PC) Control Unit (CU) ALU Status Register (FLAG) Accumulator (ACC) CPU RAM
What’s ALU? ALU stands for: Arithmetic Logic Unit ALU is a digital circuit that performs Arithmetic (Add, Sub, . . .) and Logical (AND, OR, NOT) operations. John Von Neumann proposed the ALU in 1945 when he was working on EDVAC.
Typical Schematic Symbol of an ALU • A and B: the inputs to the ALU(aka operands) • R: Output or Result • F: Code or Instruction from the Control Unit (aka as op-code) • D: Output status; it indicates cases such as: • carry-in • carry-out, • overflow, • division-by-zero • And . . .
What is Computer Architecture? • Computer Architecture is the design of the computer at the hardware/software interface. • Computer Architecture = Instruction Set Architecture + Machine Organization Computer Architecture Instruction Set Design Machine Organization at the above interface. of Hardware Components. Compiler/System ViewLogic Designer’s View
Instruction Set Architecture • Instruction set architecture has the attributes of a computing system as seen by the assembly language programmer or compiler. This includes • Instruction Set (what operations can be performed?) • Instruction Format (how are instructions specified?) • Data storage (where is data located?) • Addressing Modes (how is data accessed?) • Exceptional Conditions (what happens if something goes wrong?) • A good understanding of computerarchitecture is important for compiler writers, operating system designers, and general computer programmers.
Instruction Set Architecture • An abstract interface between the hardware and the lowest level software of a machine that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on.
Key considerations in “Computer Architecture” Application Software Operating System Compiler Firmware Instruction Set Architecture Instr. Set Proc. I/O system Datapath & Control Hardware Digital Design Circuit Design Layout • Coordination of many levels of abstraction • Under a rapidly changing set of forces • Design, Measurement, and Evaluation
Instruction Set Architecture: An Abstraction • A very important abstraction • interface between hardware and low-level software • standardizes instructions, machine language bit patterns, etc. • advantage: different implementations of the same architecture • disadvantage: sometimes prevents using new innovations • Modern instruction set architectures:80x86/Pentium/K6, PowerPC, DEC Alpha, MIPS, SPARC, HP