STM32H7 - DFSDM
デルタシグマ･モジュレータ向け
デジタル・フィルタ･インタフェース
1.0版

こんにちは、STM32のデルタシグマモジュレータ向けデジタル
フィルタインタフェースのプレゼンテーションへようこそ。
このプレゼンテーションでは、外部にアナログパーツを持ち、速度と分解能の比率の設定ができ、アナログデジタルコンバータ（A/Dコンバータ）のように動作する、このインタフェースの機能を説明します。

1

DFSDM：紹介と代表的な活用法

2

スケーラブルな速度／分解能と外部にアナログ･フロントエンドを備えたA/Dコンバータのように動作
アナログ
入力

U

アナログ
部
外部SD
モジュレータ• アナログ部とデジタル部への分割：

DATA
CLK

• アナログ部の外部化によるメリット• 内部のデジタル機能（DFSDM）によるメリット
高速
シリアル
ライン

オプション
オプティカル・ア
イソレーション

1ビットデータ
ストリーム

DFSDM

STM32
スプレッドアーキテクチャのA/Dコンバータ

アプリケーション側の利点• 外部アナログ部：ニーズに応じた選択：精度、低ノイズ、超高速、ガルバニック絶縁、直線性、安価、高電圧側動作• デジタル部：シリアルライン･インタフェース（1または2線）、ス
ケーラブルな速度対分解能（最大24ビット）、A/Dコンバータと同等の完全な機能• 例：電力量計、モータ制御、医療アプリケーション、MEMSマ
イクロフォン･オーディオなど

DFSDMペリフェラルはSTM32マイクロコントローラに搭載した新しいデジタルペリフェ
ラルです。その動作は、マイクロコントローラの外部にアナログ部を持つ標準的なA/Dコ
ンバータに似ています。
主なメリットは、アナログ部をマイクロコントローラの外に移動し、内部に幅広い機能を備えたデジタル部を設けることで得られます。DFSDMとは、高速シリアルインタフェー
スを介してアナログ部とつながるデジタル部を意味します。外部アナログ部は通常、多くのベンダが提供するデルタシグマモジュレータです。
この機能は、ユーザニーズに合った特定のアナログ部を選択する可能性を提供します。
そのようなアナログ部にはモータ制御または計測アプリケーションに使用するガルバ
ニック絶縁対応部品、センサデータの取得に使用する低ノイズで高精度のアナログ部品、または価格重視のアプリケーション向けの安価なアナログ部品が含まれます。最後に、アナログ部はDFSDM向けにデジタル化されたデータを提供します。
デジタル部（DFSDMペリフェラルと表現）は、外部データからのデジタル信号を処理します。このように、DFSDMは速度と分解能の間のスケーラブルな比率ソリューションだ
けでなく、標準の内蔵A/Dコンバータに統合されている追加の機能（アナログウォッチ
ドッグ、通常のインジェクト変換、柔軟性の高いトリガシステム、ブレーク信号生成、極値検出回路など）も提供します。PDM出力データフォーマットを出力するデジタル
MEMSマイクロフォンは、オーディオ信号を直接処理できるDFSDMに直接接続できます。
DFSDMはまた、外部シリアルデータと、CPUまたはダイレクトメモリアクセス（DMA）コ
ントローラがメモリから取り出す内部のパラレル16ビットデータの転送を処理できます。

2

主な機能

3

CPUの負荷軽減と遅延時間を短くしたハードウェア安全機能• トランシーバ• 高速シリアル入力（20MHz）：• SPIまたはマンチェスタ符号化モード（クロック不在検出あり）• クロック出力生成• 内部パラレルデータ入力• 16ビットのレジスタデータ入力（CPU/DMAによる書込み）• 内部A/Dコンバータから直接入力• フィルタ• 最大1024のオーバーサンプリング比を持つSinc1、
Sinc2、Sinc3、Sinc4、Sinc5、およびFastSincフィルタ• 最大1024のオーバーサンプリング比を持つ積分器

アプリケーション側の利点• さまざまなSDモジュレータサ･プライヤ（ST、TI、アナログデバイスなど）をサ
ポート• フィルタ構成による速度対分解能の選
択• 内部データの後処理（SAR A/Dコンバータの結果など）• 追加機能：ウォッチドッグ、短絡検出回
路、極値検出回路、オフセット補正

トランシーバは、外部のデルタシグマモジュレータにシリアル接続を提供します。設定可能なプロトコル（SPIまたはマンチェスタ
符号化済）および設定可能なパラメータを使用したシリアル接続をサポートします。それらの機能については後で詳しく説明します。トランシーバは、内部A/Dコンバータ、CPU、DMAコント
ローラによりDFSDM入力データレジスタに書き込まれる内部の16ビットパラレルデータ入力もサポートします。
フィルタは、1ビットストリームフィルタの実行により低速で高出力分解能を提供するDFSDM機能の中核を担います。デジタルフィルタの後ろには追加的にデータの平均化を行う積分器が追加されています。
アプリケーションは、（さまざまなベンダの製造品から）さまざまなタイプのデルタシグマモジュレータを使用して設計できます。
パラレルデータ入力機能は、内部データ（たとえば、内部A/Dコ
ンバータストリーム、オーディオデータフィルタリングなど）の後処理を実行できます。追加機能については後で詳しく説明します。
3

ブロック図
A/Dコンバータ･データ

内部
A/Dコンバータ

内部の16ビットデータ

16 16
8つの
パラレル
トランシーバ

4

8ユニット
16

M
U 32
1+1 X

デジタル
フィルタ
（Sinc）

32

積分器

32

出力データ
ユニット

B
U
S
24

CLK_OUT

外部
デルタシグマモジュレータ

最大8個のアナログ信号

1+1

8シリアル
トランシーバ

1+1

8 x 短絡検
出回路

24
Sincフィルタ

8 x ウォッチドッグ

8 x 極値検出回路

デルタシグマモジュレータ向けデジタルフィルタインタフェースの構成は以下の通りです。
• 8 x シリアルトランシーバ• 8 x Sincフィルタ部品と積分器• 8 x 出力データユニット• 8 x アナログウォッチドッグ• 8 x 短絡検出回路• 8 x 極値検出回路• 8 x パラレルデータ入力レジスタ4

シリアルトランシーバ

5共通
CLK_OUTDATA_IN• 1線式マンチェスタ符号化モード：システムコストが最小（入力チャネルごとにアイソレータ1個）• 外部ピンに出力クロックを生成

外部SD
モジュレータ• SPIモード（クロックおよびデータ線）：立ち下がり／立ち上がり
サンプリングエッジ、データレート測定、およびクロック有無の検出

CLK_INDATA_IN

アナログ信号シリアル
トランシーバ7

データ

短絡検出回路アナログ･ウォッチドッグ...

• どのようなSDモジュレータ出力プロトコルも以下をサ
アナログ信号ポート：

シリアル
トランシーバ0

クロック

パルススキッパ

CLK_IN

パルススキッパ• SDモジュレータから生の1ビット･シリアルストリームを受信し、フィルタステージにデータとクロックを提供する（最大8個の入力シリアルチャネル）

外部SD
モジュレータ

すべてのデルタシグマモジュレータに適合

M
U 32
X

クロック
データ

8シリアルトランシーバ
短絡検出回路アナログ･ウォッチドッグ• システムクロックまたはオーディオPLLクロック（分周器）から取得

シリアルトランシーバは、外部のデルタシグマモジュレータとの接続を行います。

SPIモードは最大20MHz（またはDFSDMクロックを4分周）で機能します。サンプリング
エッジの選択、データレートの測定、クロック有無の監視など、設定可能なオプションがあります。
1線式マンチェスタ符号化モード（データからクロックが回復される）は、最大10MHz（またはDFSDMクロックを6分周）で機能します。同期検出機能は、マンチェスタモードでも使用できます。
マンチェスタモードは、デルタシグマモジュレータをオプティカルアイソレーションする場
合には、入力チャネルごとに1つのアイソレータだけで済むため、システムコストを抑えることができます。
DFSDMクロックは、デルタシグマモジュレータを駆動するクロック出力信号を備えています。内部相互接続によりSPIクロック入力のソースとして使用して外部ピンを節約できます。
調整可能な分周係数を持つクロック出力は、システムクロックまたは微調整されたオーディオPLLクロックで駆動されます。
パルススキッパモジュールの機能は、指定した数のサンプルをフィルタに入る前のシリ
アルデータストリームから除去することです。パルススキッパは所定の入力チャネルに対して遅延ラインに似た動作を実装することを目的とし、ビームフォーミングアプリケー
ションで役に立ちます。

5

パラレル･トランシーバ

6

内部データの高速ハードウェア･フィルタリング• 内部ソースからフィルタステージへの16ビット･パラレル･データストリームを受信（最大8個のパラレルチャネル／レジスタ）

MEM2MEMモードでCPUまたはDMA

内部
A/Dコン
バータ

APB

16

16/32

• データの後処理• 内部A/Dコンバータからのデータ処理• 収集したデータからのデータ後処理• DMAまたはCPUは入力レジスタにデータを提供
可能

データ1

データ0

16
16

8個のパラレル入力レジスタ

M
U 32
X

DFSDM_CHDATINyR

パラレルトランシーバは、内部データソース、たとえばメモリ
バッファからパラレル入力を供給します。
パラレル入力は通常、A/Dコンバータからの内部データまたは通信用ペリフェラルの収集データに対する高速ハードウェ
アフィルタリングに使用されます。
データは、メモリ間転送モードのCPUまたはDMAコントロー
ラにより、DFSDMパラレル入力レジスタに書き込まれます。
内部アナログデジタルコンバータは、DFSDMパラレル入力
レジスタに直接データを送信できます。

6

Sincx/xデジタル･フィルタ

7

CPUフリーデジタル･フィルタリング• デジタル･フィルタステージでは、入力データストリームの
デジタル･フィルタリングを実行

FOSR=0でバイパス• SDモジュレータからの入力データストリームの平均値は最終的なA/Dコンバータ値となる（平均化）• Sincxフィルタは、所定数のサンプルに対して移動平均を実行（オーバーサンプリング比）

フィルタ次数（FORD）

I

I

D

C

C

31+1

• 設定オプション：

31+1
デシメーションレート（FOSR）• フィルタタイプ：Sinc1、Sinc2、Sinc3、Sinc4、Sinc5、およびFastSinc• オーバーサンプリング比（FOSR）：1-1024（バイパス可能）• 速度対分解能バランスの選択• フィルタデータの分解能は31ビット（最大）8個のフィルタユニット

デジタルフィルタは、デルタシグマモジュレータからの1ビットの入力データストリームを平均化して分解能を高めますが、データ出力は遅くなります。
デジタルフィルタは、1～5の次数を持つSinc Xタイプです。
FastSincタイプのフィルタも選択できます。
オーバーサンプリング比は、1回のフィルタリングで平均化できるサンプル数を表します。オーバーサンプリング比は 1～1024 の広い範囲から選択できます。
フィルタ次数とオーバーサンプリング比のすべての組み合
わせが使用できるわけではありません。フィルタの次数が高い場合、オーバーサンプリング比を下げて 31ビットのデータ幅（内部フィルタ分解能）からオーバーフローしないよ
うにする必要があるためです。

7

積分器ユニット

8

分解能のさらなる増加• 積分器ステージでは、追加の信号処理–デジタル･フィルタからのデータ平均化（N
サンプルの加算）を実行
IOSR=0でバイパス• 設定：• 1～256のサンプル（N）の加算• バイパス可能（IOSR=0の場合）• 最終結果は出力データユニットに送信

31+1

𝑦(𝑚) =𝑥(𝑛)31+1

8 つの積分器ユニット

積分器ユニットは、デジタルフィルタからのデータに対して単純な平均化処理を追加します。この処理は、デジタルフィルタからのデータを単純に合算するものです。
合計するサンプル数は1～256の範囲で設定できます。正しく設定するには、最終的なデータ長が内部積分器の分解能である
31ビット幅に収まるように注意する必要があります。デジタル
フィルタからのデータの幅も考慮する必要があります。

8

出力データユニット

9

CPU不要の外部オフセットの除去とデータ･フォーマッティング• 最終データに対して最終後処理機能を実行：

24ビットのオフ
セットデータ• オフセット補正機能：

24• オフセット補正／減算• プログラム可能な右ビットシフト
31+1• オフセットは、各入力チャネルに対してユーザがレジスタに保存（ユーザ較正手順による）• 24ビットの最終データレジスタ幅：

右ビットシフト24

オフセット補正

B
U
S
24+8

8つの出力データユニット
DFSDMx_JDATARDFSDMx_RDATAR
3116MSB出力データ（U2）• 内部の31ビット分解能を最終的なデータレジスタ
分解能に変換する設定可能な右ビットシフト

16
32

15

8 7
LSB出力データ（U2）0チャネル情報

DMA転送

出力データユニットは、最終データが最終データレジスタに書き込まれる前に最終データを調整します。
各チャネルのデータ結果から自動的に減算されるオフセット値
は、オフセットレジスタで定義できます。正しいオフセット値は、
較正手順を使用して決定されます。この較正手順はユーザのファームウェアでプログラムする必要があり、接続するデルタシ
グマモジュレータの種類とアプリケーションのニーズによって異なります。
最終出力データレジスタの最大分解能は24ビットですが、内部分解能は31ビットまで可能です。ただし、アプリケーションによっては、データ分解能が8、12、16、または24ビットであるなどの固有の制約があります。このため、データの右ビットシフトを実行して最終的なデータ結果に必要な幅を設定し、最終的なデー
タレジスタの24ビット幅をオーバーフローさせないオプションが用意されています。右ビットシフトは0～31ビットに設定できます。
最終的な分解能は、デジタルフィルタと積分器の設定、および
右ビットシフトのオプションによって異なります。
9アナログ･ウォッチドッグ

10

安全および緊急機能：
重要なモータ制御値の監視など• 最終データ結果の監視• または独立した入力チャネルのデータ監視

0

0

MUX

• ブレークまたは割込み信号の生成• ユーザはウォッチドッグ･データフィルタを使用可能

16/24

低閾値

8

8
16/24

<?<

16/24

高閾値

• 高閾値と低閾値ごとに別のフラグ• オーバーサンプリング範囲が1～32のSinc1、Sinc2、Sinc3フィルタ

24

16

いいえ

23

23

割込み

8個のアナログ･ウォッチドッグ

8sinc1..3フィルタ• 安全／緊急機能のサポート• 入力チャネル監視に設定可能なフィルタを用意

8個の最終
データレジスタ

8個のシリアル
入力チャネル1• 値が選択した範囲外にあるかどうかを監視

タイマへのブレーク信号

アナログウォッチドッグは、サンプリングされたアナログデータを監視して、選択した高閾値と低閾値の範囲内にあるかどうかを確認します。アナロ
グウォッチドッグ機能への入力は、最終的に変換されたデータの結果から取得することも、設定可能なフィルタを経由して入力シリアルチャネル
から直接取得することもできます。
データが許容範囲を超えると、割込みの起動とブレーク信号の生成を行います。割込みにより、ソフトウェアは次に取るべきアクションを決定します。生成されたブレーク信号は、モータを制御するタイマの停止など、
ハードウェアによる直接の安全機能を実行できます。
高閾値のレベル、低閾値のレベル、およびそれぞれのフラグが別々に設定され、閾値に達したことがわかります。
アナログウォッチドッグは2種類のデータを監視できます。最初の種類は、
標準A/Dコンバータと同様の標準出力データです。2番目の種類のデー
タは、設定可能な専用フィルタを経由してシリアルトランシーバから取得するものです。この2番目のオプションでは、必要な速度と分解能がフィ
ルタパラメータで設定されている場合に、より高速な信号監視を選択できます。それぞれのシリアルチャネルウォッチドッグフィルタは1～3に、またオーバーサンプリング比は1～32の範囲に設定可能です。これらのウォッチドッグフィルタからのデータは、ユーザファームウェアでも読み取ることができます。
10

短絡検出回路11

極めて高速な安全機能および緊急機能：
モータ制御での短絡監視など• 回路状態を非常に迅速に検出

シリアル入力トランシーバ• 入力信号の長時間の飽和は過電流（短絡）や過電圧の兆候がみえる• 信号が所定の時間、飽和しているとそれを検出• 設定可能な時間：SDストリーム（すべて1または0）内の、1～256の連
続する1または0• すべての入力チャネルを個別に監視

連続する1または0のカウンタ

リミット

はい

• 主変換が停止したときも同様• 割込み生成（ソフトウェア介入のため）または
ブレーク信号（例：遅延なしでPWM生成をシャットダウンするため）

<

タイマへの
ブレーク信号8短絡検出回路

データクロック経由）割込み短絡検出回路は、飽和状態について入力シリアルチャネルを監視します。
入力信号の飽和は入力信号が許容される測定の範囲外にあることを意味
し、信号のオーバーフローまたはアンダーフローが発生している状況です。
電流の測定イベントでは通常、過電流（または短絡）が検出され、また電圧の測定時に過電圧が検出されます。
入力信号の飽和の検出は、デルタシグマモジュレータからの入力シリアル
データストリームの監視、および比較的長時間にわたる1または0の連続セットの有無の監視に基づいています。この最大飽和時間は、サンプリン
グされた入力データの、0か1が連続している状態（1～256の範囲）を指定することで設定できます。
監視は主変換とは独立して実行されます。主変換は、別のチャネルに切り替えることも停止することもできます。すべての入力チャネルは、個別に飽和時間を設定して並行して監視できます。
飽和イベントが検出されると、割込みの起動やブレーク信号の生成が行われます。次に、アナログウォッチドッグと同様に、ソフトウェアが次のアクションを決定するか、ハードウェアブレーク信号がソフトウェアの遅延なし
で安全機能を実行します。たとえば、短絡を検出するとモータを制御するタイマを停止します。
11

極値検出回路12

ハードウェアによるピーク値の検出
例：オーディオデータの正規化• データ出力結果の最小値と最大値を監視

出力データ
24

• 出力データ値の最大値と最小値を、選択したチャネルのレジスタに保存最大値• ハードウェアにより極値を監視<
はい• 極値はソフトウェアによりリフレッシュ（最小／最大レジスタの読取りに基づく）

最小値

>
はい

8つの極値検出回路

極値検出回路は出力結果を監視し、極値を発生チャネル番号と共に最小値または最大値レジスタに保存します。
極値データの監視は、チャネルが異なる入力レベルと混合しないよう、選択したチャネルでのみ実行されます。
保存された極値は、値がレジスタに読み込まれるたびにリフレッシュされます。

12

レギュラー変換• チャネルは1個のみ選択（8個の入力チャネルから）

CLK_IN

デルタシグマモジュレータ
DATA_IN

チャネル
0

MUX

• 起動はソフトウェアからのみ（HWトリガなし）• 連続モード機能

32ビット

24ビット

フィルタ
0

出力
データ

チャネル0

SW スタート• インジェクト変換による迅速な割込みが可能13

CLK_IN

1

0

0

0

1

0

1

1

DATA_IN

最初の出力サンプル処理

2番目の出力サンプル処理

出力データレジスタの最初の出力
サンプル（24ビット）レディ

出力データレジスタの2番目の出力サンプル（24ビット）レディ

レギュラー変換は優先度が低く、インジェクト変換による中断が可能です。レギュラー変換がインジェクト変換によって中断された場合、レギュラー変換はインジェクト変換が終了すると再開され、この中断はレギュラー変換の遅延としてフラグが立ちます。
レギュラー変換はソフトウェアでのみ起動でき、スキャンモード
は使用できません。レギュラー変換は、チャネル切り替えのな
い連続モードで実行でき、フィルタのリフィルなしで高速モードで実行できます。
レギュラー変換は、温度や遅い信号を測定する場合など、タイミングが重要視されない測定に使用されます。
レギュラー変換は、通常、オーディオまたはエネルギー測定ア
プリケーションなど、1つのチャネルのみからの連続変換にも使用されます。

13MEMSマイクロフォン、
測定用STPMS2••

インジェクト変換

より多くの入力チャネルに設定可能（インジェクト変換グループに追加）

CLK_IN

デルタシグマモジュレータ

スキャンモード（トリガイベントによる）：
選択したすべてのチャネル（グループ全体）が変換

チャネル
0

DATA_IN•

シングルモード（トリガイベントによる）：1つのチャネルのみ変換され、次のチャネルが選択•

SW またはHWトリガにより起動：タイマ出力または外部ピン•

連続モードなし（タイマ･トリガモードによりエミュレート可能）

MUX
チャネル
1

14

32ビット

24ビット

フィルタ
0

出力
データ

トリガ
（すなわち、TIM1_TRGO）

チャネル0

チャネル1

チャネル0

CLK_IN

1

0

0

0

0

1

1

1

1

1

0

0

DATA_IN
CH0の最初の出力データ処理

CH1の最初の出力データ処理
CH0_out[0]CH0の2番目の出力データ処理
CH1_out[0]CH0_out[1]トリガ

インジェクト変換は高い優先度を持っています。レギュラ変換を即座に中断し、トリガの直後に開始します。入力チャネルはすべて、インジェクトチャ
ネルグループに割当てできます。変換動作には、スキャンモードとシング
ルモードの2つのモードがあります。
スキャンインジェクトモードでは、トリガが発生すると、インジェクトチャネル
グループのすべてのチャネルが変換されます（グループ内の最小チャネル
番号からスタートし順次最大チャネル番号へ移動）。
シングルインジェクトモードでは、インジェクトチャネルグループの1つのチャネルのみ変換され、次の変換を行うインジェクトグループのチャネルが選択されます。次のトリガでこの次のチャネル変換が開始し、グループからまた別の数字のより大きなチャネルが選択されます。
インジェクト変換は、ソフトウェアまたはハードウェア（タイマまたは外部ピンから）により起動します。
連続モードではインジェクト変換はできませんが、周期的なタイマトリガを使用すればエミュレートできます。
これらのモードにより、アプリケーションの要件に応じて適切な変換モードを選択できます。

14

MEMSマイクロフォンのサポート（PDM）

15

消費電力とCPU使用率の削減
DFSDMペリフェラル• PDM出力をサポートするマイクロフォン
チャネル7• シンプルな接続：

フィルタ2
フィルタ1

R

フィルタ0

L

DFSDM_DATIN3

チャネル3• チャネル分離は内部で処理（L/Rデータに異なるサンプリングエッジを適用）• フィルタの設定で出力データレートと分解能を設定。
。
。

ステレオマイクロフォン

DFSDM_DATIN2

チャネル2
MEMS
マイクロフォン左Lデータ

DFSDM_DATIN1

クロック

チャネル1

- 直接入力- 立ち下がりエッジでサンプリング（Rデータ）

チャネル0- 次のチャネルからリダイレクト- 立ち上がりエッジでサンプリング（Lデータ）

DFSDM_DATIN0

MEMS
マイクロフォン
右

Rデータ

クロック

DFSDM_CKOUT

内部クロック• 両方のL/Rマイクロフォンにワイヤが2本だけ（データとクロック信号が共通）

フィルタ3

MEMSマイクロフォンは、理論的にはデルタシグマモジュレータからのデ
ルタシグマビットストリームに似た形式のパルス密度変調（PDM）データ信号を発生します。
2つのマイクロフォンを共通のデータおよびクロック信号で並列に接続すれ
ば、MEMSマイクロフォンはステレオをサポートします。
立ち上がりクロックエッジは、左のオーディオデータをサンプリングします。
立ち下がりクロックエッジは、右のオーディオデータをサンプリングします。
DFSDMトランシーバへの実装には次の設定を行います。
チャネル0は、チャネル1からのリダイレクト入力を使用。
チャネル1は直接入力を使用。
チャネルのSPI設定で立ち上がりエッジまたは立ち下がりエッジを選択することで、チャネルデータ（左と右）が内部で分離されます。
MEMSマイクロフォンはスレーブであり、データのサンプリングと通信に外部クロックが必要なため、クロック信号はDFSDMクロック出力によって供給されます。

15

割込み
割込みイベント

16

説明

変換終了
（レギュラー／インジェクト）変換の終了でセット（レギュラー変換とインジェクト変換で別々のフラグ）

データオーバーラン（レギュラー／インジェクト）

変換済みインジェクトデータが、（CPUまたはDMAにより）出力データレジスタから読み取られず、新しい変換により上書きされた場合にセット（レギュラー変換とインジェクト変換で別々のフラグ）

アナログウォッチドッグ

変換済みデータ（出力データまたはアナログ･ウォッチドッグ･フィルタからのデータ）がアナログ
ウォッチドッグの上側／低閾値レジスタを超える／下回る場合にセットされます（高／低超過検出で別々のフラグ）

短絡検出回路安定したデータサンプルの数が選択した短絡回路閾値を超える場合にセット

チャネルクロック無入力シリアルチャネル･クロックピンにクロックがない場合にセット

CPUパフォーマンスを向上させるため、DFSDMイベントに関連する一連の割込みが実装されています。
この表は、すべてのDFSDM割込みソースを示したものです。
• 変換イベントの終了、レギュラー変換およびインジェクト
変換で異なるフラグ• データオーバーランイベント、レギュラー変換およびイン
ジェクト変換で異なるフラグ• アナログウォッチドッグイベント• 短絡検出回路イベント• チャネルクロック無しイベント

16

DMA
DMAリクエスト
変換終了（レギュラー／インジェクト）

17

説明
DMAリクエストは、変換が完了するとセット （レギュラーまたはインジェクト変換）• DMAリクエストを有効にして、変換したデータをメモリに転送するCPUの介入を減らすことが可能• DMAの「メモリ間」転送モードは、16ビットデータをパラレル入力データレジス
タに転送するためのパラレルデータ入力ソースとしても使用可能• メモリからメモリへのDMA転送は、パラレルデータ入力レジスタをターゲットアドレスとして使用する必要がある

CPU介入を低減するために、変換をDMA転送を使用してメモリに転送することができます。インジェクト変換とレギュラー変換のDMA転送は、個別に有効にできます。
DMAコントローラは、パラレルデータレジスタへの高速デー
タ転送方法としても使用できます。この場合、パラレルデータ
は、DMAメカニズムを使用してメモリバッファからパラレル
データレジスタに転送されます。したがって、DMAコントロー
ラは、ターゲットアドレスがパラレル入力データレジスタのア
ドレスであるメモリ間転送モードで設定する必要があります。

17

低電力モード
モード

18

説明

RUN

アクティブ

SLEEP

アクティブ
ペリフェラル割込みによって、デバイスはSLEEPモードを終了

STOP

停止
ペリフェラル･レジスタの内容は保持

STANDBY

パワーダウン状態
ペリフェラルは、STANBYモード終了後に再初期化する必要がある

DFSDMペリフェラルは、RUNモードとSLEEPモードでのみアクティブになります。STOPモードとSTANDBYモードでは、DFSDMを無効にする必要があります。

18

パフォーマンス

19

ハードウェアでの非常に高速な信号処理：消費電力削減
すべての既存のSDモジュレータをサポート• クロック速度• 最高DFSDMクロック：fCPU/4(最高100MHz)• チャネルへの最高入力シリアルクロック（入力データレート）• SPIモード：DFSDMクロックの4分周（最高20MHz）• マンチェスタモード：DFSDMクロックの6分周（最高10MHz）• クロック出力の最高出力周波数：DFSDMクロックの4分周（最高20MHz）• 出力データレート• フィルタと積分器のオーバーサンプリング比（FOSR、IOSR）に依存：• 出力データレート=入力データレート／（FOSR*IOSR）、
ここで ： FOSR=1～1024、IOSR=1～256

各入力データサンプルが次のデジタルフィルタ操作の原因となるため、DFSDMパフォーマンスは最高許容入力データレートに依存します。DFSDMでは、SPIモードで20MHz、マンチェスタ
モードで10MHzの最高入力データレートでの動作が可能になります。
パラレルデータ入力のパフォーマンスは同じのため、CPUまたはDMAコントローラを使用して、パラレルデータをフル20MHzの速度でDFSDMに送り込むことができます。
アプリケーションは、今では既存のすべてのデルタシグマモジュ
レータ速度をサポートするDFSDMハイスピード処理から恩恵を受けることができます。

19

アプリケーションの例：その1• ステレオMEMSマイクロフォン（PDM出力付き）の再生

DFSDMペリフェラル
フィルタ7

チャネル
7

ステレオマイクロフォン

LEFT

Lデータ
クロック

DFSDM_DATIN3チャネル
3

DFSDM_DATIN2

チャネル
2

DFSDM_DATIN1

チャネル
1

DFSDM_DATIN0

チャネル
0

RIGHT

Rデータ
クロック

。
。
。

。
。
。

DFSDM_CKOUT

フィルタ1

R

フィルタ0

L

-

直接入力
立ち下がりエッジでサンプリング（Rデータ）-

次のチャネルからリダイレクト立ち上がりエッジでサンプリング（Lデータ）

内部
クロック

• 2つのマイクロフォン（ステレオ）を2本のワイヤだけで接続–共通のクロックとデータ用のワイヤ、左と右チャネルに異なるサンプリングエッジを使用（DFSDM機能を使用して、特定の入力チャネルピンから別のチャネ
ルデータ入力にデータをリダイレクト）• レギュラ変換は、連続モードの2つのDFSDMチャネルに使用• 軽いCPU負荷：最初のDMAが出力オーディオデータ
をRAMに転送し、2番目のDMAがそれらのデータを
I2Sインタフェース（そこから外部オーディオコーデックとヘッドフォンに送信）に転送

20

STM32H7評価ボードを使用して簡単なアプリケーションの例を実行し、デルタシグマモジュレータインタフェースのデジタルフィ
ルタを体験することができます。
この例は、DFSDMペリフェラルに直接接続したMEMSマイクロフォンを示すものです。マイクロフォンからのデータは、正しいフィルタ設定でDFSDMにより処理され、通常の連続変換とDMAを使用してメモリバッファに収集されます。マイクからの録
音データは、DMAコントローラによりバッファからI2Sペリフェラ
ルに直ちに送られ、ヘッドフォンで再生されます。

20

アプリケーションの例：その2

21• PT100温度計• 外付けのSTPMS2デバイス（デュアルチャネル、2次デルタシグマモジュレータ）を使用して、2つの入力
チャネルを検出• 1つのチャネルはPT100センサの電圧を検知し、2番目のチャネルはPT100センサの電流を検知（シャントを使用）
チャネルデータ結果の比率から、PT100センサの抵抗がわかる• 1秒の周期的なタイマートリガを持つ2つのチャネルにインジェクトスキャン変換が使用される

この例は、2つのチャネルを監視する外付けのSTPMS2デルタ
シグマモジュレータを使用したPT100温度計です。1つのチャネ
ルは電圧を検知し、2番目のチャネルはPT100センサの電流を検知します。両方のチャネルは、スキャンモードでタイマがトリガするインジェクト変換によりサンプリングされます。次に、ソフト
ウェアは収集したデータからPT100の抵抗を計算し、最終的に温度を決定します。

21

アプリケーションの例：その3

22• STPMS2を使用した電力量計• 外付けのSTPMS2デバイス（デュアルSDモ
ジュレータ）を使用して、2つの入力チャネル
を検知：電圧（分圧器）と電流（電流トランス
またはシャント）。
• 電圧および電流のサンプルは、シリアルイ
ンタフェースによってDFSDMに送信（クロックおよびデータワイヤのみ）• DFSDMは、電圧と電流のサンプルを高い分解能で処理• STM32ファームウェアにより、FFT分析を使用して電力とエネルギーを計算

この例は、STPMS2デバイスとSTM32マイクロコントローラを使用した典型的な単相電力量計の設計を示しています。
STPMS2は、電力メーターアプリケーションのために設計したデュアルチャネルのデルタシグマモジュレータです。電圧と電流のチャネル入力があります。電流チャネルは、広範囲の測定電流をカバーするプログラム可能なゲインアンプを備えています。
サンプリングした1ビットのデータは、シリアルインタフェースによってホストデバイス（ここではDFSDMインタフェース）に送信されます。電圧と電流の両方の1ビットデータサンプルが同じデー
タワイヤで送信されますが、電圧はクロックの立ち上がりエッジ
で、電流はクロックの立ち下がりエッジでサンプリングされます。
クロックはDFSDMが供給し、最高で4MHzが可能です。
次に、DFSDMは、電圧および電流チャネルの1ビットデータスト
リームを処理して、より高い分解能とより遅いデータレートの出力データに処理します。最後に、ファームウェアでFFT分析を行い、電流と電圧のサンプルから電力とエネルギーを計算します。

22

アプリケーションの例：その4• 3相電力量計（シャントを使用、変成器は使用せず）• 電圧（U）を抵抗分周器により検知
3つの多重化された入力を持つ1つのDFSDM
フィルタを使用して、3相電圧をスキャン• 電流（I）を、ガルバニック絶縁のSDモジュレー
タによりシャント抵抗で検知
DFSDMチャネルへの電流のデータ転送に限りフェーズごとに1つまたは2つの分離線が必要になる（マンチェスタ符号化モードは1ラインしか必要ありません）• STM32ファームウェアにより電力とエネル
ギーを計算

L3

L2

L1

N

23

I
SDモジュレータ
SDモジュレータ
SDモジュレータ

ガルバニックガルバニックアアイソレータガルバニックア
イソレータ
イソレータ

DFSDM_FLT1
DFSDM_FLT2
DFSDM_FLT3

電源
SDモジュレータ
SDモジュレータU

STM32

SDモジュレータ
SDモジュレータ
SDモジュレータ

DFSDM_FLT0

この例は、電流検知にシャント抵抗を使用する3相電力量計の設計を示したものです。高価な変流器を使用する必要はありません。
電圧は、3つの抵抗分圧器と外部デルタシグマモジュレータにより検知します。
電流は3つのシャント抵抗で検知します。各シャント抵抗器の電圧は、1つのデルタシグマモジュレータが検知します。各デルタ
シグマモジュレータは高位相電圧で動作するため、DFSDMへのデータ転送にはガルバニック絶縁が使用されます。デルタシ
グマモジュレータがマンチェスタ符号化シリアルプロトコル
フォーマットを使用している（かつ内部クロックソースを備えている）場合、必要なアイソレータは相ごとに1つだけです。デルタシ
グマモジュレータがSPIシリアルフォーマットを使用している場合、フェーズごとに2つのアイソレータが必要になります。各デルタ
シグマモジュレータは、個別のDC電源電圧から給電されます。

23

アプリケーションの例：その5

24

DCバス

• 3相モータ制御

PWM• SDモジュレータにガルバニック絶縁使用：
データおよびクロックワイヤ（マンチェスタ符
号化データのみ）

PWM• DFSDMは同じビットストリームから3つの測定を並行して実施：

STM32
SD
SDモジュレー
モジュレータSDモジュレータタ• PWM周期に同期した高精度の低速測定（メインSincフィルタを使用）

ガルバニックガルバニック
アイソレータガルバニック
アイソレータアイソレータDFSDM_FLT1
DFSDM_FLT2
DFSDM_FLT3• ウォッチドッグ（中速）による連続過負荷監視• 超高速応答の連続短絡検出（PWMジェネ
レータを無効化）

M

モジュレー
SD電源
SDモジュレータタ

3相モータ

この例は、3相産業用（高電圧、大電流）モータ駆動に関連するもので、フローティングシャントとガルバニック絶縁が標準で使用されます。ここでは読取りチャネルが1つだけ示されていますが、実際のアプリケーションでは、電流用に2または3個、電圧用にも2または3個のチャネルが使用されます。
電流は通常3つのDFSDMチャネルで同時に測定しますが、電圧は同じ
DFSDMチャネルで順次測定できます。
同じビットストリームを3回測定します。
1回目：高精度の測定では、メインフィルタを比較的長時間使用します。測定はPWM周期と同期して行い、スイッチングノイズを回避して定期的なサンプルを取得します。
2回目：ウォッチドッグチャネルは、それ自身の（低域）フィルタを持つ同じビットストリームを使用して信号を連続監視し、過負荷の場合は中程度の反応時間で割込みを呼び出します。
3回目：短絡検出回路は、モジュレータの飽和（連続するゼロまたは1で、長さはプログラム可能）を極めて迅速に検出するために使用するもので、PWMジェネレータを自動的に無効にします（ブレーク信号を専用DFSDMを経由してタイマ相互接続へ送信）。

24

関連ペリフェラル

25• このペリフェラルに関連する以下のトレーニングを参照してください• RCC（DFSDMクロック制御、DFSDM有効／リセット）• 割込み（DFSDM割込みマッピング）• DMA（DFSDM出力データ転送、パラレルデータ入力）• GPIO（DFSDM入出力ピン、トリガ）• タイマ（DFSDMトリガ、ブレーク信号）• ペリフェラル相互接続マトリックス（DFSDM相互接続）

ここにリストアップしたペリフェラルは、DFSDMの動作に影響を与えます。詳細については、対応するトレーニングを参照してください。

25