Tips of Script programming
Script can be used even by programming beginners by writing simple commands and parameter combinations.
Its commands are all six-character strings, allowing for intuitive associations with functions. (See Operational Guide "Example of script file")
In addition, scripts created by yourself can be checked by the "Script Check Mode" function before execution.
This section provides more detailed explanations of command functions that users have inquired about and that may be a little difficult to understand and easily misunderstood from the description in the operation guide alone.
REPEAT
REPEAT Number of lines repeated (Hex 7 digits) Number of times repeated (Hex 7 digits)
Repeat Lines executes the range of Scripts specified in Repeat Lines for the number of times specified in Repeat Count.
1. Comment lines are also included in the number of repeated lines.
Verification Scripts
- VSET04 01 1234
- REPEAT 0000003 0000003
- 'Dummy-1
- PRTSTR 01 A $V04_01$
- PRTSTR 01 B
- PRTSTR 01 C
Execution result (contents of Result file)
- a 1234 (Line3)
- b (Line3)
- a 1234 (Line3)
- b (Line3)
- a 1234 (Line3)
- b (Line3)
- c (Line7)
2. Cannot be nested more than twice
There is no problem using REPEAT on the 3rd and 10th lines in the REPEAT on the first line of the script below,
But It is not allowed to use REPEAT again between the 4th to 7th line.
1 | REPEAT 000000C 000000A |
2 | BUSYTM 0 |
3 | REPEAT 0000004 0000032 |
4 | BKPROG 0 03DA INCRMT AAAAAAAA 00000000 |
5 | BKERAS 0 03DA |
6 | BKPROG 0 03DA INCRMT 55555555 00000000 |
7 | BKERAS 0 03DA |
8 | BUSYTM 1 |
9 | VSET04 00 0000 |
10 | REPEAT 0000002 0000040 |
11 | PGPROG 0 03DA $V04_00$ INCRMT 00000000 00000000 |
12 | VADD04 00 0001 |
13 | BKERAS 0 03DA |
FNSCRT
FNSCRT file name
Switch Script File.
Script File has an absolute path or an executable file of analysis software (SigNAS3.exe)
Specify with a relative path from the folder.
This command cannot be included in a script that repeats processing with REPEAT.
The value of the variable is inherited as is.
Validation Script
TEST-1
- VSET04 0 0000
- PRTSTR 01 TEST-1
- REPEAT 0000002 0000002
- PRTSTR 01 $V04_0$
- VADD04 0 0001
- FNSCRT TEST-2.ssl
TEST-2
- PRTSTR 01 TEST-2
- REPEAT 0000002 0000002
- PRTSTR 01 $V04_0$
- VADD04 0 0001
- test-1 (Line2)
- 0000 (Line3)
- 0001 (Line3)
- test-2 (Line7)
- 0002 (Line8)
- 0003 (Line8)
Execution Result (Contents of Result file)
Increment Pattern
After running the program, you may find something unnatural about the results of the dump of read data (see below).
- BKERAS 0 0000
- PGPROG 0 000 000 INCRMT 03020100 04040404
- PGREAD 0 0000 000
- PGDUMP 0 0800
Because increments of 4Byte units are displayed for every 1Byte,
Adding 04 04 04 04 toFF FE FD FC, resulting in 04 03 02 00 due to byte carry forward..
SETBUF
You can easily program arbitrary patterns created in advance by the user as shown in the figure below.
SETBUF BUFFER.txt
PGPROG 0 0001 0010 BUFFER 0000
How to create a large amount of PatternData
It can also be created using the Pattern Setting function of SigNAS3.
After selecting the pattern and file format, click Write to File to start recording.
In the example below, it is BlockProgram, so it is recorded up to the size (number of pages) set by NANDSetting separately and completed.
※Please set SEED of Pseudo Random Pattern to other than 0.
If 0 is set, it will not be Random Pattern and will be all 0.
Pattern data saved in a file can be used as in the following script.
SETBUF pattern.dat
BKPROG $V01_00$ $V04_00$ BUFATA
About processing time
Data comparisons using buffers require more processing time than All0, increment, random, etc.
TSTAMP
The time saved in the Result File is the elapsed time since the start of the script execution, displayed in decimal, in milliseconds.
Others
1. Progress monitor during script execution
Logs (RST file, etc.) can be opened and checked during measurement.
Also, even if you abort during execution, the execution results up to that point are recorded.
2. Stopped during script execution?
To prevent the Script from stopping the measurement due to a problem with the NAND Flash Memory chip to be measured (e.g., a specific block cannot be erased), uncheck the "Terminate with NAND Fail" checkbox and disable the function.
3. Feasible functional freedom
Scripts and GUIs are basically based on APIs.
The degree of freedom of achievable functions is API > Script > GUI.
For example, with APIs, there is virtually no limit to the number of nesting REPEATs.