IMPLEMENTING RISC MULTI CORE PROCESSOR USING HLS LANGUAGE - BLUESPEC LIAM WIGDOR INSTRUCTOR MONY ORBACH SHIREL JOSEF Winter 2013 One Semester Mid-term.

Slides:



Advertisements
Similar presentations
CMPE 421 Advanced Parallel Computer Architecture Pipeline datapath and Control.
Advertisements

Fetch Execute Cycle – In Detail -
Final Project : Pipelined Microprocessor Joseph Kim.
CPU Review and Programming Models CT101 – Computing Systems.
– © Yohai Devir 2007 Technion - IIT Tutorial #10 MIPS commands.
Final Presentation Part-A
Lecture Objectives: 1)Define pipelining 2)Calculate the speedup achieved by pipelining for a given number of instructions. 3)Define how pipelining improves.
Lecture: Pipelining Basics
Chapter 8. Pipelining. Instruction Hazards Overview Whenever the stream of instructions supplied by the instruction fetch unit is interrupted, the pipeline.
1 RISC Pipeline Han Wang CS3410, Spring 2010 Computer Science Cornell University See: P&H Chapter 4.6.
Lab Assignment 2: MIPS single-cycle implementation
1 Lecture 17: Basic Pipelining Today’s topics:  5-stage pipeline  Hazards and instruction scheduling Mid-term exam stats:  Highest: 90, Mean: 58.
Processor Technology and Architecture
Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.
Chapter XI Reduced Instruction Set Computing (RISC) CS 147 Li-Chuan Fang.
RISC By Don Nichols. Contents Introduction History Problems with CISC RISC Philosophy Early RISC Modern RISC.
Lec 8: Pipelining Kavita Bala CS 3410, Fall 2008 Computer Science Cornell University.
Performance Analysis of Processor Characterization Presentation Performed by : Winter 2005 Alexei Iolin Alexander Faingersh Instructor:
Pipelined Processor II CPSC 321 Andreas Klappenecker.
7/2/ _23 1 Pipelining ECE-445 Computer Organization Dr. Ron Hayne Electrical and Computer Engineering.
Prardiva Mangilipally
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Midterm Presentation By: Vova Menis-Lurie Sonia Gershkovich.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
Input and Output Computer Organization and Assembly Language: Module 9.
Chapter 2 Summary Classification of architectures Features that are relatively independent of instruction sets “Different” Processors –DSP and media processors.
RISC By Ryan Aldana. Agenda Brief Overview of RISC and CISC Features of RISC Instruction Pipeline Register Windowing and renaming Data Conflicts Branch.
Performed By: Yahel Ben-Avraham and Yaron Rimmer Instructor: Mony Orbach Bi-semesterial, /3/2013.
Implementing RISC Multi Core Processor Using HLS Language – BLUESPEC Final Presentation Liam Wigdor Advisor Mony Orbach Shirel Josef Semesterial Winter.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
1 Pipelining Part I CS What is Pipelining? Like an Automobile Assembly Line for Instructions –Each step does a little job of processing the instruction.
EECE 476: Computer Architecture Slide Set #5: Implementing Pipelining Tor Aamodt Slide background: Die photo of the MIPS R2000 (first commercial MIPS microprocessor)
Performed By: Yahel Ben-Avraham and Yaron Rimmer Instructor: Mony Orbach Semesterial (possibly bi-semesterial) Winter /12/2012.
Elements of Datapath for the fetch and increment The first element we need: a memory unit to store the instructions of a program and supply instructions.
Lecture 9. MIPS Processor Design – Pipelined Processor Design #1 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System.
CMPE 421 REVIEW: MIDTERM 1. A MODIFIED FIVE-Stage Pipeline PC A Y R MD1 addr inst Inst Memory Imm Ext add rd1 GPRs rs1 rs2 ws wd rd2 we wdata addr wdata.
MIPS Processor.
Simulator Outline of MIPS Simulator project  Write a simulator for the MIPS five-stage pipeline that does the following: Implements a subset of.
Implementing RISC Multi Core Processor Using HLS Language - BLUESPEC Liam Wigdor Instructor Mony Orbach Shirel Josef Semesterial Winter 2013.
STUDY OF PIC MICROCONTROLLERS.. Design Flow C CODE Hex File Assembly Code Compiler Assembler Chip Programming.
CS 352H: Computer Systems Architecture
MPOC: A Chip Multiprocessor for Embedded Systems
Chapter 10: Computer systems (1)
ECE 353 Lab 3 Pipeline Simulator
Instruction Level Parallelism
Visit for more Learning Resources
Morgan Kaufmann Publishers
Lecture: Pipelining Basics
Processor Architecture: Introduction to RISC Datapath (MIPS and Nios II) CSCE 230.
Single Clock Datapath With Control
Lecture: Pipelining Basics
MIPS Assembly.
Pipelining: Advanced ILP
Lecture 5: Pipelining Basics
CSC 4250 Computer Architectures
MIPS Processor.
Morgan Kaufmann Publishers The Processor
Pipeline control unit (highly abstracted)
Henk Corporaal TUEindhoven 2011
Control unit extension for data hazards
Instruction Execution Cycle
Pipeline control unit (highly abstracted)
Pipelining: Basic Concepts
Pipeline Control unit (highly abstracted)
Control unit extension for data hazards
CSC3050 – Computer Architecture
Morgan Kaufmann Publishers The Processor
Control unit extension for data hazards
Seoul National University
Lecture: Pipelining Basics
MIPS Processor.
Presentation transcript:

IMPLEMENTING RISC MULTI CORE PROCESSOR USING HLS LANGUAGE - BLUESPEC LIAM WIGDOR INSTRUCTOR MONY ORBACH SHIREL JOSEF Winter 2013 One Semester Mid-term presentation

PROJECT GOAL Implementing RISC multi core processor using BlueSpec - implement dual core processor with scalability - cores sharing data memory

WHAT HAVE WE DONE SO FAR Learned about BlueSpec principles, syntax and working environment Practiced simple adjustments to the processor code Learned about Single Core, two stage pipeline, processor code

We will use 2 stage pipeline MIPS for each core The Mips BlueSpec code taken from Architecting and Implementing Microprocessors in BlueSpec Shared between cores

Each core 2 stage pipeline separate register file separate instruction memory Control hazard detection ( Epoch )

PROJECT CURRENT STAGE Creating Multi Core processor by combining two single core processors sharing data memory Core 1 Core 2 Data Memory 32 Bit In use (signal)

PROJECT CURRENT STAGE Memory access before the changes Memreq is sent to the data memory in load\store operetion ( During execute stage ) - Memreq contain memory address and data Data is returned from the memory in load operetion

PROJECT CURRENT STAGE Memory access after the changes Adding a signal indicating whether the memory is being accessed If not Then the core can access it Else Wait

NEXT STEPS – PHASE 1 BlueSpec SW simulation - Using BlueSpec compiler to create simulation object files - generate an executable program - providing a convenient way to run the simulation objects

NEXT STEPS - PHASE 2 Comparing results between single core and our Multi Core Using simple bench mark programs : without data memory access with data memory access Comparing : IPC – instruction per cycle Ideally, IPC for Dual Core is 2. Since the processors share data we assume 1< IPC <2

NEXT STEPS - PHASE 3 Testing the design using BlueSpec simulation tools (SCE-MI) For testing : We will use an existing working enviroment ( Project no. D07111 Winter 2012 ) Reading and writing to memories via JTAG The platform enables: Synthesis of design to FPGA via Direct PC Cycle level control using COP ( Co Processor )

PROJECT GANTT Phase 1 2/323/216/29/22/219/112/15/1 29/12 26/1 BlueSpec oriented multi- core design (no cache) CDR prep Exams 9/3 Phase 2

PROJECT GANTT /26/430/323/3 16/3 13/4 conclusions Phase 3