English 会員専用ページ
トピックス
フォーラムご案内
IPRポリシー
会員規則
会員リスト
イベント
プレスリリース
製品紹介
T-Kernel利用申込み
FAQ
参考情報
お問い合わせ
参考情報T-Engine最新情報 > μT-Engineのハードウェア開発
参考情報

μT-Engineのハードウェア開発

本稿の記事は別冊TRONWARE T-Engine(パーソナルメディア刊)に収録されています。

村木 宏行(むらき ひろゆき)
乾 聡之(いぬい としゆき)
三菱電機セミコンダクタ・アプリケーション・エンジニアリング株式会社


はじめに

T-Engineプロジェクトでは、組込み分野において、統合開発環境の流通、IP・ミドルウェアの流通、セキュアな通信の容易な実現を目的として、ハードウェア仕様とリアルタイムOS仕様を標準化しています。
組込み分野でにはセンサーのようなものから、比較的高度な情報処理機能を持つものまで、いろいろな製品があります。これに対応するため、T-Engineシリーズとして以下の3種類のハードウェア仕様を規定しています。
・PDAなど、高機能なユーザーインタフェースを持つシステム:T-Engine
・組込みサーバー用途向けのシステム:μT-Engine
・照明やスイッチのシステム:pT-Engine
図1にT-EngineシリーズでのμT-Engined様の位置づけを示します。
T-Engineシリーズのうち、三菱電機株式会社は、将来の家電機器等をターゲットとして小型のμT-Engineを開発しましたので、ご紹介します。
図1 T-EngineシリーズとμT-Engineの位置づけ
表1 T-Engineハードウェアd様

μT-Engined様概要

μT-Engined様とT-Engined様では以下の点が異なります(表1)。
μT-Engine仕様、T-Engine仕様はともに32ビットマイコンの搭載が規定されていますが、用途に応じてMMU(Memory Management Unit)の有無に関する規定が異なっています。組込み機器用途を主なターゲットとしているμT-Engine仕様ではMMUの搭載は必須ではありません。一方、アプリケーションをダウンロードして使用するようなPDAなどを主なターゲットとしているT-Engine仕様ではMMUの搭載が必須となっています。
次にカードインタフェースとして、T-Engine仕様がカードの種類が豊富なPCMCIAを搭載するのに対し、μT-Engine仕様ではサイズを優先し、コンパクトフラッシュカードスロットとマルチメディアカードスロットを搭載します。
コンパクトフラッシュカードスロットは無線LANカードなど周辺装置の拡張に使用し、マルチメディアカードスロットはデータストレージに使用することを想定しています。
その他、最低限必要なメモリの量、サウンドCODECの有無、USBホスト機能の有無などが異なります。

三菱μT-Engineボード(M3T-M32104UTG)概要

今回開発したμT-Engineボード(型名:M3T-M32104UTG)には三菱電機株式会社製の32ビットRISCマイコンM32104を使用しています(マイコンの詳細は囲み記事「付録 M32104の概要紹介」を参照ください)。M3T-M32104UTGの概要を以下に説明します。

●外観

M3T-M32104UTGの外観を図2に、仕様概略を表2に示します。
サイズは60mm×85mmとほぼ名刺サイズで、スペースを取らず、開発時に机上に置いても十分作業スペースが確保できます。
メモリは64KバイトのSRAMをマイコンに内蔵し、さらに外部にSDRAMを16Mバイト、ソフトウェアで書換え可能なフラッシュROMを4Mバイト実装しています。これは組込み用途では十分な量と考えられます。オンボードのRAM、ROMで不足する場合は、拡張コネクタに接続するボード上にメモリを追加することができます。
また、外部記憶装置としてコンパクトフラッシュカードやマルチメディアカードなどが利用できます。コンパクトフラッシュカードスロットはTYPE IIのものを使用しており、GPSカードやLANカードなどの各種ネットワーク用カードなども接続可能です。
T-Engineと同様に、セキュアな通信のためのeTRONチップを搭載するためのeTRON用コネクタを実装しています。
シリアルI/Oは最大115,200bpsで通信可能で、これは主にデバッグ用途に設けており、T-MonitorとホストPCとの通信に使用します。
リアルタイムクロックを搭載しており、バッテリでバックアップされていますので、日付、時刻を保持しておくことができます。ファイルなどのタイムスタンプや、機器の時刻管理に使用可能です。

●ブロック図、メモリマップ

M3T-M32104UTGのブロック図を図3に示します。
各インタフェースを接続している外部のバスは54MHzで動作しており、CPU内部は最大216MHzで動作させることができます。これにより、組込み業界でトップクラスの性能を駆使したプログラムを開発することが可能です。
メモリマップを図4に示します。

●拡張バスコネクタ

拡張バスのピン配置を表3に示します。
拡張バスを使用してお客様のハードウェアIPと接続することができます。これによりM3T-M32104UTGをハードウェアIP検証・実行用の部品として使用することができ、製品のTime-to-Marketの短縮が可能となります。拡張バスにはマイコンのバス以外にM32104が持つ豊富なI/Oピンが接続されていますので、外付け部品点数の削減に貢献します。
拡張バスには最大16Mバイトのメモリ空間を割り当てることが可能です。この空間に、デバイスを割り当てたり、拡張メモリボードの領域として割り当てることができます。
拡張バスコネクタはT-Engineプロジェクト用に新たに開発した京セラエルコ株式会社製のコネクタを使用しています。
拡張バスのピン配置はT-Engine、μT-Engineで異なるので、それぞれに専用の拡張ボードが必要です。そのため、T-EngineとμT-Engineの拡張ボードを誤って接続できないように、各コネクタにはキーとなる部分(コネクタ内部の凹凸)が設けられています。
拡張バスにはM32104のJTAGベースエミュレータインタフェース(SDI)信号を配置しています。拡張ボードに用意したコネクタを介してエミュレータと接続することができます。ハードウェアまたはハードウェアと密接な関係のあるドライバのデバッグも問題なくできます。
拡張バスには、図5に示すように複数のボードを接続し、さらに多くの機能を追加することもできます。

■付録■M32104の概要紹介

このM3T-M32104UTG(三菱μT-Engineボード)に使用しているマイコンM32104は、最近のデジタル情報家電やネットワーク機器向けにシステム制御や大容量データの高速処理をローコストで実現するのに最適な汎用32ビットRISCマイコンです。また、SDRAMコントローラを内蔵しており、外部に大容量のSDRAMを直結することができます。組み込み用途としてトップクラスの性能を持ち、Dhryston V.2.1ベンチマークテストで243MIPSという値を出しています。
主な仕様は以下のとおりです。 特長
●CPU M32RファミリCPUコア
●パイプライン構成 7段(命令キュー:32ビット×4段)
●命令セット 83命令/6アドレッシングモード
●命令形式 16ビット/32ビット
●積和演算器(DSP機能用命令)内蔵
●最短命令実行時間 4.6ns(f(CPUCLK)=216MHz動作時)
●メモリ容量 SRAM 64Kバイト
命令キャッシュ 8Kバイト(2ウェイ・セットアソシアティブ)
データキャッシュ 8Kバイト(2ウェイ・セットアソシアティブ)
●外部バス アドレスバス 24ビット
データバス 32ビット/16ビット
●8レベルの割込みコントローラ
●チップセレクトコントローラ 4チャネル
●SDRAMコントローラ 2チャネル
●汎用入出力ポート 49本
●DMAC 4チャネル
●16ビットマルチファンクションタイマ 4チャネル
●32ビットマルチファンクションタイマ 2チャネル
●シリアルI/O(クロック同期/UART) 4チャネル
●マルチマスタI2C-BUSインタフェース 1チャネル
●A-D変換器 10ビット×4チャネル
●監視タイマ
●M32Rファミリ共通のデバッグインタフェース(SDI:Scalable Debug Interface)
●最大動作周波数
  CPU内部バス 216MHz
●電源電圧
  内部ロジック 1.8V
  ポート/外部バスインタフェース/内蔵周辺I/O 3.3V

図2 M3T-M32104UTG外観
表面(左側)にはCPUやメモリなどを配置、裏面(右側)には
コンパクトフラッシュコネクタと拡張バスコネクタを配置
表2 M3T-M32104UTG概略
図3 M3T-M32104UTGブロック図 図4 メモリマップ
表3 拡張バスピン配置 図5 拡張バスインタフェース
図6 拡張LANボードと人工網膜LSI搭載ボード
左の拡張LANボードに右の人工網膜LSI搭載ボードを接続します
図7 拡張ユニバーサルボード

三菱μT-Engineボード対応拡張ボード紹介

より多くのアプリケーション開発でμT-Engineを使用しやすくするためには、アプリケーションで必要となる機能を持った拡張ボードが必要となります。
今回、2種類の拡張ボード(拡張LANボード、拡張ユニバーサルボード)と拡張LANボードに接続する人工網膜LSI搭載ボードを開発しました。それらのボードを図6と図7に示します。また、これらのボードとM3T-M32104UTGのボードを組み合わせた構成図を図8に示します。

●拡張LANボード

拡張LANボードはSMSC社製のLAN91C111-NCを搭載し、100Base-TXと10Base-Tの両方に対応しています。このボードとTCP/IPプロトコルスタックを使用することによって、PCとの直接接続による通信や、インターネットに接続し、全世界のインターネットに接続されている他の機器との通信が可能です。このLANボードにはネットワーク接続用のコネクタのほか、エミュレータとの接続用コネクタ、パラレルI/F、および、人工網膜LSI搭載ボードとのインタフェース用コネクタを実装しています。エミュレータ接続コネクタにSDIエミュレータを接続することで、アプリケーションプログラムのデバッグを容易に行うことが可能です。パラレルI/Fには拡張用の制御基盤などを接続することができます。

●拡張ユニバーサルボード

μT-Engine仕様の拡張バスコネクタはピッチ幅が狭く、手工作でμT-Engineボードを作るのは困難です。このため、手工作で簡便に機能拡張を行うことができるように、ユニバーサル拡張ボードを開発しました。このボードには、拡張バスからの信号を2.54mmピッチのスルーホールにつないでいます。また、2.54mm間隔でスルーホールを配置してあり、部品を自由に実装することができます。

●人工網膜LSI搭載ボード

画像撮影のために三菱電機製の人工網膜LSIを使用しています。人工網膜LSIは通常のCCDなどの撮影装置に比べ、以下の特徴があります。
・消費電力が少ない
・画像処理機能の一部をLSIに取り込んでいるため、周辺回路の部品が少なく、ソフトウェアの構造も簡単
人工網膜LSIには白黒のものから、高解像度のものまで数種類あり、今回はカラーの160×144画素の人工網膜LSIを使用しています。

図8 拡張LANボード接続構成図

μT-Engine応用例

μT-Engineの応用例として「ウェブカメラサーバ」をご紹介します。

●ウェブカメラサーバ概要

単純に撮影データを送信するだけの「カメラサーバ」ではなく、ウェブサーバの機能と、撮影した画像をJPEG圧縮する機能も追加し、「ウェブカメラサーバ」を開発することにしました。理由は、クライアントにはウェブブラウザを用意するだけでよく、GUIデザインも再生専用ソフトの新規開発も不要だからです。また、ウェブカメラサーバ機能を実現するにはハードウェアとしてネットワーク接続機能とカメラ機能が必要です。μT-Engineには、図6のようにすでに人工網膜LSIとLANコントローラ搭載の拡張ボードが存在していますので、今回の開発ではこれを使用することにしました。

●ウェブカメラサーバ機能

人工網膜LSIが撮影した画像を、連続してクライアントのウェブブラウザに送信します。カメラで撮影された画像は10fps前後の割合で連続してサーバから送信されますので、クライアントのウェブブラウザは、かなりなめらかな動きで表示されます。図9がウェブカメラサーバが撮影した画像をクライアントのウェブブラウザに表示した画面です。ほかにもウェブブラウザ経由でμT-Engineを操作したり、μT-Engineの状態を知ることができるようになっています。図10〜図12がクライアントのウェブブラウザに表示した画面です。

●ソフトウェア構成

ウェブカメラサーバには、ベースとなるリアルタイムOSのほかに、三菱電機で開発し、μT-Engine上に移植された以下のミドルウェアを使用しました。
・TCP/IPプロトコルスタック
・HTTPサーバ
・VFATファイルシステム
・JPEGライブラリ
・人工網膜LSI対応自動露出補正・ホワイトバランス制御ライブラリ
ウェブカメラサーバは、通常のウェブサーバと同様に、クライアントからのリクエストに応じてHTMLやJPEGなどのファイルを、レスポンスとして返します。μT-Engineボードに挿入されているコンパクトフラッシュ内の特定のディレクトリがウェブサーバのルートディレクトリとなり、ルートディレクトリ以下にコンテンツを保存するようになっています。最大の特徴であるCGI機能は、ウェブサーバが、クライアントからのリクエストに対応したCGI処理を行うタスク(CGIタスク)を起動し、CGIタスクがその実行結果をクライアントにレスポンスを返すことによって実現しています。ウェブカメラ機能も、ウェブサーバのCGI機能を利用しています。図13のようにクライアントからのリクエストがあれば、ウェブサーバは、画像処理用のCGIタスクを起動します。このタスクが、人工網膜LSIが撮影したデータをリアルタイムにJPEG圧縮し、クライアントに連続して送信するような仕組みになっています。

今回の開発において、すでに用意されているμT-Engine上で動作するミドルウェアを最大限に利用しました。実際に、新規に開発した部分は、カメラ画像を送信するためのCGIタスクとGUIデザインを行うためのウェブコンテンツ作成だけですんだため、短期間で開発することができました。

図9 ウェブカメラサーバが撮影した画像の表示 図10 ウェブカメラサーバトップページ
図11 μT-Engineの時刻設定画面
CGI機能を利用してμT-Engineの時刻を設定することができます
図12 撮影したJPEGファイル一覧表示
ウェブカメラサーバが撮影し、JPEGファイルとして保存した画像のファイル一覧を表示します
図13 ウェブカメラサーバシステム構成 表4 三菱電機製ミドルウェア

まとめ

組込みアプリケーションの開発プラットフォームとしてμT-Engine仕様が策定され、三菱電機では、μT-Engine仕様に基づき、小型の三菱μT-Engineボードを開発しました。
今後はソフトウェア部品としてのミドルウェアを充実させていくことで、アプリケーションの開発期間の短縮に貢献していく予定です。表4に現在三菱電機が開発中のミドルウェアを示します。また、サードパーティからもT-Engine、μT-Engine上で動作するさらに多くのミドルウェアが提供されることが期待できます。

BACK PEGE TOP