KHÁM PHÁ KIẾN THỨC

Track C: Design Verification & UVM

Verification plan, testbench nhiều lớp, debug và coverage, UVM từ nền tảng tới RAL và sign-off.

  • Vì sao verify; verification vs validationĐang tải tiến độ
  • Các giai đoạn & kỹ thuật (directed, CRV, ABV, formal, CDV)Đang tải tiến độ
  • Đọc DUT spec, features & corner casesĐang tải tiến độ
  • Verification plan, pass/fail criteriaĐang tải tiến độ
  • Reference model & checkingĐang tải tiến độ
  • Linear → file-based → random → self-checkingĐang tải tiến độ
  • Layered TBĐang tải tiến độ
  • TB cho FIFOĐang tải tiến độ
  • Kết thúc test khi các nghĩa vụ đã hoàn tấtĐang tải tiến độ
  • RTL simulation hoạt động thế nàoĐang tải tiến độ
  • Đọc waveform, display hiệu quảĐang tải tiến độ
  • Phương pháp debugĐang tải tiến độ
  • statement/block/expression/toggle/assertion, unreachableĐang tải tiến độ
  • Vì sao dùng UVM và khi nào cần dùng?Đang tải tiến độ
  • Cài UVM và chạy test đầu tiênĐang tải tiến độ
  • object vs component, uvm_rootĐang tải tiến độ
  • print/copy/clone/compare/pack, printer/comparerĐang tải tiến độ
  • utility/field macrosĐang tải tiến độ
  • factory & overridesĐang tải tiến độ
  • UVM reporting: mức độ, ID và chính sách báo lỗiĐang tải tiến độ
  • Ghi transaction để truy vết và debugtự chọnĐang tải tiến độ
  • UVM phases: từ xây dựng đến kết thúc testĐang tải tiến độ
  • drain timeĐang tải tiến độ
  • heartbeatĐang tải tiến độ
  • user-defined phases, phase jumping, domainsĐang tải tiến độ
  • Config DB: truyền cấu hình theo phạm viĐang tải tiến độ
  • Resource DB: tra cứu và quản lý tài nguyênĐang tải tiến độ
  • Truyền virtual interface tới các componentĐang tải tiến độ
  • Configuration object: gom cấu hình có cấu trúcĐang tải tiến độ
  • parameterized UVM classesĐang tải tiến độ
  • Sequence item: mô tả một transactionĐang tải tiến độ
  • UVM driver: bắt tay với sequencerĐang tải tiến độ
  • Monitor: quan sát và dựng lại transactionĐang tải tiến độ
  • Sequencer và sequence: tạo luồng stimulusĐang tải tiến độ
  • active/passiveĐang tải tiến độ
  • Scoreboard: đối chiếu kết quả với mô hình tham chiếuĐang tải tiến độ
  • Subscriber: nhận và xử lý transaction quan sát đượcĐang tải tiến độ
  • Ghép environment, test và topĐang tải tiến độ
  • ghép TB đầy đủĐang tải tiến độ
  • get_next_item/item_done, get/put, responseĐang tải tiến độ
  • start() vs uvm_doĐang tải tiến độ
  • Cấu hình sequence và điều khiển việc chạyĐang tải tiến độ
  • Virtual sequence: phối hợp nhiều luồng stimulusĐang tải tiến độ
  • Arbitration, lock và grab trên sequencerĐang tải tiến độ
  • sequence libraryĐang tải tiến độ
  • pipelined driver, reactive sequenceĐang tải tiến độ
  • Interrupt và sequence layeringĐang tải tiến độ

C9: TLM

Cần học trước: C7 First UVM testbench.

  • put/get blocking/nonblocking, port/export/impĐang tải tiến độ
  • analysis port, _decl macrosĐang tải tiến độ
  • TLM FIFO: đệm và tách nhịp giữa componentĐang tải tiến độ
  • sockets, generic payloadĐang tải tiến độ
  • Kiến trúc scoreboard và dữ liệu đang chờĐang tải tiến độ
  • Tích hợp SVA vào môi trường UVMĐang tải tiến độ
  • Functional coverage trong môi trường UVMĐang tải tiến độ

C11: RAL

Cần học trước: C9 TLM.

  • Vì sao cần Register Abstraction Layer?Đang tải tiến độ
  • Xây register model: block, register, field và mapĐang tải tiến độ
  • adapter, predictorĐang tải tiến độ
  • frontdoor/backdoor, HDL accessĐang tải tiến độ
  • Các sequence kiểm thanh ghi có sẵnĐang tải tiến độ
  • memories, special registers, mem_mamĐang tải tiến độ
  • Coverage của register modelĐang tải tiến độ
  • callbacks, event/pool, barrierĐang tải tiến độ
  • singleton, uvm_pool/queue, cmdlineĐang tải tiến độ
  • project organization, block→integration, reusable VCĐang tải tiến độ
  • regression, seedĐang tải tiến độ
  • debug lỗi UVM thường gặpĐang tải tiến độ
  • bug lifecycle, metrics, sign-off, tapeout checklistĐang tải tiến độ
  • Post-silicon validation và liên hệ với pre-silicon DVtự chọnĐang tải tiến độ
  • design vs DV, làm việc trong team tapeouttự chọnĐang tải tiến độ