CORDICって何?:Q&Aで学ぶマイコン講座(60)(4/4 ページ)
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。60回目は、初級者の方からよく質問される「CORDICって何?」についてです。
動作モード
①ゼロオーバーヘッド・シングルショットモード(図6(a))
単一の演算を実行する最速の方法です。操作手順は次のようになります。
- 必要に応じて、CORDIC_CSRレジスタを適切な設定でプログラム
- CORDIC_WDATAレジスタで演算の引数をプログラム(演算のトリガー)
- CORDIC_RDATAレジスタから結果を読み取る
②ゼロオーバーヘッド・パイプラインモード(図6(b))
いくつかの連続した演算を実行する最速の方法です。操作手順は次のようになります。
- 適切な設定でCORDIC_CSRレジスタにプログラム
- CORDIC_WDATAレジスタの最初の演算の引数をプログラム(最初の演算のトリガー)
- 必要に応じて、次の演算のためにCORDIC_CSRレジスタ設定を更新
- CORDIC_WDATAレジスタの次の演算の引数をプログラム
- CORDIC_RDATAレジスタから結果を読み取る(次の演算のトリガー)
- ステップ3へ戻り、指定した回数だけくり返される
- シーケンスの最後に追加の読み取りを行い、最終の演算結果を取得
③ポーリングモード
RRDYフラグをポーリングし、結果を読み取る方法。ポーリングと読み取るまでの間に時間がかかり、オーバーヘッドが発生する。
- 必要に応じて、適切な設定でCORDIC_CSRレジスタをプログラム
- CORDIC_WDATAレジスタに引数をプログラム(演算のトリガー)
- CORDIC_CSRレジスタのRRDYフラグが立つまでポーリング
- CORDIC_RDATAレジスタから結果を読み取る(②のパイプライン処理は、ポーリングモードでも使用可能)
④割り込みモード
RRDYフラグをポーリングする代わりに、結果が得られるとCPUに割り込みが発生する。割り込みの処理はオーバーヘッドになるが、他のタスクに関してCORDICの優先順位を設定することができる。
- 適切な設定でCORDIC_CSRレジスタをプログラムし、IENビットをセット
- CORDIC_WDATAレジスタの引数をプログラム(演算のトリガー)
- 結果の準備が整うと、CORDIC割り込みが発生
- 割り込みハンドラで、CORDIC_RDATAレジスタから結果を読み取る(RRDYフラグがリセットされ、割り込み要求がクリア)
②のパイプライン処理は割り込みモードでも使用可能ですが、書き込みと読み取りの順序を維持するように注意が必要です。
⑤DMAモード
DMAモードは、同じ設定を使用した複数の演算をきわめて効率的に実行できます。ソフトウェアで実行するよりも高速化するだけでなく、他のタスクのためにCPUを解放できます。
DMAを使用して、CORDICに引数を書き込むことができ、そして新しい演算が開始されるたびに、DMA書き込みチャンネル要求が生成され、次の引数がメモリからフェッチされます。
同様に、DMAを使用して結果を読み取ることもできます。演算が完了する(RRDYフラグがアクティブになる)ごとにDMA 読み取りチャンネル要求が生成され、結果がメモリに転送されます。
DMAでCORDIC_CSRレジスタを変更できません。したがって、設定を変更する必要がある場合は、まずDMAを停止し、新しい設定をプログラムした後に再起動する必要があります。DMAモードは、常にパイプライン処理です。
DMA書き込み要求は、CORDIC_CSRレジスタでDMAWENビットを設定することによって有効になります。DMA読み取り要求は、CORDIC_CSRレジスタでDMARENビットを設定することによって有効になります。
(次の記事を読む)
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- データシートの読み方 〜 マイコンのデータシートを正しく理解しよう
「EDN Japan」に掲載した主要な記事を、読みやすいPDF形式の電子ブックレットに再編集した「エンジニア電子ブックレット」。今回は、マイコン製品のデータシートを正しく理解するために、実際のデータシートを細かく読み解きながら解説していく「マイコン講座 〜データシートの読み方〜」を紹介します。 - 半導体業界に巨大M&Aの波が再来 ―― 電子版2020年10月号
EE Times Japan×EDN Japan 統合電子版2020年10月号。今号のEE Exclusive(電子版限定先行公開記事)では、昨今の半導体業界のM&A動向をまとめた「半導体業界に巨大M&Aの波が再来」をお送りする。 - マイコン周辺部品の選び方――電源編
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「マイコン周辺部品の選び方――電源編」です。 - マイコンの不良解析レポートを正しく理解するために
「EDN Japan」に掲載した主要な記事を、読みやすいPDF形式の電子ブックレットに再編集した「エンジニア電子ブックレット」。今回は、マイコンの不良解析レポートを正しく理解するために、マイコンメーカーが行っている不良解析の内容を詳しく解説した「マイコン講座 〜不良解析編〜」を紹介します。 - 「RISC-V」の現在地 ―― 電子版2019年11月号
EE Times Japan×EDN Japan 統合電子版 2019年11月号を発行いたしました! 今号の電子版限定先行公開記事(EE Exclusive)は、RISC-V協会主催による「RISC-V Day Tokyo 2019」から探る「『RISC-V』の現在地」です。その他、半導体市場動向分析記事「ようやく回復期に入った半導体市場」などを収録しています。 - マイコンの汎用出力を使ってLCDを直接駆動する
液晶ディスプレイ本体の駆動には、専用のインタフェース回路や周辺回路を必要とする。そこで、本稿ではマイコンの汎用出力を使用してLCDを簡単に駆動する方法を紹介する。