STM32H7 - OVRシステムの概要
1.0版

こんにちは、STM32H7システムの概要のプレゼンテーションへようこそ。

1シングルコア･ブロック図• Cortex®-M7コア最大480MHzの動作周波数• 16キロバイト IキャッシュとDキャッシュ• 16MPU保護領域• シングルと倍精度FPU• 3x相互接続マトリクス• 4xDMAコントローラ（CPU負荷をアンロード）• 最大35の通信用ペリフェラル• 11アナログ･ペリフェラル• 最大22のタイマとウォッチドッグ• 拡張されたクロック管理

Cortex-M7480 MHz
DP-FPU
MPU
ETM
2x16KBキャッシュ
マスタDMA、
2 x DMAとBDMA

内蔵メモリ
最大2MB Flash
デュアルバンク
4KB バック
アップ RAM

4KBデバッグRAM

ETF, DAP

Q-SPI
2xSD/SDIO/MMC

ディスプレイ/グラフィック
192KB
RAM
TCM

アナログ

デバッグ

メモリ･インタフェース
FMC (SDRAM, NOR, NAND)

最大864KB
RAM

セキュリティ
暗号/ハッシュTRNG、アンチタンパ、ROP、
PC-ROP、
セキュリティ
サービス

2

3 x14ビットA/Dコンバータ、
2 xコンパレータ、
2 xオペアンプ
1×温度センサ

TFT LCDコント ローラ

I/O

Chrom-ART
アクセラレータ™

最大い168I/O

JPEGコーデック

バックアップ

オーディオ
4xSAI、DFSDM(8ch./4フィルタ)、3xI2S(Mux w/ SPI)、SPDIF-Rx、
2x 12ビットD/Aコンバー
タタイマ
22タイマを含む:
2 x 32ビット高機能タイマ、
5 x 16ビットLPタイマ、
1 x 高分解能タイマ、
12 x 16ビットタイマ
2 x W/D

DMA

RTC、
タンパ
電源

LDO、USB、
バックアップコネクティビティ
2xUSB OTG (1xHS,1xFS)、
6xSPI、4xI²C、1xTT/FD-CAN、
1xFD-CAN、4xUART+ 1xULP UART、
4xUSART、Ethernet、MDIO、HDMI-CEC、SWP、DCMI (カメラ)

このブロック図は、最大480MHzのCortex®-M7コア（単精度および倍精度の浮動小数点ユニットを搭載）、32Kバイトのキャッシュ、最大2Mバイトのデュア
ルバンクフラッシュメモリ（ECCおよびRead-While-Write機能付き）、1MバイトのSRAMを統合した、新しいSTM32H743シングルコア製品の主な特長をまとめたものです。
192キロバイトのTCM（Tightly-Coupledメモリ）RAM（64キロバイトのITCM（命令TCM）RAMと128キロバイトのDTCM（データTCM）RAMを含む）を搭載し、タイムクリティカルなルーチンやデータに対応します。また、512キロバイト、288キロバイト、64キロバイトのユーザーSRAMと、最低消費電力モードでデータを保持するためのバックアップ領域のSRAMを4Kバイト搭載しています。
このラインには、Chrom-ARTアクセラレータ™を利用したデュアルレイヤーサポートを備えた新しいLCD-TFTコントローラインタフェースに加えて、最大35台の通信周辺機器も含まれています。このグラフィックスアクセラレータは、コ
ア単体の2倍の速さでコンテンツを作成します。
STM32H7x3シングルコア・ラインは、最大2Mサンプル/秒で動作する低消費電力の14ビットADC、12ビットDACおよびオペアンプを含む11種類の強化されたアナログ機能と、480MHzで動作する高分解能タイマを含む22種類のタイマを搭載しています。
STM32H7x3シングルコアラインは、共通パッケージのSTM32F7シリーズとピン互換で、STM32F4シリーズのほとんどの共通パッケージと互換性があります。
2デュアルコア･ブロック図• シングルコア版に対する拡張機能• STM32H7x5およびSTM32H7x7ラインのみ• Cortex®-M4コア最大周波数240MHz• アダプティブリアルタイム
ARTアクセラレータ™
• グラフィックス
• MIPI DSIホスト(STM32H7x7ラインでのみ利用可能)• 電力効率の向上(SMPS)

Cortex-M7
480 MHz
DPFPU
MPU
ETM
2x16KBキャッシュ
マスタDMA

ART アクセラレータ™
セキュリティ
暗号/ハッシュ
TRNG、
アンチタンパ、
ROP、
PC-ROP、
セキュリティ
サービス

デバッグ
ETF, DAP内蔵メモリ
最大2MB Flash
デュアルバンク
4KB バック
アップRAM

最大864KBRAM

192KB
RAM TCM

4KB
デバッグRAMアナログ
3 x 14ビット ADC、
2 x コンパレータ、
2 x オペアンプ
1 x 温度センサ

メモリ･インタフェース
FMC (SDRAM、NOR、NAND)
Q-SPI
2xSD/SDIO/MMC

タイマ
22タイマを含む:
2 x 32ビット 高機能 タイマ
5 x 16ビット LPタイマ
1 x 高分解能タイマ
12 x 16ビットタイマ
2 x W/D

CortexM4280 MHz
SPFPU
MPU
ETM

ディスプレイ/グラフィック
TFT LCD コントローラ

DMA

MIPI-DSI

I/O

Chrom-ART
アクセラレータ™

最大168
I/O

JPEG コーデック

オーディオ
4xSAI、DFSDM (8 ch./4フィルタ)、3xI2S (Mux w/ SPI)、SPDIF-Rx、2 x 12ビットDAC

3電源
コネクティビティ2xUSB OTG (1xHS,1xFS),
6xSPI, 4xI²C,1xTT/FD-CAN, 1xFD-CAN
4xUART+ 1xULP UART,
4xUSART, Ethernet, MDIO,SMPS、LDO、USB
バックアップバックアップ

RTC、タンパ

HDMI-CEC, SWP, DCMI
(camera)

STM32H7シリーズは、シングルコアラインに加えて、2つの新しいデュアルコアラインを提供します。STM32H7シリーズは、高性能なARM® Cortex®-M7およびCortex®-M4 32ビットRISCコアを搭載したSTM32H745およびSTM32H747の2つのデュアルコアラインを提供します。最大240MHzで動作するARM®
Cortex®-M4プロセッサには、専用のハードウェア適応型リアルタイムアクセラレータ（ARTアクセラレータ™）が搭載されており、Flashメモリからの0ウェイト状態のコード実行が可能です。
STM32H743およびSTM32H747デバイスは、-40～+85℃の温度範囲で動作し、STM32H745デバイスは、-40～+125℃の拡張温度範囲で動作可能です。
すべてのラインは、1.62～3.6Vの電源で動作します。

3

メモリ構成4• STM32H7x5/STM32H7x7デュアルコア･ライン:• 内蔵SRAM• 最大864KBのユーザSRAM• 128KBのデータTCM RAM• 64KBの命令TCM RAM• 4KBのバックアップSRAM• Flashメモリ• Flashメモリ･インタフェースは、CPU AXIがFlashメモリにアクセスするのを管理する• Flashメモリは2つの独立したバンクに分かれる
各バンクは次のように編成• 128KB (4KB Flashワード)の8つのユーザセクタを含む1メガバイトのユーザFlashメモリブロック• 128KBのシステムFlashメモリを搭載、そこからデバイスを起動可能• 2KB（64個のFlashワード）のユーザ･オプション･バイトは、ユーザが設定するためのもので、読取り/書込み保護、BORレベル、ウォッチドッグ･ソフトウェア/ハードウェア、およびデバイスがSTANDBYまたはSTOPモードにあるときのリセットを実行

STM32H7シリーズは、192キロバイトのTCM RAM（タイムクリ
ティカルなルーチン用の64キロバイトのITCM RAM＋128キロバイトのDTCM RAMを含む）、864キロバイトのユーザSRAM、および4キロバイトのバックアップドメインのSRAMの合計1メガバイトのRAMを搭載しています。
Flashメモリインタフェースは，CPUのAXIによるFlashメモリへのアクセスを管理します。
Flashメモリは以下のように構成されています。
セクターに分割された2つのメインメモリブロックと、それを含む情報ブロック。
・システム・メモリ・ブート・モードでデバイスが起動するシステ
ム・メモリ・ロケーション。
・読み書き保護、BORレベル、ウォッチドッグ・ソフトウェア／ハードウェア、STANDBY/STOPモード時のリセットを設定するためのオプションバイト。

4

内蔵SRAM5• 内蔵のシステムSRAMは、最大5つのブロックに分割される• D1ドメインのAXIバスマトリックスを介してアクセス可能なAXI SRAM(D1ドメイン):• AXI SRAM(512KB)はアドレス0x2400 0000にマップ• バイト、ハーフワード、フルワード、ダブルワード･アクセスをサポート• D2ドメインのAHBマトリクスを介してアクセス可能なAHB SRAM(D2ドメイン):• AHB SRAM1(128KB)はアドレス0x3000 0000にマップ• AHB SRAM2(128KB)はアドレス0x3002 0000にマップ• AHB SRAM3(32KB)はアドレス0x3004 0000にマップ• バイト、ハーフワード、フルワード･アクセスをサポート• D3ドメインのAHBマトリクスを介してアクセス可能なAHB SRAM(D3ドメイン):• アドレス0x3800 0000でマップされ、ほとんどのシステム･マスタからアクセス可能なAHB SRAM4(64KB)• 最大32ビット幅アクセスをサポート

内蔵のシステムSRAMは、最大5つのブロックに分割されます。
• AXI(Advanced eXtensible Interface)SRAM(D1ドメイン)は、アドレス0x2400 0000にマップされ、D1ドメインのAXIバスマトリックスを介してBDMAを除くすべてのシステムマスタがアクセス可能です。
• AHB(AMBAハイパフォーマンスバス)SRAM(D2ドメイン)は、3つの領域に分割され、D2ドメインのAHBマトリックスを通じて、BDMAを除くすべてのシステムマスタがアクセス可能です。
• AHB SRAM1はアドレス0x3000 0000にマップされています。
• AHB SRAM2はアドレス0x3002 0000にマップされています。
• AHB SRAM3はアドレス0x3004 0000にマップされています。
• AHB SRAM（D3ドメイン）AHB SRAM4はアドレス0x3800 0000にマッピングされており、D3ドメインのAHBマトリクスを介してほとんどのシステムマスタからアクセス可能です。
システムAHB SRAMは、バイト、ハーフワード(16ビット単位)、ワード(32ビット単位)、システムAXI SRAMは、バイト、ハーフワード、ワード、ダブルワード(64ビット単位)でアクセスできます。これらのメモリは，待機状態になることなく，最大システムクロック周波数でアドレス可能です。

5

内蔵SRAM: D2 AHB SRAM

6

• D2ドメインのAHB SRAMも、Cortex®-M4ハーバード・アーキテクチャを維持するためにエイリアスされる:• AHB SRAM1は、アドレス0x1000 0000
• AHB SRAM2は、アドレス0x1002 0000• AHB SRAM3は、アドレス0x1004 0000

• D2ドメインのAHB SROMは、D2ドメインのAHBマトリクスを介してすべてのシステム・マスタからアクセス可能な状態を維持

また、D2ドメインのAHB SRAMは、Cortex®-M4ハーバードアーキテクチャを維持するためにエイリアスされています。
• AHB SRAM1は0x1000 0000番地にマッピングされ、D2ドメインのAHBマトリックスを通じてすべてのシステムマスタがアクセス可能• AHB SRAM2は0x1002 0000番地にマッピングされ、D2ドメインのAHBマトリックスを通じてすべてのシステムマスタがアクセス可能• AHB SRAM3は0x1004 0000番地にマッピングされ、D2ドメインのAHBマトリックスを通じてすべてのシステムマスタがアクセス可能

6

内蔵SRAM: TCM RAM

7• TCM SRAMはCortex®-M7 CPU専用:• TCMインタフェース上のDTCM-RAMは、アドレス0x2000 0000にマッピングされており、Cortex®-M7 CPUおよびMDMAは、Cortex®-M7 CPUのAHBSスレーブバスを介してアクセス可能• TCMインタフェース上のITCM-RAMは、アドレス0x0000 0000にマッピングされており、Cortex®-M7 CPUおよびMDMAは、Cortex®-M7 CPUのAHBSスレーブバスを介してアクセス可能• これらのメモリは待機状態になることなく、最大CPUクロック周波数でアドレス可能

TCM（Tightly-Coupled メモリ）SRAMは、Cortex®-M7 CPU専用のSRAMです。
- TCMインタフェース上のDTCM-RAMは、アドレス0x20000000にマッピングされています。
- TCMインタフェース上のITCM-RAMは、アドレス0x00000000にマッピングされています。
ITCM-RAMおよびDTCM-RAMは、Cortex®-M7 CPUおよび
Cortex®-M7 CPUのAHBSスレーブバスを介してMDMA（マスタ・ダイレクト・メモリアクセス）からアクセス可能です。

7

ブート･モード(1/3)

8• ブート･アドレスは、オプション･バイトで指定
プログラムされたデフォルト値は次の通り• Boot0 = 0の場合：0x0800 0000のFlashメモリから起動• Boot0 = 1の場合：0x1FF0 0000のシステム･ブート･ローダから起動• BOOT端子の値は、リセット解除後、SYSCLKの4番目の立ち上がりエッジでラッチされる
Boot0ピンCPUx Boot 0 アドレス
Cortex-Mx ベクタ･テーブル初期値
CPUx Boot 1 アドレス

起動時には、BOOT端子とBOOT_ADDxオプション・バイトによってブート・メモリ空間が選択され、0x0000 0000から0x3FFFFFFFまでの任意のブート・メモリ・アドレスをプログラムすることができます。
・すべてのFlashメモリのアドレス空間
・すべてのRAMアドレス空間。ITCM、DTCM RAM、SRAM・システムメモリのブートローダ
BOOTピンの値は、リセット解除後、SYSCLKの4番目の立ち上がりエッジでラッチされます。リセット後にBOOT端子を設定するかどうかはユーザー次第です。

8ブート･モード(2/3)

9• プログラムされたブート･メモリのアドレスがメモリ･マップドエリア外または予約エリア内にある場合、デフォルトのブート･フェッチ･アドレスは次の通り• BOOT_CM7_ADD0: 0x0800 0000のFlashメモリ• BOOT_CM4_ADD0: 0x0810 0000のFlashメモリ• BOOT_CM7_ADD1: システム･ブート･ローダ 0x1FF0 0000
• BOOT_CM4_ADD1: SRAM1 0x1000 0000から• Flashレベル2の保護が有効な場合:• Flashメモリからの起動またはシステム･ブート･ローダからの起動のみが可能
ブート･アドレスがメモリ･レンジまたはRAMアドレスから外れている場合、デフォルトのフェッチは、
Cortex®-M7コアではアドレス0x0800 0000のFlashメモリから、Cortex®-M4コアではアドレス0x0810 0000のFlashメモリから強制的に起動プログラムされたブートメモリアドレスがメモリマップドエリア外または予約エリア内にある場合、デフォルトのブートフェッチア
ドレスは以下のようにプログラムされます。
・Cortex®-M7ブートアドレス0：Flashメモリ0x0800 0000
・Cortex®-M7のブートアドレス1：システムブートローダ0x1FF00000
・Cortex®-M4ブートアドレス0：Flashメモリ0x0810 0000
・Cortex®-M4のブートアドレス1：SRAM1 0x1000 0000
Flashがレベル2保護が有効な場合、Flashメモリまたはシステ
ムブートローダからのブートのみが可能となります。
BCM7_ADD0 / BCM7_ADD1 / BCM4_ADD0 / BCM4_ADD1オ
プションバイトに既にプログラムされているブートアドレスが、メモリレンジまたはRAMアドレスから外れている場合、デフォルトのフェッチは、Cortex®-M7コアではアドレス0x0800 0000のFlashメモリから、Cortex®-M4コアではアドレス0x0810 0000のFlashメモリから強制的に行われます。

9ブートモード(3/3)

10• STM32H7x5およびSTM32H7x7ラインでは、ブート･コードは同時に実行されるオプション･バイトに従って、一方のコアからブートしながらもう一方のコアをクロック･ゲーティングすることも可能
BCM7

BCM4

ブート順序

00

Cortex®-M7が起動し、Cortex®-M4のクロックがゲートされる

0

1

Cortex®-M7のクロックがゲートされ、Cortex®-M4が起動

10

Cortex®-M7が起動し、Cortex®-M4のクロックがゲートされる

1

1

Cortex®-M7とCortex®-M4の両方が起動• 有効化されたCPUはマスタとして定義され、システムの初期化を担当、他のCPUは特定の初期化操作を行う• 安全な起動を実現し、電源投入時の適切な初期化を可能にする

STM32H7x5/x7ラインでは，この表に示すように，オプションバ
イトに従って2つのコアを個別にまたは同時にブートすることができます。これにより、セーフブートの実装が可能になり、電源投入時の適切な初期化を可能にします。
有効化されたCPUはマスタとして定義され、システムの初期化を担当します。もう一方のCPUは特定の初期化操作を行います。

10