Translated by: NXTY_Yoshimura
Original KBA: Key benefits of the TO-247PLUS 4pin package for 1200 V IGBT (KA-02354)
- 4ピンケルビンエミッタパッケージ構成によりドライバICへのフィードバックループが改善されターンオン損失を20%低減
- システム電力密度の向上 - システムの熱性能は維持したまま、1200V IGBTでIcを40Aから75Aまで増加
- TO-247PLUSはTO-247より熱抵抗Rth(jh)が20%低下し放熱能力が15%改善
version: **
1 Security monitor
Security monitor is the central component of OPTIGA™ Trust M that enforces, controls, and responds to security events.
Security events in OPTIGA™ Trust M are frequently triggered by the operations that access secret or private keys. This is to ensure that physical and logical attacks are slowed down from an attacker’s point of view. For example,
There are many known physical attacks like Side channel power analysis, where the attacker may probe into the power consumption and figure out few bytes of the secret key (if not all) when OPTIGA™ Trust M is running these jobs. Another type of physical attack is fault injection, where the attacker injects faults into the system via voltage glitching, clock glitching, and so on. OPTIGA™ Trust M is built with these attacks in mind from the hardware side, which makes OPTIGA™ Trust M resistant to these attacks. The security is enhanced further on the software side, by throttling the performance of OPTIGA™ Trust M in order to avoid exploitation via brute force.
The following operations or jobs performed by OPTIGA™ Trust M are considered as security events by the security monitor.
Decryption in both asymmetric and symmetric algorithms can be done only by using the private and secret key respectively. Therefore, a failure in decryption is a security event. Additionally, integrity check failure using a public key is also considered as a decryption failure event.
OPTIGA™ Trust M triggers a security event if a key is derived using a previously existing pre-shared secret key. The pre-shared secret key is stored in a persistent object and is used in encrypting the communication over the I2C channel between the host (like PSoC™ or Arduino) and OPTIGA™ Trust M.
This security event is triggered if a private key is used to generate the signature. The private key is a key stored in any persistent object of OPTIGA™ Trust M. Session keys are exempted, because they are short-lived (stored and used via volatile memory like the RAM) and are unique to a session. An attacker does not gain much by probing a session private key compared to probing a persistent private key, which may permanently compromise a secure system.
The same rules of private keys apply to secret keys as well. Its usage from a persistent key object triggers a security event and session keys are exempted.
This security event is triggered if OPTIGA™ Trust M detects that the system in which it is deployed is compromised. This may happen when it detects inconsistent information or redundant information in the system, which may bait the system into revealing its secret elements.
For example, fault injection methods like clock glitch, voltage glitch may result in skipping an instruction or unknown states within a device. This is considered as suspect system behaviour by OPTIGA™ Trust M. Other scenarios include package tampering and unexpected temperature variations.
The security monitor enforces a few rules and restrictions on what operations and how many operations in a given time (tmax) OPTIGA™ Trust M can perform. The following are the rules and restrictions:
If more than one protected operation is performed within the tmax period, a counter called “security event counter” (SEC) is incremented by 1 (SEC is incremented by 1 per protected operation and decremented by 1 after tmax).
For example, if a private key is used for signature generation, the SEC is incremented by 1. For suspect system behavior, the SEC is incremented directly to 255 (max of 1-byte).
SEC is a 1-byte counter in the security monitor, holding the count of security events. The SEC is stored persistently in non-volatile memory (NVM). The SEC is a count of security events; its core mechanism is quite simple.
For example, if OPTIGA™ Trust M performs 1 decryption (secret key use), 1 signature generation (private key use), 1 key derivation within tmax, then SEC = (1+1+1) = 3. After tmax elapses, SEC = (3-1) = 2
Because of the nature of NVMs, which generally have endurance cycles (number of programming cycles up to which the data stored is reliable), SECCREDIT mechanism is used by the security monitor to save the stress on NVM cells and enhance their durability. To understand the SECCREDIT mechanism, consider the following example:
Consider a scenario where the host microcontroller (like PSoC™ or Arduino) does not trigger a protected operation on OPTIGA™ Trust M that could cause a security event for 100 seconds and SEC is 0. Using the default tmax of 5 s, OPTIGA™ Trust M rewards the host with (100/5) = 20 SECCREDIT. As this is credit, it works in the opposite direction. If the host triggers OPTIGA™ Trust M for 20 protected operations within tmax of 5 s, then the SEC will not be incremented, instead SECCREDIT will get decremented by 20. So, at least 20 NVM write operations of the SEC are saved, because the security events were handled in a RAM variable named SECCREDIT, instead of the SEC, which is in the NVM.
To summarize:
This is another mechanism along with SECCREDIT to increase the durability of NVM cells. The SEC has two copies.
The delayed SEC decrement synchronization count is set to ‘1 ‘by default. This is also the minimum allowed value. If it is set to ‘0’, it is still considered to be ‘1’. This is because of the implementation shown in Figure 1.
“Delayed SEC decrement synchronization count” is the solution at the time of SEC decrement (due to tmax elapse). Instead of decrementing SECNVM in line with SECCURR, writing of the decremented value can be delayed to SECNVM by a configured number of tmax intervals. Effectively, if the delay sync decrement count is configured as ‘4’, the SEC is only decremented in RAM until (4*tmax) elapses, and only after (4*tmax) elapses, the real-time SECCURR in RAM is copied to SECNVM. In other words, we wrote to NVM only once, instead of four times, thereby saving three NVM write cycles. This will scale up over the lifetime of the OPTIGA™ Trust M device and significantly increase the NVM durability.
Figure 1 Security monitor flow diagram (Implementation details)
OPTIGA™ Trust M throttles its performance as a guard against planned attacks like side channel analysis involving power. The throttling of performance starts when the SEC reaches a threshold value (see Figure 1) of 128 (or >127). OPTIGA™ Trust M starts slowing down the operations by inducing a specific amount of delay. This is shown in Figure 1 at the bottom left “Induce Delay” block. The delay induced increases linearly over the SEC and reaches the maximum delay of tmax when the SEC reaches 255 (SEC max).
Figure 2 Throttling down profile
Consider the following example:
From Figure 2, if SEC > 127, consider it as 150, and consider tmax = 5 s. If the host microcontroller triggers a signature verification job at OPTIGA™ Trust M, it takes up the job only after a certain induced delay. As there are 128 values between 127-255, the delay to be (tmax/128) = (5/128) per SEC increase from 128 can be calculated. In this example, SEC is 150, so considering a linear throttling profile, the induced delay in this case is (5/128) * (150-128) = (5/128) * 20 = 0.78125s = 781.25 ms. If SEC reaches 255, the induced delay is 5 s.
The following screenshot is taken from the solution reference manual that provides hints on how to configure the security monitor.
Figure 3 Security monitor configuration
Show LessVersion: **
The Multi-Core Debug Solution (MCDS) Trace Viewer (MTV) tool that comes as part of the Device Access Server (DAS) package is used to analyze and debug real-time systems. This tool is used together with emulation devices, where the full-blown MCDS option is available, or with production devices where MCDSLight and MINIMCDS are available.
This tool is used for tracing:
Additionally, it provides options to configure triggers to start or stop the trace together with applying range filters to ensure that only information of the user’s interest is traced.
For more information on MTV, see AP32401.
Note: This KBA applies to the following series of AURIX™ MCUs:
Translated by: MS_19060803
Original KBA: AURIX™ MCU: Debugging ADC without hardware Trigger - KBA235479
ソフトウェアによる変換を使用できます。たとえば、適切なハードウェアトリガーなしでADC構成を検証します。これは、デバッグ中にADC変換の問題の根本的な原因を見つけるのに役立ちます。スキャンおよびバックグラウンドスキャン用のAURIX™TC2xxの場合、各要求ソースには、ADC要求ソースをロードできるLDEV(GxASMR.LDEV=1およびBRSMR.LDEV=1)ビットがあります。
キューの場合、このタイプの要求ソースをロードするために使用されるTREVフィールド(GxQMRy.TREV = 1)があります。詳細については、ユーザーズマニュアルの「汎用アナログ-デジタルコンバータ(VADC)」セクションを参照してください。
注:このKBAは、次の一連のAURIX™MCUに適用されます。
・AURIX™TC2xxシリーズ
Community Translation: AURIX™ MCU: スタンバイモード中にピンウェイクアップを認識するまでの最小時間はどれくらいですか? – KBA235632
Version: **
The minimum time to recognize wakeup at ESRx/PINx (edge trigger) in standby mode is three clock cycles of the 100-kHz clock (with digital filter enabled). Approximately a minimum of 30 µs is needed to wakeup a device from standby mode.
For more details, see the “System Control Units” section of the User’s manual.
Note: This KBA applies to the following series of AURIX™ MCUs:
Version: **
Accessing the Special Function Register (SFR) is not difficult, as it is memory-mapped. There is no difference from the programming point of view to access an SFR or a memory-mapped variable. These are laid out to contain multiple bitfields, where each have a different functionality to control or to report the status. This article focusses about the recommended method of write access to multiple bitfields of an SFR. The following conditions apply:
Recommendation:
<local SFR variable>.B.<bit-field>= <value>
To illustrate the recommendation, let’s take an example from AURIX™ TC3xx.
Configure the marked bitfields of the SCU_CCUCON0 register to be written as shown in Figure 1:
Figure 1 Marked bitfields
Following is the code snippet to show the recommendations.
#include "IfxScu_reg.h"
void MyExample_accessRegMultibit(void)
{
Ifx_SCU_CCUCON0 l_ScuCcuCon0;
l_ScuCcuCon0= MODULE_SCU.CCUCON0; /* Read the register content */
/* Now write to individual register bit-fields as required */
l_ScuCcuCon0.B.FSIDIV= 1; /* fFSI = fSRI */
l_ScuCcuCon0.B.SPBDIV= 2; /* fSPB = fSource0 / 2 */
l_ScuCcuCon0.B.LPDIV= 1; /* fSPB = fSource0 / 30 */
l_ScuCcuCon0.B.STMDIV= 1; /* fFSI = fSource0 */
l_ScuCcuCon0.B.UP= 1; /* Update CCUCON0 and CCUCON5 */
MODULE_SCU.CCUCON0.U = l_ScuCcuCon0.U;
}
The disassembly of generated code is as shown below.
Starting disassembly of section 82 (.text.Test.MyExample_accessRegMultibit):
MyExampl: movh.a a15,#0xf003
8000172e: lea a15,[a15]0x6030
80001732: ld.w d15,[a15]
80001734: mov d0,#0x1
80001736: insert d15,d15,d0,#0x18,#0x2
8000173a: mov d0,#0x2
8000173c: insert d15,d15,d0,#0x10,#0x4
80001740: mov d0,#0x1
80001742: insert d15,d15,d0,#0xc,#0x3
80001746: mov d0,#0x1
80001748: insert d15,d15,d0,#0x0,#0x4
8000174c: mov d0,#0x1
8000174e: insert d15,d15,d0,#0x1e,#0x1
80001752: movh.a a15,#0xf003
80001756: st.w [a15]0x6030,d15
8000175a: ret
Note that@80001732, the SFR is read from its physical location and @80001756, the SFR is written to its physical location. Individual bitfields are updated locally, improving the runtime behavior and data consistency.
For more details, see the "Special Function Register (SFR)” section in the TriCore™ TC1.6.2 core architecture manual (volume 1).
Note: This KBA applies to the following series of AURIX™ MCUs:
Version: **
One-time programmable (OTP) protection is reconfigurable when the confirmation code is set to 0x43211234, and User Configuration Block (UCB) is in unlocked state. Set the confirmation code to 0x57B5327F to make it permanent.
For more details, please see the “Program Memory Unit (PMU)” (related to AURIX™ TC2xx devices), "Non Volatile Memory (NVM) Subsystem" (related to AURIX™ TC3xx devices) sections of the User’s manual.
Note: This KBA applies to the following series of AURIX™ MCUs:
Translated by: NXTY_Kamigaki
Original KBA: How does Infineon ensure the reliability of the PressFIT modules? (KA-02323)
バージョン : **
パワーモジュールにおけるPressFIT技術のアプリケーションとその信頼性に関するいくつかのテストが、
よく知られているIEC規格(IEC 60352-5など)に従って、より高度な条件で実施されています。
どの試験でも、測定可能ないかなる接触劣化は生じませんでした。
接続の品質を示す主要な指標であるコンタクト抵抗は、数回の負荷の間および負荷の後でも非常に安定しています。
Translated by: YaNi_3193241
Original KBA: AURIX™ MCU: Differences between VADC and DSADC - KBA234494
バージョン : **
VADC(Versatile Analog-to-Digital Converter)は、MCUVADCチャネルピンを使用してアナログ信号をデジタル信号に変換する多機能ハードウェアモジュールです。 ユーザーマニュアルの“Versatile Analog-to-Digital Converter (VADC)”(AURIX™TC2xxデバイスに関連)および“Enhanced Versatile Analog-to-Digital Converter (EVADC)” (AURIX™TC3xxデバイスに関連)のセクションを参照してください。
DSADC(Delta-Sigma Analog-to-Digital Converter):これは、レゾルバ信号の正弦および余弦情報を入力角度および速度のデジタル表現に変換するために特別に設計されています。 DSADCには、レゾルバ信号のシミュレーションに使用できる選択可能な出力信号(正弦、三角形、長方形)を生成するオンチップキャリアジェネレータが組み込まれています。 または、角度の誤差を補正するために、各DSADC入力信号のキャリア信号への同期を構成することもできます。 ユーザーマニュアルの “Delta-Sigma Analog-to-Digital Converter (DSADC)"(AURIX TC2xxデバイスに関連)および “Enhanced Delta-Sigma Analog-to-Digital Converter (EDSADC)”(AURIX™TC3xxデバイスに関連)のセクションを参照してください。
注:このKBAは、次のAURIX™MCUシリーズに適用されます
・AURIX™ TC2xx シリーズ
・AURIX™ TC3xx シリーズ
Translated by: YaNi_3193241
Original KBA: AURIX™ MCU: Pin status during standby mode - KBA234314
バージョン : **
次の表を参照してください:
Pins | TC29x/TC27x | TC26x | TC23x/22x/21x |
GPIOs | PMSWCR0.TRISTREQによるプルアップまたはトライステート | PMSWCR0.TRISTREQによるプルアップまたはトライステート | トライステート(プルアップ付きのP14.1、P14.3、P14.6、P21.7を除く) |
ESR0 | PMSWCR0.ESR0TRISTによる弱いプルアップ付きのオープンドレインまたはトライステート | PMSWCR0.ESR0TRISTによる弱いプルアップ付きのオープンドレインまたはトライステート | PMSWCR0.ESR0TRISTによる弱いプルアップ付きのオープンドレインまたはトライステート |
ESR1 | プルアップ | プルアップ | プルアップ |
Pin A/B | PMSWCR0.TRISTREQによるプルアップまたはトライステート | PMSWCR0.TRISTREQによるプルアップまたはトライステート | トライステート |
PORST Output | 弱いプルダウン | 弱いプルダウン | 弱いプルダウン |
レジスタの詳細については、ユーザーズマニュアルの“Standby mode”セクションを参照してください。
注:このKBAは、次のAURIX™MCUシリーズに適用されます:
・AURIX™ TC2xx シリーズ
Show LessTranslated by: KeTa_1341526
Original KBA: AURIX™ MCU: Check support for CAN-FD - KBA234493
バージョン : **
デバイスが ISO11898-1:2015(ISO CAN-FD) フレーム形式をサポートしているかどうかを確認するには、部品番号スキームを確認してください。
AURIX™ TC2xxデバイス
CAN FDをサポートするAURIX™ TC2xxパーツには、特殊なタイプのサフィックス「N」が付いています。
たとえば、SAK-TC297T-96F300N はISO CAN-FDノードをサポートしますが、SAK-TC297T-96F300S はサポートしません。
AURIX™TC3xxデバイス:
CANモジュールを実装するすべてのデバイスはISOCAN-FDノードをサポートします。
注: このKBAは、次のAURIX™MCUに適用されます。
・AURIX™TC2xxシリーズ
・AURIX™TC3xxシリーズ
Translated by: MaMi_1205306
Original KBA: AURIX™ MCU: About MemTool – KBA234424
バージョン : **
インフィニオン® MemToolは、オンチップフラッシュプログラミングのための無料のPC / Windowsベースのソフトウェアです。このソフトウェアは、すべてのInfineon® MCUデバイスをサポートしています。
オンチップフラッシュデバイスの機能に応じて、MemToolを使用し、選択可能なフラッシュセクションの消去、及びプログラム、検証、保護、またはプログラムおよびデータフラッシュ領域全体でこれらの機能を実行できます。
MemToolは、Infineon® MCU評価ボードおよびアプリケーションキットの全範囲に対応するすぐに使用できる構成ファイルを提供し、DASおよびUARTを介したPC / Windows USBからターゲットへの接続を可能にします。ターゲットシステムへのDAPおよびJTAG接続は、Infineon miniWigglerと一緒に実行できます。
最新バージョンのMemtoolをダウンロード後にインストールし、新しいInfineonマイクロコントローラーデリバティブを確実にサポートします。
最新のMemToolバージョンとリリースノートについては、次のリンク(MemTool V4)を参照してください。
注:このKBAは、次の一連のAURIX™ MCUに適用されます
Translated by: MaMi_1205306
Original KBA: AURIX™ MCU: Synchronize operations between CPU cores - KBA234427
バージョン : **
TriCore™およびAURIX™内部バスは、アトミック(読み取り-変更-書き込み)命令およびトランザクションをサポートします。
アトミック命令は通常、セマフォやロック/ミューテックスなどのマルチコアプリミティブを実装するために使用されます。
割り込みルーターには、一度に複数のサービスリクエスト(割り込み)をトリガーできるサービスリクエストブロードキャスト機能もあります。
ただし、CPU割り込みの優先順位と割り込みルーターのアビトレーションにより、SRB割り込みはまったく同時にトリガーされません。
詳細については、ユーザーズマニュアルの「アトミック転送」セクションを参照してください。
注:このKBAは、次の一連のAURIX™ MCUに適用されます
Translated by: keni_4440091
Original KBA: AURIX™ MCU: What is the state of Port Pins during and after pin activation? - KBA234443
バージョン : **
TC26x、TC27xおよびTC29xでは、2つのオプション(プルアップまたはトライステート)が利用可能で、HWCFG6ピン(P14.4)の選択に依存します。
ポートピンP33.8およびP40.xは、ピン起動時および起動後はトライステートモードになります。
TC21x、TC22x、およびTC23xでは、全てのポートピンは、ピンが起動中および起動後はトライステートになります。HWCFG6を選択する事はできません。
いくつかの専用ピンのリセット動作に関する詳細は、データシートの「ピンのプルアップ/プルダウンリセット動作」の章を参照してください。
注: このKBAは、AURIX™ MCUの以下のシリーズに適用されます。
Translated by: keni_4440091
Original KBA: AURIX™ MCU: What is program cached & non-cached access? – KBA234425
バージョン : **
一般的に、AURIX™ MCUのflashには2つのタイプのアクセスが可能です:
キャッシュアクセスを使用すると、パフォーマンスを改善し、キャッシュ可能なセグメントを使用するメモリの平均アクセス時間を大きく短縮します。
デフォルトでは、プログラムキャッシュは、CPUでONになっていません。しかし、PCBYPを正しく構成し、メモリのキャッシュエリアにコードをリンクする事で有効にした場合(例えば内部flashの0xA0000000の代わりに0x80000000)、プログラムキャッシュは有効になります。
レジスタの詳細に関しては、ユーザーズマニュアルの「メモリーマップ(MEMMP)」の章を参照してください。
注: このKBAは、AURIX™ MCUの以下のシリーズに適用されます。
Translated by: MaMi_1205306
Original KBA: How to decrease the CPU load of an AURIX™ TriCore™ CPU? – KBA234357
バージョン: **
質問:AURIX™ TriCore™ CPUのCPU負荷を減らす方法は?
回答:
CPUの負荷を軽減するには、次の方法を適用できます。
1. 負荷の大部分を消費する機能とタスクの識別:
ツールを使用して、各タスクの期間とタスクの再パーティション化を経時的に測定できます。インフィニオンのWebサイトで、この種のトレースおよびリアルタイム監視ツールを提案できるパートナーのリストを見つけることができます。
さらに、各コアでいくつかのパフォーマンスカウンターを使用できます。 これらは、CPUのパフォーマンスを測定するために使用できます:CCNT(CPUクロックカウントレジスタ)、ICNT(命令カウントレジスタ)、およびMxCNT(マルチカウントレジスタx、x = 1,2,3)。
2. キャッシュのアクティブ化とソフトウェアでのキャッシュ可能なアドレスの使用:
各CPUには、データキャッシュと命令キャッシュの2種類のキャッシュがあります。 これらを個別にアクティブ化して、フラッシュリソースへの平均アクセス時間を短縮できます。
3. CPUyのローカルRAMに重要なリソースをマップします(y = 0,1,2)。
CPUxは、ローカルRAMにアクセスするために0の待機状態を必要とします。
ほとんどの時間アクセスするCPUのDSPR(データスクラッチパッドRAM)の変数をマップします。
この関数を呼び出すCPUxのローカルPSPR(プログラムスクラッチパッドRAM)の重要な関数のマップコード。
4. コンパイラオプションの使用:
関数とコードサイズの実行速度を上げるために、各コンパイラでいくつかのオプションを使用できます。
5. 効率的なアドレス指定:
特定のアドレス指定タイプを使用すると、実行時間を短縮できます。顧客は、リソース(レジスタ、メモリなど)にアクセスするために必要な命令が少なくなります。
1. ショートアドレッシング(グローバルベースレジスタ(A0、A1、A8、A9)を使用したベース+ロングオフセットアドレッシングは、64 KBのアドレス範囲で効率的なデータアクセスを提供します)。
2. ニアアドレッシング(お客様はニアセグメントを使用して変数と定数を見つけることができます(各TriCore™ 256MBメモリセグメントの最初の16KBにあります)。
3. フラッシュにアクセスするための待機状態の構成を確認します。(ユーザーマニュアルで利用可能な計算式)。
4. クロックが正しく構成されているかを確認します。(CPU、SRI(共有リソース相互接続)、SPB(システムペリフェラルバス)など)
5. 潜在的な最適化の追加:
エミュレーションライブラリの代わりに、単精度浮動小数点ユニット(コンパイラオプション)を使用できます。
--no-doubleオプションを設定することにより、コンパイラはdouble型の変数をfloatとして扱います。
9. 組み込み関数:
いくつかの組み込み関数は、Cで同等性を持たない特定のアセンブリ命令を使用するために提案されます。
10. 重要な機能/タスクは、アセンブラによる指示を最適化:
この場合、TriCore™スーパースカラーパイプラインの使用を最適化します(命令IP、LS、およびLPのシーケンスで遅延時間を最適化します)。
インラインアセンブラはCコードで直接使用できます(C変数をオペランドとして渡すことができます)。
詳細については、アプリケーションノートAP32168を参照してください。
注:このKBAは、次の一連のAURIX™ MCUに適用されます。
Translated by: keni_4440091
Original KBA: https://community.infineon.com/t5/Knowledge-Base-Articles/AURIX-MCU-Inject-faults-in-PFLASH-KBA234444/ta-p/329326
Version: **
質問: AURIX™ TC2xx MCUのPFLASHにどうやってフォルトを注入しますか?
回答: PFLASH(Program Flash Memory)にフォルトを注入するには、以下の手順に従ってください:
詳細は、ユーザーマニュアルの「プリグラムメモリーユニット(PMU)」の章を参照してください。
注: このKBAはAURIX™ MCUの以下のシリーズに適用されます:
Version: **
The Device Access Server is an abstraction of the physical connection and is used to enable the connection to AURIX™ devices using different interfaces like JTAG or DAP. DAS is used with all the AURIX™ evaluation boards such as lite kit, application kit, or triboard.
The DAS installation provides several tools like:
For more details on the DAS tool interface, see the DAS webpage.
Note: This KBA applies to the following series of AURIX™ MCUs:
Version: **
The time between the start of the two consecutive advertising events (T_adv_event) is specified as follows:
T_adv_event = advInterval + advDelay
advDelay is a pseudo random value with a range 0 ms to 10 ms generated by the Link Layer for each advertising event. This advDelay can be removed using the CYREG_BLE_BLELL_ADV_CONFIG register as follows.
For PSoC™ 4 CY8C4x47xx-BLxxxx MCU with AIROC™ Bluetooth® LE:
In PSoC™ 4 Bluetooth® LE devices, we can disable advDelay in the CYREG_BLE_BLELL_ADV_CONFIG register (see the following sample code segment).
#define ADV_RAND_DISABLE_MASK 0x100
uint32_t advRand;
advRand = CY_GET_XTND_REG32(CYREG_BLE_BLELL_ADV_CONFIG);
advRand |= ADV_RAND_DISABLE_MASK;
CY_SET_XTND_REG32(CYREG_BLE_BLELL_ADV_CONFIG, advRand);
For PSoC™ 6 CY8C63x7 MCU with AIROC™ Bluetooth® LE:
In PSoC™ 6 Bluetooth® LE devices, we can disable advDelay in the CYREG_BLE_BLELL_ADV_CONFIG register (see the following sample code segment).
#define ADV_RAND_DISABLE_MASK 0x100
uint32_t advRand;
advRand = CY_GET_REG32(CYREG_BLE_BLELL_ADV_CONFIG);
advRand |= ADV_RAND_DISABLE_MASK;
CY_SET_REG32(CYREG_BLE_BLELL_ADV_CONFIG, advRand);
Note: According to the Bluetooth® LE spec, adv random delay (advDelay) is used to avoid interference. This randomness reduces the possibility of collisions between advertisements of different devices. Disabling adv random delay (advDelay) is not recommended for use in production builds. This can be used for internal testing purpose only, for example, measuring the current consumption for fixed advertisement intervals.
Version: **
Yes, you can write the data into PFlash even if the address is written with 0x00, but the write operation generates a correctable or an uncorrectable ECC error at the address page. Ensure to erase the sector before writing any data to avoid incorrect ECC values and errors.
For more details, see the following sections in the User’s manual:
Note: This KBA applies to the following series of AURIX™ MCUs: