Hello,
I have a product based on C6424. It seems to have a serious software issue: it consistently crashes after 5 days anda few minutes of run time (both in the lab and at the customer site). Running under CCS, we have set and hit the breakpoint at _EXC_dispatch. We have determined that an area of DDR2 memory has been corrupted. This area contains a table of pointers to other functions (e.g. a jump table). Someone has corrupted the table, causing us to branch to an invalid instruction. Now we need to know who corrupted the memory.
Hardware Data Breakpoint (also known as Watchpoint) would be perfect for this. But unfortunately C6424 is a mid-GEM device, and doesn't have watchpoints. The software technique to simulate a watchpoint is to frequently scan the memory area and halt when the memory changes. You look at which task or ISR ran most recently and hope that it was the responsible party. We have done this before to find other bugs and know how to do it. But for a problem that takes 5 days to manifest, it is very hard to get enough test runs to track down the problem using software techniques.
So we need some "out of the box" thinking about some way to hardware simulate a watchpoint on the C6424. Is there anything that can be done using JTAG? Is there any thing that can be done with page tables? (Unfortunately C6424 doesn't have memory protection unit). We really need to get creative here.
Is there a footprint-compatible part to C6424 that could be changed out on the PCB that would have full-GEM?
Regards,
Jeff Siegel
 
				 
		 
					 
                           
				 
				 
				