soc performance evaluation using high performance systemq and tlm
TRANSCRIPT
SoC performance evaluation using high performance SystemQ and TLM models for communications SoCs
Bernhard Keppler, Lantiq Germany GmbH Rocco Jonack, Sonics Inc. 16th March 2012
• The material presented is result of a collaborate effort by two companies: – Sonics Inc. – Lantiq
• Refer also to according paper in download package
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Agenda
Introduction
Infrastructure
Application Model
Simulation Results
Outlook
3
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Agenda
Introduction
Infrastructure
Application Model
Simulation Results
Outlook
4
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Introduction - Distinguishing on Abstraction Levels
Γ Modeling design space defined by accuracy levels: Computation Communication Timing
5
Γ System models comprise a mix of abstraction levels Γ Modeling sweet spot changes position over project time Γ Performance Models introduce a new flavor of abstraction
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Introduction - Early Starting Point: Performance Model, Example Store-forward Buffer for Ethernet packets
Γ Block Diagram Rate Balance Calculus Static Average/Peak
Rate computation (spreadsheet)
Fifo dimensions calculated
6
Γ Queuing Diagram Implemented as a
Performance model Stochastic behavior
added and simulated Fifo dimensions
measured
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Introduction - Executable Spec, yet a Need to Compromise for Implementation Speed
Γ Overlay of dynamic effects at critical elements in a system are difficult to comprehend. Calls for executable spec. Simulation models augment static analytical methods for
architectural dimensioning
Γ Model is required as early as possible in project schedule Not another RTL code! We choose a high abstraction level that
helps to answer major architectural questions: Performance Model
During project we refine the model to level of detail as where needed
Γ We can include partners/customer during architecture finding phase Exchange of executable model See algorithms work in a simulated target application
7
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Introduction - SystemQ: A SystemC Library Comprising Tools for Performance Models
Γ Message: a pointer to an object symbolizing a data chunk of certain size (e.g. ethernet frame incl. headers, etc. )
Γ Queue: a buffer storing messages (eg. FIFO, Stack, etc.) Γ Server: handles messages and consumes time. Can add
computation accuracy to model (refinement where needed) Γ Channel: transports messages, blocking/non-blocking, bitrate
semantics case needed. Γ Traffic Sink/Sources: generate and sink messages
8
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Agenda
Introduction
Infrastructure
Application Model
Simulation Results
Outlook
9
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Infrastructure – Bridging from Performance Model Top level to Integrated Sonics Interconnect Model
Γ SystemQ Top-level message transaction timed Abstract communication across module interfaces
Γ Sonics SSX TLM based, close to RTL Communication via OCP
10
Adapter translates SQ-Message into OCP-Bus Sequence and vice versa
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Infrastructure – OCP TL1
Γ OCP TL1 channels allow cycle accurate modeling Phases are handled independently
Γ Using events for runtime efficiency
11
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
SPA Analysis
Infrastructure – data collection SPA
Γ Performance observation point objects trace information during runtime
Γ Data is collected SQLite-formatted database Γ Data contains Bandwidth Latency Queue levels Buffer levels QoS information
12
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Infrastructure – data collection SPA
Γ TCL shell allows information extraction with customized scripts Γ Graphical tool reads simulation results and produces
predefined views of data
13
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Infrastructure – data collection using R
Γ „R“ is open source, huge user base in statistical computing See http://www.r-project.org/ Very lean way to extract and post-process values of interest from
simulation traces
14
Value to be extracted from trace
R script searches for pattern match
Plotting value
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Agenda
Introduction
Infrastructure
Application Model
Simulation Results
Outlook
15
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Application Model – Typical Home-Gateway
Γ Typical Home-Gateway SOC comprising: WAN (as Traffic Sink/Source) LAN (as Traffic Sink/Source) CPU (Voice Stack/Router) Packet buffer
Γ Find good dimensioning for SSX and MemMax by exploration of Use-Cases Best possible utilization of
DDR… …within latency and
throughput requirements of home gateway application
16
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Application Model – Use-Cases Define Architectural Requirements
Γ Parameter sets derived from use-cases are applied to the Performance Model (data rates for TSS, packet length variations, etc.)
Γ Simulation runs based on Parameter sweeps
17
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Application Model – Sonics IP SSX
Γ SSX crossbar Configurable Distance spanning Decoupling for protocol conversions
Γ Multithreaded connections Non blocking behavior prevents performance choke points Implements dedicated services like QoS
18
Initiator agent
SSX crossbar exchange
Configurable pipelinestages
Dedicated single or multi threaded links
External interfaces , e.g AXI, AHB, OCP
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Application Model – Sonics IPs II
Γ Configurable memory scheduler DDR2/DDR3 support Various service filters optimize bandwidth, while maintaining QoS
requirements Runtime programmable
19
RequestBuffer
Write Data
Buffer
Read Data
Buffer
Optional Pipeline Stage
Burst Converter
SchedulerOptional Pipeline Stage
Optional Pipeline Stage Optional Pipeline Stage
ORequest Phase Data Phase Respnse Phase
Optional ClockDomain Crossing
Dedicated buffering close to destination
Optional asynchronous boundary
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Agenda
Introduction
Infrastructure
Application Model
Simulation Results
Outlook
20
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Simulation Results I
Γ Analyzing buffer levels in initiators over time using R
21
Γ Elevated levels indicate problems in transporting traffic through system
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Simulation Results II
Γ Analyzing bandwidth and cross over queue levels over time using SPA
22
Γ Cross-over queue remains at 1 over entire simulation time Points to configuration problem Check configuration parameters
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Simulation Results III
Γ Analyzing bandwidth and cross over queue levels again over time using SPA
23
Γ Cross-over queues vary now Maximum of 10 outstanding
transaction Probably 8 would be
sufficient Further optimization would
be possible to optimize area
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Simulation Results IV
Γ Analyzing again buffer levels in initiators over time using R Γ Lower levels of transaction buffering in initiators confirms
configuration choice
24
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Agenda
Introduction
Infrastructure
Application Model
Simulation Results
Outlook
25
Copyright © Lantiq/Sonics Inc. 2012. All rights reserved. 11/04/12
Outlook
Γ Further usage of performance analyze data throughout the implementation process
Γ Further integration of 3rd party models Γ Runtime speed optimizations
26