AVR32

AVR32
デザイナーアトメル
ビット32ビット
バージョン改訂2版
デザインRISC
エンコーディング変数
エンディアン大きい
拡張機能Java仮想マシン
レジスター
15

AVR32は、 2016年にマイクロチップテクノロジーに買収されたアトメルが製造した32ビットRISCマイクロコントローラアーキテクチャです。 [ 1 ]このマイクロコントローラアーキテクチャは、ノルウェー科学技術大学で教育を受けた少数の人々によって設計されました。その中には、アトメルのノルウェー設計センターの主任設計者Øyvind StrømとCPU設計者Erik Rennoが含まれています。

ほとんどの命令は1サイクルで実行されます。積和演算ユニットは、32ビット × 16ビット + 48ビットの算術演算を2サイクル(結果レイテンシ)で実行でき、1サイクルごとに1回発行されます。

8ビットAVRマイクロコントローラファミリーは、どちらもノルウェーのトロンハイムにあるAtmel社で設計されているにもかかわらず、類似点はありません。ただし、一部のデバッグツールは類似しています。

Linuxカーネル4.12以降ではAVR32のサポートは廃止されました。 [ 2 ] AtmelはARMアーキテクチャのMバリアントに主に切り替えました。

建築

AVR32には、少なくともAVR32AとAVR32Bという2つのマイクロアーキテクチャがあります。これらは、命令セットアーキテクチャ、レジスタ構成、命令とデータのキャッシュの使用方法が異なります。[ 3 ]

AVR32A CPUコアは低価格アプリケーション向けです。レジスタファイル、ステータス、割り込み時の戻りアドレスをシャドウイングするための専用ハードウェアレジスタは備えていません。これにより、割り込み処理速度は低下しますがチップ面積を節約できます。

AVR32B CPUコアは高速割り込み向けに設計されており、割り込み、例外、スーパーバイザコールの値を保持するための専用レジスタを備えています。また、AVR32BコアはハードウェアでJava仮想マシンサポートしています。[ 4 ]

AVR32命令セットは、例えば一部のARMに類似した16ビット(コンパクト)命令と32ビット(拡張)命令で構成されており、古いARMv5、ARMv6、あるいはMIPS32にはない特殊な命令もいくつか含まれています。AVR32 ISAと設計プラットフォームについては、複数の米国特許が申請されています。

AVR 8ビットマイクロコントローラアーキテクチャと同様に、AVR32は高いコード密度(少ない命令で多くの機能を処理)と、少ないクロックサイクルで高速な命令を実行するように設計されています。Atmelは、独立ベンチマークコンソーシアムEEMBCを用いて、様々なコンパイラでこのアーキテクチャのベンチマークを実施し、ARMv5 16ビット(Thumb)コードとARMv5 32ビット(ARM)コードの両方を、コードサイズで最大50%、パフォーマンスで3倍も上回る安定した性能を示しました。

アトメルは、「picoPower」AVR32 AT32UC3Lのアクティブモードでの消費電力は0.48 mW/MHz未満で、当時は他の32ビットCPUよりも消費電力が少ないと主張していた。[ 5 ]その後、2015年3月にアムテルは、独自の命令セットではなくARMホールディングスARMアーキテクチャを採用した新しいCortex-M0+ベースのマイクロコントローラが、わずか35 μA/MHzで「これまでの超低消費電力性能の障壁をすべて打ち破った」と主張した。[ 6 ]

実装

AVR32アーキテクチャは、アトメルの自社製品にのみ採用されていました。2006年、アトメルはAVR32A(AVR32 AP7コア)を発売しました。これは、7段パイプラインのキャッシュベース設計プラットフォームです。[ 4 ]この「AP7000」はAVR32Bアーキテクチャを実装し、ハードウェアFPUSIMD(単一命令複数データ)命令、 RISC命令セットへのDSPデジタル信号処理)命令、Javaハードウェアアクセラレーションをサポートしています。メモリ管理ユニット(MMU)を搭載し、Linuxなどのオペレーティングシステムをサポートしています。2009年初頭、噂されていたAP7200後継プロセッサは開発が延期され、リソースは他のチップに投入されました。

2007 年、Atmel は 2 番目の AVR32 である AVR32 UC3 コアを発売しました。これはマイクロコントローラ向けに設計されており、オンチップ フラッシュ メモリをプログラム ストレージに使用し、MMU (メモリ管理ユニット) なしで動作します。AVR32 UC3 コアは、オンチップフラッシュ メモリからの命令フェッチを最適化するように特別に設計された 3 ステージパイプラインハーバード アーキテクチャを使用します。[ 7 ] AVR32 UC3 コアは AVR32A アーキテクチャを実装しています。AP7 と同じ命令セット アーキテクチャ (ISA) を共有していますが、オプションの SIMD 命令や Java サポートを含まない点で異なります。FPU 命令セットはオプションであり、UC3 マイクロコントローラの最初のファミリには実装されていませんでした。AVR32B と 220 を超える命令を共有しています。ISA は、オンチップ ペリフェラルや汎用 I/O を制御するためのアトミック ビット操作と、固定小数点DSP演算機能を備えています。

どちらの実装も、 AT91SAM ARMベースプラットフォームで初めて採用された互換性のあるペリフェラルコントローラおよびバスと組み合わせることができます。高速USBペリフェラルコントローラやスタンドアロンDMAコントローラなど、AP7000で初めて採用されたペリフェラルの一部は、後にアップデートされたARM9プラットフォーム、そしてARM Cortex-M3ベースの製品に搭載されました。

両方の AVR32 コアには、JTAGでビルドされたNexusクラス 2+ ベースのオンチップ デバッグ フレームワークが含まれています。

2010年11月10日にドイツのミュンヘンで開催されたエレクトロニカ2010で発表されたUC3 Cコアは、UC3ファミリーで初めてFPUサポートを実装したコアでした。[ 8 ]

デバイス

AP7コア

2012年4月10日、アトメルは2013年4月4日からAP7コアデバイスのサポートを終了すると発表した。[ 9 ]

UC3コア

デバイス名が *AU で終わる場合、これはオーディオ バージョンであり、Atmel ライセンスのオーディオ ファームウェア IP の実行が可能になります。

デバイス名が *S で終わる場合、AES 暗号化モジュールが含まれています。

A0/A1 シリーズ – デバイスは、66 MHz (1 フラッシュ待機状態) で91 Dhrystone MIPS (DMIPS) を実現し、3.3 V で 66 MHz 時に 40 mA を消費します。
A3/A4 シリーズ – デバイスは 66 MHz で 91 Dhrystone MIPS (DMIPS) を実現し、3.3 V で 66 MHz 時に 40 mA を消費します。
B シリーズ – 60 MHz で 72 Dhrystone MIPS (DMIPS) を実現し、3.3V で 66 MHz 時に 23 mA を消費します。
C シリーズ – デバイスは 66 MHz で 91 Dhrystone MIPS (DMIPS) を実現し、3.3 V で 66 MHz 時に 40 mA を消費します。

D シリーズ – 低電力の UC3D には、周辺機器がデバイスをスリープ モードから復帰できるようにするSleepWalkingテクノロジーが組み込まれています。

L シリーズ – 50 MHz で 64 Dhrystone MIPS (DMIPS) を実現し、1.8 V で 50 MHz 時に 15 mA を消費します。

ボード

Atmel EVK1100 開発ボード

参照

参考文献

  1. ^ 「マイクロチップ・テクノロジー、アトメルを買収」マイクロチップ・テクノロジー社、2016年1月19日。 2025年12月11日閲覧
  2. ^ "avr32: AVR32アーキテクチャのサポートを削除" . GitHub . 2017年9月21日閲覧。
  3. ^ 「AVR32アーキテクチャドキュメント」(PDF) . Atmel . 2012年3月24日時点のオリジナル(PDF)からアーカイブ2008年6月15日閲覧。
  4. ^ a b「AVR32 AP テクニカルリファレンスマニュアル」(PDF) . Atmel . 2008年12月3日時点のオリジナルよりアーカイブ(PDF) . 2008年12月12日閲覧
  5. ^ 「低消費電力と高性能を兼ね備えた、実証済みの革新的なマイクロコントローラ技術」(プレスリリース)。Atmel 、業界最高レベルの消費電力を63%削減したAVR32マイクロコントローラを発表。picoPower AVR32 AT32UC3Lマイクロコントローラは、アクティブモードで0.48 mW/MHz未満、スリープモードで100 nA未満を実現。
  6. ^ 「SAM Lファミリー、世界最低消費電力のARM Cortex-Mベースソリューションに」 2015年3月30日。2015年4月27日時点のオリジナルからアーカイブ。 2015年4月27日閲覧これらのCortex-M0+ベースMCUは、システム機能を維持しながら、現在市場に出回っている同等製品の3分の1の消費電力を実現しています。このデバイスは、アクティブモードで35μA/MHzという超低消費電力を実現し、32kB RAMをフルリテンションした状態でも900nA未満を消費します。[..] 「Atmelが昨年SAM L21ファミリーを発表した際に、この製品ファミリーのアクティブモードとスリープモードの両方で、驚くほど低い消費電流定格を指摘しました。そして今、EEMBC ULPBenchから得られた具体的なデータによって、この見解を裏付けることができます」と、EEMBC会長兼創設者のMarkus Levy氏は述べています。 「アトメルは、特許取得済みの超低消費電力picoPowerテクノロジーにより、Cortex-MベースのプロセッサおよびMCUの中で世界最低の消費電力を実現しました。ULPBenchにおける今回の結果は特筆すべきもので、電圧監視のためのDC-DC変換をはじめとする革新的な技術を活用した同社の低消費電力技術の卓越性を実証しています。」SAM L21は、EEMBC ULPBench実行時に驚異的なスコア185を達成しました。これは、Cortex-MベースのプロセッサおよびMCUとして世界最高記録であり、他のベンダーが発表した167および123というスコアを大幅に上回っています。SAM L21ファミリーの消費電力は、40kB SRAMのフルリテンション、リアルタイムクロック、カレンダー機能使用時で940nA未満、最もディープスリープモードでは200nAです。
  7. ^ 「AVR32UC テクニカルリファレンスマニュアル」(PDF) . Atmel . 2009年2月5日時点のオリジナル(PDF)からアーカイブ。 2008年6月15日閲覧
  8. ^ 「 Atmel 、浮動小数点ユニットを搭載した初の32ビットAVRマイクロコントローラを発表」。Atmel 2010年11月22日時点のオリジナルよりアーカイブ2011年3月26日閲覧。
  9. ^ 「スマート | コネクテッド | セキュア | マイクロチップ テクノロジー」