Technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen1 The Multi Micro Processor Eindhoven.

Slides:



Advertisements
Similar presentations
VHDL Design of Multifunctional RISC Processor on FPGA
Advertisements

Embedded System, A Brief Introduction
Simulation of Feedback Scheduling Dan Henriksson, Anton Cervin and Karl-Erik Årzén Department of Automatic Control.
Computer Architecture
purpose Search : automation methods for device driver development in IP-based embedded systems in order to achieve high reliability, productivity, reusability.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Memory Management and Protection Part 3:Virtual memory, mode switching,
Threads, SMP, and Microkernels
Technische universiteit eindhoven 4 September 2002www.ics.ele.tue.nl/~btheelen1 B.D. Theelen Architecture Design of a Scalable Single-Chip Multi-Processor.
A Sample RTOS Presentation 4 Group A4: Sean Hudson, Manasi Kapadia Syeda Taib.
Yaron Doweck Yael Einziger Supervisor: Mike Sumszyk Spring 2011 Semester Project.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
1/1/ /e/e eindhoven university of technology Microprocessor Design Course 5Z008 Dr.ir. A.C. (Ad) Verschueren Eindhoven University of Technology Section.
- the new generation realtime operating system For embedded and fault tolerant applications.
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Introduction Part 3: Input/output and co-processors dr.ir. A.C. Verschueren.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 2: Programmable I/O and Multiprocessors.
Figure 2.8 Compiler phases Compiling. Figure 2.9 Object module Linking.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
Active Messages: a Mechanism for Integrated Communication and Computation von Eicken et. al. Brian Kazian CS258 Spring 2008.
Processes 1 CS502 Spring 2006 Processes Week 2 – CS 502.
Chapter 8 Operating System Support
Threads CSCI 444/544 Operating Systems Fall 2008.
Figure 1.1 Interaction between applications and the operating system.
1 Operating Systems Ch An Overview. Architecture of Computer Hardware and Systems Software Irv Englander, John Wiley, Bare Bones Computer.
A. Frank - P. Weisberg Operating Systems Introduction to Tasks/Threads.
What is Concurrent Programming? Maram Bani Younes.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
ECE 526 – Network Processing Systems Design Network Processor Architecture and Scalability Chapter 13,14: D. E. Comer.
MICROPROCESSOR INPUT/OUTPUT
Fall 2000M.B. Ibáñez Lecture 01 Introduction What is an Operating System? The Evolution of Operating Systems Course Outline.
Operating Systems. Definition An operating system is a collection of programs that manage the resources of the system, and provides a interface between.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
2003 Dominic Swayne1 Microsoft Disk Operating System and PC DOS CS-550-1: Operating Systems Fall 2003 Dominic Swayne.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
XStream: Rapid Generation of Custom Processors for ASIC Designs Binu Mathew * ASIC: Application Specific Integrated Circuit.
Interrupt driven I/O. MIPS RISC Exception Mechanism The processor operates in The processor operates in user mode user mode kernel mode kernel mode Access.
Operating System Structure A key concept of operating systems is multiprogramming. –Goal of multiprogramming is to efficiently utilize all of the computing.
ECGR-6185 µC/OS II Nayana Rao University of North Carolina at Charlotte.
1 VxWorks 5.4 Group A3: Wafa’ Jaffal Kathryn Bean.
CSC190 Introduction to Computing Operating Systems and Utility Programs.
Interrupt driven I/O Computer Organization and Assembly Language: Module 12.
بسم الله الرحمن الرحيم MEMORY AND I/O.
Operating Systems Unit 2: – Process Context switch Interrupt Interprocess communication – Thread Thread models Operating Systems.
Parallel Computing Presented by Justin Reschke
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
Interrupts and Exception Handling. Execution We are quite aware of the Fetch, Execute process of the control unit of the CPU –Fetch and instruction as.
Page 1 2P13 Week 1. Page 2 Page 3 Page 4 Page 5.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
1.3 Operating system services An operating system provide services to programs and to the users of the program. It provides an environment for the execution.
Implementing RISC Multi Core Processor Using HLS Language - BLUESPEC Liam Wigdor Instructor Mony Orbach Shirel Josef Semesterial Winter 2013.
Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir. A.C. Verschueren Eindhoven University of Technology Section of Digital.
Overview Parallel Processing Pipelining
Processes and threads.
Process Synchronization and Communication
Real-time Software Design
Introduction to cosynthesis Rabi Mahapatra CSCE617
Multiprocessor Introduction and Characteristics of Multiprocessor
Main Memory Background Swapping Contiguous Allocation Paging
Operating Systems Chapter 5: Input/Output Management
A High Performance SoC: PkunityTM
Lecture Topics: 11/1 General Operating System Concepts Processes
Introduction to Operating Systems
Operating System Introduction.
CSE 471 Autumn 1998 Virtual memory
Chapter 2 Operating System Overview
CS Introduction to Operating Systems
Presentation transcript:

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen1 The Multi Micro Processor Eindhoven University of Technology Section of Information and Communication Systems

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen2 Contents Introduction System architecture –O.S. in hardware: the ‘Task Control Unit’ Multi processing –Inter-MμP communication –External event handling Project status

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen3 Introduction: what is it ? MμP = Scalable multi processor architecture implemented on a single chip for real-time (embedded) systems

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen4 Features True (shared memory) multi processing –Scalable: number of processors is not fixed –Customisable: number and types of coprocessors varies On-chip operating system kernel –Priority based multitasking on multiprocessor –External event handling instead of interrupts –Transparent inter-MμP communication

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen5 ‘Global Processing Unit’ = (shared) co-processor ‘Local Processing Unit’ = RISC core GPU m.y FPU GPU m.y FPU GPU 2.x LSU GPU 2.x LSU GPU m.1 FPU GPU m.1 FPU GPU 1 TCU GPU 1 TCU GPU 2.1 LSU GPU 2.1 LSU 1 LPU 1 LPU 2 LPU 2 LPU n LPU n LPU Function Switch Result Switch System architecture L1 I$ Control Space Event Inputs Inter-M  P Network L2 I$ Arbiter External Memory MultiPort D$ Register D$ ‘Task Control Unit’ = O.S. kernel in HW Task assignments

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen6 TCU Network Management TCU Core The ‘Task Control Unit’ Executive Function Switch Function Rx Result Switch Result Tx LPUs Task Scheduler Task Scheduler Sorted Task List Sorted Task List Control Space Event Inputs Event Detect Link Network Task Admin Timers Switch MultiPort D$ Arbiter Resource Admin Resource Data Current idea: T9000 look-alike

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen7 Multi processing LPU’s run multiple tasks in parallel Instruction set is ‘open ended’ –Only 1/16 of instruction space executed by LPU’s –Remainder split over up to 15 different GPU types –Each GPU type determines actual use of ‘opcode’ bits Function switch routes on GPU type –Non-blocking, task priority based, fair Result switch routes on task number –Non-blocking, FCFS

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen8 Inter-MμP communication Each task and communication resource has a local # –‘Communication resource’ = semaphore, pipe or mailbox Each MμP has its own ‘network address’ –All elements addressed with network address and local # Communication is completely transparent –Every task can use every resource on the network –TCU shields network from tasks (no direct access) –To transfer large blocks of data, use a pipe !

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen9 External event handling Interrupts and software O.S. kernel are absent here ! TCU checks ‘external event’ inputs for activity –Sends specified number of ‘units’ to specified counting semaphore upon detection of event input activity –Tasks can wait at semaphore for units generated by external events Semaphore to send units to (or wait at) need not be in the M  P where the task resides !

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen10 Research Topics How to configure a MμP for an application domain? What limits configuring a MμP? What performance bottlenecks can be expected? What performance will a specific MμP configuration have? How should an efficient hardware OS kernel look like? How to incorporate (automatic) testability in a highly parametrisable development procedure? How can compilers cope with the flexibility in a MμP system? Ultimate goal: Tools for industry, which enable fast synthesis by automatically mapping specific performance requirements of an application domain onto an efficient MμP configuration

technische universiteit eindhoven November 2000Ad Verschueren and Bart Theelen11 Project status Currently, a project run by students ! –Modular by nature, easy to split the workload Partial designs of most elements present or coming –Instruction set of LPU and interfaces more or less fixed –Functionality of TCU under investigation Uses Interactive Design and Simulation System –Mixed level: RTL and algorithmic level blocks –Want to have complete algorithmic level model ASAP –From there to RTL and (automatically) VHDL/Verilog Questions ?