Cocotb: Python-powered hardware verification
summary
Cocotb claims that RTL verification is best written as software and provides a simulator plug‑in that links simulators to Python via VPI/FLI/VHPI. It runs on Icarus/GHDL and commercial simulators, uses coroutine-based tests to model parallel hardware, and integrates external tools (MATLAB engine, scapy for pcap handling) so golden models and packet traces feed DUTs. It runs under Python 2/3, supports CI without simulator licenses, and is actively maintained with plans for better extensions and Windows build support.
AI-written summary · about
chapters (11)
- 0:00Intro
- 3:14Why Python for verification?
- 5:43In this talk
- 8:02test rifo.py: Our first test
- 10:13Install cocotb and run!
- 11:08Single FIFO write: init
- 12:10Single FIFO write check
- 13:40Coroutines (2)
- 14:58Integrations: Golden Model in Matlab
- 16:23Integrations: Feed in Ethernet packages
- 18:18Future Plans: Verilator
related talks
17mAnother Introduction to Cocotb
21mCocotb as a comprehensive verification platform
23mHow cocotb made Python-powered verification mainstream -- and what comes next
16mcocotb 2.0: celebrating 12 years of verification fun
31mNews from cocotb land
22mHardware in the loop pipelines for testing - for everyone!
19mPython as a language for testing and code generation
12mRISC-V: Hardcore/Softcore Co-Simulation Environment with Cycle-Accurate Rollback
