Direct Test và Random Test Trong Verification

Thứ Sáu, 24 tháng 10, 2025

Chào các bạn, hôm nay mình cùng Học Vi Mạch Cùng ICTC sẽ nói về một chủ đề quen thuộc nhưng luôn khiến nhiều kỹ sư verification băn khoăn: Direct Test và Random Test, đâu là lựa chọn tốt hơn?

Thực ra, cả hai đều cần thiết. Nếu ví quá trình kiểm thử như lái thử một chiếc xe mới, thì direct test là khi bạn kiểm tra đèn, phanh, cần số trong bãi thử; còn random test là khi bạn lái xe ra đường thật nơi mọi thứ có thể xảy ra. Cả hai giúp bạn hiểu rõ DUT (Design Under Test) nhưng ở hai góc độ khác nhau.

Direct test cho phép bạn kiểm soát hoàn toàn như biết rõ mình đang kiểm tra gì và mong đợi kết quả ra sao. Ví dụ, với bộ đếm 8-bit, bạn có thể đặt count_enable = 1 trong 20 chu kỳ và mong đợi DUT đếm từ 0 đến 19. Cách này dễ debug và hữu ích trong giai đoạn đầu khi cần xác minh các chức năng cơ bản. Tuy nhiên, direct test chỉ kiểm tra được những gì bạn nghĩ đến. Khi dự án lớn lên, việc viết hàng loạt test tương tự trở nên tốn thời gian, khó chỉnh sửa và mở rộng.

Với random test, bạn không cố định mọi thứ nữa. Chỉ với assert(obj.randomize()); và một vài constraint hợp lý, bạn có thể tạo ra hàng nghìn biến thể khác nhau của cùng một transaction, từ bật/tắt enable ngẫu nhiên, chèn reset giữa chừng, đến thay đổi mode đếm. Trong giao thức phức tạp như USB hay SPI, random test còn giúp tạo ra các tình huống thực tế như truyền gói dữ liệu có độ dài khác nhau, thay đổi mode CPOL/CPHA, chèn delay ngẫu nhiên giữa các frame, hoặc xen lẫn các lỗi giả lập như bit bị đảo. Chính sự ngẫu nhiên có kiểm soát này giúp phát hiện những bug mà direct test bỏ sót.

Cuối cùng, direct test và random test không đối lập, mà bổ trợ cho nhau. Giai đoạn đầu, direct test giúp bring-up IP và xác minh chức năng cơ bản. Khi testbench ổn định, random test mở rộng coverage, thử thách DUT trong các điều kiện phức tạp, giúp phát hiện bug tiềm ẩn mà khó phát hiện nếu chỉ dùng direct test.

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

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ứ Sáu, 24 tháng 10, 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

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

Intel Đang Trên Đường Trở Lại?

Intel Đang Trên Đường Trở Lại?

Cách đây tầm nửa năm, chẳng ai tin Intel có thể trở lại, bao gồm cả Học Vi Mạch Cùng ICTC. Thế nhưng giờ thì chắc hẳn nhiều người đang bắt đầu phải xem lại nhận định này. Sau nhiều năm mất vị thế trong lĩnh vực sản xuất bán dẫn, đặc biệt là trước sự thống trị của...

BÀI 5: Tìm Hiểu Về Timing Violation Trong Physical Design

BÀI 5: Tìm Hiểu Về Timing Violation Trong Physical Design

Bài viết tiếp theo của anh PD lead tại Học Vi Mạch Cùng ICTC.----Ở bài viết trước, chúng ta đã tìm hiểu về congestion, nó giống như tình trạng kẹt xe khiến việc routing các tín hiệu phải đi vòng vèo, thì timing violation lại giống như việc các “xe dữ liệu” đến...

Qualcomm Mua Lại Arduino

Qualcomm Mua Lại Arduino

Mấy bạn sinh viên ngành điện tử chắc hẳn ai cũng biết đến Arduino - nền tảng phần cứng mã nguồn mở nổi tiếng, đã trở thành người bạn đồng hành của rất nhiều kỹ sư và người yêu công nghệ trên toàn thế giới. Với ưu điểm dễ sử dụng, giá rẻ và cộng đồng hỗ trợ đông đảo,...

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