work items
TRANSCRIPT
![Page 1: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/1.jpg)
Work items
By Sean Chen
![Page 2: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/2.jpg)
Work items
● ATPG● stil2tstl● Slow path● path delay
● CPU test● Test flow
● JTAG● Software solution ● openRISC
● External work for free publish
● Reference
![Page 3: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/3.jpg)
stil2tstl
● What's stil /tstl● Test Pattern
– stil for human view– tstl for machine view
● Why use it?● License issue...● Debug / Hack / Mask
![Page 4: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/4.jpg)
stil2tstl
Design flow● Translation● Parser:
● Define Key words● Assignment:
● Fit our data structures ● Analysis:
● Preamble● Shift● capture
● Translation:● Cycle based
● Mapping:● TSTL format
*.STIL
Parser
Lib(class)
Analysis
Assignment
Translation
Mapping
![Page 5: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/5.jpg)
stil2tstl
● Memory usage ●
![Page 6: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/6.jpg)
Traditional path delay flowPATH DELAY
1. Slack based2. Module based3. clock based
1.False path analysis2. scan path analysis
1.critical path analysis2.Latch analysis3.Lopp analysis4.Multi drive analysis
1.ATPG report analysis
STA
ATPG Pattern NC-sim
1.NC-sim report analysis
scan.rpt
ana.rpt
atpg.rpt Nc-sim.rpt
Nc vs atpg analysis No
Yes
1.Report analysis1
2
*.xml total.rpt
debussy
3
45
6
![Page 7: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/7.jpg)
Enhance Path-Delay Flow
Garbage in = out
![Page 8: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/8.jpg)
Enhance Path-Delay Flow
● What's un-testable path?
01
0
11
0
![Page 9: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/9.jpg)
Enhance Path-Delay Flow
● Path extraction by STA● Report timing … slack, multi cycle check...
Is that enough ?
![Page 10: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/10.jpg)
Enhance Path-Delay Flow● Sample timing report
A true Path list {
=====================
pin type incr path_delay
=====================
A[0] (in) 0 0 r
U10/A NAND2 0 0 r
U10/Y NAND2 1 1 f
U9/A NOT1 0 1 f
U9/Y NOT1 1 2 r
U4/A NAND2 1 3 r
U4/Y NAND2 1 4 f
M[1] (out) 0 4 f
====================
Data Required time 5
Data Arrival time 4
====================
Slack 1
}
a b
c
d
Only one to one path testnot
whole chip test
coverage lost ......
![Page 11: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/11.jpg)
![Page 12: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/12.jpg)
*.v*.lib
STADesignconstrain
SCANCHIN
SCAN_CHINTRS
SCANCELL
Report_timing Report_timing
Re_Check
SLOWPATH
SLOWPATH
THROUGHLATCH
PATHDELAY
XMLVIEWER
Debussy
SLOW PATH PATH DELAY
Check design constrain
![Page 13: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/13.jpg)
Enhance Path-Delay Flow
● Simulation resultsEnhance flow is better
![Page 14: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/14.jpg)
Enhance Path-Delay Flow
● XML path Dumper
![Page 15: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/15.jpg)
Flow extent
![Page 16: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/16.jpg)
Commands
● Commands• max_paths• slack • -nworst• clock• launch• capture• IO• each– noZ
• group
SLACK
SLACK + CELL
SLACK + CELL +CLOCK
Critical case filter
Example : commandwrite_delay_paths –group <list> -slack <float> -nworst <int> -max_paths <int>
![Page 17: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/17.jpg)
CPU test flow
● HW/SW co Design flow
![Page 18: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/18.jpg)
CPU test flow
The key components of the ASCII Interface are
ASCII Interface configuration file
DVC file
ASCII vector file
ait tool for running timing translation automatically
d2w for device cycle to timing setup conversion
aiv tool for running pattern translation automatically
v2b for translating tabular ASCII test patterns to binary vector setups
![Page 19: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/19.jpg)
CPU test flow
![Page 20: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/20.jpg)
CPU test flow
● Test flow
![Page 21: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/21.jpg)
CPU test flow ● Code analysis
● Test Suites– DC test, Cache test
● Setup Files– Pins, Levels, Timing, Vector, attribute
![Page 22: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/22.jpg)
CPU test flow
● Test-suite for Bin Map.● What's Bin?
● CPU rank definition ex: 2.4G, 2.8G...
![Page 23: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/23.jpg)
Hard to read
![Page 24: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/24.jpg)
CPU test flow
● HARD Bin(1)
C1 ULV00C2 ULV01C3 ULV02...
● HARD Bin(2)
C1 ULV00C3 ULV02C4 ULV03...
![Page 25: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/25.jpg)
CPU test flow
● For each bin classify● Cut redundant Test suites ● Merge Test suites● Reduce ATE test time● Enhance flow density● Reduce ATE memory usage
![Page 26: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/26.jpg)
CPU test flow
![Page 27: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/27.jpg)
JTAG
● What's JTAG?● Standard Test Access Port and Boundary-Scan
Architecture
● Why use it?● Easy debug ● GUI viewer● Low cost ● Step by step
● OpenRISC project
![Page 28: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/28.jpg)
JTAG
● Software solution
![Page 29: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/29.jpg)
JTAG
![Page 30: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/30.jpg)
JTAG
● JTAG FSM
![Page 31: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/31.jpg)
JTAG
● Real view for JTAG● @ Print port parallel control “Wiggler”
![Page 32: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/32.jpg)
JTAG
● Wiggler
![Page 33: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/33.jpg)
JTAG
● DLL control
![Page 34: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/34.jpg)
● How to use.●
![Page 35: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/35.jpg)
JTAG
● Test pattern inserted launch/capture
![Page 36: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/36.jpg)
JTAG
verilog/ C/
Driver/
![Page 37: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/37.jpg)
JTAG
![Page 38: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/38.jpg)
JTAG
![Page 39: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/39.jpg)
JTAG / UART
● HW/SW co simulation ● SystemC model ●
c/c++
Hardware
All c model
![Page 40: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/40.jpg)
JTAG / UART
![Page 41: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/41.jpg)
JTAG
● Same language @ platform ● Simulation time ● Debug ● Fast
Hardware Driver Linux system call
Verilog 2 SystemC
Test suiteC/C++
![Page 42: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/42.jpg)
External work for ARM
● ARM● ARM BUS 3.0
– AHB, APB, AHB2APB Bridge.– SystemC hardware model– Emulator platform
● ARM BUS 4.0 (AXI)– Emulator
● TLB(translation Lookup table)– Emulator
● Cross compiler (gcc)– Bootloader
![Page 43: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/43.jpg)
External work
● High level synthesis● LLVM
– C 2 Verilog assignment● For loop 2 Bus interface emulator
● RISC CPU– Emulator
● 3D IC Power Partition● Multi STA
![Page 44: Work items](https://reader036.vdocument.in/reader036/viewer/2022081401/558de3591a28ab601a8b46d7/html5/thumbnails/44.jpg)
Reference
● My site● http://funningboy.blogspot.com/