Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Vivado2019.2でUVMを使った話
Search
tethys_seesaa
November 09, 2019
Technology
930
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vivado2019.2でUVMを使った話
tethys_seesaa
November 09, 2019
More Decks by tethys_seesaa
See All by tethys_seesaa
RTLを語る会(17)あいさつ
tethys_seesaa
0
550
UVVMをさわってみた
tethys_seesaa
0
780
RTLを語る会(16)あいさつ
tethys_seesaa
0
530
あいさつ
tethys_seesaa
0
620
SystemVerilog を使用したXilinx FPGA開発
tethys_seesaa
0
2.8k
Other Decks in Technology
See All in Technology
目の前の楽しいが人生を変える - コミュニティの螺旋の歩き方と楽しむコツ / change your life
soudai
PRO
4
560
MCPをつなげて作る組織横断のAIエージェント基盤(の開発工程)
tsubakimoto_s
0
110
Spring BootからQuarkusへの移行
tatsuya1bm
2
110
Reactの設計論
uhyo
22
12k
空間オーディオで過去の 自分(ゴースト)と競うランニング 〜HealthKitのルートを足音に変える実装〜
nao_randd
0
160
絵ではじめるKubernetesセキュリティ
aoi1
3
480
Claude Code本って、 読む必要あるの?
oikon48
2
450
積み重なった技術負債への挑戦 〜初手としての全社ゴト化〜
techtekt
PRO
0
720
家のリアーキテクト・リファクタリング
suguruooki
0
140
2026-09-10 【Snowflake World Tour Tokyo 2026】dbt Core と Snowflake で実現する多層的なデータガバナンス / Multi-Layered Data Governance Powered by dbt Core and Snowflake
civitaspo
0
390
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
1.4k
20260912_スクラムにジェネラリストは必要か
ryugen04
0
400
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
464
34k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
The Curse of the Amulet
leimatthew05
2
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
202
76k
Navigating Weather and Climate Data
rabernat
0
520
Embracing the Ebb and Flow
colly
88
5.2k
How STYLIGHT went responsive
nonsquared
100
6.3k
sira's awesome portfolio website redesign presentation
elsirapls
0
410
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Heart Work Chapter 1 - Part 1
lfama
PRO
9
36k
Why Our Code Smells
bkeepers
PRO
340
58k
Transcript
Vivado 2019.2でUVMを 使った話 2019/11/09 @TETHYS_SEESAA
Vivado SimulatorがUVM1.2をサポート https://japan.xilinx.com/products/design-tools/vivado/vivado-whats-new.html SystemVerilogのclassやrand変数、covergroupがが使用可能? ◦ ModelSim Intel Edision(Free)ではrandomizeやcoverageは使用不可 ◦ 試してみることにしました。
UVMとは Universal Verification Methodologyの略 SystemVerilogで記述されたRTL検証フレームワーク 最近は日本語の情報も充実しています ◦ http://www.artgraphics.co.jp/downloads.html ◦ https://qiita.com/triggerfish
デザイン、 テストベンチ 使用したデザイン、テストベンチ ◦ Design and Verification of APB Protocol
◦ Implement an APB Verification environment in UVM based System Verilog ◦ https://www.edaplayground.com/x/2QzY ◦ EDA playgroundより拝借 ◦ $psprintfタスクは$sformatfタスクに変換 以下、一部紹介
デザイン APB Slaveモジュール ◦ Interfaceを定義して、モジュールのI/Fに使用
テストベンチ UVMライブラリの呼び出し UVMで定義したクラスのinclude
デザインとテ ストベンチの 関係 https://www.chipverify.com/u vm/uvm-subscriber より引用
apb_base_test クラス UVM_TESTクラスを継承
apb_transaction クラス typedefの使用 制約付きランダム変数の定義と設 定
apb_subscriberク ラス covergroupの設定
ModelSim Intel FPGA Edition(10.6d/19.2) で実行しようとする と... ライセンスエラーで使用不可 # ** Error:
(vsim-1) Unable to checkout verification license - testbench generation feature (randomize, randcase, randsequence, covergroup) is only supported with QuestaSim. # Time: 0 ps Iteration: 0 Instance: /test File: ../dv/testbench.sv # Error loading design Error loading design # End time: 17:34:36 on Nov 07,2019, Elapsed time: 0:00:00 # Errors: 2, Warnings: 0
Vivado Simulator 2019.2でシミュレー ション
Vivado プロジェ クトの設定 Add Sourcesでデザインファイルを 指定
シミュレーションの設定 set_property -name {xsim.compile.xvlog.more_options} -value {-L uvm} -objects [get_filesets sim_1]
set_property -name {xsim.elaborate.xelab.more_options} - value {-L uvm} -objects [get_filesets sim_1]
sim_1用ソース ファイル(テストベ ンチ)追加 testbench.svを追加するのみ
Sourceウィンドウ UVMを使用したクラスファイル群は「Verilog Header」として表 示される。
シミュレーショ ン実行
UVM形式のサマリー出力
ランダムなアドレス/データ のリードライトを確認
まとめ Windowsで、無料版で、 UVMを使用したシミュ レーションができる! •random, coverage等 本格的に使いこせる のか? •+UVM_TESTNAME •coverage管理等
コード https://github.com/hiiaka/uvm_example