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.

High-End Timer Transfer Unit (HTU) Module

Other Parts Discussed in Thread: TMS570LS1227, HALCOGEN

Hi,

In HTU Module of TMS570Ls1227, How many double control packets DCP there are?

Thanks

  • Enrico,

    Thank you for using our e2e forum.


    I've forwarded your question to our HTU expert.

  • Hello Enrico,

      There are 8 Double Control Packets in HTU.

    regards,

    Charles

  • Hi Charles,

    Thank very much for your fast response.

    I'm using Halcogen 3.6.0 and I don't find any structure with 8 DCPs in reg_htu.h file.

    Thanks

  • Hello Enrico,

      Can you please take a look at the htu.h. You can find the DCP structure. Below is a snippet.

    typedef volatile struct htuCP
    {
        unsigned IFADDRA;	/** Initial main memory address Control Packet A			*/
    	unsigned IFADDRB;	/** Initial main memory address Control Packet B			*/
    	unsigned IHADDRCT;	/** Initial NHET address and control				*/
    	unsigned ITCOUNT;	/** Initial transfer count						*/
    } htuCP_t;
    
    typedef volatile struct htuCPRamBase
    {
        htuCP_t DCP[8U];
    } htuCPRAMBASE_t;
    
    #define htuCPRAM ((htuCPRAMBASE_t *)0xFF4E0000U)
    

    regards,

    Charles

  • Hi Charles,

    What Halcogen version do you use?

    Halcogen version 3.6.0 and 3.8.0 doesn't generate htu.h file with DCP structure.

    Enrico

  • Hello Enrico,

      I just use 3.6.0 to generate the drivers for HTU. I'm able to find the DCP structures in reg_htu.h. Please see below. In my last reply I was looking at an existing project that I had before which has the DCP structure defined in htu.h. Something might have change since then.

    typedef volatile struct htudcp      
    {                                   
        uint32 IFADDRA;			 
        uint32 IFADDRB;			
        uint32 IHADDRCT;		
        uint32 ITCOUNT;			
    } htudcp_t;                         
                                        
    typedef volatile struct htucdcp     
    {     
        uint32 CFADDRA;			
        uint32 CFADDRB;			
        uint32 CFCOUNT;			
        uint32 rsvd4; 			
    } htucdcp_t;
    
    #define htuREG1   ((htuBASE_t *)0xFFF7A400U)
    #define htuREG2   ((htuBASE_t *)0xFFF7A500U)
    
    #define htuDCP1   ((htudcp_t *)0xFF4E0000U)
    #define htuDCP2   ((htudcp_t *)0xFF4C0000U)
    
    #define htuCDCP1   ((htucdcp_t *)0xFF4E0100U)
    #define htuCDCP2   ((htucdcp_t *)0xFF4C0100U)
    

    regards,

    Charles