Data Transfers To be able to implement

Slides:



Advertisements
Similar presentations
ITCS 3181 Logic and Computer Systems 2015 B. Wilkinson slides3.ppt Modification date: March 16, Addressing Modes The methods used in machine instructions.
Advertisements

2.3) Example of program execution 1. instruction  B25 8 Op-code B means to change the value of the program counter if the contents of the indicated register.
Instruction Set Architecture
Midterm Wednesday Chapter 1-3: Number /character representation and conversion Number arithmetic Combinational logic elements and design (DeMorgan’s Law)
Number One Tom Bozic Ian Nuber Greg Ramsey Henry Romero Matt Unangst.
Overview von Neumann Model Components of a Computer Some Computer Organization Models The Computer Bus An Example Organization: The LC-3.
Programming Models CT213 – Computing Systems Organization.
1 Programmer’s View of the EAGLE R0 R1 R7 Register file IR PC CPU :::::: Main memory :
IT253: Computer Organization Lecture 4: Instruction Set Architecture Tonga Institute of Higher Education.
1. 2 Instructions: Words of the language understood by CPU Instruction set: CPU’s vocabulary Instruction Set Architecture (ISA): CPU’s vocabulary together.
ULTRASPARC 2005 INTRODUCTION AND ISA BY JAMES MURITHI.
Our programmer needs to do this !
Jump (op-code= 20) unconditional jump Forms allowed by the assembler: jump [ra + constant] jump [ra + variable] jump [ra + address] jump [ra + label] For.
8 085Microprocessor Temp Reg (8) Accumulator (A reg) Flag flip flops(8) Instruction Register (8) Arithmetic Logic Unit ALU Instruction Decoder and Machine.
Chapter 5 Computer Organization TIT 304/TCS 303. Purpose of This Chapter In this chapter we introduce a basic computer and show how its operation can.
SRC: instruction formats Op-coderarb rc c Type D Op-code Type Aunused Op-codera Type Bc1 21 Op-coderarb.
Types of Micro-operation  Transfer data between registers  Transfer data from register to external  Transfer data from external to register  Perform.
Seminar On 8085 microprocessor
Basic Computer Organization and Design
Today’s Agenda Exam 2 Part 2 (11:15am-12:30pm)
Block diagram of a Microcoded Control unit
Immediate Addressing Mode
A Uni-bus Data Path Implementation for the SRC
Structural RTL for the br and brl instructions
Introduction CPU performance factors
ELEN 468 Advanced Logic Design
Morgan Kaufmann Publishers The Processor
Morgan Kaufmann Publishers
RISC Concepts, MIPS ISA Logic Design Tutorial 8.
Prof. Sirer CS 316 Cornell University
Instruction Execution (Load and Store instructions)
External CPU Bus Activity
A Closer Look at Instruction Set Architectures: Expanding Opcodes
8085 microprocessor.
Instruction Format MIPS Instruction Set.
Design of the Control Unit for Single-Cycle Instruction Execution
BASIC COMPUTER ORGANIZATION AND DESIGN
Falcon-E : Introduction
THE sic mACHINE CSCI/CMPE 3334 David Egle.
Hmmm Assembly Language
Basic Processing Unit Unit- 7 Engineered for Tomorrow CSE, MVJCE.
Computer Architecture and Design Lecture 6
Some Fundamental Concepts
MARIE: An Introduction to a Simple Computer
Levels in Processor Design
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
Instruction encoding The ISA defines Format = Encoding
Fields in the FALCON-A Instruction
Programmer’s View of the EAGLE
Introduction to Micro Controllers & Embedded System Design
William Stallings Computer Organization and Architecture 8th Edition
IR <2..0> CON 3-to-8 Decoder Never Branch Always Branch
COMS 361 Computer Organization
Data manipulation instructions
Branch instructions We’ll implement branch instructions for the eight different conditions shown here. Bits 11-9 of the opcode field will indicate the.
A Discussion on Assemblers
Instruction encoding The ISA defines Format = Encoding
Prof. Sirer CS 316 Cornell University
Instruction Format MIPS Instruction Set.
Instruction encoding The ISA defines Format = Encoding
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
Basic Processing Unit UNIT-5.
Instruction encoding The ISA defines Format = Encoding
Execution time Execution Time (processor-related) = IC x CPI x T
Course Outline for Computer Architecture
Review: The whole processor
Example 1: (expression evaluation)
CS501 Advanced Computer Architecture
Hmmm Assembly Language
What You Will Learn In Next Few Sets of Lectures
Presentation transcript:

Data Transfers To be able to implement Cond1: RD  RS Cond2: RS  RD together, we need a path from RD to RS and a path from RS to RD, each having m lines (for m-bit RD and RS) We can connect the output of RD to the input of RS in the previous circuit

Example: (op=1): R4← R3 + R2;

A 4-bit adder with registers on a bus

Implementing (op=1): R4← R3 + R2; Time step Operation to be performed (structural RTL) Control signals to be activated 1 A ← R3 LA, R3out 2 C ← A + R2 LC, R2out 3 R4 ← C LR4, Cout These steps have to be performed one after the other It indicates how the add operation is accomplished using the hardware shown before

ISA Design Steps Select suitable mnemonics for these operations add addi sub subi mul div and andi or ori not load store in out mov movi call ret int iret jpl jmi jnz jz jump nop reset halt shiftl shiftr asr

ISA Design Steps Assign op-codes add (0) addi (1) sub (2) subi (3) mul (4) div (5) and (8) andi (9) or (10) ori (11) not (14) load (29) store (28) in (24) out (25) mov (6) movi (7) call (22) ret (23) int (26) iret (27) jpl (16) jmi (17) jnz (18) jz (19) jump (20) nop (21) reset (30) halt (31) shiftl (12) shiftr (13) asr (15)

Op-code based listing of FALCON-A instructions 00000 add 00001 addi 00010 sub 00011 subi 00100 mul 00101 div 00110 mov 00111 movi 01000 and 01001 andi 01010 or 01011 ori 01100 shiftl 01101 shiftr 01110 not 01111 asr 10000 jpl 10001 jmi 10010 jnz 10011 jz 10100 jump 10101 nop 10110 call 10111 ret 11000 in 11001 out 11010 int 11011 iret 11100 store 11101 load 11110 reset 11111 halt

ISA Design Steps Assign fields to each operand in the instruction (at this time we can also decide on the instruction word length to be 16 bits) size of each field (depends on the number of registers also) let’s say eight GPRs => three bits to encode them encoding of the various fields straight binary encoding, shown on the next slide

Possible encoding of the GPRs Registers Encoding R0 000 R1 001 R2 010 R3 011 R4 100 R5 101 R6 110 R7 111

Skeleton Instruction Format Op-code ra rb rc unused 1 2 4 5 7 8 10 11 15 Variations of this skeleton format will yield the four types of instruction formats used in the FALCON-A

ISA Design Steps Decide on memory organization depends on size of PC and external data bus

ISA Design Steps Select instruction that are allowed to access memory Since FALCON-A is a RISC like machine, only load and store instructions are allowed to access memory

ISA Design Steps Select addressing modes (ways to access memory) Memory access in a load or store operation can be: Addressing Mode Format Example direct [constant or label] [10] or [a] displacement [register + constant or label] [R1 + 8] or [r2 + a] register indirect [register] [R3]

Programmer’s view of the FALCON-A 15 R0 R1 R7 Register file IR PC CPU : 7 7 1 1 2 2 : : 255 Input/Output 216-1 Main memory