ディジタル回路の設計と CADによるシステム設計 FPGAによる演算制御システムの試作 指導教授:笠原宏 05IE063 05IE074 05IE089 05IE099 戸塚雄太 橋本将平 牧野政道 安田光 概要 1.ディジタル回路設計CADについて 2.CADによる回路設計過程 3.設計する演算制御システムについて 4.まとめと今後の予定 1.ディジタル回路設計CADについて 研究の目的 ディジタルシステムの設計と開発 マイクロプロセッサの解析 CADを用いた演算制御システムの設計 計画 解析 検討 設計 1.ディジタル回路設計CADについて 利用するCADシステム CAD コンピュータ上におけるソフトウェアを用いた ディジタル回路の設計支援システム 設計ツール: Xilinx社 ISE Foundation 9.1i Mentor Graphics社 ModelSimXE 6.2c FPGAダウンロード基板(40万ゲート規模) 2.CADによる回路設計過程 設計過程 1.回路図やVerilog HDLによる回路設計 2.シミュレーションによる動作検証 3.FPGAにダウンロード 4.実動作の確認 FPGA: ディジタル回路の設計図を送り込んで シミュレーションを行うことができる基板 2.CADによる回路設計過程 例1:回路図による設計 ソフトで用意されている回路図から 4ビット加算器を作成 入力:A3~A0(非演算数4ビット) B3~B0(演算数4ビット) CI(桁上げ入力) 出力:S3~S0(和4ビット) CO(桁上げ出力) OFL(オーバーフロー) 4ビット加算器の回路図 2.CADによる回路設計過程 例2:記述言語による設計 Verilog HDL ディジタル回路の設計用の ハードウェア記述言語 Verilog HDLを用いて 例1と同じ4ビット加算器を作成 2.CADによる回路設計過程 シミュレーション 回路図から作成した回路のソフトウェアによる仮想 シミュレーションを実行した結果 入力A:1100 入力B:1000 桁上げ入力:なし 出力S:0100 桁上げ出力:あり オーバーフロー:あり 2.CADによる回路設計過程 デモンストレーション 四則演算器 入力:2進数8ビット(スイッチによる) 出力:2進数16ビット(LED) 特徴: ・加算、減算、乗算、除算が可能 ・LEDの2進数出力に加え出力を 16進表記に変換して7セグメント表示 3.設計する演算制御システムについて 設計する演算制御システム概要 データフロー型演算制御システム ・単一バス方式8ビット(固定長) ・ALUによる演算処理 ・必要最低限の3つの汎用レジスタを実装 バスを利用した情報処理 ・単一バスであるため、一度に複数のデータを 流すことは不可能 ・バスへのデータ出力のたびに、他の機構から の出力を許可しないシステム設計 ハイインピーダンス状態 3.設計する演算制御システムについて 構成図 3.設計する演算制御システムについて 各部説明表 項目 名称 機能 MDR 記憶データ用レジスタ 入出力データを一時保存するレジスタ MAR 記憶番地用レジスタ 記憶番地を指定するレジスタ PC プログラムカウンタ 次の命令の番地を指定するレジスタ ALU 算術論理演算装置 各演算処理を行う装置 Acc アキュムレータ 演算結果を一時的に保存するレジスタ 一時保存レジスタ 演算数を一時保存するレジスタ 汎用レジスタ 命令を実行する為に使用するレジスタ IR 命令用レジスタ 実行中の命令内容を保持するレジスタ ID デコーダ 命令を解析して受け渡す装置 Control 制御回路 バスの制御を行い命令を実行する装置 Temp R0~R2 3.設計する演算制御システムについて 各種レジスタの設計 汎用レジスタ,MAR,MDR,IR,PC,Acc,Tempの設計 例:汎用レジスタR0の設計 クロック立ち下がり時に入力命令、 立ち上がり時に出力命令を検出 制御回路からの命令に従った バスとのデータ入力と出力 他のレジスタも同様に設計 PCは命令実行番地を格納 入力:clk(クロック) r0in(レジスタへの入力命令) 命令に従い次の命令番地に r0out(レジスタからの出力命令) カウントアップ 入出力:bus(データバス入出力) 3.設計する演算制御システムについて デコーダの設計 インストラクションデコーダの設計 IRから出力されたデータを解析 制御回路からの出力命令に従っ て解析した命令やデータをバス または制御回路へ出力 入力:clk(クロック) idout(バスへの出力命令) idoutc(制御回路への出力命令) iline(IRからのデータ入力) 出力: cline(制御回路へのデータ出力) bus(データバスへの出力) 3.設計する演算制御システムについて ALUの設計 演算処理装置の設計 制御回路からの命令に従い 演算の種類を判定 Accから演算数data1、 Tempから非演算数data2を取得 制御回路からの命令に応じた演算 を行い、結果をAccへ出力 入力:data1(Accからのデータ入力) data2(Tempからのデータ入力) mode(制御回路からの命令入力) 出力: ans(Accへのデータ出力) 3.設計する演算制御システムについて 制御回路 主な動作手順 IDにて解析された命令をもと 演算処理システムの中枢 解析した命令を実行させるため に、次のクロックの変化で各 機構へ出力する信号を作成 命令がない場合、メモリから 命令を読み出すプロセス用 の信号を作成 クロックの変化を確認し、作 成した信号を各機構へ出力 の信号を制御 各機構を動作させる信号に変換、 出力する重要な部分 4.まとめと今後の展開 まとめと今後の展開 ディジタル回路設計CADの使用法を習得 データフロー型演算制御システムの基本設 計への適用 制御回路を除く演算制御システムの各機構 の設計と設置 今後 現在製作中のシステムの完成 3バス方式による演算制御システムの設計
© Copyright 2024 ExpyDoc