Xtensaカスタマイザブルプロセッサ

あなた独自のデータプレーンプロセッサを作りましょう

SOCの設計を成功に導く要素とは何でしょうか?次世代のモバイルデバイスやホームエンターテイメント製品には、効率が良く、高性能な機能ブロックが必要とされますが、その機能ブロックは最新の規格に対応し続けるためにはプログラマブルである必要があります。テンシリカのXtensa DPUをカスタマイズするプロセスは実証済みで自動化されており、このプロセスを利用することによって、より競争力の高く、差別化された機能を低消費電力で実現することができます。

  • 複数の市場に対応できる単一の製品の開発。
  • カスタムロジックの代わりに検証済みのDPUを使用することによって、開発期間とコストを削減。
  • 製品のライフサイクルを延長。ソフトウェアを変更して機能を追加するため、リスピンは不要。
Xtensa DPUs excell in dataplane processing

Did You Know?

Qualcomm Atheros uses Tensilica DPUs in their high-volume, ultra-low-power GPS, WiFi and Bluetooth designs.

最も柔軟で、簡単に使えるカスタマイズオプション

Xtensaアーキテクチャは柔軟性を持つように設計されています。Xtensa DPUは、コンパクトなキャッシュレスコントローラーとして使用したり、高性能な16ウェイSIMD命令を持つ3並列VLIW構成のDSPコアとして使用したりと、様々なプロセッサとして使用できます。Xtensaプロセッサのカスタマイズ方法には、次の2通りの方法があります。

Configurations

Configurability

Xtensaに搭載したい機能をチェックボックスとドロップダウンメニューから選び、必要な機能だけを選びます。必要な機能の最高の組み合わせを定義したら、Xtensa Processor Generator(XPG)が数時間の内に、検証済みのRTLやそれに完全に対応したソフトウェアツールチェーン、シミュレーションモデル、EDAスクリプトなどを自動敵に生成します。

Extensibility

Extensibility

独自の命令やレジスタ、レジスタファイルなどをTensilica Instruction Extension (TIE)メソドロジを用いて追加することができます。設計者は、Verilogに似たTIE言語を用いて、データパス要素の機能的な振る舞いを記述するだけです。そして、RTLと全てのツールチェーンは自動生成されます。

自動生成: ハードウェアとそれに完全対応するソフトウェアツールチェーン

EclipseをベースとしたIDE(統合開発環境)上で、プロセッサのカスタマイズしたり、そのテストを行うことができます。カスタマイズを終えたら、Xtensa Processor Generator(XPG)によって、検証済みのプロセッサRTLや完全なソフトウェアツールチェーンを自動的に生成します。ここで、ソフトウェアツールチェーンには、コンパイラ、デバッガ、命令セットシミュレータ、プロファイラ、消費電力の評価ツール、システムシミュレーションモデル、EDAスクリプトなどが含まれています。この開発ツールチェーンは、選択された全てのオプションとその他いかなるカスタマイズに対して完全に対応します。

Check the features

最高のアーキテクチャと最も広範なカスタマイズオプション

Xtensa命令セットアーキテクチャ(ISA: Instruction Set Architecture)は当初から、データプレーン処理の様々な要求に対応できるように設計されています。Xtensa 32ビットアーキテクチャは、コンパクトな16ビット命令と24ビット命令がモード切り替えなしで切り替えられ、最も良い電力効率と高い性能を両立します。ベースアーキテクチャは80命令あまりのRISC命令からなり、32ビットALU、最大64エントリの32ビット汎用レジスタファイル、6種類のスペシャルレジスタから構成されています。Xtensaプロセッサの先進のアーキテクチャとコンパクトな命令セットにより、コードサイズを著しく削減することができ、結果として非常に高いコード密度と低い消費電力という特性を達成することができます。

詳細な仕様については、Xtensa 9またはXtensa LX4の各データシートをダウンロードしてください。

機能比較表

 Xtensa 9Xtensa LX4
主要なISAコンフィギュレーションオプション
MAC16 Yes Yes
MUL16/MUL32 Yes Yes
浮動小数点 Yes Yes
Vectra LX Not Available Yes
HiFiオーディオDSP Not Available Yes
ConnX D2 DSPエンジン Not Available Yes
ConnX BBE16およびBBE64 Not Available Yes
Linux MMU Yes Yes
パイプライン/アーキテクチャオプション
パイプラインステージ 5 5/7
FLIXテクノロジ(VLIW) Not Available Yes
GPIO32オプション(2つの32ビットポート) Yes Yes
QIF32オプション(2つの32ビットキューインターフェース) Yes Yes
プロセッサインターフェースオプション
PIFおよびXLMI Yes Yes
ロードストアユニット One One or Two
ユーザー定義のポートおよびキュー Limited Config Options* Yes
その他オプション
3ウェイ64ビットVLIWコンフィギュレーション Not Available Yes
5または7ステージパイプライン Not Available Yes
デュアルロードストアユニットオプション Not Available Yes
ルックアップインターフェース Not Available Yes
I/Oオプション(実質的に無制限の帯域) Not Available Yes

さらなるメリット

必要なオプションだけを選択


ベースのXtensaプロセッサ(サイズは20Kゲート以下)からスタートし、必要なオプションだけを追加します。ハイレベルの数多くのビルディングブロック(HiFiオーディオ、ConnX DSP、浮動小数点、Linux用MMUなど)が、設計済みのブロックとして用意され、オプションをクリックするだけでプロセッサに追加されます。そして、メモリのサイズやタイプ、ビット幅、アクセスレイテンシを選んで、性能や消費電力、面積を最適化することができます。さらにロードストアユニットの特性も設定できます。汎用レジスタファイルの本数(エントリ数)を選び、割り込みの本数と優先レベルを設定することもできます。さらに様々な設定が可能です。

テンシリカの自動化ツールの支援によって、パフォーマンスを向上するために何を変え、何を変えないかといった決定をスマートに行うことができます。その変更(の効果)を即座にテストし、結果を把握することができます。推測は必要ありません。

アプリケーションのホットスポットを高速化


高い性能を得るのに、高い周波数を出す必要はありません。テンシリカのVerilogライクな言語(TIE)で命令を定義し、アプリケーションのホットスポットを高速化することができます。最大512ビットまでのワイドデータのロードストアで、コアにデータを供給することができます。または、テンシリカ独自のGPIOやFIFOキューインターフェースを追加して、バスを完全にバイパスすることもできます。

シンプルでVerilogライクな言語でカスタマイズ


TIE(Tensilica Instruction Extension)言語は、シンプルでVerilogライクな言語です。これを用いて、入出力やスクラッチメモリ、シングルサイクル命令、マルチサイクル命令、SIMD命令によるベクトル化、FLIX(Flexible Length Instruction eXtensions)による命令の並列実行(VLIW)などを追加することができます。

データプレーンでRTLコンパニオンとして使用


新規ブロックをRTLで実装する代わりに、最適化されたXtensa DPUを使用することを検討しましょう。制御用のステートマシンをXtensa DPU上で実行するソフトウェアにマップすることにより、検証期間と工数を削減することができます。プロセッサのRTLは自動的に生成され、きめ細かいクロックゲーティングも施されています。同等の設計をRTLで行うと数ヶ月もの期間と工数が必要となります。アルゴリズムの更新や不具合に関しては、DPUの再プログラムで対応します。ハードウェアの変更は必要ありません。ハードウェアのデータパスと同様のものも、複雑な機能ユニットを持つマルチサイクル命令(群)で構成できます。さらに、他のブロックとデータまたは制御を広帯域で接続するインターフェースを作ることができます。しかも、転送のレイテンシは確定的です。

テンシリカの全てのプロセッサは互換性があります


テンシリカの全てのプロセッサは、1999年まで後方互換性の維持されている、共通のベースアーキテクチャを使用しています。それは、高い効率の32ビットRISC/DSPアーキテクチャであり、20Kゲート以下のゲートカウントです。基本命令セットは、比較と分岐を1サイクル行ったり、ゼロオーバーヘッドループを構成するなど、強力な分岐命令を持っています。ビット操作では、ファネルシフト、ビットテスト(そして分岐)、ビットフィールド抽出といった命令が用意されています。

Xtensaアーキテクチャは柔軟性を持つように設計されています。Xtensaプロセッサは、コンパクトなキャッシュレスコントローラーとして使用したり、高性能な16ウェイSIMD命令を持つ3並列VLIW構成のDSPコアとして使用したりと、様々なプロセッサとして使用できます。テンシリカプロセッサはコンフィギュラブル(Configurable)ですが、基本Xtensa命令セットは共通です。それによって、サードパーティのアプリケーションソフトウェアと開発ツールのロバストなエコシステムが可能になります。コンフィギュラブルで拡張可能(extensible)なXtensaプロセッサは、主要なオペレーティングシステムやデバッグプローブ、ICE(インサーキットエミュレータ)ソリューションに対して常に互換性を保ちます。また、完全なソフトウェア開発ツールチェーンは常に自動的に生成されます。

完全なソフトウェアツールチェーン


サードパーティによるアプリケーションソフトェアや開発ツールのエコシステムが常に成り立つように、主要なオペレーティングシステムやデバッグプローブ、ICE(インサーキットエミュレータ)ソリューションに対して常に互換性を保ちます。また、ソフトウェア開発ツールチェーンは、コンフィギュレーションオプションや追加された命令に完全に一致するように、常に自動的に生成されます。

最も高いコード密度


テンシリカの24ビット/16ビットISAは、32ビット/16ビットアーキテクチャに比べて、25%から50%もフットプリントが小さくなり、最も高いコード密度を示します。VLIWを使用する場合には、最大128ビット長の命令までをコードを肥大化させることなく使用することができます。これは特定の命令だけが128ビット長となり、その他は依然として24ビット/16ビットであるためです。

低消費電力


他のライセンス可能な組み込みCPUと等価なゲートカウントで比較すると、Xtensa DPUは一貫して低消費電力です。Xtensa DPUは数々のテクニックを駆使して消費電力を削減しており、そのテクニックはベースのハードウェアだけでなく、コンフィギュレーションオプション部分にも適用されています。また、システムおよびメモリインターフェースへのきめ細かい制御も行われています。テンシリカ独自のXenergy estimatorは、SOC設計の早期の段階から使用できます。このツールで設計上のトレードオフを見極めることによって、プロセッサとローカルメモリの双方のエネルギー消費を最適化し、最大で50%まで削減することも可能です。

革新的なI/Oはバスをバイパスし、データ転送を高速化


システムバスを通るデータの処理に制約がありませんか?再検討してみましょう。Xtensa DPUは、制御信号やステータス信号、ストリームデータをバッファリングすることなしに転送することができます。これはロードストアを必要としません。テンシリカ独自のRTLライクなポートはGPIOとして動作し、そのポートからの結線は2つのXtensaプロセッサを接続したり、Xtensaプロセッサと外部のRTLブロックとを接続したりすることができます。同様に、入力および出力キュー(queue)はFIFOとして動作します。キューが持つ高い帯域と低い制御オーバーヘッドにより、Xtensa LX DPUは極度に大きなデータレートが必要なアプリケーションに使用することができます。また、メモリへの高速インターフェースが必要な場合は、ルックアップ(lookup)インターフェースを検討してみましょう。このインターフェースにRAMを接続してテーブルルックアップとして使用したり、長いレイテンシのハードウェア演算ユニットを接続することができます。この接続はバスを経由しません。



このような数々の機能についての完全なリストはXtensa 9またはXtensa LX4の製品概要をご参照ください。

カスタマイズ: アプリケーションにぴったりの性能、消費電力、効率のDPUを実現

Xtensa DPUをメモリとインターフェースのカスタマイズだけにとどめて、32ビットRISCコントローラとして使用することはできます。しかし、このようなシンプルなカスタマイズだけでは、途方もない選択肢からなるアドバンテージを得ることはできません。"Features"ページを見ていただくと、様々で多様なオプションがあり、それによって、Xtensaプロセッサを強力なDSPにしたり、特定の要求に対応する特殊機能を有効にしたりすることがご覧いただけます。

アーキテクチャで用意されているオプションを選択したり、または完全に新しい命令を定義することによって、Xtensa DPUは、他の32ビットプロセッサに比べて何桁も高い性能レベルを達成することができます。しかも、それにかかる時間は、RTLベースのソリューションで開発および検証を行うのに比べて、ほんの少しで済みます。

テンシリカのDPUは、SOC設計のベーシックブロックとなるべく、最初から設計されています。

DPUでさらなる低消費電力化


テンシリカのDPUは、RTLのアクセラレータに遜色のない性能を出すことができるため、同一のタスク処理で比較すると、RTLと同様の低い周波数で動作させることができます。これは、消費電力の削減につながります。

全体的なエネルギー消費に着目することは非常に重要です。DPUにカスタムの命令をいくつか追加すると、その命令拡張はDPUのサイズを押し上げ、クロックサイクルあたりの電力消費を増加させます(mW/MHzも増加)。しかし、カスタム命令がワークロード(つまり、ターゲットのCアプリケーション)に対して全体のクロックサイクルを劇的に削減するのであれば、消費されるエネルギー(サイクルあたりの消費電力に全体の実行サイクルを乗じたもの)は大幅に減少します。

例: クロックサイクルあたりの消費電力が20%増加しても、タスクの実行が3倍高速になれば、全体のエネルギー消費は60%削減できます。

独自のDPU設計のメリット


独自のDPUを使用することは、そのDPUで実現されたアイデアを競合相手がコピーするのが非常に難しくなることを意味します。他社が決して購入することのできないプロセッサを手に入れることになります。そのプロセッサのソフトウェアツールチェーンも供給するため、ASICに搭載したそのプロセッサのプログラミングの可否も完全にコントロールすることができます。さらに、最適化されたDPUは、業界標準の固定ISAのマイクロプロセッサコアに比べて、より高い性能と低いクロックレート、低い消費電力を達成します。

信号処理に適したDPU


既存の多くの設計で、標準的な32ビットプロセッサと独立したDSPコアを組み合わせて使用しており、DSPコアがデジタル信号処理を高速化する役割を担っています。しかし、このように2つのプロセッサを使用するということは、その2つのコア間で、インターコネクト経由のデータ転送が必要なことを意味します。そのインターコネクトとはバスであり、パフォーマンスを押し下げる要因になります。

Xtensa DPUの場合は、そのDSP機能をプロセッサそのものに加えることができるため、独立したDSPを必要としません。これは、低速なプロセッサバスを経由した、プロセッサ間のデータ転送が不要になることを意味します。このようなDSP機能に対して、Xtensaプロセッサをテンシリカ自身がカスタマイズした実例が、オーディオ/ボイス/スピーチのページ、またはベースバンドとRFの信号処理のページからご覧いただけます。

RTLの代替としてのDPU


ハンドコードで書かれたRTLブロックがある場合に、そこに実装されている数々のデータパスエレメントをDPUに追加することによって、そのRTLブロックの代わりに使用することができます。これらのデータパスエレメントとは、パイプラインや並列処理ユニット、タスク固有の状態レジスタ、メモリへのワイドデータバスなどを含みます。したがって、DPUは、RTLハードウェアアクセラレータの高い演算スループットとデータインターフェースを維持することができます。

DPUデータパスの制御は、RTLのデータパス制御とはかなり違いますが、DPUデータパスにおけるサイクル単位の制御は、ハードウェアのFSMにおける状態遷移のように固定されたものではありません。FSMはファームウェアとして実装されているため、アルゴリズムの不具合の修正や新機能の追加に必要な工数を著しく削減します。ファームウェアベースのFSMでは、制御フローは分岐命令で実装され、ロードストア命令によってメモリアクセスを行い、演算そのものは命令シーケンス(汎用命令またはアプリケーション特有の命令)で陽に記述されます。

自動化された開発プロセスによるカスタマイズの高速化


テンシリカの特許を取得済みのプロセッサカスタマイズフローは、非常に良く最適化されており、自動化されています。

Innovative I/O

Automated Customization Processor Overview

ハードウェアとソフトウェアツールの完全な自動生成


EclipseをベースとしたIDE(統合開発環境)上で、プロセッサのカスタマイズしたり、そのテストを行うことができます。カスタマイズを終えたら、Xtensa Processor Generator(XPG)によって、検証済みのプロセッサRTLや完全なソフトウェアツールチェーンを自動的に生成します。ここで、ソフトウェアツールチェーンには、コンパイラ、デバッガ、命令セットシミュレータ、プロファイラ、消費電力の評価ツール、システムシミュレーションモデル、EDAスクリプトなどが含まれています。

この開発ツールチェーンは、選択された全てのオプションとその他いかなるカスタマイズに対して完全に対応します。

業界で最も強力で完全な設計環境



プロセッサ設計:

テンシリカは、カスタムのXtensa DPUとそれに対応するソフトウェアツールを自動的に生成するツールを提供しています。テンシリカはこのツールに対して特許を取得済みです。また、これらのツールは数多くの設計ですでに実証されています。シンプルなコントローラから複雑なマルチコア構成のDSPの設計まで、テンシリカのツールは設計者をサポートし、製品開発を成功に導きます。

プロセッサ設計のツールについての詳細はここからお進みください。

ソフトウェア開発:

Xtensa DPUで実行するアプリケーションコードの開発には、Xtensa Software Developer's Toolkitにコード生成から解析までの包括的なツールが揃っており、開発プロセスを迅速に進めることができます。EclipseベースのXtensa Xplorer統合開発環境(IDE)が、開発全体にわたって中心となります。

ソフトウェア開発ツールの詳細はここからお進みください。

Learn More About Xtensa DPUs

Seriously considering using Xtensa DPUs in your next SoC design but want to learn more? Here are some things you should explore:

Product Literature

Title File Size Last Modified
Xtensa LX4 Product Brief
Tensilica’s high-performance Xtensa LX4 DPU is ideal for handling complex compute-intensive signal processing applications. It features flexible I/Os that bypass the main system bus plus wide data fetches for maximum throughput.
580 KB 06/05/2012
Xtensa X9 Product Brief
Tensilica’s Xtensa 9 DPU is a highly efficient, ultra-low-power 32-bit controller. It can easily be extended to out-perform any other embedded processor for a specific application using a combination of configurable options and custom instructions.
352 KB 06/05/2012

Hardware/Software Design Tools

Title File Size Last Modified
Xtensa Processor Developer's Toolkit Product Brief
Use the Xtensa Processor Developer’s Toolkit (PDK) to customize your Tensilica DPU. This Eclipse-based IDE has a full GUI that lets you pick your configuration options and add simple Verilog-like TIE for further customization.
228 KB 06/06/2012
Xtensa Software Developer's Toolkit Product Brief
If you need to develop application code for an Tensilica DPU,the Xtensa Software Developer’s Toolkit provides a comprehensive collection of code generation and analysis tools that speed the development process.
734 KB 06/06/2012

ホワイトペーパー

Title File Size Last Modified
Xtensa Architecture White Paper
More about the architecture behind all of Tensilica's processor cores and why they help deliver the lowest power and highest performance and code density in the industry.
529 KB 03/27/2009
Exploiting Core's Law: Get "More than Moore" Productivity From your ASIC and SOC Design Teams
Programmability vs efficiency trade-offs are examined for ASICs, and suggestions are made for an improved ASIC design methodology using processors as basic building blocks.
704 KB 03/27/2009
How to Avoid the Traps and Pitfalls of SOC Design
Chances are pretty good that your current SOC design approach is making your job much harder than it needs to be.
1200 KB 03/27/2009
10 Tips for Successful SOC Design
10 tips for your team find the right path to a successful SOC design.
47 KB 03/27/2009
Everything You wanted to Know About SOC Memory But were Afraid to Ask
An in-depth look at memory concerns in SOC design.
731 KB 03/27/2009
How to Increase ASICs and SOC Computational Performance with Long-Word Processors
Learn how FLIX technology allows designers to accelerate a broader class of "hot spots" in embedded applications while eliminating the performance and code-size drawbacks of VLIW processor architectures.
101 KB 03/27/2009
Processor Ports and Queues: Easily Overcome I/O Bandwidth Obstacles in Your Next ASIC or SOC Design
Wire-based interfaces are familiar to many RTL designers and allow Tensilica's processors to substitute for hardware blocks without even changing the block-interface ("pin") definitions of existing RTL blocks.
63 KB 03/27/2009
Avoid Bus Bottlenecks and Get More Performance from Your ASIC and SOC Designs by Using High-Speed, On-Chip I/O
Innovative ways to get around the biggest performance bottleneck when using a processor in your SOC design - the main bus.
111 KB 03/27/2009
Processor Core Power Specs
It's what they don't tell you about power specs that matter.
185 KB 03/27/2009
A Processor and DSP IP Selection Checklist
A useful checklist of questions to ask yourself, your team, and any processor IP providers you contact before your next SOC design project.
59 KB 04/08/2009
TIE - The Fast Path to High Performance Embedded SOC Processing
TIE, Tensilica's Instruction Extension language, is a simple way to make Xtensa processor cores faster and more efficient by adding new task-optimized instructions and I/O interfaces.
143 KB 05/12/2009
Using Processors in the SOC Dataplane
To effectively use processors in the dataplane, designers need a quick, fool-proof way to customize those processors for the exact task at hand.
202 KB 05/19/2009
The What, Why and How of Customizable Dataplane Processors (DPUs)
What is a DPU? What can DPUs do? Why would anyone want to use this type of processor? How can a DPU be used instead of creating hand-coded RTL hardware?
98 KB 09/29/2010
Optimize SOC Performance Using Memory Tuning and System Simulation
Memory tuning lets you choose memory-related parameters for each on-chip processor core to balance system performance, processor area, and memory size by exploring a target application's sensitivity to these memory system issues.
145 KB 02/23/2011
Seven Reasons to Customize a Processor Core
If you have more than simple control tasks, we give you ten good reasons why you should consider customizing your core in your next SOC design.
53 KB 10/08/2012

Reference Manuals

Title File Size Last Modified
Xtensa Instruction Set Architecture (ISA) Reference Manual
The Xtensa Instruction Set Architecture (ISA) is a new post-RISC ISA targeted at embedded, communication, and consumer products. This manual describes the Xtensa ISA - both the core architecture and the architectural options.
19965 KB 04/22/2010

Data Books

Title File Size Last Modified
Xtensa LX4 Microprocessor Data Book
The Xtensa LX4 processor lets the designer mold the processor to exactly fit the application.
7691 KB 03/25/2011
Xtensa 9 Microprocessor Data Book
The Xtensa 9 processor is a configurable, extensible, and synthesiable 32-bit RISC processor core, which is extremely versatile for control-plane and data-plane SOC applications.
5866 KB 03/25/2011

Did You Know?

Did You Know?

The LTE/HSPA/3G baseband chip in NTT Docomo’s newest mobile phones use multiple Tensilica DPUs, including the HiFi Audio DSP and the 'ConnX BBE Baseband DSP.

©2017 Tensilica Inc. All rights reserved.