Conditional STOP (CNDSTP) command
When testing NAND Falsh Memory, for example, when errors exceed a specified value, you may want to stop or switch to another process.
Script do not have an IF statement function, but the CNDSTP command can be used to stop script execution or switch script files when the specified conditions are met.
This makes it possible to efficiently perform NAND Flash Memory evaluation screening.
Command Format
Stops when only parameter is specified, and switches Script File when parameter and file name are specified.
Multiple stop conditions can be enabled by executing this command multiple times.
If the same stop condition is set multiple times, only the parameter and file name set last will be valid.
Example
Condition STOP.ssl
- 'SET BLOCK
- VSET04 0 0000
- 'SET PAGE
- VSET04 1 0001
- 'BUSY TIME ON
- BUSYTM 1
- FNRSLT 0 RESULT.rst
- FNDUMP 0 DUMP.dmp
- FNCOMP 0 COMP.cmp
- FNECNT 0 ERROR.err
- PRTSTR 01 -----RESULT-----
- PRTSTR 02 ----- DUMP -----
- PRTSTR 04 ----- COMP -----
- PRTSTR 08 -----ERROR -----
- 'BLOCK ERASE
- BKERAS 0 $V04_0$
- 'Busy time over check
- CNDSTP 0002 00000050 Time-Over.ssl
- 'PAGE Program
- PGPROG 0 $V04_0$ $V04_1$ INCRMT 03020100 04040404
- 'Page Read & Dump
- PGRDDM 0 $V04_0$ $V04_1$ 0006
- PRTSTR 04 ---Read & Compare---
- 'Error number check (per 4bytes)
- CNDSTP 0011 00000005
- PGRDCP 0 $V04_0$ $V04_1$ 0006 INCRMT 03020100 04040403
- PRTSTR 08 ---Read & ERR Count---
- 'Bit Error number check
- CNDSTP 0023 00008000
- PGRDEC 0 $V04_0$ $V04_1$ INCRMT 03020100 04040403
- PRTSTR 01 ----- END with No Error -----
Time-Over.ssl
- PRTSTR 01 ---Time Over---
Execution result
ex1. without Stop condition
When lines 23, 33, and 38 are all comment lines
Result.rst
-----result----- (Line14)
BusyTime (Line20) CH0:4551
BusyTime (Line26) CH0:216
BusyTime (Line29) CH0:38
BusyTime (Line34) CH0:38
BusyTime (Line39) CH0:38
----- end with no error ----- (Line41)
Done 00h00m00s
ex2. Stop condition:Busy Time
CNDSTP on only line 23 is enabled
Result.rst
-----result----- (Line14)
BusyTime (Line20) CH0:4550
BusyTime (Line26) CH0:216
---time over--- (Line27)
Done 00h00m00s
ex3. Stop condition:Error Number
CNDSTP on only line 33 is enabled
Result.rst
-----result----- (Line14)
BusyTime (Line20) CH0:4551
BusyTime (Line26) CH0:216
BusyTime (Line29) CH0:38
BusyTime (Line34) CH0:38
Conditional Stop at Line34 (ErrorNum = 5) 00h00m00s
Dump.dmp
Line Cnt Channel Chip Block Page WordNo Dump
----- dump -----
0000001D 00000001 00 0 0000 0001 0000 03020100
0000001D 00000001 00 0 0000 0001 0001 07060504
0000001D 00000001 00 0 0000 0001 0002 0B0A0908
0000001D 00000001 00 0 0000 0001 0003 0F0E0D0C
0000001D 00000001 00 0 0000 0001 0004 13121110
0000001D 00000001 00 0 0000 0001 0005 17161514
Comp.cmp
Line Cnt Channel Chip Block Page WordNo Comp
----- comp -----
---read & compare---
00000022 00000001 00 0 0000 0001 0001 00000007
00000022 00000001 00 0 0000 0001 0002 0000000E
00000022 00000001 00 0 0000 0001 0003 00000005
00000022 00000001 00 0 0000 0001 0004 0000001C
00000022 00000001 00 0 0000 0001 0005 0000001B
ex4. Stop condition:Bit Error Number
CNDSTP on only line 38 is enabled
Result.rst
-----result----- (Line14)
BusyTime (Line20) CH0:4550
BusyTime (Line26) CH0:216
BusyTime (Line26) CH0:216
BusyTime (Line34) CH0:38
BusyTime (Line39) CH0:38
Conditional Stop at Line39 (BitErrorNum < 32768) 00h00m00s
Error.err ファイルの内容
Line Cnt Channel Chip Block Page BitError
-----error -----
---read & err count---
00000027 00000001 00 0 0000 0001 00007DE8
(27hex = 39dec) (7DE8hex=32232)
Ref:Conditions for Conditional Stop (Excerpt from Operation Guide)
*1. The number of errors is counted in units of 4 bytes. If 4 bytes contain an error of 1 bit or more, it is counted as 1 error.
*2. If BKRDCP and BKRDEC are issued, stop judgment is made based on the number of errors in the entire block.
*3. The unit of Busy Time is usec. Specify with 8 hexadecimal digits.