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.
Hi, TI experts,
1. TDA4 device DSP C660 aborted and opcode exception,show as follows:
IRP:0xAFBBAA84(IDLE Task);NRP:0xAFBE0DE8(ti_sysbios_knl_Swi_restoreHwi__E);IERR:0x8(opcode exception)
2. When using ROV Tool look more information, find the data of ti_sysbios_c64p_Exception_Module__state_V.exConText is error,show as fllows.
4. the exConText address is the HWI stack range(base:0xAFC298B8,size:64KB), and the contech data is saved when expception handler.
3. So, we consulted TI experts about why the C660 opcode exception occurred and the exContext data was incorrect?Currently, we are unable to find any further information and require TI's assistance.
Hello,
I am looping in another expert on our team that might be able to provide more information than myself with regards to C66.
However, in terms of the opcode exception, have you looked at section 9.2.4.3 Restricted Instruction Execution in User Mode in TMS320C66x DSP CPU and Instruction Set Reference Guide?
Best,
Asha
Thanks your replay.
I looked the 9.2.4.3 Restricted Instruction Execution in User Mode, and found that the section descibed: "An attempt to execute one of these instructions results in an exception. The opcode exception (OPX) and privilege exception (PRX) bits are set in the internal exception report register (IERR) when this exception occurs"
But compared the IERR recored value 0x8, only set opcode exception (OPX).
Hi,
Thank you for the response. I've looped in another expert who might be able to support more than I can on this issue
Best,
Asha
Hi,
But compared the IERR recored value 0x8, only set opcode exception (OPX).
Can you please share more details about your system? How are you running into this exception?
Is it possible to pin point which instruction is causing this exception in your case?
Regards,
Parth
Hi,
1.
All core runing as follows:
(1). R5F2_0, connected to the surround and rear-view cameras;
(2). R5F2_1, connected to the radar;
(3). R5F3_0, connected to USS and parking control;
(4). R5F3_1, parking planning;
(5). R5F1_0, startup, and R5F1_1 is running Autosar CP connected to RTK and power management.
(6). C7X, parking and rear CNN
(7). C660, rear image preprocess and AVM color conversion, C661 run , RGB to YUV
(8). C661, parking image preprocessing
(9). A72, state machine, AVM, map, rear and pariking postprocess,etc
The device has three major states, as follows:
(1) Parking State:
C660 runs AVM color conversion and disables rear image preprocessing.
C661 runs parking image preprocessing.
C7X runs parking CNN and disables rear CNN.
(2) AVM State:
C660 runs AVM color conversion and disables rear image preprocessing.
C661 disables parking image preprocessing.
C7X disables parking CNN and disables rear CNN.
(3) Driving State:
C660 disables AVM color conversion and enables rear image preprocessing.
C661 disables parking image preprocessing.
C7X disables parking CNN and enables rear CNN.
2. Through the NRP register record, the instruction show as follows:"MV.L1 A11,A3 "
Hi, for confirming that the direction is correct, inquiry the possible causes for an Opcode Exception?
Shuwan,
The reason opcode exception
The OPX exception should fire when we encounter a 32-bit word that is fetched as an instruction to execute, but when we decode the instruction, we find it is not a valid instruction. This usually happens if program memory has been overwritten with data or a branch target goes off into the weeds somehow into a data section.
So kindly please help check your memory whether can be overwritten? if you can confirmed it not be overwritten. we can check whether occur L2 Error Detection Correctable Parity Error Counter Register (L2EDCPEC)/ L2 Error Detection Non-correctable Parity Error Counter Register (L2EDNPEC)
Please help check whether the L2 EDC is opened?
L2 Error Detection Status Register(L2EDSTAT) 0x0184 6004h
please double confirmed it closed. bit 0 set if EDC is enabled, or bit 2 set if EDC is disabled.
4. Supplement the following material information (NRP address, disassembly files and CCS viewed):
1. Exported memory of text segment when excaption occur; then after device rebooted, exported again, compared above text segment , not found any error.
2. Also,exported L2,L1P,found the NRP memroy,not found any error:
3. Through CCS, read L2EDSTAT of C660 and C661(both bit2 set, and closed),as follows:
Hi, TI Experts, TDA4VM aboted again, show as follows:
1. Checked with CCS, found that C661 has crashed, with the crash caused by an Opcode Exception (IERR=0x8,NRP=0xB2E401C0).
2. When check the debice, the CCS connection is loose. Attempts to reconnect to C660 and C661 were unsuccessful, but connections to R5F2, C7, and other cores are success.
3. At this time, through R5F2_0, the memory of C661 was saved.
4. After the device was restarted and operating normally, multiple attempts to connect to C661 with CCS failed, and other cores could connect normally.
5. Under the condition of multiple device restarts and occasional connections to C661, but C660 not, the memory of C661 was loaded.
6. When comparing the memory before and after, discovered two code location are modified. However, they were found to be unrelated to the NRP(NRP=0xB2E401C0).
A. address:0xB2F0A6F8,0xA1EF0c6E->0xA1EF3C6F
B. address:0xB2F0DBA0,0x00000000->0x1001E000
7. Upon retesting, when the normal device memory was modified to the above error value through CCS, the device run ok continuly.
8. When the device's debug board was swapped, found that CCS connections to other boards were normal, but the abnormal device, could not connect to C660 and C661, while other cores normal connectivity.
Hi, Parth Nagpal, as the shown, TDA4VM C66 Opcode Exception occur again, please assist by checking if there are any findings,thamks
Hi, Kangjia, as the shown, TDA4VM C66 Opcode Exception occur again, please assist by checking if there are any findings,thanks
Hi, TI Experts, TDA4VM aboted again, show as follows:
1. Checked with CCS, found that C661 has crashed, with the crash caused by an Instruction Fetch Exception (IERR=0x1,NRP=0x0,B3=0xB2E40200).
2. When comparing the memory of exception and normal case,found both memory were same
A. when device exception,through CCS, saved the memory of C661
B. When device normall,through CCS, saved the memory of C661
3. The NRP=0x0 and B3=0xB2E40200, can‘t find why the PC address are changed to 0x0.
A. when B3=0xB2E40200, DSP may execute Function DMW_DSA_resourceGetEntryAttr
B. Function DMW_DSA_resourceGetEntryAttr are simple code, don't exist instrction jump
Update the latest information:
The issue not reproduced until now after increasing the VDD_CORE voltage from 0.80 to 0.84.