Multi Source Translation Content

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Multi Source Translation Content

Discussions

Sort by:
Re: S32G274A LLCE CAN 現在、自社開発のボードはマルチコアモードで動作しています。1つのA53コアは他のデバイスとのネットワーク通信タスクに使用され、他の複数のA53コアはバス通信ドライバを実行します。各バスタイプはそれぞれ別のA53コアを使用します。問題が発生しました。現在のLLCE CANリカバリ操作は、LLCE CANモードを停止してから再開するように構成されています。実際のほとんどのシナリオでは通信は復旧できますが、バスリカバリが頻繁に実行される場合があり、他のA53コアの正常な動作に影響を与えます(ネットワーク通信タスクが中断されます)。質問は、LLCE CANバスリカバリにはどのような方法があるか、また、LLCE CANを別のコアで実行しても他のコアに影響を与えるのはなぜか、ということです。バージョン情報は、S32G_LLCE_1_0_9、SW32G_RTD_4.4_4.0.2_P04_D2312です。 Re: S32G274A LLCE CAN こんにちは、 @JACK_Q こんにちは ソフトウェアおよびハードウェアのテスト環境について、詳細な説明をいただけますでしょうか? 1. あなたのシステムでは、MコアとAコアは同時に使用されていますか?M7コアはどのようなタスクを実行しますか?どのソフトウェアパッケージに依存していますか? 2. あなたの説明によると、A53側の各コアはそれぞれ独自のタスクを実行しているようですが、どのようなソフトウェアが動作していますか?Linux BSPでしょうか? BR チェイン
View full article
Difference between S32K1_S32M24X and S32K1 RTD packages? I am developing for the S32K116. I noticed while going through the S32DS Extensions an dUpdates that I have two S32K1 packages installed: "S32K1_S32M24X Real-Time Drivers AUTOSAR R21-11 Version 3.0.0 QLP06" and "S32K1 Real-Time Drivers AUTOSAR R21-11 Version 3.0.0 QLP06" What is the difference between the two? If they do the same for my case, which one should I keep/uninstall? I tried removing one of them (the S32K1 one) but then my projects couldn't load their .mex files anymore. Re: Difference between S32K1_S32M24X and S32K1 RTD packages? Hi @daniel_meier  Although the packages may appear similar, they have dependencies between themselves and with S32DS, and are not intended to be treated as standalone components that can be used independently of one another. Therefore, we recommend reinstalling the package and keeping both packages installed to ensure proper project functionality. BR, VaneB
View full article
Enable Secure Boot in Falcon Mode (6.12.49 - Kernel Version) || iMX8MP_EVK Hi Team, Could you please help me enable Secure Boot in Falcon Mode? I have successfully achieved Falcon Mode with the help of the meta-imx-fastboot GitHub repository. However, I observed that the meta-imx-fastboot implementation intentionally removes OP-TEE during the Falcon Mode boot flow. Since OP-TEE is also required for my use case, I raised a query on the NXP forum, where @elena_popa provided a solution to retain and enable OP-TEE. I have attached the forum link for reference. Currently, I am facing an issue with enabling Secure Boot, as I could not find any document for Secure Boot with falcon mode for my current kernel version. Environment details: Board: i.MX8M Plus EVK (i.MX8MP EVK) Kernel Version: 6.12.49 Yocto Environment: Yocto-based NXP BSP Boot Mode: Falcon Mode Requirement: Falcon Mode + OP-TEE + Secure Boot Yocto Project Re: Enable Secure Boot in Falcon Mode (6.12.49 - Kernel Version) || iMX8MP_EVK Hello, Could you please share which error are you getting? Best regards.
View full article
mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 Can encryption and signing be applied to a specified range of flash space? How does the program's own read/write behavior within the encrypted flash region differ from before (is the data read back ciphertext? is the data written plaintext?)? During OTA upgrades, how can the architecture be made to match the chip's encryption/decryption without conflicts? Re: mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 Hello, To be clear first: once encryption is enabled, when a program running on the chip writes to flash, the data it writes is plaintext, but what is ultimately stored in flash is ciphertext; when the ciphertext in flash is read by a program running on the chip, it comes out as plaintext. Correct Based on above viewpoint : Then, the SB file read by your Secure Provisioning software is ciphertext, and what is sent over serial ISP to the chip’s factory ISP ROM bootloader must also be ciphertext (otherwise there would be a logical flaw). The factory ISP ROM bootloader decrypts the ciphertext received over serial into plaintext, and then writes the plaintext data into flash, but ultimately the data stored in flash is encrypted again, becoming ciphertext. In other words, during ISP programming, the factory ISP ROM bootloader first decrypts and then encrypts, going through a decrypt-then-encrypt round trip. Let me put more light into this: yes SB file is encrypted and must be decrypted by ROM before writing to Flash. But SB file is encrypted completely independently, to protect the firmware between the OEM and manufacturing facility. Programming flash, either internal or external, is different story and either is not used at all or is used with different algorithm, initial vector, etc. Regards, Libor Re: mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 To be clear first: once encryption is enabled, when a program running on the chip writes to flash, the data it writes is plaintext, but what is ultimately stored in flash is ciphertext; when the ciphertext in flash is read by a program running on the chip, it comes out as plaintext.   Based on above  viewpoint : Then, the SB file read by your Secure Provisioning software is ciphertext, and what is sent over serial ISP to the chip’s factory ISP ROM bootloader must also be ciphertext (otherwise there would be a logical flaw). The factory ISP ROM bootloader decrypts the ciphertext received over serial into plaintext, and then writes the plaintext data into flash, but ultimately the data stored in flash is encrypted again, becoming ciphertext. In other words, during ISP programming, the factory ISP ROM bootloader first decrypts and then encrypts, going through a decrypt-then-encrypt round trip.                           Re: mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 Hi, For MCXN devices: Can encryption and signing be applied to a specified range of flash space? SEC tool: - signs whole application - encryption region is configured once in the product lifetime, you need to make a reserve for future updates (increased size of app) How does the program's own read/write behavior within the encrypted flash region differ from before (is the data read back ciphertext? is the data written plaintext?)? Encryption/decryption is on-the-fly. App reading from flash does not need to care, it is transparent. About writing to encrypted flash region from the application itself, you need to investigate, I'm not sure if there are any caveats. During OTA upgrades, how can the architecture be made to match the chip's encryption/decryption without conflicts? As mentioned above, you need to specify reasonable size of memory region for encryption. If you application exceeds the encrypted region, OTA will work, only the part of the app that will be outside of encrypted area will still work, only your IP won't be protected by the encryption. Regards, Libor
View full article
Re: S32G274A LLCE CAN 当前自研板运行在多核模式下,1个A53核是用来和其他设备网络通信任务的,还有几个A53跑的是一些总线通信的驱动,每个类型的总线单独使用一个A53核。现在出现了一个问题是当前给LLCE CAN配置的恢复操作是设置LLCE CAN的模式先stop再start,在实际运行的场景大部分可以恢复通信的,但是有的时候会频繁的执行总线恢复以至于到影响其他的A53正常运行(网络通信任务中断)。想问的是LLCE CAN有那些方法可以总线恢复,还有是为什么LLCE CAN已经单独放置一个核运行还会影响到其他的核。以下是版本信息:S32G_LLCE_1_0_9;SW32G_RTD_4.4_4.0.2_P04_D2312 Re: S32G274A LLCE CAN Hello, @JACK_Q  您好 麻烦您详细介绍一下您的软硬件测试环境: 1. 在您的系统中,是M核和A核端同时使用吗?M7核运行什么任务?基于哪些软件包? 2. A53端从您的描述来看,每个核都有自己的任务,请问是运行的什么软件?是否是Linux BSP? BR Chenyin
View full article
Falconモードでセキュアブートを有効にする(カーネルバージョン6.12.49)|| iMX8MP_EVK チームの皆さん、こんにちは。 Falcon ModeでSecure Boot を有効にするのを手伝ってもらえます か? meta-imx-fastboot GitHubリポジトリ の助けを借りて、Falcon Modeの実現に成功しました 。しかし、meta-imx-fastbootの実装では 、Falcon Modeのブートフロー中に 意図的に OP-TEE が削除されていることがわかりました。 OP-TEEも私のユースケースに必要なので、NXPフォーラムで質問をしました。@elena_popa OP-TEEを保持・有効化するソリューションを提供してくれました。参考のためにフォーラム のリンク を添付しました。 現在、Secure Bootを有効にする際に問題に直面しています 現在のカーネルバージョンでファルコンモード付きのセキュアブートに関するドキュメントが見つからなかったためです。 環境詳細: ボード: i.MX8M Plus EVK(i.MX8MP EVK) カーネルバージョン: 6.12.49 Yocto Environment: Yocto拠点のNXP BSP ブートモード:ファルコンモード 要件:ファルコンモード + OP-TEE + セキュアブート Yocto Project Re: Enable Secure Boot in Falcon Mode (6.12.49 - Kernel Version) || iMX8MP_EVK こんにちは、 どのエラーが出ているのか教えていただけますか? よろしくお願いいたします。
View full article
mcxn947加密区域可以指定范围,程序内部如何访问flash加密区域 能否对指定范围的闪存空间进行加密和签名? 程序在加密闪存区域内的读/写行为与之前有何不同(读取回的数据是密文吗?写入的数据是明文吗?)? 在 OTA 升级过程中,如何使架构与芯片的加密/解密相匹配而不发生冲突? Re: mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 你好, 首先要明确一点:一旦启用加密,当芯片上运行的程序向闪存写入数据时,写入的数据是明文,但最终存储在闪存中的是密文;当芯片上运行的程序读取闪存中的密文时,读取出来的却是明文。 正常 基于以上观点: 然后,您的安全配置软件读取的 SB 文件是密文,通过串行 ISP 发送到芯片的工厂 ISP ROM 引导加载程序的内容也必须是密文(否则就会出现逻辑缺陷)。工厂 ISP ROM 引导加载程序将通过串口接收的密文解密为明文,然后将明文数据写入闪存,但最终存储在闪存中的数据又会被加密,变成密文。 换句话说,在 ISP 编程期间,工厂 ISP ROM 引导加载程序首先进行解密,然后再进行加密,经历一个解密再加密的往返过程。 让我再详细解释一下: 是的,SB 文件已加密,必须先由 ROM 解密才能写入 Flash。但SB文件是完全独立加密的,以保护OEM厂商和制造工厂之间的固件安全。 对闪存(无论是内部闪存还是外部闪存)进行编程是另一回事,要么根本不使用闪存,要么使用不同的算法、初始向量等。 此致, 伦敦银行间同业拆借利率 (Libor) Re: mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 首先要明确一点:一旦启用加密,当芯片上运行的程序向闪存写入数据时,写入的数据是明文,但最终存储在闪存中的是密文;当芯片上运行的程序读取闪存中的密文时,读取出来的却是明文。   基于以上观点: 然后,您的安全配置软件读取的 SB 文件是密文,通过串行 ISP 发送到芯片的工厂 ISP ROM 引导加载程序的内容也必须是密文(否则就会出现逻辑缺陷)。工厂 ISP ROM 引导加载程序将通过串口接收的密文解密为明文,然后将明文数据写入闪存,但最终存储在闪存中的数据又会被加密,变成密文。 换句话说,在 ISP 编程期间,工厂 ISP ROM 引导加载程序首先进行解密,然后再进行加密,经历一个解密再加密的往返过程。                           Re: mcxn947 加密区域可以指定范围么,程序内部如何访问flash加密区 您好, 对于 MCXN 设备: 能否对指定范围的闪存空间进行加密和签名? 高效密码学标准\(SEC\)工具: - 签署整个申请 - 加密区域在产品生命周期内只需配置一次,您需要预留空间以备将来更新(应用程序体积增大)之需。 程序在加密闪存区域内的读/写行为与之前有何不同(读取回的数据是密文吗?写入的数据是明文吗?)? 加密/解密是即时进行的。应用程序从闪存读取数据无需关心,它是透明的。关于从应用程序本身写入加密闪存区域的问题,你需要进行调查,我不确定是否存在任何注意事项。 在 OTA 升级过程中,如何使架构与芯片的加密/解密相匹配而不发生冲突? 如上所述,您需要指定合理大小的加密内存区域。如果您的应用程序超出加密区域,OTA 更新仍可运行,但只有应用程序超出加密区域的部分仍可运行,您的 IP 地址将不再受加密保护。 此致, 伦敦银行间同业拆借利率 (Libor)
View full article
S32K1_S32M24X 和 S32K1 RTD 封装有什么区别? 我正在为S32K116进行开发。 我在检查 S32DS 扩展和更新时注意到,我安装了两个 S32K1 软件包: “S32K1_S32M24X 实时驱动程序 AUTOSAR R21-11 版本 3.0.0”QLP06” 和 S32K1 实时驱动程序 AUTOSAR R21-11 版本 3.0.0QLP06“ 两者之间有什么区别? 如果他们也对我的情况这样做,我应该保留哪个/卸载哪个? 我尝试移除其中一个(S32K1),但之后我的项目就无法加载它们的 .mex 文件了。文件不再存在。 Re: Difference between S32K1_S32M24X and S32K1 RTD packages? 嗨@daniel_meier 虽然这些软件包看起来可能很相似,但它们彼此之间以及与 S32DS 之间存在依赖关系,因此不应被视为可以彼此独立使用的独立组件。 因此,我们建议重新安装该软件包,并保持两个软件包都已安装,以确保项目功能正常。 BR,VaneB
View full article
Re: S32G274A LLCE CAN The current self-developed board runs in multi-core mode. One A53 core is used for network communication tasks with other devices, and several other A53 cores run bus communication drivers, with each type of bus using a separate A53 core. A problem has arisen: the current LLCE CAN recovery operation is configured to stop and then start the LLCE CAN mode. In most actual scenarios, communication can be restored, but sometimes bus recovery is executed frequently, affecting the normal operation of other A53 cores (network communication tasks are interrupted). The questions are: what methods are available for LLCE CAN bus recovery, and why does having LLCE CAN running on a separate core still affect other cores? The version information is: S32G_LLCE_1_0_9; SW32G_RTD_4.4_4.0.2_P04_D2312 Re: S32G274A LLCE CAN Hello, @JACK_Q Hello Could you please provide a detailed description of your software and hardware testing environment? 1. In your system, are the M-core and A-core used simultaneously? What tasks does the M7 core run? Which software packages does it rely on? 2. From your description, each core on the A53 side has its own task. What software is it running? Is it a Linux BSP? BR Chenyin
View full article
S32K1_S32M24XとS32K1のRTDパッケージの違いは何ですか? 私はS32K116向けに開発を行っています。 S32DS拡張機能とdUpdatesを使っているときに、2つのS32K1パッケージがインストールされていることに気づきました: 「S32K1_S32M24X リアルタイム・ドライバ AUTOSAR R21-11 バージョン 3.0.0QLP06" および 「S32K1 リアルタイム・ドライバ AUTOSAR R21-11 バージョン 3.0.0」QLP06" この2つの違いは何ですか? もし私のケースでも同じように対応するなら、どちらを残しておくべきか、アンインストールすべきでしょうか? そのうちの1つ(S32K1)を削除してみましたが、そうするとプロジェクトが.mexファイルを読み込めなくなってしまいました。もうファイルはありません。 Re: Difference between S32K1_S32M24X and S32K1 RTD packages? こんにちは、 @daniel_meier さん。 パッケージは似ているように見えますが、互いに依存関係があり、互いに独立して使用できる独立したコンポーネントとして扱うことを意図していません。 したがって、プロジェクトの適切な機能を確保するために、パッケージを再インストールし、両方のパッケージを同時にインストールしておくことをお勧めします。 BR、VaneB
View full article
Config Tools for i.MX 26.09 Now Available We are pleased to announce that Config Tools for i.MX 26.09 are now available. Downloads & links To download the installer for all platforms, please login to our download site via:  https://www.nxp.com/design/designs/config-tools-for-i-mx-applications-processors:CONFIG-TOOLS-IMX Please refer to  Documentation  for installation and quick start guides. For further information about DDR config and validation, please go to this  blog post. Release Notes Full details on the release (features, known issues...) Version 26.09 Framework Added support for downloading all boards associated with a processor when downloading the processor. DDR tool Added support for i.MX 937 Added DDR3 support for i.MX 8MP FRDM board Added support for i.MX93W FRDM and EVK boards at 3600 MT/s Enabled PMIC PF9453 support for i.MX 91 Minor improvements, enhancements, and bug fixes SerDes tool Added support for i.MX 952 System Manager Multiple validation ID issues are resolved. DDR tool – NXP-validated memory configurations for multiple vendors is available System Manager – extended CLI support for a headless setting      
View full article
MCUXpresso Config Tools 26.09 Now Available We are pleased to announce that MCUXpresso Config Tools 26.09 are now available. Downloads Also via installer in MCUXpresso for VS Code https://marketplace.visualstudio.com/items?itemName=NXPSemiconductors.mcuxpresso In order to use it with other toolchains, download the installer for all platforms, please login to our download site via:  https://www.nxp.com/mcuxpresso/config Please refer to https://docs.mcuxpresso.nxp.com/config/latest/ for installation and quick start guides. For online version, login into MCUXpresso site: MCUXpresso WEB Release Notes Full details at https://docs.mcuxpresso.nxp.com/config/latest/ Version 26.09 Framework Support public releases of “preliminary” EAR/PRC processor data. Added support for downloading all boards associated with a processor when downloading the processor.
View full article
Transformed and Quantized your model with NPU of the MX8Mplus     Introduction In this article, we will explain in this article which steps you have to take to transform and quantize your model with different TensorFlow versions. We are only looking into post training quantization. We are using the MX8MPlus EVK run our model that have a dedicated neural network accelerator IP from VeriSilicon (Vivante VIP8000). Press enter or click to view image in full size i.mx8MPlus block diagram from NXP Is the neural processing unit (NPU) from NXP need a fully int8 quantized model we have to look into full int8 quantization of a TensorFlow lite or PyTorch model. Both libraries are supported with the eIQ library from NXP. Here we will only look into the TensorFlow variant. The general overview on how to do post training quantization can be found on the TensorFlow website.  The operations for floating point are more complex than for integer (arithmetic’s, avoiding overflow). This results in the ability to use only the much simpler and smaller arithmetic units instead of the larger floating-point units. ​ ​The physical space needed for float32 operation much larger than for int8. This results in:​ Lower power consumption, ​ Less heat development, ​ The ability to join more calculation units decreasing inference time. Prerequisite To create the code on your PC first, we recommend using Anaconda with a virtual environment running Python 3.6, TensorFlow 2.x, numpy, opencv-python and pandas. Post training quantization with TensorFlow Version 2.x If you created and trained a model via tf.keras there are three similar ways of quantizing the model. First Method — Quantizing a Trained Model Directly The trained TensorFlow model has to be converted into a TFlite model and can be directly quantize as described in the following code block. For the trained model we exemplary use the updated tf,keras_vggface model based on the work of rcmalli . The transformation starts at line 28. from keras_vggface_TF.utils import preprocess_input from keras_vggface_TF.vggfaceTF import VGGFace converter.inference_output_type = tf.int8 import tensorflow as tf import numpy as np tfVersion=tf.version.VERSION.replace(".", "") # can be used as savename print(tf.version.VERSION) # TRAIN A MODEL pretrained_model = VGGFace(model='resnet50', include_top=False, input_shape=(224, 224, 3), pooling='avg') # pooling: None, avg or max #Create a generator for representative Dataset folderpath='./All_croped_images/' def prepare(img):          img = np.expand_dims(img,0).astype(np.float32)          img = preprocess_input(img, version=2) return img repDatagen=tf.keras.preprocessing.image.ImageDataGenerator(preprocessing_function=prepare) datagen=repDatagen.flow_from_directory(folderpath,target_size=(224,224),batch_size=1) def representative_dataset_gen():       for _ in range(10):       Img = datagen.next()       yield [img[0]] #CONVERT YOUR MODEL TO TFLITE AND QUANTIZE TO INT8 converter = tf.lite.TFLiteConverter.from_keras_model(pretrained_model) converter.optimizations = [tf.lite.Optimize.DEFAULT] converter.representative_dataset = representative_dataset_gen converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8] converter.experimental_new_converter = True converter.target_spec.supported_types = [tf.int8] converter.inference_input_type = tf.int8 quantized_tflite_model = converter.convert() #SAVE THE QUANTIZED MODEL AS TFLITE FILE open('quant_model.tflite' , "wb").write(quantized_tflite_model) After loading/training your model you first have to create a representative data set. The representative data set is used by the converter to get the max and min values to be able to estimate the scaling factor. This limits the error introduced by the quantization from float32 to intX. The error comes from the different number-space of float and int. Converting from float to int8 limits the number-space to integer values between -128 to 127. Calibrating the model on the dynamic range of the input limits this error. Here you can just loop through your images or create a generator as in our example. We used the tf.keras.preprocessing.image.ImageDataGenerator() to yield images and do the necessary prepossessing on the images. As a generator you can of course also use the tf.data.Dataset.from_tensors() or … from.tensor_slices(). Just keep in mind to do the same pre-processing on your data here as you did on the data you trained your network with (normalization, resizing, de-noising, …). This can all be packed into the preprocessing_function call of the generator (line 19). The conversion starts at line 28. A simple TensorFlow lite conversion would look like this: converter = tf.lite.TFLiteConverter.from_keras_model(pretrained_model) tflite_model = converter.convert() open('model.tflite' , "wb").write(tflite_model) The quantization part is in-between: converter = tf.lite.TFLiteConverter.from_keras_model(pretrained_model) converter.optimizations = [tf.lite.Optimize.DEFAULT] converter.representative_dataset = representative_dataset_gen converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8] converter.experimental_new_converter = True converter.target_spec.supported_types = [tf.int8] converter.inference_input_type = tf.int8 converter.inteference_output_type=tf.int8 quantized_tflite_model = converter.convert() open('quant_model.tflite' , "wb").write(quantized_tflite_model) Line 3 : optimizations other than default are deprecated. No other options are available at the moment (Year 2020). Line 4 : Here we set the representative data set. Line 5 : Here we make sure that we have a full conversion to int8. Without this option, only the weights and biases would be converted but not the activations. This is used when we only want to reduce the model size. However, our NPU needs full int8 quantization. Having the activations still in floating point would result in overall floating-point and could not run on the NPU. Line 6: Enables MLIR-based conversion instead of TOCO conversion, which enables RNN support, easier error tracking. Line 7: Sets the internal constant value to int8. The target_spec corresponds with the TFLITE_BUILTINS from line 5. Line 9 and 10: Set also the input to int8. This is fully available from TF 2.3 Now if we convert the model using TF2.3 with experimental_new_converter=True inference_input_type=tf.int8 inference_output_type=tf.int8 we receive the following model: However if we do not set the inference_input_type and inference_output_type we receive following model: So the effect is that you can determine which input data type the model accepts and returns. This can be important if you work with an embedded camera, as included with the MX8MPEVK. The mipi camera returns 8bit values, so if you want to spare a conversion to float32 int8 input can be handy. But be aware, if you use a model without prediction layers to gain e.g., embeddings, an int8 output will result in very poor performance. Here an output of float32 is recommended. This shows that each problem needs a specific solution. Second and Third Method — Quantize a Saved Model from *.h5 or *.pb Files If you already have your model, you most likely have it saved somewhere either as an Keras h5 file or a TensorFlow protocol buffer pb. We will quickly save our model using TF2.3: import tensorflow as tf f rom keras_vggface_TF.vggfaceTF import VGGFace pretrained_model = VGGFace(model='resnet50', include_top=False, input_shape=(224, 224, 3), pooling='avg') # pooling: None, avg or max # Saving as a protocol buffer !mkdir -p saved_model pretrained_model.save('saved_model/my_model') #saving as a h5 file (if your Tensorflow Version is < 2.0 use this) !mkdir -p keras_model pretrained_model.save('keras_model/my_model.h5') Following the conversion and quantization is very similar as in Method One. The only difference is how we load the model in with the converter. Either load the model and continue as in Method One. #Load the h5 model pretrained_model = tf.keras.models.load_model('my_model.h5') #Then use the converter as before converter = tf.lite.TFLiteConverter.from_keras_model(pretrained_model) Or load the h5 model directly. When using TensorFlow version 2 and above you have to use a compatible converter: # Or load the h5 model from file # TensorFlow version >2.x converter = tf.compat.v1.lite.TFLiteConverter.from_keras_model_file(saved_model_dir + h5_modelname) #works now also with TF2.x # TensorFlowversion < 2.0 converter = tf.lite.TFLiteConverter.from_keras_model_file(saved_model_dir + h5_modelname) If you load from a TensorFlow pb file use: # Or load the pb file from the modelfolder # TensorFlow version >2.x converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir) # the folder contains the pb file and a assets and variables folder Converting with TensorFlow Versions below 2.0 If you want to convert a model written in TensorFlow version < 1.15.3 using Keras, not all options are available for TFlite conversion and quantization. The best way is to save the model with the TensorFlow version it was created in (e.g., rcmalli keras-vggface was trained in TF 1.13.2). I would suggest not using the “saving and freeze graph” method to create a pb file as the pb files differ between TF1 and TF2. The TFLiteConverter.from_saved_model does not work, creating quite a hassle to achieve quantization. I would suggest using the above mentioned method using Keras: import keras …. pretrained_model.save('my_model.h5') Then convert and quantize your model with a TensorFlow version from 1.15.3 onward. From this version on a lot of functions where added in preparation for TF2. I suggest using the latest version. This will result in the same models presented here.          
View full article
LPC54608 内部温度センサー ユーザーマニュアルに記載されているように内部温度センサ用にADCを設定しようLPC54608が、正しい値を読み取ることができませんでした。データシートに記載されている傾きとオフセットの値も使用しました。 Re: LPC54608 Internal temperature sensor Hello ADCの例をベースに使ったことがあるか確認していただけますか?もしそうなら、どの作品かを示してください。 入力ADCチャネル0と入力選択レジスタを3に設定して温度センサーを選択できるようにしましたか? 詳細については、LPC546xxユーザーマニュアルの第44.6.2章[UM10912]をご参照ください。 もしADC温度センサーをどのように設定したのか、もう少し詳しく教えていただければ教えてください。 LPC546xx製品データシート第7.22章によると、 「電源アップ後、温度センサの出力は安定した値に落ち着くまで待たなければ、正確なADC入力として使用できません。ADCによる温度センサの正確な測定のためには、ADCをシングルチャネルバーストモードに設定する必要があります。9回以上の変換バーストの最後の値が正確な結果を提供します。」したがって、温度センサがまだ安定していないか、単一チャネルバーストモードでさらに変換が必要な可能性があります。 また、外部環境に関連するADC誤差を最小限に抑えるために、ADC外部回路の最適化も検討すべきです。 この応用ノートは、アプリケーションにおけるアナログ-デジタル変換器の精度を高める方法に役立ちます 敬具、ルイス Re: LPC54608 Internal temperature sensor 私は以下のように設定しました。 1. ADC、VREFP、VDDA、TS、ANAをクリアし、20μs待機します。 2. ADCクロック有効化、AHBCLKCTRL0。 3. PRESETCTRL0レジスタを使ってADC0ペリフェラルリセットをクリアする 4. INSELで温度チャネルを設定する 5. ADCを有効にし、制御レジスタのCLKDIVを使用してクロックを15MHzに設定します。 5. 同期モード、12ビット分解能、BYPASS = 0、TSAMP = 0 に設定します。 6. 次にシーケンスAをSEQA_CTRLで構成します。チャネル = 1、TRIGGER = 0、TRIGPOL = 0、SYNCBYPASS = 0、BURST = 0、SINGLESTEP = 0、LOWPRIO = 0、MODE = 0、SEQA_ENA = 1 7. CALIB = 1 に設定し、CALIB = 0 になるまで待機する 8. 次にSTARTビットで変換を開始し、結果を読み取る しかし、結果は毎回同じで、DATA VALID は設定されていません。
View full article
MFRC531 01T 的设备集成(软件) 我需要将 NXP Mifare 阅读器 (crypto1) MFRC531 01T 集成到系统中,并且我需要一些关于 RS232 相关协议命令的帮助,以便轮询 SID、进行身份验证和读取块/扇区。 Re: Device Integration (Software) for MFRC531 01T 你好@Menspa 遗憾的是,NXP 没有提供基于 MFRC531 的演示示例;因此,您需要参考 MFRC531 数据手册( MFRC531 标准 ISO/IEC 14443 A/B 读卡器解决方案)并使用 NXP 的 NxpNfcRdLib 库来开发您的读/写卡应用程序。
View full article
エマール・ビーチフロントの完成済み4ベッドルームアパートメントを購入するためのステップバイステップの手順 エマールビーチフロントは急速にドバイで最も人気のあるウォーターフロントの目的地の一つとなり、家族や投資家の間で4ベッドルームのアパートメントの需要が高まっています。この島のコミュニティで広々とした入居準備が整った家の購入を検討しているなら、購入プロセスの最初から最後まで理解しておくことで遅延を避け、自信を持って判断できます。 このガイドでは、エマールビーチフロントで4ベッドルームのアパートを購入するための各段階を案内し、ドバイの信頼できる不動産会社タクウェーン・アルダーからの実用的な洞察も添えています。 エマール・ビーチフロントが、すぐに住める4ベッドルームのアパートメントを求める購入者に魅力的な理由 エマールビーチフロントはドバイマリーナとパームジュメイラの間に位置し、プライベートビーチアクセス、リゾートスタイルの施設、スカイラインの眺めを提供しています。ここでの4ベッドルームのアパートは、工事を何年も待たずにより多くの居住空間を求める大家族に適しています。ユニットはすでに建設され引き渡されているため、買い手は実際の物件を検査し、迅速に入居し、賃貸を選べば早く賃貸収入を得始めることができます。 ステップ1:予算と資金調達方法を明確にする リスティングを見る前に、現実的にどれくらいの費用が出せるかを計算しましょう。エマールビーチフロントの4ベッドルームアパートはプレミアムな購入なので、リスティング価格だけでなく全体のコスト面も考慮してください。 次の点を考慮してください。 頭金の要件は、駐在員の場合通常20〜25%です 融資が必要な場合は、UAEの銀行から住宅ローンの事前承認を得てください。 ドバイ土地局の譲渡手数料は、通常、購入価格の4%です。 代理店手数料、通常2パーセント ビルディングおよび地域社会に連動した継続的なサービス料金 早期に住宅ローンの事前承認を得ることで、明確な予算上限ができ、売り手との交渉において自分の立場を強化します。 ステップ2:エマール・ビーチフロントの完成済み物件を絞り込む 予算が決まったら、ニーズに合った、すぐに住める4ベッドルームのアパートを探し始めましょう。エマールビーチフロントにはビーチビスタ、サンライズベイ、ビーチアイルなどのタワーがあるため、建物ごとに利用可能性やレイアウトは大きく異なることがあります。 Takween AlDarのような知識豊富な不動産会社と協力することで、階数、眺望、間取りの効率性、周辺施設への近さなどに基づいて選択肢を絞り込むことができ、最新の在庫状況を反映していない可能性のあるオンラインの物件情報だけに頼る必要がなくなります。 ステップ3:物件の内覧を予約する 完成済みマンションは、未完成物件の購入とは異なり、契約前に実際に物件内を見学することができます。閲覧機能を使って以下の点を確認してください。 実際の部屋のサイズとレイアウトの流れ 仕上げと装備の品質 自然光と眺望の向き 共用エリア、エレベーター、駐車場の状態 以前にその物件が使用されていた場合は、メンテナンス履歴や最近の修理状況について確認してください。 ステップ4:所有権および不動産関連書類の確認 オファーを出す前に、ドバイ土地局を通じて売主の所有権を確認し、権利証を請求してください。担当エージェントは、物件に関連する未払いの住宅ローン、管理費の滞納、または法的紛争がないかどうかも確認する必要があります。この確認手順は、後々の取引におけるトラブルを防ぐためのものです。 ステップ5:覚書を交渉し署名する 物件とドキュメントに満足したら、オファーを提出してください。合意が成立した場合、両当事者はドバイ土地局のTrakheesiシステムを通じて、一般にフォームFとして知られる覚書に署名する。この段階では、通常、購入価格の約10%にあたる手付金を支払います。この手付金は、譲渡手続きが完了するまで保管されます。 ステップ6:異議なし証明書を取得する 売り手は開発者、この場合はEmaarに対して「異議なし証明書」を請求しなければなりません。この証明書は、不動産に未払いのペイメントや制限がないことを確認し、所有権移転の道を切り開きます。プロセッシングは通常数営業日かかり、開発者に料金が支払われます。 ステップ7:ドバイ土地局で譲渡手続きを完了する 異議なし証明書を手に、買主と売主は共にドバイ土地局の事務所、または登録済みの信託センターに出向き、譲渡手続きを完了させる。この面談時に、残高、振込手数料、および適用される諸費用をお支払いいただきます。手続きが完了すると、所有権証書があなたの名義で発行され、正式にあなたがアパートの所有者となります。 ステップ8:公共料金の手続きと入居 移管後は、電気と水道のDEWAに登録し、建物に関連する地域サービスも有効化してください。アパートは準備が整い、入居も準備できているので、工事完了を待たずに引き継ぎ手続きを始め、鍵を受け取り、引っ越しの計画を立てることができます。 Takween AlDarが購入をサポートする方法 エマール・ビーチフロントの即入居可能な4ベッドルームのアパートメントを購入するには複数の手順が必要であり、経験豊富なパートナーがいればストレスとリスクを軽減できます。タクウィーン・アルダールは、物件選び、書類確認、交渉、そして所有権移転に至るまで、購入者を丁寧にサポートし、最初の内覧から最終的な引き渡しまで、透明性と円滑な手続きを保証します。 よくある質問 Q:Emaar Beachfrontで完成済みのマンションを購入するには、どれくらい時間がかかりますか? A: 資金調達やドキュメントが整っている場合、覚書の署名から権利証書の移転完了まで通常2〜4週間かかります。 Q: 外国人はエマールビーチフロントで4ベッドルームのアパートを購入できますか? A:はい、エマール・ビーチフロントは所有権が完全なフリーホールドエリアに位置しているため、あらゆる国籍の購入者が完全な外国人所有権を取得できます。 質問:物件を見学する前に、住宅ローンの事前承認は必要ですか? A:必須ではありませんが、事前承認を得ておくことで予算を把握しやすくなり、売り手にとってあなたの提案の信頼性が高まります。 質問:購入価格以外に、どのような費用を予算に組み込むべきでしょうか? A: 開発業者からはドバイ土地局の譲渡手数料4%、代理手数料2%、そして場合によってはNOCプロセッシング手数料を支払うことを覚悟してください。 Q:エマール・ビーチフロントでは、完成済みのマンションは、未完成の物件よりも良い選択肢でしょうか? A:完成済みのマンションはすぐに入居でき、購入前に内覧も可能ですが、未完成の物件は購入価格が低い場合もありますが、引き渡しまで待つ必要があります。 まとめ エマール・ビーチフロントで完成済みの4ベッドルーム・アパートメントを購入するには、現実的な予算の設定から書類の確認、ドバイ土地局での所有権移転手続きの完了まで、綿密な計画を立てることが重要なプロセスとなります。適切な指導があれば、買い手は自信を持って各ステップを進め、無駄な遅延なく新しいウォーターフロントの家に落ち着くことができます。Takween AlDarは、最初の物件探しから最終引き渡しまで、この旅のあらゆる段階でサポートいたします。
View full article
secure_provisioning工具烧写sb格式加密签名文件后无法使用mcu链接调试 使用 Secure Provisioning 工具刷写 SB 格式加密签名文件后,将无法再通过 MCU-Link 进行调试。 justdomyself_0-1790073326861.png justdomyself_1-1790073357176.png 当我使用mcuexpress调试代码时,出现错误: justdomyself_2-1790073419631.png 我的开发板可以恢复到之前的状态以使用调试功能吗? Re: secure_provisioning 工具烧写 sb格式 加密签名文件后无法用mcu link debug 嗨@justdomyself > 那么,我可以使用安全提供工具来生成新的许可证,并将新的已签名和加密的 sb 格式文件写入芯片吗? 是的,安全配置工具旨在配置芯片,即安装安全资产(密钥),构建签名或加密的应用程序可启动映像并将其安装到闪存中。 Re: secure_provisioning 工具烧写 sb格式 加密签名文件后无法用mcu link debug @liborukropec非常感谢。我的问题已经解决了。 justdomyself_0-1790128360736.png 我还有个问题: 如上图所示,此擦除操作已将存储芯片上的所有数据擦除干净。 那么,我可以使用安全提供工具来生成新的许可证,并将新的已签名和加密的 sb 格式文件写入芯片吗? Re: secure_provisioning 工具烧写 sb格式 加密签名文件后无法用mcu link debug 您好, 如果将 ROM 配置为仅执行已签名映像,然后从 VSCode(或其他 IDE)编写未签名映像的应用程序,则 ROM 将拒绝运行。 此外,如果推进生命周期,则只能通过调试身份验证打开调试器(请参阅文档)。 如果您没有推进生命周期(在工具栏上),您应该能够删除 CMPA。最简单的办法是使用调试探针,然后在“写入”选项卡上使用“擦除整个芯片...”按钮。 liborukropec_0-1790086908628.png 重启电源后,您应该可以再次进行调试。 此致, 伦敦银行间同业拆借利率 (Libor)
View full article
LPC54608 Internal temperature sensor I tried to configure ADC for internal temperature sensor as given in LPC54608 user manual, but i couldn't read correct values. I used the slope, offset values given in data sheet also. Re: LPC54608 Internal temperature sensor Hello Could you help us confirm if you have used an example for the ADC as a base? If so, indicate which; Have you configured the input ADC Channel 0 and Input Select Register as 3 so you can select temperature sensor? For more detailed information, kindly refer to Chapter 44.6.2 in LPC546xx User manual[UM10912] If you could bring more details about, how did you configure the ADC temperature sensor, please. According to LPC546xx Product data sheet Chapter 7.22, "After power-up, the temperature sensor output must be allowed to settle to its stable value before it can be used as an accurate ADC input. For an accurate measurement of the temperature sensor by the ADC, the ADC must be configured in single-channel burst mode. The last value of a nine-conversion (or more) burst provides an accurate result." Therefore, it could be that your Temperature sensor is not settle yet or you need to make more conversions in single channel burst mode. You also should consider optimize the ADC external circuit to minimize the ADC error related to external environment. This Application Note can help you in How to Increase the Analog-to-Digital Converter Accuracy in an Application Best Regards, Luis Re: LPC54608 Internal temperature sensor I have configured in the following manner: 1. Cleared ADC, VREFP, VDDA, TS, ANA & wait for 20us 2. ADC clock enable, AHBCLKCTRL0. 3. Clear the ADC0 peripheral reset using the PRESETCTRL0 register 4. set temperature channel in INSEL 5. Enable ADC & set clock to 15MHz using CLKDIV in ctrl register 5. Set Synchronous mode , 12-bit resolution, BYPASS = 0, TSAMP = 0 6. then configures sequence A in SEQA_CTRL, CHANNELS = 1, TRIGGER = 0, TRIGPOL = 0, SYNCBYPASS = 0, BURST = 0, SINGLESTEP = 0, LOWPRIO = 0, MODE = 0, SEQA_ENA = 1 7. SET CALIB = 1 & waited till CALIB = 0 8. then started conversion by START bit, read result but result is same everytime & DATA VALID is not setting.
View full article
secure_provisioning ツール烧写 sb格式加密签名文件后無法用mcuリンクデバッグ Secure ProvisioningツールでSB形式の暗号化・署名済みファイルをフラッシュした後、MCU-Linkによるデバッグはもはやできません。 justdomyself_0-1790073326861.png justdomyself_1-1790073357176.png mcuexpress を使用してコードをデバッグすると、エラーが発生しました。 justdomyself_2-1790073419631.png このボードはデバッグ機能を使うために元の状態に戻ることはできますか? Re: secure_provisioning 工具烧写 sb格式 加密签名文件后无法用mcu link debug こんにちは、 @justdomyself >では、Secure Provisingツールを使って新しいライセンスを作成し、新しい署名付き暗号化されたSBフォーマットファイルをチップに書き込むことはできますか? はい、Secure Provisioningツールはchipのプロビジョニング、つまり安全な資産(鍵)をインストールし、署名済みまたは暗号化されたアプリケーションのブート可能なイメージを構築し、フラッシュにインストールするために設計されています。 Re: secure_provisioning 工具烧写 sb格式 加密签名文件后无法用mcu link debug @liborukropecどうもありがとうございます。疑問は解決しました。 justdomyself_0-1790128360736.png もう一つ質問があります。 上記の図のように、この消去操作によりメモリチップ全体が消去されました。 では、Secure Provisingツールを使って新しいライセンスを作成し、新しい署名付きで暗号化されたSBフォーマットのファイルをチップに書き込むことはできますか? Re: secure_provisioning 工具烧写 sb格式 加密签名文件后无法用mcu link debug こんにちは、 ROMを署名済みイメージのみを実行するように設定し、その後VSCode(または他のIDE)の非署名イメージからアプリケーションを書き込むと、ROMは実行を拒否します。 また、ライフサイクルを進めると、デバッガはデバッグ認証(Debug Authentication)でのみ開けられます(ドキュメント参照)。 もしライフサイクルを進めていなければ(ツールバーで)、CMPAを消去できるはずです。最も簡単な方法は、デバッグプローブを使用し、[書き込み] タブで「チップ全体を消去...」ボタンを使用することです。 liborukropec_0-1790086908628.png 電源を入れ直せば、再びデバッグできるようになるはずです。 よろしくお願いいたします。 リボル
View full article
LPC54608 内部温度传感器 我尝试按照 LPC54608 用户手册中的说明配置内部温度传感器的 ADC,但我无法读取正确的值。我还使用了数据表中给出的斜率和偏移量值。 Re: LPC54608 Internal temperature sensor Hello 能否请您确认一下,您是否以ADC的示例作为基准?如果是,请指出是哪一种; 您是否已将输入 ADC 通道 0 和输入选择寄存器配置为 3,以便选择温度传感器? 更多详细信息,请参阅LPC546xx 用户手册[UM10912]中的第 44.6.2 章。 如果您能提供更多关于您如何配置ADC温度传感器的详细信息,那就太好了。 根据LPC546xx 产品数据手册第 7.22 章, “上电后,温度传感器的输出必须稳定下来才能用作精确的ADC输入。为了使ADC能够精确测量温度传感器的值,必须将ADC配置为单通道突发模式。九次(或更多次)转换突发信号的最后一个值可以提供精确的结果。”因此,可能是您的温度传感器尚未稳定,或者您需要在单通道突发模式下进行更多转换。 您还应该考虑优化ADC外部电路,以最大限度地减少与外部环境相关的ADC误差。 本应用笔记可以帮助您了解如何在应用中提高模拟数字变流器的精度。 此致敬礼,路易斯 Re: LPC54608 Internal temperature sensor 我的配置方式如下: 1. 清除 ADC、VREFP、VDDA、TS、ANA 并等待 20 微秒 2. ADC 时钟使能,AHBCLKCTRL0。 3. 使用 PRESETCTRL0 寄存器清除 ADC0 外设复位。 4. 在 INSEL 中设置温度通道 5. 启用ADC,并使用ctrl寄存器中的CLKDIV将时钟频率设置为15MHz。 5. 设置同步模式,12 位分辨率,BYPASS = 0,TSAMP = 0 6. 然后在 SEQA_CTRL 中配置序列 A,CHANNELS = 1,TRIGGER = 0,TRIGPOL = 0,SYNCBYPASS = 0,BURST = 0,SINGLESTEP = 0,LOWPRIO = 0,MODE = 0,SEQA_ENA = 1 7. 设置 CALIB = 1 并等待 CALIB = 0 8. 然后通过 START 位开始转换,读取结果 但每次结果都一样,并且 DATA VALID 没有被设置。
View full article