FR-V
FR-Vは、富士通により開発された、 RISCタイプの可変長VLIWのCPU(マイクロプロセッサ)のアーキテクチャおよび製品である。
開発者 | 富士通 |
---|---|
ビット数 | 32ビット |
発表 | 1999年7月 |
デザイン | VLIW、RISC |
エンコード | 可変長 |
エンディアン | Big |
レジスタ |
概要編集
- FR-Vは、富士通により開発された、 RISCタイプの可変長VLIWのCPU(マイクロプロセッサ)のアーキテクチャおよび製品である。
- FR-Vファミリには、FR300,FR400,FR450,FR500,FR550シリーズがある。
- FR-Vは、32ビットCPUであり、メモリのアドレス幅と汎用レジスタ(GR)のデータ幅はともに32ビットである。
- 命令は、32ビットの基本命令から構成される、可変長VLIW命令である。
- VLIWのビット長は、プロセッサシリーズで異なり、32ビット-1Wayから最大64ビット-2Way(FR300,FR400,FR450)、32ビット-1Wayから128ビット-4Way(FR500)、32ビット-1Wayから256ビット長-8Way(FR550)である。
設計特徴編集
FR-VはRISCの思想で作られており、可変長VLIW方式で命令を実行する。
- 基本命令は、32ビット命令
- 可変長VLIW型マイクロプロセッサ
- 最大2基本命令=2Way (FR300,FR400,FR450)
- 最大4基本命令=4Way (FR500)
- 最大8基本命令=8Way (FR550)
- VLIW長:32ビット~256ビット
- Packing Flag方式によるコード圧縮方式を用いた可変長VLIW
- 32ビットの基本命令ごとに1ビットの“パッキングフラグ・ビット”がある。
- ビッグエンディアン
- 単精度浮動小数点演算
- 2並列SIMD
- メディア処理演算
- 2並列16ビットSIMD/4並列16ビットSIMD
レジスタセット編集
- 32または64個のGR(汎用レジスタ)と32個または64個のFR(浮動小数点レジスタ)
- FR400/FR450
- 32ビット×32本の汎用レジスタ(GR)
- 32ビット×32本のメディア処理用レジスタ(FR)
- FR500/FR550
- 32ビット×64本の汎用レジスタ(GR)
- 32ビット×64本のメディア、浮動小数点共用レジスタ(FR)
- ノンエクセプティングレジスタ
- プレディケイトレジスタ
命令セット編集
- 32ビット整数命令
- 論理演算命令
- 乗算命令と除算命令
- ロード/ストア命令
- 64ビットデータロード命令
- 分岐命令
- メディア処理演算命令(FR400,FR450,FR500,FR550)
- (FR500シリーズで63個、)
- 16ビット×4のSIMD演算命令
- 40ビットアキュムレータを用いた乗算命令、積和命令(MAC), 積差命令、
- 飽和命令
- 32ビット浮動小数点数演算命令(FR500,FR550)
- 32ビット単精度×2のSIMD演算命令
- 二乗根命令と除算命令
- カスタム命令セット
- 16ビット整数命令(FR300)
- DSP 用基本命令セット(FR300)
- 条件付き実行命令
- 3値プレディケイト命令
- Non-Excepting命令
命令組み合わせ編集
- 2つの64ビットデータロード命令を同時に発行可能(FR500)
- 2つの分岐命令を同時に発行可能(FR500)
パイプライン編集
- FR400
- (I, I, F, F, M, M, B, B)
- シングルロード/シングルストア
- FR500
- (I, I, M, M, B)
- デュアルロード/シングルストア
- FR550
- (I, I, I, I, F, F, F, F, M, M, M, M, B, B)
- 最大8個の基本命令を、以下の13?種類、24?個以上のパイプラインに振り分けて実行する。
- 整数パイプライン
- 整数演算パイプライン
- ALUx4?,MULx?,DIVx?
- 1サイクルレイテンシ(乗算と除算を除く)
- ロードストアパイプライン:ロードx2、ストアx2
- デュアルロード/デュアルストア
- 2つの64ビットデータロード命令を同時に発行可能
- ノンアラインド(Non-aligned)ロード/ストア
- 制御
- 2SIMD SP 浮動小数点パイプライン
- FADDx4?,FMULx?,FDIVx?
- 3サイクルレイテンシ(二乗根と除算を除く)
- FADDx4?,FMULx?,FDIVx?
- 4SIMD 16bit media パイプライン
- MALUx4?,MSFTx?,MMACx?
- 1サイクル積和命令
- 一部命令は2サイクルレイテンシ
- MALUx4?,MSFTx?,MMACx?
- 分岐x2?
- 2つの分岐命令を1つのVLIWに置ける
レジスタファイル編集
- FR400
- GR:32ビット、32w、5R/3W
- FR:32ビット、32w、5R/3W
- FR450
- GR:32ビット、32w、5R/3W
- FR:32ビット、32w、5R/3W
- FR500
- GR:32ビット、64w、5R/4W
- FR:32ビット、64w、5R/4W
- FR550
- GR:32ビット、64w、10R/6W
- FR:32ビット、64w、10R/6W
分岐予測編集
- 静的分岐予測(FR500シリーズ、FR400シリーズ)
- 動的分岐予測(FR550シリーズ)
MMU編集
- 静的アドレス変換機構(FR400.FR450,FR500,FR550)
- 動的アドレス変換機構(FR450)
- 動的アドレス変換方式: ソフトウェアテーブルウォーク
- FR450
- 静的アドレス変換機構と動的アドレス変換機構を同時サポート
- アドレス空間の属性
- ユーザモード保護、書込み保護、キャッシャブル、ノンキャッシャブル
- セグメント、ページサイズ
- アドレス変換対象領域:16KB~512MB
- AMR(Address Map Register)
- 命令: 8エントリ
- データ: 12エントリ
- TLB (Translation Look-aside Buffer)
- 64エントリ x 2Way (セットアソシアティブ型)
- 動的アドレス変換方式: ソフトウェアテーブルウォーク
キャッシュメモリ編集
- FR400
- 命令キャッシュ
- 8Kバイト、2ウェイセットアソシアティブ,1RW
- データキャッシ
- 8Kバイト、2ウェイセットアソシアティブ,1RW
- ノンブロッキング機構
- シングルロード/シングルストア
- 命令キャッシュ
- FR500
- プリロードとキャッシュラインロック機構
- 命令キャッシュ
- 16Kバイト、4ウェイセットアソシアティブ,1RW/1R
- データキャッシ
- 16Kバイト、4ウェイセットアソシアティブ,1RW/1R
- コピーバックとライトスルー動作を選択
- ノンブロッキング機構
- デュアルロード/シングルストア
- FR550
- 命令キャッシュ
- 32Kバイト、4ウェイセットアソシアティブ, 1RW
- データキャッシ
- 32Kバイト、4ウェイセットアソシアティブ, 2RW
- 命令キャッシュ
低消費電力編集
- MB90401
- クロックギア機能
- MB93461
- パワーダウンモード:クロック停止
- コアスリープ、バススリープ、PLL-Run, PLL-Stop
- クロック比切り替え
- CMODE切り替え:ダイナミック変更
- クロックギア機能:High/Mediumモード切替え
- SDRAM I/Oの電源を分離
- パワーダウンモード:クロック停止
年編集
- MB93501:
- 1999年7月6日プレスリリース
- 2000年6月5日プレスリリース
- MB93401:2001年3月21日プレスリリース
- FR550,MB93551:2002年2月13日プレスリリース
- MB90403:2003年(FIND Vol.21 No.4 2003)
- MB93405:2004年2月26日プレスリリース
- MB93555:2004年2月26日プレスリリース
- MB93461:2004年7月6日プレスリリース
- FR1000:2005年2月7日プレスリリース
- MB93475:2005年11月17日プレスリリース
- FR577,MB93577:
- 2006年7月、
- 2006年12月15日
- Embedded Technology 2008:2008年11月19日
プロセッサ編集
FR300シリーズ編集
- 最大2命令同時命令発行
- 3つの演算パイプライン
- 2種類の整数命令とDSP命令を実行
- 命令セット
- 16ビット整数命令セット(i)
- 32ビット整数命令セット(I)
- DSP命令セットの(D)
FR400シリーズ編集
- 最大2命令同時命令発行
- 32個のGR、32個のFR
- 整数パイプライン×2
- メディアパイプライン×2
- MB93401
- MB93403
- 180nm, 266MHz
- MB93405
- 130nm, 400MHz
FR450シリーズ編集
- 最大2命令同時命令発行
- 32個のGR、32個のFR
- 整数パイプライン×2
- メディアパイプライン×2
- MMU(TLB)
MB93461編集
- Single CPUコア
- 0.13μmプロセステクノロジ CMOS
- 内部1.4V、外部3.3V
- プラスチックBGA420ピン
- 動作周波数:400MHz
- 命令キャッシュ: 32KB (2Way)
- データキャッシュ: 32KB (2Way)
- SDRAMC:32ビットSDR133
- TLB (Translation Look-aside Buffer) 構成: 64エントリ x 2Way
- ローカルバス(32ビット、66MHz)
- DMAC:8ch
- I2C
- ビデオ入出力、スケーラ、オーディオ入出力
- USBホスト、USBファンクション
- カード・インタフェース(メモリースティック、SDカードに対応)
MB93475編集
- Dual CPUコア
- 90nmプロセステクノロジ CMOS
- 内部1.3V、外部3.3V、2.5V
- プラスチックBGA480ピン
- 動作周波数:480MHz
- 命令キャッシュ: 32KB(2Way)
- データキャッシュ: 32KB(2Way)
- SDRAMC:32ビットDDR266 240MHz動作
- TLB (Translation Look-aside Buffer)構成: 64エントリ x 2Way
- PCI(32ビット)
- ローカルバス(32ビット)
- ビデオ入出力、映像拡大・縮小機能、ストリーム入出力、オーディオ入出力
- シリアルインターフェース(I2C)
- 16ビット PC-Card/SDカード
- ビデオコーデックユニット:H.264形式のビデオデータの圧縮・復元をサポート
FR500シリーズ編集
FR550シリーズ編集
MB93555編集
- Single CPUコア
- 0.13μmプロセステクノロジ CMOS
- 内部1.3V、外部3.3V
- プラスチックBGA352ピン
- 動作周波数:333MHz
- 命令キャッシュ: 32KB(4Way)
- データキャッシュ: 32KB(4Way)
- SDRAMC:64ビットSDR133の111MHz
- DMAC
- ローカルバス
MB93555A編集
- Single CPUコア
- 0.13μmプロセステクノロジ CMOS
- 内部1.4V、外部3.3V
- プラスチックBGA420ピン
- 動作周波数:360MHz
- 命令キャッシュ: 32KB(4Way)
- データキャッシュ: 32KB(4Way)
- SDRAMC:64ビットSDR133の120MHz
MB93577編集
- Dual CPUコア
- 動作周波数:440MHz
- 命令キャッシュ: 32KB(4Way)
- データキャッシュ: 32KB(4Way)
- SDRAMC:64ビットDDR266
- 内蔵RAM:256KB(128KB×2)
- PCI(32ビット、66MHz、33MHz、Rev.2.2対応)
- ローカルバス(32ビット/64ビット)
- DMAC:16ch、8ch
- I2C
FR1000編集
- プロトタイプ
- Quad CPUコア
- 90nmプロセステクノロジ CMOS、9層メタル
- パッケージ:FCBGA900ピン
- 内部1.2V、外部2.5V
- 動作周波数:533MHz
- 命令キャッシュ: 32KB(4Way)
- データキャッシュ: 32KB(4Way)
- SDRAMC:64ビットDDR266 x 2ch
- 内蔵RAM:512KB(128KB×4)
- システムバス(64ビット/178MHz)
- DMAC:外部16ch、内部16ch
使用用途編集
- 組み込み向け
- メディア処理向け
- サーバ向け