SOC & ASIC DESIGN AT ERICSSON THIS LECTURE Björn Fjellborg

advertisement
SoC & ASIC Design at Ericsson
SOC & ASIC DESIGN
AT ERICSSON
Björn Fjellborg
Ericsson AB, Radio Hardware Design
Kista
THIS LECTURE
› Mobile networks and HW infrastructure
› Systemization and System design
› Design challenges
› SoC/ASIC design flow
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 2
© Ericsson AB 2014
1
SoC & ASIC Design at Ericsson
Mobile Networks and
HW Infrastructure
A MOBILE NETWORK
LTE
RAN
GSM, WCDMA, LTE
Radio Base Stations
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 4
© Ericsson AB 2014
2
SoC & ASIC Design at Ericsson
ERICSSON RADIO BASE STATION
›
›
›
›
Connection field
Capacitor Unit: CU
BB subrack fan
Baseband subrack
–
–
–
–
–
–
Baseband processing: RAX and TXB
Transmission connection: ETB
Timing unit: TUB
Main processor: GPB
ATM switch: SCB
BBIFB
› RF subrack fan
› RF subrack
–
–
–
–
Transceiver: TRXB
Antenna interface: AIUB
ATM switch: SCB
RFIFB
› AMP subrack
– MCPA
3202 Indoor
› MCPA fan
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 5
AN LTE (4G) SIGNAL PROCESSING
ASIC
RBS 6201
›
›
›
›
›
›
›
›
›
Uplink signal processing
36 DSP cores
1 CPU core
29 M gates logic
65 Mbit SRAM
520 M transistors
12 W power dissipation
65 nm CMOS std cell
675 ball flip chip PBGA package
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 7
© Ericsson AB 2014
3
SoC & ASIC Design at Ericsson
Systemization and
System Design
THE CELLULAR ROADMAP
10G
Bits/s
5G
1G
4G
eHSPA
Evolved 3G
10M
("Turbo 3G")
See next page
for abbreviations
1M
HSPA
3G
10k
2G
Email
Voice
WAP
SMS
GSM
1990
1995
Video
streaming/
download
2000
Online video,
audio, radio
Smart grid
Augmented reality
Smart home
SW downloads
Cloud
services,
storage
App updates
Social
networking
Push to talk/
walkie-talkie
Location/positioning Web feeds/
RSS
services
2005
UHDTV
HDTV
High speed data
and web access
Video telephony/
UMTS/WCDMA
conference
WiMAX Data streaming,
Online
Web access
gaming,
Virtual
EDGE
Audio streaming/
worlds
download
HSCSD
2.5G
Interactive data
GPRS
MMS
100k
LTE
Mobile WiMAX
Internet of Things
Networked Society
100M
Connected
vehicles
LTE-A
4G
2010
Connected
wearables
2015
2020
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 11
© Ericsson AB 2014
4
SoC & ASIC Design at Ericsson
ABBREVIATIONS
›
›
›
›
›
›
›
›
›
›
›
›
›
›
›
›
›
EDGE
eHSPA
GPRS
GSM
HDTV
HSCSD
HSPA
LTE
LTE-A
MMS
RSS
SMS
UHDTV
UMTS
WAP
WCDMA
WiMAX
Enhanced Data rates for GSM Evolution
Evolved HSPA
General Packet Radio Service
Global System for Mobile communications
High Definition TV
High-Speed Circuit-Switched Data
High-Speed Packet Access
Long Term Evolution
Long Term Evolution Advanced
Multimedia Messaging Service
Really Simple Syndication
Short Messaging Service
Ultra High Definition TV
Universal Mobile Telecommunications System
Wireless Application Protocol
Wideband Code Division Multiple Access
Worldwide Interoperability for Microwave Access
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 12
MOBILE TRAFFIC DEVELOPMENT
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 13
© Ericsson AB 2014
5
SoC & ASIC Design at Ericsson
THE CELLULAR ROADMAP
10G
Bits/s
5G
1G
4G
Evolved 3G
("Turbo 3G")
10M
HSPA
LTE
Mobile WiMAX
eHSPA
Video
streaming/
download
Online video,
audio, radio
Video telephony/
conference
Online
Web access
gaming,
Virtual
Audio streaming/
worlds
download
10k
Email
2G
Voice
SMS
GSM
1990
1995
2005
Smart home
Cloud
services,
storage
App updates
Social
networking
Push to talk/
walkie-talkie
WAP
Location/positioning Web feeds/
RSS
services
2000
Augmented reality
SW downloads
HSCSD EDGE
2.5G
Interactive data
GPRS
MMS
100k
Smart grid
High speed data
and web access
UMTS/WCDMA
3G WiMAX
Data streaming,
1M
UHDTV
HDTV
Internet of Things
Networked Society
100M
Connected
vehicles
LTE-A
4G
2010
Connected
wearables
2015
2020
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 14
SIGNAL PROCESSING
REQUIREMENTS
Bits/s OPS (for signal processing)
10G
10T
1G
1T
Per component
100M
10M
100G
Increased
integration
10G
Per user
1M
100k
10k
1990
1G
100M
Application complexity
Air interface complexity
10M
1995
2000
2005
2010
2015
2020
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 15
© Ericsson AB 2014
6
SoC & ASIC Design at Ericsson
SYSTEM LEVEL(S)
Ericsson terminology:
Radio network
Base station
Network system
Node system
Board + SW package
Node subsystem
ASIC + SW module
SoC
DSP core + SW routines
SoC subsystem
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 16
SYSTEMIZATION PURPOSE
› Find the most cost-efficient combination of HW
components and SW modules that meets requirements on:
– Performance (traffic capacity, latency)
– Cost
– Size (weight, height, footprint – physical area on
ground/board/silicon or memory size)
– Power consumption
– Flexibility (for capacity expansion, functionality upgrade)
– Environmental protection (hazardous substances, recycling)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 17
© Ericsson AB 2014
7
SoC & ASIC Design at Ericsson
SYSTEM IMPLEMENTATION CHOICES
Node system
SW modules
In-house re-use
In-house development
External purchase
Node subsystem
FPGA
ASIC
HW components
DSP/CPU
SoC
IP* block
Hardwired logic
DSP/CPU core
SoC subsystem
HW accelerator
ALU/FPU/...
* IP = Intellectual Property, design block from another source
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 18
HW/SW TRADE-OFFS
› System design is in many cases a trade-off between HW
and SW solutions to best meet the systemization
single
set of
requirements:
function functions
Better
HW
Performance
Worse
HW
Flexibility
Power
SW
SW
SW
› The same trade-off applies to
HW
HW
SW
Cost
SW
HW
single
set of
function functions
– ASIC/FPGA vs DSP/CPU
– Hardwired logic vs DSP/CPU cores
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 19
© Ericsson AB 2014
8
SoC & ASIC Design at Ericsson
HW VS SW PERFORMANCE
› HW has higher performance than SW because:
– HW tailored to a specific functionality requires fewer gates than a
general instruction execution engine
⇒
Higher capacity/gate
– Tailored HW can exploit parallelism to a higher degree than a
DSP/CPU
⇒
Lower latency (faster execution of complex functions)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 20
HW VS SW POWER
› HW has lower power dissipation than SW because:
– Tailored HW uses few transistor switches/function (HW optimized
for the specific function)
⇒
Low energy/function step
– SW that runs on an instruction execution engine induces many
transistor switches/function (several SW instructions to load,
decode, and execute)
⇒
High energy/function step
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 21
© Ericsson AB 2014
9
SoC & ASIC Design at Ericsson
HW VS SW FLEXIBILITY
› SW has higher flexibility than HW because:
– Correcting errors in SW requires no new HW
⇒
Faster correction at customer site
– Upgrading functionality in SW may require more memory but no
new HW
⇒
No HW production cost for upgrading, say, 100 000 customer sites
(provided enough memory was designed in)
– Note: Functionality upgrades in SW do not necessarily get to
customer faster than HW upgrades, because development and
verification times are comparable to those of HW (for complex
systems)!
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 22
HW VS SW COST
› HW has lower cost than SW when:
– The functionality can be implemented on a tailored piece of HW that
is cheaper/smaller than a general purpose DSP/CPU
› A set of functions may have lower SW cost (a DSP/CPU):
– Re-uses the same HW (instruction execution engine) for multiple
functions
– HW tailored to each function
⇒ Cost = Σ tailored HW blocks > 1 DSP/CPU
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 23
© Ericsson AB 2014
10
SoC & ASIC Design at Ericsson
HW VS SW COST
FURTHER CONSIDERATIONS
› Concurrency-based allocation:
– Has inherent concurrency: Use HW (utilize HW concurrency)
› May require a large number of DSP/CPUs to obtain same
performance
› Typical for filter functions
– Has inherent sequentiality: Use SW (no speed-up with tailored HW)
Tailored parallel HW
Computational
graph:
DSP
Parallel concurrency
Pipelined concurrency
DSP
DSP
DSP
General DSP cores
(larger HW cost for
same performance)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 24
HW VS SW COST
HW COST/PERFORMANCE TRADE-OFF
› Often many alternatives for tailoring HW for a function:
– Fast but expensive (parallel HW)
– Slow but cheap (sequential HW)
Cost
Performance
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 25
© Ericsson AB 2014
11
SoC & ASIC Design at Ericsson
HW/SW TRADE-OFFS SUMMARY
Cost
› Finding the best HW/SW trade-off is a multi-dimensional
optimization problem!
Feasible solution space:
Satisfies all constraints
Performance
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 26
SYSTEM DESIGN TOOLS AND MODELS
› Signal processing algorithms are designed and analyzed
in Matlab
– Functionality and performance
– Based on GSM/WCDMA/LTE standards
Node subsystem
› The signal chain is modelled at algorithmic level in
C/C++
– Includes model of the air (radio channel mobile device –
base station)
– Constitutes a reference model for HW and SW
implementation
› Systemization alternatives are evaluated in various ways
SoC
– Spreadsheets for cost, power, capacity
– High-level architectural models for performance
(transaction level models in SystemC)
› SW Virtual Platforms
– High-level functional models for SW development
(transaction level models in SystemC)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 27
© Ericsson AB 2014
12
SoC & ASIC Design at Ericsson
EXAMPLE: RANDOM ACCESS &
DEMODULATION (RA-DEM)
› WCDMA Uplink Baseband Antenna Near Signal Processing
› A result from node subsystem systemization for baseband is that HW
support for Random Access and Demodulation is needed in the
receiver chain (for WCDMA receivers).
› A RA-DEM detects and correlates all reflections of coded signals into
one signal per transmitter
› A RA-DEM performs a number of functions:
– Preamble detect
– Message search
– Rake finger despread
› The RA-DEM functions imply a number of operations:
–
–
–
–
–
–
Code match filtering
Interference estimation
Coherent and non-coherent accumulation
Interpolation
Squaring
...
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 28
RA-DEM ARCHITECTURE
First SoC/SoC subsystem systemization*:
• Node subsystem
systemization has
resulted in a RA-DEM
algorithm, given
requirements at that
level
• SoC systemization has
defined subfunctions
(boxes in the picture)
• All subfunctions are
performed inside the
SoC ASIC
• System design task:
For each box, decide
whether to use
- hardwired logic
- SW (DSP core)
* Subfunctions are anonymized for confidentiality reasons
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 29
© Ericsson AB 2014
13
SoC & ASIC Design at Ericsson
RA-DEM DESIGN GOAL
› Main goal: Minimize cost
› Constraints:
– Performance (can be determined with high precision per subfunction
from the algorithm and max input data rate)
– Power (total for the SoC; if the SoC power budget does not hold, resystemization has to be done on the SoC or even the node
subsystem level)
– Flexibility (flexibility requirements are limited to those subfunctions
that have to change in case of future upgrades)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 30
RA-DEM SYSTEM DESIGN
PERFORMANCE TRADE-OFF
HW
72M
2.2G
184M
SW
46M 55.6G 19G 588M 588M 588M
294M 47M
40M
1.8k
184M
8.8G 4.32M
1.66M
1.8k
1.8k
3.6k
• Determine the
subfunctions'
performance
requirement (in
OPS)
• Subfunctions that
exceed one DSP
core's performance
(350 MOPS)
⇒
HW (to avoid splitting
over several DSPs)
3.6M
3.1G
4.32M
92M
92M
59.6M
59.6M
59.6M
59.6M
3.1G
6.2G
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 31
© Ericsson AB 2014
14
SoC & ASIC Design at Ericsson
RA-DEM SYSTEM DESIGN
FLEXIBILITY TRADE-OFF
HW
72M
2.2G
184M
SW
46M 55.6G 19G 588M 588M 588M
294M 47M
40M
1.8k
?
184M
8.8G 4.32M
1.66M
1.8k
1.8k
3.6k
• Determine the
subfunctions'
flexibility
requirement
(upgradable or not)
• Subfunctions that
must be upgradable
⇒
SW
• Conflicting trade-offs
may occur!
3.6M
3.1G
4.32M
92M
92M
59.6M
59.6M
59.6M
59.6M
3.1G
6.2G
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 32
RA-DEM SYSTEM DESIGN
LOAD TRADE-OFF
72M
2.2G
SW
588M
1.6G
184M
184M
• Determine the
subfunctions' peak
performance
(OPS/max latency)
HW
166M
46M
46M 55.6G 19G 588M 588M 588M
118M
294M 47M
?
184M
184M
40M
40M
1.8k
1.8k
?
3.6k
36M
8.8G 4.32M
2.22M
1.66M
3.6k
1.8k
3.6k
1.8k
3.6k
14.4M
3.6M
3.1G
34.6M
4.32M
736M
92M
736M
92M
477M
59.6M
477M
59.6M
59.6M
477M
59.6M
477M
–
(A function that requires 10
MOPS and has to finish in
0.1 s has a peak
performance of
10/0.1 = 100 MOPS)
• Subfunctions that
exceed one DSP
core's performance
(350 MOPS)
⇒
HW
• New conflicts may
occur!
3.1G
6.2G
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 33
© Ericsson AB 2014
15
SoC & ASIC Design at Ericsson
RA-DEM SYSTEM DESIGN
CONCURRENCY TRADE-OFF
72M
2.2G
SW
588M
1.6G
184M
184M
• Determine which
subfunctions that are
inherently
concurrent
HW
166M
46M
46M 55.6G 19G 588M 588M 588M
118M
294M 47M
184M
184M
40M
40M
1.8k
1.8k
?
?
3.6k
36M
8.8G 4.32M
2.22M
1.66M
3.6k
1.8k
3.6k
1.8k
3.6k
14.4M
• Subfunctions with
high degree of
concurrency and
reasonably high
performance
requirement
⇒
HW
3.6M
3.1G
34.6M
4.32M
736M
92M
736M
92M
477M
59.6M
477M
59.6M
59.6M
477M
59.6M
477M
3.1G
6.2G
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 34
RA-DEM SYSTEM DESIGN
HW COST TRADE-OFF
72M
2.2G
SW
588M
1.6G
184M
184M
46M
46M 55.6G 19G 588M 588M 588M
118M
294M 47M
40M
40M
45|
35|
30| 20|
457+10 168+10 34+2 11+2
3|
10+3
2.22M
1.66M
5|
1+3
3.6k
1.8k
4|
14.4M 0+3
1.8k
1.8k
?
?
184M
184M
36M
8.8G 4.32M
• Cost of HW
implementation =
area of tailored HW
HW
166M
3.6k
1.8k
5|
0+2
3.6k
3.6k
• Express as % of a DSP
core's area:
5|
0+2
Tailored HW area|
DSP area + interconnect
3.6M
3.1G
3.1G
34.6M
4.32M
736M
92M
• Cost of SW (DSP core)
implementation =
(load requirement/DSP
performance)
· DSP core area
+ extra interconnect
736M
92M
477M
59.6M
477M
59.6M
59.6M
477M
59.6M
477M
5|
10+10
6.2G
• Subfunctions with
lower HW cost
⇒
HW, the rest
⇒
SW
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 35
© Ericsson AB 2014
16
SoC & ASIC Design at Ericsson
RA-DEM SYSTEM DESIGN
RESOLVING CONFLICTS
HW
166M
72M
› The
›SWHow important is the
2.2G conflict is caused
588M
by the requirement on
1.6G
flexibility?
46M
40M
1.8k
184M
118M
184M
55.6G 19G 588M 588M 588M
294M 47M
40M
1.8k
flexibility
–46M
everything
– If worth the extra cost (4.22
?
?
184M points to a HW solution
else
resp 1.43 cores)
184M
45|
35|
30| 20|
5|
⇒
457+10
168+10
34+2
11+2
0+2
› Cost for HW vs
3.6k
SW,
otherwise HW
36M
2.22M
3.6k
3.6k
DSP core:
1.8k
8.8G 4.32M
1.66M
1.8k
3.6k
›
Or,
re-systemize:
– 0.45 vs 4.67 cores
3| 1.785|cores
– 0.35 vs
10+3
1+3
4|
14.4M 0+3
5|
0+2
3.6M
3.1G
3.1G
34.6M
4.32M
736M
92M
736M
92M
477M
59.6M
5|
10+10
6.2G
59.6M
477M
– Can the flexibility
requirement be isolated to
part of the subfunction?
⇒
477M Split into sub-subfunctions
59.6M
and map to HW resp SW
– Can we use SWconfigurable HW?
59.6M
477M
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 36
Design Challenges
for SoCs
© Ericsson AB 2014
17
SoC & ASIC Design at Ericsson
5G
Transistors
3 billion
transistors
2G
1G
Memory
RBS SIGNAL PROCESSING ASICS
1995-2013 – SIZES
500 M
200 M
Logic
100 M
50 M
20 M
10 M
2 million
transistors
5M
1995
1998
2004
2001
2007
2010
2013
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 38
TECHNOLOGIES AND CHALLENGES
5G
Transistors
Sum of all!
2G
32 nm
Variation
1G
500 M
Leakage
power
200 M
65 nm
Soft errors
Signal
integrity
100 M
Wire
delay
50 M
0.18 µm
20 M
0.13 µm
90 nm
0.13 µm
0.25 µm
10 M
5M
40 nm
45 nm
0.8 µm
1995
1998
2001
2004
2007
2010
2013
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 39
© Ericsson AB 2014
18
SoC & ASIC Design at Ericsson
WIRE DELAY, CROSSTALK, SOFT
ERRORS
› Wire delay dominates over logic delay at ≤ 0.35 µm
– Solution: New delay models for timing analysis, interconnect-driven
design
› Signal integrity, e.g. crosstalk (capacitive coupling between
parallel wires) that cause excessive delays and false
pulses, at ≤ 0.18 µm
– Solution: New design rules (wire spacing) and analysis methods
› Soft errors (charged particles hit the silicon with enough
energy to change the logic state) at ≤ 0.13 µm
– Solution: Error correction coding of memory content
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 40
LEAKAGE POWER
› Leakage current (transistor turn-off current) is a major
Conventional
power reduction
contributor to power dissipation at ≤ 90 nm
methods apply
to dynamic power
Typical
power
budget
Power dissipation
100%
80%
60%
40%
Dynamic
20%
Leakage
0%
Technology
› Power is a limiting factor for design also for stationary
equipment (i.e., not battery operated)
– Cooling
– Energy consumption
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 41
© Ericsson AB 2014
19
SoC & ASIC Design at Ericsson
Mean Number of Dopant Atoms
PROCESS VARIATION AT THE ATOMIC
SCALE
10000
Random dopant fluctuation:
Number of dopant atoms
› Parameter variation increases
with decreasing geometry:
–
–
–
–
–
1000
100
10
1000
500
250
130
65
32
Dopant
Instrumentation
Mask precision
Lithography
Variations between fabs and
batches
› Timing characteristics vary
significantly from chip to chip
Technology Node (nm)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 42
WHY ASIC?
› 95 % of the functionality on a radio base station receiver
board is signal processing
› Developing an ASIC takes 1-1.5 year and costs several
10 MSEK
› Buying a high-performance DSP costs 2000 SEK and it is
available off the shelf
› So why do we keep making ASICs?
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 43
© Ericsson AB 2014
20
SoC & ASIC Design at Ericsson
ASIC VS DSP
› ASICs are:
– Custom made
– Tailored to the application
› Pros:
– High functionality/transistor
(tailored HW)
– Few transistor switches/function
(optimized HW; low energy)
– Low component price (100-1000 SEK)
› Cons:
– Expensive to introduce (high
development cost)
– Available after 1-2 year development
– Not upgradable for new functionality
› DSPs are:
– Commodity products
– Used for general applications
› Pros:
– Cheap to introduce
– Available at once (but SW will likely
take at least 1 year to develop...)
– Upgradable for new functionality
(through SW)
› Cons:
– Less functionality/transistor (general
SW)
– Many transistor switches/function
(several SW instructions to load,
decode, and execute; high energy)
– High component price (500-3000
SEK)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 44
ASIC VS DSP PERFORMANCE
› A 100 GOPS ASIC:
– Uses massive parallelism (1000's
of parallel threads in concurrent
HW)
– Can run at moderate frequency
(100 MHz-1 GHz)
⇒ Use low to medium performance
Si process (high Vt transistors)
⇒ Low current leakage
⇒ Low to medium power
dissipation (5-50 W)
› A 100 GOPS DSP:
– Uses moderate parallelism
(pipelining, co-processors)
– Must run at high frequency (2-20
GHz)
⇒ Use high performance Si
process (low Vt transistors)
⇒ High current leakage
⇒ High power dissipation (1001000 W)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 45
© Ericsson AB 2014
21
SoC & ASIC Design at Ericsson
SoC/ASIC Design Flow
FROM IDEA ⇒ COMPONENT ...
E
ROP1011503
R1A
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 47
© Ericsson AB 2014
22
SoC & ASIC Design at Ericsson
... LIKE THIS?
Great! Let's go
hack some
code!
Hey! I've got
this marvelous
idea!
Building practice?
Signal integrity?
Power budget? Product structure?
Geez... Imagine
life without VHDL...
Vendor negotiations?
Interfaces?
Supply agreement?
Patents?
Product plans? Software?
O&M?
System integration?
Producibility?
Price models?
Market
window?
Soft errors?
Reliability?
System verification?
Debug?
Test? Firmware?
Your ASIC vendor
Type approval?
Invoice
Export control?
Thermal design?
E
Board?
ROP1011503
R1A
$ 1,000,000
Environmental protection restrictions?
Documentation? Version control?
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 48
MAIN STEPS
Technology study
Structuring
HW modeling & design
SW modeling & design
ASIC technology mapping
SW implementation
ASIC prototype manufacturing
SW verification
ASIC prototype verification
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 49
© Ericsson AB 2014
23
SoC & ASIC Design at Ericsson
TECHNOLOGY STUDY
› Analyze functional and performance requirements
› Analyze technological possibilities
› Investigate different technical solutions, consider:
– standards
– production costs
– life cycle costs
– reliability
– environment
– legal directives
Hey! I've got
this marvelous
idea!
Great! Let's go
hack some
code!
› Create a high level description of the system architecture
(text and graphics)
› Provide a decision base for project launch decision
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 50
STRUCTURING
›
›
›
›
›
›
›
›
›
›
Partition into HW and SW
Define HW/SW interface
Partition into functional blocks
Create behavioral models to evaluate
critical functionality (Matlab, C, VHDL)
Select IPs, IOs and memories, consider re-use of previous designs
Select ASIC technology and vendor
Choose package
Investigate patent opportunities
Specify system testability and diagnostics in production, field, and
repair
Choose test strategy: scan test, memory test, boundary scan, logic
BIST
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 51
© Ericsson AB 2014
24
SoC & ASIC Design at Ericsson
TYPICAL ASIC DESIGN FLOW
Specification
Coding
Front-end
Synthesis
Design &
IP (macros)
verification of
Processor cores
BIST & TAPC
RAMs
PLL
Floorplanning
- function
Back-end
- timing
- power
Place & Route
Production
Ericsson
Prototypes
ASIC vendor
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 52
ASIC DEVELOPMENT ACTIVITIES
Block development
ASIC chip development
Specification
Specification
Verification planning
Verification planning
Define TLM test cases
Build TLM testbench
TLM modeling
Define properties
TLM simulation
Define RTL test cases
Debug - Correct
TLM integration
Define TLM test cases
Build TLM testbench
TLM simulation (run SW)
Debug - Correct
RTL modeling
Build RTL testbench
RTL design rule check
Formal property check
ASIC realization
(by ASIC vendor)
RTL integration
Define RTL test cases
Build RTL testbench
RTL simulation
Debug - Correct
Verification management
RTL simulation
Debug - Correct
Verification management
Continued verification (simulation, formal)
Debug – Correct/work around
Build regression test suite
Several
deliveries
Connectivity check (formal)
Build emulation
Constraints (re-)definition
testbench
Logic synthesis
Design planning
Define emulation
DFT insertion
test cases
≥3 rounds of
deliveries
Emulation (with SW)
Equivalence check
DFT implementation
Continued verification
(simulation, emulation)
Static timing analysis
Floorplanning
Gate level simulation
Place & Route
Debug – Correct/work
around
Debug – Correct (ECO)
Design rule check
Build regression
test suite
Prototype verification
Timing back-annotation
Parasitic extraction
Chip manufacturing
Debug – Work around
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 53
© Ericsson AB 2014
25
SoC & ASIC Design at Ericsson
BLOCK DEVELOPMENT
Block development
ASIC chip development
Specification
Specification
Verification planning
Verification planning
Define TLM test cases
Build TLM testbench
TLM modeling
TLM integration
Define TLM test cases
Build TLM testbench
Define properties
TLM simulation
TLM simulation (run SW)
Define RTL test cases
Debug - Correct
Debug - Correct
RTL modeling
Build RTL testbench
RTL design rule check
Formal property check
RTL integration
ASIC realization
(by ASIC vendor)
Define RTL test cases
Build RTL testbench
RTL simulation
Debug - Correct
Verification management
RTL simulation
Debug - Correct
Verification management
Connectivity check (formal)
Build emulation
Constraints (re-)definition
testbench
Logic synthesis
Design planning
Define emulation
DFT insertion
test cases
Continued verification (simulation, formal)
Debug – Correct/work around
Build regression test suite
Several
deliveries
≥3 rounds of
deliveries
Emulation (with SW)
Equivalence check
DFT implementation
Continued verification
(simulation, emulation)
Static timing analysis
Floorplanning
Debug – Correct/work
around
Build regression
test suite
Prototype verification
Gate level simulation
Place & Route
Debug – Correct (ECO)
Design rule check
Timing back-annotation
Parasitic extraction
Chip manufacturing
Debug – Work around
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 54
SPECIFICATION
› Each function block has a Design
Specification
– There are also
Interface Descriptions,
Verification Specifications,
Verification Reports
+ a number of other documents
› Example of
content:
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 55
© Ericsson AB 2014
26
SoC & ASIC Design at Ericsson
VERIFICATION PLANNING
Define how to reach verification goals within available
time and resources:
1. Analyze the design requirements to identify features
2. Analyze the features’ characteristics: typical and
extreme data/conditions
3. Set verification goals
–
Include all types of coverage
4. Design tests to achieve verification goals
5. Plan resources for verification (personnel, computers,
licenses)
6. Commence verification
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 56
VERIFICATION
FEATURES AND COVERAGE
Three different verification features
› Features of a design
– Operations to perform
– Data to process
– Protocols to follow
› Verification goals
– Cover x % of typical cases
– Cover y % of corner cases
– Cover z % of interactions
between features
› Verification complete when cover
goals reached (and bugs
attended to)
For example, functional
coverage might track whether
the verification process has:
•
•
•
•
Filled and emptied every
FIFO in the design
Transmitted all packet
types across a particular
channel of the design
Transmitted packets
across all channels in the
design
Transmitted all packet
types across all channels
(cross-coverage)
Interacting features
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 57
© Ericsson AB 2014
27
SoC & ASIC Design at Ericsson
TRANSACTION LEVEL MODELING
(TLM)
› Model functionality at a
struct sender: sc_module {
high level
sc_out<pkt> pkt_out;
› Communication modeled
sc_in<sc_int<4> > source_id;
as transactions
sc_in_clk CLK;
SC_CTOR(sender)
› Use SystemC and TLM-2
{ SC_CTHREAD(entry, CLK.pos()); }
standard
void entry();
– Timing can be added
};
› Simulates fast (10-1000 x
faster than RTL)
void sender:: entry() {
pkt pkt_data;
while(true) {
// Data generation code ...
pkt_out.write(pkt_data);
wait();
}
› Example SystemC code:
– Communication modeled
as function calls
}
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 58
REGISTER TRANSFER LEVEL (RTL)
MODELING
Signal assignments:
rcmh_read_req
rcmh_write_req
rcmh_address
rcmh_wmask_req
rcmh_wmask
rcmh_wdata
<=
<=
<=
<=
<=
<=
not sr_data(65)
when req_trigger_d1 =
sr_data(65)
when req_trigger_d1 =
sr_data(63 downto 32) when req_trigger_d1 =
sr_data(64)
when req_trigger_d1 =
sr_data(31 downto 16) when req_trigger_d1 =
sr_data(15 downto 0) when req_trigger_d1 =
› Model functionality and
implementation at HW
level
› Communication modeled Entity with ports:
as signaling
› Use VHDL, Verilog,
SystemVerilog
– Clock-based timing
› Example VHDL code
(excerpts) for a serial
interface:
'1'
'1'
'1'
'1'
'1'
'1'
else
and
else
and
and
and
'0';
sr_data(64) = '0'
(others => '0');
sr_data(65) = '1'
sr_data(65) = '1'
sr_data(65) = '1'
else '0';
else '0';
else (others => '0');
else (others => '0');
FSM controller (part):
rc_ctrl_fsm : process (state_rs, sr_data(65),
sr_data(64), req_trigger_d1, rcmh_ack,
rcmh_rresult, rc_domain_clear_s)
begin -- process rc_ctrl_fsm
nextstate_rs
<= state_rs;
entity serdes_rif is
read_data_valid <= '0';
port (
case state_rs is
clk
: in std_logic;
when idle_e =>
reset_n : in std_logic;
if rc_domain_clear_s = '0' then
cif_hss_strb
: in std_logic;
if req_trigger_d1 = '1' then
cif_hss_data
: in std_logic_vector(cif_di_width_c downto 0);
if sr_data(65) = '1' then
cif_hss_ack_strb : in std_logic;
nextstate_rs <= wait_acknowledge_w_e;
cif_hss_data_out : out std_logic_vector(cif_do_width_c downto 0);
else
cif_hss_req
: out std_logic;
nextstate_rs <= wait_acknowledge_r_e;
cif_hss_halt
: out std_logic;
end if;
rc_clk
: in std_logic;
end if;
rc_reset_b
: in std_logic;
end if;
rcmh_address
: out std_logic_vector(31 downto 0);
when wait_acknowledge_w_e =>
rcmh_wdata
: out std_logic_vector(15 downto 0);
if rc_domain_clear_s = '0' then
rcmh_wmask
: out std_logic_vector(15 downto 0);
if rcmh_ack = '1' then
rcmh_write_req : out std_logic;
read_data_valid <= '1';
rcmh_wmask_req : out std_logic;
nextstate_rs
<= idle_e;
rcmh_read_req : out std_logic;
end if;
rcmh_ack
: in std_logic;
else
rcmh_rresult
: in std_logic;
nextstate_rs <= idle_e;
rcmh_rdata
: in std_logic_vector(15 downto 0)
end if;
);
when wait_acknowledge_r_e =>
end serdes_rif;
if rc_domain_clear_s = '0' then
if rcmh_ack = '1' then
nextstate_rs <= wait_read_data_e;
end if;
else
nextstate_rs <= idle_e;
end if;
when wait_read_data_e =>
if rc_domain_clear_s = '0' then
if rcmh_rresult = '1' then
read_data_valid <= '1';
nextstate_rs
<= idle_e;
end if;
else
nextstate_rs <= idle_e;
end if;
when others => nextstate_rs <= idle_e;
end case;
end process rc_ctrl_fsm;
+ about 400 additional code lines
of declarations, synchronization
processes, meta-stability handling,
etc
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 59
© Ericsson AB 2014
28
SoC & ASIC Design at Ericsson
SYSTEM PERFORMANCE ANALYSIS
SystemC TLM-2 model (system or sub-system level)
Shared
memory
HW
block
HW
block
Traffic
gen.
DSP
core
Traffic
gen.
IO
Traffic
gen.
Communication Infrastructure
CCI* information exchange:
Registers
Performance analysis
Debug
Internal state
Transaction logging
etc
*CCI = Configuration, Control & Inspection
Latency
Contention
Throughput
Utilization (time, memory)
Bandwidth
Transaction tracing
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 60
DEFINE PROPERTIES
› Properties are used for
three purposes:
– Assertions: Define
conditional expected
events and sequences
(what you want to test)
– Assumptions: Constraints
(what states the design can
have)
– Covers: Check that certain
states are reached (can be
prerequisites for tests)
Example assertion: Check
that a bus request is followed
by an acknowledge 1-3 cycles
after the request
SystemVerilog code
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 61
© Ericsson AB 2014
29
SoC & ASIC Design at Ericsson
BUILDING THE RTL TEST BENCH
› Create test benches to verify functional behavior and RTL
implementation
› Feature based verification
› High-level hardware verification language (HVL) with
declarative constructs for compactness
– e, SystemVerilog
› Stimuli generation
– Specify data format rather than exact content
– Random data generators with constraints
› Checkers verify stimuli/response relationship
– Basis for functional coverage analysis
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 62
BUILDING THE RTL TEST BENCH
CONSTRAINED RANDOM TESTING
› Instead of specifying which variable values to test, specify
constraints for the interesting ranges
› Auto generate random values within the constraints
Y
Constraint {X}
SystemVerilog code:
Constraint {Y}
ymax
class CRT_example;
rand shortint X;
rand shortint Y;
constraint x1
{X inside {[xmin:xmax]};}
constraint y1
{Y inside {[ymin:ymax]};}
endclass: CRT_example
ymin
xmin
xmax X
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 63
© Ericsson AB 2014
30
SoC & ASIC Design at Ericsson
RTL DESIGN RULE CHECK
› Designability = Ability to design
› Rule check: Find design patterns that
may cause problems in the design
flow
– Static check of HDL code
› Typically several hundred rules
› Rule examples:
– Avoid latches (incomplete HDL conditions may
cause unintentional latches)
– Memory inputs should be observable (for test)
– Use specified identifier suffixes, e.g. ”_n” for
active low
– One file per HDL design unit (entity/module etc)
– Use fixed indentation
– Use IEEE Numeric_std packages
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 64
RTL VERIFICATION AND DEBUG
› First verify assertions by
formal property check
– Mathematical proof that a
behavior always/never occurs
› Then simulate what’s left
– Mathematical computations
– Performance
› Debug is typically
waveform based
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 65
© Ericsson AB 2014
31
SoC & ASIC Design at Ericsson
VERIFICATION MANAGEMENT
› Collect results from all dispatched jobs
– Failures (design errors)
– Coverage
› Track progress of test suite
P – Passed
F – Failed
R – Running
W – Waiting
O – Other
A session = a sequence of tests
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 66
ASIC CHIP (TOP-LEVEL)
DEVELOPMENT
Block development
ASIC chip development
Specification
Specification
Verification planning
Verification planning
Define TLM test cases
Build TLM testbench
TLM modeling
Define properties
TLM simulation
Define RTL test cases
Debug - Correct
TLM integration
Define TLM test cases
Build TLM testbench
TLM simulation (run SW)
Debug - Correct
RTL modeling
Build RTL testbench
RTL design rule check
Formal property check
ASIC realization
(by ASIC vendor)
RTL integration
Define RTL test cases
Build RTL testbench
RTL simulation
Debug - Correct
Verification management
RTL simulation
Debug - Correct
Verification management
Continued verification (simulation, formal)
Debug – Correct/work around
Build regression test suite
Several
deliveries
Connectivity check (formal)
Build emulation
Constraints (re-)definition
testbench
Logic synthesis
Design planning
Define emulation
DFT insertion
test cases
≥3 rounds of
deliveries
Emulation (with SW)
Equivalence check
DFT implementation
Continued verification
(simulation, emulation)
Static timing analysis
Floorplanning
Gate level simulation
Place & Route
Debug – Correct/work
around
Debug – Correct (ECO)
Design rule check
Build regression
test suite
Prototype verification
Timing back-annotation
Parasitic extraction
Chip manufacturing
Debug – Work around
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 67
© Ericsson AB 2014
32
SoC & ASIC Design at Ericsson
EMULATION
› RTL or gate level verification
› Acceleration: Replace design in simulation (keep
simulated test bench)
› In Circuit Emulation: Replace circuit on board with model
in emulator; connect emulator to board
› Emulates design with configurable hardware arrays
(FPGAs or custom developed)
– Extremely fast, ~1 M cycles/s
› Requires long test cases for efficient use
– Random or real data streams,
application SW
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 68
HW/SW CO-VERIFICATION
EXAMPLE
› Typical signal processing architecture:
DSP SW
Control SW
ASIC
DSP
DSP
DSP
CPU
Logic & RAM
EPROM
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 69
© Ericsson AB 2014
33
SoC & ASIC Design at Ericsson
HW/SW
CO-VERIFICATION
SW
HW
Test DSP SW
DSP SW
ASIC HW
Step 1
Control SW
DSP SW
host environment
Simulator
DSP SW
verification
Control SW
verification
Simulator + C
SW target
environment
ASIC integration
Step 2
DSP model
Control SW
host environment
ASIC/DSP SW
co-verification
HW SW
Step 3
SW integration
IP models
(CPUs etc)
Emulator
HW/SW co-verification
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 70
SYNTHESIS AND DESIGN PLANNING
› Map RTL to optimized gate level netlist
– Needs cell library for target
technology
› Work towards goals
– Typically minimized area or power
› Find result within constraints
– Typically timing or power
› Synthesis result depends on physical
layout
Synthesis
Timing
– Layout affects timing constraints
Area
Layout
› Physical layout depends on synthesis
– Synthesis determines size of blocks
› Good result requires interaction synthesis –
design planning (= preliminary layout)
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 71
© Ericsson AB 2014
34
SoC & ASIC Design at Ericsson
EQUIVALENCE CHECK
› Checks functional equivalence of
two designs
– RTL - gate (before and after
synthesis)
– Gate - gate (before and after
netlist modification)
– (RTL - RTL)
Equivalent?
› Formal methods
– Reference design logically
implies* compared design
– No test bench, no test vectors
– Verifies complete design
*
Implication (⇒) means that all reference functionality is present in the compared design, but the
compared design may have additional functions not present in the reference design.
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 72
STATIC TIMING ANALYSIS
› Verify timing
› Gate level
› Estimated or back-annotated timing from layout
› Calculate delay along all clock and data paths
– Check for setup and hold violations, delays, pulse widths
– Locate critical paths
– Analysis for worst case, best case, on-chip variation
Timing path for worst case (setup check)
max_path time
d
ck
setup time min_path time
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 73
© Ericsson AB 2014
35
SoC & ASIC Design at Ericsson
BACK-END DESIGN & VERIFICATION
Typically at least
3 deliveries
to ASIC vendor
Constraints
RTL
Equivalence
checker
Back-end design &
verification team
Synthesis
=
Preliminary netlist
Floorplanning
Test insertion
Equivalence
checker
Increasing
precision
Simulator
NHO netlist
Place & Route
Test insertion
Equivalence
checker
Static Timing
Analyzer
SDF
Static Timing
Analyzer
SDF
Simulator
Sign-off netlist
Ericsson
ASIC vendor
SIGN-OFF!
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 74
PROTOTYPE VERIFICATION
› Establish that ASIC prototypes
meet specifications:
–
–
–
–
–
functionality at full speed
interaction between blocks
I/O pad connectivity
timing on interfaces
electrical characteristics
Simulation
test vectors
CPU SW
› Tested in lab environment:
– production board or test board
Logic analyzer
Oscilloscope
Data generator
DSP SW
BGA adapter
CPU debugger
RISCWatch/Green Hills Probe
DSP core debugger
E
ROP1011503
R1A
Ericsson inhouse
Other components
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 75
© Ericsson AB 2014
36
SoC & ASIC Design at Ericsson
ASIC DESIGN FLOW – OVERVIEW
TLM design entry
Verification planning
Performance analysis
TLM simulation
Verification environment
design & entry
RTL power analysis
RTL design entry
Testbench qualification
Architectural exploration
CDC check
Switching
frequencies
SW
Rule check
Formal verification
Verification run
management
RTL simulation
Debug
Test coverage
Design planning
Logic synthesis
Static timing analysis
Equivalence check
Gate level
power analysis
Gate simulation
Timing & Loads
ASIC vendor back-end
& manufacture
Acceleration
Reference models
Test vectors
Gate emulation
Design activity
Verification activity
Prototype verification
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 76
LOGIC DESIGN FLOW
Design
Design
Netlist
exploration
rules
verification
Timing Power
RTL
Synthesis
Simulation
VHDL/
(System)Verilog
Switching
SAIF
Constraints
RTL power
analysis
TCL
TLM
SystemC
Design
rules
Timing
model
Floorplan data
DEF/MW
DB
Power
model
DB
Architectural
exploration
Rule check
Equivalence
check
Design
planning
Verification
setup
SVF
Analysis
database
Logic
synthesis
DRC
reports
Simulation
Gate level
power
analysis
Netlist
Verilog
Parasitics
Performance
reports
Static
Timing
Analysis
Reports
- area
- timing
- power
- DRC
Power
reports
Timing
SDF
ASIC vendor
back-end
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 77
© Ericsson AB 2014
37
SoC & ASIC Design at Ericsson
RTL FUNCTIONAL
VERIFICATION FLOW
HW/SW co-verification
DSP SW
Requirements
Ref. model
(alg. parts)
Verification
IP
C++
eVC/UVC
RTL code
Testbench
Properties
VHDL/
(System)Verilog
e/
SystemVerilog
SVA
Testbench
qualification
Target debug
Verification
management
Verification
planning
Directed tests
Constrained
random tests
Assertions
Modify/
Extend
Emulation
Board
environment
Formal
verification
Verification
run
management
Test coverage OK
Code coverage
Functional
coverage
Assertion
coverage
Simulation
Acceleration
OK
OK
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 78
LANGUAGES
ASIC chip development
Block development
Specification
Specification
Verification planning
Verification planning
Define TLM test cases
SystemC/C++
Build TLM testbench
SVA,properties
PSL
Define
Define RTL test cases
SystemVerilog,
e
TLM modeling
SystemC
Define TLM test cases
SystemC/C++
Build TLM testbench
TLM integration
TLM simulation (run SW)
TLM simulation
Debug - Correct
Debug - Correct
RTL modeling
Build RTL testbench
RTL design rule check
ASIC realization
(by ASIC vendor)
VHDL
Formal property check
RTL integration
Define RTL test cases
SystemVerilog,
e
Build RTL testbench
RTL simulation
Debug - Correct
Verification management
RTL simulation
Debug - Correct
Verification management
Continued verification (simulation, formal)
Debug – Correct/work around
Build regression test suite
Several
deliveries
Connectivity check (formal)
Build emulation
Constraints (re-)definition
testbench
Logic synthesis
Design planning
Define emulation
DFT insertion
test cases
Verilog
≥3 rounds of
deliveries
Emulation (with SW)
Equivalence check
DFT implementation
Continued verification
(simulation, emulation)
Static timing analysis
Floorplanning
Gate level simulation
Place & Route
Debug – Correct/work
around
Debug – Correct (ECO)
Design rule check
Build regression
test suite
Prototype verification
Timing back-annotation
Parasitic extraction
Chip manufacturing
Debug – Work around
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 79
© Ericsson AB 2014
38
SoC & ASIC Design at Ericsson
AFTER PROTOTYPE VERIFICATION
Design & verification
ASIC prototype verification
Board
Board verification
Subsystem SW
Subsystem verification
Other
subsystems
Design & verification
Design & verification
Design & verification
Design & verification
System
SW
Mechanics
System verification
Type approval
Sales & marketing
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 80
WANT TO PARTICIPATE?
› Do you want to:
– Contribute to the world-wide expansion of mobile communications?
– Use the absolutely latest microelectronics technology?
– Be part of a world class ASIC design team?
– Work at the #1 telecommunications company?
› Look for thesis works at www.ericsson.com/careers !
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 81
© Ericsson AB 2014
39
SoC & ASIC Design at Ericsson
SoC & ASIC Design at Ericsson | © Ericsson AB 2014 | Page 83
© Ericsson AB 2014
40
Download