SAR cypersonality file bug in PDL v2.40 Modus Device Configurator

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

cross mob
John_K
Level 4
Level 4
25 replies posted 10 questions asked First like received

Using  PDL v2.40, and Modus Device Configurator to configure the SAR ADC< there is a bug in the SAR-5.0.cypersonality. (I did a brief  check and this issue is also present in previous PDL and SAR personality file versions as well).

 

According to the PSOC6 TRM, the SAR can be clocked by 1.7 MHz to 18 MHz without an external bypass capacitor.  From the TRM:

36.2.1.6 SAR ADC Clock
Note: The maximum SAR ADC clock frequency may be limited to less than 18 MHz by the PSoC 61 datasheet/PSoC 62 datasheet specification for sample rate maximum.


SAR ADC clock frequency must be between 1.8 MHz and 18 MHz, which comes from the peripheral clock (CLK_PERI) in thesystem resources subsystem (SRSS). See the Clocking System chapter on page 237 to know how to configure the peripheral clock.

 

The PDL 'sar-5.0.cypersonality' file has data validators to check the minimim clock frequency (works) and the maximum (does not work).  The device configurator incorrectly shows the valid frequency range as min1.7 MHz and max 1.8 MHz.

Checking the sar-5.0.cypersonality file, the issue is with this line (75):

 <ParamString id="clkFreqMaxMHz" name="clkFreqMax" group="Connections" default="`${(vref_byp_cap || (vref_select eq CY_SAR_VREF_SEL_VDDA) || (vref_select eq CY_SAR_VREF_SEL_EXT)) ? ((2000000 == maxSampleRate) ? 36 : 18) : 1.8}`" visible="false" editable="false" desc="Maximum supported ADC clock frequency" />
    

 

where the max frequency has a typo : 1.8 MHz instead of 18 MHZ.  This issues prevents setting a clock in the valid range, unless the ".bypassed" configuration is selected .  It shouldn't have to be bypassed to be clocked in this range. 

Looks like an easy fix to address in PDL release.

0 Likes
3 Replies
Ekta_N
Moderator
Moderator
Moderator
750 replies posted First like given 250 solutions authored

Hello @John_K 

Thanks for informing us about this issue.
I tried providing a clock greater than 18MHz to the SAR ADC block and there was no error thrown by the configurator. While configuring the clock at a frequency less than 1.8MHz does throw an error.

I will create an internal ticket to get the issue resolved.

Best Regards
Ekta
 

0 Likes
lock attach
Attachments are accessible only for community members.
John_K
Level 4
Level 4
25 replies posted 10 questions asked First like received

Ekta,

In order to see the issue, set the ADC to Differential,  make sure the "vref bypassed" is not checked, and choose Internal reference for "Vref Select"The validator logic test:

(vref_byp_cap || (vref_select eq CY_SAR_VREF_SEL_VDDA) || (vref_select eq CY_SAR_VREF_SEL_EXT))

will pass for higher clock based on vref_bypass selected and reference set to something other than "Internal reference".  See attached screenshot, where the allowed range is quote as "1.7MHz to 1.8 MHz"

0 Likes
Ekta_N
Moderator
Moderator
Moderator
750 replies posted First like given 250 solutions authored

Hello @John_K 

Thanks for providing the info.

I can reproduce the issue you have mentioned and will add it to the internal ticket I have created.

Thanks and Regards
Ekta

0 Likes