This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Input Buffer Disable on NHET - HalCoGen Default Is Disable - Different Behavior with Emulator Attached/Unattached

Other Parts Discussed in Thread: HALCOGEN

Working with a customer that ran into strange behavior with NHET.

With the emulator attached - code that performs input measurements on NHET works perfectly.

Without the emulator attached, the same code does not generate NHET interrupts - leading one to believe interrupts are disabled OR

for some reason the input measurement is not working.

We tracked this down to the default setting of HalCoGen - which sets  PULDIS to 0xFFFFFFFF..

As described in the TMS570 TRM (SPNU489.pdf) on page 1241 Table 180, the combination of PULDIS=1, pin direction = 0, and

PULSEL=0 causes the input buffer to be disabled,  this means that the NHET never 'sees' the inputs toggling and thus no measurements occur.

 

It appears that this input buffer disable is over-ridden by the emulator being attached; but this information is not described in the TRM.

Please confirm the dependency on the emulator attachment. 

Also strongly suggest making the HalCoGen default less error prone - as this feature is a rather 'advanced' option and mainly a concern for low power states.  It gets in the way of rapid code development, actually.

 

 

  • Anthony,

    We performed a simple test at my bench and successfully replicated the issue that customer is facing.

    Following are the details of the test and the findings:

    NHET[2] was configured as input with PULLDIS = 1, PSEL = 0, and executed a PCNT instruction using the same pin.
    The code is flashed in to the micro, with CCS connected the Test passes ( i.e., Input buffer not disabled), with out CCS the test fails ( Expected behavior, since input buffer should be disabled). Thsi confirms that

    Looking at the Gate level once of our senior engineer confirmed that "When nTRST is high( Emulator connected / debug mode), the boundary scan cells override the input enable to always drive it High "
    This behavior is applicable for all I/O buffers irrespective of the modules.  

    The general statement should be to use cautiously or stay away  from the combination (PULLDIS = 1, PSEL = 0) for existing TMSx70 devices.

    I have intimated HALCoGen team to take care of or to avoid  this PULL combination as the default state.