1 / 21

SpecCを用いた回路設計 の評価に関する研究

SpecCを用いた回路設計 の評価に関する研究. 情報科学部情報処理学科 800-167 吉本 公彦. 1.背景. 仕様そのものの不備 仕様の 取り扱い 不備 設計不備. ・従来の設計手法. プログラム( C言語 ). クレーム. 試作(統合). 外部仕様書(文章、図表). 内部仕様書( 文章、図表 ). 分業. 認定レビュー. 製造. 市場へ. 回路設計( VHDL ). プログラム( C ). 組込み ソフトウェア. 仕様書( 文章、図表 ). 回路設計( VHDL ). 電子回路設計. ・問題点.

afrodite
Download Presentation

SpecCを用いた回路設計 の評価に関する研究

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SpecCを用いた回路設計の評価に関する研究SpecCを用いた回路設計の評価に関する研究 情報科学部情報処理学科 800-167 吉本 公彦

  2. 1.背景 仕様そのものの不備 仕様の取り扱い不備 設計不備 ・従来の設計手法 プログラム(C言語) クレーム 試作(統合) 外部仕様書(文章、図表) 内部仕様書(文章、図表) 分業 認定レビュー 製造 市場へ 回路設計(VHDL)

  3. プログラム(C) 組込み ソフトウェア 仕様書(文章、図表) 回路設計(VHDL) 電子回路設計

  4. ・問題点 →コストや時間が大幅に掛かってしまう →ハードウェア技術者の不足 →ハードウェアとソフトウェアの設計者の壁

  5. ・新しいシステム設計手法 ソフトウェア・モデル (システムレベル言語) 設計不備 クレーム 試作(統合) 仕様・モデル (システムレベル言語) 仕様書(文章、図表) 認定レビュー 製造 市場へ 同時 ハードウェア・モデル (システムレベル言語)

  6.  ソフトウェア・モデル (システムレベル言語) 接続して協調検証が可能になる 組込み ソフトウェア 仕様・モデル (システムレベル言語) ハードウェア・モデル (システムレベル言語) 電子回路設計

  7. 2.有名なシステムレベル言語 • SpecC →カリフォルニア大学のGajski教授が提唱 →C言語を拡張 →STOCが 普及推進を行っている • SystemC →Synopsys社、CoWare社などが共同開発 →C++言語を拡張 →OSCIが普及活動を行っている

  8. 3.SpecCとは • 概要 ハードウェア記述を 可能にするための構文 (配列の代入、変数の初期化、ブーリアン型、ロングロング型、 ビットベクター型、ロングダブル型、同期、シグナル型、ビヘイビア・・・・etc) ANSI-Cの 文法すべて

  9. ・特徴 →実行可能 記述したソースをそのままコンパイルして、実行することができ、シミュレーションできること。 →モジュラリティ システムの動作を記述するときは、機能と接続を完全に分けて記述する必要があること。 →完全性 behavior(動作)、階層構造、並列性、同期、通信、状態の遷移、例外処理、タイミングの記述をすべて扱えること。

  10. 3.1 仕様モデル 動作 変数 B1 同期 並列処理 V1 V2 B3 B2 E2

  11. behavior B2B3(in int v1) { int v2; event e2; B2 b2(v1,v2,e2); B3 b3(v1,v2,e2); void main(void){ par{ b2.main(); b3.main(); } }; behavior Design() { ・・・・

  12. ANSI-C #include<stdio.h> void main(void) { printf(“HelloWorld\n”); } SpecC #include<stdio.h> behavior Main { void main(void) { printf(“HelloWorld\n”); } }; 3.2 ソフトウェア・モデル

  13. VHDL Library IEEE; use IEEE.std_Logic_1164.all; entity AND_2 is port(A,B : in std_Logic; C : out std_Logic); end AND_2; architecture AND_2 of AND_2 is begin C <= A and B; end AND_2; SpecC #include<stdio.h> #include<stdlib.h> behavior AND_2( in bit[1] a,in bit[1]b,out bit[1] c) { void main(void) { c = a & b; } }; 3.3 ハードウェア・モデル

  14. 4.検証実験 4.1  評価項目 ・設計時間 ・記述量 ・使い易さ

  15. 4. 2 試作回路 ・AND回路        ・セレクタ回路   ・比較回路        ・10進デコーダ  ・10進エンコーダ    ・パリティジェネレータ ・フリップフロップ回路 ・4ビットレジスタ ・シフトレジスタ     ・アップカウンタ   ・全加算器        ・16ビット加算器 など20種類

  16. % emacs ファイル名.sc SpecC ソースファイル % scrc ファイル名 SpecC 実行ファイル % ./ファイル名 確認 4.3 実験方法(SpecC)

  17. 実験方法(VHDL) 回路のソース テストベンチ のソース ボタンひとつで コンパイルとシミュレーション 確認

  18. 5.評価 上記の20個の動作確認を行った。 ・設計時間  →VHDLのほうが短い ・記述量  →全体ではSpecCのほうが少なくなる ・使い易さ  →ツールはVHDL、言語としてはSpecC

  19. SpecC 6.結果 ・記述量平均  回路部      = 18.52 step テストベンチ部 = 29.78 step • VHDL ・記述量平均  回路部      = 21.26 step テストベンチ部 = 31.47 step

  20. 7.今後の課題 • 規模の大きい回路の設計 • 自動合成ツールを用いて、SpecCからVHDLや回路図への変更 • PLDに焼いてみて動作確認

  21. 終了です

More Related