400 likes | 548 Views
組込みシステム 講義. (第6巻). 3年次後期2単位選択 担当: 玉野 和保. 単元1 1 (1/5 3 ). 第1 1 単元 組込みネットワーク. 講義の意味と位置づけ インタフェースの役割 インタフェースの分類 インタフェースの実装法 講義で解説すること Parallel I/O Serial I/O I/O LSI GP-IB Ether Net RS-232・422 USB. 単元1 1 ( 2 /5 3 ). 組込みプロセッサと ネットワークシステム. Interface. 組込みプロセッサ. Race-track Network.
E N D
組込みシステム 講義 (第6巻) 3年次後期2単位選択 担当: 玉野 和保
単元11(1/53) 第11単元 組込みネットワーク • 講義の意味と位置づけ • インタフェースの役割 • インタフェースの分類 • インタフェースの実装法 • 講義で解説すること • Parallel I/O • Serial I/O • I/O LSI • GP-IB • Ether Net • RS-232・422 • USB
単元11(2/53) 組込みプロセッサとネットワークシステム Interface 組込みプロセッサ Race-track Network Sensor 通信機能や記憶なども含む Interface 組込みプロセッサ Actuator
単元11(3/53) インタフェースの役割 情報処理装置と外部機器・装置間のデータ伝送 • 情報処理装置間へのデータ伝送 • 周辺機器(Peripheral)の制御 ex.Printerの制御 • データの獲得 ex.A/D Converter ネットワーク構成・制御 • 複数の情報機器の協調による高度情報処理の実現 多階層処理、分散処理 ex.Grid Computer • 統合化された複合情報処理 • データ伝送線路(BUS)制御
単元11(4/53) インタフェースの基本構成 Parallel Interface • 並列データ線を用いて同期させデータを並列一括伝送 • 高速伝送用 • 伝送線が複雑 • 比較的近距離伝送に適用 GPIB、Ethernet、SCSIなど Serial Interface • 1本の伝送線に時系列でデータを伝送 • Prallel伝送に比べて伝送速度は遅い • 配線が単純 • 電流を基準に伝送できるので比較的遠距離にも適用可 RS-232・422、USBなど
単元11(5/53) 主な工業用インタフェース
単元11(6/53) 装置構成を基本とする伝送方式の種類 Parallel Interface i-8255、i-8155・8156、Z80-PIO、m-6820など PIO(Parallel Input/Output Controller) 主な実装例 • GP-IB(General Purpose Interface Bus ):IEEE-488、HP-IB • Ethernet • Centronics • SCSI
単元11(14/53) GP-IB(IEEE-488)HP-IB GP-IB: General Purpose Interface Bus HP-IB:Hewlett-Packard Instrument Busとも呼ばれる 主な特徴 • 短距離デジタル通信バス仕様 • 計測機器や自動制御機器との通信用として使用 • デイジーチェイン接続 • 8bitパラレルバスを15個のデバイスまで共有可 • 最も低速のデバイスが制御に参加するので、 • データ転送速度は、IEEE-488.1-2003(HS-488)で、8MByte/s • 16本の信号線を使用。 8本:双方向データ通信用 3本:ハンドシェイク用 5本:バス管理用 8本:GND
単元11(15/53) GP-IBのバス構成
単元11(19/53) Ethernet LAN(Local Area Network)で利用される伝送方式 802.3, IEEE 802.3とも呼ばれる 主な特徴 • エーテル(ether)とネットワークの合成語 • Xerox社とDEC社(現在はHewlett Packard社の一部門)が考案 • 接続法: BUS型: 1本の回線を複数の機器で共有 STAR型:集線装置(HUB)を介して各機器を接続 • 通信速度: 10BASE-2:細同軸利用、最大伝送距離185m、最大接続数30 10BASE-5:太同軸利用、最大伝送距離500m、最大接続数100 10BASE-T:より対線利用、最大伝送距離100m、 ハブの多段接続は3段階
単元11(20/53) UDP/IPプロトコルのしくみ UDP: User Datagram Protocol 非コネクション型プロトコル: TCPより低信頼性、 IPデータ直接利用で、高速通信可
単元11(26/53) Ethernet利用の利点
単元11(31/53) 装置構成を基本とする伝送方式の種類 Serial Interface USART(universal Synchronous and Asynchronous Receiver-Transmitter) i-8251、Z80-SIO、m-6850ACIAなど 主な実装例 • RS-232:TIA/EIA-232-F、Bluetooth • RS-422、RS-423、RS-485、LVDS • IEEE-1395 • USB1/2 • Microwire、1-Wire Interface、I2C、SPI
単元11(34/53) RS-232、422 RS-232: Recommended Standard - 232 TIA/EIA-232-Fとも呼ばれる 主な特徴 • DTE(Data Terminal Equipment)とDCE(Date Circuit termi- nating Equipment)を結ぶSerial interface • 接続ケーブルの最大長: 約15m 最大伝送速度:20kbps以上
単元11(35/53) RS-232とRS-422/485の比較
単元11(38/53) RS-232の結線法 Full Handshakeと呼ぶ
単元11(39/53) Bluetooth 携帯情報機器などで数m程度の機器間接続用 短距離無線通信シリアル伝送方式 主な特徴 • Ericsson社、IBM社、Intel社、Nokia社、東芝の5社が中心で開発 • ノートパソコンやPDA、携帯電話などをケーブルなしで10m以内を接続 • 免許不要の2.45GHz帯の電波を利用 • 1Mbps、やがて2Mbpsの速度で通信可能 • 赤外線利用のIrDAに対し、障害物があっても利用可 • 0.5cm2の小型のトランシーバを用い、IrDAより消費電力が少ない • Bluetooth=RS-232アダプター使用で既存システムをそのまま利用可
単元11(41/53) USB1/2 USB: Universal Serial Bus 主な特徴 • Compaq、Intel、Microsoft、NECが開発 • ホットプラグ方式で、Windows95、Mac OS 8.1で正式サポート • プレイステーション2、Xboxなど、ゲーム機やデジタル家電にも採用 • シリアルポート (RS-232) やパラレルバス(パラレルポート)、 PS/2(マウス、キーボード)端子などの置き換えを目的 • 電源はパソコンから供給可能(バスパワー方式) • USBハブを介して最大で127台接続可能 • 規格: USB1.0:最大12Mbps USB1.1:USB1.0の仕様書を電源管理等について改善 USB2.0:IEEE1394(最大400Mbps)超えるHigh Speed モード(最大480Mbps)を追加 Wireless USB:Hewlett-Packard、Intel、Microsoftなど、 7社で開発
単元11(42/53) USB-1.0・1.1とUSB2.0の比較
単元11(43/53) USBの結線法(コネクター)
単元11(50/53) I2C(Inter Integrated Circuit)とその実装例 主な特徴 • Fillipsが提唱 • 3線式シリアルインタフェース WP:Int-Req、SCL:Clock、SDA:Data入出力 • Serial EEPROM、CPU ROMとして利用
単元11(52/53) SPI(Serial Peripheral Interface) 主な特徴 • Free Scale Semiconductorが提唱 • 4線式シリアルインタフェース • 数Mbpsの通信速度の伝送に対応 • 大容量のSerial EEPROMやデバイスの入出力用に応用 8ビットアクセス Softwareは、MicroWireに類似
単元11(53/53) SPIの実装例
第12単元 組込みシステムのソフトウェア開発技法の概要第12単元 組込みシステムのソフトウェア開発技法の概要 • 講義の意味と位置づけ • 組込みソフトウェアの必要条件 • システム開発 • Modelingに必要なこと • UMLとシステム開発 • Object指向Modeling • 講義で解説すること • システム開発の必要条件 • 品質管理 • Modeling • UML • Objectの考え方 • Softwareの開発姿勢
単元12(1/14) 組込みソフトウェアの必要条件 • 多様なハードウェアへの対応 • 利用形態や提供サービスの多様性 • リアルタイム対応機能
単元12(2/14) システム開発の要件 設計の基本 仕様 機能・特性・通信プロトコルなど、充たすべき条件 実現方式の選択 設計の実施 インフラ CPU機能・周辺機器・通信系など、 開発ツール
単元12(3/14) 設計の規格化・品質 ISO/IEC 9126:2001
単元12(4/14) 組込みソフトウェア手戻りの原因
単元12(5/14) Modeling手法 • 対象の抽象化:本質的部分を捉える • モデリングの形式性:記法を揃え、標準化 具体的手法 • データーフロー図の描画 • UML利用:構造化、オブジェクト化
単元12(6/14) UML Unified Modeling Language ・統一モデリング言語 ・オブジェクト指向モデリングのための標準化モデリング手法 ・グラフィカルな記述の汎用モデリング言語 ・1994年:Rational社(2003年にIBMに吸収)のJames Rumbaugh オブジェクトモデル化技法(OMT)、オブジェクト指向分析(OOA)を開発 ・その後、Grady BoochによるBooch法のオブジェクト指向設計(OOD) 両者を統一 ・1996年:国際コンソーシアムによりUML仕様が完成
単元12(7/14) プログラム開発手法 Structured Prog.:GOTOを使わない (構造化プログラミング)動作内容と作業手順を明確 Water Fall型プログラミング Object Oriented Prog.: (オブジェクト指向プログラミング)IFを使わない Ifの代わり=“When” “When”=イベントの発生 オブジェクト間関係の明確化
単元12(8/14) Object とは? Object • 目的を持って認識された「モノ」 • 物理的な「モノ」:tangible(可触) 例:本 • 概念的な「モノ」:intangible(不可触) 例:注文 Objectと定義する要件
単元12(9/14) Model とは? 論理モデル 機能モデル:処理内容をActorとUseの関係を示す =Use Case Model 静的モデル: Class関係を示す 動的モデル: Object間のMessageによる協調動作 =相互作用Model 構成モデル ServerのようなComponentの配置を示す
単元12(10/14) OOMによるシステム Class Objectの集合 Instance Classの要素 Class:猫 Subclass:和猫 Subclass:洋猫 シャム ミケ ペルシャ トラ アンゴラ キジ Instance Object Instance:個性を持ったObject
単元12(11/14) UMLによる表記 記号 Class 多重度の例 多重度 * * 1 1 1 * 1..* 1.. 1対1 多対多 多対多 1対多 会社 国 国 国 都市 人 言語 首都 Objects 会社:A社 人:山田 会社:B社 人:中村 会社:C社 人:鈴木
単元12(12/14) UML記述例 事例1 事例2 Class Class 親 0..1 1 * 営業本部 営業部 組織 子 子 Objects Objects 組織3a A営業部 親 子 組織2a 営業本部 B営業部 親 親 組織1 組織3b 子 C営業部 親 組織2b 子
単元12(13/14) Softwareの開発 • Diagramを利用して分かり良く記述 • 設計からSource Codeまで一貫作業 • BugのないCleanな開発 開発システム 統合開発環境(IDE): Integrated Development Environment CASE: Computer Aided SoftwareEngineering
単元12(14/14) プログラム開発のコツ • プログラム単体のリストは表示画面内で止めること プログラム単位をモジュール化する 関数化、オブジェクト化、一般化しクラス化 • 構造化すること JUM(GOTO)は使用しない まして、構造化したブロック途中で飛び出、入り込みしない • IF文は構造化したブロック内では最大3個 IFを使わないようにすればオブジェクト化が容易 • バグが出るのは仕方がないし、むしろフェールセーフに有効だが、バグがとれないプログラムは捨てる勇気を持つこと
単元12(14/14) プログラム開発のコツ プログラム作成のコツは身体で覚えないとダメ つまり、 「泣かないと、コツは分からない」 • プログラム単体のリストは表示画面内で止めること プログラム単位をモジュール化する 関数化、オブジェクト化、一般化しクラス化 • 構造化すること JUM(GOTO)は使用しない まして、構造化したブロック途中で飛び出、入り込みしない • IF文は構造化したブロック内では最大3個 IFを使わないようにすればオブジェクト化が容易 • バグが出るのは仕方がないし、むしろフェールセーフに有効だが、バグがとれないプログラムは捨てる勇気を持つこと
謝 辞 第11、第12単元のコンテンツ作成にあたり、授業の効果的進展のため 以下の文献からの写真図表説明などを多大に引用させて頂いた。厚く感謝申し上げる。 • 特集「付録基板で始めるマイコン入門」:トランジスタ技術、4月号(2004) • 「中小企業技術者のためのマイコン応用Q&A」:トランジスタ技術、 10月号(1980)~10月号(1981) • 特集「マイコンによるイーサーネット活用入門」:トランジスタ技術、3月号(2006) • 特集「保存版H8マイコン高揚回路集」:トランジスタ技術、5月号(2004) • 特集「マZ80周辺LSIの徹底活用法」:トランジスタ技術、9月号(1982) • 16ビット・マイクロプロセッサの基礎:トランジスタ技術、8月号(1984) • 特集「保存版8086の徹底研究」:トランジスタ技術、10月号(1984) • 湯田幸八、伊藤彰:Z80アセンブラプログラミング入門、オーム社 • 特集「作るオリジナルUSBアダプタ」:トランジスタ技術、6月号(2000) • 特集「マイコンによるイーサーネット活用入門」:トランジスタ技術、3月号(2006) • 特集「マイコン・シリアル通信ハンドブック」:トランジスタ技術、6月号(2006) • 須田健二、下田祐起夫:「マイコン制御によるメカトロニクス入門」、共立出版 • 河合昭男:最新UMLがわかる、技術評論社(2002) • 酒井博敬、堀内 一:オブジェクト指向入門、オーム社(1989)