汎用テストベンチ作成ツール を用いた シミュレーションからテストまで

Slides:



Advertisements
Similar presentations
1 情報基礎 A 第 9 週 プログラミング入門 VBA の基本文法 1 準備・変数・データの入出力 徳山 豪・全 眞嬉 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
Advertisements

Quartus Ⅱの簡単な使い方 Combinatorial Logic (組み合わせ論理回路)( P.19 ~ 23 ) ① Implementing Boolean Expressions&Equations (ブール表現とブール式の書き方) ② Declaring Nodes (ノードの宣言)
情報処理基礎 A ・ B 第 5 回 プログラミング入門 操作の自動化を実現する仕組み. 2004/11/16 ・ 17 情報処理基礎 A ・ B 2 本日の内容 処理の自動化~プログラムの概念 ハードウェアとソフトウェア プログラミング言語 Excel における処理の自動化 入力支援の機能 分析ツール.
数学のかたち 数学解析の様々なツール GRAPSE編 Masashi Sanae.
Signal Masterによる フィルタバンクの実装
VLSI設計論第4回 アキュムレータマシンと 仮遅延シミュレーション
LZ圧縮回路の設計とハード・ソフト 最適分割の検討 電子情報デザイン学科 高性能計算研究室 4回生 中山 和也 2009/2/27.
.NET テクノロジー を利用した SAP ソリューションの拡張 (3階層化) (評価環境構築ガイド)
東京工科大学 コンピュータサイエンス学部 亀田弘之
マイコン入門実践教育プロセス説明 第4システム部 ES443 塩島秀樹.
Capter9 Creating an Embedded Test Bench ( )
英語勉強会.
FORTRAN 科学技術計算用 数値演算精度を重視したシステム K=0 DO 10 I=0,N,1 K=K+I 10 CONTINUE
Mavenによる プロジェクト管理 近畿大学理工学部 情報学科3年  小野実.
Handel-C基礎 および 7セグとマウスのハンドリング
Lightweight Language Weekend ls-lRシェル
伺か with なでしこ 発表者:しらたま /05/05 うかべん大阪#3.
コンパイラ演習番外編 (その2): JVM コンテスト
コンパイラ演習番外編 (その1): min-rt 改 コンテスト
Verilog HDL 12月21日(月).
シミュレーション物理5 運動方程式の方法: サブルーチンの使い方.
-J MESA Toolsについて 2003/9/12 渡辺 昌彦 IHE-J 技術検討委員会 2003/9/12.
オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道
共同ローカリゼーション フレームワーク 井上 謙次.
Fire Tom Wada IE dept. Univ. of the Ryukyus
VLSI設計論第2回 組み合わせ回路の記述と 論理シミュレーション
第10回 Dフリップフロップ ディジタル回路で特に重要な D-FF 仕組みを理解する タイミング図を読み書きできるようにする 瀬戸
画像処理ボード上での 高速テンプレートマッチングの 実装と検証
オープンソフトウェア利用促進事業 第3回OSSモデルカリキュラム導入実証
デジタル回路(続き) コンピュータ(ハードウェアを中心に)
リファクタリングのための 変更波及解析を利用した テスト支援ツールの提案
ML 演習 第 7 回 新井淳也、中村宇佑、前田俊行 2011/05/31.
8. 順序回路の簡単化,機能的な順序回路 五島 正裕.
2005年11月2日(木) 計算機工学論A 修士1年 No, 堀江準.
VLSI設計論 慶應義塾大学 理工学部 情報工学科 山﨑 信行
概要 Boxed Economy Simulation Platform(BESP)とその基本構造 BESPの設計・実装におけるポイント!
6. 順序回路の基礎 五島 正裕.
第6回 よく使われる組合せ回路 瀬戸 重要な組合せ回路を理解し、設計できるようにする 7セグディスプレイ用デコーダ 加算回路・減算回路
OpenMPハードウェア動作合成システムの検証(Ⅰ)
高速剰余算アルゴリズムとそのハードウェア実装についての研究
1.コンピュータと情報処理 p.18 第1章第1節 2.コンピュータの動作のしくみ CPUと論理回路
Damping ring単独運転用 Bucket Selectionサブルーティンについて
PCPU物理設計 ~マクロレベルの配置配線~
各種波形フォーマット変換 / タイミングダイアグラム描画ツール
オープンソフトウェア利用促進事業 第3回OSSモデルカリキュラム導入実証
ディジタル回路 6. 順序回路の実現 五島 正裕.
実行時情報に基づく OSカーネルのコンフィグ最小化
ディジタル回路の設計と CADによるシステム設計
計算機構成 第3回 データパス:計算をするところ テキスト14‐19、29‐35
VLSI設計論第3回 順序回路の記述と論理合成
情報処理 タイマの基礎 R8C タイマの基礎.
ソフトウェア制作論 平成30年11月21日.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
信号伝搬時間の電源電圧依存性の制御 による超伝導単一磁束量子回路の 動作余裕度の改善
情報工学科 3年生対象 専門科目 システムプログラミング 第4回 シェルスクリプト 情報工学科 篠埜 功.
第11回 よく使われる順序回路 複数のFFを接続した回路を解析する際の考え方を学ぶ カウンタ回路の仕組みを理解し,設計できるようにする 瀬戸.
NFC Dynamic Tag “ST25DV“のご紹介
Fire Tom Wada IE dept. Univ. of the Ryukyus
2010年度 情報科学序論 ~ 内部構造と動作の仕組み(2) ~.
計算機工学特論 スライド 電気電子工学専攻 修士1年 弓仲研究室 河西良介
8. 順序回路の実現 五島 正裕.
GSTOS コマンド計画検証ソフトウェアの開発
各種波形フォーマット変換 / タイミングダイアグラム描画
第4回 CPUの役割と仕組み2 命令の解析と実行、クロック、レジスタ
プロセッサ設計支援ツールを用いた 独自プロセッサの設計
ディジタル回路 8. 機能的な順序回路 五島 正裕.
2008年度 情報科学序論 ~ 内部構造と動作の仕組み(2) ~.
信号伝搬時間の電源電圧依存性の制御 による超伝導単一磁束量子回路の 動作余裕度の改善
1.2 言語処理の諸観点 (1)言語処理の利用分野
昔は,回路図を描いて 素子名やノード番号を付けて テキスト形式で接続状態を 指定してたけど…
Presentation transcript:

汎用テストベンチ作成ツール を用いた シミュレーションからテストまで 京都工芸繊維大学 小林和淑

概要と内容 Perlを用いた自作EDAツールSTの紹介 既存の環境とSTによる環境 STを使った汎用テストベンチ記述 単一の記述からさまざまなシミュレータ、テスタへのテストベンチが生成可能 内容 既存の環境とSTによる環境 STを使った汎用テストベンチ記述 Verilog, Spiceでの使用例 LSIテスタでの使用例 結論、今後の課題 2018/11/8

ST is a solution for sim & test Now, you have to write various test benches for all simulators: HDL, Netlist level Circuit, SPICE level ST is a solution!! You can write your test bench with PERL!! Your testbench can be converted to Verilog SPICE LSI testers 2018/11/8

ST LSI設計時のシミュレーション LSI設計 ネットリストはツールから自動的に. But テストベンチは自分で. 様々なレベルでのシミュレーションが必須 ネットリストはツールから自動的に. HDL, ネットリスト, 回路レベル... But テストベンチは自分で. ツール、シミュレータ毎に書き方を覚えないと駄目 単一の記述から様々なシミュレータのテストベンチに変換 ST 2018/11/8

既存のテストベンチ記述, テスタインタフェース環境 テストベンチ環境 Cadenceのstl(simulation & test language) 単一の記述から変換可 LSIテスタへのベクタ変換 TSSI社のツール stlと接続. サポート費用高額(300万/year) もう一つ使いやすくない 結構便利. Y2K問題のためsupport終了 2018/11/8

商用変換ツールの問題点 大学: 設計者==テスト屋さん シミュレーション結果からの変換は不便 シミュレーションしないとテスト不可 大学: 設計者==テスト屋さん シミュレーション結果からの変換は不便 双方向ピン 入力?出力? 不定値≠ドントケア(x) ピンの設定が必要 シミュレーションしないとテスト不可 Verilogでシミュレーションできないものはテストできない. ちょっとしたテストをするには不便. 2018/11/8

ST: Perl Package for Sim & Test 設計者が使いやすいテストベクタ記述 Perlのpackage 単一の記述からシミュレータ、テスタへ シミュレータ: Verilog, Spice, VHDL等 テスタ: HP83000, hilevel griffin, MMS MU300-EM 電源電圧、クロック周期、ベクタが簡単に変更可 対象: サイクルベースのディジタル回路 1サイクル毎の波形を指定 Verilog, hspice: 期待値比較 きっかけは昨年のこの会 2018/11/8

Why Perl?? 最初の案 Perlそのもので書く 独自言語仕様を、Perlで処理 テストベンチ作成用のサブルーチンをパッケージ化 構文解析が非常に簡単 CPUが高速化 インタプリタ型言語でも遅くならない 2018/11/8

STを使った検証フロー 設計の詳細度にしたがって、レベルを変更可能 2018/11/8

記述例: 4ビット累算回路 シミュレーション対象の定義 Verilog定義 ピンの定義 fourbitaccum タイミングの定義 記述例: 4ビット累算回路 #!/usr/local/bin/perl use ST; target "verilog"; module "fourbitaccum"; vcd "fourbitaccum.vcd",0; pin "in[3:0]","input"; pin "CLK","clock"; pin "RST","input"; pin "out[7:0]","output"; timing 1e-09,1e-07,10; clock "CLK","1111100000"; waveform "input","dnrz","%.........","in","RST"; waveform "output","edge",".........%","out"; pinorder "in","RST","out"; beginvector; vector 0,0,0; vector 1,1,0; vector 5,1,1; endvector; シミュレーション対象の定義 Verilog定義 ピンの定義 fourbitaccum タイミングの定義 波形の定義 入力ベクタ、期待値の定義 2018/11/8 2000年VDECデザイナーズフォーラム@広島

使い方: 設定関係コマンド 2018/11/8

使い方: ベクタコマンド 2018/11/8

使い方と期待値比較: Verilogインタフェース 実行結果 期待値との照合結果 st.log 期待値との相違 Logファイル(VCS) Compiler version 5.2; Runtime version 5.2; Sep 22 09:36 2000 Some simulation mismatches are detected! $finish at simulation time 400 V C S S i m u l a t i o n R e p o r t Time: 400 ns cycle(time): pin: exp. val != sim. result 2(29): out: 2 !=1 3(39): out: 5 !=6 2018/11/8

Verilogでの期待値比較 Verilogそのものの機能により期待値比較 動作確認シミュレータ STから出力されたテストベンチ 期待値 //cycle 3 in<=0; #9 if(out == 5) ; else begin $fdisplay(_f," 3(%0t): out: 5!=%0d",$realtime,out); _error=1; end STから出力されたテストベンチ 期待値 Verilogそのものの機能により期待値比較 PLIを使わなくてよい! シミュレーションだけで結果が判明 動作確認シミュレータ Verilog-XL, Ncverilog, VCS等 2018/11/8

使い方: Spiceインタフェース SPICEの電圧制御抵抗(G Element)による双方向端子サポート 2018/11/8

使い方: LSIテスタインタフェース テスタに必要なすべてのファイルを出力 シミュレーションなしでテストベンチ作成 2018/11/8

既存のテストベンチより 既存のテストベンチからSTのファイルへ v2st.pl: ターゲット verilogcomp: verilogのmoduleからstのテンプレート生成 ターゲット verilogcomp: 既存のテストベンチより、vectorコマンドを抽出するためのVerilog記述を出力 テスタの入力ベクタ変換、spiceでの最終確認  2018/11/8

ST内部構造 module構造 各ターゲット毎のファイルに分離 st_シミュレータ名.pmにより対応 APIを理解すれば、誰でも書けるはず?? 2018/11/8

結論 汎用テストベンチ記述用PerlパッケージSTを開発 STを使えば、単一の記述から複数のシミュレータ、テスタのテストベンチが生成可 Verilog, hspiceでは期待値比較可能 外部プログラム等は一切不要.シミュレータの持つ機能のみで実現 SPICEでは、双方向端子に対応 2018/11/8

STのダウンロード GPLで公開しています. 何かフィードバックがあればお気軽に 配布先 http://www-vlsi.es.kit.ac.jp/~kobayasi/ST/ 2018/11/8

今後の課題 アナログへの対応 マニュアルの整備 新しいシミュレータ、テスタへの対応 どうしたら良いでしょうねえ 英語でのマニュアル記述 古いバージョンはあり 今後は英語だけにするかも…. 新しいシミュレータ、テスタへの対応 2018/11/8