Blackfin Blackfinの概要

Blackfin

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/07/16 16:30 UTC 版)

開発キットがいくつか存在し、Linuxもサポートされている。現在は、アナログ・デバイセズが製造している。

アーキテクチャ

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)

L2

(KB)

オンチップ

フラッシュ

ホスト

ポート

コードセキュリティ イーサネット
MAC
SD/
SDIO
PPIs

(ビット)

SD-RAM USB ATAPI CAN I²C (TWI) SPI UART SPORT GPIO

(ピン)

MXVR
命令

SRAM
(キャッシュ)

データ

SRAM
(キャッシュ)
スクラッチ

SRAM 16 18/

24

BF5221 600 1 64 (16) 64 (32)
4
- - Yes Yes - - 1 0 SDR
x16
- - 1 1 2 48 -
BF5251 2.0
OTG
BF5271 1
BF542 - - 1 DDR
x16
1 2 3 152
BF544 533 64 Yes - 1 - 2
BF548 600 128 1 2.0
OTG
1 3 4
BF549 533 1
BF531 400 32 (16) 16 (16)
4
- - - - SDR
x16
- - - 1 2 16 -
BF532 48 (16) 32 (32)
4
BF533 600 80 (16) 64 (32)
4
BF534 500 64 (16) 1 1 48
BF536 32 (32)
4
1
BF537 600 64 (32)
4
BF538 500 80 (16) - 2 3 4 54
BF538F 512
1024
BF539 - 38 1
BF539F 512
1024
BF561 600 2 64 (16)
per core
64 (32)
4
per core
128 - 2 SDR
x32
- 1 2 48 -
BF535 350 1 16 32
4
256 - SDR
x16
1.1 2 16

1 BF52xC ファミリには、48kHz、ステレオ音声CODEC (2xADCs, 2xDACs) が内蔵されている。

上の表に付け加えると、Blackfin プロセッサには共通して以下の周辺機器が内蔵されている。

機能

コア機能

Blackfin のコアが何であるかは、見方によって異なる。

ISAも高度な表現能力を有し、アセンブラプログラマやコンパイラがハードウェア機能を利用してアルゴリズムを高度に最適化することを可能にしている。

メモリとDMA

Blackfin はバイト単位のアドレス指定が可能な平坦なメモリ空間を使っている。内蔵L1メモリ、内蔵L2メモリ、外部メモリ、メモリマップされた制御レジスタ群などは、全てこの32ビットアドレス空間に存在している。

L1内蔵SRAMメモリは、ハーバード・アーキテクチャであり、コアのクロック速度で動作する。命令メモリとデータメモリは、それぞれ独立してコアと専用メモリバスで接続されていて、コアとL1メモリ間では高速なデータ転送が可能となっている。

L1メモリは、命令とデータそれぞれ独立してキャッシュメモリとして使うこともできる。

一部のBlackfinプロセッサには64KBから256KBのL2メモリがある。このメモリはコアのクロック速度より遅い。L2メモリ上では命令とデータが混在可能である。

Blackfinプロセッサは外部メモリとして SDRAM、DDR-SDRAM、NORフラッシュ、NANDフラッシュ、SRAM をサポートしている。また、一部のBlackfinには ATAPI や SD/SDIO といったインタフェースがサポートされている。これらは、外部メモリ空間として数百メガバイトをサポート可能である。

コアとメモリシステムの組み合わせでDMAエンジンを構成でき、任意の周辺機器と主メモリ(および外部メモリ)との間でやり取りが可能である。プロセッサは各周辺機器と専用のDMAチャンネルを持っていて、リアルタイムの動画エンコーディング/デコーディングなども可能とする程度の高いスループットを提供している。

マイクロコントローラとしての機能

Blackfinアーキテクチャは、マイクロプロセッサやマイクロコントローラに共通して見られる特徴を備えている。これによってBlackfinは商用またはオープンソースの各種オペレーティングシステムを効率的に実行できるようになっている。

メモリ保護ユニット(Memory Protection Unit、MPU)
全てのBlackfinプロセッサに内蔵されている。MPUは、メモリ空間全体について保護とキャッシュ戦略を提供する。これによって、ThreadX、µC/OS-II、Linux といったRTOSやカーネルが動作可能となっている。MPU はいわゆるメモリ管理ユニット(MMU)にあるようなアドレス変換機構は持たないため、仮想記憶やプロセス毎のアドレス空間はサポートしていない。このため、Blackfinでは仮想記憶を前提とした WinCE や QNX のようなOSはサポートできない。なお、Blackfin の文書には MPU を MMU と呼んでいるものが多いので注意が必要である。
ユーザー/スーパーバイザーモード
Blackfinには、スーパーバイザー、ユーザー、エミュレーションの3つのCPUモードがある。スーパーバイザーモードでは、全プロセッサリソースにアクセス可能である。しかし、ユーザーモードでは、システムリソースやメモリ領域を保護できる(MPUの機能を利用)。最近のOSでは、カーネルがスーパーバイザーモードで動作し、通常のスレッド/プロセスはユーザーモードで動作する。スレッドはクラッシュしたり、保護されたリソース(メモリ、周辺機器、その他)にアクセスしようとしたとき、例外が発生し、カーネルが問題のスレッド/プロセスを停止させる。
可変長RISC風命令セット
Blackfinの命令は、16ビット、32ビット、64ビットのものがある。よく使われる制御命令は16ビットで、DSPなどの命令は32ビットや64ビットになっている。これによって、コード密度を高めている。Blackfinの命令セットには、動画や画像の圧縮・伸張アルゴリズムに使われるピクセル処理の補助となる media processing extensions が含まれている。



「Blackfin」の続きの解説一覧



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Blackfin」の関連用語

Blackfinのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Blackfinのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのBlackfin (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS