TRACE32 CMM script










0















I would like to run the t32 cmm script for accessing memory and read/write test. And tried below code.



&srcadd=0x50000000
&destadd=0x50700000

REPEAT 100.
//WHILE (&srcadd<&destadd)
(
D.S ND:0x10:&srcadd %LE %Long 0xdeadface
&srcadd=&srcadd+0x4
)


This code worked for first time and not working on second run, seen different behavior that some of the location not written... random failures if I run the script on X86 core.
Can you please provide any insights on this ?
Also can you tell me how we can store the data from the memory to compare whether its written properly. I am validating internal memory and read/write test. It would be great if we have any sample t32 script for the same.










share|improve this question






















  • I am not sure what you are asking exactly. Please improve you question. E.g. How do you indicate that the script is not working on the second run? The WHILE statement in your script is commented. What was your intention to keep it in your example? Also &destadd is not used. Please reduce your example to the bare minimum.

    – Holger
    Nov 13 '18 at 13:01











  • Thanks much for your kind response and sorry for the incomplete information. Actually I would like to write 0xdeadface value to 0x5000_0000 to 0x5070_0000 range, but with this code, firstly I am trying to learn the 'repeat' (and/or 'while') syntax (thats why I commented out 'while' for now) to access 100*4 bytes of data from 0x5000_0000 address. Can I have simple t32 cmm script which can test the memory for 1MiB i.e read/write/verify.

    – Raj
    Nov 13 '18 at 17:34












  • For just writing 0xdeadface to ND:0x10:0x50000000 to ND:0x10:0x50000400 your script looks alright. However you can have that simpler with the single command Data.Set ND:0x10:0x50000000++0xff %LE %Long 0xdeadface. For read-back and check use PRACTICE function Data.Long(<addr>) in an IF statement. For testing memory you can also use command Data.Test ND:0x10:0x50000000++0xff

    – Holger
    Nov 14 '18 at 12:54












  • If you want to test your memory you could also look into "Data.Test".

    – dev15
    Nov 15 '18 at 7:45















0















I would like to run the t32 cmm script for accessing memory and read/write test. And tried below code.



&srcadd=0x50000000
&destadd=0x50700000

REPEAT 100.
//WHILE (&srcadd<&destadd)
(
D.S ND:0x10:&srcadd %LE %Long 0xdeadface
&srcadd=&srcadd+0x4
)


This code worked for first time and not working on second run, seen different behavior that some of the location not written... random failures if I run the script on X86 core.
Can you please provide any insights on this ?
Also can you tell me how we can store the data from the memory to compare whether its written properly. I am validating internal memory and read/write test. It would be great if we have any sample t32 script for the same.










share|improve this question






















  • I am not sure what you are asking exactly. Please improve you question. E.g. How do you indicate that the script is not working on the second run? The WHILE statement in your script is commented. What was your intention to keep it in your example? Also &destadd is not used. Please reduce your example to the bare minimum.

    – Holger
    Nov 13 '18 at 13:01











  • Thanks much for your kind response and sorry for the incomplete information. Actually I would like to write 0xdeadface value to 0x5000_0000 to 0x5070_0000 range, but with this code, firstly I am trying to learn the 'repeat' (and/or 'while') syntax (thats why I commented out 'while' for now) to access 100*4 bytes of data from 0x5000_0000 address. Can I have simple t32 cmm script which can test the memory for 1MiB i.e read/write/verify.

    – Raj
    Nov 13 '18 at 17:34












  • For just writing 0xdeadface to ND:0x10:0x50000000 to ND:0x10:0x50000400 your script looks alright. However you can have that simpler with the single command Data.Set ND:0x10:0x50000000++0xff %LE %Long 0xdeadface. For read-back and check use PRACTICE function Data.Long(<addr>) in an IF statement. For testing memory you can also use command Data.Test ND:0x10:0x50000000++0xff

    – Holger
    Nov 14 '18 at 12:54












  • If you want to test your memory you could also look into "Data.Test".

    – dev15
    Nov 15 '18 at 7:45













0












0








0








I would like to run the t32 cmm script for accessing memory and read/write test. And tried below code.



&srcadd=0x50000000
&destadd=0x50700000

REPEAT 100.
//WHILE (&srcadd<&destadd)
(
D.S ND:0x10:&srcadd %LE %Long 0xdeadface
&srcadd=&srcadd+0x4
)


This code worked for first time and not working on second run, seen different behavior that some of the location not written... random failures if I run the script on X86 core.
Can you please provide any insights on this ?
Also can you tell me how we can store the data from the memory to compare whether its written properly. I am validating internal memory and read/write test. It would be great if we have any sample t32 script for the same.










share|improve this question














I would like to run the t32 cmm script for accessing memory and read/write test. And tried below code.



&srcadd=0x50000000
&destadd=0x50700000

REPEAT 100.
//WHILE (&srcadd<&destadd)
(
D.S ND:0x10:&srcadd %LE %Long 0xdeadface
&srcadd=&srcadd+0x4
)


This code worked for first time and not working on second run, seen different behavior that some of the location not written... random failures if I run the script on X86 core.
Can you please provide any insights on this ?
Also can you tell me how we can store the data from the memory to compare whether its written properly. I am validating internal memory and read/write test. It would be great if we have any sample t32 script for the same.







trace32 lauterbach






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 13 '18 at 11:19









RajRaj

11




11












  • I am not sure what you are asking exactly. Please improve you question. E.g. How do you indicate that the script is not working on the second run? The WHILE statement in your script is commented. What was your intention to keep it in your example? Also &destadd is not used. Please reduce your example to the bare minimum.

    – Holger
    Nov 13 '18 at 13:01











  • Thanks much for your kind response and sorry for the incomplete information. Actually I would like to write 0xdeadface value to 0x5000_0000 to 0x5070_0000 range, but with this code, firstly I am trying to learn the 'repeat' (and/or 'while') syntax (thats why I commented out 'while' for now) to access 100*4 bytes of data from 0x5000_0000 address. Can I have simple t32 cmm script which can test the memory for 1MiB i.e read/write/verify.

    – Raj
    Nov 13 '18 at 17:34












  • For just writing 0xdeadface to ND:0x10:0x50000000 to ND:0x10:0x50000400 your script looks alright. However you can have that simpler with the single command Data.Set ND:0x10:0x50000000++0xff %LE %Long 0xdeadface. For read-back and check use PRACTICE function Data.Long(<addr>) in an IF statement. For testing memory you can also use command Data.Test ND:0x10:0x50000000++0xff

    – Holger
    Nov 14 '18 at 12:54












  • If you want to test your memory you could also look into "Data.Test".

    – dev15
    Nov 15 '18 at 7:45

















  • I am not sure what you are asking exactly. Please improve you question. E.g. How do you indicate that the script is not working on the second run? The WHILE statement in your script is commented. What was your intention to keep it in your example? Also &destadd is not used. Please reduce your example to the bare minimum.

    – Holger
    Nov 13 '18 at 13:01











  • Thanks much for your kind response and sorry for the incomplete information. Actually I would like to write 0xdeadface value to 0x5000_0000 to 0x5070_0000 range, but with this code, firstly I am trying to learn the 'repeat' (and/or 'while') syntax (thats why I commented out 'while' for now) to access 100*4 bytes of data from 0x5000_0000 address. Can I have simple t32 cmm script which can test the memory for 1MiB i.e read/write/verify.

    – Raj
    Nov 13 '18 at 17:34












  • For just writing 0xdeadface to ND:0x10:0x50000000 to ND:0x10:0x50000400 your script looks alright. However you can have that simpler with the single command Data.Set ND:0x10:0x50000000++0xff %LE %Long 0xdeadface. For read-back and check use PRACTICE function Data.Long(<addr>) in an IF statement. For testing memory you can also use command Data.Test ND:0x10:0x50000000++0xff

    – Holger
    Nov 14 '18 at 12:54












  • If you want to test your memory you could also look into "Data.Test".

    – dev15
    Nov 15 '18 at 7:45
















I am not sure what you are asking exactly. Please improve you question. E.g. How do you indicate that the script is not working on the second run? The WHILE statement in your script is commented. What was your intention to keep it in your example? Also &destadd is not used. Please reduce your example to the bare minimum.

– Holger
Nov 13 '18 at 13:01





I am not sure what you are asking exactly. Please improve you question. E.g. How do you indicate that the script is not working on the second run? The WHILE statement in your script is commented. What was your intention to keep it in your example? Also &destadd is not used. Please reduce your example to the bare minimum.

– Holger
Nov 13 '18 at 13:01













Thanks much for your kind response and sorry for the incomplete information. Actually I would like to write 0xdeadface value to 0x5000_0000 to 0x5070_0000 range, but with this code, firstly I am trying to learn the 'repeat' (and/or 'while') syntax (thats why I commented out 'while' for now) to access 100*4 bytes of data from 0x5000_0000 address. Can I have simple t32 cmm script which can test the memory for 1MiB i.e read/write/verify.

– Raj
Nov 13 '18 at 17:34






Thanks much for your kind response and sorry for the incomplete information. Actually I would like to write 0xdeadface value to 0x5000_0000 to 0x5070_0000 range, but with this code, firstly I am trying to learn the 'repeat' (and/or 'while') syntax (thats why I commented out 'while' for now) to access 100*4 bytes of data from 0x5000_0000 address. Can I have simple t32 cmm script which can test the memory for 1MiB i.e read/write/verify.

– Raj
Nov 13 '18 at 17:34














For just writing 0xdeadface to ND:0x10:0x50000000 to ND:0x10:0x50000400 your script looks alright. However you can have that simpler with the single command Data.Set ND:0x10:0x50000000++0xff %LE %Long 0xdeadface. For read-back and check use PRACTICE function Data.Long(<addr>) in an IF statement. For testing memory you can also use command Data.Test ND:0x10:0x50000000++0xff

– Holger
Nov 14 '18 at 12:54






For just writing 0xdeadface to ND:0x10:0x50000000 to ND:0x10:0x50000400 your script looks alright. However you can have that simpler with the single command Data.Set ND:0x10:0x50000000++0xff %LE %Long 0xdeadface. For read-back and check use PRACTICE function Data.Long(<addr>) in an IF statement. For testing memory you can also use command Data.Test ND:0x10:0x50000000++0xff

– Holger
Nov 14 '18 at 12:54














If you want to test your memory you could also look into "Data.Test".

– dev15
Nov 15 '18 at 7:45





If you want to test your memory you could also look into "Data.Test".

– dev15
Nov 15 '18 at 7:45












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53279894%2ftrace32-cmm-script%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes















draft saved

draft discarded
















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53279894%2ftrace32-cmm-script%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Use pre created SQLite database for Android project in kotlin

Darth Vader #20

Ondo