• 検索結果がありません。

Cortex -M キャッシュコントローラを使って決定論的コード性能を達成する方法 TB3186 はじめに マイクロコントローラベース (MCU) の組み込みアプリケーションでは ソフトウェアは不揮発性メモリに保存して実行します この不揮発性メモリとは 通常はフラッシュメモリです フラッシュメモリは

N/A
N/A
Protected

Academic year: 2021

シェア "Cortex -M キャッシュコントローラを使って決定論的コード性能を達成する方法 TB3186 はじめに マイクロコントローラベース (MCU) の組み込みアプリケーションでは ソフトウェアは不揮発性メモリに保存して実行します この不揮発性メモリとは 通常はフラッシュメモリです フラッシュメモリは"

Copied!
16
0
0

読み込み中.... (全文を見る)

全文

(1)

TB3186

Cortex™-M キャッシュ コントローラを使って

決定論的コード性能を達成する方法

はじめに

マイクロコントローラ ベース(MCU)の組み込みアプリケーションでは、ソフトウェアは不揮発性メモリ に保存して実行します。この不揮発性メモリとは、通常はフラッシュメモリです。フラッシュメモリはコー ドを保存して実行する効率的なメディアですが、フラッシュから実行する時に決定論的コード性能を制限 する多数の因子があります。決定論的コード動作に影響を与える重要な因子の1 つがシステム バス マト リクスの複雑さです。フラッシュメモリの場合と同じ理由により、コードをSRAM から実行する時にも 決定論的コード性能の問題が見られます。 非決定論的コード性能は主にメモリからCPUへの伝播時間のばらつきによって生じます。メモリを CPU に接続するシステム バス マトリクスが伝播時間のばらつきの一要因です。非決定論的コード性能は、複 数のエンティティがシステムバスにアクセスするシステムでより顕著です。 リアルタイム アプリケーションでは、重要な短いコードを制限時間内に実行する事が必要な場合があり ます。そのようなコードをフラッシュメモリまたは SRAM から実行する事は推奨できません。システム バス調停によって決定論的タイミングを達成できない可能性がある、つまりキャッシュミス条件でコー ドをフラッシュメモリまたは SRAM からフェッチする必要があるからです。複数のバスエンティティ間 でシステムバスが調停されるため、システムバスにアクセスできるかどうかに応じてコードのアクセス時 間が変わる可能性があります。 重要なコードの決定論的コード性能を効果的に達成する方法は、コードを密結合メモリ(TCM)に配置して

実行し、キャッシュミス状態を避ける事です。Microchip 社の Cortex-M4 ベースの MCU が内蔵する

ARM®Cortex®-M キャッシュ コントローラ(CMCC)モジュールは、キャッシュメモリからの重要なコード

(2)

TB3186

目次

はじめに ...1 1. 概念 ...3 2. ソリューション ...4 3. 決定論的性能解析 ...10 4. 関連リソース ...12 Microchip 社のウェブサイト ...13 お客様向け変更通知サービス ...13 カスタマサポート ...13 Microchip 社のデバイスコード保護機能...13 法律上の注意点 ...14 商標 ...14 DNV による品質管理システム認証 ...15 各国の営業所とサービス ...16

(3)

TB3186

概 念

WAY 0 Line 0 Line 1 Line 2 . WAY 1 . . WAY 2 Line 61 Line 62 Line 63 WAY 3

1.

概念

下図に示すようにCortex-M4 ベースの MCU(例: SAME54)の CMCCは 4 KB の専用 4 way L1 セット アソシ

エティブ キャッシュを備えています。 1-1. 4 way L1セット アソシエティブ キャッシュメモリ CMCCでは重要なコードを WAY に読み込んでロックする事により、キャッシュの一部を決定論的性能の ためのTCM として使えます。WAY をロックすると、CMCCはその WAY をルーチンのキャッシュ トラン ザクションには使いません。重要なコードを読み込んだロック済みの WAY は常時キャッシュヒット状態 として機能します。 1024 b yt es

(4)

TB3186

ソ リューション

2.

ソリューション

以下のフローシーケンスに決定論的コード性能を実装するコードを示します。 図2-1. 決定論的コード性能を実装するフローシーケンス 以 下のサンプルコードに、決定論的コード性能を達成するための関数の実装と Cortex-M4 ベースの MCU(例: SAME54)での使い方を示します。 Disable Cache

Invalidate cache lines on the desired WAY

Disable Instruction Cache

Enable Data Cache

Enable Cache

Load the critical code to the desired

Lock the WAY loaded with the critical code

(5)

TB3186

ソ リューション

(6)

TB3186

ソ リューション

(7)

TB3186

ソ リューション

前述の実装における変数CMCC は以下の例に示すように定義します。この実装は Cortex-M4 ベースのデ

バイスSAME54P20A 用です。構造体の実装とマクロ(CMCC_MAINT1_WAY、CMCC_MAINT1_INDEX、

CMCC_CTRL_CEN、CMCC_SR_CSTS)の定義の詳細は Microchip 社の Atmel START (ASF4)ライブラリを 参照してください。 図2-4. CMCC構造体の宣言 実装 cmcc_loadnlock 関数の実装については以下のステップを参照してください。 1. キャッシュを有効にすると、CMCCはセット アソシエティブ キャッシュの 4 つの WAY を WAY0 からラウンドロビン方式で使います。これはキャッシュを有効にした直後に開始します。

2. cmcc_loadnlock 関数はキャッシュ WAY を順番に全てスキャンして目的の WAY を見つけます

(ラベル A のサンプルコード参照)。

3. 初回スキャンで目的の WAY が見つからない場合、cmcc_loadnlock 関数は処理中の WAY をパス

して次のWAY が目的の WAY であるか確認するために、配列からの値を WAY 全体に読み込みます

(ラベル B のサンプルコード参照)。

4. 目的の WAY が見つかるとcmcc_loadnlock 関数は重要なコードをフラッシュから dummy 変数

に読み出し、重要なコードが確実にキャッシュWAY に保存されるようにします(ラベル Cのサンプ ルコード参照)。 5. ラベル B と C において、cmcc_loadnlock 関数は必要な 4ワード(16バイト)から 1 ワード(4バイ ト)のみ読み込みます。AHB の WRAP4 機能は 1 ワードを読むだけで 16 バイトのライン全体を書き 込んでギャップを自動的に埋める機能があります。 6. cmcc_loadnlock 関数は目的のキャッシュ済み WAY だけをロックして、重要なコードをキャッ シュにトラップします。特定のWAY をロックすると、CMCC はロックした WAY を通常のラウン ドロビン キャッシュ トランザクションに使うのをやめます。WAY をロックして重要なコードを キャッシュにトラップする事は、重要なコードへの呼び出しが100%のキャッシュヒットを得る状 況をエミュレートします。

(8)

TB3186

ソ リューション

7. 前述したcmcc_loadnlock 関数の実装は重要なコードのサイズがキャッシュ WAY のサイズ (CMCC_WAYSIZE)以下、つまり 1024 バイト以下の場合に機能します。重要なコードのサイズが WAY のサイズよりも大きい場合、重要なコードを連続した 2 番目の WAY に格納する必要があり ます。より大きなサイズの重要なコードを格納するには、cmcc_loadnlock 関数の実装を拡張す る必要があります。 cmcc_loadnlock 関数の実装の拡張については以下のガイドラインを考慮する必要があります。 7.1. パラメータ size を評価して、重要なコードが 4 KB のキャッシュに収まるかどうかを識別し ます。収まる場合、必要なキャッシュWAY の数を識別する必要があります。 7.2. 必要な数の連続した WAY がコードの割り当てに使えるか識別する必要があります。 7.3. 連続した WAY を無効化する必要があります(ラベル 1 のサンプルコード参照)。 7.4. 連続した WAY に重要なコードを読み込む必要があります(ラベル C のサンプルコード参照)。 7.5. コードをキャッシュにトラップするために、連続した WAY をロックする必要があります(ラ ベル2 のサンプルコード参照)。 使い方 以下のコード例にcmcc_loadnlock 関数の使い方を示します。 2-5. cmcc_loadnlock関数の使い方 1. cmcc_loadnlock 関数は 3 つのパラメータを受け取ります。

1.1. 最初のパラメータway_bitfield はキャッシュ WAY の番号であり、4 つの WAY 値

(CMCC_WAY0、CMCC_WAY1、CMCC_WAY2、CMCC_WAY3)のどれかです。 1.2. 2 番目のパラメータ fは常にキャッシュから実行する必要がある重要なコード関数のアドレス です。 1.3. 3 番目のパラメータsize は重要なコード関数のサイズです。このサイズはキャッシュ WAYの サイズ(CMCC_WAYSIZE)以下である事が必要です。このサイズが WAY のサイズよりも大きい 場合、前述のステップ7 で示したように実装を拡張します。

(9)

TB3186

ソ リューション

2. 重要なコード関数(_critical_code_function)の正確なサイズはプロジェクトのリスティング ファイルから取得できます。以下のステップを使って重要なコード関数のサイズを特定します。 2.1. 前の例では。重要なコード関数をセクション属性_cc_function_section で宣言しました。 これは関数_critical_code_function を_cc_function_section という名前のコード セグメント内に配置するためのGNUリンカへの命令です。 2.2. dummy のサイズをcmcc_loadnlock 関数呼び出しに入れます。

2.3. [Clean and Build]をクリックして、プロジェクトをクリーンおよびビルドします。 2.4. プロジェクトのリスティング ファイル(.lss)を開き、リンカシンボル _cc_function_section を見つけます。リンカシンボルのある行はセクションのサイズを 示します。これが重要なコード関数のサイズです。 図2-6. _cc_function_section 属性の特定 2.5. 呼び出しcmcc_loadnlock 内にある重要なコード関数のサイズを.lss ファイルからのサ イズで置き換えます。 2.6. ビルドしてプログラムします。 3. cmcc_loadnlock 関数を連続して複数回呼び出す事により、複数の重要なコード関数をキャッ シュWAY に動的に保存できます。 Note:  1. 本書では、統合された 4 つの WAY L1 アソシエティブ キャッシュを決定論的コード性能の最適化 のために使う方法のみ説明しています。CMCC はデータ キャッシングも可能で、キャッシュの一

部をデータTCM として使う事もできます。詳細は Cortex-M4 ベース MCU (SAME54)のデータシー

トを参照してください。

2. 本書で説明した決定論的コード性能の実装はアクティブ キャッシュサイズとのトレードオフの関係 にあります。

(10)

TB3186

決 定論的性能解析

3.

決定論的性能解析

キャッシュが有効なシステムでは、コードの性能はキャッシュヒット状態またはキャッシュミス状態の頻 度で決まります。キャッシュヒット状態が増えるほど性能が向上します。例えば主要動作を繰り返し実行 する関数がアプリケーションに1 つだけあるようなシンプルなアプリケーションでは、キャッシュヒット の確率は高くなります。これに対し、複数のエンティティ (システム バスマスタ等)が不揮発性メモリにア クセスするような複雑なリアルタイム アプリケーションでは、非決定論的呼び出しシーケンスによって キャッシュミス状態の確率が高まり、コード性能は制限されます。また、システム バス マトリクスによる 遅延もあります。 以下に示すのは(上述のloadnlock 実装を使って)TCM からコードを実行した時のシンプルなアプリケー ションの性能解析であり、通常のキャッシュが有効なトランザクションと比較したものです。 • サイズが 1 KB の以下の関数はプロファイリングに使ったものとコードは同じです。 • 重要なコード関数[TCM]は常にキャッシュから実行されて(loadnlock の呼び出しによってキャッ シュWAY にロックされる)のに対し、他の関数はフラッシュから実行されて CMCC ベースのラウン ドロビン シーケンスでキャッシュされます。 • 前述の関数は同じシーケンスで繰り返し呼び出されます。

• 下図に Cortex-M4 ベースのプロセッサ(SAME54 MCU)において 120 MHz、15 NVM 待機ステート、

コードの最適化なしという条件で実行した前述の関数シーケンスの20 サンプル プロファイルを示し ます。グラフの縦軸はで示した時間(µs)です。 3-1. 決定論的コード性能解析 critical_code_function (); // [Referred as TCM] _function_1 (); // [Referred as C1] _function_2 (); // [Referred as C2] _function_3 (); // [Referred as C3] _function_4 (); // [Referred as C4] _function_5 (); // [Referred as C5] _function_6 (); // [Referred as C6]

(11)

TB3186

決 定論的性能解析

• まとめ: – TCM からのコード実行にかかる時間は決定論的であり、6.47 または 6.48 µs です。これは ルーチンのキャッシュ トランザクションを通じたコード実行にかかる非決定論的な時間と 対照的です。シングルパス(Pass 1 等)では通常のキャッシュ動作を通じたコード実行にか かる時間は6.86~7.26 µs です。 – 関数 C3 と C6 の実行時にキャッシュミス状態が発生している可能性があります。これらの 関数の実行時間に急激な増加が生じています(C3 では 7.19 µs、C6 では 7.26 µs)。 – 決定論的コード性能に加え、TCM からのコード実行にはキャッシュが有効なトランザク ションからのコード実行に比べ性能的な利点もあります。シンプルなアプリケーションの 場合、シングルパス(Pass 1 等)では TCM からのコード実行にかかる時間は 6.47 µs である のに対し、通常のキャッシュ動作を通じた実行にかかる時間は6.86~7.26 µs です。 前述のコード TCM 実装は重要なコードのための決定論的コード性能モデルを表しています。またキャッ シュが有効なシステムによるコード実装を上回る、性能的な利点も示しています。性能的優位性はアプリ ケーションの複雑さで変わります。アプリケーションが複雑なほど、TCM からのコード実行による性能的 な利点が明確になります。

(12)

TB3186

関 連リソース

4.

関連リソース

詳細は以下の文書を参照してください。 • SAM D5x/E5x Family Data Sheet:

http://ww1.microchip.com/downloads/en/DeviceDoc/60001507A.pdf

• SMART SAM E70 TCM Memory:

http://ww1.microchip.com/downloads/en/AppNotes/atmel-42555-smart-sam-e70-tcm-memory_application%20note_at14971.pdf

• How to Optimize Usage of SAM S70/E70/V7x Architecture:

http://ww1.microchip.com/downloads/en/appnotes/atmel-44047-cortex-m7-microcontroller-optimize-usage-sam-v71-v70-e70-s70-architecture_application-note.pdf

(13)

TB3186

Microchip 社のウェブサイト

Microchip 社は自社が運営するウェブサイト(www.microchip.com)を通してオンライン サポートを提供し ています。当ウェブサイトでは、お客様に役立つ情報やファイルを簡単に見つけ出せます。一般的なインター ネット ブラウザから以下の内容がご覧になれます。 • 製品サポート - データシートとエラッタ、アプリケーション ノートとサンプル プログラム、設計リ ソース、ユーザガイドとハードウェア サポート文書、最新のソフトウェアと過去のソフトウェア • 一般的技術サポート - よく寄せられる質問(FAQ)、技術サポートのご依頼、オンライン ディスカッ ション グループ、Microchip 社のコンサルタント プログラムおよびメンバーリスト • ご注文とお問い合わせ - 製品セレクタと注文ガイド、最新プレスリリース、セミナー/イベントの一覧、 お問い合わせ先(営業所/販売代理店)の一覧

お客様向け変更通知サービス

Microchip 社のお客様向け変更通知サービスは、お客様に Microchip 社製品の最新情報をお届けするサービ スです。ご興味のある製品ファミリまたは開発ツールに関する変更、更新、リビジョン、エラッタ情報を いち早くメールにてお知らせします。

Microchip 社ウェブサイト(http://www.microchip.com/)にアクセスし、[DESIGN SUPPORT]メニューの下の

[Product Change Notification]からご登録ください。

カスタマサポート

Microchip 社製品をお使いのお客様は、以下のチャンネルからサポートをご利用頂けます。 • 販売代理店または販売担当者 • 各地の営業所 • 技術サポート サポートは販売代理店までお問い合わせください。もしくは弊社までご連絡ください。本書の最後のペー ジに各国の営業所の一覧を記載しています。 技術サポートは以下のウェブページからもご利用になれます。http://www.microchip.com/support

Microchip 社のデバイスコード保護機能

Microchip 社製デバイスのコード保護機能について以下の点にご注意ください。 • Microchip 社製品は、該当する Microchip 社データシートに記載の仕様を満たしています。 • Microchip 社では、通常の条件ならびに仕様に従って使用した場合、Microchip 社製品のセキュリティ レベルは、現在市場に流通している同種製品の中でも最も高度であると考えています。 • しかし、コード保護機能を解除するための不正かつ違法な方法が存在する事もまた事実です。弊社の 理解では、こうした手法は全て、Microchip 社データシートにある動作仕様書以外の方法で Microchip 社製品を使用する事になります。このような行為は知的所有権の侵害に該当する可能性が 非常に高いと言えます。

(14)

TB3186

• Microchip 社を含む全ての半導体メーカーで、自社のコードのセキュリティを完全に保証できる企業 はありません。コード保護機能とは、Microchip 社が製品を「解読不能」として保証するものではあ りません。 コード保護機能は常に進歩しています。Microchip 社では、常に製品のコード保護機能の改善に取り組んで います。Microchip 社のコード保護機能の侵害は、デジタル ミレニアム著作権法に違反します。そのよう な行為によってソフトウェアまたはその他の著作物に不正なアクセスを受けた場合、デジタル ミレニアム 著作権法の定める所により損害賠償訴訟を起こす権利があります。

法律上の注意点

本書に記載されているデバイス アプリケーション等の情報は、ユーザの便宜のためにのみ提供されるもの であり、更新によって無効とされる事があります。お客様のアプリケーションが仕様を満たす事を保証す る責任は、お客様にあります。Microchip 社は、明示的、暗黙的、書面、口頭、法定のいずれであるかを問 わず、本書に記載されている情報に関して、状態、品質、性能、商品性、特定目的への適合性をはじめと する、いかなる類の表明も保証も行いません。 Microchip 社は、本書の情報およびその使用に起因する一切の責任を否認します。Microchip 社の明示的な 書面による承認なしに、生命維持装置あるいは生命安全用途にMicrochip 社の製品を使用する事は全て購 入者のリスクとし、また購入者はこれによって発生したあらゆる損害、クレーム、訴訟、費用に関して、 Microchip 社は擁護され、免責され、損害をうけない事に同意するものとします。暗黙的あるいは明示的を 問わず、Microchip 社が知的財産権を保有しているライセンスは一切譲渡されません。

商標

Microchip 社の名称とロゴ、Microchip ロゴ、AnyRate、AVR、AVRロゴ、AVR Freaks、BeaconThings、 BitCloud、CryptoMemory、CryptoRF、dsPIC、FlashFlex、flexPWR、Heldo、JukeBlox、KeeLoq、KeeLoq

ロゴ、Kleer、LANCheck、LINK MD、maXStylus、maXTouch、MediaLB、megaAVR、MOST、MOSTロ

ゴ、MPLAB、OptoLyzer、PIC、picoPower、PICSTART、PIC32 ロゴ、Prochip Designer、QTouch、RightTouch、 SAM-BA、SpyNIC、SST、SST ロゴ、SuperFlash、tinyAVR、UNI/O、XMEGA は米国およびその他の国に おけるMicrochip Technology Incorporated の登録商標です。

ClockWorks、The Embedded Control Solutions Company、EtherSynch、Hyper Speed Control、HyperLight Load、IntelliMOS、mTouch、Precision Edge、Quiet-Wire は米国における Microchip Technology Incorporated 社の登録商標です。

Adjacent Key Suppression、AKS、Analog-for-the-Digital Age、Any Capacitor、AnyIn、AnyOut、BodyCom、 chipKIT、chipKIT ロゴ、CodeGuard、CryptoAuthentication、CryptoCompanion、CryptoController、dsPICDEM、 dsPICDEM.net、Dynamic Average Matching、DAM、ECAN、EtherGREEN、In-Circuit Serial Programming、 ICSP、Inter-Chip Connectivity、JitterBlocker、KleerNet、KleerNet ロゴ、Mindi、MiWi、motorBench、MPASM、 MPF、MPLAB Certified ロゴ、MPLIB、MPLINK、MultiTRAK、NetDetach、Omniscient Code Generation、 PICDEM、PICDEM.net、PICkit、PICtail、PureSilicon、QMatrix、RightTouch ロゴ、REAL ICE、Ripple Blocker、 SAM-ICE、Serial Quad I/O、SMART-I.S.、SQI、SuperSwitcher、SuperSwitcher II、Total Endurance、TSHARC、 USBCheck、VariSense、ViewSpan、WiperLock、Wireless DNA、ZENA は、米国およびその他の国におけ るMicrochip Technology Incorporated の商標です。

SQTP は、米国における Microchip Technology Incorporated のサービスマークです。

Silicon Storage Technology は、米国以外の国における Microchip Technology Inc.の登録商標です。 GestIC は 、米国以外の国における Microchip Technology Inc.の 子会社である Microchip Technology Germany II GmbH & Co. KG の登録商標です。

(15)

TB3186

その他の商標は各社に帰属します。

© 2018, Microchip Technology Incorporated, Printed in the U.S.A., All Rights Reserved. ISBN: 978-1-5224-3038-4

DNV による品質管理システム認証

ISO/TS 16949

Microchip 社では、Chandlerおよび Tempe(アリゾナ州)、Gresham(オレゴン州)の本部、設計部およびウェ

ハー製造工場そしてカリフォルニア州とインドのデザイン センターが ISO/TS-16949:2009 認証を取得し

ています。Microchip 社の品質システムプロセスおよび手順は、PIC® MCUおよび dsPIC® DSC、KEELOQ®

コード ホッピング デバイス、シリアル EEPROM、マイクロペリフェラル、不揮発性メモリ、アナログ製

品に採用されています。さらに、開発システムの設計と製造に関するMicrochip 社の品質システムは ISO

(16)

各国の営業所とサービス

北 米 ア ジア/太平洋 ア ジア/太平洋 ヨ ーロッパ

本 社 ア ジア太平洋支社 中 国 - 厦門 オ ーストリア - ヴェルス

2355 West Chandler Blvd. Suites 3707-14, 37th Floor Tel: 86-592-2388138 Tel: 43-7242-2244-39

Chandler, AZ 85224-6199 Tower 6, The Gateway Fax: 86-592-2388130 Fax: 43-7242-2244-393

Tel: 480-792-7200 Harbour City, Kowloon 中 国 - 珠海 デ ンマーク - コペンハーゲン

Fax: 480-792-7277 香 港 Tel: 86-756-3210040 Tel: 45-4450-2828

技 術 サポート: Tel: 852-2943-5100 Fax: 86-756-3210049 Fax: 45-4485-2829

http://www.microchip.com/ Fax: 852-2401-3431 イ ンド - バンガロール フ ィンランド - エスポー

サ ポ ート オ ーストラリア - シドニー Tel: 91-80-3090-4444 Tel: 358-9-4520-820

URL: Tel: 61-2-9868-6733 Fax: 91-80-3090-4123 フ ランス - パリ

www.microchip.com Fax: 61-2-9868-6755 イ ンド - ニューデリー Tel: 33-1-69-53-63-20

ア トランタ 中 国 - 北京 Tel: 91-11-4160-8631 Fax: 33-1-69-30-90-79

Duluth, GA Tel: 86-10-8569-7000 Fax: 91-11-4160-8632 フ ランス - サンクルー

Tel: 678-957-9614 Fax: 86-10-8528-2104 イ ンド - プネ Tel: 33-1-30-60-70-00

Fax: 678-957-1455 中 国 - 成都 Tel: 91-20-3019-1500 ド イツ - ガーヒング

オ ースティン、TX Tel: 86-28-8665-5511 日 本 - 大阪 Tel: 49-8931-9700

Tel: 512-257-3370 Fax: 86-28-8665-7889 Tel: 81-6-6152-7160 ド イツ - ハーン

ボ ストン 中 国 - 重慶 Fax: 81-6-6152-9310 Tel: 49-2129-3766400

Westborough, MA Tel: 86-23-8980-9588 日 本 - 東京 ド イツ - ハイルブロン

Tel: 774-760-0087 Fax: 86-23-8980-9500 Tel: 81-3-6880-3770 Tel: 49-7131-67-3636

Fax: 774-760-0088 中 国 - 東莞 Fax: 81-3-6880-3771 ド イツ - カールスルーエ

シ カゴ Tel: 86-769-8702-9880 韓 国 - 大邱 Tel: 49-721-625370

Itasca, IL 中 国 - 広州 Tel: 82-53-744-4301 ド イツ - ミュンヘン

Tel: 630-285-0071 Tel: 86-20-8755-8029 Fax: 82-53-744-4302 Tel: 49-89-627-144-0

Fax: 630-285-0075 中 国 - 杭州 韓 国 - ソウル Fax: 49-89-627-144-44

ダ ラス Tel: 86-571-8792-8115 Tel: 82-2-554-7200 ド イツ - ローゼンハイム

Addison, TX Fax: 86-571-8792-8116 Fax: 82-2-558-5932 または Tel: 49-8031-354-560

Tel: 972-818-7423 中 国 - 香港 SAR 82-2-558-5934 イ スラエル - ラーナナ

Fax: 972-818-2924 Tel: 852-2943-5100 マ レーシア - クアラルンプール Tel: 972-9-744-7705

デ トロイト Fax: 852-2401-3431 Tel: 60-3-6201-9857 イ タリア - ミラノ

Nov i, MI 中 国 - 南京 Fax: 60-3-6201-9859 Tel: 39-0331-742611

Tel: 248-848-4000 Tel: 86-25-8473-2460 マ レーシア - ペナン Fax: 39-0331-466781

ヒ ューストン、TX Fax: 86-25-8473-2470 Tel: 60-4-227-8870 イ タリア - パドヴァ

Tel: 281-894-5983 中 国 - 青島 Fax: 60-4-227-4068 Tel: 39-049-7625286

イ ンディアナポリス Tel: 86-532-8502-7355 フ ィリピン - マニラ オ ランダ - ドリューネン

Noblesv ille, IN Fax: 86-532-8502-7205 Tel: 63-2-634-9065 Tel: 31-416-690399

Tel: 317-773-8323 中 国 - 上海 Fax: 63-2-634-9069 Fax: 31-416-690340

Fax: 317-773-5453 Tel: 86-21-3326-8000 シ ンガポール ノ ルウェー - トロンハイム

Tel: 318636-2380 Fax: 86-21-3326-8021 Tel: 65-6334-8870 Tel: 47-7289-7561

ロ サンゼルス 中 国 - 瀋陽 Fax: 65-6334-8850 ポ ーランド - ワルシャワ

Mission Viejo, CA Tel: 86-24-2334-2829 台 湾 - 新竹 Tel: 48-22-3325737

Tel: 949-462-9523 Fax: 86-24-2334-2393 Tel: 886-3-5778-366 ル ーマニア - ブカレスト

Fax: 949-462-9608 中 国 - 深圳 Fax: 886-3-5770-955 Tel: 40-21-407-87-50

Tel: 951-273-7800 Tel: 86-755-8864-2200 台 湾 - 高雄 ス ペイン - マドリッド

ロ ーリー、NC Fax: 86-755-82031860 Tel: 886-7-213-7830 Tel: 34-91-708-08-90

Tel: 919-844-7510 中 国 - 武漢 台 湾 – 台北 Fax: 34-91-708-08-91

ニ ューヨーク、NY Tel: 86-27-5980-5300 Tel: 886-2-2508-8600 ス ウェーデン - ヨーテボリ

Tel: 631-435-6000 Fax: 86-27-5980-5118 Fax: 886-2-2508-0102 Tel: 46-31-704-60-40

サ ンノゼ、CA 中 国 - 西安 タ イ - バンコク ス ウェーデン - ストックホルム

Tel: 408-735-9110 Tel: 86-29-8833-7252 Tel: 66-2-694-1351 Tel: 46-8-5090-4654

Tel: 408-436-4270 Fax: 86-29-8833-7256 Fax: 66-2-694-1350 イ ギリス - ウォーキンガム

カ ナダ - トロント Tel: 44-118-921-5800

Tel: 905-695-1980 Fax: 44-118-921-5820

図 2-2. cmcc_loadnlock関数で使うマクロと変数の実装
図 2-3. cmcc_loadnlock関数の実装

参照

関連したドキュメント

(2) カタログ類に記載の利用事例、アプリケーション事例はご参考用で

ヘテロ二量体型 DnaJ を精製するために、 DnaJ 発現ベクターを構築した。コシャペロン 活性を欠失させるアミノ酸置換(H33Q または

スライダは、Microchip アプリケーション ライブラリ で入手できる mTouch のフレームワークとライブラリ を使って実装できます。 また

実際, クラス C の多様体については, ここでは 詳細には述べないが, 代数 reduction をはじめ類似のいくつかの方法を 組み合わせてその構造を組織的に研究することができる

本装置は OS のブート方法として、Secure Boot をサポートしています。 Secure Boot とは、UEFI Boot

それゆえ、この条件下では光学的性質はもっぱら媒質の誘電率で決まる。ここではこのよ

Windows Hell は、指紋または顔認証を使って Windows 10 デバイスにアクセスできる、よ

Q-Flash Plus では、システムの電源が切れているとき(S5シャットダウン状態)に BIOS を更新する ことができます。最新の BIOS を USB