Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UVVMをさわってみた
Search
tethys_seesaa
June 24, 2023
Technology
0
370
UVVMをさわってみた
tethys_seesaa
June 24, 2023
Tweet
Share
More Decks by tethys_seesaa
See All by tethys_seesaa
RTLを語る会(17)あいさつ
tethys_seesaa
0
300
Vivado2019.2でUVMを使った話
tethys_seesaa
0
740
RTLを語る会(16)あいさつ
tethys_seesaa
0
480
あいさつ
tethys_seesaa
0
500
SystemVerilog を使用したXilinx FPGA開発
tethys_seesaa
0
2k
Other Decks in Technology
See All in Technology
Cracking the KubeCon CfP
inductor
2
250
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
160
AWS学習者向けにAzureの解説スライドを作成した話
handy
2
100
APIファーストなプロダクトマネジメントの実践 〜SaaSus Platformでの例〜 / "Practicing API-First Product Management - An Example with SaaSus Platform
oztick139
0
110
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
1
260
require(ESM)とECMAScript仕様
uhyo
4
850
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
1
130
One engineer company with Ruby on Rails
rstankov
2
300
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
5
570
Building Dashboards as a Hobby
egmc
0
300
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
1
380
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
230
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
422
63k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
Building Effective Engineering Teams - LeadDev
addyosmani
28
1.9k
Rails Girls Zürich Keynote
gr2m
91
13k
Teambox: Starting and Learning
jrom
128
8.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
1k
Product Roadmaps are Hard
iamctodd
44
9.7k
Infographics Made Easy
chrislema
238
18k
Web development in the modern age
philhawksworth
202
10k
Testing 201, or: Great Expectations
jmmastey
28
6.4k
Transcript
UVVMをさわってみた @tethys_seesaa
はじめに • RTL設計・検証をVHDLで行っ ている使っている人います か? • Verilog/SystemVerilogを 一切使用しない • 特に検証
UVVMとは • UVVM =Universal VHDL Verification Methodology • VHDLの検証メソドロジ+検証IP •
OSS(Apache-2.0 license)、GitHubから入手可能 • https://github.com/UVVM/UVVM • ノルウェーのEmLogic社が主に開発を進めている • 動作確認済みのVHDLシミュレータ • ModelSim/QuestaSim(vsim) • Vivado Sim(xsim) • GHDL • nvc
UVVMユーザーは増加中?
UVVMが想定するテストベンチのニーズ • 単体のテスト • 複数のインターフェイスの同時動作を処理する必要がない • DUT(検証対象)と1対1で簡単な動作確認 • 単一のテストシーケンサプロセスを備えた単純なテストベンチ のみで
OK • -> UVVMのBFM(Bus Function Model)で対応 • 複合テスト • 複数のインターフェイスを同時に制御・チェックする必要がある • DUTに潜在的なサイクル関連のコーナーケースがあり、それをチェッ クする必要がある。 • 複数のスレッドやプロセスを同時実行が必要 • -> UVVMのVVC(VVC : VHDL Verification Component)で対応
BFMベースのテストベンチ • テストハーネスなし • テストシーケンサはDUT信号に直接アクセスできる。 • BFMはp_mainで順番に実行されるシーケンシャルなプロシー ジャである。
VVCベースのテストベンチ • 複数のI/Fで同時動作 • テストシーケンサは各VVCにアクセス • VVCは内部にインタープリターとコマンドキュー、エクゼキュータを 持ちトランザクションを発行 • シーケンサから複雑なシーケンスを制御できるらしい?
VVCベースでスコアボードを挿入 • スコアボードの機能もあり、高度な期待値チェックもできそう?
UVVMのデモをさわってみる • /UVVM/bitvis_uart/script にUARTのデモがある • zsh ./compile_all_and_simulate.sh vsim • Questa(Intel
Starter FPGA Edition)でシミュレーションができる • Vivado Simはスタックトレースを吐きました
UVVM 検証コ ンポーネント • 以下のコンポーネントが同梱 • カバレッジ、スコアボード等の検証パーツ • I/F系のVIP
UVVMについての感想 (ちょっと触っただけですか) • VHDL OnlyでFPGAを設計している方には向いているかも • ブロックレベルの検証でちょっとした時間短縮が望めるかもしれない • VVCベースの検証を行うには、サポートが必要な印象 •
1人でやるには難しい • ASIC向けにはまだ向いていない • envやsequencerに相当するパーツが見受けられない • スケーラブルな検証環境を構築できるか疑問 • OSVVMはどうなってしまうんや…