• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Microcontrollers » C2000™ Microcontrollers » Design Notes » [2803x] Interrupt Latency
Share
C2000™ Microcontrollers
  • Forums
  • Announcements
  • E2E Wiki
Table of Contents
  • Design Notes
  • [2802x SDFlash] config for Piccolo 2802x 50Mhz parts
  • [2802x/2803x/2806x] Power and Clock Sequencing
  • [2803x/2802x/280x] Dual mapped memory
  • [2803x/2802x] HRPWM - output B
  • [2803x] Interrupt Latency
  • [280x] Power on Reset
  • [2823x to 2833x] Migration
  • [28335] ADC frequency
  • [2833x / 2823x / 2834x] Boot from XINTF
  • [ADC] 2833x/2823x ADC calibration
  • [BreakPoints] How many h/w breakpoints on C28x?
  • [C2000] controlSUITE - what is it and why use it?
  • [C2000] Terms and Abbreviations
  • [CLA] CLA and CPU message RAM arbitration
  • [CLA] How does MSTF.RND32 work?
  • [CLA] Running a CLA function in Flash
  • [Codegen Tools] Calculate a Checksum During Compile Time
  • [Codgen Tools] IEC61508 authentication?
  • [CSM] Permanent lock
  • [CSM] Recovering a locked device
  • [CSM] When does the CSM get locked
  • [eQEP] Can eQEP be used as an eCAP?
  • [EVA/EVB] PWM Pin state at power-up (2407A)
  • [Examples] C280x Timer Examples
  • [F2806x] Want to use the max speed (90MHz)
  • [FFT] Comparison of implementations: VCU, 16/32 bit fixed-point and 32-bit floating point
  • [Flash API] error 21 STATUS_FAIL_PRECONDITION
  • [Flash] Execution of Flash erasing and C28x ISR at the same time on Concerto?
  • [Flash] Frequently Asked Questions
  • [Flash] JTAG connects but can not erase/program
  • [Flash] Re-Programming over JTAG (can't connect after programming)
  • [Floating Point] What are MFLOPS
  • [Floating-Point] Double precision on C28x+FPU
  • [GPIO] input qualification and alternate peripheral function
  • [HRCAP] Can HRCAP be used as a general PWM
  • [HRPWM] - Generating Complimentary HRPWM
  • [HRPWM] Frequency Considerations
  • [I/O Link] Is there I/O link support for C28x?
  • [ILLEGAL_ISR] Illegal trap during EMI testing
  • [Mathworks] Which C2000 devices are supported?
  • [Migration] 24x to 28x
  • [Piccolo] Migration guide from a F2802x or F2803x to F2806x
  • [Power] mW/DMIPS
  • [Power] Testing power consumption for every module
  • [SCI] Baudrate for 2833x/2823x
  • [SCI] Number of ports on 2803x Piccolo devices
  • [SPI] RX frequency limitations
  • [Trip-Zone] Tripping eCAP
  • [USB] Thoughts on 2806x USB design considerations
  • [XINTF] Single cycle write?
  • [XINTF] TMS320F28335 XINTF is "not working"
  • char/byte types on C28x
  • F2803x PWM ETPS
  • JTAG EMU0/1 Pull-up/down
Page Details
  • First published by Lori Heustess Lori Heustess
  • When: Jun 11, 2011 6:34 PM
  • Revisions: 1
  • Comments: 1

[2803x] Interrupt Latency

C2000™ Microcontrollers

Welcome to the C2000™ Microcontrollers Section of the TI E2E Support Community. Ask questions, share knowledge, explore ideas, and help solve problems with fellow engineers. To post a question, click on the forum tab then "New Post".

  • Article
  • History

[2803x] Interrupt Latency

Design Notes

Rate This

Question:

I have been testing the F28035 and ran into confusing regarding interrupt response time.

From spru430e.pdf I found a timing in example that implies an 8 cycle response? In interrupt code example files (f. ex. ACDC_ISR.asm in the ACDC project) from TI the comments say "13 cycles to get here".

Is the interrupt response time really 20 cycles or should it be something else?

Answer:

Hardware interrupt latency on Delfino and Piccolo devices is shown in the wiki article here:

http://processors.wiki.ti.com/index.php/Interrupt_FAQ_for_C2000

(This is from the multi-day workshop)

For an internal interrupt such as PWM timer, there is a minimum of 14 cycles measured from the interrupt arriving at the core to the execute pipeline phase of the first ISR instruction.

If may be setting or clearing an I/O within the ISR to measure the time. This adds additional cycles so to this number must be added the context save added by the compiler. The user guide reference you mentioned shows the additional CPU cycles for a complete context save 14 + 8 = 22.  The compiler may add fewer than this, depending on the ISR code and optimisation level. You will see this in the generated assembly code.

By default, interrupts are disabled inside an ISR.  If the code has several PWM interrupts the timing will be held out if the interrupt is triggered while one of the other ISRs is running.

This may explain the variation in the timing measurement.

 

 

Comments
  • Jay Bu1 Jay Bu1
    Mar 22, 2013 7:47 PM

    This is for Delfino processor.

    What information does the "context save" save for an interrupt? Some reference guide says it automatically save some basic registers in 6 to 7 cycles. However, it does not save RB register and the floating CPU related registers. It's the ISR responsibility to save above information. All the floating registers have shadow registers. If nested interrupt is not supported, then the floating registers can be saved in the shadow registers when entering the ISR. If nested interrupt is supported, the floating registers have to be saved to the stack. In the worst case, the context save may cost more than 40 cycles. Can you clarify above issues? It seems TI's original interrupt mechanism doesn't support nested interrupt. I can  manipulate the ISR to enable nested interrupt. What context should I save if I enable the nested interrupt or not?

    Also, if enable the nested interrupt, will the "low priority interrupt" interrupt the "high priority interrupt"?

TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use