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.

RE: TMS470M Control Loop Timing using HET vs RTI

Other Parts Discussed in Thread: HALCOGEN

Dear Chuck-san,

Thank you for your support.

I lent TI's XDS100 JTAG emulator to customer. Now customer can program some code to the blank device on own evaluation board.

By the way, I have one other request.

Do you have simple sample code that calling the interrupt handler each 100ms period? I tried to make it by HALCoGen utility. But I don't know

how to use it. My making project failed when building  on CCS. If possible, could you make it  instead of me?

Best regards,

Michi

 

  • Dear Chuck-san,

    Thank you for your support.

    I wrote the following request.

    " Do you have simple sample code that calling the interrupt handler each 100ms period? I tried to make it by HALCoGen utility. But I don't know

    how to use it. My making project failed when building  on CCS. If possible, could you make it  instead of me? "

    I got the background of my request from my customer.

    Customer already checked TI's EVM demo code. But  it seems that the constant period (ex. each 100ms)  interrupt is not used in EVM demo code.

    For constant period interrupt,  they can use  RTI module, of course. But RTI may be not enough for their using. So customer is considering to use

    HET moudle instead of RTI. But HET is very difficult.

    Also customer confirmed the HALCoGen utility. But customer said me, it seems that HET is  specialized for pulse generation. So it is difficult to achieve

    customer's idea.

    If you provide the sample code to meet the customer's satisfication, it is very helpful.

    Best regards,

    Michi 

  • Hello Michi-san,

    I apologize for the delayed response.

    First, I will have to look to see what examples we might have regarding periodic interrupts. We might have something available baased on the RTI, but I am not certain so I will need to check. I am fairly certain we do not have anything based on HET but, again, I will need to check.

    Secondly, I am curious about your statement that the RTI periodic interrupt is not enough for the customer's application needs. Can you provide more details on what their needs are. In other words, do they have multiple loop timings they are trying to implement? If so, would it be possible to either utilize the 4 interrupts provided by the RTI or to use a counter in the ISR to execute tasks based on the count within the RTI ISR? If, for example, they had loop times of 100, 200, and 500ms, they could setup the RTI to interrupt every 100ms and execute the 100ms tasks each time the interrupt fires, the 200ms tasks every other time, and the 500ms tasks every 5th interrupt.

     

  • Dear Chuck-san,

    Thank you for your support.

    > Secondly, I am curious about your statement that the RTI periodic interrupt is not enough for the customer's application needs. Can you provide more details on what       > their needs are. In other words, do they have multiple loop timings they are trying to implement?

    Regarding the above your question, customer's answer is yes. Customer will have multiple loop timings. And they think four interrupts by RTI is not enough. So they would like to consider the alternative solution.

    Please check sample code of HET.

    Best regards,

    Michi

  • Hello Michi-san,

    I will look for some example code as you stated. Can you tell me how many control loops they are trying to implement and what the time value for each of the loops are?

  • Dear Chuck-san,

    Thank you for your support.

    I don't know customer's all condition. But they would like to make two types timing loop by HET at least.

    One is 1us, and other one is 100us. Of course, they will use RTI module.

    Best regards,

    Michi

  • Hello Michi-san,

    I am confused by your last post.

    "I don't know customer's all condition. But they would like to make two types timing loop by HET at least.

    One is 1us, and other one is 100us. Of course, they will use RTI module."

    Do they wish to use the to generate their loop time or the RTI?

    Also, I am curious what your customer's concerns are with using the RTI? Does it have to do with interrupt priority or with availability of timers for the loops? As I mentioned before, the RTI has multiple counters (2) and multiple interrupts (4 compare interrupts and 2 overflow interrupts) that can be configured for various priorities using the M3VIM. Certainly it would be possible to set up a 1us and a 100us loop with these resources. If you could provide more details of their concerns and their requirements we can discuss in greater depth. If there are concerns with proprietary information disclosure we can move the discussion off line.

    In regard to using HET as the source for generating interrupts for control loop timing, there are factors such as HET loop time, program length, interrupt latency, peripheral access timing, and interrupt priority that could impact the accuracy of control loop timing generated by the HET. What level of accuracy are they hoping to achieve with their loop timing for each loop time? Another concern is that HET has only two interrupt channels mapped in the M3VIM so each HET interrupt would have to be decoded to determine which HET channel caused the interrupt before any interrupt service could be instantiated. If the customer also wishes to use the HET for normal loop timings, such as input capture or PWM generation, then this further complicates things as these other functions would also need to be mapped to the HET inerrupts and would also have some assumed accuracy requirement.

    Any additional information you can provide would be greatly appreciated so we can help find a solution for the customer's specific application needs.

     

  • Hello Michi-san,

    Please note that I have split the thread to separate the topics between the JTAG connection problem and the loop timing questions.

  • Dear Chuck-san,

    Thank you for your support.

    Regarding to your questions, I will answer. Please see the below.

    > What your customer's concerns are with using the RTI?  

    ---> No, my customer's concerns are with using the HET.

    > Does it have to do with interrupt priority or with availability of timers for the loops?

    ---> Yes. I think so.

    > What level of accuracy are they hoping to achieve with their loop timing for each loop time?

    ---> I think the normal level is acceptable for accuracy. I think this is first time customer to use HET. So simple program is better than complicated program.

    I appreciate your support.

    Best reagrds,

    Michi

  • Hello Michi-san,

    I apologize for the misunderstanding. So, what I believe you are stating is that the customer has some concerns about programming and using the HET in the device as it is something very different from what they are used to?

    Have you and the customer reviewed the getting started guide located at the link below?

    http://www.ti.com/mcu/docs/litabsmultiplefilelist.tsp?sectionId=96&tabId=1502&literatureNumber=spraba0b&docCategoryId=1&familyId=1870

    In addition, I am working on putting together some example code, but this may not be enough since they will still need to understand the principles behind the coding and use of the HET. Perhaps it might make some sense to consider setting up some training on the HET to help inprove their knowledge and understanding of just how versatile and powerful the HET can be. I will talk to Brian about this.

  • Michi-san,

    I would also suggest using the HET IDE to develop HET programs and simulate them on your PC. More information on the HET IDE can be found at this link.

    http://www.ti.com/tool/het_ide

     

  • Dear Chuck-san,

    I will check the documents you showed me.

    If you prepare some sample code of HET,please let me know.

    I appreciate your good support.

    Best regards,

    Michi