Implementation of a satellite on a Multi-Core System A project by: Daniel Aranki Mohammad Nassar Supervised by: Mony Orbach Winter 2009 Characterization.

Slides:



Advertisements
Similar presentations
1 Chapter 1 Why Parallel Computing? An Introduction to Parallel Programming Peter Pacheco.
Advertisements

CSC Multiprocessor Programming, Spring, 2011 Outline for Chapter 6 – Task Execution Dr. Dale E. Parson, week 7.
Spark: Cluster Computing with Working Sets
MULTICORE, PARALLELISM, AND MULTITHREADING By: Eric Boren, Charles Noneman, and Kristen Janick.
Reference: Message Passing Fundamentals.
Multicore experiment: Plurality Hypercore Processor Performed by: Anton Fulman Ze’ev Zilberman Supervised by: Mony Orbach Project’s poster Winter 2008.
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
1 Introduction to computers Overview l · Grading Policy »Cheating Rules (serious concern) »Examinations and Fixation of Timings »Quizzes »Homework Assignments.
Multicore experiment: Plurality Hypercore Processor Performed by: Anton Fulman Ze’ev Zilberman Supervised by: Mony Orbach Final presentation Winter 2008.
Multicore experiment: Plurality Hypercore Processor Performed by: Anton Fulman Ze’ev Zilberman Supervised by: Mony Orbach Characterization presentation.
By- Jaideep Moses, Ravi Iyer , Ramesh Illikkal and
Computer Processor Ruchelle Vincent Jhordaine Lindsay-Butler.
Alon Horn and Oren Ierushalmi Supervised by Mony Orbach Winter 2010 Characterization Presentation Implementation of an Engine Control Unit over Many-Core.

Out-of-Order OpenRISC 2 semesters project Semester A: Implementation of OpenRISC on XUPV5 board Final A Presentation By: Vova Menis-Lurie Sonia Gershkovich.
Home controlling system based on Galileo Final Semester Presentation Started at: Winter 2015 Project supervised by: Mony Orbach Project performed by: Khalid.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Spring 2009.
Reference: / Parallel Programming Paradigm Yeni Herdiyeni Dept of Computer Science, IPB.
Computer System Architectures Computer System Software
Operating systems CHAPTER 7.
A modern NM registration system capable of sending data to the NMDB Helen Mavromichalaki - Christos Sarlanis NKUA TEAM National & Kapodistrian University.
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.
COLLABORATIVE EXECUTION ENVIRONMENT FOR HETEROGENEOUS PARALLEL SYSTEMS Aleksandar Ili´c, Leonel Sousa 2010 IEEE International Symposium on Parallel & Distributed.
Introduction to Parallel Computing. Serial Computing.
Low Contention Mapping of RT Tasks onto a TilePro 64 Core Processor 1 Background Introduction = why 2 Goal 3 What 4 How 5 Experimental Result 6 Advantage.
 Introduction to Operating System Introduction to Operating System  Types Of An Operating System Types Of An Operating System  Single User Single User.
Alon Horn and Oren Ierushalmi Supervised by Mony Orbach Winter 2010 Final Presentation Implementation of an Engine Control Unit over Many-Core System.
Multi-core systems System Architecture COMP25212 Daniel Goodman Advanced Processor Technologies Group.
“Low-Power, Real-Time Object- Recognition Processors for Mobile Vision Systems”, IEEE Micro Jinwook Oh ; Gyeonghoon Kim ; Injoon Hong ; Junyoung.
Previously Fetch execute cycle Pipelining and others forms of parallelism Basic architecture This week we going to consider further some of the principles.
Software Pipelining for Stream Programs on Resource Constrained Multi-core Architectures IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEM 2012 Authors:
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology Sections 1.5 – 1.11.
المحاضرة الاولى Operating Systems. The general objectives of this decision explain the concepts and the importance of operating systems and development.
Querying Large Databases Rukmini Kaushik. Purpose Research for efficient algorithms and software architectures of query engines.
Operating Systems. Definition An operating system is a collection of programs that manage the resources of the system, and provides a interface between.
Frontiers in Massive Data Analysis Chapter 3.  Difficult to include data from multiple sources  Each organization develops a unique way of representing.
טכניון – מכון טכנולוגי לישראל הפקולטה להנדסת חשמל PowerPC based reliable computer Students:Guy Derry Gil Wiechman Instructor: Isaschar Walter Winter 2003.
Operating System 2 Overview. OPERATING SYSTEM OBJECTIVES AND FUNCTIONS.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Processor Architecture
Computer Network Lab. Korea University Computer Networks Labs Se-Hee Whang.
Operating System 4 THREADS, SMP AND MICROKERNELS.
CS 351/ IT 351 Modeling and Simulation Technologies HPC Architectures Dr. Jim Holten.
4. Performance 4.1 Introduction 4.2 CPU Performance and Its Factors
3/12/2013Computer Engg, IIT(BHU)1 INTRODUCTION-1.
Lecture 27 Multiprocessor Scheduling. Last lecture: VMM Two old problems: CPU virtualization and memory virtualization I/O virtualization Today Issues.
Introduction Computer Organization Spring 1436/37H (2015/16G) Dr. Mohammed Sinky Computer Architecture
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
Introduction Goal: connecting multiple computers to get higher performance – Multiprocessors – Scalability, availability, power efficiency Job-level (process-level)
GPS Computer Program Performed by: Moti Peretz Neta Galil Supervised by: Mony Orbach Spring 2009 Characterization presentation High Speed Digital Systems.
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.
“Temperature-Aware Task Scheduling for Multicore Processors” Masters Thesis Proposal by Myname 1 This slides presents title of the proposed project State.
INTRODUCTION TO WIRELESS SENSOR NETWORKS
Chapter 4: Multithreaded Programming
Microprocessors Personal Computers Embedded Systems Programmable Logic
Software Coherence Management on Non-Coherent-Cache Multicores
Multi-core processors
“Temperature-Aware Task Scheduling for Multicore Processors”
The University of Adelaide, School of Computer Science
CISC (Complex Instruction Set Computer)
Computer Architecture
Foundations of Computer Science
Chapter 4: Threads.
Operating System 4 THREADS, SMP AND MICROKERNELS
Operating System Introduction.
Lecture 2 The Art of Concurrency
Lecture 20 Parallel Programming CSE /27/2019.
Presentation transcript:

Implementation of a satellite on a Multi-Core System A project by: Daniel Aranki Mohammad Nassar Supervised by: Mony Orbach Winter 2009 Characterization presentation 14/12/2008 Single semester Project

Introduction A satellite is an object that consists of a bench of sensors and functions The sensors and functions of a satellite are usually orthogonal A Multi-Core processor can be used to implement a satellite processor Plurality has designed a Multi-Core processor. The Plurality processor has a unique architecture.

Motivation As said earlier, a Multi-Core processor can be a good candidate for implementing a satellite. The satellite system is a real-time system so we need to make sure that every sensor gets a real time service. Old satellite systems was implemented by using one core only, which caused lots of problems like: Real time services Reliability: if the only core was damaged, the whole satellite is locked out Parallel design is different than serial design.

Project Objectives To implement a satellite system simulator on a Multi-core system Understand the needs of a satellite system Real-Time tasks Reliability tasks Learn to think parallel Evaluate some performance results for further comparison

The Plurality processor architecture The cores: 256 RISC SPARC based cores Capable of performing basic arithmetic operations Helper units: One helper unit for each 4 cores The helper unit performs multiplication and division Scheduler: It is responsible to distribute the tasks between the cores with minimal overhead Memory system: The Plurality processor has a shared memory architecture that allows any number of cores to access both data and instruction memory at any cycle

The processor architecture - cont

Plurality programming model Plurality has a programming model of its own which is called Task Oriented Programming (TOP) Two main categories of tasks: Regular tasks Duplicable tasks (Which can be parallelized) The whole task will be described a task map (of the two types) with dependencies between the jobs.

TOP example (WiFi Camera) Init Temperature sensor Camera sensor Send data Cooling system Low Power Duplicable Normal

Tasks Characterization Sensors control Every sensor has a unique requirement. Reliability (Heat sensor, Cosmic rays sensor) Real-Time (Camera, Communication antennas) Each group of processors will run a specific task independently of other processors – Real-Time requirement can be met Reliability is solved by saving several copies of the same data. In case of a mismatch between the copies, a “poll” can be taken (between the copies).

Working environment Plurality has a software simulator of their Multi-Core processor. The editor that is going to be used is the Eclipse editor. Cygwin is a unix emulator under Microsoft Windows.

Alternatives Some alternatives for the Plurality Hyper-Core processor: Rapport’s Kilocore Intel’s x86-64 Core 2 Quad (or Duo) Compatibility issues

Rapport Kilocore processor A very low-power processor Compatibility to Plurality’s HAL: The Rapport Kilocore processor doesn’t have the TOP model. Includes I/O Low scheduling overhead Shared memory Their tools-suite is compatible with Ecplise editor

Timeline Get to know the environment. Done. Implement some simple (existing) parallel algorithm Define the uArchitecture of the system Partition the tasks of the uArchitecture in a parallel way for implementation Mid-term presentation Implementation and testing of the system Final presentation

Gant Chart