Ronny Krashinsky and Mike Sung

Slides:



Advertisements
Similar presentations
Review of the MIPS Instruction Set Architecture. RISC Instruction Set Basics All operations on data apply to data in registers and typically change the.
Advertisements

Lecture 5: MIPS Instruction Set
MIPS assembly. Review  Lat lecture, we learnt  addi,  and, andi, or, ori, xor, xori, nor,  beq, j, bne  An array is stored sequentially in the memory.
– © Yohai Devir 2007 Technion - IIT Tutorial #10 MIPS commands.
1 ECE462/562 ISA and Datapath Review Ali Akoglu. 2 Instruction Set Architecture A very important abstraction –interface between hardware and low-level.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /15/2013 Lecture 11: MIPS-Conditional Instructions Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER.
Chapter 2 — Instructions: Language of the Computer — 1 Branching Far Away If branch target is too far to encode with 16-bit offset, assembler rewrites.
ECE 15B Computer Organization Spring 2010 Dmitri Strukov Lecture 5: Data Transfer Instructions / Control Flow Instructions Partially adapted from Computer.
ELEN 468 Advanced Logic Design
Chapter 4 The Processor CprE 381 Computer Organization and Assembly Level Programming, Fall 2013 Zhao Zhang Iowa State University Revised from original.
CSE 340 Computer Architecture Spring 2014 MIPS ISA Review
The Processor 2 Andreas Klappenecker CPSC321 Computer Architecture.
Lecture 5 Sept 14 Goals: Chapter 2 continued MIPS assembly language instruction formats translating c into MIPS - examples.
MIPS Instruction Set Advantages
Lecture 15: 10/24/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
MIPS coding. slt, slti slt $t3, $t1, $t2 – set $t3 to be 1 if $t1 < $t2 ; else clear $t3 to be 0. – “Set Less Than.” slti $t3, $t1, 100 – set $t3 to be.
11/02/2009CA&O Lecture 03 by Engr. Umbreen Sabir Computer Architecture & Organization Instructions: Language of Computer Engr. Umbreen Sabir Computer Engineering.
Module : Algorithmic state machines. Machine language Machine language is built up from discrete statements or instructions. On the processing architecture,
ECE 445 – Computer Organization
17 - Jumps & Branches. The PC PC marks next location in Fetch, Decode, Execute cycle.
Computer Organization & Programming Chapter 6 Single Datapath CPU Architecture.
MIPS coding. Review Shifting – Shift Left Logical (sll) – Shift Right Logical (srl) – Moves all of the bits to the left/right and fills in gap with 0’s.
Computer Architecture CSE 3322 Lecture 3 Assignment: 2.4.1, 2.4.4, 2.6.1, , Due 2/3/09 Read 2.8.
Chapter 2 CSF 2009 The MIPS Assembly Language. Stored Program Computers Instructions represented in binary, just like data Instructions and data stored.
Computer Organization Instructions Language of The Computer (MIPS) 2.
ECE 15B Computer Organization Spring 2011 Dmitri Strukov Partially adapted from Computer Organization and Design, 4 th edition, Patterson and Hennessy,
Computer Organization CS224 Fall 2012 Lessons 7 and 8.
MIPS coding. slt, slti slt $t3, $t1, $t2 – set $t3 to be 1 if $t1 < $t2 ; else clear $t3 to be 0. – “Set Less Than.” slti $t3, $t1, 100 – set $t3 to be.
EET 4250 Instruction Representation & Formats Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Penn.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 11 Conditional Operations.
Computer Architecture & Operations I
Electrical and Computer Engineering University of Cyprus
CS 230: Computer Organization and Assembly Language
Computer Organization CS224
MIPS Instruction Set Advantages
MIPS Coding Continued.
Lecture 4: MIPS Instruction Set
ELEN 468 Advanced Logic Design
Computer Architecture & Operations I
Prof. Sirer CS 316 Cornell University
Conditional Branches What distinguishes a computer from a simple calculator is its ability to make decisions Decisions are made using the if statement,
Instruction Format MIPS Instruction Set.
Pipelining: Advanced ILP
The University of Adelaide, School of Computer Science
MIPS coding.
Figure 8.1 Architecture of a Simple Computer System.
CSCI206 - Computer Organization & Programming
Computer Architecture
MIPS Instruction Encoding
The University of Adelaide, School of Computer Science
MIPS coding.
Figure 8.1 Architecture of a Simple Computer System.
Topic 5: Processor Architecture Implementation Methodology
MIPS Instruction Encoding
Data Hazards Data Hazard
MIPS History MIPS is a computer family
MIPS coding.
The University of Adelaide, School of Computer Science
Topic 5: Processor Architecture
MIPS History MIPS is a computer family
COMS 361 Computer Organization
Prof. Sirer CS 316 Cornell University
Instruction Format MIPS Instruction Set.
MIPS History MIPS is a computer family
Review.
MIPS Coding Continued.
MIPS coding.
COMS 361 Computer Organization
What Are Performance Counters?
Conditional Branching (beq)
Presentation transcript:

Ronny Krashinsky and Mike Sung Energy Efficient Program Control 6.893 project proposal 9-26-2000 Ronny Krashinsky and Mike Sung Program = Computation (add, shift) + Data (load, store) + Control (branch, jump) MIPS RISC: Basic block size = 5 to 6 instructions slt,bne(beq) pair accounts for about 5% of all instructions executed [M. Hampton] for(i=0; i<x; i++) j += i<<1; slt: register file read (2x32b) compare (32b) register file write (32b) bne: register file read (2x32b) target address calculation program counter update L: addu $ri $ri 1 addu $rj $rj $rs slt $rc $ri $rx bne $rc $r0 L sll $rs $ri 1 la $btr L L: addu $ri $ri 1 addu $rj $rj $rs slt $c1 $ri $rx b $c1 (btr) sll $rs $ri 1 slt: register file read (2x32b) compare (32b) condition register write (1b) bne: condition register read (1b) program counter update

Energy savings using condition registers & branch target register: 1 bit register access for branch condition No branch address calculation inside loop Possible compact instruction encoding (16 bit) Branch resolution in decode stage (1bit check) Other Ideas: Boolean operations can also use 1 bit condition registers Alternative control mechanisms: auto-decrement, predication, condition codes Program control in alternative architectures: Vector, Data Flow, VLIW Plan: Profile benchmarks (ISA simulator) ISA development Compiler support (assembly file hacking) Micro-architectural implementation/simulation (SyCHOSys) Energy simulation (SyCHOSys) Analyze and iterate