Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.

Slides:



Advertisements
Similar presentations
Comparison of Altera NIOS II Processor with Analog Device’s TigerSHARC
Advertisements

-Alan Nelson -Andy Kruger -Dongpu Jin.  CPU is one of the most important and complicated parts of a computer.  We are going to design, implement and.
Lab Assignment 2: MIPS single-cycle implementation
Review: MIPS Pipeline Data and Control Paths
Mary Jane Irwin ( ) [Adapted from Computer Organization and Design,
Aug. 24, 2007ELEC 5200/6200 Project1 Computer Design Project ELEC 5200/6200-Computer Architecture and Design Fall 2007 Vishwani D. Agrawal James J.Danaher.
Project Testing; Processor Examples. Project Testing --thorough, efficient, hierarchical --done by “independent tester” --well-documented, repeatable.
Chapter XI Reduced Instruction Set Computing (RISC) CS 147 Li-Chuan Fang.
ENEE350 Ankur Srivastava University of Maryland, College Park Based on Slides from Mary Jane Irwin ( )
©UCB CS 162 Computer Architecture Lecture 3: Pipelining Contd. Instructor: L.N. Bhuyan
1 COMP541 Sequencing – III (Sequencing a Computer) Montek Singh April 9, 2007.
Computer ArchitectureFall 2007 © October 24nd, 2007 Majd F. Sakr CS-447– Computer Architecture.
Lec 17 Nov 2 Chapter 4 – CPU design data path design control logic design single-cycle CPU performance limitations of single cycle CPU multi-cycle CPU.
CPEN Digital System Design Chapter 10 – Instruction SET Architecture (ISA) © Logic and Computer Design Fundamentals, 4 rd Ed., Mano Prentice Hall.
Computer ArchitectureFall 2007 © October 22nd, 2007 Majd F. Sakr CS-447– Computer Architecture.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 27: Single-Cycle CPU Datapath Design Instructor: Sr Lecturer SOE Dan Garcia
Chapter 17 Microprocessor Fundamentals William Kleitz Digital Electronics with VHDL, Quartus® II Version Copyright ©2006 by Pearson Education, Inc. Upper.
COM181 Computer Hardware Ian McCrumRoom 5B18,
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
CSE430/830 Course Project Tutorial Instructor: Dr. Hong Jiang TA: Dongyuan Zhan Project Duration: 01/26/11 – 04/29/11.
Computer Organization & Assembly Language
COMPUTER ORGANIZATION CSCE 230 Final Project. OVERVIEW  Implemented RISC processor  VHDL  Test program created to demonstrate abilities.
CSCE 430/830 Course Project Guidelines By Dongyuan Zhan Feb. 4, 2010.
Computer Architecture ECE 4801 Berk Sunar Erkay Savas.
Computer Architecture Project Team A Sergio Rico, Ertong Zhang, Vlad Chiriacescu, ZhongYin Zhang.
1 A Simple but Realistic Assembly Language for a Course in Computer Organization Eric Larson Moon Ok Kim Seattle University October 25, 2008.
Computer Systems Organization CS 1428 Foundations of Computer Science.
Chapter 14 Introduction to Microprocessors. 2 Microcomputer A self-contained computer system that consists of CPU (central processing unit), memory (RAM.
COSC 3430 L08 Basic MIPS Architecture.1 COSC 3430 Computer Architecture Lecture 08 Processors Single cycle Datapath PH 3: Sections
SPREE RTL Generator RTL Simulator RTL CAD Flow 3. Area 4. Frequency 5. Power Correctness1. 2. Cycle count SPREE Benchmarks Verilog Results 3. Architecture.
Chapter 2 Summary Classification of architectures Features that are relatively independent of instruction sets “Different” Processors –DSP and media processors.
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
Pipelined Datapath and Control
CS35101 Computer Architecture Spring 2006 Week 1 Slides adapted from: Mary Jane Irwin ( Course url:
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
CSE 340 Computer Architecture Summer 2014 Basic MIPS Pipelining Review.
CS.305 Computer Architecture Enhancing Performance with Pipelining Adapted from Computer Organization and Design, Patterson & Hennessy, © 2005, and from.
1 Designing a Pipelined Processor In this Chapter, we will study 1. Pipelined datapath 2. Pipelined control 3. Data Hazards 4. Forwarding 5. Branch Hazards.
ECE 445 – Computer Organization
CDA 3101 Fall 2013 Introduction to Computer Organization
Computer Organization & Programming Chapter 6 Single Datapath CPU Architecture.
EECE 476: Computer Architecture Slide Set #5: Implementing Pipelining Tor Aamodt Slide background: Die photo of the MIPS R2000 (first commercial MIPS microprocessor)
MICROOCESSORS AND MICROCONTROLLER:
Microarchitecture. Outline Architecture vs. Microarchitecture Components MIPS Datapath 1.
CSIE30300 Computer Architecture Unit 04: Basic MIPS Pipelining Hsin-Chou Chi [Adapted from material by and
A.Abhari CPS1251 Topic 1: Introduction to Computers Computer Hardware Computer components Connecting Computers Computer Software Operating System (OS)
9/20/6Lecture 2 - Prog Model1 MicroBaby A simple micro-controller encompassing all the basics Start this class by organizing into groups.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 2 Computer Organization.
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
CSE431 L06 Basic MIPS Pipelining.1Irwin, PSU, 2005 MIPS Pipeline Datapath Modifications  What do we need to add/modify in our MIPS datapath? l State registers.
Introduction to Computer Organization Pipelining.
Pipeline Processor Design Project Jarred Beck. Design Assumptions Three bit opcode This is to be able to address all of the 8k memory directly =
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
New-School Machine Structures Parallel Requests Assigned to computer e.g., Search “Katz” Parallel Threads Assigned to core e.g., Lookup, Ads Parallel Instructions.
STUDY OF PIC MICROCONTROLLERS.. Design Flow C CODE Hex File Assembly Code Compiler Assembler Chip Programming.
CDA3101 Recitation Section 8
Introduction CPU performance factors
Morgan Kaufmann Publishers
CDA 3101 Spring 2016 Introduction to Computer Organization
CS/COE0447 Computer Organization & Assembly Language
Pipelining in more detail
CSC 4250 Computer Architectures
Systems Architecture II
Figure 8.1 Architecture of a Simple Computer System.
Morgan Kaufmann Publishers The Processor
The Processor Lecture 3.6: Control Hazards
Guest Lecturer TA: Shreyas Chand
Introduction to Computer Organization and Architecture
CS/COE0447 Computer Organization & Assembly Language
Presentation transcript:

Term Project Overview Yong Wang

Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build a processor from scratch (single-cycle implementation) –Add some functions Pipeline datapath, pipeline control, hazard detection unit, forwarding unit, branch hazard handling unit –Write an assembler that detects data hazard and optimizes the code to minimize stalls

Project Assignment Team-based work 4 to 5 Team members Task assignment for reference –2-3 ISA and logical design –1 assembler and application program –1 project management (team leader) and website maintenance

Project Facilities Altera UP2 education board and manual Altera Quartus II Web Edition software (downloadable from website) –Has a retired version, MaxPlusII software ByteBlasterMV parallel port download cable

Project Overview Processor logical design (design, compile, simulate) Assembler in high-level language UP2 board download Application Program in MIPS assembly (.mif file) Input: DIP, PB Output: displays Components design, compile and simulate

On paper QuartusII 1.Graphical tool 2.VHDL C, C++, Java UP2 board Project Phases

Phase I Basic Design Processor structure –5 stage Standard hazard handling addressed in textbooks and lectures –4 stage or less Eliminate some hazards and simplify hardware design –Components: PC, decoder, ALU, pipeline registers, I/O, IM, DM, etc.

Phase I Basic Design (continued) Instruction length –ISA, refer to MIPS –How many instruction types (R, I, J) –Instruction format Instruction and data bus width Instruction memory (# of inst * avg. instr. length) data memory immediate field register file sizes (#, and # of bits per register)

Phase II Logic Design Components to be designed –PC –decoder –ALU –Forwarding units –Memory mapped I/O –pipeline registers (after your single cycle CPU design) Components to be customized –IM (LPM_file, LPM_WIDTH, LPM_WIDTHAD) A ready-to-use ROM component –DM (LPM_file, LPM_WIDTH, LPM_WIDTHAD) A ready to use RAM component

Phase III Logical Simulation Compile – no design errors; also check the warnings Simulation – implements desired functions –Feed signals to inputs, run it and check the output signals –The most important debugging tool Timing analyzer –Analyzing the system efficiency

Phase IV Assembler Choose any high-level development language –Java, C, C++, Perl Function requirement (can use hardware also) –Branch hazards, Load stalls Steps 1.Resolve all symbols 2.Convert instructions to the proper memory format that Altera specifies (an example in Appendix A in project description)

Phase V Work on board Connect to computer by ByteBlaster Debug Make sure your processor (and the application program) works in simulation before downloading to board