2015年7月8日水曜日

RTOS不要! マルチコア・プロセッサによる 新しい組込みソフトウェア開発技術!

32bit RISCコア が8コ以上搭載されたプロセッサなのに、C言語さえ知っていれば、

「初心者でも簡単に組込みソフトウェアが開発できて」
「モーター制御や音楽ストリーミング・データの処理が簡単にできて」
「組込み製品開発が楽しくなる」

そんなマルチコア・プロセッサと、その開発環境を紹介していきます。


事実!

北海道職業能力開発大学校の学生の方々が、リアルタイムOS(RTOS)とマルチコア・プロセッサ xCORE の予備知識がない状態から、12ヶ月で「階段昇降ロボット」を開発しました。



(予備知識の無い状態から、センサー処理のソフトウェアを3日程度で実装し、モーター制御のソフトウェア開発を3ヶ月で完了させています)


この階段昇降ロボット」は12個のセンサーと8個のDCモータを持ち、1つのマルチコア・プロセッサ xCORE デバイスが、それらをリアルタイムで制御します。

「独立したタスクを、並列に実行できるマルチコア・プロセッサの特徴により、複数のDCモータのリアルタイム制御を実現しています。


参考URLs:

www.xmos.com
www.youtube.com/user/xmosmmcu




「リアルタイムOS (RTOS)」不要
コンテキスト・スイッチによるオーバーヘッドなし
パイプライン・フラッシュによるペナルティなし
組込みソフトウェア・タスクの並列実行
ソフトウェア・パイプライン設計が容易

マルチコア・プロセッサ xCORE は、組込みソフトウェア開発の生産性と品質を向上させるソリューション


このマルチコア・プロセッサ xCORE デバイスには、「リアルタイムOS」がハードウェア実装されています。これはスケジューラと呼ばれるもので、ラウンドロビン方式(フェアネス・アルゴリズム)で各CPUに割り当てられたタスクを実行していきます。

(実は、xCOREデバイスは、 マルチコア・プロセッサといっても、8コのCPU毎に1系統のパイプラインが存在し、8コのCPUがパイプラインを共有するアーキテクチャなのです。このパイプラインは500MHz で動作しています。下記の16 CPUのデバイスでは、2系統のパイプラインがあります



Source: www.xmos.com


コンテキスト・スイッチや割り込みの概念が無いアーキテクチャのため、非常に見通しの良い「組込みソフトウェア」が開発できます。
(「割り込み」機能に相当する機能があります。外部ピンからの入力に対応して処理を実行するイベント駆動型ソフトウェア処理です)

マルチコア・プロセッサ xCORE デバイス上の各CPUは、それぞれにレジスタ・セットを持っています。
共有メモリを使用せずに、CPU間でデータを受け渡しすることが可能です。共有メモリを使用する代わりに、直接、他CPUのレジスタにアクセスして、データの受け渡しができます。このCPU間でデータを送受信する命令が、ISAに定義されています。

割り算以外の命令は、全て 1 CPU cycle で処理が完了します。また、64ビットの乗算及び積和演算といったDSP演算命令を持ち、それらも 1 CPU cycle で処理が完了します。

これらの仕組みにより、各CPU上で動作する各タスク(ソフトウェア)をパイプライン化した「組込みシステム」を実現することができます。


CPU/タスクのパイプライン例:
入力 ---> [CPU1(Task1)] ---> [CPU2(Task2)] ---> [CPU3(Task3)] ---> [CPU4(Task4)] ---> 出力



特に音楽業界では、このマルチコア・プロセッサ xCORE デバイスの採用が進んでいます。
パイプライン化された各タスクが、リアルタイムに入力される音楽ストリーム・データを処理します。
これまでご紹介してきた特徴により、マルチ・チャネル、ハイレゾ、ミキサー、エフェクタ機能を、容易にソフトウェアで実現することができるのです。



シンプルで見通しのよいアーキテクチャは、美しく、バグが入り込む余地が少ないことは、皆様もご承知の通りです。

そんな組込みシステム(ソフトウェア)アーキテクチャを実現できるマルチコア・プロセッサ xCORE と、ソフトウェア開発方法について、次回より詳しく見ていきます。



ソフトウェア統合開発環境「xTIMEcomposer STUDIO」

(その他の投稿については、右上の「ページ」をご確認ください)


※ご参考===================
XMOS社の Smart Microphone ソリューションを含む各種お問い合わせは、XMOS社まで「お気軽」にお問い合わせください。
以下の手順で、「日本語」でもお問い合わせいただけます。

(1) MyXMOS アカウントの作成 https://www.xmos.com/user/login
(2) MyXMOS にlogin https://www.xmos.com/user/login 
(3) MyXMOS のページから、"TICKETS" タブをクリック
(4) サポート・チケット画面が開きます。その後、画面左側の "General: Sales Enquiry" をクリックします。
(5) 件名とお問い合わせ内容を記載し、「チケットの作成」ボタンをクリックします。
(6) その後、MyXMOSアカウント作成時に登録した e-mail に、XMOS社日本法人担当者から、「日本語」で回答が届きます。
=======================

0 件のコメント:

コメントを投稿