Loading article…
| デザイナー | ラティスセミコンダクター |
|---|---|
| ビット | 32ビット |
| 紹介された | 2006年 |
| デザイン | RISC |
| タイプ | ロード-ストア |
| エンコーディング | 固定32ビット |
| 分岐 | 比較と分岐 |
| エンディアン | 大きい |
| 拡張機能 | ユーザー定義 |
| 開ける | はい、ロイヤリティフリーです |
| レジスター | |
| 汎用 | 32 |
LatticeMico32は、フィールド プログラマブル ゲート アレイ(FPGA)用に最適化された、Lattice Semiconductorの32 ビット マイクロプロセッサ 縮小命令セット コンピュータ(RISC) ソフト コアです。ハーバード アーキテクチャを採用しており、命令バスとデータ バスが分離されています。必要に応じて、バス アービトレーション ロジックを使用して 2 つのバスを組み合わせることができます。
LatticeMico32 は、フリー (IP) コア ライセンスの下でライセンス供与されます。つまり、Mico32 は Lattice FPGA に限定されず、あらゆるホスト アーキテクチャ (FPGA、特定用途向け集積回路(ASIC)、またはソフトウェア エミュレーション (例: QEMU )) で合法的に使用できます。LatticeMico32 コアは、Lattice Semiconductor の部品に加えて、 XilinxおよびAltera FPGAに組み込むことができます。AMD PowerTune はLatticeMico32 を使用します。[1]
CPU コアと開発ツールチェーンはソース コードとして利用可能であり、サードパーティがプロセッサ アーキテクチャに変更を実装できます。
特徴
- RISC ロード/ストア アーキテクチャ
- 32ビットデータパス
- 32 ビット固定サイズ命令 (ジャンプ、呼び出し、分岐命令を含むすべての命令は 32 ビットです。)
- 32 個の汎用レジスタ (R0 は通常、慣例によりゼロに設定されますが、R0 は標準レジスタであり、必要に応じて他の値を割り当てることができます。)
- 最大32の外部割り込み
- ユーザー定義命令を含む設定可能な命令セット
- オプションの構成可能なキャッシュ(ダイレクトマップまたは2ウェイセットアソシエイティブ、さまざまなキャッシュサイズと配置)
- オプションのパイプラインメモリ
- デュアルウィッシュボーンメモリインターフェース(読み取り専用命令バス 1 つ、読み取り/書き込みデータ/周辺バス 1 つ)
- メモリマップI/O
- 6 段階パイプライン
ツールチェーン
- GNU コンパイラ コレクション(GCC) – C/C++ コンパイラ。LatticeMico32 のサポートは GCC 4.5.0 で追加され、GCC 4.4.0 でサポートするためのパッチが利用可能になりました。
- Binutils – アセンブラ、リンカー、バイナリ ユーティリティ。バージョン 2.19 以降では LatticeMico32 をサポート
- GNU デバッガー(GDB) – デバッガー
- Eclipse –統合開発環境(IDE)
- Newlib – C ライブラリ
- μCos-II、μITRON、RTEMS -リアルタイム オペレーティング システム(RTOS)
- μClinux –オペレーティング システム
参照
- Milkymist – LatticeMico32 ベースのシステム オン チップ(SoC)
参考文献
- ^ 「AMD x86 SMU ファームウェア分析」2014 年 12 月 27 日。
外部リンク
- 公式サイト
- GitHubの linux-milkymist は、LatticeMico32 を使用する Milkymist SoC への uCLinux ポートです。
- GitHubの jslm32 、JavaScript の LatticeMico32 エミュレータ、Fabrice Bellardの jslinuxを参照
- ERIKA Enterprise (OSEK/VDX API) LatticeMico32 への移植
