Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.

Slides:



Advertisements
Similar presentations
1 (Review of Prerequisite Material). Processes are an abstraction of the operation of computers. So, to understand operating systems, one must have a.
Advertisements

Final Presentation Part-A
Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Computer Architecture & Organization
PROJECT IN DISTRIBUTED SYSTEMS IPERF FOR ANDROID Developers: Shir Degani, Yuval Degani Supervisors: Prof. Roy Friedman, Alex Kogan.
Mid semester Presentation Data Packages Generator & Flow Management Data Packages Generator & Flow Management Data Packages Generator & Flow Management.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
1 Student: Khinich Fanny Instructor: Fiksman Evgeny המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון - מכון טכנולוגי לישראל.
1 Project supervised by: Dr Michael Gandelsman Project performed by: Roman Paleria, Avi Yona 12/5/2003 Multi-channel Data Acquisition System Mid-Term Presentation.
Configurable System-on-Chip: Xilinx EDK
הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering Virtex II-PRO Dynamical.
1 Network Packet Generator Characterization presentation Supervisor: Mony Orbach Presenting: Eugeney Ryzhyk, Igor Brevdo.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
1 Fast Communication for Multi – Core SOPC Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab.
USB Mass-Storage Implementation on an Embedded System (D0113) Supervisor: Dimitry Sokolik Performed by: Yoav Gershoni Shachar Faigenblat Final Presentation.
Educational Computer Architecture Experimentation Tool Dr. Abdelhafid Bouhraoua.
Implementation of DSP Algorithm on SoC. Characterization presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompany engineer : Emilia Burlak.
CERN CMS Project Host / SD Card Configuration Data Access Dave Ojika Alex Madorsky Dr. Darin Acosta Dr. Ivan Furic.
PCI-Express Network Sniffer Characterization Presentation Project Period : 2 semesters Students: Neria Wodage Aviel Tubul Advisor: Mony Orbach 17/12/2007.
General Purpose FIFO on Virtex-6 FPGA ML605 board midterm presentation
Final presentation Encryption/Decryption on embedded system Supervisor: Ina Rivkin students: Chen Ponchek Liel Shoshan Winter 2013 Part A.
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Final A Presentation By: Vova Menis-Lurie Sonia Gershkovich.
Constructive Computer Architecture Tutorial 4: SMIPS on FPGA Andy Wright 6.S195 TA October 7, 2013http://csg.csail.mit.edu/6.s195T04-1.
Students: Oleg Korenev Eugene Reznik Supervisor: Rolf Hilgendorf
General Purpose FIFO on Virtex-6 FPGA ML605 board Students: Oleg Korenev Eugene Reznik Supervisor: Rolf Hilgendorf 1 Semester: spring 2012.
Digital signature using MD5 algorithm Hardware Acceleration
Ross Brennan On the Introduction of Reconfigurable Hardware into Computer Architecture Education Ross Brennan
Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Midterm Presentation By: Vova Menis-Lurie Sonia Gershkovich.
DOP - A CPU CORE FOR TEACHING BASICS OF COMPUTER ARCHITECTURE Miloš Bečvář, Alois Pluháček and Jiří Daněček Department of Computer Science and Engineering.
2007 Sept 06SYSC 2001* - Fall SYSC2001-Ch1.ppt1 Computer Architecture & Organization  Instruction set, number of bits used for data representation,
Matrix Multiplication on FPGA Final presentation One semester – winter 2014/15 By : Dana Abergel and Alex Fonariov Supervisor : Mony Orbach High Speed.
Pinewood Derby Timing System Using a Line-Scan Camera Rob Ostrye Class of 2006 Prof. Rudko.
1 Extending FPGA Verification Through The PLI Charles Howard Senior Research Engineer Southwest Research Institute San Antonio, Texas (210)
SPREE RTL Generator RTL Simulator RTL CAD Flow 3. Area 4. Frequency 5. Power Correctness1. 2. Cycle count SPREE Benchmarks Verilog Results 3. Architecture.
PROCStar III Performance Charactarization Instructor : Ina Rivkin Performed by: Idan Steinberg Evgeni Riaboy Semestrial Project Winter 2010.
NIOS II Ethernet Communication Final Presentation
1 Abstract & Main Goal המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The focus of this project was the creation of an analyzing device.
Performed By: Yahel Ben-Avraham and Yaron Rimmer Instructor: Mony Orbach Bi-semesterial, /3/2013.
Part A Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
Final Presentation Annual project (Part A) Winter semesterתשע"ב (2011/12) Students: Dan Hofshi, Shai Shachrur Supervisor: Mony Orbach INS/GPS navigation.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
PROJECT - ZYNQ Yakir Peretz Idan Homri Semester - winter 2014 Duration - one semester.
1 Extending FPGA Verification Through The PLI Charles Howard Senior Research Engineer Southwest Research Institute San Antonio, Texas (210)
Computer Architecture 2 nd year (computer and Information Sc.)
FPGA-based Fast, Cycle-Accurate Full System Simulators Derek Chiou, Huzefa Sanjeliwala, Dam Sunwoo, John Xu and Nikhil Patil University of Texas at Austin.
Processor Structure and Function Chapter8:. CPU Structure  CPU must:  Fetch instructions –Read instruction from memory  Interpret instructions –Instruction.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
VHDL and Hardware Tools CS 184, Spring 4/6/5. Hardware Design for Architecture What goes into the hardware level of architecture design? Evaluate design.
Ethernet Bomber Ethernet Packet Generator for network analysis
Performed By: Yahel Ben-Avraham and Yaron Rimmer Instructor: Mony Orbach Semesterial (possibly bi-semesterial) Winter /12/2012.
MIPS Pipeline and Branch Prediction Implementation Shuai Chang.
Performed By: Itamar Niddam and Lior Motorin Instructor: Inna Rivkin Bi-Semesterial. Winter 2012/2013 3/12/2012.
Out-of-Order OpenRISC 2 semesters project Semester B: OR1200 ISA Extension Final B Presentation By: Vova Menis-Lurie Sonia Gershkovich Advisor: Mony Orbach.
Constructive Computer Architecture Tutorial 4: Running and Debugging SMIPS Andy Wright TA October 10, 2014http://csg.csail.mit.edu/6.175T04-1.
DDRIII BASED GENERAL PURPOSE FIFO ON VIRTEX-6 FPGA ML605 BOARD PART B PRESENTATION STUDENTS: OLEG KORENEV EUGENE REZNIK SUPERVISOR: ROLF HILGENDORF 1 Semester:
HCS12 Technical Training Module 15 – Break Module Slide 1 MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other.
Application-Specific Customization of Soft Processor Microarchitecture Peter Yiannacouras J. Gregory Steffan Jonathan Rose University of Toronto Electrical.
OPERATING SYSTEMS DO YOU REQUIRE AN OPERATING SYSTEM IN YOUR SYSTEM?
Implementing RISC Multi Core Processor Using HLS Language - BLUESPEC Liam Wigdor Instructor Mony Orbach Shirel Josef Semesterial Winter 2013.
IMPLEMENTING RISC MULTI CORE PROCESSOR USING HLS LANGUAGE - BLUESPEC LIAM WIGDOR INSTRUCTOR MONY ORBACH SHIREL JOSEF Winter 2013 One Semester Mid-term.
Software and Communication Driver, for Multimedia analyzing tools on the CEVA-X Platform. June 2007 Arik Caspi Eyal Gabay.
ASIC Design Methodology
Current Generation Hypervisor Type 1 Type 2.
Derek Chiou The University of Texas at Austin
A Review of Processor Design Flow
Section 1: Introduction to Simics
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
Application-Specific Customization of Soft Processor Microarchitecture
Chapter 13: I/O Systems.
Presentation transcript:

Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony Orbach Winter 2012

Lab Vision - The student performing the lab will understand a MIPS processor, - The student will have the tools for performance analyzing of a particular MIPS. - He will implement & evaluate different types of architecture improvements. - He will sense the advantages of various improvements without being concerned with the technical aspects of handling the experiment setup.

FPGA Bluespec Scemi Bluespec HDL C++

Assumptions The students attending the lab are already familiar with basic aspects of logic design & MIPS architecture. The students will receive complementary knowledge relevant for the experiment.

staff Academic supervisor: Yoav Etsion. Project supervisor: Mony Orbach. Project coordinator: Eli Shushan. Application engineering: Inna Rivkin.

Abstract The lab we aspire to create is in respect to a course performed by Dr Derek Chiou from the university of Texas at the recent summer semester. Using new features of the Bluespec HDL and its environment we are able to create a lab setup that enables the student to easily understand & experience processors architecture and performances. The Hardware and software will be described in details in the next slides.

Work Flow

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions & Program for testing Running a pilot group Danny & Shai Lab staff

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions & Program for testing Running a pilot group Danny & Shai Lab staff Part A Part B

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions & Program for testing Running a pilot group Danny & Shai Lab staff

The basic MIPS architecture The purpose of the below MIPS is to use as a basis for improvements during the experiment. The improvements will be: Pipelining, Branch prediction & Cache the MIPS will be multi cycle.(3-4 cycles) Instruction & data memory will be multi cycle. When instruction is not available, the processor will be in idle. When performing load word operation from the data memory the processor will be in idle until data is retrieved. The system will have Ability to control the clock frequency. MIPS Performance counter will be linked to a C++ environment.

MIPS Components Xilinx BRAM (Verilog) BSV Wrapper Xilinx BRAM (Verilog) BSV Wrapper BlueSpec S C E M I - PCIe -Clk control Communicating with a c++ environment using generic interface BlueSpec

Part A Part B Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions Program for testing Running a pilot group Danny & Shai Lab staff

Performance questions What are the performances we would like to capture ? What is the structure and what are the units we would like to display the performance details with ? Which program to run for the above performance analyzing ? Will it be a single program or several programs ? …

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions Program for testing Running a pilot group Danny & Shai Lab staff Part A Part B

Test sync & conclusions Running the test program. Checking the performance counters. Modifying the simulation environment appereance.

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions Program for testing Running a pilot group Danny & Shai Lab staff Part A Part B

MIPS improvements Pipeline. Cache. Branch prediction. Discussion: How we would like the students to implement the improvements ? - Will he get a ready made Bit streams ? - Will he get a partial implemented code and will complete the code by himself ?

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions Program for testing Running a pilot group Danny & Shai Lab staff Part A Part B

Experiment flow A-Z experiment booklet. Preparation report. complementary knowledge references. Video ? (By Derek Chiou)

Project Characterization Multi cycle MIPS hardware Adjusting the experiment flow Test, Sync & Conclusions Designing the MIPS improvements performance questions Program for testing Running a pilot group Danny & Shai Lab staff Part A Part B

Pilot group We implement Meow prediction ?

Focus on us Shai & Danny

Project Goals Part A: Creating the Laboratory working environment. 1. Hardware environment – RTL, interface to outer world ( pci - express ), Xilinx utilities. 2. Software environment – simulation of a MIPS processor on the above RTL using simplified commands, the same environment will be used for emulation and simulation. Part B: Designing 3 different MIPS improvements which will work on the same environment, DFT, performance counters. We will implement In separate: 1. Pipeline 2. Branch prediction. 3. Cash

Hardware environment The MIPS Processor will be implemented on a Xilinx Virtex-5 FPGA development board. DUT integration with a PC will be implemented using a PCIe bus. untimed TB vs. cycle accurate DUT. Bit stream loading through a Jtag connection. Lab students will run the experiment on a Linux O.S using executable SCEMI commands ( supported by Bluespec environment).

Hardware PCIe cable Virtex 5 FPGA Linux Environment

Software environment Simulation: Simple “Build” scripts will execute a complete simulation flow. (compile, link, burn, code loader, simulate, results view) TCP protocol replaces PCIe bus in simulation. simulation & emulation will have the same structure & units of results for all the tested processors.

Software environment At the background: The MIPS processor will be written using BlueSpec HDL. Memory blocks using Xilinx native BRAM Bluespec modules. SCEMI: a generic protocol will connect between a C++ simulation environment to the DUT. Ability to access MIPS Imemory and Dmemory (R/W) from the PC environment. NOTE: BlueSpec & PlanAhead (Xilinx compiler) versions need to be pre determined. Any changes in the compilers versions will probably cause problems.

Declarations We set software versions to be: PlanAhed Version 14.1, BlueSpec D redhat Linux running tcsh shell

Discussion

Gantt Chart Part-A Mar Feb- Mar Feb Jan- Feb Jan Finalizing Characteristic Presentation Part A submission Simulating the MIPS on a real- time environment using SCEMI and a test code. Integrating the memory with the MIPS processor & creating a C++ Test Bench. Creating and simulating Memory wrappers (I-memory and D- memory) Creating a SCEMI top for the MIPS processor (Including a program loader) Done preparing a dedicated server for A PCIe connection Running a Simple SCEMI environment from C++ to FPGA GCD Testing & conclusions Part-A Staff period to prepare the first part – Program for testing & data inquiry from the MIPS PNR Part -B