Presentation is loading. Please wait.

Presentation is loading. Please wait.

Core-Centric Communication Protocol Introducing Open Core Protocol 2.0 Franck Seigneret, Texas Instruments France OCP-IP GSC member.

Similar presentations


Presentation on theme: "Core-Centric Communication Protocol Introducing Open Core Protocol 2.0 Franck Seigneret, Texas Instruments France OCP-IP GSC member."— Presentation transcript:

1 Core-Centric Communication Protocol Introducing Open Core Protocol 2.0 Franck Seigneret, Texas Instruments France OCP-IP GSC member

2 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

3 Motivation: reuse without rework SOC designers want to reuse IP cores to shorten development schedules. Problem: IP cores need to be re-adapted into each system design –1000s of cores, 10s or 100s of interconnects/buses –must understand lots of interfaces –overwhelming amount of adaptation work Motivation: reuse without rework –Plug-and-play between cores and interconnects systems from different sources.

4 Solution: Core/System Protocol What is needed is a standard, well-defined protocol for cores to talk to a system interconnect. On-chip interconnect Core 1 core i/f System socket Core 2 core i/f System socket Core N core i/f System socket Core designers System integrator

5 Core/System Protocol Requirements Clearly-specified contract between core developer and system integrator Core-Centric –Interconnect neutral (not some bus protocol) Encompass entire core/system interface Scalable and configurable Process independent, synthesis/timing analysis friendly

6 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

7 Open Core Protocol 2.0 Open Core Protocol (OCP) is a core-centric protocol under the governance of the OCP-IP association to enable true core plug- and-play and re-use –This is an OPEN standard OCP-IP is driven by a pool of key players in the semiconductor industry: Nokia, Texas Instruments, STMicroelectronics, UMC, MIPS, Philips, Sonics, EDA vendors… –Multiple working groups (specification, functional verification, SystemC modeling…): make of OCP a “living” standard Think of OCP as configurable core socket OCP 2.0 specification (and much more) can be freely downloaded from the OCP-IP web site:

8 Basic OCP Concepts Point-to-point, uni-directional, synchronous –Easy physical implementation Master/Slave, Request/Response model –Well-defined, simple roles Extensions –Added functionality to support cores with more complex interface requirements Configurability –Match a core’s requirements exactly –Tailor design to required features only

9 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

10 Basic OCP Master / Slave Split protocol Multiple phases: –Request phase –Response phase –Separate data handshake (optional) System / Core

11 OCP commands Idle… Read transfer –Standard Read –ReadEx, ReadLinked for exclusive access Write transfer –With or without response –Posted (Write) or non posted (WriteNonPost) semantics –Conditional (WriteConditional) for exclusive access Exclusive accesses –Locked synchronization Atomic ReadEx / Write pairs –Lazy synchronization Non atomic ReadLinked / WriteConditional pairs

12 Handshaking Each phase starts when sender asserts the phase –for example, request phase starts when master sends a non-idle command Phase ends when receiver asserts handshake –for example, request phase ends when slave asserts the command accept signal Handshaking allows both sides to assert flow control –sender can delay asserting the phase –receiver can delay asserting the handshake Example: core can’t take a request every cycle –no need to add storage, just hold off on accepting requests if not ready

13 Handshake (Timing Diagram) Cmd1 Cmd2 Cmd3 Clk MCmd MAddr SCmdAccept Addr1 Addr2 valid command Cmd1 accepted Cmd2 accepted Addr3

14 Ordering and Pipelining An OCP transfer is a complete request/response interaction For longer latency operations would like pipelining –multiple requests can be sent before first response comes back –example: CPU core has multiple outstanding cache misses OCP allows pipelining of transfers Responses must be returned in the order of the requests Requests and responses form a single ordered thread Time Master Slave

15 OCP phases within a transfer

16 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

17 Byte enables –Provide byte addressing capability on a multi-byte interface Multiple address spaces, mapped at non contiguous address ranges. Typically to: –Differentiate core registers from core memory space –Differentiate cores within a sub system Custom in-band signaling –To any of the transfer phases: Request, response, datahandshake –Typical usage: Cache signaling, application/emulation qualifier, dynamic endianness qualifier… OCP Simple Extensions

18 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

19 Burst extension Multiple OCP transfers can be linked into a burst transaction –Cores such as DRAM controllers can supply the second related piece of data much faster than the first –Bursts allow a target to know that there are more transfers coming, so it can pre-fetch Bursts are linked together using a burst code that is supplied with every transfer –burst signaling supplies the burst address sequence, the burst length, the burst type, etc....

20 The OCP burst flexibility Ability to handle precise bursts (the length is known) and un-precise bursts (the length is unknown). Ability to specify standard address sequences (incrementing, wrapping, streaming, XOR) as well as custom address sequences. Ability to support single request/multiple data transaction models. Ability to define atomic sub-units within a burst for fine control of the request interleaving throughout the system interconnect. Ability to add complete framing information with all transfer phases.

21 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

22 Threading extension Within an OCP thread, responses must return in the order of the requests. For some cores, out-of-order responses are desirable –A multi-bank DRAM controller can return requests to an open bank faster than to a closed one –A DMA controller can handle multiple outstanding transactions from multiple channels on the same OCP port An OCP interface can support multiple threads –Allows for concurrency and out-of-order returns –Each thread retains strict ordering semantics –BUT: there are is no ordering between transfers in different threads

23 Threads (illustrated) Golden rule –Strict ordering within a thread –No ordering between threads Requests, data, responses are tagged with a threadID Multithreading also helps reducing the number of wires, to limit the routing congestions time Master 1A2A 1A Slave Thread A 1B2B 1B2B Thread B

24 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

25 Control and Test Signals Reset Interrupt Transaction error reporting Core Flags (core-to-core) Core Status/Control (system-to-core) Test: Scan chains and standard JTAG (IEEE1149) …and platform specific signals also known as Sideband Signals because they are out-of-band with respect to data flow signals

26 Configurability OCP is configurable to tailor the interface exactly to the features required by the core –Basic OCP is very simple –Many extensions exist for cores with more complex interface requirements OCP is configured via a set of parameters –Control the presence of a set of signals example: core makes use of byte enables –Control the width of a set of signals example: address width is 14 bits –Control protocol features example: core uses data handshaking to pipeline write data

27 OCP as IP Core Delivery Vehicle OCP is not just a core/system interface specification OCP also specifies: –Precise description format for core interfaces –Precise description format for timing of core interfaces –Core performance information Configuration information is in machine-readable TCL file format –Allows for automated processing, at both core and interconnect level Core designer and system integrator’s job is greatly simplified

28 System Usage of Open Core Protocol Can wrap any on-chip interconnect using OCP –Yields system ready for plug-and-play with IP cores Well-specified protocol allows interconnect wrapper- generation to be automated. IP Core On-Chip Interconnect Slave MasterSlave Master Open Protocol Core

29 1.Motivation / Background 2.The Open Core Protocol Basic OCP 4.OCP simple extensions 5.Burst extension 6.Threading extension 7.OCP as a system socket 8.Related work / conclusion Introducing OCP 2.0….

30 Related Work / Conclusion Virtual Socket Interface Alliance (VSIA) has also putting forth the idea of a standard IP core socket –Virtual Component Interface (VCI) VCI and OCP are completely aligned in terms of their goals –October 2003: VSIA endorses the OCP interface, OCP-IP becomes the first VSIA adoption group The recently unveiled ARM AXI specification also refers to the same foundations, a well as many company in-house protocols…  This re-enforces the pioneer role played by OCP. Today, only OCP can be presented as the de-facto industry standard for a core complete socket

31 THANK YOU ! For more information, please take a look at and… stop at the OCP-IP booth in this conference center THANK YOU ! For more information, please take a look at and… stop at the OCP-IP booth in this conference center


Download ppt "Core-Centric Communication Protocol Introducing Open Core Protocol 2.0 Franck Seigneret, Texas Instruments France OCP-IP GSC member."

Similar presentations


Ads by Google