Series Các Bài Viết Cơ Bản Về Vi Mạch – Phần 7: Công Việc Của Kỹ Sư Kiểm Tra Thiết Kế

Thứ Bảy, 22 tháng 02, 2025

Bên cạnh việc thiết kế RTL, một giai đoạn cực kỳ quan trọng khác trong chuồi thiết kế chip là Kiểm tra (xác minh) Thiết kế – Design Verification.

Design Verification (DV) là gì?

DV là quá trình kiểm tra và đảm bảo thiết kế hoạt động đúng với các yêu cầu đề ra (specification). Mục tiêu chính là phát hiện và khắc phục các lỗi (bug) trước khi RTL được tổng hợp (synthesize) và sản xuất (manufacture).

Nếu RTL Design là viết code để tạo ra một mạch số, thì Verification chính là viết code để “thử” mạch số đó, đảm bảo nó hoạt động đúng chức năng mong muốn.

Verification hoạt động như thế nào?

Verification sử dụng các mô hình kiểm tra (testbench) để gửi các tín hiệu đầu vào và quan sát đầu ra của thiết kế, so sánh kết quả thu được với kết quả mong muốn. Việc kiểm tra được thực hiện thông qua nhiều kỹ thuật khác nhau như:

  • Mô phỏng (Simulation): Kiểm tra thiết kế trên phần mềm mô phỏng.
  • Kiểm tra formal (Formal Verification): Sử dụng các kỹ thuật toán học để chứng minh tính đúng đắn của thiết kế.
  • Kiểm tra trực tiếp (Directed Testing): Viết các tình huống kiểm tra cụ thể dựa trên spec.
  • Kiểm tra ngẫu nhiên (Random Verification / Constrained Random Testing): Tạo ra các tín hiệu ngẫu nhiên tuân thủ một số ràng buộc nhất định.
  • Coverage Metrics: Đánh giá mức độ bao phủ của verification (đã kiểm tra được bao nhiêu trường hợp có thể xảy ra).

Các bước học Verification

  1. Nắm vững kiến thức về mạch số: Các nguyên tắc hoạt động của các khối mạch số (Adder, MUX, FSM, …).
  2. Học ngôn ngữ mô tả phần cứng (HDL): Verilog và đặc biệt là SystemVerilog là ngôn ngữ chính trong Verification.
  3. Làm quen với UVM (Universal Verification Methodology): framework giúp xây dựng testbench một cách chuẩn hóa và chuyên nghiệp.
  4. Làm quen với tool mô phỏng như VCS, Questa, ModelSim.
  5. Học các chuẩn giao tiếp trong chip và peripheral phổ biến như AMBA, UART, I2C, SPI…
  6. Tập phân tích yêu cầu thiết kế, xây dựng kế hoạch kiểm tra, viết testcase và chạy mô phỏng.

Quá trình phát triển của một kỹ sư Verification

  • Fresher – Junior (0-3 năm kinh nghiệm): Viết test case cơ bản, học cách debug, các chuẩn giao tiếp cơ bản. Chủ yếu verify ở IP level.
  • Senior (5+ năm kinh nghiệm): Xây dựng và tối ưu testbench, quản lý coverage, review test case. Các Senior Engineer có khả năng verify cho các IP và chuẩn giao tiếp phức tạp. Có kiến thức và kinh nghiệm về system để đảm nhận các khối hoặc subsystem quan trọng trong chip.
  • 10 năm kinh nghiệm: Lead Verification team, tham gia xây dựng chiến lược verification. Ở giai đoạn này, kỹ sư Verification không chỉ đơn thuần viết testbench hoặc chạy test mà đã có đủ kinh nghiệm để dẫn dắt một nhóm. Họ chịu trách nhiệm phân chia công việc cho các thành viên trong nhóm, đảm bảo mỗi phần của kế hoạch verification được thực hiện đúng tiến độ và chất lượng. Họ cũng bắt đầu tham gia vào các quyết định kỹ thuật lớn về kiến trúc verification để đảm bảo tính mở rộng (scalability) và hiệu suất (efficiency) của môi trường kiểm tra
  • 15+ năm kinh nghiệm: Khi đạt đến mốc 15 năm kinh nghiệm, kỹ sư Verification có thể đảm nhận vai trò Verification Architect, chịu trách nhiệm xây dựng toàn bộ hệ thống verification cho full chip, bao gồm Thiết kế kiến trúc môi trường verification ở cấp độ Full Chip, đảm bảo mọi block và subsystem đều được kiểm tra đúng cách, Xây dựng kế hoạch test từ SoC level, xác định cách thức kiểm tra các giao tiếp phức tạp giữa nhiều IP (protocol verification, performance testing, power-aware verification…)

Verification là công việc thách thức và quan trọng, quyết định chất lượng của chip trước khi sản xuất. Nếu bạn yêu thích debug, phân tích logic và tìm kiếm lỗi, thì Verification chính là lĩnh vực phù hợp dành cho bạn.

Quay về main page

——————————————————

Hiện tại ICTC đang mở các khóa học thiết kế vi mạch từ cơ bản đến nâng cao, các bạn có thể tìm hiểu tại các bài viết sau nhé:

 

Truy cập Server EDA Miễn Phí của ICTC để thực hành thiết kế vi mạch:
Truy cập Server EDA Miễn Phí

 

Thứ Bảy, 22 tháng 02, 2025

Đội Ngũ Giảng Viên Đến Từ Các Công ty vi mạch hàng đầu với NHiều năm kinh nghiệm

Khóa học thiết kế vi mạch ICTC giảng viên từ Ampere
Khóa học thiết kế vi mạch ICTC giảng viên từ Renesas
Khóa học thiết kế vi mạch ICTC giảng viên từ MediaTek Singapore
Khóa học thiết kế vi mạch ICTC giảng viên từ BOS
Khóa học thiết kế vi mạch ICTC giảng viên từ Marvell
Khóa học thiết kế vi mạch ICTC giảng viên từ Renesas
Khóa học thiết kế vi mạch ICTC giảng viên từ NSING

Nổi Bật

ICTC DV TECH TALK

ICTC DV TECH TALK

Để giúp các bạn hiểu rõ hơn về Design Verification (DV) – một trong những lĩnh vực quan trọng trong ngành IC Design, ICTC sẽ tổ chức một buổi DV Tech Talk nhằm giới thiệu tổng quan về lĩnh vực này cũng như chia sẻ kinh nghiệm học tập và phát triển trong ngành. Buổi...

Workshop Làm Quen Với Linux

Workshop Làm Quen Với Linux

Để giúp các bạn làm quen với command line, terminal trong Linux, ICTC sẽ tổ chức một buổi workshop về Linux với cơ hội thực hành trực tiếp trên Server ICTC cùng host là anh Thông (người xây dựng và quản lý Server ICTC). Nội dung workshop: Hướng dẫn làm quen và thực...

Final Project Của Lớp Thiết Kế Vi Mạch Cơ Bản

Final Project Của Lớp Thiết Kế Vi Mạch Cơ Bản

Boom!  Cảm giác vỡ òa khi màn hình hiện kết quả design của bạn đã "pass" golden model – cửa ải cuối cùng trước khi “tốt nghiệp”!À quên, còn một điều kiện là coverage phải đủ nữa nha  Nhưng mà... cái cảm giác được thông báo ALL_PASSED vẫn là một điều gì đó thật đặc...

Bài Viết Mới

Viettel Làm Chip 32nm

Viettel Làm Chip 32nm

Mấy nay không theo dõi tin tức nên mình cập nhật hơi muộn một chút . Trước đây khi Viettel công bố định hướng làm chip, mình từng đoán là họ sẽ đi từ những node "trưởng thành" tầm như 65-90nm để tích lũy kinh nghiệm trước. Nhưng cuối cùng thì mục tiêu là 32nm, và...

Dùng node công nghệ càng nhỏ có phải lúc nào cũng tốt?

Dùng node công nghệ càng nhỏ có phải lúc nào cũng tốt?

Có một câu hỏi mà gần như ai bước vào lĩnh vực VLSI cũng từng thắc mắc: Tại sao trong thiết kế vi mạch lại có quá nhiều con số nm, và khi con số đó giảm xuống thì thực sự điều gì thay đổi? Nhiều người mới thường nghĩ rất đơn giản rằng nm chính là kích thước của...

Functional Coverage – Phân tích Coverage Report với ví dụ ALU

Functional Coverage – Phân tích Coverage Report với ví dụ ALU

Chào các bạn, ở bài viết trước chúng ta đã cùng tìm hiểu về Functional Coverage và vì sao 100% Code Coverage vẫn chưa đủ để đảm bảo thiết kế đã được verify đầy đủ. Trong bài viết tuần này, cùng mình và Học Vi Mạch Cùng ICTC sẽ tiếp tục với ví dụ ALU ở bài...

BẠN CHƯA BIẾT BẮT ĐẦU TỪ ĐÂU?

Sau nhiều năm tư vấn và đào tạo vi mạch cho hàng trăm bạn sinh viên, học sinh và phụ huynh, kết hợp với kinh nghiệm từ các anh chị kỹ sư vi mạch có nhiều năm kinh nghiệm, đây là tất cả những kinh nghiệm và tài liệu mà mình đúc kết, tổng hợp lại được thành một quy trình tìm hiểu ngành vi mạch để các bạn mình mới tham gia vào ngành có thể bắt đầu một cách hiệu quả nhất.

 

Bấm nút bên dưới để tìm hiểu về ngành, về nghề nghiệp cũng như những thứ bản thân cần chuẩn bị để tham gia vào hành trình trở thành kỹ sư vi mạch tuy có phần gian nan nhưng vô cùng thú vị bạn nhé!

LỘ TRÌNH TỰ HỌC VI MẠCHGROUP CHAT HỌC TẬP VI MẠCH