Trong lưu đồ thiết kế vi mạch tong thé có một bước mà các chương trình trêntrường đại học hiện nay không được đưa vào nhưng thực tế cũng rất cần thiết trongbat kỳ doanh nghiệp nao làm về
Trang 1ĐẠI HOC QUOC GIA TP HO CHÍ MINH
TRUONG DAI HOC CONG NGHE THONG TIN
KHOA KĨ THUAT MAY TINH
TAO VIEN HOANG ANH - 19521211
KHOA LUAN TOT NGHIEP
THIET KE MOT EDA TOOL DE THUC HIEN CHEN SCAN TRONG BUOC
DFT
Design an EDA tool to do scan insertion in DFT step
KỸ SU KĨ THUAT MAY TÍNH
GIANG VIEN HUONG DAN
T.S NGUYEN MINH SON
TP HO CHi MINH, 2023
Trang 2THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP
Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số 11/QD-DHCNTT
ngày 05 tháng 01 năm 2024 của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
Trang 3LỜI CẢM ƠNLời đâu tiên, em xin gửi lời cảm ơn chân thành và sâu sắc đên quý Thây
Cô đã và đang giảng dạy tại trường Đại học Công Nghệ Thông Tin — Dai Học
Quốc Gia TP Hồ Chí Minh, đặc biệt là quý Thầy Cô trong Khoa Kỹ Thuật MáyTính Nhờ sự tận tâm và chỉ dẫn của quý Thầy Cô, em đã có cơ hội tiếp thu vàvận dụng những kiến thức quý giá vào quá trình nghiên cứu khóa luận tốtnghiệp cũng như chuyên ngành mà em đang theo đuôi
Đặc biệt, em xin chân thành cảm ơn thầy Tiến sĩ Nguyễn Minh Sơn đãhướng dẫn em rất tận tình trong suốt quá trình thực hiện đề tài, hỗ trợ và cungcấp cho em nhiều kiến thức chuyên môn quý báu dé em có thé hoàn thành khoáluận Đồng thời, em cũng xin chân thành gửi lời cảm ơn đến các anh chị, bạn bètrong khoa, những người đã luôn quan tâm, giúp đỡ cho em trong suốt quá trình
thực hiện nghiên cứu này.
Con cũng xin cảm ơn gia đình đã luôn tin tưởng, tạo điều kiện và ủng hộ
chúng con về rất nhiều về mặt tỉnh thần cũng như thể chất trong suốt khoảng
thời gian con thực hiện đề tài khoá luận này
Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế của sinh viênnên trong báo cáo này em không thé tránh khỏi những thiếu sót Em rat mong
nhận được sự đóng góp ý kiến của quý thầy cô dé em được bé sung, nâng cao
kiến thức của mình hơn
Một lần nữa, em xin chân thành cảm ơn!
Thành phố Hồ Chí Minh, ngày 18 tháng 01 năm 2024
Sinh viên thực hiện
Tào Viễn Hoàng Anh
Trang 4MỤC LỤCChương 1 GIỚI THIEU DE TÀI 2 2E£+E£+EE+EE£EE£EEE+EESEEeEEerEezEerrxerxee 2
1.1 DAT VAN DE NGHIÊN CỨU -2©-2+22+2E+£E+E££EEtEErEzrerrxersees 2
1.2 MỤC TIÊU NGHIÊN CỨU -2-¿+¿+++2+++E+++E+++E+tEE+erxezrxezrree 2
1.2.1 Mục tiêu tổng quát -¿- ¿5c tt EE2112112112171 111111 cxe 21.2.2 Mục tiêu cụ thê -2-©5c+2<‡EEEEEEEE22122171211211211 1121 11tr cre 2
1.3 GIỚI HẠN DE TÀI -2-©2Sc22< EESEEE22122112711271 21121111 Ecxe 3
1.4 KET QUA MONG MUÔN - (56 St SE E1 1111171111111 rrke 3
1.5 BO CỤC LUẬN VĂN 5:22S 22221 22122122112211271 21111211 3
Chương 2 DE XUẤT GIẢI PHAP TRIEN KHAI 25-52 s2 s£s+£z+£2 5
2.1 GIẢI PHÁP TRIEN KHAI ©22©2£+SE+£E££EE+EEtEEerxezrerrerreerxee 5
2.1.1 Benchmark NetÏis( - 5c ĂĂc 1112211 vs ve cerey 5
2.1.2 Read_ netÏISf.CpD - SĂ Q11 HH kg He 5
2.1.3 FAN _ATPG 22c 2k 2 2E 2222110111111 1 co 5
2.2 DFT và các kĩ thuật được đề cập -:- 2 s+s++E2EzEezkerkerkerkerxrrkrree 6
2.2.1 Định nghĩa .- Ăn TH HH HH TH nh ghi nh 6
2.2.2 DFT trong sơ đồ thiết kế ASIC: - 2-2 ©E£+E£2EE+EEeEErzErrxerkrred 72.2.3 Sơ đồ DET -.- 2c 2k TH E211 211211211 21111 errri 8
Trang 52.4.1 Định nghĩa «n1 ng nh nh rư 10
2.4.2 Scan flID-ÍÏOD sàn Hà HH 11
2.4.3 SCan ÏnS€TtIOH SG HH HH HH ớt 11
2.4.4 Các chế độ hoạt [0i 08 0T 12
2.4.5 CAC loại SCAM IIS€T{IOI1 - Ăc c5 1331121111111 35511111113 rree 14
2.5 Lý do scan insertion cần thiẾT - ¿5 + teSE+EE2E2EE2E2EEEEerEerkerkrrree 14
Chương 3 GIỚI THIỆU TOOL VÀ TRIÊN KHAI CHỨC NĂNG CHÈN SCANI0 {9)/€600499)0015 15
“2x 090/90 v0.c 15
3.1.1 Các yêu cầu về phần mềm ¿- ¿+ ©+2+++£x++zx+x++rxe+rxee 153.1.2 Các bước để cài FAN ATPG ©2¿©2+2c++cxerxrkeerxerxerxerree 163.1.3 Dùng Visual Code dé chạy debug cho tool -. -2 s- s52 16
3.1.4 _ Phân tích cách tool hoạt động c5 Series 20
3.2 Giải pháp c1 11H HH HH TH TT TH HH HH HH Hư 24
3.2.1 Giải pháp ban đầu 5c Set EEEEE21121 1111 EcEEcree 24
3.2.2 Xử lý chèn scan bằng regular eXpresSiOn: -s-cs+cs+c+2 25
3.2.3 Giải pháp vỀ sau - + + k2 2E E1 E1EE1211211211111 211111111 28Chương 4._ THỰC NGHIỆM VÀ ĐÁNH GIA KET QUA - - 31
4.1 Kịch bản thực nghiệm và phương pháp đánh giá - 5 5-5 ++<+s++ 31
4.1.1 Kịch bản thực nghiỆm - 5 5122111321113 1119111 111v ng ngư, 31
4.1.2 Phương pháp đánh gIá G33 3 ng re 31
4.2 _ Kết quả thực nghi8m o cecccceccccccscsscescesessessessessssscsessessessessesusanssessessesseesease 31
4.2.1 So sánh với kết quả của tool thương mại -:-2: s2 5z555z£: 32
4.2.2 Chay trên FRFAN_ ATIPG - ce 25 L2 kHHHnHn HH HH He, 34
Trang 6Chương 5.
5.1 Kết luận
5.2 Hướng phát triển đề tài
KET LUẬN VA HƯỚNG PHAT TRIEN
Trang 71 Sơ đồ triển khai c:-c2++E tt HH re 5
2 VLSI Design and f€S - -c c 13 192131 1119 11 9 1119 11 ng ng ng 6
3 Một vi mạch gồm User logic and DFT logic [S] - «« -«<<<ss<+ 7
4 ASIC design ÍÏOW HH HH HH HH HH HT nh ng 7
5 DFT f1OW 1 Ố 8
6 ATPG Input va Output 0 eee ececcceseesseceseeceseeceeeeeaeesseeceseeeeseeceeessaeenees 9
m0 9
8 Lỗi Transition delay cccccccccsssscsessssesescsesesscsssesscscsesesscsesessssesesesssseeecseees 10
9 Scan flip-flop (Scan cell) 0n 11
10 Trước va sau khi chèn SCa1n - - 5< 6s E3 E911 991119111 831 9 rrưyn 11
11 Shiftin 4Ð ⁄⁄⁄27 7/ERESE1., TL ÀÀÀ(Ểieeeesseeeseeseees 12
12 Capture 7/7 ổ/ốố6 nh " 12
14 Waveform mơ phỏng chế độ hoạt động của scan - 5s 13
1 Giao diện của VS €OG - 11111222311 111 111193531 11111199311 key 16
2 Giao diện VS code sau khi ấn F] -s-5s+eEk+E£EeEEEeErkerxererxerrxee 17
S920 0n ố 17
A Đường dẫn fỌer - 2-5-2 SE SE2ESE‡E£EE‡EEEEEEEEEEE121212171 1211 xe 18
hà) 0n 18 0N 090810 Ẻ e 18
tập 0u 19
8 Đường dẫn + 2-5252 2E#EE#EEEEEEEE2EE2321 2121211111211 cE.crxe 19
9 Giao dién 090ì100)(00)16¡(9lịaađaađađadtẶ 19 I0 20
11 Option management 01 51a 20
12 Giao diện dịng lệnh - 5 31 3311331111811 118111811 11 11 re 21
13 Nội dung của folder Ýan - 5 5 + 2x x1 ng ng ng ưkp 21
Trang 814 Nội dung của Ïnnf€TFACe 5 5 + + HT TH TH ng Hư 23
15 Nội dung của Interface (tiếp theo) 2- 2 ©52222+£E+£EtzEczresrxerxrres 23
22 Giao diện khi chạy của FAN-ATTPG cư, 30
1 Netlist trước khi chèn SCaH - - 5G c1 11 1v HH ng ng ey 31
2 Netlist sau khi chèn SCa1 - s6 s1 231119301193 E911 9 vn ng ng rưy 32
3 Scanned netlist Ca€TICC - 6 G2 019911930 930 911 9v 0v vn ng cư 33
4 Script S27 n"ð//V 6n nan h 34
5 read ÌIDTATY - So cv SH TH TH TH TH HH HH HH ngư 35
6 Read and report netlist - - + + 1191 93 E1 1 1 1 vn ng cưy 36
T Dud CHCUIE 0 a i4 36
8 LEPOLt CUTCUIE 20002727 36
9 set and add fault 0n e 37
10 static, dynamic compression and X-fill moe «++-s+++<<+ 37
11 run atpg and report statistics ó5 «SH rikt 37
12 Nội dung file FAN_S27.rpt G1 SH HH ng ngư 38
13 Các mẫu thử tool ta0 Ta ¿- 6 SE SESEEEEEEEEESESEEEEEEEEEEEkrkrkrkrkekekree 41
14 lệnh €XIÍ << 1111112211111 ng ng ng y 4I
Trang 9DANH MỤC BANGBảng 4 1 So sánh kết quả netlist
Trang 10DANH MỤC TỪ VIET TAT
ATPG: Automatic Test Pattern Generation
DC: Design Compiler
DFT: Design for testability
DFF: D Flip-Flop
DUT: Device Under Test
FAN: Fanout Node
IC: Integrated Circuit
MIT: Massachusetts Institute of Technology
NTU: National Taiwan University
PI : Primary Input
PO : Primary Output
PPI : Primary Pseudo-Input
PPO : Primary Pseudo-Output
REGEX: Regular Expression
SDFF : scan D flip-flop
SE: Scan Enable
SI: Scan In
SO: Scan Out
VLSI: Very Large Scale Intergration
TAPC: Test Access Point Controller
Trang 11TÓM TẮT KHÓA LUẬN
Ngành thiết kế vi mạch bán dẫn trong những năm gần đây đã trở thành ngành
công nghiệp mũi nhọn của Việt Nam Qua đó nhu cầu về nhân lực cũng như tìm
kiếm cơ hội việc làm ở ngành nảy ngày càng tăng tăng nên việc trang bị những kiến
thức liên quan tới ngành ở trong các trường đại học trở nên cần thiết
Trong lưu đồ thiết kế vi mạch tong thé có một bước mà các chương trình trêntrường đại học hiện nay không được đưa vào nhưng thực tế cũng rất cần thiết trongbat kỳ doanh nghiệp nao làm về mảng VLSI đó là bước DFT nằm giữa front-end vàback-end thực hiện việc kiểm tra vật lý cho chip khi sản xuất
Vì thế trong dé tài này tác giả hướng đến việc giới thiệu các kiến thức liênquan đến DFT cũng như thiết kế một công cụ đơn giản đề thực hiện chèn scan vàgiải thích cách hoạt động của scan trong việc kiểm thử
Nhóm đề xuất sử dụng C++ làm ngôn ngữ lập trình của công cụ, sử dụng thư
viện regex Mục tiêu hướng tới là sẽđưa được một netlist chưa có scan trở thành một netlist có scan.
Trang 12Chương 1 GIỚI THIỆU DE TÀI
1.1 ĐẶT VẤN ĐÈ NGHIÊN CỨU
Trong bối cảnh có ngày càng nhiều các tập đoàn vi mạch lớn trên thế giới đầu tư
vào Việt Nam, trong đó có những tập đoàn hàng đầu của Hoa Kỳ về công nghiệp
bán dan là Intel và Synopsys [1].
Theo Bộ kế hoạch của Cục đầu tư nước ngoài cho biết, trong năm qua (2023) vốn
đầu tư trực tiếp nước ngoài (FDI) vào Việt Nam đạt hơn 25.7 tỉ USD tính tới đầu
tháng 11 năm 2023, tăng 14.7% so với cùng kỳ năm 2022 [2] Cùng với sự phát
triển của ngành bán dẫn trên toàn cầu, Ngành này sẽ sớm trở thành ngành công
nghiệp nghìn tỉ đô vào năm 2030 [2].
Tuy nhiên, dù được cho là ngành công nghiệp “ty đô”, nhưng Việt Nam vẫn đối mặtvới việc thiếu hụt nhân lực về ngành thiết kế vi mạch do thời gian đảo tạo kéo dài từ
6 đến 12 tháng trước khi có thê tham gia vào các dự án của doanh nghiệp [3] Hơn
nữa tông số doanh nghiệp trên toàn quốc trong ngành bán dẫn chỉ có đưới 50 và hầu
hết các nguồn nhân lực đều tập trung tại thành phố Hồ Chí Minh và 95% tổng vốnđầu tư vào ngành này đến từ vốn đầu tư trực tiếp từ nước ngoài (FDD, vì vậy mà
ngành công nghiệp vi mạch bán dẫn chưa thu hút được sự quan tâm đúng mức [3].
Xuất phát từ lý do dé cải thiện thời gian dao tạo nhân lực kéo dài trước khi ki sư có
thể tham gia vào dự án trong các doanh nghiệp đầu tư vào Việt Nam, tác giả đã lựa
chọn nghiên cứu đề tài “Thiết kế EDA tool dé chèn scan trong DFT”
1.2 MỤC TIEU NGHIÊN CUU
1.2.1 Mục tiêu tổng quát
Giới thiệu thiết kế và phân tích cách hoạt động của một open source tool tên là FAN
ATPG làm về một kĩ thuật ATPG trong DFT, thiết kế chức năng scan cho tool đó
1.2.2 Mục tiêu cụ thé
Mục tiêu 1: Đề xuất giải pháp
Trang 13Mục Tiêu 2: giới thiệu tool FAN ATPG bao gồm phân tích cách hoạt động vàphương pháp dé thiết kế chức năng chèn Scan cho tool.
Mục Tiêu 3: Tích hợp chức năng chèn scan vào tool.
1.3 GIỚI HAN DE TÀI
Trong pham vi dé tai nhom sé tién hanh phân tích cách hoạt động, cấu trúc đữ liệu,
giao diện và khả năng xử lý file verilog (.v) của open source tool FAN ATPG và thêm vào đó khả năng chèn scan vào một flatten netlist.
1.4 KET QUÁ MONG MUON
Về lý thuyết, nhóm mong muốn sẽ truyền dat lý thuyết về DFT và làm rõ vì sao
bước này rất quan trọng và được các trường đại học trên thế giới chú trọng Qua đóthê hiện được mong muốn đưa DFT vào chương trình giảng dạy của các trường đạihọc ở Việt Nam với mục đích tối ưu lượng thời gian đào tạo nhân lực ở các doanhnghiệp Về thực tiễn nhóm mong muốn sẽ giới thiệu được một công cụ mã nguồn
mở dé dao tao sinh viên vê DFT.
1.5 BÓ CỤC LUẬN VĂN
Báo cáo này được chia làm năm chương, mỗi chương có nội dung được trình bày
như sau:
Chương 1: Giới thiệu đề tài
Chương dau tiên sẽ giới thiệu tông quan về đê tài khóa luận, đặt van đê và lý do vi
sao nhóm chọn đê tài Mục tiêu đê ra, giới hạn đê tài và kêt quả mà nhóm mong
muốn đạt được
Chương 2: Đề xuất giải pháp triển khai
Chương này trình bày giải pháp dé tác giả triển khai một công cụ có kha năng chènscan vào một thiết kế vi mạch chưa có scan, trình bày các lý thuyết liên quan và giảithích ly do vì sao scan cũng như bước DFT lại cần thiết
Trang 14Chương 3: Giới thiệu tool và triển khai chức năng chèn scan trong tool
Chương này nhóm sẽ giới thiệu một open source tool đã được hoàn thiện các chức
năng xử lý file verilog, xử lý thư viện công nghệ và có 1 giao diện để có thê thựchiện các chức năng trong tool Đồng thời đề xuất phương pháp mà nhóm sẽ thêm
chức nang scan vào trong tool.
Chương 4: Thực nghiệm và đánh giá kết quả
Sau khi đã hiện thực được chức năng chèn scan, tác giả sẽ tiễn hành kiểm tra so
sánh kết quả mà tác giả thu được với kết quả mà một tool trả phí cho ra
Chương 5: Kết luận và hướng phát triển
Chương cuối sẽ tổng kết lại khóa luận, tóm tắt lại công việc mà nhóm đã hoànthành, những kết quả và thành tích đạt được và đưa ra đề xuất cho hướng phát triển
tiếp theo của đề tài trong tương lai
Trang 15Chương2 DE XUẤT GIẢI PHÁP TRIEN KHAI
2.1 GIAI PHAP TRIEN KHAI
Nghĩa là sẽ thực hiện việc biến đổi các DFF trong netlist đầu vào thanh SDFF ở
netlist đầu ra Các SDEF khác với DFF ở chỗ là sẽ được thêm các thành phần test
vào trong câu trúc.
2.1.3 FAN ATPG
Đây là tool dé thực hiện ATPG sau bước chèn scan Đây là tool mã nguồn mở dé
thực hiện riêng bước A'TPG.
Trang 162.2 DFT và các kĩ thuật được đề cập
2.2.1 Dinh nghĩa
Design for testablity hay DFT là bước sử dụng các kĩ thuật kiểm tra để giúp chomột thiết kế có thé được kiểm tra dé dang và day đủ hơn sau khi sản xuất thành chip
mà không cần quan tâm đến chức năng (function) của thiết kế đó [5] Đây có thê
được xem là một bước kiểm tra các lỗi vật lý của chip.
test cho một lô sản phẩm 100.000 chip là khoảng 35 ngày, cho 1 triệu chip là 347ngày Với DFT, tổng thời gian test có thé giảm lên đến 10 lần nhưng sẽ làm tăng
kích thước của chip do phải thêm không gian dé thêm các logic DFT [5]
Trang 17User logic DFT logic
(for using) (for testing)
Hình 2 3 Một vi mach gồm User logic and DFT logic [5]
2.2.2 DFT trong sơ đồ thiết kế ASIC:
ASIC DESIGN FLOW
Hình 2 4 ASIC design flow
Trong sơ đồ thiết kế ASIC có thé thấy là trong quá trình làm DFT sẽ cần đến thưviện công nghệ dé hỗ trợ các cấu trúc DFT, phân tích độ tin cậy và chân đoán lỗi,
dam bao tính kha thi của DFT Nên trong một bộ công cụ về DFT thì thư viện côngnghệ đóng vai trò hết sức quan trọng trong phạm vi luận văn thư viện công nghệ
được sử dụng sẽ là mod_nangate45.mdt và Nangate OpenCellLibrary.v (đây là một
pdk 45nm mã nguồn mở)
Trang 18Performed with Third-Party Tool
ATPG Pattern Generation
Hình 2 5 DFT flow
(Nguồn: DFT Tessent flow)
Trên đây là so đồ cụ thé trong bước DFT của EDA tool Tessent do mentor Graphic
phát triển Cac sơ đồ của các tool khác có thé khác một chút Trong phạm vi luận
văn thì tac giả chỉ tập trung vào bước scan Insertion trong flow Tuy nhiên, do tác
giả sẽ phát triển tính năng này trên một open source tool về ATPG nên sẽ trình bày
sơ qua về lý thuyết của ATPG
2.3 Atpg
2.3.1 Dinh nghĩa
ATPG (Automatic Test Pattern Generation) trong VLSI (Very-Large-Scale
Integration) là một lĩnh vực quan trọng, tập trung vào việc tao ra các mẫu kiểm tra
tự động dé phát hiện và chân đoán moi lỗi có thé phát sinh trong quá trình vận hành
mạch, các lỗi trong quá trình sản xuât.
Trang 19Phát Hiện Lỗi: Tạo ra các mẫu đầu vào (test patterns) dé kích thích mạch và kiêm
tra dau ra, nhăm phát hiện các lỗi như lôi ngăn mạch, lôi mở mach, và các lôi khác.
Đánh Giá Độ Tin Cậy: Xác định khả năng của mach dé hoạt động đúng đắn dưới
các điều kiện khác nhau
2.3.3 Mô Hình lỗi cơ bản
Mô hình lỗi stuck -at fault : Mô hình lỗi Stuck-at là một trong những mô hình lỗi cơ
bản nhất và được sử dụng rộng rãi trong DFT Trong mô hình này, một nút củamach được giả định là bị "kẹt" ở mức logic cao (1) hoặc thấp (0), bất ké tín hiệu đầu
vào Mô hình lỗi Stuck-at đơn giản nhưng hiệu quả trong việc phát hiện các lỗi cơ
Trang 20Mô hình lỗi transition delay fault: Mô hình này xem xét các tình huống nơi mà sựchuyên đổi từ trạng thái logic này sang trạng thái khác (từ 0 sang 1 hoặc ngược lại)xảy ra chậm hơn mức độ chấp nhận được Điều này có thé do sự cố vật lý như sựthay đôi của đặc tính điện tử hoặc do lỗi trong quá trình sản xuất.
Gồm có 3 thuật toán là D-Algorithm, thuật toán PODEM và thuật toán sẽ được sửdụng trong bộ tool là FAN ( một thuật toán cải tiễn của PODEM)
D-Algorithm: Một trong những thuật toán đầu tiên, dùng dé tìm ra mẫu kiểm tra
phát hiện lỗi cụ thể trong mạch
Thuật toán PODEM: (Path-Oriented Decision Making) là một phương pháp hiệu
quả hơn, sử dụng backtracking đề tìm mẫu kiêm tra
FAN Algorithm: Một cai tiến của PODEM, tối ưu hóa quá trình tìm kiếm mẫu kiểm
tra [7].
2.4 Scan
2.4.1 Dinh nghĩa
Scan là kĩ thuật đầu tiên và cũng là kĩ thuật cơ bản nhất đối với một kĩ sư khi tiếp
cận DFT trong ngành VLSI Scan được hiểu là một phương pháp sửa đổi thiết kế dégiúp cho việc kiểm tra một mạch tích hợp (IC) hay một con chip (thiết kế tuần tự)được trở nên dễ dàng hơn, phương pháp này được gọi là kiểm tra cấu trúc hay
10
Trang 21“scan” vì nó liên quan đến việc quét các mẫu kiểm tra vào các mạch bên trong thiết
bị được kiểm tra (DUT) Các flop trong thiết kế được sửa đồi thành “scan
flip-flop” cho phép chúng ta có thé điều khiển và quan sát được các lỗi có thé xảy ratrong quá trình thử nghiệm.
2.4.2 Scan flip-flop
Hinh 2.9 Scan flip-flop (Scan cell)Trên đây là cấu trúc của một scan flip-flop Trong một thiết kế DFT thì tat ca các
flip-flop trong thiết kế sẽ được chuyền thành cấu trúc như trên hình 2.8 dé có thé
đưa các mẫu kiểm tra vào trong.
2.4.3 Scan Insertion
Quá trình chuyên đổi từ các flip-flop thường chuyền thành scan flip-flop được gọi làquá trình Scan Insertion Khi một thiết kế được chèn scan thì các scan cell sẽ đượcnối với nhau tạo thành một chuỗi scan như hình 2.9
Non-scan
Hình 2 10 Trước và sau khi chèn scan
lãi
Trang 222.4.4 Các chế độ hoạt động của scan
Scan có 2 chế độ hoạt động là test mode và normal mode Dưới đây là cách mà scanhoạt động.
e = Shift In
Shift In Mode
Hinh 2 11 Shift inĐầu tiên là bật test mode bằng cách đưa SE = 1 Lúc đó SI sẽ được truyền vào tuần
tự như cách mà một thanh ghi dịch hoạt động
Trang 23e = Shift out
Sau khi capture thì bật SE =1 dé quay lại test mode Lúc này ta có thé quan sátScan out dé đánh giá kết quả kiểm tra Trong lúc scan out thì quá trình Shift in tiếp
theo sẽ được diễn ra và cứ lặp đi lặp lại cho đến mẫu test cuối cùng.
Shift In Capture Shift Out
Scan Enable nn tee A ee
Trang 242.4.5 Các loại scan insertion
Có 2 loại đó là scan một phan va scan toàn phan Trong phạm vi luận van thì tac gia
sẽ làm theo scan toàn phần đó là thay toàn bộ các phần tử flip-flop trong một thiết
kế thành Scan flip-flop Giả sử như đang làm việc trên một thiết kế không có yêu
câu về non-scan list (là danh sách các phân không được chèn scan).
2.5 Lý do scan insertion cần thiết
Như đã trình bày ở trên các lý thuyết về DFT cũng như chèn scan thì với lý do là vì
độ phức tạp của các thiết kế VLSI ngày càng tăng thì việc kiểm tra chip ngày càngkhó khăn Vì vậy nên DFT cần thiết vì nó giảm thiểu được chi phí test mạch trướckhi đưa vào sản xuất hàng loạt Về van dé tăng kích thước của thiết kế và hiệu suất
hoạt động của chip sau khi thực hiện DFT thì đã được nghiên cứu trong [8] Qua đó
ta có thê thấy việc thực hiện DFT trong một dự án lớn về VLSI là cân thiết để đảmbảo được sản ph ầm cuối cùng hoạt động ồn định
14
Trang 25Chương 3 GIỚI THIỆU TOOL VÀ TRIEN KHAI CHỨC NANG CHEN
SCAN TRONG TOOL
3.1 Tool FAN ATPG
Đây là Open Source tool do một nhóm nhiều các thành viên của đại học quốc giaĐài Loan (NTU) tên là LaDS phát triển dé làm các chức năng của ATPG theo thuậttoán FAN Tool này dé giấy phép sử dụng là MIT, một giấy phép giúp tat cả mọi
người có thê truy cập và phát triển tính năng cho tool này
Lý do tác giả chọn FAN ATPG để phát triển là do bộ công cụ này đã được các
thành viên senior của NTU code đầy đủ giao diện và các cấu trúc dữ liệu liên quan
đến VLSI như lớp Cell, Port, Net, Netlist, Techlib (thư viện công nghệ) và lớpvlog_file để xử ly file verilog (.v)
3.1.1 Các yêu cầu về phân mêm
Phiên bản mới nhất của FAN ATPG được chạy trên môi trường Linux và có yêu
N À
câu vê
Compiler : std C++ 11 (GCC 4.8.1 +)
C++11 là phiên bản của tiêu chuan ISO/IEC 14882 cho ngôn ngữ lập trình C++
Các công cụ khác : Bison và Lex (Bison 3.5.1 + va lex 2.6.4)
Lex và Bison là các công cụ dé xây dựng chương trình xử lý dữ liệu đầu vào có cầutrúc Là công cụ g1úp tạo trình phân tích cú pháp Hay nói cách khác là công cụ giúp tạo trình biên dịch.
Lưu ý là version của Bison sẽ dựa trên version của hệ điều hành Linux
Cú pháp để cài 2 công cụ là:
sudo apt install bison
sudo apt install flex
Cú pháp đê kiêm tra version của công cụ là :
15
Trang 26bison version
lex —version
3.1.2 Cac bước dé cài FAN ATPG
Bước 1: Dùng git clone dé dua project về máy:
git clone https://github.com/NTU-LaDS-II/FAN_ATPG gitBước 2: Đổi thu mục:
cd FAN_ ATPG/
Bước 3: Compile
Make3.1.3 Ding Visual Code để chạy debug cho tool
Visual code là một IDE rất phô biến với các lập trình viên vi IDE nay nhẹ và nhanh
Hơn nữa Visual code có tích hợp các Extension khiến cho việc đọc code hay debug
Hình 3 I Giao diện của VS code
Cách sử dung VS code dé chạy debug cho tool như sau:
16