Nios IIエンベデッド・プロセッサの背景説明

Nios IIエンベデッド・プロセッサの背景説明
序論
Nios
®
IIソフトコア・プロセッサ・ファミリは、アルテラのFPGA製品向け第2世代エンベデッド・プロセッサ
®
です。高性能FPGA製品Stratix IIファミリ向けに使用され た場合、200DMIP以上のデザイン性能を備え
るNios IIファミリは、広範なエンベデッド・アプリケーションに対応する性能水準を提供します。Nios IIファミ
リは、 高速版、低価格版、および標準版の3種類の製品群から構成され、各製品群は特定の価格および
性能 範囲に合わせて最適化されています。これら3種類のコア全てが同じインストラクション・セット・アー
キテクチャ(ISA)を利用しており、完全なバイナリ・コード互換性を確保しています。Nios IIプロセッサは、
®
現在Quartus II開発ソフトウェアに搭載されているSOPC Builderシステム開発ツールを使用してデザイ
ンされているシステムに追加することができます。
表1:Nios IIファミリ・メンバの主な特徴
Nios II
II /f/f
Nios
Fast
Fast
パイプライン
Pipeline
6 Stage
6 段
乗算
*
Multiplier
*
サイクル
1 Cycle
分岐予測
Branch Prediction
Instruction
Cache
インストラクション・キャッシュ
データ・キャッシュ
Data Cache
動的
Dynamic
Nios II /s
Nios II /e
Standard
Standard
Economy
Economy
5 Stage
5 段
None
なし
3 3サイクル
Cycle
なし
None
静的
Static
なし
None
コンフィギュレーション
Configurable
コンフィギュレーション
Configurable
可能
可能
コンフィギュレーション
Configurable
なし
None
なし
None
なし
None
可能
*StratixおよびStratix II FPGA製品のDSPブロック使用時
実績に基づく開発
2000年に発売されて以来、1万3千台個以上出荷されている第1世代の16ビットNiosプロセッサは、
FPGA製品向けソフトコア・プロセッサの標準を確立しました。NiosプロセッサはEDN誌の『Hot 100
Products of 2003』の一つに選出され、年一回実施されるCMPの『Embedded Market Study』調査にお
いてデザイナが次期デザインで利用を検討している16ビット・プロセッサの上位10製品にランクされ ており、
魚群探知機から先進通信サブシステムに及ぶ広範なアプリケーションで実績があります。
アルテラは、Nios IIプロセッサの製品定義プロセスの一環として、世界中のソフトウェア開発者、ハード
ウェア・エンジニア、およびシステム設計者と数百回にわたる面談を実施しました。これらの面談から得ら
P.1/6
れた情報を基に、アルテラは3つの顧客の要求である“プロセッサ性能の向上”、“ロジック使用の低減”、
および“拡張ソフトウェア開発ツール”に対応する新しいCPUアーキテクチャを開発し、自社のエンベデッド
戦略を検証・
微調整することができました。その結果開発された32ビッドNios IIエンベデッド・プロセッサは、
より少ないデバイス・ロジック面積で、より高い性能、世界水準のソフトウェア開発ツール、そしてより多く
の柔軟性を提供します。アルテラの次世代のソフト・プロセッサ・ソリューションにより、顧客は既に使用し
ているC言語アプリケーション・コードを維持しながら、Nios技術を利用できるようになります。Nios II開発
キットで提供されるツールは、C言語を利用したデザインをNiosプロセッサからNios IIプロセッサへ移行
させるプッシュボタン機能を備えています。
®
Nios IIプロセッサ・
ファミリは、アルテラのStratixおよびCyclone FPGAファミリで使用することができま
す。低価格Cyclone(および今後発表予定のCyclone II )FPGA製品でNios IIを利用する際に、設計者は
広範な量産アプリケーションに業界で最もコスト効率性に優れたプロセッサの一つを利用することができま
す。Nios IIプロセッサは、高性能アプリケーションに対して、DSPブロック、オンチップ・メモリ、および
StratixファミリとStratix IIファミリのその他の機能を最大限活用できるよう最適化されています。また、アル
®
テラのHardCopy ストラクチャードASIC製品に移行することで、StratixおよびStratix IIデバイス・ファミリを
ターゲットとしたNiosプロセッサを利用した量産アプリケーションにおいてデザイン・コストを削減することが
できます。
ロジック使用の削減
多くの開発者は、基本的な制御および(あるいは)
日常的機能向けに小型CPU(例:500 – 800ロジック・
エレメント)必要としています。CPUが小型であれば、低集積度・低コストのCyclone FPGAに容易に適合
し、他のシステム機能のための十分な領域を確保することができます。それ以外にも、小型CPUコアは以
下のような利点を持っています。
・ 複数プロセッサの実装
小型CPUにより、単一のFPGAで複数のプロセッサを利用することがより一層容易になります。多くの
顧客は、単一のデバイスでそれぞれ特定の(時には、無関係な)タスクを割り当てた複数のプロセッサ
を使用したNiosデザインを開発しています。例えば、Iris Technologiesは転送、ヘッダ処理、トラフィッ
ク管理、およびスイッチ/ファブリック管理を処理するために最大4個のNiosプロセッサを使用したネット
ワーク・プロセッサ・デザインを開発しました。詳細情報は、
http://www.panapress.com/newswire.asp?code=665に掲載されています。
究極の汎用性
アルテラの Nios IIソフト・プロセッサ・ファミリにより、開発者は無制限のシステム・コンフィギュレーション
の組み合わせの中から彼らのエンベデッド・ニーズに正確に合致するものを選択することができます。
Nios IIプロセッサを使用している開発者は、将来使用することのない機能にコストをかけることなく、プロセ
ッサ、ペリフェラル、およびインタフェースの最適な組み合わせを60以上のペリフェラルの中から選択する
ことができます。Nios IIソフト・プロセッサ・ソリューションにより、顧客は彼らのコアの規模および性能の選
P.2/6
択、コストおよび性能に応じた FPGAの選択、複数のプロセッサ・コアの実装、およびハードウェア内のイン
ストラクションの高速化を行えるようになります。
表2: アルテラの FPGA製品に実装される際のNios II の性能および価格
デバイス・ファミリ
Device Family
DMIPS
DMIPS
Performance
性能
(/f, /s,
(/e,
/s, /e)
/f)
ロジックのコスト
Cost
of Logic
(CPU)
Stratix II
200,
31, 128,
120,220
28
$0.90
$.90ドルから
to $2.90 1.90 ドル
Stratix
166,97,
100,
22
22,
165
$1.40ドルから
to $4.60 4.60 ドル
$1.40
Cyclone
100,54,
17,
60,9220
$0.35
$.50ドルから
to $1.60 1.60 ドル
250,103,
24,
100,167
22
$0.36
$.36ドルから
to $1.20 1.20 ドル
Hard Copy
HardCopy
ソフトウェア・アルゴリズムの迅速化
Nios IIプロセッサは、システム性能を高めるため、時間/性能が必要なコード・セクションを高速化させる
ために利用する固定または可変クロック・サイクル演算による256種類のカスタム・インストラクションをサ
ポートします。図 1に示すカスタム・インストラクションにより、デザイナは演算負荷の高いアルゴリズムをハ
ードウェアに実装し、それをC言語のサブルーチンのようにソフトウェアに呼び出すことができます。対照的
に、第1世代Niosプロセッサは事前に実行ごとのクロック・サイクル数が事前設定されている5つのカスタ
ム・インストラクションをサポートしていました。いくつかのASIC向けプロセッサ・コアは、カスタム・インスト
ラクションおよび(あるいは)ハードウェアによる高速化を可能にしていますが、アルテラの FPGA製品の
Nios IIプロセッサほど高速(あるいは低開発コスト)動作可能で出荷段階にある半導体製品はありませ
ん。
P.3/6
図1:Nios II CPUへのカスタム・インストラクション実装のブロック配線図
高性能化による優れた操作性
Nios IIファミリで使用されているAvalon™スイッチ・ファブリックは、
複数のデータ・トランザクションを可
能にし、卓越したシステム処理性能をもたらします。第 1世代Niosプロセッサで導入されたAvalonスイッ
チ・ファブリックは、
60以上の利用可能なペリフェラルの中からユーザが必要な数だけ接続できる定義済
みのシグナル・タイプ・セットを提供します。SOPC Builderシステム開発ツールを利用することで、データ・
パスの多重化、アドレス・デコード、ウェイトステート生成、ダイナミック・バス・サイジング、割り込み優先割
り当て、および先進スイッチ・ファブリック転送などのAvalonスイッチ・ファブリック・ロジックを自動的に生成
することができます。ユーザは、SOBC Builder Import Wizardを使って、Nios IIプロセッサ・ベースのシス
テムの IPブロックとペリフェラルを容易に統合することができます。Avalonスイッチ・ファブリックは、最小
限のFPGAリソースのみを必要とし、完全な同期動作を実現します。
ハードウェアによる高速化
アプリケーション専用ハードウェア・アクセラレータを追加することで、大規模なデータ・ブロックをCPUと
同時に処理することができます。Avalonスイッチ・ファブリックは、複数のコア(CPUやアクセラレータなど)
が専用データ・パスを利用して同時にデータを読み書きできる柔軟な配線パスを提供し、システム・
スルー
プットを飛躍的に向上させます。例えば、ネットワーク通信に特有な周期的冗長数を計算するハードウェ
ア・アクセラレータは、ソフトウェア単体でデータ処理を行った場合の2倍の性能を達成することができます。
図3が示す通り、64Kバイトのデータ・ブロックを処理するのに、ソフトウェアで数百万回のクロック・サイク
ル、カスタム・インストラクションでは数十万回のクロック・サイクル、ハードウェア・アクセラレータでは数万
回のクロック・
サイクルを必要とします。
P.4/6
Processor
Avalon
Switch
Fabric
Program
Memory
Accelerator
DMA
DMA
DMA
DMA
図2:Avalonスイッチ・ファブリックによるハードウェア・アクセラレータの実装
AArrbbiitteerr
AArrbbi itteerr
Data
Memory
Data
Memory
図3:ハードウェア・アクセラレータによるクロック・
サイクルの低減
包括的な開発ツールのサポート
Nios IIプロセッサは、ソフトウェア・エンジニアにとって強力で完全な開発ツール群であるNios II統合
開発環境(IDE)によってサポートされています。EDN誌の『Hot 100 Product of 2003』の一つに選出され
た、オープンソースのEclipseプロジェクトをベースにするNios II IDEは、OS統合、性能解析ツール、およ
び今日のエンベデッド・デザイナが必要とする完全な開発ツール群などの拡張プラグイン機能をサポート
します。
・ プロジェクト・マネージャ
・ エディタ
・ コンパイラ
・ JTAGデバッガ
・ Flash Programmer
リアルタイム・オペレーティング・システムのサポート
NiosII開発キットには、2つのサードパーティ製リアルタイム・オペレーティング・システム(
RTOS製品)
およびネットワーク・
ベースのアプリケーション向けTCP/IPスタックが含まれます。
P.5/6
MicroC/OS-II (Micrium)
MicroC/OS-IIは、完全ソースコード、レファレンス・マニュアル資料、および無償の開発者ライセン
スを含む、完全でポータブルなROM化可能なプリエンプティブ・リアル タイム・カーネルです。
MicroC/OS-IIは、安全性が求められる航空電子工学機器での利用に関して FAAから認可を受けてい
ます。(http://ucos-ii.com/)顧客は、以下の権利が含まれるシッパーズ・ライセンスを米国内販売価格
2,985ドルで購入できます。
・ 3名の開発者が、1年間、MicroC/OS-IIを利用してデザインを無制限に開発できるライセンス
・ サブスクリプション期間中(バグ修正や微小変更など)に開発されたデザインをサポートする永久
ライセンス
・ 開発者1人当たり995ドルで購入できる追加サブスクリプション・ライセンス
Nucleus Plus(ATI / Mentor):
Nios IIプロセッサは、Accelerated Technologyのソース提供・ロイヤリティ無償のNecleus Plus
RTOSカーネルの評価版と共に出荷されます。この評価ソフトウェアにより、Nios IIユーザはNucleus
ベースのアプリケーションを開発し、開発ボード(
制限時間内で)上で動作させることができます。完全
な 開 発 者 ラ イ セ ン ス は 、 ATI / Mentor Graphics よ り 販 売 さ れ て い ま す 。
http://www.mentor.com/nucleus/
Lightweight IP TCP/IPスタック
Nios II開発キットは 、MicroC/OS-IIアプリケーションで利用できるオープンソースのTCP/IPスタック
を同梱して出荷され ます。このソフトウェアは、出荷される際に資料、リファレンス・デザイン、および
アルテラからのサポートが 付属したソースコードとして提供されます。
開発者は、付属のRTOS製品のいずれかを利用し、Nios II IDEからRTOSベースのアプリケーショ
ンを開発することができます。μCLinuxオペレーティング・システム などのオープンソース・ソフトウェア
は、Webサイトから無償でダウンロードすることができます。
価格と出荷時期
Niosサブスクリプション契約を結んでいる全ての顧客は、Nios IIの
アップデートを自動的に入手でき
ます。現在サブスクリプション契約を結んでいない顧客は、わずか495ドルでNios II のアップグレードと
1年間のアップグレードを入手できます。Nios II エンベデッド・プロセッサは、アルテラのFPGA製品および
HardCopyデバイスで使用する限り、ロイヤリティ費用が無償となります。OEMアプリケーション向けASIC
ライセンスは、追加費用で購入できます。詳細情報は、http://www.altera.com/nios2 に掲載されていま
す。Nios II 開発キットはアルテラの販売代理店で受注しています。
以上
P.6/6