Track5-IP04 - 2015_08 CDNLive China Stratus intro

Stratus™ High-Level Synthesis
Making the IP you design more valuable
Qiang Zhu
CDNLive Shanghai
August 2015
High-level synthesis (HLS) usage today
• 15 of top 20 semiconductor companies
• 10M-30M gate HLS projects
• 10X productivity improvement
• 5X faster and better verification
“With our high-level synthesis flow and
the Stratus platform, we're now doing the
kinds of things that we couldn't have
imagined doing previously.”
“Having an early working prototype is
having a significant business impact in
terms of our potential customers'
enthusiasm and confidence."
- Ray McConnell, chief technology officer
of Blu Wireless Technology
• 20% better QoR for power, performance, and area
• Behavioral IP is more flexible, more valuable
2
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Stratus high-level synthesis momentum
Millions of Dollars
ESL Market Segment Growth
70
60
50
40
30
20
10
0
Imaging
Sensor
Camera
Compression
Video
2012 2013 2014 2015 2016 2017 2018
ESL Market Segment Share
18%
26%
50%
Cadence
Synopsys
Calypto
Bluespec
6%
Source: Gary Smith EDA, November 2014
3
Controllers
Microcontroller
Printers
Blu-ray / DVD
Flash
Cache coherency
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
HEVC
H.265
H.264
Comms
LTE
MIMO
WiFi
Bluetooth
WiGig
100G
PHY, Switch
Image processing
Communications
Video processing
Controllers
Graphics processing
Security devices
Pachinko machine
Digital TV
Error correction
Automotive
Audio processing
What is high-level synthesis?
Constraints
Stratus™ HLS
DataPath
FSM
Detail
Technology Library
Abstraction
SystemC, C, C++
Synthesizable Behavioral Models
HLS takes
abstract descriptions
MUL
ADD
DIV
FPU
RTL - Verilog
4
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
and adds detail
to produce RTL
Introducing Stratus high-level synthesis (HLS)
• 10x productivity and IP reuse
– Separates functionality from implementation
– Re-targetable high-level IP
• 5x faster, better verification
– Fast TLM simulation models
– Consistent verification platform
• 20% better Quality of Results
– Power/Area/Performance
– Beat hand-coded RTL results
• Broad applicability
Incisive® and JasperGold®
Verification Platform
# Laptop
define clk_p 800
set precision 32
set r_bits 11
set g_bits 11
set b_bits 10
void
MPEG4::sync_signal()
{
if (rst) {
out.write(0);
} else {
int tmp = in1 & in2;
out.write( in3 ? tmp : ~tmp);
}
}
C++/SysC
Constraint File
Stratus™ HLS
// RTL
module foo ( …)
….
……
RTL
Encounter® Digital
Implementation System
– Can be utilized across an entire system-on-chip (SoC) design
– Addresses real-world challenges of ECO, low power, routing congestion,
and IP reuse
5
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
What provides the productivity benefit?
A higher level of abstraction
• 5x TAT improvement
on the first generation of design
Functionality
• 10x + TAT improvement
on derivative designs
Architecture
User
Manages
Constraints
"We don't want our engineers writing
Verilog, we want them inventing
concepts and transferring them into
silicon and software using automated
processes.”
Yoshihito Kondo – GM, Sony Corporation
in EDA Graffiti, July 2009
Schedule of operations
FSM encoding
Timing
Pipeline registers
Area reduction
ECO
Clock gating
Consistent RTL style
Sharing datapath components
6
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Stratus™ HLS
Automatically
Manages
Abstraction improves Verification
• Transaction level (TLM)
Reuse Testbench At All Levels
TLM Testbench
TLM interface
• Protocol accurate
TLM Testbench
PIN interface
Protocol
Accurate
Verification
TLM Design
TLM interface
TLM Design
PIN interface
Stratus™ HLS
• RTL
− Integration with RTL simulators
− Reuse testbench
7
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
TLM Testbench
PIN interface
RTL
Validation
RTL
Verify
I/O and Timing
− Pin-accurate interfaces
− Reuse testbench
High-speed
Functional
Verification
Verify
Functionality
− High-speed simulation
− Reduces coding effort
− 5-10x more effective verification
Abstraction improves Quality of Results
• Create multiple implementations from one
behavioral IP description
− Remove guesswork in picking “best” architecture
− “Best” architecture varies for different applications
− Explore to find optimal tradeoffs
• Micro-architecture exploration
−
−
−
−
void
MPEG4::sync_signal()
{
if (rst) {
out.write(0);
} else {
int tmp = in1 & in2;
out.write( in3 ? tmp : ~tmp);
}
}
C++/SysC
# Cell phone
define clk_p 27
set precision 8
set r_bits 3
set g_bits 3
set b_bits 2
# Theatre
define clk_p 3200
set precision 96
set r_bits 32
set g_bits 32
set b_bits 32
Directive Files
Stratus HLS
Automated by Stratus™ HLS
Ex: Sharing vs. parallelism in the datapath
Ex: Changing perf. constraints or pipeline depth
Ex: Array storage as memory vs. reg. file vs. flops
• Macro-architecture exploration
− Assisted by Stratus HLS
− Ex: Changing I/O interfaces
− Ex: Functional and algorithmic changes
8
# Laptop
define clk_p 800
set precision 32
set r_bits 11
set g_bits 11
set b_bits 10
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence and the Cadence logo are trademarks of Cadence
©Design
2015 Cadence
All rights
reserved
worldwide..
Systems,Design
Inc. In Systems,
the UnitedInc.
States
and other
countries.
All other trademarks are the property of their respective owners and
are not affiliated with Cadence
Abstraction improves Reuse
• One IP model  different
architectures and/or interfaces
− C++ is golden source code
− Directive files drive implementation for
each application
void
MPEG4::sync_signal()
{
if (rst) {
out.write(0);
} else {
int tmp = in1 & in2;
out.write( in3 ? tmp : ~tmp);
}
}
C++/SysC
# Cell phone
define clk_p 27
set precision 8
set r_bits 3
set g_bits 3
set b_bits 2
# Theatre
define clk_p 3200
set precision 96
set r_bits 32
set g_bits 32
set b_bits 32
Directive Files
Stratus HLS
• Behavioral IP is easy to change
− “Minor” algorithmic changes would
require complete RTL rewrite
− With Stratus™ HLS, reuse most of
design and verification environment
• Extends useful life of your IP
9
# Laptop
define clk_p 800
set precision 32
set r_bits 11
set g_bits 11
set b_bits 10
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence and the Cadence logo are trademarks of Cadence
©Design
2015 Cadence
All rights
reserved
worldwide..
Systems,Design
Inc. In Systems,
the UnitedInc.
States
and other
countries.
All other trademarks are the property of their respective owners and
are not affiliated with Cadence
Making the IP you design more valuable
Improved Verification
+
Improved QoR
+
Improved Reuse
Improved value of
your IP
Stratus™ HLS improves the ROI
on your IP development
10
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Case study: HEVC / H.265
HLS helps Renesas to be first to market
• Challenges:
– Develop H.265-compliant IP with proprietary new algorithm in time to
lead the market
– Support multiple PPA and I/O requirements of mobile, consumer,
vehicle information systems, industrial equipment
• Results:
– 70% reduction in design and verification time
– 6x faster verification
– Utilized HLS ECO Flow to overcome late functional change
"Deploying the system-level design approach … for the entire design
addressed this challenge, and we were able to implement the new algorithm
very efficiently, achieving a good time-to-market for our advanced new IP.”
Toyokazu Hori – Department Manager, Renesas Electronics Corporation
11
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence and the Cadence logo are trademarks of Cadence
©Design
2015 Cadence
All rights
reserved
worldwide..
Systems,Design
Inc. in Systems,
the UnitedInc.
States
and other
countries.
All other trademarks are the property of their respective owners and
are not affiliated with Cadence
Stratus HLS details
12
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Example sub-system
Accelerator subsystem for high speed printer
Testbench
ARM
Core
Source
Memory
Sink
Master
Slave
Master
AXI 4
M/S
Slave
M/S
M/S
Slave
M/S
DMA1
IMG Accelerator
DMA2
DMA3
FP Accelerator
DMA4
Design
13
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Example sub-system
Design and verify algorithms, interfaces, synchronization
AXI 4
IP Blocks
Design Blocks
Synchronization
Channel
Configuration
Register
AXI Slave Interface
Decoder and Registers
CDC
Error Diffusion
32-bit
Unpack
Filter
Line Buffer
24-bit pixels
5x5
Zoom
Line Buffer
24-bit pixels
2x2
IMG Accelerator
14
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
pix-24
pix-3
Dual Port
Adapter
Feedback
RAM
Pack
32-bit
Cadence synthesizable IP
Pre-verified building blocks accelerate design and verification
Interface IP
Memory IP generator
Floating Point IP
15
Category
Available IP Blocks
Data types
Fixed point
Complex
Floating point
Building blocks
Computational math
FIFOs
Line buffers
CDCs
Memories
Generic
communication
Point-to-point channels
with put()/get() APIs
Configurable
bus interfaces
Simple bus
AXI3
AXI4-Lite, AXI4
Custom interfaces
Can be created by users
Design services available
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Top-down ECO via incremental HLS
Minimize impact of late stage changes
• Input:
− SystemC with ECO change
− Previously verified results
ECO
Stratus™ HLS
DB
Stratus™ HLS
• Incremental HLS:
− Adds similarity as a cost metric
RTL
• Output:
RTL
− RTL with minimal changes
RTL Compiler
• Encounter® Conformal®
ECO Designer
Netlist
− RTL Functional ECO
− Translates RTL changes to the netlist
− Pre/post-mask physical ECO
EDI System
− Implements the changes on the physical
design
DEF
16
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
P&R
Netlist
Encounter®
Conformal
ECO Designer
Stratus high-level synthesis
More that just a point tool…
• Integrated design environment
− SystemC, C, C++ design entry
− Complete graphical analysis
with links to source code
− Flow automation
• Stratus synthesizable IP
− Pre-verified building blocks
− Interfaces, floating point
• Knowledge base and training
− Articles and examples
− Tool and flow training
17
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide..
Summary: Why use Stratus high-level synthesis?
SystemC  RTL in 10 days
vs. manual RTL in 3 months
I/F controller IP
FPGA retargeting in
1-2 days vs. 2-3 weeks (manual)
Motion-detection IP
5x faster, better verification
(mW)
10x+ productivity increase
20% better quality of results
18
More valuable, more reusable IP
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence and the Cadence logo are trademarks of Cadence
©Design
2015 Cadence
All rights
reserved
worldwide..
Systems,Design
Inc. In Systems,
the UnitedInc.
States
and other
countries.
All other trademarks are the property of their respective owners and
are not affiliated with Cadence
© 2015 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence and the Cadence logo are registered trademarks and Stratus is a trademark of Cadence
Design Systems, Inc. in the United States and other countries. ARM is a registered trademark of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All other
trademarks are the property of their respective owners.