Ric lab intro EDA 111607 -...
Transcript of Ric lab intro EDA 111607 -...
Design Verification Team
Prof. Chung-Yang (Ric) HuangDepartment of Electrical Engineering
National Taiwan University2007/11/16
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 2
Lab ProfileFounded 2004.02Lab info
Office: EE-II 444Lab: BL 627 ( EE 353)PTT: NTUGIEE_ricWebsite: http://dvlab.ee.ntu.edu.tw/To find me
[email protected] @ ptt, ptt2, msn, skype, ...02-3366-3644
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 3
3 Major Research Directions1. SoC design methodology and verification
SoC (SpringSoft) (1) ()Other cooperation: (ITRI)
2. Formal-assisted design optimization and debugging (SpringSoft) (2) () (AUO)
3. Next generation constraint satisfiability and optimization engine
(Cadence) (expected starting Q4 2007) ()Other cooperation:
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 4
(1) SoC Design Methodology and Verification
Think ---What is System-on-Chip (SoC)?What is a system?
Processor
cache
DSP
DMA ROM RAM
HW
RTOSFirmware Driver
AP1 AP1 AP1 AP1
wii, ps-3, IPTV, video phone etc
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 5
Design Component Paradigm Shifts
Transistors
1970s
1980s
Logic gates
always @ (posedge ck)count
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 6
Virtual (HW) Platform
Processor
cache
DSP
DMA ROM RAM
HW
RTOS
Firmware Driver
AP1 AP1 AP1 AP1
Host machine (real computer)
C++/SystemC-based virtual platform including HW (processors, IPs, mem, I/Os) +
RTOS, firmware/drivers, system libraries
Applicationprograms
Test / Analysis / debuggingprograms
More HW IPs
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 7
QuteVP: our virtual platform
Processor
RAM ROM
DMA
Inputmodule
user-definedInstruction
ROM
TML bus modelARBITER
Ethernet
DCT
Slavedevice
Full functional ARM V5T (ARM11 + DSP)
with extended instructions
Dual-port DMA
Virtual socket
Experiments: JPEG encoding IDCT SW Network data transfer
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 8
QuteVP: Design Performance Analysis
JPEGJPEG--EncodeEncode JPEGJPEG--EncodeEncodeRGERGE--YCrCbYCrCb RGERGE--YCrCbYCrCb
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 9
Our SoC Design/EDA Research
QuteVPVirtual
Platform
Multimedia over IP SoC
MoIP/NSoC w/ Prof. AY Wu, Prof. SY Chien, Prof. Polly Huang, etc
SoCComplete
SoC-Complete/NSoC w/ Prof. C Shih, Prof. CL yang
QuteCCESL DB
SpringSoft Projecta complete
SystemC front-end HW/SW Co-Sim, Co-Verification, Co-Optimization
High-Level Formal Engine
MoIP/NSoC w/ Prof. AY Wu, Prof. SY Chien, Prof. Polly Huang, etc
Academia Sinicaw/ Prof. BY Wang
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 10
(2) Formal-Assisted Design Debugging and Optimization
1. Designing circuit is now like writing programs2. Every program has bugs3. The more complex the design is, the more
bugs there will be and the more difficult it is to find the bug
4. The complexity of modern designs grows exponentially
The effort to find and fix bugs is increasing tremendously
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 11
Is it really so difficult?Yes, the design is too complexCan you fix the real causes of the bug?
Not really, if we can READ designer mind and systematically verify the implementationArtificial Intelligence (AI)??What human can do, the computer can do it
million times faster
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 12
Key Techniques1. Design Intent Extraction (read designers mind)
Extract FSM, counter, etc from RTL Verilog
2. Powerful constraint satisfiability solver
3 assign arb_next_state[4:0] = arbiter(arb_state[4:0], ..);
4 ff_sre_4 arb_state_reg (.out(arb_state[4:1]),
5 .din(arb_next_state[4:1]), .clk(clk),
6 .reset_l(reset_l), .enable(1'b1));
8 ff_s arb_state_reg_0 (.out(arb_state[0]),
9 .din(~reset_l|arb_next_state[0]), .clk(clk));
11 function [4:0] arbiter; input [4:0] cur_state; reg [4:0] next_state;
14 parameter IDLE = 5'b00001, REQ_ACTIVE = 5'b00010,
15 FILL3 = 5'b00100, FILL2 = 5'b01000, FILL1 = 5'b10000;
16 begin case (cur_state)
18 IDLE: if (pj_tv) next_state = REQ_ACTIVE;
20 else next_state = cur_state;
22 REQ_ACTIVE: ... FILL3: ... FILL2: ... FILL1: ...
26 default: next_state = 5'bx;
27 endcase
28 arbiter[4:0] = next_state[4:0];
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 13
FSM/Counter Extraction Tool
Quick Link IconClick to re-open
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 14
FSM/Counter Extraction Tool
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 15
Formal-Assisted Design Debugging and Optimization Roadmap
RTL Verilogparser
Formal engines
Berkeley ABC
Hierarchical DB
RAR engine
Flatten DB
louis
STA engine
Real designs
BI engine
Technology-Dependent Logic
Optimization
Intelligent Debugging
Low Cost ECO
FSM/Counter Extractor
Physical design
Release !!kevinlads
lun / probex
qshi
rocky
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 16
(3) Next generation constraint satisfiability and optimization engine
Most of the problems in EDA are NP-complete or NP-hardTraditional approach
Our approach
Greedy-based heuristics
Stuck @ local optimal
Perturbation(e.g. SA, GA)
Formal modeling of the problem
CSOP engines + various learning
Perturbation(e.g. SA, GA)
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 17
Formal ModelingTransform designs and problems in mathematic or logic form
Boolean logic (&, |, !...)Arithmetic operators (+, -, *, /)Axioms
Solve it or prove it !!SATBDDILPSMTTheorem prover
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 18
Weekly Study Groups1. Formal engine
Problem modelingSAT, Pseudo Boolean, ILP, LP, CSP,... etc
How to create an EDA-specific formal enginehttp://140.112.42.185/~thlin/engine-study-group-index.htm
2. Front-end verificationDesign analysis, validation, debugging, Formal-driven synthesis & optimization
How to intelligently utilize formal engineshttp://140.112.42.185/~louius/fe-study-group-index.htm
3. SoC / ESL designHW/SW co-design, co-verificationSystem-level design methodologies
Future design and verification paradigmhttp://140.112.42.185/~sam/esl-study-group-index.htm
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 19
Related courses for my researches
(Ric, 2008 Spring) (Prof. Yao-Wen Chang)EDA
(Ric, 2008 Spring) (Prof. Jie-Hong Jiang)
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 20
Will you be one of us?
If you...
!!...
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 21
Title-------------------------------0 2004.02 1 2004.02 32 2004.05 33 2004.05 4 2004.05 5 2004.06 6 2004.06 7 2004.09 --8 2004.12 9 2004.12 10 2004.12 11 2004.12 212 2005.04
13 2005.04 214 2005.06 315 2005.06 316 2005.11 217 2005.11 118 2005.12 219 2005.12 220 2005.12 221 2006.04 222 2006.04 223 2006.11 124 2006.11 125 2006.11 126 2006.11 127 2006.11 128 2007.09 RA-------------------------------
: 7, : 11, : 2, : 4
11/16/07 Chung-Yang (Ric) Huang [email protected] +886-2-3366-3644 22
For more information...To find me
Office: EE-II [email protected] @ ptt, ptt2, msn, skype, ...02-3366-3644
Lab:BL 627 ( EE 353)PTT: NTUGIEE_ricWebsite: http://dvlab.ee.ntu.edu.tw/