1 / 40

高速ディジタル回路の 論理的設計手法について

高速ディジタル回路の 論理的設計手法について. 和﨑 克己. 高速動作する  ディジタル回路の需要. 情報通信,コンピュータシステム,移動体通信 人工衛星や航空機,原子力発電所の制御 ディジタル回路設計手法 回路が 高速に動作 できるための設計方法 回路設計の 仕様自体の検証方法 耐故障性 を有しており信頼性の高い回路の構成方法 仕様通りに 正しく動作することを検証 する方法,等々 …. 高速ディジタル回路が  仕様通り正しく動作しない …. (例)初期型 Pentium プロセッサ 浮動小数点 演算回路の設計誤り プロセッサ自体の信頼性が低い

sharne
Download Presentation

高速ディジタル回路の 論理的設計手法について

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. 高速ディジタル回路の論理的設計手法について高速ディジタル回路の論理的設計手法について 和﨑 克己

  2. 高速動作する ディジタル回路の需要 • 情報通信,コンピュータシステム,移動体通信 • 人工衛星や航空機,原子力発電所の制御 • ディジタル回路設計手法 • 回路が高速に動作できるための設計方法 • 回路設計の仕様自体の検証方法 • 耐故障性を有しており信頼性の高い回路の構成方法 • 仕様通りに正しく動作することを検証する方法,等々…

  3. 高速ディジタル回路が 仕様通り正しく動作しない…高速ディジタル回路が 仕様通り正しく動作しない… • (例)初期型Pentiumプロセッサ • 浮動小数点演算回路の設計誤り • プロセッサ自体の信頼性が低い • システム全体の信頼性の低下に直結 • ディジタル回路システムの信頼性 • トランジスタ素子レベルでは飛躍的に改良向上 • ハードウェア規模が増大 → 設計時の誤りを如何に防ぐか,その方策を探ることは急務である

  4. 何を為すべきか? • その設計で,“誤操作によるエラーが発生しても”,仕様通りに正しく動作を行うことを論理的に検証すべき • 制御に必要な演算回路の,動作の正当性や安定性を証明すべき • 回路からボトムアップ的な信頼性確保 • システム全体の信頼性向上に多大な貢献

  5. 論文の構成 • 高速動作するディジタル回路の論理的設計手法に関する研究 • 通信・画像処理・演算回路への応用 • 「高速性,信頼性,設計と動作の正しさ等の検証が必要である」という立場で展開

  6. 通信用バッファに必要な条件 • 通信系の同期確立 • 内部に格納されているデータの数を外部へ通知 • 信頼性を確保 • メモリ内部の一時的な障害に対して自己回復する機能 • (例)LANを用いた音声伝送システム

  7. 図1.1LAN上のノードにFIFO型メモリを用いた音声伝送の例図1.1LAN上のノードにFIFO型メモリを用いた音声伝送の例

  8. (a) 多段ラッチ構成 (b) リングバッファ構成 図1.2 多段ラッチ・リングバッファ構成をとるFIFOメモリ

  9. セルオートマトン概念を用いた通信バッファ • 基本的な動作を行うオートマトン(セル)を定義 • 各セルをメモリ深さ分だけ直列に接続 • 前後のセルを近傍系とする • 自己の状態と近傍セルの状態 • 先頭データ保持の有無を認識できる

  10. (a) i番目のセル Celliの近傍系 (b) セルの遷移図 図1.3 セル近傍系とステートマシン

  11. Read Operation Write Operation (a) FIFOメモリの機能ブロック図 (b) 書き込み/読み出し時のフラグ推移 図1.4 機能ブロックとフラグの推移

  12. 自己回復性 (耐故障性) • メモリ深さ n , 待ち行列先頭 Celli • 障害発生フラグ Flagkのとき… CASE-1 : クリアからセット状態に誤る場合 • (1) 読みだし操作 1回で回復 • (2) 書込み操作 (n-k+1)回で回復 CASE-2 : セットからクリア状態に誤る場合 • (1) 読みだし操作 (i-k)回で回復 • (2) 書込み操作 (n-k)回で回復

  13. Read Operation Read Operation Write Operation Write Operation CASE-2 : セットからクリア状態に誤る場合 図1.5 自己回復過程のフラグ推移 CASE-1 : クリアからセット状態に誤る場合

  14. 既存メモリ構成方法との性能比較 • 有効データ数の通知機能 • 障害回復性 • 動作速度 • メモリ容量に対する回路規模 • バッファのゲートアレイ (FPGA)実装

  15. トランジション アーク プレース 図2.1 簡単な機械工場のペトリネットモデル

  16. 既存ペトリネットの低記述性 • ペトリネット (Petri net) • 並列性をもつシステムモデル設計に適する • ネット解析 → 設計・動作の正しさの検証 • 視覚的にシステム状態の推移を観測できる • 既存ペトリネット • プレーストランジションネット,カラーペトリネット • ネット動作が一意に固定 • 実システムの記述には分岐処理等,ネット規模が増大

  17. (例)次のような条件で連続的に整数演算を行うシステム(例)次のような条件で連続的に整数演算を行うシステム 図2.2 演算器の LC-Petri net モデル

  18. 論理カラーペトリネット(Logical Coloured-Petri net) • 発火条件の拡張 • 入力プレース内トークンの有無,データ値による任意の論理式で与える • 発火後のトークン移動条件の拡張 • 入力プレース内トークンのデータ値による関数で自由に設定できる • 処理分岐用のネット要素追加が不要 • 実システムが“現実的な規模”で設計可能

  19. LC-Petri netの解析方法 • LC-Petri net への発火評価順序の導入 • LC-Petri net から Boolean Marking Net (BMN)へ変換 • 厳密解析,ハードウェア化,クロック配分… • 可達木(Reachability Tree)による探索 • Petri net Design System Tool による,シミュレーション解析

  20. 制御用シーケンサのLC-Petri netモデル • 画像処理装置の制御用シーケンサをLC-Petri net により設計 • パイプライン構成された処理装置 • 並列度=3 の並行処理が要求された • 検査画像の取り込み • 基準画像の展開 • マッチング処理

  21. (a) 機器構成図 (b) 処理装置の内部パイプライン構造 図2.3 画像処理システム

  22. 図2.4 画像処理のための LC-Petri net 図

  23. ネット解析とその評価 • 初期マーキングの設定 • 可達木によるトランジション発火系列の探索 • システム異常状態の検出 • 設計の不備がネット解析により判明 • 試験用コンピュータへの実装 • Petri net Design System Tool を使用 • 各シーケンスを視覚的に確認

  24. 試験用コンピュータの様子 図2.5LC-Petri net図から生成した可達木(一部分)

  25. 逐次リアルタイム復号 • セットアップ時間 S, アクティブ時間 A • シーケンシャル性, 実行時間予測性 • リアルタイム復号 • セットアップ時間SでM画素を一定の時間間隔で次々と復号可能 • 逐次リアルタイム復号 • シーケンシャル性とリアルタイム復号の両方の性質を持つ

  26. 高速画像処理の要件 • セットアップ時間Sが小さい • 逐次リアルタイム復号である • 画素出力時間の間隔が小さい

  27. 図3.1 セットアップ・アクティブ時間を含んだ復号時タイミング図3.1 セットアップ・アクティブ時間を含んだ復号時タイミング 図3.2 パターンマッチングを行う画像処理アプリケーション

  28. 2進桁圧縮(BPC)方式 • 符号器 (BPC encoder) • Run-length計算 • 2進桁対応 • 前段のRun-length計算の結果を入力としブロック長を2進数に変換する • 符号テーブルによる量子化

  29. 図3.3BPC方式の基本システムとコード表

  30. 符号化の例 • 入力bitストリーム • 得られたBPC符号

  31. リアルタイム復号ハードウェア • 復号器 (BPC real-time decoder) • 3bit先読みレジスタ • 常に圧縮データの先頭3bitを同時に参照 • 符号探索ステートマシン • 符号の展開が完全に終る前に出力を開始 • Bit出力カウンタ • 復号器のゲートアレイ (FPGA)実装 • セットアップ時間S=85x3[nsec] • 出力間隔85[nsec]

  32. 図3.4 先読みレジスタ・符号探索ステートマシン図3.4 先読みレジスタ・符号探索ステートマシン

  33. 図3.5FPGA実装・復号タイミングチャート

  34. 演算回路の数学的定義 • 回路の構造 • Many Sorted Signature • 演算回路,入力p,演算子f • 1GateCircStr(p,f) • 回路の入出力信号 • InputVertices, InnerVertices • 演算回路の合成 • 動作後の回路の状態 • Following(s) is stable. • Mizar proof checking systemを使用して証明の正しさを検証済み

  35. 図4.1回路の構造 Many Sorted Signature

  36. 論理演算子の定義 • 論理演算子 • Boolean Operatorの概念 • 演算回路の論理演算結果 • “1GateCircuit(p,f) は Booleanである” • 2入力型論理演算子 • and2*, nand2*, or2*, nor2*, xor2* • 3入力型論理演算子 • and3*, nand3*, or3*, nor3*, xor3*

  37. 2の補数回路~動作の正しさの証明~ • 演算回路 • 1bit分の 2の補数回路を n-bit接続 → 実現 • 2の補数器,桁上がり演算器を定義 • 回路の入出力に関する諸定理を導出 • 1bit分の演算回路 • 「2の補数器」 と 「桁上がり演算器」を合成 • 動作の正しさの証明 • 入力信号点の状態が決まれば演算結果が必ず安定することを示す

  38. 図4.22の補数回路の構造 BitCompStr(p,f)

  39. 結論  ~何を明らかにしたのか~ • ディジタル回路においては,「高速性」,「信頼性」,「設計と動作の正当性」等の検証が必要である.これらの各要求に関し, • 1.通信システムの信頼性向上 • 2.システム設計仕様の検証 • 3.高速パイプライン型回路の設計手法 • 4.演算回路の動作の正しさを数学証明 • 以上の方策について明らかにした

  40. 今後の応用研究 • 2次元セルオートマトン • シストリックアレイ演算器 • 設計検証,耐故障性 • LC-Petri net デザイン • ゲートアレイ設計へ直結,回路の自動生成 • 複雑な演算回路 • 固定・浮動小数点演算器(加減算,乗除算,等々)の設計検証への応用

More Related