8/16/2015\course\cpeg323-08F\Topics1b.ppt1 A Review of Processor Design Flow.

Slides:



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

Machine cycle.
6-1 Chapter 6 - Datapath and Control Department of Information Technology, Radford University ITEC 352 Computer Organization Principles of Computer Architecture.
Final Project : Pipelined Microprocessor Joseph Kim.
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
CS455/CpE 442 Intro. To Computer Architecure
Altera FLEX 10K technology in Real Time Application.
Basic Memory Management 1. Readings r Silbershatz et al: chapters
Computer Organization and Architecture
Enabling Efficient On-the-fly Microarchitecture Simulation Thierry Lafage September 2000.
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
June 20 th 2004University of Utah1 Microarchitectural Techniques to Reduce Interconnect Power in Clustered Processors Karthik Ramani Naveen Muralimanohar.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Aug. 24, 2007ELEC 5200/6200 Project1 Computer Design Project ELEC 5200/6200-Computer Architecture and Design Fall 2007 Vishwani D. Agrawal James J.Danaher.
CSCE 611: Conceptual Modeling Tools for CAD Course goals: –Design and verification methodologies for large-scale digital systems using industrial tools.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
2015/6/21\course\cpeg F\Topic-1.ppt1 CPEG 421/621 - Fall 2010 Topics I Fundamentals.
1 EECS Components and Design Techniques for Digital Systems Lec 21 – RTL Design Optimization 11/16/2004 David Culler Electrical Engineering and Computer.
Modified from Silberschatz, Galvin and Gagne Lecture 15 Chapter 8: Main Memory.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
CPU Performance Assessment As-Bahiya Abu-Samra *Moore’s Law *Clock Speed *Instruction Execution Rate - MIPS - MFLOPS *SPEC Speed Metric *Amdahl’s.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
Edited By Miss Sarwat Iqbal (FUUAST) Last updated:21/1/13
Statistical Simulation of Superscalar Architectures using Commercial Workloads Lieven Eeckhout and Koen De Bosschere Dept. of Electronics and Information.
6-1 Chapter 6 - Datapath and Control Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles of.
Dept. of Computer and Information Sciences : University of Delaware John Cavazos Department of Computer and Information Sciences University of Delaware.
SPREE RTL Generator RTL Simulator RTL CAD Flow 3. Area 4. Frequency 5. Power Correctness1. 2. Cycle count SPREE Benchmarks Verilog Results 3. Architecture.
CDA 3101 Fall 2013 Introduction to Computer Organization Computer Performance 28 August 2013.
Lecture 9. MIPS Processor Design – Instruction Fetch Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education &
Lecture 1 1 Computer Systems Architecture Lecture 1: What is Computer Architecture?
1 Towards Optimal Custom Instruction Processors Wayne Luk Kubilay Atasu, Rob Dimond and Oskar Mencer Department of Computing Imperial College London HOT.
Macro instruction synthesis for embedded processors Pinhong Chen Yunjian Jiang (william) - CS252 project presentation.
Performance Simulators José Nelson Amaral CMPUT 429 Dept. of Computing Science University of Alberta.
3 rd Nov CSV881: Low Power Design1 Power Estimation and Modeling M. Balakrishnan.
The Central Processing Unit (CPU) and the Machine Cycle.
Lecture 14 Today’s topics MARIE Architecture Registers Buses
Computer Organization CS224 Fall 2012 Lesson 22. The Big Picture  The Five Classic Components of a Computer  Chapter 4 Topic: Processor Design Control.
5-1 Chapter 5 - Datapath and Control Computer Architecture and Organization by M. Murdocca and V. Heuring © 2007 M. Murdocca and V. Heuring Computer Architecture.
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
Architecture Selection of a Flexible DSP Core Using Re- configurable System Software July 18, 1998 Jong-Yeol Lee Department of Electrical Engineering,
Transmeta’s New Processor Another way to design CPU By Wu Cheng
© Michel Dubois, Murali Annavaram, Per Strenstrom All rights reserved Embedded Computer Architecture 5SAI0 Simulation - chapter 9 - Luc Waeijen 16 Nov.
Processor Structure and Function Chapter8:. CPU Structure  CPU must:  Fetch instructions –Read instruction from memory  Interpret instructions –Instruction.
TEST 1 – Tuesday March 3 Lectures 1 - 8, Ch 1,2 HW Due Feb 24 –1.4.1 p.60 –1.4.4 p.60 –1.4.6 p.60 –1.5.2 p –1.5.4 p.61 –1.5.5 p.61.
DISSERTATION RESEARCH PLAN Mitesh Meswani. Outline  Dissertation Research Update  Previous Approach and Results  Modified Research Plan  Identifying.
Question What technology differentiates the different stages a computer had gone through from generation 1 to present?
To Compute: To Do Math. Information is collected by tallying data as it travels across circuits. The key part of integrated circuits are transistors.transistors.
Application Domains for Fixed-Length Block Structured Architectures ACSAC-2001 Gold Coast, January 30, 2001 ACSAC-2001 Gold Coast, January 30, 2001.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
Application-Specific Customization of Soft Processor Microarchitecture Peter Yiannacouras J. Gregory Steffan Jonathan Rose University of Toronto Electrical.
Real-World Pipelines Idea –Divide process into independent stages –Move objects through stages in sequence –At any given times, multiple objects being.
SHAKTI PROCESSORS RAHUL BODDUNA RISE LAB, IIT MADRAS
PipeliningPipelining Computer Architecture (Fall 2006)
Computer Organization and Architecture Lecture 1 : Introduction
??? ple r B Amulya Sai EDM14b005 What is simple scalar?? Simple scalar is an open source computer architecture simulator developed by Todd.
Assembly language.
William Stallings Computer Organization and Architecture 8th Edition
Application-Specific Customization of Soft Processor Microarchitecture
Processor (I).
A Review of Processor Design Flow
Agenda Why simulation Simulation and model Instruction Set model
Intro to Architecture & Organization
Control Unit Introduction Types Comparison Control Memory
A High Performance SoC: PkunityTM
Sampoorani, Sivakumar and Joshua
CS455/CpE 442 Intro. To Computer Architecure
Course Outline for Computer Architecture
Application-Specific Customization of Soft Processor Microarchitecture
Presentation transcript:

8/16/2015\course\cpeg323-08F\Topics1b.ppt1 A Review of Processor Design Flow

8/16/2015\course\cpeg323-08F\Topics1b.ppt2 How to design a CPU ? Instruction-set architecture (ISA) design Function-level (RTL) design Component-level design Gate-level/switch-level design Circuit-level design

8/16/2015\course\cpeg323-08F\Topics1b.ppt3 Design Method Gate Level/circuit level:toward full CAD Register Level:CAD + heuristics/intuition ISA Level:mainly heuristic process with simulation validation

8/16/2015\course\cpeg323-08F\Topics1b.ppt4 Instruction Set Architecture Design (Microarchitecture Design-I) System-Level Design RTL Level Design (Microarchitecture Design II) Compiler Design Code Optimizer Hardware Design Switch Level Design Circuit Level design ISA Simulator System Level Simulator RTL Level Simulator Switch Level Simulator Circuit Level Simulator Arch./Compiler Design Toolset Processor Architecture Design Flow Diagram HDL (VHDL or Verilog) Code Generator

Design Levels of Abstraction 8/16/2015\course\cpeg323-08F\Topics1b.ppt5 RenIfsSetWb2H := vOR3(RenCoverUpdtIFMWb2H, vAND2(RenCrab_Data_Hi_Cx5B[31], RenCrabIfsWrEnCx5H), vAND2(RenIfsValidWb3H, vNOT(RenCrabIfsWrEnCx5H))) RenIfsSetWb2H := vOR3(RenCoverUpdtIFMWb2H, vAND2(RenCrab_Data_Hi_Cx5B[31], RenCrabIfsWrEnCx5H), vAND2(RenIfsValidWb3H, vNOT(RenCrabIfsWrEnCx5H))) mov eax, [edi] cmp eax, 4 jne label10 mov eax, [edi] cmp eax, 4 jne label10 eax ebx ecx edx CPUCPU Branch Unit I-Cache D-Cache Switch Instruction Decode Register Mapping Instruction Decode Register Mapping Int Regs FP Regs ALU FPU Address Calculation MICROARCHMICROARCH Abstract Architecture Logic CIRCUITCIRCUIT LAYOUT Concrete

8/16/2015\course\cpeg323-08F\Topics1b.ppt6 Design Levels and Component Types

8/16/2015\course\cpeg323-08F\Topics1b.ppt7 Classical ISA Level Design Method Select a prototype structure A Modify A to accommodate: - new performance demand and new technology Evaluation (ISA simulation) Repeating until satisfaction

8/16/2015\course\cpeg323-08F\Topics1b.ppt8 Overall Simulation Strategy 1. Instruction level simulator: this is used for performance evaluation at the instruction set level as well as for more detailed modeling, e.g. the pipeline and memory system. This level is also used to generate test vectors employed in lower-level simulators. 2. System level simulation: this simulator models the details of the system environment including such things as interrupts and memory management. (Virtual machine level..)

8/16/2015\course\cpeg323-08F\Topics1b.ppt9 Overall Simulation Strategy 3. RTL level: this simulator models are RTL description of the design 4. Switch level with delays: used to simulate the design mostly in components; test vectors are generated from the RTL level. 5. Circuit simulation: it is used for detailed modeling of the critical paths as well as for verification of circuits under variations in temperature, power supply, etc. (Con’d)

8/16/2015\course\cpeg323-08F\Topics1b.ppt10 Performance of Simulators # of cycles simulated per second on a host machine

8/16/2015\course\cpeg323-08F\Topics1b.ppt11 Instruction Set Architecture Simulation Execution -driven simulator Trace-driven simulator (cache simulator branch prediction simulator, etc.) Traces (e.g. memory accesses branch trace, etc.) Runtime statistics (frequencies, cycle counts, etc.) Profile information Statistics (e.g. cache behavior, branch behavior, etc.) Object file Architecture Models

8/16/2015\course\cpeg323-08F\Topics1b.ppt12 Performance Study by Simulation Develop performance model that is: - Flexible - Parameterized (via knobs) - 95% clock accurate compared to RTL - Significantly smaller than RTL Models consist of two parts: - Instruction-set simulator -> executes benchmark - Pipeline simulator -> “accountant” for clock cycles Run benchmarks, update microarchitecture accordingly Cycle of: code -> simulate -> characterize -> tune

8/16/2015\course\cpeg323-08F\Topics1b.ppt13 Revisit: How to design a CPU ? Instruction-set architecture (ISA) design Function-level (RTL) design Component-level design Gate-level/switch-level design Circuit-level design Monty Denneau : I work on everything down to and including 4. Cyclops skips (2) and goes directly to 3/4. A lot of time was spent restructuring the design to make 4 meet timing. I probably spent thousands of hours on 4. We have no 5 - ASICS provides a library of gates, latches, and memory, etc. August 28, 2007