+ All Categories
Home > Documents > Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI...

Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI...

Date post: 30-Apr-2018
Category:
Upload: lenhan
View: 244 times
Download: 2 times
Share this document with a friend
12
Chip Design Leveraging AMBA ® 4 in Next Generation SOC Designs Steve Hamilton Applications Architect Sonics, Inc [email protected] Agenda What is new in AMBA4 Long bursts AXI IDs QoS Summary Hamilton’s Rules
Transcript
Page 1: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Chip Design

Leveraging AMBA®4in Next Generation SOC Designs

Steve HamiltonApplications ArchitectSonics, [email protected]

Agenda

What is new in AMBA4

Long bursts

AXI IDs

QoS

Summary

Hamilton’s Rules

Page 2: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

From ARM Docs Web site

AMBA specificationsAMBA 4

AMBA AXI and ACE Protocol SpecificationAMBA APB Protocol SpecificationAMBA AXI4-Stream Protocol SpecificationAMBA AXI Protocol Specification v2

new Stream Interface

AHB absent

new AXI-Lite spec

new AXI Features

AXI Feature removal

AXI clarifications

What is new in AMBA4

Page 3: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

AXI Changes

Clarificationsordering, posting, memory types / cache impacts

Removal of locked transactions

Removal of write data interleave

New featureslonger burstsQoS fieldUser fields

Decoupling - Different Roles

Project Leader

Architect

Lead validation engineer

SOC Integrator

core and sub-system developers

Page 4: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Long Bursts

Can issue up to 256 beat burstsperformance, atomicity, simplicity

Not guaranteed atomic beyond 16 beatseven in device space / non-modifiablessystem (integrator) performance & QoS

Atomicity may be undesirable for core as well

Long vs Chopped Bursts

buffer drains to system memory faster than is written

interconnect resources stalled waiting for data

long write burst initiated

later completion

•Initiator chopped burst

•avoids both problems

•smaller internal buffer

buffer inside initiator accumulates write data

Page 5: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Hamilton’s Rules

Hamilton’s High Performance (AMBA) Systems Rules

HHPS Rule #1: Don’t issue long write burstsHHPS Rule #2: Chop based upon address alignment

AXI IDs

Did not change in AMBA4

Critical to High Performance SystemsParallelism == PerformanceHighly shared targets – especially DRAMtargets can exploit parallelism for performanceAMBA’s way to identify concurrency / parallelism

Page 6: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

IDs Defined

Exclusives “master ID”

8.2 Transfer ID FieldsThe AXI protocol provides an ID field to enable a master to

issue a number of separate transactions, each of which must be returned in order.

AMBA ID semanticsDifferent masters no orderingSame master, different ID no orderingSame master, same ID in order completion and response read and writes different IDs

Choices: Id Use

Source Id

Transaction Id

Sequence Number

Page 7: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Choice #1: Source Id

Master Id or sub-master IdFixed source of transaction streams

can be used to id source -eg. security firewall

simple logic – constant IDimplies ordering required for ALL transactions from source

over constrains systemperformance loss

A

2

1

0

B

20

10

0x

not constant

Choice #2: Transaction Id

Transaction Idsimple logic – ID reservation system (above)no ordering required for ANY transactions

maximum performance potentialexplicit interlock or logic required for ordering

arbi

ter

dec

request ID

request Valid

& request Ready

response Validdec

response ID

clr

setfreeID

payload

buffers

Page 8: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Load Balancing

Loading balanced independent of BWs / use cases

Each master uses Transaction Ids fairlyIntegrator maps IDs to DRAM ports

DRAMcntlr

master 1

inte

rcon

nect

master 2

X MB/s

Y MB/s

.5X + .5Y

.5X + .5YX

Y

Choice #3: Sequence Number

Sequence Numbertransaction IDsID sequence indicates issue order

Useful for high performance hazard resolution

dec

request ID

request Valid

& request Ready

response Validdec

response ID

clr

setfreeID

cntr

Page 9: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Hamilton’s Rules

HHPS Rule #3: Use IDs as Transaction IDs (or sequence numbers) to precisely express the ordering required by the initiator

(sequence numbers can preserve ordering hints for resolution of address hazards and write observabilityif the posting point how to interpret them)

AXI QoS Field

Labeling of request with QoS class

Semantics “not specified”

spec “preferred use” (and ARM QoS products) 16 levels of arbitration prioritydynamically managed by initiator“programmable”

Permits initiator to express “urgency” of request

Page 10: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Problems with solution

Decoupling philosophyQoS/sharing is an “Integrator” issue, not “core developer” issue

Implementation Problems

Implementation Problems

retraction prohibition

head of line blocking

interconnect

DRAMcntlr

master 1

master 2

low

med

high

queue

med

med

med

queue

Page 11: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Priority Forwarding

Mitigates Head-of-line blocking

Still subject to panic failuresignorant of Integrator preferences and allocations

Ignorant of target statecontributes to down-stream panics

Target based QoS

Still dynamic priority scheme with sideband

sideband flow is counter to data flowdefeats head-of-line blocking

Metering target use against target allocationsfollows integrator intentions

aware of target stateavoids queuing things that cannot progresslower latency

Page 12: Leveraging AMBA 4 - Sonics Inc.sonicsinc.com/wp-content/...AMBA4-in-Next-Gen-SoC... · ÒAMBA AXI Protocol Specification v2 Ònew Stream Interface ÒAHB absent Ònew AXI-Lite spec

Hamilton’s Rules

HHPS Rule #5: Do NOT dynamically manage QoS priority in the initiator

HHPS Rule #6: Use an interconnect that can enforce Integrator’s QoS intentions / allocations (and discount Core Developer’s “give me all i want!” intentions)

Conclusions

AMBA4 AXI changes are aimed at making high performance systems more attainable

Removal of Locked transactions avoids a big (decoupling) risk to performance

Addition of long bursts (without write data interleaving) and ofthe QoS fields introduce new (decoupling) risks to performance

Use them carefully

Follow Hamilton’s High Performance Systems Rules


Recommended