Processor Design. System-on-Chip Computing for ASICs and FPGAs. Edited by. Jari Nurmi Tampere University of Technology Finland

Size: px
Start display at page:

Download "Processor Design. System-on-Chip Computing for ASICs and FPGAs. Edited by. Jari Nurmi Tampere University of Technology Finland"

Transcription

1 Processor Design

2 Processor Design System-on-Chip Computing for ASICs and FPGAs Edited by Jari Nurmi Tampere University

3 A C.I.P. Catalogue record for this book is available from the Library of Congress. ISBN (HB) ISBN (e-book) Published by Springer, P.O. Box 17, 3300 AA Dordrecht, The Netherlands. Printed on acid-free paper All Rights Reserved 2007 Springer No part of this work may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, microfilming, recording or otherwise, without written permission from the Publisher, with the exception of any material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work.

4 To Pirjo, Lauri, Eero, and Santeri

5 Preface When I started my computing career by programming a PDP-11 computer as a freshman in the university in early 1980s, I could not have dreamed that one day I d be able to design a processor. At that time, the freshmen were only allowed to use PDP. Next year I was given the permission to use the famous brand-new VAX-780 computer. Also, my new roommate at the dorm had got one of the first personal computers, a Commodore-64 which we started to explore together. Again, I could not have imagined that hundreds of times the processing power will be available in an everyday embedded device just a quarter of century later. Little by little I delved into the design of digital circuits, and computer architecture. I finally learned my lessons in RISC philosophy when I was teaching computer architecture classes in early 1990s according to the famous groundbreaking book by Hennessy and Patterson. At that time, I had already started to design processors, first some simple configurable filters and then straightforward DSP cores. The story continued in a number of different kinds of design projects purely in academia, as academiaindustry cooperation projects and as commercial developments in industry. For me, this decade has meant the time to be back in academia, where I have taught processor-design courses since A characteristic feature to these courses has been the lack of a good course textbook. I have tried out a few books, and used a scattered set of my own material trying bridge the gaps that I perceived. Year after year I got more annoyed with the absence of a textbook, until, after gaining some editor experience in another book project, I decided that the book needed to be written. I would like to thank my contact person at Springer, Mark de Jongh, who believed in me right from the start, and all the contributors of this book. A big part of the success of this project was that I knew some good people and asked for their contribution. I had worked with many of them previously in the annual International Symposium on System-on-Chip since 1999, without realizing what kind of assets they represented. Thanks also to all the people who used their valuable time to review the book chapters. vii

6 viii Preface I hope that you will find this book to be beneficial to you whether you are a student, engineer, teacher or engineering manager. This book definitely fills the gap that I had recognized, so I hope that we shared the same gap. In Tampere, April 2007 Jari Nurmi

7 Table of Contents List of Contributing Authors...xv 1 Introduction Embedded Computer Architecture Fundamentals...7 Components of (an embedded) computer...7 Architecture organization...12 Ways of parallelism...15 Memory...19 I/O operations and peripherals Beyond the Valley of the Lost Processors: Problems, Fallacies, and Pitfalls in Processor Design...27 Designing a high-level computer instruction-set architecture (ISA) to support a specific language or language domain...28 Use of intermediate ISAs to allow a simple machine to emulate its betters...32 Stack machines...35 Extreme CISC and extreme RISC...39 Very long instruction word (VLIW)...43 Overly aggressive pipelining...45 Unbalanced processor design...47 Omitting pipeline interlocks...50 Non-power-of-2 data-word widths for general-purpose computing...53 Too small an address space...55 Memory segmentation...58 Multithreading...60 Symmetric multiprocessing Processor Design Flow...69 Capturing requirements...69 Instruction coding...74 Exploration of architecture organizations...79 ix

8 x Table of Contents Hardware and software development...80 Software tools and libraries General-Purpose Embedded Processor Cores The COFFEE RISC Example...83 Introduction...83 Implications of RISC design philosophy...84 The COFFEE RISC Core instruction set architecture...86 Software view of the COFFEE RISC Core...88 Hardware view of the COFFEE RISC Core...90 The COFFEE RISC Core pipeline structure...92 The COFFEE RISC Core implementation...95 The COFFEE RISC Core characteristics...97 Conclusions The DSP and Its Impact on Technology Introduction Why a DSP is different The evolving architecture of a DSP What is next in the evolution of the DSP Summary VLIW DSP Processor for High-End Mobile Communication Applications Trends in mobile communication DSP-specific requirements Microarchitectural concepts VLIW and SW programmability a, an application specific adaptable core architecture Benchmarking: kernel versus application benchmarking Design space exploration The complexity of configurability Summary Acknowledgment Customizable Processors and Processor Customization Introduction A benefits analysis of processor customization Using microprocessor cores in SOC design Benefiting from microprocessor extensibility How microprocessor use differs between SOC and board-level design...157

9 Table of Contents xi Tensilica s extensible Xtensa processor core The TIE language Conclusion Run-Time Reconfigurable Processors Embedded microprocessor trends Instruction set metamorphosis Reconfigurable computing Run-time reconfigurable instruction set processors Coarse-grained reconfigurable processors Conclusions Coprocessor Approach to Accelerating Multimedia Applications Need for accelerators Accelerators and different types of parallelism Processor architectures and different approaches to acceleration Requirements of applications for hardware coprocessors Numeric coprocessors: floating-point units Various types of reconfigurable accelerators Milk coprocessor and Butter accelerator Conclusions Designing Soft-Core Processors for FPGAs Configurable processors Challenges of FPGA processor design Opportunities of FPGA processor design FPGA architecture overview FPGA design issues Instruction set issues FPGA processor instruction set comparison Case study Nios II Closing comments Acknowledgments Protocol Processor Design Issues Introduction Domain and application analysis for optimized protocol processing hardware Hardware abstraction to handle the complexity of specifications...262

10 xii Table of Contents Custom design frameworks Design processes The TACO framework for protocol processor design Conclusions Java Co-Processor for Embedded Systems Introduction Generic virtual machine architecture Using hardware systems in virtual machine implementations Structure of the co-processor Current status and future work Summary Stream Multicore Processors Introduction Raw architecture overview Related architectures Raw chip implementation Methodology for performance analysis Stream computation ILP computation Bit-level computation Conclusion Acknowledgments Processor Clock Generation and Distribution Introduction Clock parameters and trends Clock distribution networks Deskew circuits Jitter reduction techniques Low power clock distribution Future directions in clock distribution Summary Asynchronous and Self-Timed Processor Design Motivation for asynchronous design The development of asynchronous processors Asynchronous design styles Features of asynchronous design Summary and conclusions...388

11 Table of Contents xiii 17 Early-Estimation Modeling of Processors Introduction History of early estimation models for computer architectures Adapting models to meet modern processor architectures Architecture modeling Processor logic optimization at 90 nm technology Physical design issues in the era of sub-100 nm technologies System Level Simulations Introduction Simulation and languages TACO configurable SystemC simulator High-level instruction set simulator generator for COFFEE Risc Core Conclusion Programming Tools for Reconfigurable Processors Algorithm development on reconfigurable processors (programming issues) Instruction set extension implementation on a standard compilation tool-chain Bridging the gap from hardware to software through C-described data flow graphs Overview of programming tools for reconfigurable processors An example of algorithm development environment for reconfigurable processors: the Griffy-C approach Software-Based Self-Testing of Embedded Processors Evolution of software-based self-test High-level SBST methodology Case studies experimental results Conclusions and perspective Future Directions in Processor Design References Index...515

12 List of Contributing Authors Anant Agarwal Tapani Ahonen Tampere University Institute of Digital and Computer Systems P.O. Box 553 FI Tampere Saman Amarasinghe James Ball Altera, Inc. 110 Cooper St., Suite 201 Santa Cruz, CA Ian Bratt Claudio Brunelli Tampere University Institute of Digital and Computer Systems P.O. Box 553 FI Tampere Fabio Campi STMicroelectronics FTM/CCDS/Configurable Logics Viale C. Pepoli 3/ Bologna Italy Matt Frank xv

13 xvi List of Contributing Authors Gene Frantz Texas Instruments, Inc Southwest Freeway, MS 701 Stafford, TX Steve Furber School of Computer Science The University of Manchester Oxford Road Manchester M13 9PL United Kingdom Jim Garside School of Computer Science The University of Manchester Oxford Road Manchester M13 9PL United Kingdom Dimitris Gizopoulos University of Piraeus Department of Informatics 80 Karaoli & Dimitriou Street Piraeus Greece Ben Greenwald Henry Hoffmann Jouni Isoaho University of Turku Technology FI Turku Paul Johnson Jason Kim Nektarios Kranitis National and Kapodistrian University of Athens Department of Informatics and Telecommunications Panepistimiopolis, Ilissia 15784, Athens Greece

14 List of Contributing Authors xvii Juha P. Kylliäinen Tampere University Institute of Digital and Computer Systems P.O. Box 553 FI Tampere Walter Lee Steve Leibson Tensilica, Inc Scott Blvd. Santa Clara, CA Johan Lilius Åbo Akademi University Technologies Joukahaisenkatu 3-5 FI Turku Grant Martin Tensilica, Inc Scott Blvd. Santa Clara, CA Jason Eric Miller Claudio Mucci ARCES, University of Bologna Viale C. Pepoli 3/ Bologna Italy Sanna Määttä Tampere University Institute of Digital and Computer Systems P.O. Box 553 FI Tampere Jari Nurmi Tampere University Institute of Digital and Computer Systems P.O. Box 553 FI Tampere Tero Nurmi University of Turku Technology FI Turku

15 xviii List of Contributing Authors Christian Panis Catena Radio Design, B.V. Science Park Eindhoven Ekkersrijt EG Son en Breugel The Netherlands Antonis Paschalis National and Kapodistrian University of Athens Department of Informatics and Telecommunications Panepistimiopolis, Ilissia 15784, Athens Greece Juha Plosila University of Turku Technology FI Turku James Psota Rodric Rabbah Stefan Rusu Intel Corporation 2200 Mission College Blvd., M/S SC Santa Clara, CA Arvind Saraf Nathan Shnidman Volker Strumpen Tero Säntti University of Turku Technology FI Turku

16 List of Contributing Authors xix Michael Bedford Taylor Dragos Truscan Åbo Akademi University Technologies Joukahaisenkatu 3-5 FI Turku Joonas Tyystjärvi University of Turku Technology FI Turku David Wentzlaff Tomi Westerlund University of Turku Technology FI Turku George Xenoulis University of Piraeus Department of Informatics 80 Karaoli & Dimitriou Street Piraeus Greece Seppo Virtanen University of Turku Technology FI Turku

Challenges of MPSOC Communication, Computation and Design Flow

Challenges of MPSOC Communication, Computation and Design Flow Challenges of MPSOC Communication, Computation and Design Flow Prof. Jari Nurmi Tampere University of Technology P.O.Box 553, FIN-33101 Tampere FINLAND Email: jari.nurmi@tut.fi Outline Ways to address

More information

TKT-3526 Processor Design ECTS credits Periods III & IV (weeks 1-8 & 10-18) Lectures & Seminars: Thursdays 12-14

TKT-3526 Processor Design ECTS credits Periods III & IV (weeks 1-8 & 10-18) Lectures & Seminars: Thursdays 12-14 Processor Design 2011 5 ECTS credits Periods III & IV (weeks 1-8 & 10-18) Lectures & Seminars: Thursdays 12-14 Prerequisities - Mandatory TKT-3206 Computer Architecture I (Tietokonetekniikka I) TKT-1110

More information

UML for SOC Design GRANT MARTIN WOLFGANG MÜLLER. Edited by. Tensilica Inc., Santa Clara, CA, USA. and. University of Paderborn, Germany

UML for SOC Design GRANT MARTIN WOLFGANG MÜLLER. Edited by. Tensilica Inc., Santa Clara, CA, USA. and. University of Paderborn, Germany UML FOR SOC DESIGN UML for SOC Design Edited by GRANT MARTIN Tensilica Inc., Santa Clara, CA, USA and WOLFGANG MÜLLER University of Paderborn, Germany A C.I.P. Catalogue record for this book is available

More information

PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE

PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE Yau-Tsun Steven Li Monterey Design Systems, Inc. Sharad Malik Princeton University ~. " SPRINGER

More information

Algorithm Collections for Digital Signal Processing Applications Using Matlab

Algorithm Collections for Digital Signal Processing Applications Using Matlab Algorithm Collections for Digital Signal Processing Applications Using Matlab Algorithm Collections for Digital Signal Processing Applications Using Matlab E.S. Gopi National Institute of Technology, Tiruchi,

More information

COPROCESSOR APPROACH TO ACCELERATING MULTIMEDIA APPLICATION [CLAUDIO BRUNELLI, JARI NURMI ] Processor Design

COPROCESSOR APPROACH TO ACCELERATING MULTIMEDIA APPLICATION [CLAUDIO BRUNELLI, JARI NURMI ] Processor Design COPROCESSOR APPROACH TO ACCELERATING MULTIMEDIA APPLICATION [CLAUDIO BRUNELLI, JARI NURMI ] Processor Design Lecture Objectives Background Need for Accelerator Accelerators and different type of parallelizm

More information

Computer Architecture A Quantitative Approach

Computer Architecture A Quantitative Approach Computer Architecture A Quantitative Approach Third Edition John L. Hennessy Stanford University David A. Patterson University of California at Berkeley With Contributions by David Goldberg Xerox Palo

More information

MIT Laboratory for Computer Science

MIT Laboratory for Computer Science The Raw Processor A Scalable 32 bit Fabric for General Purpose and Embedded Computing Michael Taylor, Jason Kim, Jason Miller, Fae Ghodrat, Ben Greenwald, Paul Johnson,Walter Lee, Albert Ma, Nathan Shnidman,

More information

Design methodology for multi processor systems design on regular platforms

Design methodology for multi processor systems design on regular platforms Design methodology for multi processor systems design on regular platforms Ph.D in Electronics, Computer Science and Telecommunications Ph.D Student: Davide Rossi Ph.D Tutor: Prof. Roberto Guerrieri Outline

More information

RETARGETABLE CODE GENERATION FOR DIGITAL SIGNAL PROCESSORS

RETARGETABLE CODE GENERATION FOR DIGITAL SIGNAL PROCESSORS RETARGETABLE CODE GENERATION FOR DIGITAL SIGNAL PROCESSORS RETARGETABLE CODE GENERATION FOR DIGITAL SIGNAL PROCESSORS Rainer LEUPERS University of Dortmund Department of Computer Science Dortmund, Germany

More information

MIT Laboratory for Computer Science

MIT Laboratory for Computer Science The Raw Processor A Scalable 32 bit Fabric for General Purpose and Embedded Computing Michael Taylor, Jason Kim, Jason Miller, Fae Ghodrat, Ben Greenwald, Paul Johnson,Walter Lee, Albert Ma, Nathan Shnidman,

More information

Creating a Scalable Microprocessor:

Creating a Scalable Microprocessor: Creating a Scalable Microprocessor: A 16-issue Multiple-Program-Counter Microprocessor With Point-to-Point Scalar Operand Network Michael Bedford Taylor J. Kim, J. Miller, D. Wentzlaff, F. Ghodrat, B.

More information

Application-Specific Mesh-based Heterogeneous FPGA Architectures

Application-Specific Mesh-based Heterogeneous FPGA Architectures Application-Specific Mesh-based Heterogeneous FPGA Architectures Husain Parvez H abib Mehrez Application-Specific Mesh-based Heterogeneous FPGA Architectures Husain Parvez Habib Mehrez Université Pierre

More information

Hardware Acceleration of EDA Algorithms

Hardware Acceleration of EDA Algorithms Hardware Acceleration of EDA Algorithms Kanupriya Gulati Sunil P. Khatri Hardware Acceleration of EDA Algorithms Custom ICs, FPGAs and GPUs 123 Kanupriya Gulati 109 Branchwood Trl Coppell TX 75019 USA

More information

Teaching Computer Architecture with FPGA Soft Processors

Teaching Computer Architecture with FPGA Soft Processors Teaching Computer Architecture with FPGA Soft Processors Dr. Andrew Strelzoff 1 Abstract Computer Architecture has traditionally been taught to Computer Science students using simulation. Students develop

More information

PREFACE. Changes to the SOPC Edition

PREFACE. Changes to the SOPC Edition PREFACE Changes to the SOPC Edition Rapid Prototyping of Digital Systems provides an exciting and challenging laboratory component for undergraduate digital logic and computer design courses using FPGAs

More information

Constructing Virtual Architectures on Tiled Processors. David Wentzlaff Anant Agarwal MIT

Constructing Virtual Architectures on Tiled Processors. David Wentzlaff Anant Agarwal MIT Constructing Virtual Architectures on Tiled Processors David Wentzlaff Anant Agarwal MIT 1 Emulators and JITs for Multi-Core David Wentzlaff Anant Agarwal MIT 2 Why Multi-Core? 3 Why Multi-Core? Future

More information

Integrated Circuit Design Using. Open Cores and Design Tools. Martha SaloméLópez de la Fuente

Integrated Circuit Design Using. Open Cores and Design Tools. Martha SaloméLópez de la Fuente Integrated Circuit Design Using Open Cores and Design Tools Martha SaloméLópez de la Fuente Science Publishing Group 548 Fashion Avenue New York, NY 10018 www.sciencepublishinggroup.com Published by Science

More information

StreamIt on Fleet. Amir Kamil Computer Science Division, University of California, Berkeley UCB-AK06.

StreamIt on Fleet. Amir Kamil Computer Science Division, University of California, Berkeley UCB-AK06. StreamIt on Fleet Amir Kamil Computer Science Division, University of California, Berkeley kamil@cs.berkeley.edu UCB-AK06 July 16, 2008 1 Introduction StreamIt [1] is a high-level programming language

More information

Compiling Esterel. Dumitru Potop-Butucaru. Stephen A. Edwards Gérard Berry

Compiling Esterel. Dumitru Potop-Butucaru. Stephen A. Edwards Gérard Berry Compiling Esterel Compiling Esterel Dumitru Potop-Butucaru Stephen A. Edwards Gérard Berry A C.I.P. Catalogue record for this book is available from the Library of Congress. ISBN 978-0-387-70626-9 (HB)

More information

Multithreading: Exploiting Thread-Level Parallelism within a Processor

Multithreading: Exploiting Thread-Level Parallelism within a Processor Multithreading: Exploiting Thread-Level Parallelism within a Processor Instruction-Level Parallelism (ILP): What we ve seen so far Wrap-up on multiple issue machines Beyond ILP Multithreading Advanced

More information

Philip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition

Philip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition FPGA Design Philip Andrew Simpson FPGA Design Best Practices for Team-based Reuse Second Edition Philip Andrew Simpson San Jose, CA, USA ISBN 978-3-319-17923-0 DOI 10.1007/978-3-319-17924-7 ISBN 978-3-319-17924-7

More information

CSE 141: Computer Architecture. Professor: Michael Taylor. UCSD Department of Computer Science & Engineering

CSE 141: Computer Architecture. Professor: Michael Taylor. UCSD Department of Computer Science & Engineering CSE 141: Computer 0 Architecture Professor: Michael Taylor RF UCSD Department of Computer Science & Engineering Computer Architecture from 10,000 feet foo(int x) {.. } Class of application Physics Computer

More information

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

URL:   Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture 01 1 EE 4720 Computer Architecture 01 1 URL: https://www.ece.lsu.edu/ee4720/ RSS: https://www.ece.lsu.edu/ee4720/rss home.xml Offered by: David M. Koppelman 3316R P. F. Taylor Hall, 578-5482, koppel@ece.lsu.edu,

More information

Instruction Set Architecture

Instruction Set Architecture Instruction Set Architecture Instructor: Preetam Ghosh Preetam.ghosh@usm.edu CSC 626/726 Preetam Ghosh Language HLL : High Level Language Program written by Programming language like C, C++, Java. Sentence

More information

Video Traces for Network Performance Evaluation

Video Traces for Network Performance Evaluation Video Traces for Network Performance Evaluation A Comprehensive Overview and Guide on Video Traces and Their Utilization in Networking Research by PATRICK SEELING Arizona State University, AZ, U.S.A. FRANK

More information

Algorithms and Parallel Computing

Algorithms and Parallel Computing Algorithms and Parallel Computing Algorithms and Parallel Computing Fayez Gebali University of Victoria, Victoria, BC A John Wiley & Sons, Inc., Publication Copyright 2011 by John Wiley & Sons, Inc. All

More information

COFFEE A Core for Free

COFFEE A Core for Free COFFEE A Core for Free Juha Kylliäinen, Jari Nurmi and Mika Kuulusa Tampere University of Technology, Finland juha.p.kylliainen@tut.fi Abstract This paper presents design and implementation of an open

More information

Computer Organization and Design

Computer Organization and Design Computer Organization and Design THE H A R D W A R E / S O F T W A R E I N T E R F A C E John L. Hennessy Stanford University David A. Patterson University of California at Berkeley With a contribution

More information

Introduction to reconfigurable systems

Introduction to reconfigurable systems Introduction to reconfigurable systems Reconfigurable system (RS)= any system whose sub-system configurations can be changed or modified after fabrication Reconfigurable computing (RC) is commonly used

More information

Multi processor systems with configurable hardware acceleration

Multi processor systems with configurable hardware acceleration Multi processor systems with configurable hardware acceleration Ph.D in Electronics, Computer Science and Telecommunications Ph.D Student: Davide Rossi Ph.D Tutor: Prof. Roberto Guerrieri Outline Motivations

More information

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

URL:   Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture 01 1 EE 4720 Computer Architecture 01 1 URL: http://www.ece.lsu.edu/ee4720/ RSS: http://www.ece.lsu.edu/ee4720/rss home.xml Offered by: David M. Koppelman 345 ERAD, 578-5482, koppel@ece.lsu.edu, http://www.ece.lsu.edu/koppel

More information

George Grätzer. Practical L A TEX

George Grätzer. Practical L A TEX Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN

More information

Microprocessor Theory

Microprocessor Theory Microprocessor Theory and Applications with 68000/68020 and Pentium M. RAFIQUZZAMAN, Ph.D. Professor California State Polytechnic University Pomona, California and President Rafi Systems, Inc. WILEY A

More information

Towards a Self-Reconfigurable Embedded Processor Architecture

Towards a Self-Reconfigurable Embedded Processor Architecture Towards a Self-Reconfigurable Embedded Processor Architecture Shady O. Agwa, Hany H. Ahmad, and Awad I. Saleh Abstract Embedded processors with fixed architecture have disadvantages: they are neither reusable

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science Series editors Stan Zdonik, Brown University, Providence, Rhode Island, USA Shashi Shekhar, University of Minnesota, Minneapolis, Minnesota, USA Xindong Wu, University

More information

Guide to RISC Processors

Guide to RISC Processors Guide to RISC Processors Sivarama P. Dandamudi Guide to RISC Processors for Programmers and Engineers Sivarama P. Dandamudi School of Computer Science Carleton University Ottawa, ON K1S 5B6 Canada sivarama@scs.carleton.ca

More information

A Practical Introduction to Hardware/Software Codesign

A Practical Introduction to Hardware/Software Codesign A Practical Introduction to Hardware/Software Codesign Patrick R. Schaumont A Practical Introduction to Hardware/Software Codesign 123 Dr. Patrick R. Schaumont Virginia Tech Bradley Dept. Electrical &

More information

TECHNICAL TRANSLATION

TECHNICAL TRANSLATION TECHNICAL TRANSLATION Technical Translation Usability Strategies for Translating Technical Documentation JODY BYRNE University of Sheffield, UK A C.I.P. Catalogue record for this book is available from

More information

Ten Reasons to Optimize a Processor

Ten Reasons to Optimize a Processor By Neil Robinson SoC designs today require application-specific logic that meets exacting design requirements, yet is flexible enough to adjust to evolving industry standards. Optimizing your processor

More information

EMBEDDED SYSTEMS: Jonathan W. Valvano INTRODUCTION TO THE MSP432 MICROCONTROLLER. Volume 1 First Edition June 2015

EMBEDDED SYSTEMS: Jonathan W. Valvano INTRODUCTION TO THE MSP432 MICROCONTROLLER. Volume 1 First Edition June 2015 EMBEDDED SYSTEMS: INTRODUCTION TO THE MSP432 MICROCONTROLLER Volume 1 First Edition June 2015 Jonathan W. Valvano ii Jonathan Valvano First edition 3 rd printing June 2015 The true engineering experience

More information

Seppo Virtanen. A Framework for Rapid Design and Evaluation of Protocol Processors. Turku Centre for Computer Science

Seppo Virtanen. A Framework for Rapid Design and Evaluation of Protocol Processors. Turku Centre for Computer Science Seppo Virtanen A Framework for Rapid Design and Evaluation of Protocol Processors Turku Centre for Computer Science TUCS Dissertations No 55, September 2004 A Framework for Rapid Design and Evaluation

More information

The Internet of Things

The Internet of Things The Internet of Things The Internet of Things Connecting Objects to the Web Edited by Hakima Chaouchi First published 2010 in Great Britain and the United States by ISTE Ltd and John Wiley & Sons, Inc.

More information

ARCHITECTURE AND CAD FOR DEEP-SUBMICRON FPGAs

ARCHITECTURE AND CAD FOR DEEP-SUBMICRON FPGAs ARCHITECTURE AND CAD FOR DEEP-SUBMICRON FPGAs THE KLUWER INTERNATIONAL SERIES IN ENGINEERING AND COMPUTER SCIENCE ARCHITECTURE AND CAD FOR DEEP-SUBMICRON FPGAs Vaughn Betz Jonathan Rose Alexander Marquardt

More information

Fundamentals of Operating Systems. Fifth Edition

Fundamentals of Operating Systems. Fifth Edition Fundamentals of Operating Systems Fifth Edition Fundamentals of Operating Systems A.M. Lister University of Queensland R. D. Eager University of Kent at Canterbury Fifth Edition Springer Science+Business

More information

Computing with Memory for Energy-Efficient Robust Systems

Computing with Memory for Energy-Efficient Robust Systems Computing with Memory for Energy-Efficient Robust Systems Somnath Paul Swarup Bhunia Computing with Memory for Energy-Efficient Robust Systems 123 Somnath Paul Intel Labs Hillsboro, OR, USA Swarup Bhunia

More information

M (~ Computer Organization and Design ELSEVIER. David A. Patterson. John L. Hennessy. University of California, Berkeley. Stanford University

M (~ Computer Organization and Design ELSEVIER. David A. Patterson. John L. Hennessy. University of California, Berkeley. Stanford University T H I R D EDITION REVISED Computer Organization and Design THE HARDWARE/SOFTWARE INTERFACE David A. Patterson University of California, Berkeley John L. Hennessy Stanford University With contributions

More information

Computer Architecture

Computer Architecture Informatics 3 Computer Architecture Dr. Vijay Nagarajan Institute for Computing Systems Architecture, School of Informatics University of Edinburgh (thanks to Prof. Nigel Topham) General Information Instructor

More information

On-Chip Instrumentation

On-Chip Instrumentation On-Chip Instrumentation Neal Stollon On-Chip Instrumentation Design and Debug for Systems on Chip Neal Stollon HDL Dynamics, Dallas TX, USA neals@hdldynamics.com ARM9, Coresight, ETM, ETM9, MMD are trademarks

More information

INFORMATION RETRIEVAL SYSTEMS: Theory and Implementation

INFORMATION RETRIEVAL SYSTEMS: Theory and Implementation INFORMATION RETRIEVAL SYSTEMS: Theory and Implementation THE KLUWER INTERNATIONAL SERIES ON INFORMATION RETRIEVAL Series Editor W. Bruce Croft University of Massachusetts Amherst, MA 01003 Also in the

More information

Sample Copy. Not For Distribution.

Sample Copy. Not For Distribution. Microprocessor 8085 i Publishing-in-support-of, EDUCREATION PUBLISHING RZ 94, Sector - 6, Dwarka, New Delhi - 110075 Shubham Vihar, Mangla, Bilaspur, Chhattisgarh - 495001 Website: www.educreation.in Copyright,

More information

Inside Relational Databases with Examples in Access

Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Mark Whitehorn and Bill Marklyn 123 Mark Whitehorn Applied Computing Division, University of Dundee,

More information

Advanced Computer Architecture

Advanced Computer Architecture Advanced Computer Architecture Chapter 1 Introduction into the Sequential and Pipeline Instruction Execution Martin Milata What is a Processors Architecture Instruction Set Architecture (ISA) Describes

More information

SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY

SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY Daniel D. Gajski Jianwen Zhu Rainer Dömer Andreas Gerstlauer Shuqing Zhao University of California, Irvine SPRINGER

More information

Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming Nasser Kehtarnavaz

Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming Nasser Kehtarnavaz Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming Nasser Kehtarnavaz Digital Signal Processing System Design: LabVIEW-Based Hybrid Programming by Nasser Kehtarnavaz University

More information

Robust SRAM Designs and Analysis

Robust SRAM Designs and Analysis Robust SRAM Designs and Analysis Jawar Singh Saraju P. Mohanty Dhiraj K. Pradhan Robust SRAM Designs and Analysis 123 Jawar Singh Indian Institute of Information Technology Design and Manufacturing Dumna

More information

Pa-risc 1.1 Architecture And Instruction Set >>>CLICK HERE<<<

Pa-risc 1.1 Architecture And Instruction Set >>>CLICK HERE<<< Pa-risc 1.1 Architecture And Instruction Set Reference Manual 1 Rationale. 1.1 Motivation IBM 801 2), PA-Risc 4) and Monads 19), consist of one entry per physical. page frame PA-RISC 1.1 Architecture and

More information

A Configurable Multi-Ported Register File Architecture for Soft Processor Cores

A Configurable Multi-Ported Register File Architecture for Soft Processor Cores A Configurable Multi-Ported Register File Architecture for Soft Processor Cores Mazen A. R. Saghir and Rawan Naous Department of Electrical and Computer Engineering American University of Beirut P.O. Box

More information

Computers as Components Principles of Embedded Computing System Design

Computers as Components Principles of Embedded Computing System Design Computers as Components Principles of Embedded Computing System Design Third Edition Marilyn Wolf ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY

More information

New Advances in Micro-Processors and computer architectures

New Advances in Micro-Processors and computer architectures New Advances in Micro-Processors and computer architectures Prof. (Dr.) K.R. Chowdhary, Director SETG Email: kr.chowdhary@jietjodhpur.com Jodhpur Institute of Engineering and Technology, SETG August 27,

More information

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit P Ajith Kumar 1, M Vijaya Lakshmi 2 P.G. Student, Department of Electronics and Communication Engineering, St.Martin s Engineering College,

More information

1DT157 Digitalteknik och datorarkitekt. Digital technology and computer architecture, 5p

1DT157 Digitalteknik och datorarkitekt. Digital technology and computer architecture, 5p 1DT157 Digitalteknik och datorarkitekt Digital technology and computer architecture, 5p This is 1DT157 Digitalteknik och datorarkitekt Instructor: Stefanos Kaxiras Few things about me: Visiting professor

More information

Cost-Driven Hybrid Configuration Prefetching for Partial Reconfigurable Coprocessor

Cost-Driven Hybrid Configuration Prefetching for Partial Reconfigurable Coprocessor Cost-Driven Hybrid Configuration Prefetching for Partial Reconfigurable Coprocessor Ying Chen, Simon Y. Chen 2 School of Engineering San Francisco State University 600 Holloway Ave San Francisco, CA 9432

More information

Using Multi-core to Support Security-related Applications

Using Multi-core to Support Security-related Applications Using Multi-core to Support Security-related Applications Prof Wanlei Zhou (wanlei@deakin.edu.au) Deakin University, Australia Dr Yang Xiang (y.xiang@cqu.edu.au) Central Queensland University, Australia

More information

This content has been downloaded from IOPscience. Please scroll down to see the full text.

This content has been downloaded from IOPscience. Please scroll down to see the full text. This content has been downloaded from IOPscience. Please scroll down to see the full text. Download details: IP Address: 148.251.232.83 This content was downloaded on 22/11/2018 at 08:50 Please note that

More information

Hardware/Software Codesign

Hardware/Software Codesign Hardware/Software Codesign SS 2016 Prof. Dr. Christian Plessl High-Performance IT Systems group University of Paderborn Version 2.2.0 2016-04-08 how to design a "digital TV set top box" Motivating Example

More information

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation Contents Part I Basic Concepts 1 The Nature of Hardware and Software... 3 1.1 Introducing Hardware/Software Codesign... 3 1.1.1 Hardware... 3 1.1.2 Software... 5 1.1.3 Hardware and Software... 7 1.1.4

More information

CUSTOMIZABLE EMBEDDED PROCESSORS

CUSTOMIZABLE EMBEDDED PROCESSORS CUSTOMIZABLE EMBEDDED PROCESSORS DESIGN TECHNOLOGIES AND APPLICATIONS Paolo lenne Ecole Polytechnique Federale de Lausanne (EPFL) Rainer Leupers RWTH Aachen University AMSTERDAM BOSTON HEIDELBERG LONDON

More information

Research on Industrial Security Theory

Research on Industrial Security Theory Research on Industrial Security Theory Menggang Li Research on Industrial Security Theory Menggang Li China Centre for Industrial Security Research Beijing, People s Republic of China ISBN 978-3-642-36951-3

More information

Instruction Set And Architectural Features Of A Modern Risc Processor

Instruction Set And Architectural Features Of A Modern Risc Processor Instruction Set And Architectural Features Of A Modern Risc Processor PowerPC, as an evolving instruction set, has since 2006 been named Power 1 History, 2 Design features The result was the POWER instruction

More information

Processor Architectures At A Glance: M.I.T. Raw vs. UC Davis AsAP

Processor Architectures At A Glance: M.I.T. Raw vs. UC Davis AsAP Processor Architectures At A Glance: M.I.T. Raw vs. UC Davis AsAP Presenter: Course: EEC 289Q: Reconfigurable Computing Course Instructor: Professor Soheil Ghiasi Outline Overview of M.I.T. Raw processor

More information

Embedded Systems. For other titles published in this series, go to

Embedded Systems. For other titles published in this series, go to Embedded Systems Series Editors Nikil D. Dutt, Department of Computer Science, Donald Bren School of Information and Computer Sciences, University of California, Irvine, Zot Code 3435, Irvine, CA 92697-3435,

More information

Functional Programming in R

Functional Programming in R Functional Programming in R Advanced Statistical Programming for Data Science, Analysis and Finance Thomas Mailund Functional Programming in R: Advanced Statistical Programming for Data Science, Analysis

More information

Multi-Core Programming

Multi-Core Programming Multi-Core Programming Increasing Performance through Software Multi-threading Shameem Akhter Jason Roberts Intel PRESS Copyright 2006 Intel Corporation. All rights reserved. ISBN 0-9764832-4-6 No part

More information

FPGAs: Instant Access

FPGAs: Instant Access FPGAs: Instant Access Clive"Max"Maxfield AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO % ELSEVIER Newnes is an imprint of Elsevier Newnes Contents

More information

CSEE 3827: Fundamentals of Computer Systems

CSEE 3827: Fundamentals of Computer Systems CSEE 3827: Fundamentals of Computer Systems Lecture 15 April 1, 2009 martha@cs.columbia.edu and the rest of the semester Source code (e.g., *.java, *.c) (software) Compiler MIPS instruction set architecture

More information

The Two-dimensional Superscalar GAP Processor Architecture

The Two-dimensional Superscalar GAP Processor Architecture The Two-dimensional Superscalar GAP Processor Architecture 71 Sascha Uhrig, Basher Shehan, Ralf Jahr, Theo Ungerer Department of Computer Science University of Augsburg 86159 Augsburg, Germany {uhrig,

More information

Microcontrollers. Principles and Applications. Ajit Pal +5 V 2K 8. 8 bit dip switch. P2 8 Reset switch Microcontroller AT89S52 100E +5 V. 2.

Microcontrollers. Principles and Applications. Ajit Pal +5 V 2K 8. 8 bit dip switch. P2 8 Reset switch Microcontroller AT89S52 100E +5 V. 2. Ajit Pal Microcontrollers Principles and Applications +5 V 2K 8 8 bit dip switch P2 8 Reset switch Microcontroller AT89S52 100E +5 V +5 V 2.2K 10 uf RST 7 Segment common anode LEDs P1(0-6) & P3(0-6) 7

More information

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction Ujjwal Guin, Assistant Professor Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849

More information

Fast Evaluation of Protocol Processor Architectures for IPv6 Routing

Fast Evaluation of Protocol Processor Architectures for IPv6 Routing Fast Evaluation of Protocol Processor Architectures for IPv6 Routing Johan Lilius Dragos Truscan Seppo Virtanen Turku Centre for Computer Science Embedded Systems Laboratory Lemminkäisenkatu 14A, 20520

More information

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2 Computer Organization and Design Dr. Arjan Durresi Louisiana State University Baton Rouge, LA 70803 durresi@csc.lsu.edu d These slides are available at: http://www.csc.lsu.edu/~durresi/csc3501_07/ Louisiana

More information

Embedded Systems. 7. System Components

Embedded Systems. 7. System Components Embedded Systems 7. System Components Lothar Thiele 7-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

MODERN MULTITHREADING

MODERN MULTITHREADING MODERN MULTITHREADING Implementing, Testing, and Debugging Multithreaded Java and C++/Pthreads/Win32 Programs RICHARD H. CARVER KUO-CHUNG TAI A JOHN WILEY & SONS, INC., PUBLICATION MODERN MULTITHREADING

More information

The Heterogeneous Programming Jungle. Service d Expérimentation et de développement Centre Inria Bordeaux Sud-Ouest

The Heterogeneous Programming Jungle. Service d Expérimentation et de développement Centre Inria Bordeaux Sud-Ouest The Heterogeneous Programming Jungle Service d Expérimentation et de développement Centre Inria Bordeaux Sud-Ouest June 19, 2012 Outline 1. Introduction 2. Heterogeneous System Zoo 3. Similarities 4. Programming

More information

Performance Improvement by N-Chance Clustered Caching in NoC based Chip Multi-Processors

Performance Improvement by N-Chance Clustered Caching in NoC based Chip Multi-Processors Performance Improvement by N-Chance Clustered Caching in NoC based Chip Multi-Processors Rakesh Yarlagadda, Sanmukh R Kuppannagari, and Hemangee K Kapoor Department of Computer Science and Engineering

More information

Computer Communications and Networks. Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK

Computer Communications and Networks. Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK Computer Communications and Networks Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK The Computer Communications and Networks series is a range

More information

Reduced Instruction Set Computers

Reduced Instruction Set Computers Reduced Instruction Set Computers The acronym RISC stands for Reduced Instruction Set Computer. RISC represents a design philosophy for the ISA (Instruction Set Architecture) and the CPU microarchitecture

More information

When Girls Design CPUs!

When Girls Design CPUs! When Girls Design CPUs! An overview on one of the world s most famous CPU cores: ARM 1 Once Upon a Time There was a company in UK Acorn This company was the competitor to IBM Apple They were creating personal

More information

Understanding The Behavior of Simultaneous Multithreaded and Multiprocessor Architectures

Understanding The Behavior of Simultaneous Multithreaded and Multiprocessor Architectures Understanding The Behavior of Simultaneous Multithreaded and Multiprocessor Architectures Nagi N. Mekhiel Department of Electrical and Computer Engineering Ryerson University, Toronto, Ontario M5B 2K3

More information

Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool

Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool Jin Hee Kim and Jason Anderson FPL 2015 London, UK September 3, 2015 2 Motivation for Synthesizable FPGA Trend towards ASIC design flow Design

More information

Optical Burst Switched Networks

Optical Burst Switched Networks Optical Burst Switched Networks OPTICAL NETWORKS SERIES Series Editor Biswanath Mukherjee, University of California, Davis OPTICAL BURST SWITCHED NETWORKS JASON P. JUE The University of Texas at Dallas

More information

RISC Principles. Introduction

RISC Principles. Introduction 3 RISC Principles In the last chapter, we presented many details on the processor design space as well as the CISC and RISC architectures. It is time we consolidated our discussion to give details of RISC

More information

Design Space Exploration Using Parameterized Cores

Design Space Exploration Using Parameterized Cores RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR Design Space Exploration Using Parameterized Cores Ian D. L. Anderson M.A.Sc. Candidate March 31, 2006 Supervisor: Dr. M. Khalid 1 OUTLINE

More information

RISC Processors and Parallel Processing. Section and 3.3.6

RISC Processors and Parallel Processing. Section and 3.3.6 RISC Processors and Parallel Processing Section 3.3.5 and 3.3.6 The Control Unit When a program is being executed it is actually the CPU receiving and executing a sequence of machine code instructions.

More information

Lecture 1: Introduction

Lecture 1: Introduction Contemporary Computer Architecture Instruction set architecture Lecture 1: Introduction CprE 581 Computer Systems Architecture, Fall 2016 Reading: Textbook, Ch. 1.1-1.7 Microarchitecture; examples: Pipeline

More information

Session: Configurable Systems. Tailored SoC building using reconfigurable IP blocks

Session: Configurable Systems. Tailored SoC building using reconfigurable IP blocks IP 08 Session: Configurable Systems Tailored SoC building using reconfigurable IP blocks Lodewijk T. Smit, Gerard K. Rauwerda, Jochem H. Rutgers, Maciej Portalski and Reinier Kuipers Recore Systems www.recoresystems.com

More information

CO403 Advanced Microprocessors IS860 - High Performance Computing for Security. Basavaraj Talawar,

CO403 Advanced Microprocessors IS860 - High Performance Computing for Security. Basavaraj Talawar, CO403 Advanced Microprocessors IS860 - High Performance Computing for Security Basavaraj Talawar, basavaraj@nitk.edu.in Course Syllabus Technology Trends: Transistor Theory. Moore's Law. Delay, Power,

More information

FPGA for Software Engineers

FPGA for Software Engineers FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course

More information

MULTIMEDIA DATABASE MANAGEMENT SYSTEMS

MULTIMEDIA DATABASE MANAGEMENT SYSTEMS MULTIMEDIA DATABASE MANAGEMENT SYSTEMS THE KLUWER INTERNATIONAL SERIES IN ENGINEERING AND COMPUTER SCIENCE MULTIMEDIA SYSTEMS AND APPLICATIONS Recently Published Titles: Consulting Editor Borko Furht Florida

More information

High-level View of a Compiler

High-level View of a Compiler High-level View of a Compiler Source Compiler Implications Must recognize legal (and illegal) programs Must generate correct Must manage storage of all variables (and ) Must agree with OS & linker on format

More information