EE382V: System-On-A-Chip (Soc) Design Lecture 12: Outline

EE382V: System-On-A-Chip (Soc) Design Lecture 12: Outline

EE382V: System-on-Chip (SoC) Design Lecture 12 EE382V: System-on-a-Chip (SoC) Design Lecture 12 – SoC Communication Architectures Source: Sudeep Pasricha (Colorado State), Nikil Dutt (UC Irvine) “On-Chip Communication Architectures”, Morgan Kaufmann, 2008 Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin [email protected] Lecture 12: Outline • Introduction • Communication-centric design • Bus-based architectures • Topologies and structures • Decoding, arbitration, transfer modes • On-chip communication standards • AMBA and AXI • Networks-on-Chip (NoCs) • Topologies, switching, routing EE382V: SoC Design, Lecture 12 © 2014 A. Gerstlauer 2 © 2014 A. Gerstlauer 1 EE382V: System-on-Chip (SoC) Design Lecture 12 Technology Scaling Trends (1) • Total Interconnect Length on a Chip Highlights importance of interconnect design in future technologies EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 3 Technology Scaling Trends (2) • Relative delay comparison of wires vs. process technology Increasing wire delay limits achievable performance EE382V: SoC Design, Lecture 12 © 2008 Sudeep© 2014 Pasricha A. Gerstlauer & Nikil Dutt 4 © 2014 A. Gerstlauer 2 EE382V: System-on-Chip (SoC) Design Lecture 12 Communication Trumps Computation Core 1 SoCs Critical Decision Was uP Choice Core 2 Circa 2002 µP Core N Exploding core counts requiring more advanced Interconnects Main Bus EDA cannot solve this Sub architectural problem easily µP µP system Complexity too high to hand Mem Bus I/O Bus craft (and verify!) DRAMC SoCs Today Critical Decision Is Interconnect Choice Communication Architecture Design and Verification becoming Highest Priority in Contemporary SoC Design! Source: SONICS Inc. EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 5 Communication-Centric Design • Communication is THE most critical aspect affecting system performance • Communication architecture consumes upto 50% of total on-chip power • Ever increasing number of wires, repeaters, bus components (arbiters, bridges, decoders etc.) increases system cost • Communication architecture design, customization, exploration, verification and implementation takes up the largest chunk of a design cycle Communication architectures significantly affect performance, power, cost and time-to- market! EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 6 © 2014 A. Gerstlauer 3 EE382V: System-on-Chip (SoC) Design Lecture 12 On-Chip Communication Trends • Evolution of on-chip communication architectures EE382V: SoC Design, Lecture 12 © 2008 Sudeep© 2014 Pasricha A. Gerstlauer & Nikil Dutt 7 Bus-Based Architectures • Buses are the simplest and most widely used SoC interconnection networks • Bus: a collection of signals (wires) to which one or more IP components (which need to communicate data with each other) are connected • Only one component can transfer data on the shared bus at any given time Digital Input/ Micro- Signal Output Memory controller Processor Device Bus EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 8 © 2014 A. Gerstlauer 4 EE382V: System-on-Chip (SoC) Design Lecture 12 Bus Terminology EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 9 Bus Terminology • Master (or Initiator) • IP component that initiates a read or write data transfer • Slave (or Target) • IP component that does not initiate transfers and only responds to incoming transfer requests • Arbiter • Controls access to the shared bus • Uses arbitration scheme to select master to grant access to bus • Decoder • Determines which component a transfer is intended for • Bridge • Connects two busses • Acts as slave on one side and master on the other EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 10 © 2014 A. Gerstlauer 5 EE382V: System-on-Chip (SoC) Design Lecture 12 Bus Signal Lines address lines data lines control lines • A bus typically consists of three types of signal lines • Address – Carry address of destination for which transfer is initiated – Can be shared or separate for read, write data •Data – Carry information between source and destination components – Can be shared or separate for read, write data – Choice of data width critical for application performance • Control – Requests and acknowledgements – Specify more information about type of data transfer – Byte enable, burst size, cacheable/bufferable, write-back/through, … EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 11 Bus Physical Structure (1) • Tri-state buffer based bidirectional signals • Commonly used in off-chip/backplane buses • + take up fewer wires, smaller area footprint • - higher power consumption, higher delay, hard to debug EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 12 © 2014 A. Gerstlauer 6 EE382V: System-on-Chip (SoC) Design Lecture 12 Bus Physical Structure (2) • AND-OR based signals 13EE382V: SoC Design, Lecture 12 © 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt Bus Physical Structure (3) • MUX based signals • Separate read, write channels EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 14 © 2014 A. Gerstlauer 7 EE382V: System-on-Chip (SoC) Design Lecture 12 Bus Clocking • Synchronous Bus • Includes a clock in control lines • Fixed protocol for communication that is relative to clock • Involves very little logic and can run very fast • Require frequency converters across frequency domains EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 15 Bus Clocking • Asynchronous Bus • Not clocked • Requires a handshaking protocol – performance not as good as that of synchronous bus – No need for frequency converters, but does need extra lines • Does not suffer from clock skew like the synchronous bus EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 16 © 2014 A. Gerstlauer 8 EE382V: System-on-Chip (SoC) Design Lecture 12 Decoding and Arbitration • Decoding • Determines the target for any transfer initiated by a master • Arbitration • Decides which master can use the shared bus if more than one master request bus access simultaneously Decoding and Arbitration can either be • Centralized • Distributed EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 17 Centralized Decoding and Arbitration • Minimal change is required if new components are added to the system EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 18 © 2014 A. Gerstlauer 9 EE382V: System-on-Chip (SoC) Design Lecture 12 Distributed Decoding and Arbitration • + requires fewer signals compared to the centralized approach • - more hardware duplication, more logic/area, less scalable 19EE382V: SoC Design, Lecture 12 © 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt Arbitration Schemes (1) • Random • Randomly select master to grant bus access to • Static priority • Masters assigned static priorities • Higher priority master request always serviced first • Can be pre-emptive (AMBA2) or non-preemptive (AMBA3) • May lead to starvation of low priority masters • Round-robin • Masters allowed to access bus in a round-robin manner • No starvation – every master guaranteed bus access • Inefficient if masters have vastly different data injection rates • High latency for critical data streams EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 20 © 2014 A. Gerstlauer 10 EE382V: System-on-Chip (SoC) Design Lecture 12 Arbitration Schemes (2) • TDMA • Time division multiple access • Assign slots to masters based on BW requirements • If a master does not have anything to read/write during its time slots, leads to low performance • Choice of time slot length and number critical • Real-time worst-case latency guarantees (CAN bus) • TDMA/RR • Two-level scheme – If master does not need to utilize its time slot, second level RR scheme grants access to another waiting master • Better bus utilization • Higher implementation cost for scheme (more logic, area) EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 21 Arbitration Schemes (3) • Dynamic priority • Dynamically vary priority of master during application execution • Gives masters with higher injection rates a higher priority • Requires additional logic to analyze traffic at runtime • Adapts to changing data traffic profiles • High implementation cost (several registers to track priorities and traffic profiles) • Programmable priority • Simpler variant of dynamic priority scheme • Programmable register in arbiter allows software to change priority EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 22 © 2014 A. Gerstlauer 11 EE382V: System-on-Chip (SoC) Design Lecture 12 Bus Data Transfer Modes (1) • Single non-pipelined transfer • Simplest transfer mode – first request for access to bus from arbiter – on being granted access, set address and control signals – Send/receive data in subsequent cycles EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil Dutt 23 Bus Data Transfer Modes (2) • Pipelined transfer • Overlap address and data phases – Only works if separate address and data busses are present EE382V: SoC Design, Lecture 12© 2008 Sudeep © 2014 Pasricha A. Gerstlauer & Nikil

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    43 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us