csc 3650 introduction to computer architecture

33
CSC 3650 Introduction to Computer Architecture Time: 3:30 to 6:30 Meeting Days: W Location: Oxendine 1237B Textbook: Essentials of Computer Architecture, Author: Douglas E. Comer, 2005, Pearson Prentice Hall Spring 2011 Register Transfer Languages Dr. Chuck Lillie

Upload: jaquelyn-porter

Post on 31-Dec-2015

18 views

Category:

Documents


0 download

DESCRIPTION

CSC 3650 Introduction to Computer Architecture. Spring 2011. Time: 3:30 to 6:30. Meeting Days: W. Location: Oxendine 1237B. Textbook : Essentials of Computer Architecture , Author: Douglas E. Comer, 2005, Pearson Prentice Hall. Register Transfer Languages. Dr. Chuck Lillie. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CSC 3650 Introduction to Computer Architecture

CSC 3650 Introduction to Computer Architecture

Time: 3:30 to 6:30 Meeting Days: W Location: Oxendine 1237B

Textbook: Essentials of Computer Architecture, Author: Douglas E. Comer, 2005, Pearson Prentice Hall

Spring 2011

Register Transfer Languages

Dr. Chuck Lillie

Page 2: CSC 3650 Introduction to Computer Architecture

Micro-operations

• Micro-operations are the basis for most sequential digital systems– Movement of data from one register, memory location,

or I/O device to another

– Modify stored values

– Perform arithmetic or logical functions

– Modify a stored value

• By performing a sequence of micro-operations to move and modify data, a sequential digital system performs a larger task

Page 3: CSC 3650 Introduction to Computer Architecture

Hardware Description Language

• Used to design a system– More efficient than using digital logic

– Used to verify that the logic of the design is correct

– Can be translated into the final hardware design of the system

– The design looks something like a computer program written in a high level language

– Can be input into a circuit analysis and design (CAD) program to simulate the behavior of the circuit under all conditions

Page 4: CSC 3650 Introduction to Computer Architecture

Implementation of the micro operation X Y

Direct Connection

Bus Connection

X Y does not indicate the condition under which transfer occurs

X

Page 5: CSC 3650 Introduction to Computer Architecture

Implementation of the data transfer α: X Y

Direct Path

Using a Bus

IF α THEN X Y is written in RTL as α: X Y

X

Page 6: CSC 3650 Introduction to Computer Architecture

Implementation of Data Transfer α: X Y, Y Z

To improve system performance do two or more transfers simultaneously

Single bus cannot be used because a bus can hold only one value at a time.

Page 7: CSC 3650 Introduction to Computer Architecture

Implementation of Data Transfer α: X Y, Z Y

Can write to more than one place at a time, but cannot send to the same location for more than one placeα: X Y, Z Y is OKα: X Y, X Z is not OK

Page 8: CSC 3650 Introduction to Computer Architecture

Three implementations of data transfers α: X 0 and β: X 1

Using a multiplexer to select data input

Using β as the data input

Using the CLR signal

Move a constant value into a register

What happens if α and β are both 1?1. Need hardware to ensure that will not happen or2. Make sure they have mutual exclusion using one of the following threeα β’: X 0 α : X 0 α β’: X 0β : X 1 α’ β :X 1 α’ β : X 1

Page 9: CSC 3650 Introduction to Computer Architecture

Implementation of four-bit Data Transfer α: X Y

Direct Path

Using a Bus

X

Page 10: CSC 3650 Introduction to Computer Architecture

Accessing single bits or subset of bits of multi-bit register

• α: X(3-1) Y(2-0)

• β: X3 X2

: X(3-0) X(2-0),X3 or X(2-0,3)

Page 11: CSC 3650 Introduction to Computer Architecture

Arithmetic and logical micro-operations

Page 12: CSC 3650 Introduction to Computer Architecture

Shift micro-operations

Page 13: CSC 3650 Introduction to Computer Architecture

Transferring data between memory and registers

• To transfer between register AC and memory, first move address into address register and then perform transfer– AR 55– M[AR] AC or AC M[AR]

• If decide AR is always the address register– M AC and AC M can be used without

referring to AR

Page 14: CSC 3650 Introduction to Computer Architecture

D flip-flop

Without clear input With clear input

LD: Q D LD: Q DCLR: Q 0What happens when D, LD, CLR all 1NeedCLR’ LD: Q D LD: Q DCLR: Q 0 LD’ CLR: Q 0Priority to CLR Priority to LD

Page 15: CSC 3650 Introduction to Computer Architecture

Data paths of the system to implement the RTL code using direct connect

j: M Ao: A Yh: R Mn: Y R, M R

What’s missing?

Page 16: CSC 3650 Introduction to Computer Architecture

Complete design of the system to implement the RTL code using direct connections

Page 17: CSC 3650 Introduction to Computer Architecture

Implementation using bus with tri-state buffers

Advantage of bus over direct connect:Bus system can be partitioned and their sections designed separately; task of buffer is not to pass the value of M on to the bus so it can be read in by register R, rather, its task is to place the contents of M on to the bus so that it can be read by whatever register should read it in.

Page 18: CSC 3650 Introduction to Computer Architecture

Complete design of the system to implement the RTL code using a bus and multiplexer

Page 19: CSC 3650 Introduction to Computer Architecture

State Table for Modulo 6 Counter

S0 S1 S2 S3 S4 S5 S0 …

Page 20: CSC 3650 Introduction to Computer Architecture

State Diagram for Modulo 6 Counter

RTL code for the counter:(S0 + S1 + S3 + S3 + S4)U: V V + 1, C 0S5U + S6 + S7: V 0, C 1+ on left of : is OR, on right of : is arithmetic add

Page 21: CSC 3650 Introduction to Computer Architecture

Implementation of RTL code for Modulo 6 counter using a register

Page 22: CSC 3650 Introduction to Computer Architecture

Implementation of RTL code for Modulo 6 counter using a counter

Page 23: CSC 3650 Introduction to Computer Architecture

States for toll boot controller

Page 24: CSC 3650 Introduction to Computer Architecture

State table for toll booth controller

Page 25: CSC 3650 Introduction to Computer Architecture

State diagram for toll booth controller

Page 26: CSC 3650 Introduction to Computer Architecture

State value assignments for the toll booth controller

Page 27: CSC 3650 Introduction to Computer Architecture

RTL code for the toll booth controller, excluding output

Page 28: CSC 3650 Introduction to Computer Architecture

RTL code for the toll booth controller outputs

Page 29: CSC 3650 Introduction to Computer Architecture

Complete RTL code for toll booth controller

Page 30: CSC 3650 Introduction to Computer Architecture

VHDL file to implement the modulo 6 counter using a high level of abstraction

Page 31: CSC 3650 Introduction to Computer Architecture

VHDL code continued

Page 32: CSC 3650 Introduction to Computer Architecture

Logic diagram for modulo 6 counter based on VHDL in next slide

Page 33: CSC 3650 Introduction to Computer Architecture

VHDL file to implement the modulo 6 counter using a low level abstraction