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

Công nghệ 3D trong vi mạch có giống thiết kế 3D đồ họa không?

Công nghệ 3D trong vi mạch có giống thiết kế 3D đồ họa không?

Xưa nhớ có bạn hỏi: “Anh ơi, học vi mạch có cần mua máy mạnh để thiết kế 3D không ạ?” Này không biết sao mà bạn hiểu nhầm thiết kế vi mạch thành thiết kế đồ họa. Chắc có lẽ bạn nghe đâu đó về "3D" khi nói tới vi mạch nên hiểu nhầm. Trong ngành chip thì "3D" không...

Hướng DFT Trong Thiết Kế Chip Có Gì Hay?

Hướng DFT Trong Thiết Kế Chip Có Gì Hay?

Xưa lúc mới là fresher vào công ty, trước khi chọn nhóm, các leader sẽ lần lượt lên thuyết trình về team của mình. Nào là sẽ trở thành expert, nào là sẽ được làm việc với công nghệ tiên tiến nhất… ai cũng muốn dụ người tài về team mình. Mấy anh leader RTL, DV, PD...

Chặng đường để tự thiết kế một CPU đơn giản?

Chặng đường để tự thiết kế một CPU đơn giản?

Hãy tưởng tượng một ngày nào đó, bạn nhận được đề bài tập lớn của môn học: “Thiết kế một vi xử lý RISC-V 32-bit.”Trong khi mình chỉ nắm trong tay các kiến thức của môn kỹ thuật số cơ bản mà mình đã học trong kỳ trước. Vậy bạn sẽ làm gì và bắt đầu như thế nào? Nghe thì...

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