LIFE LOG(ここにはあなたのブログ名)

あつあつ備忘録

ソフトやハード、時にはメカの備忘録をまとめていきます

エンベデッドシステムのキーワード集

エンベデッドシステムにおける重要な内容をまとめてきます。随時更新していくと思います。

 

エンベデッドシステムの定義

マイクロチップとそれを制御するプログラムを組み込んだシステム。

多くがリアルタイム処理

 

エンベデッドシステムの特徴

  1. 論理タイミングで説明できる。あらゆる機能を設計対象とすることである。
  2. 開発する技術の多様化を防ぐために、共通基盤としてコンピュータの機能を持ち込むことで、さまざまな種類のハードウェアを削減し、そのトレードオフとしてソフトウェアの開発に重点を移すことである。

 

エンベデッドシステムで頻繁に出てくる語句

  1. I/F:Interface
  2. OS:Operating System
  3. USB:Universal Serial Bus
  4. D/A:Digital to Analog
  5. A/D:Analog to Digital
  6. APIApplication Programming Interface
  7. GUI:Graphical User Interface
  8. MPU:Memory Processing Unit
  9. RAM:Random Access Memory
  10. ROM:Read Only Memory
  11. LCDLiquid Crystal Display
  12. CAN:Controller Area Network

キャッシュメモリとは

MPUがアクセスした付近のメモリの内容を高速メモリにコピーしておき、次回から高速メモリにアクセスすれば、主記憶を高速化したのと同様の効果が得られる。

イベントドリブンプリエンプション方式とは

  1. リアルタイムOSで用いられる
  2. 優先度の低いタスクを中断して、優先度の高いタスクを実行するスケジューリング方式。 

MMUとは何か

Memory Management unitの略

メモリのマッピングや保護を行うハードウェアの機能・論理アドレス物理アドレスに変換する。また、プログラムがアクセスできるメモリ領域を設定することでメモリの保護ができる。


組込みソフトウェアの構成

以下のミドルウェアデバイスドライバカーネルはOSに含まれる。

アプリケーションプログラム

 OSが提供する仕組みを利用して、特定の問題をコンピュータで処理するためのプログラム

ミドルウェア

汎用的なOSの機能を提供するモジュール

デバイスドライバ

入出力機器を制御する機能を提供するモジュール

カーネル

処理全体を複数の処理(タスク)に分割し、それらを管理・制御・実行する

このようにソフトウェアを構成することの利便性

OSが基本的な機能を実現するAPIを提供することで、簡便にアプリケーションプログラムを作成できる。OSがハードウェアの違いを吸収することで、様々なハードウェアを同じAPIで動かすことができる。


センサと入力インターフェイスの関係

表1 センサと入力インターフェイス
  センサ 入力 出力 入力インターフェイス 変換回路・駆動回路
1 PSD距離センサ 距離   A/D 電圧変換回路
2 CMOSイメージセンサ 画像   シリアルI/O 画像キャプチャIC
3 エレクトレットコンデンサマイク 音声   A/D 抵抗など
4 フォトトランジスタ 明るさ   A/D 抵抗など
5 LED   パラレルI/O 抵抗など
6 圧電スピーカ   D/A, タイマなど アンプ
7 モータ   モータ タイマなど モータドライバ

バスタブ曲線

 システムの典型的な故障パターンを表す曲線

初期故障期間と摩耗故障期間の間の偶発故障期間の故障率が低い。

 

f:id:AtsuyaKoike:20180806175310j:plain

図1 典型的な故障率曲線[1]

 POSIXとは

UNIXAPIを標準化した仕様

プロトコルとは

通信を行うための約束事

TCP/IPとは

Transmission Control Protocol / Internet Protocol

インターネットで通信するためのプロトコル

OSI参照モデルトランスポート層ネットワーク層に位置する。

マルチタスクとは

タスクが同時に共有資源にアクセスする区間クリティカルセッションと呼ぶ。これを防ぐために、排他制御が行われるが、セマフォはその手段の一つである。クリティカルセッションに入る前にP操作を行い、終了時にV操作を行う。お互いに待合いになるデッドロックが発生しないように注意する。

フェールセーフ

故障が発生したとき常に安全側にシステムを固定する

フォールトトレランス

故障を早く検出し、障害となる前に正常に戻す

マルチスレッドとマルチプロセス

マルチスレッドはメモリを共有するが、マルチプロセスはメモリを共有しない

 


 引用文献

[1]一般社団法人組込みシステム技術協会エンベデッド技術者育成委員会 "組込みシステム開発のための 改訂エンベデッド技術",  株式会社電波新聞社(2017年2月5日)