Question: Interrupt service routine: When he enters routine it shows that all interrupts are zero, the GIE bit is zero (as expected), however pgie is also zero - i.e., when this interrupt happened the interrupts were not enabled - this doesn't appear to be correct

Answer: What was happening is that C4x takes interrupt when an instruction that disables GIE is in the pipeline. hence inside ISR both GIE and old GIE bits are cleared. When ISR returns, the interrupts will be globally disabled just as you would expect them to be.


Device: TMS320C4x
Category: Device Information
Detail: Interrupts
Title: Instruction that disables GIE is in the pipeline
Source: Case from the TMS320 Hotline
Date: 06/19/97
GenId: 0004005

© Copyright 1998 Texas Instruments Incorporated. All rights reserved.
Trademarks, Important Notice!