Texas Instruments DaVinci

Texas Instruments DaVinci テクノロジー（ダビンチ・テクノロジー）は、広範な最適化されたデジタルビデオとデジタル機器の開発のために、テキサス・インスツルメンツ (TI) が統合したデジタルシグナルプロセッサ、ソフトウェア、ツールのセットである。DaVinci DSP は、広く使われているTMS320 DSP ファミリの一部である。

概要 
ハードディスクレコーダーやデジタルカメラのような、典型的なマルチメディアシステムは、大まかに２つの部分に分けることができる。制御部とメディア処理部である。メディア処理部が音声や画像のエンコード・デコードの処理を行っている間、制御部はメモリーカードやハードディスクドライブのアクセス、ユーザインタフェース、ネットワーキングのような処理を行う。汎用プロセッサは制御部のタスクで良い性能を発揮するが、最も強力な汎用プロセッサでも、リアルタイムの高画質ビデオエンコーディングのようなメディア処理関連のタスクには、十分に強力であるとはいえない。一方で DSP は、反復的で容易に並列化できるメディア処理関連のタスクで素晴らしい性能を発揮するが、制御タスクでは十分な性能を発揮できない。

DaVinci ファミリーのプロセッサの背後にあるアイデアは、汎用プロセッサと DSP を用いて、制御部とメディア処理部のタスクを、それぞれに適したプロセッサで実行させることである。これらの 2つの構成要素の 1チップへの統合により、システムデザインを単純化し、2つの構成要素の間のより効率的なコミュニケーションを行うことができる。

現在の DaVinci ファミリーのプロセッサは、ARM と DSP のマルチコアデバイス (例：DM644x) から、DSP のシングルコアデバイス (例：DM643x)、ARM のシングルコアデバイス (例：DM355) まで、幅広いスケーラビリティがある。

周辺デバイス 
DaVinci プロセッサファミリーは、多くのオンチップデバイスを搭載している。それぞれのモデルにより搭載状況は異なる。

コンパクトフラッシュ・SDカード・MMC などのメモリーカードのサポート（後ろの2つ用のLinux用ドライバは、現状では適切な性能での書き込みができない）
ATAインタフェース
デジタルカメラ／ビデオカメラ用の CCDコントローラ
ホスト/デバイス用の USB 2.0コントローラ、VLYNQ (:en:VLYNQ)（FPGA、無線LAN、PCI 用のインタフェース）、MDIO(:en:MDIO) に対応したEMAC（イーサネットMAC）などのコネクティビティ
GPIO
強化されたDMA
割り込みコントローラ
デジタルLCDコントローラ
SPI、I²C、I²S、UARTなどのシリアルインタフェース
ヒストグラム、自動フォーカス、自動露光、自動ホワイトバランス (H3A) のアクセラレータ
画像リサイズのためのアクセラレータ
アナログビデオ入出力用の A/D・D/Aコンバータ

モデル 
DM6443 - ARM9 + Texas Instruments TMS320C64x+ DSP + DaVinci Video (デコード) - 標準解像度の表示のためのビデオアクセラレータとネットワーキング
DM6446 - ARM9 + Texas Instruments TMS320C64x+ DSP + DaVinci Video (エンコードとデコード) - 標準解像度の撮影と表示のためのビデオアクセラレータとネットワーキング
DM6467 - ARM9 + Texas Instruments TMS320C64x+ DSP + DaVinci Video (エンコードとデコード) - 高解像度の撮影と表示のためのビデオアクセラレータとネットワーキング
DM643x - Texas Instruments TMS320C64x+ DSP
DM355 - ARM9 + DaVinci Video (エンコードとデコード) - MPEG-4/JPEG コプロセッサ
DM365 - ARM9 + DaVinci Video (エンコードとデコード) - MPEG-2/MPEG-4/H.264/VC-1/JPEG コプロセッサ
DM368 - DM365の機能強化版

ライブラリ 
 ほとんどのTMS320 DSP は、周辺デバイスを制御するためのAPIである TMS320チップ・サポート・ライブラリ (CSL) を含んでいる。 しかし DaVinci は ARM/Linux 側の Linuxデバイスドライバで周辺デバイスを制御する思想のため、現状では DM644x (ARM/DSP のデュアルコア) の CSL のサポートは DSP 側で使用できない。

オペレーティング・システム 
多くの DaVinci ベースのデバイスに内蔵される DSP は、一般的に TI の DSP/BIOS リアルタイムOS が動作している。複数の異種のコアが搭載されるデバイス(例えば DM644x)では、DSP/BIOS Link ドライバが、ARMとDSPの両側で動作し、2つのコアの間の通信を提供する。

多くのオペレーティング・システムが、Davinci ARM と DaVinci の DSP/BIOS Link ドライバをサポートしている。

モンタビスタ Linux
メンター・グラフィックス Nucleus PLUS リアルタイムOS
グリーン・ヒルズ・ソフトウェア INTEGRITY リアルタイムOS
QNX Neutrino
Microsoft Windows CE
LEOs (RTOS)

外部リンク 
DaVinci ホームページ（日本語）
DaVinci Developers Wiki （TIが運営）

関連項目 
Texas Instruments OMAP

マイクロプロセッサ