Comments
Description
Transcript
論理回路 - 摂南大学
伝統的な論理回路設計法 論理回路 (第14回) 鹿間 信介 A 0 0 0 0 1 1 1 1 摂南大学 理工学部 電気電子工学科 特別講義: 言語を使った設計(1) 1.1 論理回路を記述する言語「HDL」 1.2 FPGAについて 演習 論理回路 摂大・鹿間 伝統的な論理回路設計法の問題点 真理値表 大規模な論理式の簡単化(論理圧縮) は人手では困難 論理記号を並べる回路設計は非効率 ミスが入りやすい 何年英語を学んでも満足に会話でき ないのと似ている A B C Y 摂大・鹿間 簡単化 (展開・カルノー図) Y = AB + BC + CA 回路図作成 A B C Y 摂大・鹿間 論理回路 1.1 論理回路を記述する 「言語」 概念的 機能 ブロック メモリ 言語 (HDL*) module inv(a, y); input a; output y; assign y = ~a endmodule 論理回路 回路図 Y = ABC + ABC + ABC + ABC トランジスタ (電子回路) 論理回路 加算器 ボトムアップ設計 論理回路 C 0 1 0 1 0 1 0 1 出力 Y 0 0 0 1 0 1 1 1 複雑な論理回路設計に向かない 論理式 作成 トップダウン設計 A 0 0 0 0 1 1 1 1 入力 B 0 0 1 1 0 0 1 1 真理値表 入力 出力 B C Y 0 0 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1 1 1 0 1 1 1 1 Y 物理的 トップダウン設計 「作りたいもの」 ⇒ 抽象的な高次概念 実際の論理回路 ⇒ 低次概念 直感的に考えた通りの論 理回路が設計したい 動作を「言語」で記述 論理回路への変換は 半自動化する 複雑な論理回路設計には トップダウン設計が圧倒的 に有利 摂大・鹿間 HDLとは HDL - Hardware Description Language VHDLの歴史 HDL設計のメリット 入力 論理式 回路図入力 HDL記述 時間がかかる テキストで簡単 考える必要がある 考える必要がない 回路変更 ハードウエア記述言語 むずかしい 容易 HDL言語の種類 VHDL (Very High Speed Integrated Circuit HDL) 米国国防総省が中心となって開発 言語仕様が豊富かつ厳格 VerilogHDL C言語に似た文法体系。実質的な業界標準 論理回路 1995年に標準化 (IEEE 1364) VHDLの記述レベル アーキテクチャ・レベル ビヘイビア・レベル システム全体のアルゴリズムを記述 * IEEE: 電気・電子分野で世界最大の学会。 世界160カ国に42万人以上の会員がいる。 摂大・鹿間 RTL RTL(レジスタ転送レベル): (レジスタ転送レベル): 同期デジタル回路を記述する手 同期デジタル回路を記述する手 法の一種。RTL設計では,回路 法の一種。RTL設計では,回路 動作をレジスタ(FFなど)間の信 動作をレジスタ(FFなど)間の信 号の流れ(データ転送)とそれに 号の流れ(データ転送)とそれに 対する論理演算の組合せで構 対する論理演算の組合せで構 成する。 成する。 論理回路 出典: 「トランジスタ技術SPECIALNo.105」, p.27 (2009年) IEEE概要: http://www.ieee.org/about/today/at_a_glance.html 摂大・鹿間 1.2 FPGAについて ハードディスクのデータのやり取りや,モータ制御などをモデル化し, システムを抽象度の高いレベルで記述 RTL・レベル (Register Transfer Level) 1983年 特定のデバイスに依存しない記述 方式の仕様作成を開始。1985年に終了。 1986年 IEEE(*)での標準化作業開始。 1987年 IEEE 1076-1987として標準化。 1993年 拡張機能を追加(IEEE 1164-1993) 米国防総省調達のASICは,VHDL記述つき の納入が義務。 論理回路生成が可能なレベル Field Programmable Gate Array 各種レベル アーキテクチャ・レベル 抽象度 論理合成 意味 × パイプラインやキャッシュなど, システム内の機能を表現 ビヘイビア・レベル △ 回路動作やふるまいを表現したレベル, クロックの概念無 RTL ゲート・レベル ○ ○ レジスタ間の動作を表現したレベル, クロックの概念有り フリップフロップ(FF)やゲート回路で表現したレベル × PMOS, NMOSなどのトランジスタ・レベル スイッチ・レベル 論理回路 高 低 FPGAの親戚 摂大・鹿間 PLD (Programmable Logic Device)の一種 設計現場で書き換え可能な大規模IC SPLD (Simple PLD) 回路規模が小さく機能が比較的単純な PLD (PAL, GAL) CPLD (Complex PLD) 複数のSPLDと配線のための領域を持つPLD ASIC (Application Specific Integrated Circuit) 論理回路 特定用途向け集積回路 (カスタムIC) 摂大・鹿間 http://monoist.atmarkit.co.jp/fembedded/special/fpga/fpga01.html SPLD CPLDとFPGA 全ての論理式は主加法標準形(積和形式)で表現できることを利用。 FPGA CPLD 回路規模が小さく,機能が比較的単純な PLD(主にPAL/GAL) 1990年代には CPLD,FPGA が主流になり SPLD の市場は 縮小したため,多くのメーカーが撤退した。 • 組み替え可能な論理ブロック • 論理ブロック間を接続する組み替え可能な配線 SPLD 現在は,両者の差はなくなってきている。 摂大・鹿間 論理回路 Design Wave Magazine 2007年7月号 p.32~ 摂大・鹿間 -- Altera社の例 論理ブロックの基本要素はSRAMで構成したLUT (Look-UP Table) 出典: FPGA活用チュートリアル 2008/2009年版, 製造プロセスとFPGA の規模(LE数) FPGAの基本論理ブロック 論理回路 図の例: 4入力1出力LUT 4bit入力⇒ 1bit出力の任意の論理関数を構成できる(真理値表) ・ FPGAには先端の製造プロセスが使われている ・ 2010年時点: LE数≧100万 (0.028μmプロセス) FF: 同期出力を得たり,順序回路を構成するのに使用 実際のブロック構造はメーカ毎に異なる(LE/Altera,スライス/Xilinx) 論理回路 出典: Design Wave Magazine 2007年7月号 p.32~ 摂大・鹿間 論理回路 出典: Design Wave Magazine 2003年10月号, http://yukan-news.ameba.jp/20120625-966/ 摂大・鹿間 FPGAの実例 LSI設計の基本フロー 機能設計 (デザイン・エントリ) シミュレーション (機能検証) 論理合成 HDL入力,回路図入力, ステート・マシン(状態遷移図)入力など – 低価格なシリーズ 回路を模擬的に動作させ検証 HDL⇒論理回路 論理回路⇒LSIに実装 配置配線 シミュレーション (タイミング検証) 製造 PLD(FPGA)では, ダウンロードするだけ 論理回路 http://monoist.atmarkit.co.jp/fembedded/special/fpga/fpga01.html ASICでは半導体 メーカーの仕事 FPGAとASICの比較 プロトタイプ納期 一回限りの費用 量産期間 最低生産数量 マスク管理 FPGA ASIC 即日 0円 即時 1個 不要 1.5~2週間 100万円~ 最短5週間 100個~ 顧客orP/J毎 摂大・鹿間 FPGA搭載ボード ALTERA社製Cyclone XILINX社製SpartanⅡ 摂大・鹿間 論理回路 まとめ FPGA単体を買ってきても何もできない ⇒ FPGA搭載ボードが多数販売されている ⇒ 雑誌の付録もある。 FPGA設計ソフトはFPGAベンダーのサイトから無料入手可能 論理回路を記述する言語「HDL」 FPGAについて アルテラ DE0 開発・学習ボード 「改訂版FPGAボードで学ぶ論理回路設計」 付属FPGAボード (CQ出版社, 9975円) (ソリトンウエーブ社, 約1万円) 伝統的な論理回路設計法と問題点 トップダウン設計 vs ボトムアップ設計 VHDLの歴史 CPLDとFPGA LSI設計のフロー(FPGA vs ASIC) FPGAとFPGAボード 「トランジスタ技術」 2010年7月号掲載 論理回路 http://solitonwave.shop-pro.jp/?pid=15835753 http://shop.cqpub.co.jp/hanbai/books/31/31501.html 摂大・鹿間 論理回路 摂大・鹿間