soc design methodology and indoor location/tracking system implementation chihhao chao 2008.1.22
TRANSCRIPT
SoC Design Methodology and Indoor Location/Tracking System
Implementation
Chihhao Chao2008.1.22
What is SoC (System-on-Chip)?• Complex IC that integrates the major functional elements of a
complete end-product into a single chip or chipset
• The SoC design typically incorporates – Programmable processor– On-chip memory– HW accelerators – Peripheral interfaces– Embedded software
Source: “Surviving the SoC revolution – A Guide to Platform-based Design,” Henry Chang et al, Kluwer Academic Publishers, 1999
IP design vs. SoC design
• Specific function unit, hardware accelerator,
• Hardware optimization (Time/Area/Power)
• Algorithm verification skill, Architecture design skill, Synthesis skill, APR skill
• Application on platform, system architecture, SW design, HW design
• System integration and optimization• Platform-based design skill, Profiling
skill, SW optimization/accelerating skill, System view of IP design, FPGA design skill
Cell-based Design Flow:IP/IC Design
e.g. DCT/IDCT Processor
DRU Transpose Memory
BDEG Matrix Vector Multiplier
ACF Matrix Vector Multiplier
DRU
IP/IC
SoC Design Methodology:SoC Design, HW/SW Co-Design
e.g. ARM-based Multimedia System
ARM uP
SRAM
MPEGCodec
DSP
Co-Processor
USB SD UART IO
Bus Bridge
BUS
BUS
SoC
SoC design methodology
• SW prototyping– Build pure-software demo system on given platform,
function correct
• Profiling– Fit target timing spec, performance examination
• System Partition– Design which part needs hardware acceleration
• HW/SW co-design– SW: driver design, code optimization– HW: IP design (ASIC/FPGA design flow)
Indoor location/tracking System• Goal
– Locate/Track human position in indoor environment.
• Localization/Tracking by Radio Signal Strength (RSS)– By RSS attenuation +
Radio Fingerprint
• Problem– Large RSS variation– Non-Gaussian noise– Non-linear motion of tracking
target
Beacon 3
Beacon 1
Beacon 2 Unknown 2
Unknown 1
indoor
indoor
What is our job?• 適用於異質無線網路環境之前瞻MoIP 手持裝置 SoC 設計– NSC Project
(2005~2008)
• Design a SoC for assisting:– Elder-care/
Children-care/Hospital
– Blind pedestrian guidance
B3 B4B2 B5 B6B1
Radio fingerprint• Preprocessing for model-based estimation subsystem
– Search radio fingerprint database: 3-nearest vector set searching – Interpolate
Particle filter
• A powerful mathematical tool for non-linear model / non-Gaussian noise estimation problem
• A sequential Monte Carlo method– A statistical filter– Iteratively estimate PDF of target
• Widely used in– RSSI location, Robot SLAM, Machine learning, Object recognition in
image/video
t
Observed signal 1
t
Observed signal 2
Particle Filter
t
Estimation
Exact Value
Probability Density Function
Exact Value
)(xp
tx
set of n particles Xt
Display subsystem• Demo-oriented subsystem• Good Practice for SoC Design Methodology• SW: GUI design for embedded system• HW: Display accelerator, image scaling algorithm
Project requirement
• We will focus on prototyping a demo system– Display subsystem of location/tracking SoC
• Required skill– C or C++ coding (for SW)– Verilog RTL coding (for HW)
What you will learn?
• SoC design methodology– Platform-based design skill, Profiling skill, SW
optimization/accelerating skill, System view of IP design, • FPGA design skill• Image scaling algorithms• GUI design experience
• This will help a lot for your lab-oriented courses in NTUEE.