Progetto MAIS - WP5 esplorazione di architetture alternative Resoconto delle attività svolte Andrea Pagni STMicroelectronics Advanced System Architectures.

Slides:



Advertisements
Similar presentations
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Advertisements

Using Matrices in Real Life
Chapter 1: The Database Environment
Chapter 1 The Study of Body Function Image PowerPoint
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 4 Computing Platforms.
Processes and Operating Systems
Copyright © 2013 Elsevier Inc. All rights reserved.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 1 Embedded Computing.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 3 CPUs.
T-Engine Middleware Tomas Sanchez Lopez Real-time & Embedded Systems Laboratory
1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
6 Copyright © 2005, Oracle. All rights reserved. Building Applications with Oracle JDeveloper 10g.
17 Copyright © 2005, Oracle. All rights reserved. Deploying Applications by Using Java Web Start.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
1 Processes and Threads Creation and Termination States Usage Implementations.
CPU Structure and Function
Excel Functions. Part 1. Introduction 2 An Excel function is a formula or a procedure that is performed in the Visual Basic environment, outside the.
Integrify 5.0 Tutorial : Creating a New Process
Distributed and Parallel Processing Technology Chapter2. MapReduce
Re-examining Instruction Reuse in Pre-execution Approaches By Sonya R. Wolff Prof. Ronald D. Barnes June 5, 2011.
Intel VTune Yukai Hong Department of Mathematics National Taiwan University July 24, 2008.
1 Peripheral Component Interconnect (PCI). 2 PCI based System.
Configuration management
Chapter 5 : Memory Management
Mehdi Naghavi Spring 1386 Operating Systems Mehdi Naghavi Spring 1386.
Suite Suite 2 TPF Software – Overview Binary Editor Remote Scripts zTREX Add-Ins & Project Integration with Source Control Manager.
Debugging operating systems with time-traveling virtual machines Sam King George Dunlap Peter Chen CoVirt Project, University of Michigan.
Content Overview Virtual Disk Port to Intel platform
Accelerated Linear Algebra Libraries James Wynne III NCCS User Assistance.
INTRODUCTION TO SIMULATION WITH OMNET++ José Daniel García Sánchez ARCOS Group – University Carlos III of Madrid.
Chapter 3 Memory Management
Virtual Memory 1 Computer Organization II © McQuain Virtual Memory Use main memory as a cache for secondary (disk) storage – Managed jointly.
© 2010 VMware Inc. All rights reserved Application-level mobile virtualization Harvey Tuch, Staff Engineer, Mobile Virtualization Platform January 25 th.
Chapter 15 Integrated Services Digital Network ISDN Services History Subscriber Access Layers BISDN WCB/McGraw-Hill The McGraw-Hill Companies, Inc., 1998.
Trap Diagnostic Facility Todays Software Diagnostic Tool with innovative features for the z/OS software developer Arney Computer Systems.
Chapter 11: The X Window System Guide To UNIX Using Linux Third Edition.
IP Multicast Information management 2 Groep T Leuven – Information department 2/14 Agenda •Why IP Multicast ? •Multicast fundamentals •Intradomain.
Operating Systems Operating Systems - Winter 2011 Dr. Melanie Rieback Design and Implementation.
VOORBLAD.
Name Convolutional codes Tomashevich Victor. Name- 2 - Introduction Convolutional codes map information to code bits sequentially by convolving a sequence.
4 Oracle Data Integrator First Project – Simple Transformations: One source, one target 3-1.
COMP1214 Systems & Platforms: Operating Systems Concepts Dr. Yvonne Howard – Rikki Prince – 1.
© 2012 National Heart Foundation of Australia. Slide 2.
Understanding Generalist Practice, 5e, Kirst-Ashman/Hull
Executional Architecture
Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology.
Macromedia Dreamweaver MX 2004 – Design Professional Dreamweaver GETTING STARTED WITH.
25 seconds left…...
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 15 Programming and Languages: Telling the Computer What to Do.
SE-292 High Performance Computing
Execution Cycle. Outline (Brief) Review of MIPS Microarchitecture Execution Cycle Pipelining Big vs. Little Endian-ness CPU Execution Time 1 IF ID EX.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
PSSA Preparation.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
Topics Left Superscalar machines IA64 / EPIC architecture
McGraw-Hill©The McGraw-Hill Companies, Inc., 2001 Chapter 16 Integrated Services Digital Network (ISDN)
Slides Prepared from the CI-Tutor Courses at NCSA By S. Masoud Sadjadi School of Computing and Information Sciences Florida.
Chapter 7 Interupts DMA Channels Context Switching.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Next Generation ISA Itanium / IA-64. Operating Environments IA-32 Protected Mode/Real Mode/Virtual Mode - if supported by the OS IA-64 Instruction Set.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Introduction to Operating Systems Concepts
Computer System Structures
Microarchitecture.
Chapter 2: System Structures
Computer Organization
Presentation transcript:

Progetto MAIS - WP5 esplorazione di architetture alternative Resoconto delle attività svolte Andrea Pagni STMicroelectronics Advanced System Architectures Group Milano, Novembre 2004

Resoconto WP5 2 Topics Part 1: VLIW-SIM Overview. Part 2: VLIW-SIM Performance. Part 3: VLIW-SIM Library. Part 4: Next Steps.

Part 1: VLIW-SIM Overview

Resoconto WP5 4 Part 1: VLIW-SIM Overview Simulation Approach (1-7). Modeled Target Architectures. Supported platforms. Simulation functionalities.

Resoconto WP5 5 Simulation Approach 1/7 Overview s Interpretative Simulation Approach s Simulation Technology based on a set of re-usable sub-blocks s Pipeline modeling s Instruction execution s Memory modeling s Register file management s I/O simulation s Efficient Host Resources Allocation s Target Architecture Description capability (IS, TAD) s Challenging compromise between Speed and Accuracy

Resoconto WP5 6 During simulation, the pipeline is represented as a 3-dimensional space (phase, operation, time): operation means the instructions position in the bundle, phase is the pipelines phase and time is the given time stamp. Simulation Approach 2/7 pipeline modelling

Resoconto WP5 7 Simulation Approach 3/7 Pipeline modelling s The pipeline status is modelled via a two-dimension array: s The first index is the pipeline phase and the second one is the position of a certain instruction in the fetch-packet. s The simulation process is based on two arrays like the one described above, to represent the current and the following pipeline statuses. s At each machine cycle the pipeline status is processed: actions depending on which instructions are at that phase and then the instructions are moved to the next pipeline phase.

Resoconto WP5 8 At each machine cycle the pipeline status is processed Simulation Approach 4/7 pipeline status update

Resoconto WP5 9 Instructions execution is simulated through an Instruction Table which contains the instruction-routine address and the instruction latency value. Simulation Approach 5/7 Instruction execution

Resoconto WP5 10 s The simulation environment is based on the progressive pipeline status updating taking into account the data coherence in memory locations and in the register file. s To support data coherence two Register files have been used: one for the current Register File status and the other one for the following. s Each time an instruction is executed its operands are loaded from the current register file and results are stored in the following. s This allows sequential simulation of parallel instruction execution. Simulation Approach 6/7 register file status update

Resoconto WP5 11 Simulation Approach 7/7 I/O simulation s I/O Target Architecture specific features separated from Simulation kernel s The SYSCALL pseudo- instruction manages the interface between internal I/O instruction (processor side) and File System I/O calls (OS side). s SYSCALL handle also the general Exception Handling s This mechanism is transparent to other simulator modules: Performance and data flow are not influenced if I/O operation are not present. Details

Resoconto WP5 12 Modeled Target Architectures s Multi-cluster Architecture s 4-issue VLIW core s I/D-cache memories s 6-stages pipeline s RISC-like Instruction Set s bit General registers, 8 1-bit special registers ST210TI C62x s 8-issue VLIW core s Optional I-cache memory s 11-stages pipeline s RISC-like Instruction Set s bit General registers TI C64x s 8-issue VLIW core s I/D cache memories s 11-stages pipeline s RISC/SIMD Instruction Set s bit General registers

Resoconto WP5 13 Windows OS (Visual C++): text mode: project file in vliw_sim/vliw_sim graphical mode: project file in vliw_sim/gui/gui Windows OS (Cygwin, gcc): text mode: makefile in vliw_sim/vliw_sim graphical mode (with XWindows on Cygwin) Linux OS (RedHat, gcc): text mode: makefile in vliw_sim/vliw_sim graphical mode: makefile in vliw_sim/gui/gui Sun OS (Solaris, gcc) text mode: makefile in vliw_sim/vliw_sim graphical mode: makefile in vliw_sim/gui/gui vliw_sim bin_loader cache gui/gui instruction_set io_interf memory pipeline profdebug registers vliw_sim vliw_sim_dll Supported Platforms

Resoconto WP5 14 Simulation functionalities Debug Support Step-by-step execution Breakpoint Register & Memory access Pipeline Visibility (instruction & addresses) Profiling Application Code region Profile Statistics extraction for profiled code Simulator Dynamic Library Simulation API SoC simulation facilities Exception Handling simulation Efficient I/O interface simulation

Part 2: VLIW-SIM Performance

Resoconto WP5 16 Part 2: VLIW-SIM Performance Tested Applications. SW apps on ST210. SW apps on TI C62x. SW apps on TI C64x. SW apps on ST210 (1-2).

Resoconto WP5 17 Tested Applications ST210. MPEG-2 Intra Video Encoder (0.2s, 5 frames, 15 Mbit/s). MPEG-1 Layer 2 Audio Encoder (1s, 32KHz 256 kbit/s). MPEG-2 M=3 Video Decoder (1s, 25 frames/s, 15 Mbit/s). MPEG-4 QCIF Video Decoder (1s, 25 frames/s, 512 kbit/s). MPEG-4 QCIF Video Encoder (27 frames, 64 kbit/s, QP=12). H.263+ QCIF Video Encoder (10 frames, No rate-control). G Audio Enc-Dec (20 frames, 8 kHz, 5.3 kbit/s). Automatic Speech Recognition (HMM, 5 words, 8 MEL, 50 active words). TI C62x & C64x. H.263+ Video Enc QCIF (5 frames, No rate-control) G.726 Audio Enc-Dec (10 frames, 8kHz, 32 kbit/s)

Resoconto WP5 18 SW apps on TI-C62x Operation = one syllable (elementary 32-bit RISC instruction)

Resoconto WP5 19 SW apps on TI-C64x Bundle = more syllables (max 8 for TI C6xx, max 4 for ST210) per clock cycle

Resoconto WP5 20 SW apps on ST210 1/3 HP ISS configured with: ignore_non_cacheable_areas TRUE profile_gprof_on FALSE

Resoconto WP5 21 SW apps on ST210 2/3 HP ISS configured with: ignore_non_cacheable_areas TRUE profile_gprof_on FALSE

Resoconto WP5 22 SW apps on ST210 3/3 MOPS = Millions Of Operations Per Sec

Part 3: VLIW-SIM Library

Resoconto WP5 24 Part 3: VLIW-SIM Library VLIW-SIM Library (1-2).

Resoconto WP5 25 VLIW-SIM Library 1/2 The VLIW-SIM can be configured as both stand-alone and dynamic library (DLL). extremely useful to interface VLIW-SIM with other applications (system on chip simulation environment, Graphical User Interface, etc.). The simulator-exported functionalities can be divided into two subgroups: Command Functionalities: used to control the simulation (Run, Stop, Insert/remove breakpoint, Continue, Step, etc.) Status Functionality: used to retrieve the simulator internal status and resource allocation (pipeline status and size, register file content and size, etc.)

Resoconto WP5 26 VLIW-SIM Library 2/2 The simulator DLL exports the following functionalities: Control Functions Load Init Step / Step N / Stall Run Restart Debug Support View simulator status ( Pipeline, Register File, Memory ) Breakpoint Utility functions Code profiling Simulated Program Arguments

Part 4: Next Steps

Resoconto WP5 28 Part 4: Next Steps Where we are. VLIW-SIM Developments.

Resoconto WP5 29 Released version 2.0 and 3.0 of VLIW-SIM. A lot of SW engineering work to improve: Modularity Readibility (doxygen generated documentation) Simulation speed Architectural accuracy: ST210: IPU, DPU, Interrupt Controller, Core Memory Controller, I-cache, D-cache TI C6x: I-cache and D-cache for CPU style, program memory and data memory for DSP style Accurate and not invasive flat profiling (GNU format compatible) Architectural flexible re-configurability Host platform independency Future integration into high level system tools Where we are

Resoconto WP5 30 ST220 accurate modelling Integration inside MaxSim system simulation tools and related experiments VLIW-SIM developments

Fine Domande?