PSoC 6 TRNG Health Monitor

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
NovoNate
Level 3
Level 3
First like given 25 sign-ins 5 replies posted

Hello,

For the project that we are working on we are using the TRNG inside the CY8C6347 to generate some values (AES initialization vectors for example) on a somewhat regular basis and want to make sure that the numbers that are generated are valid.

In reading the TRM it describes two "health monitor" capabilities that are built into the hardware, however looking at the PDL implementation it does not appear that this functionality is being enabled. Is there a reason for not having this enabled? If we were to implement our own code based on `Cy_Crypto_Core_V1_Trng()` are there any suggested starting points for the counters and window size to use for the health checks?

Also on a related note the PDL is enabling/disabling the TRNG for each operation. I'm guessing this is to help reduce power consumption as the TRM indicates that the ring buffers that make up TRNG "consume a significant amount of power" but there is no value in the datasheet indicating how much power the TRNG consumes. Is there a nominal power consumption value that we can use to determine if it is better for us to be enabling/disabling the TRNG for each 32-bit value or if it would be better to generate multiple 32-byte values in succession without disabling the TRNG after each one.

 

Thanks,

Nate

1 Solution
LeoMathews
Moderator
Moderator
Moderator
First question asked 500 replies posted 100 solutions authored

Hi @NovoNate 

The health monitor functionality was not included in API Cy_Crypto_Core_V1_Trng(). The implementation to support the health monitor functionality is completed and verified by our software team, and will be updated in the next PDL release(expected end of this quarter).

Thanks and Regards,
Leo

View solution in original post

0 Likes
9 Replies
LeoMathews
Moderator
Moderator
Moderator
First question asked 500 replies posted 100 solutions authored

Hi @NovoNate 

Can you please specify  where the API Cy_Crypto_Core_V1_Trng() was referred from? Please try using the API Cy_Crypto_Core_Trng() for the same.

Thanks and Regards,
Leo

0 Likes

Hi @LeoMathews,

Cy_Crypto_Core_V1_Trng() is the function that Cy_Crypto_Core_Trng() calls for the PSoC 63 device. That function is defined at https://github.com/Infineon/psoc6pdl/blob/master/drivers/source/cy_crypto_core_trng_v1.c#L104 and analyzing what it does for initializing the TRNG that is where i concluded that the health monitor functionality is not getting enabled.

LeoMathews
Moderator
Moderator
Moderator
First question asked 500 replies posted 100 solutions authored

Hi @NovoNate 

The health monitor functionality was not included in API Cy_Crypto_Core_V1_Trng(). The implementation to support the health monitor functionality is completed and verified by our software team, and will be updated in the next PDL release(expected end of this quarter).

Thanks and Regards,
Leo

0 Likes

Hi @LeoMathews,

Would it be possible to get a pre-release/beta copy of the health monitor functionality that will be in the next PDL release? We have a project milestone at the end of the year and it would be nice to have that functionality sooner rather than later if possible.

 

Thanks,

Nate

LeoMathews
Moderator
Moderator
Moderator
First question asked 500 replies posted 100 solutions authored

Hi @NovoNate 

We have requested our software team about the same. We will update you as soon as we get a response from them.

Thanks and Regards,
Leo

0 Likes
LeoMathews
Moderator
Moderator
Moderator
First question asked 500 replies posted 100 solutions authored

Hi @NovoNate 

We regret to inform you that our public release of PDL is only planned for the end of this quarter. We won't be able to do any specific releases for this feature update.

Thanks and Regards,
Leo

0 Likes

@LeoMathews 

Thanks for the update. At this point we can reevaluate if we will need that functionality once the next version of the PDL is available.

0 Likes
LeoMathews
Moderator
Moderator
Moderator
First question asked 500 replies posted 100 solutions authored

Hi @NovoNate 

Please refer to this link to get an understanding of the power consumption value.

Thanks and Regards,
Leo

0 Likes
pasoorii
Level 1
Level 1
First reply posted Welcome!

Thanks for this thread.

0 Likes