Eduardo,
The NMI should be working right without the interrupt keyword. It may be helpful to try to figure out why it is failing on you. Since you are getting to the ISR, you can set a breakpoint there and inspect registers.
A big problem with using NMI is that it cannot mask itself. So when you are trying to debug it, you will keep getting more NMIs coming in from your periodic source and those will cause NRP to get corrupted and be hard to debug with. The easiest solution for that is to replace the real pulse with something that you can control better, making sure it is debounced and meets any timing constraints like length of the pulse.
The true problem with using NMI for a functional interrupt and not a catastrophic event interrupt is with places in the code where interrupts are temporarily disabled. The C6000 uses an unprotected pipeline, which means it can achieve better speed but has sensitivity to interrupts. If an NMI occurs in the middle of a "software pipeline" code sequence, the algorithm can and will be corrupted when you return from the NMI. This is why we say not to use NMI for a functional interrupt from which you want to survive.
Using the maskable interrupts, you will have some fixed latency (like with NMI) and some variable latency (like NMI but lots more). You may be able to filter the timing correction in your timing adjustment algorithm and smooth out that latency variation.
If you have to have a higher-accuracy timing adjustment, you might consider using other event-responding modules, like the EDMA3. You could send the timing signal to a GPIO pin that causes an EDMA event, which triggers a DMA read of the internal (or external) timer/counter and copy it to another location, then cause a DSP interrupt. The DMA ISR could then take that capture timer value and compare it to the expected value to decide on an adjustment to make.
There might be other peripherals or modules on the device that could do some response to a timing pulse and save a value, but the EDMA3 seems like a good and easy choice.
Regards,
RandyP