Bắt Đầu Tìm Hiểu SystemVerilog và UVM Cho Verification Sao Cho Hiệu Quả?

Thứ Tư, 29 tháng 01, 2025



Trong bài trước, chúng ta đã tìm hiểu sự khác biệt giữa SystemVerilog (SV) và UVM. Vậy làm thế nào để tiếp cận SystemVerilog cho mục đích verification và UVM một cách hiệu quả?

Để bắt đầu, bạn nên tập trung vào các khái niệm cốt lõi sau đây:

  • Data Type: bit, logic, array, structure
  • Control Flow: Cấu trúc điều khiển if-else, case, loop, foreach
  • Lập Trình Hướng Đối Tượng (OOP): class, object, inheritance, polymorphism
  • Randomization và Constraint: Tạo dữ liệu kiểm thử ngẫu nhiên
  • Assertion và Functional Coverage: Đảm bảo quá trình kiểm thử hoàn tất.

Việc kết hợp giữa tìm hiểu lý thuyết và thực hành là rất quan trọng. Hãy bắt đầu bằng việc viết testbench đơn giản để kiểm thử các module như FIFO, SRAM, Counter,… Điều này sẽ giúp bạn hiểu rõ hơn về cách SystemVerilog hoạt động trong thực tế.

Khi đã nắm vững các khái niệm cơ bản, hãy tiến hành mô hình hóa các khối chức năng trong testbench:

  • Driver: Đẩy dữ liệu vào thiết kế
  • Monitor: Quan sát dữ liệu đầu ra
  • Scoreboard: So sánh kết quả thực tế với kết quả mong đợi

Những khối này là nền tảng để bạn dễ dàng chuyển sang học UVM, vì UVM sử dụng các thành phần tương tự như uvm_driver, uvm_monitor, uvm_scoreboard. Tuy nhiên, UVM mở rộng và chuẩn hóa chúng thành một hệ thống chuyên nghiệp hơn.

UVM (Universal Verification Methodology) tập trung vào việc chuẩn hóa cấu trúc testbench và cơ chế hoạt động trong các bài kiểm thử. Một số câu hỏi quan trọng bạn nên tìm hiểu khi học UVM:

  • Khi bấm run simulation, điều gì sẽ xảy ra?
  • Các phase trong UVM (build phase, run phase, shutdown phase,…) hoạt động như thế nào?
  • Làm thế nào để quản lý và cấu hình dữ liệu testbench bằng UVM Factory và Config DB?

Hình minh họa dưới đây được trích từ tài liệu giảng dạy tại ICTC, mô tả chi tiết các phase trong UVM. Đây là một phần nội dung mà tụi mình xây dựng nhằm giúp học viên dễ dàng hình dung cách vận hành và tổ chức testbench trong thực tế.

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

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ứ Tư, 29 tháng 01, 2025
Đức Lê

Đức Lê

Mình đã có hơn 10 năm làm việc trong lĩnh vực vi mạch, tập trung vào khâu thiết kế RTL. Dù là một ngành nghề đang phát triển mạnh mẽ, thế nhưng, thông tin về thiết kế vi mạch vẫn còn khá mơ hồ, không rõ ràng. Điều này làm cho những người trẻ, đặc biệt là những ai mới bước vào lĩnh vực này, gặp không ít khó khăn khi muốn tìm hiểu và tiếp cận kiến thức. Nhận thức được những khó khăn này, chúng mình quyết định thành lập ICTC - một nơi không chỉ chia sẻ kiến thức mà còn truyền đạt những thông tin thực tế, từ cơ bản đến chuyên sâu về lĩnh vực thiết kế vi mạch. Mục tiêu của ICTC là giúp các bạn trẻ nắm vững kiến thức, hiểu rõ về ngành nghề và từ đó, có thể xây dựng một hướng đi đúng đắn cho sự nghiệp trong tương lai của mình. Chúng mình tin rằng, với sự đam mê và kiến thức chuyên sâu, mọi khó khăn đều có thể vượt qua, và hành trình chinh phục thế giới vi mạch sẽ trở nên thú vị hơn bao giờ hết.

Độ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