Computer Architecture (TT 2011) the MIPS/DLX/RISC Architecture
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Second-Generation Stack Computer Architecture
Second-Generation Stack Computer Architecture Charles Eric LaForest A thesis presented to the Independent Studies Program of the University of Waterloo in fulfilment of the thesis requirements for the degree Bachelor of Independent Studies (BIS) Independent Studies University of Waterloo Canada April 2007 ii Declaration I hereby declare that I am the sole author of this research paper. I authorize the University of Waterloo to lend this thesis to other institutions or individuals for the purpose of scholarly research. Signature: I further authorize the University of Waterloo to reproduce this research paper by photocopy- ing or other means, in total or in part, at the request of other institutions or individuals for the purpose of scholarly research. Signature: The work in this research paper is based on research carried out in the Independent Studies Program at the University of Waterloo, Canada. No part of this thesis has been submitted else- where for any other degree or qualification and is all my own work unless referenced to the contrary in the text. Copyright c 2007 by Charles Eric LaForest. The copyright of this thesis rests with the author. Quotations and information derived from it must be acknowledged. iii Second-Generation Stack Computer Architecture Charles Eric LaForest Submitted for the degree of Bachelor of Independent Studies April 2007 Abstract It is commonly held in current computer architecture literature that stack-based computers were entirely superseded by the combination of pipelined, integrated microprocessors and improved compilers. While correct, the literature omits a second, new generation of stack computers that emerged at the same time. -
Second-Generation Stack Computer Architecture
Second-Generation Stack Computer Architecture Charles Eric LaForest A thesis presented to the Independent Studies Program of the University of Waterloo in fulfilment of the thesis requirements for the degree Bachelor of Independent Studies (BIS) Independent Studies University of Waterloo Canada April 2007 ii Declaration I hereby declare that I am the sole author of this research paper. I authorize the University of Waterloo to lend this thesis to other institutions or individuals for the purpose of scholarly research. Signature: [:.,,,u..c ;(~ I further authorize the University of Waterloo to reproduce this research paper by photocopy ing or other means, in total or in part, at the request of other institutions or individuals for the pUipose of scholarly research. SignatUI·e: 6 ~ >{!. The work in this research paper is based on research carried out in the Independent Studies Program at the University of Waterloo, Canada. No part of this thesis has been submitted else where for any other degree or qualification and is all my own work unless referenced to the contrary in the text. Copyright© 2007 by Charles Eric La Forest. The copyright of this thesis rests with the author. Quotations and infonnation derived from it must be acknowledged. Ill Second-Generation Stack Computer Architecture Charles Eric LaForest Submitted for the degree of Bachelor of Independent Studies April 2007 Abstract It is commonly held in current computer architecture literature that stack-based computers were entirely superseded by the combination of pipelined, integrated microprocessors and improved compilers. While correct, the literature omits a second, new generation of stack computers that emerged at the same time. -
The Computer Organization and Design Underneath the Execution of C Programming Language Mingkai Li1 1University of Science and Technology of China
Top-down Perspective: The Computer Organization and Design Underneath the Execution of C Programming Language Mingkai Li1 1University of Science and Technology of China developed initially for the designing of compilers and Abstract operating systems, thus allowing the C programmer to In Yale Patt’s book Introduction to computing systems, manipulate data items at a relatively very low level. To from bits and gates to C and beyond, the intricacies of the better elaborate the computer’s actions when executing the magnificent computing world reveal themselves as a huge, high-level programming language, we create an example systematically interconnected collection of some very C program. Although simple, the program shows some of simple parts. Although implementations of many modern the most important features of the language, allowing us to architectures vary greatly to gain shorter response time or discuss further about the implementation method of things greater throughput (bandwidth as sometimes called), the like preprocessing, linking, subroutine, control instruction, underneath computer organization and design is no more data movement instruction, memory-mapped IO, so on and than hardware and software consisting of hierarchical so forth. Thus, help the readers quickly grasp a rough layers using abstraction, with each lower layer hiding recognition about all those lower layers of abstractions details from the level above. The C programming language behind the high-level programming language through this provides a machine-independent interface with the article. underlying ISA and hardware, tremendously enhancing the At the very beginning, we need to establish an program’s expressiveness and readability. Different from overview about the hierarchy or the layers of abstractions the bottom-up approach adopted in Yale Patt’s book, we about the whole computing system. -
LC-3B Simulator
CENG3420 Lab 2-1: LC-3b Simulator Bei Yu Department of Computer Science and Engineering The Chinese University of Hong Kong [email protected] Spring 2018 1 / 29 Overview LC-3b Basis LC-3b Assembly Examples LC-3b Simulator Task 2 / 29 Overview LC-3b Basis LC-3b Assembly Examples LC-3b Simulator Task 3 / 29 Assembler & Simulator I Assembly language – symbolic (MIPS, LC-3b, ...) I Machine language – binary I Assembler is a program that I turns symbols into machine instructions. I EX: lc3b_asm, SPIM, ... I Simulator is a program that I mimics the behavior of a processor I usually in high-level language I EX: lc3b_sim, SPIM, ... 3 / 29 LC-3b I LC-3b: Little Computer 3, b version. I Relatively simple instruction set I Most used in teaching for CS & CE I Developed by Yale Patt@UT & Sanjay J. Patel@UIUC 4 / 29 LC-3 Architecture I RISC – only 15 instructions I 16-bit data and address I 8 general-purpose registers (GPR) Plus 4 special-purpose registers: I Program Counter (PC) I Instruction Register (IR) I Condition Code Register (CC) I Process Status Register (PSR) 5 / 29 Memory 2k × m array of stored bits: Address I unique (k-bit) identifier of location I LC-3: k = 16 Contents I m-bit value stored in location I LC-3: m = 16 Basic Operations: I READ (Load): value in a memory location ! the Processor I WRITE (Store): value in the Processor ! a memory location 6 / 29 Interface to Memory How does the processing unit get data to/from memory? I MAR: Memory Address Register I MDR: Memory Data Register To LOAD from a location (A): 1.