Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Topics Buses and networks-on-chips. Networks-on-chips. Data paths. Subsystems as IP.

Slides:



Advertisements
Similar presentations
Computer Organization, Bus Structure
Advertisements

Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Modern VLSI Design 4e: Chapter 5 Copyright  2008 Wayne Wolf Topics n Performance analysis of sequential machines.
FPGA-Based System Design: Chapter 7 Copyright  2004 Prentice Hall PTR Topics n Bus interfaces. n Platform FPGAs.
Modern VLSI Design 4e: Chapter 5 Copyright  2008 Wayne Wolf Topics n Memory elements. n Basics of sequential machines.
DH2T 34 Computer Architecture 1 LO2 Lesson Two CPU and Buses.
Modern VLSI Design 2e: Chapter 8 Copyright  1998 Prentice Hall PTR Topics n High-level synthesis. n Architectures for low power. n Testability and architecture.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Register-transfer Design n Basics of register-transfer design: –data paths and controllers.
Parallel I/O Interface Memory CPUI/OTransducer Actuator Output Device Input Device Parallel Interface Microprocessor / Microcontroller Direct memory access(DMA)
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR SRAM-based FPGA n SRAM-based LE –Registers in logic elements –LUT-based logic element.
Introduction to CMOS VLSI Design Lecture 13: SRAM
Introduction to CMOS VLSI Design SRAM/DRAM
Modern VLSI Design 2e: Chapter 6 Copyright  1998 Prentice Hall PTR Topics n Shifters. n Adders and ALUs.
Topics covered: CPU Architecture CSE 243: Introduction to Computer Architecture and Hardware/Software Interface.
Modern VLSI Design 2e: Chapter 5 Copyright  1998 Prentice Hall PTR Topics n Memory elements. n Basics of sequential machines.
1 EECS Components and Design Techniques for Digital Systems Lec 21 – RTL Design Optimization 11/16/2004 David Culler Electrical Engineering and Computer.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 23 - Subsystem.
68000 Interface Timing Diagrams Outline –68000 Read Cycle –68000 Write Cycle Goal –Understand bus cycles –Learn how to attach memory, peripherals.
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
CPEN Digital System Design Chapter 9 – Computer Design
Chapter 7 - Part 2 1 CPEN Digital System Design Chapter 7 – Registers and Register Transfers Part 2 – Counters, Register Cells, Buses, & Serial Operations.
ENGIN112 L26: Shift Registers November 3, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 26 Shift Registers.
CSS Lecture 2 Chapter 3 – Connecting Computer Components with Buses Bus Structures Synchronous, Asynchronous Typical Bus Signals Two level, Tri-state,
Lecture 12 Today’s topics –CPU basics Registers ALU Control Unit –The bus –Clocks –Input/output subsystem 1.
CS-334: Computer Architecture
Digital System Bus A bus in a digital system is a collection of (usually unbroken) signal lines that carry module-to-module communications. The signals.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Chapter 2 The CPU and the Main Board  2.1 Components of the CPU 2.1 Components of the CPU 2.1 Components of the CPU  2.2Performance and Instruction Sets.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Testability and architecture. Design methodologies. Multiprocessor system-on-chip.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n Latches and flip-flops. n RAMs and ROMs.
Instructor: Yuzhuang Hu Another Design Example: PIG (Chapter 7-10) PIG is a single dice game. Two players roll the dice in turns. When.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR FPGA Fabric n Elements of an FPGA fabric –Logic element –Placement –Wiring –I/O.
EKT 221/4 DIGITAL ELECTRONICS II  Registers, Micro-operations and Implementations - Part3.
© 2000 Morgan Kaufman Overheads for Computers as Components System components  Timing diagrams.  Memory.  Busses and interconnect.
Advanced VLSI Design Unit 06: SRAM
Chap 7. Register Transfers and Datapaths. 7.1 Datapaths and Operations Two types of modules of digital systems –Datapath perform data-processing operations.
Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Topics n Shifters. n Adders and ALUs.
Modern VLSI Design 4e: Chapter 3 Copyright  2008 Wayne Wolf Topics n Pseudo-nMOS gates. n DCVS logic. n Domino gates. n Design-for-yield. n Gates as IP.
Parallel architecture Technique. Pipelining Processor Pipelining is a technique of decomposing a sequential process into sub-processes, with each sub-process.
EEE440 Computer Architecture
FPGA-Based System Design: Chapter 4 Copyright  2003 Prentice Hall PTR Topics n Number representation. n Shifters. n Adders and ALUs.
Abdullah Said Alkalbani University of Buraimi
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
Modern VLSI Design 3e: Chapter 7 Copyright  1998, 2002 Prentice Hall PTR Topics n Power/ground routing. n Clock routing. n Floorplanning tips. n Off-chip.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
Computer Organization CDA 3103 Dr. Hassan Foroosh Dept. of Computer Science UCF © Copyright Hassan Foroosh 2002.
EKT 221 : Chapter 4 Computer Design Basics
Digital Integrated Circuits© Prentice Hall 1995 Arithmetic Arithmetic Building Blocks.
Lecture 11: FPGA-Based System Design October 18, 2004 ECE 697F Reconfigurable Computing Lecture 11 FPGA-Based System Design.
Lecture 15 Microarchitecture Level: Level 1. Microarchitecture Level The level above digital logic level. Job: to implement the ISA level above it. The.
By Fernan Naderzad.  Today we’ll go over: Von Neumann Architecture, Hardware and Software Approaches, Computer Functions, Interrupts, and Buses.
Processor Structure and Function Chapter8:. CPU Structure  CPU must:  Fetch instructions –Read instruction from memory  Interpret instructions –Instruction.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Group 1 chapter 3 Alex Francisco Mario Palomino Mohammed Ur-Rehman Maria Lopez.
1 COMP541 Datapaths I Montek Singh Mar 8, Topics  Over next 2/3 classes: datapaths  Basic register operations Book sections 7-2 to 7-6 and 7-8.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
8085 INTERNAL ARCHITECTURE.  Upon completing this topic, you should be able to: State all the register available in the 8085 microprocessor and explain.
EE141 Arithmetic Circuits 1 Chapter 14 Arithmetic Circuits Rev /12/2003 Rev /05/2003.
1 Chapter 1 Basic Structures Of Computers. Computer : Introduction A computer is an electronic machine,devised for performing calculations and controlling.
Copyright © 2001 Stephen A. Edwards All rights reserved Busses  Wires sometimes used as shared communication medium  Think “party-line telephone”  Bus.
PROGRAMMABLE LOGIC CONTROLLERS SINGLE CHIP COMPUTER
Topics Subsystem design principles. Pipelining. Datapath.
CSE 140 Lecture 16 System Designs
Topics Bus interfaces. Platform FPGAs..
Presentation transcript:

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Topics Buses and networks-on-chips. Networks-on-chips. Data paths. Subsystems as IP.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus-based systems A bus is a common connection: box1box2box3 ctrl data

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus circuits Cannot support full connectivity between all data path elements—must choose number of transfers per cycle allowed. A bus circuit is a specialized multiplexer circuit. Two major choices: pseudo-nMOS, precharged.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Pseudo-nMOS bus circuit

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Precharged bus circuit

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Three-state bus

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Asynchronous timing constraints Must satisfy setup, hold times. adrs Setup time Hold time

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus system design Requirements: –Imposed by the other side of the system. Constraints: –Imposed by this side of the system. ab requirements constraints

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf ba Views of the bus Hardware: DQDQ Combinational logic

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Views of bus system, cont’d. Timing diagram: ba DQDQ Combinational logic x y xy

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus protocols Basic transaction: –four-cycle handshake. a b

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Handshake machine Each side is an FSM (possibly asynchronous): ab 01 Go ack enq 01 ack

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Basic protocols Handshake transmits data:

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Box 1 logic

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Box 2 logic

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus timing t d1 = d stable t d2 = d not stable t c1 = c rises t c2 = c falls t ack1 = ack rises t 1 = t c1 - t d1 >= t r t 2 = t ack1 - t c1 >= t h t 3 = t c2 - t ack1 >= t h

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Busses and systems Microprocessor systems often have several busses running at different rates: CPU bridge mem I/O High-speed Low-speed

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Basic signals in a bus

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus characteristics Physical –Connector size, etc. Electrical –Voltages, currents, timing. Protocol –Sequence of events.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Advanced transactions Multi-cycle transfers: –Several values on one handshake. –May use implicit addressing.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf PCI bus Used for box-level system interconnect. Two versions: –33 MHz. –66 MHz. Supports advanced transactions.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf PCI bus read

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Multi-rate systems Logic blocks running at different clock rates may communicate: –Multi-chip. –Single-chip. »Slow bus connects to fast logic. Logic 1Logic MHz33 MHz

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Metastability Registers capturing transitioning signals may take an arbitrarily long time to settle.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Resynchronization Use cascaded registers to minimize the chance of using a metastable value. DQDQ ddout 

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Networks-on-chips NoC is an on-chip interconnection network. –Bus is simplest case. –Many NoCs have multiple stages. Packet-based NoCs: –Nodes connected by links. –Packet may be divided into flits (flits are always of equal size, packets may not be).

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus electrical model core i Length 1

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bus delay Major components of delay: –Drivers. –Bus backbone. –Sink capacitive loads. Delay formula:

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Crossbar Crossbar allows any combination of connections. Allows arbitrary multicasting.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Switch-based crossbar

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Mux-based crossbar 2-to-1 mux cellMux tree

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Crossbar delay Switch-based crossbar dominated by buffered transmission line: Multiplexer-based crossbar delay:

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Network comparison TypeDelay BusO(N 2 ) Switch-based crossbar O(sqrt(N)) Mux-based crossbar O(log N)

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Data paths A data path is a logical and a physical structure: –bitwise logical organization; –bitwise physical design. Datapath often has ALU, registers, some other function units. Data is generally passed via busses.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Data path logical organization Register file shifter memory constant addresses Shift control ALU op carry out

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Register file porting Register file is an SRAM. Additional ports add area, increase access time. But additional ports also reduce number of cycles required for an operation.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Operand fetch from register file + 1 port First cycle Second cycle Third cycle 2 ports First cycle Second cycle 3 ports First cycle

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Register file tradeoffs SRAM delay grows approximately linearly in number of ports. Driver area grows considerably with added ports. At least two ports makes sense for data path through put.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Data path clocking Major signals: –  1 –  2 –precharge s  1 –adrs s  2 –data v  2

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Data path timing Register file shifter s  1 s  2 11 22

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Typical data path structure Slice includes one bit of function units, connected by busses: registersshiftALU bus

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Bit-slice structure Many arithmetic and logical functions can be defined recursively on bits of word. A bit-slice is a one-bit (or n-bit) segment of an operation of minimum size to ensure regularity. Regular logical structure allows regular physical structure.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Abutting and pitch-matching Cells in bit-slice may be abutted together—requires matching positions on terminals. Pitch-matching is designing cells to ensure that pins are at proper positions for abutting.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Data path floorplan muxlatch muxconstant Register file shifter ALU

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Data path color plan cell VDD VSS result Shifter input Register file control

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Subsystems as IP Standards for subsystems are more complex: –More variations. –More parameters. Open Core Protocol (OCP) defines socket for plug-and-play operation. SPIRIT defines standard documentation for subsystem IP.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Wishbone standard Basic unit is master-slave interface. –Defines handshake. Interface defines CLK, ADRS, DATA, WE, STB, ACK, CYC, RST. Three types of bus transfers: single read/write, block read/write, read/modify/write.

Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Functional verification Particularly important for soft IP, but performed even for hard IP. Compare design module against known good design. QIP metric standard defines verification standards. golden reference IP module - input vectors