Blackfin
アーキテクチャ

Blackfin プロセッサは、インテルとアナログ・デバイセズが共同開発した MSA（Micro Signal Architecture）というSIMDアーキテクチャに基づく32ビットRISC MCU プログラミングモデルを使用している。
Blackfin プロセッサアーキテクチャは2000年12月に発表され、2001年6月の Embedded Systems Conference で実物が初公開された。
Blackfin アーキテクチャは、アナログ・デバイセズのSHARCアーキテクチャとインテルのXScaleアーキテクチャのそれぞれの長所を取り入れ、そこにデジタルシグナルプロセッサ機能とマイクロコントローラ機能を統合したものである。Blackfin/MSA と XScale/ARM や SHARC には様々な相違点があるが、統合によって性能とプログラム容易性が向上し、これまでのDSPやRISCにはない低消費電力を実現した。
Blackfin アーキテクチャを実装したCPUは各種あり、それぞれ特定の応用分野を想定している。Blackfin ファミリは下表の通りである。アナログ・デバイセズの製品一覧はこちらにある。
| ﾌﾟﾛｾｯｻ ADSP- | 最大 ｸﾛｯｸ (MHz) | ｺｱ数 | L1 (KB)> 命令 SRAM (ｷｬｯｼｭ) | L1 (KB)> ﾃﾞｰﾀ SRAM (ｷｬｯｼｭ) ｽｸﾗｯﾁ | L2 (KB)> SRAM | ｵﾝﾁｯﾌﾟ ﾌﾗｯｼｭ | ﾎｽﾄ ﾎﾟｰﾄ | ｺｰﾄﾞｾｷｭﾘﾃｨ | ｲｰｻﾈｯﾄMAC | SD/SDIO | PPIs (ﾋﾞｯﾄ)> 16 | PPIs (ﾋﾞｯﾄ)> 18/ 24 | SD-RAM | USB | ATAPI | CAN | I²C (TWI) | SPI | UART | SPORT | GPIO (ﾋﾟﾝ) | MXVR |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| BF5221 | 600 | 1 | 64 (16) | 64 (32) 4 | - | - | Yes | Yes | - | - | 1 | 0 | SDR x16 | - | - | - | 1 | 1 | 2 | 2 | 48 | - |
| BF5251 | 600 | 1 | 64 (16) | 64 (32) 4 | - | - | Yes | Yes | - | - | 1 | 0 | SDR x16 | 2.0 OTG | - | - | 1 | 1 | 2 | 2 | 48 | - |
| BF5271 | 600 | 1 | 64 (16) | 64 (32) 4 | - | - | Yes | Yes | 1 | - | 1 | 0 | SDR x16 | 2.0 OTG | - | - | 1 | 1 | 2 | 2 | 48 | - |
| BF542 | 600 | 1 | 64 (16) | 64 (32) 4 | - | - | - | Yes | - | 1 | 1 | 0 | DDR x16 | 1 | 1 | 1 | 1 | 2 | 3 | 3 | 152 | - |
| BF544 | 533 | 1 | 64 (16) | 64 (32) 4 | 64 | - | Yes | Yes | - | - | 1 | 1 | DDR x16 | - | - | 2 | 2 | 2 | 3 | 3 | 152 | - |
| BF548 | 600 | 1 | 64 (16) | 64 (32) 4 | 128 | - | Yes | Yes | - | 1 | 1 | 1 | DDR x16 | 2.0 OTG | 1 | 2 | 2 | 3 | 4 | 4 | 152 | - |
| BF549 | 533 | 1 | 64 (16) | 64 (32) 4 | 128 | - | Yes | Yes | - | 1 | 1 | 1 | DDR x16 | 2.0 OTG | 1 | 2 | 2 | 3 | 4 | 4 | 152 | 1 |
| BF531 | 400 | 1 | 32  (16) | 16 (16) 4 | - | - | - | - | - | - | 1 | - | SDR x16 | - | - | - | - | 1 | 1 | 2 | 16 | - |
| BF532 | 400 | 1 | 48  (16) | 32 (32) 4 | - | - | - | - | - | - | 1 | - | SDR x16 | - | - | - | - | 1 | 1 | 2 | 16 | - |
| BF533 | 600 | 1 | 80  (16) | 64 (32) 4 | - | - | - | - | - | - | 1 | - | SDR x16 | - | - | - | - | 1 | 1 | 2 | 16 | - |
| BF534 | 500 | 1 | 64  (16) | 64 (32) 4 | - | - | - | - | - | - | 1 | - | SDR x16 | - | - | 1 | 1 | 1 | 1 | 2 | 48 | - |
| BF536 | 500 | 1 | 64  (16) | 32 (32) 4 | - | - | - | - | 1 | - | 1 | - | SDR x16 | - | - | 1 | 1 | 1 | 1 | 2 | 48 | - |
| BF537 | 600 | 1 | 64  (16) | 64 (32) 4 | - | - | - | - | 1 | - | 1 | - | SDR x16 | - | - | 1 | 1 | 1 | 1 | 2 | 48 | - |
| BF538 | 500 | 1 | 80  (16) | 64 (32) 4 | - | - | - | - | - | - | 1 | - | SDR x16 | - | - | 1 | 2 | 3 | 3 | 4 | 54 | - |
| BF538F | 500 | 1 | 80  (16) | 64 (32) 4 | - | 512 1024 | - | - | - | - | 1 | - | SDR x16 | - | - | 1 | 2 | 3 | 3 | 4 | 54 | - |
| BF539 | 500 | 1 | 80  (16) | 64 (32) 4 | - | - | - | - | - | - | 1 | - | SDR x16 | - | - | 1 | 2 | 3 | 3 | 4 | 38 | 1 |
| BF539F | 500 | 1 | 80  (16) | 64 (32) 4 | - | 512 1024 | - | - | - | - | 1 | - | SDR x16 | - | - | 1 | 2 | 3 | 3 | 4 | 38 | 1 |
| BF561 | 600 | 2 | 64  (16) per core | 64 (32) 4 per core | 128 | - | - | - | - | - | 2 | - | SDR x32 | - | - | - | - | 1 | 1 | 2 | 48 | - |
| BF535 | 350 | 1 | 16 | 32 4 | 256 | - | - | - | - | - | - | - | SDR x16 | 1.1 | - | - | - | 2 | 2 | 2 | 16 | - |

1 BF52xC ファミリには、48kHz、ステレオ音声CODEC (2xADCs, 2xDACs) が内蔵されている。
上の表に付け加えると、Blackfin プロセッサには共通して以下の周辺機器が内蔵されている。
デバッグ/JTAGインタフェース
リアルタイムクロック
コア電圧スイッチング電源
ウォッチドッグタイマー
タイマー/PWM 出力/PWM 入力ポート
コアタイマー（コアのクロック周波数で動作するタイマー）