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.

Writing to RAM on the fly and editing the .out file

Hi,

I have a verification task where I must verify a RAM test routine and a CRC routine.  In the RAM test routine I need to pause the code and overwrite the RAM location to force an error in the RAM check.  In the CRC routine I need to overwrite 1 bit in the .out file to force a CRC error. 

Can I accomplish each of these tasks with CCS?  If so, how?  If not, is there some other way to do this?  I'm not allowed to change the actual C code for these tests (except changing one random bit in the .out file.

Thanks,

Rick

  • Hello!

    I'm not sure, but you can try to do it in debug mode of CCS. But the big question is whether this verification in "pure form", because the mechanism of runtime under the debugger and the mechanism of real runtime are different.

    Regards,

    Igor 

  • Thanks Igor.  This is verification in "pure form" as you call it.  Hence, the reason I can't change the code and must change the data.  This will be satisified if I can edit the .out file to change one bit for the CRC test. 

    However, when I mentioned to the people of interest that, as you stated, debug code is already modified, they didn't give me a decent response.  They just tole me to pause the program during the RAM check and overwrite the data in RAM.  It is very important I figure out how to do this so I can finish my formal test procedure (for the FAA), so that I can get it reviewed (by the FAA), so my customer can tell me, "Don't you know that debug code is not the same as real runtime code?"  <grimmace, rolleyes> ;^)

    Any help will be greatly appreciated, especially with respect to editing the .out file.

    Rick

  • Hi Rick!

    And what about the embedded edit of the good old "Norton Commander". Now I have successfuly edited out. file of CCS (I have used hex-representation and I have replaced some byte 00 on 01). Then I have compared old & new files through Total Commander: there is a difference in one bit. Under WinXP Norton Commander runs successfuly. About Win7 I don't know.

    Regards,

    Igor

  • Thanks Igor.  I found a freeware hex editor I can use.  Now if I can only figure out how to write to RAM on the fly in CCS.

  • Hi Richard!

    1 It's great. What is this freeware hex editor (if it is not a secret)?

    2 About "how to write to RAM on the fly in CCS". I think through CCS It is not suitable for your case, even if it is possible. It will not be verivication at "pure form" because the third-party software (CCS) will be involved in the verification process One need to search some other solution.

    Regards,

    Igor

  • Hi Igor,

    The editor is called HxD.  It's just a simple editor that allows me to change a bit.

  • Thanks Rick!

    Richard Shank said:

     They just told me to pause the program during the RAM check and overwrite the data in RAM.  

    It's a very strange approach... For example when we perform the verification, we create a modified version of the firmware that allows to make any irregularities in the work of software through contacts GPIO. The firmware reads the error code from this contacts and one starts the appropriate making error procedure. The changes of the firmware and all test procedures we agree with our certification organization. Of course we provide all the source code to them. But after all no one has any questions. I understand the futility of my remarks. Just I wished to report about our verification experience.

    Regards

    Igor