Home

Verification Script Engine Reference Manual

image

Contents

1. STATUS 23 16 Status ERROR 31 24 Error Contains the new value of the Er LBA LO 39 32 7 0 LBA MID 47 40 LBA 15 8 LBA HI 55 48 LBA 23 16 DEVICE 63 56 Device LBA LO EXP 71 64 LBA 31 24 MID EXP 79 27 39 32 HI EXP 87 80 47 40 RSVD2 95 88 Reserved COUNT 103 96 Count 7 0 COUNT EXP 111 104 Count 15 8 RSVD 127 112 Reserved DSFIS TYPE 07 00 FIS Type PMP 11 08 The Port Multiplier Port RSVD4 12 Reserved D 13 Direction 14 Interrupt A 15 Auto Activate RSVD3 31 16 Reserved DMA BI LO 63 32 DMA Buffer Identifier Low DMA BI HI 95 64 DMA Buffer Identifier High RSVD2 127 96 Reserved BO 159 128 DMA Buffer Offset TC 191 160 DMA Transfer Count RSVD 223 192 Reserved PSFIS TYPE 07 00 FIS Type PMP 11 08 The Port Multiplier Port RSVD5 12 Reserved D 13 Direction 14 Interrupt RSVD4 15 Reserved STATUS 23 16 Status ERROR 31 24 Error LBA_LO 39 32 LBA 7 0 LBA_MID 47 40 LBA 15 8 LBA_HI 55 48 LBA 23 16 DEVICE 63 56 Device MID EXP 71 64 LBA 39 32 Teledyne LeCroy Verification Script Engine Reference Manual LBA HI EXP 79 72 LBA 47 40 RSVD3 87 80 Reserved COUNT 95 88 Co
2. 74 7 SENDDLER TYRE O tratta 0 dol ac a ao cao a d o da oa a aot catenae 75 8 13 FILTERDELPIY PE sittin bon nacs nan n addc qd cmd d 76 SEND TER TYRE ista 03 0 2015303031 23 00 3 20303 031 3 23 0 telat alia telltale el a aol d armies 77 8 15 RIETERTERTY 78 9 16 79 9 17 SFIETEHORBDEREDSETDIYPE 0 0 9 0 aaa aos 80 9 TIMER 5 81 Table of Contents Teledyne LeCroy Verification Script Engine Reference Manual 9 1 VSE TIME OBJECT 555 EcL ote eee E 81 9 2 SETTIMER i iii TEE Saas hee 82 9 3 KIGETIMERQ sa stie RERORER URURSERBERRPERSEPRPRPERSEB II eie sulcis ct Ic e e roc Lobod ole 83 9 4 GET TIMER TIME a it ERE I Ite p Fri oe I Erie mrs RW SEAGER ERR 84 10 TIME CONSTRUCTION FUNCTIONCS eeseeeeeeeeeeess
3. NUMBER OF 44 127 0 Number of Error Information ERROR INF Log Entries ORMATION L OG ENTRIES RSVD2 48 2559 Reserved 0 GetLogPage GetLogPage 502 0 2 0 Active Firmware Info Bits 2 0 Firmware Slot RSVD 0 3 Reserved Information AFI_BITS4 6 0 6 4 Active Firmware Info Bits 6 4 RSVD1 0 7 Reserved RSVD2 0 63 8 Reserved FRS1 2 63 0 Firmware Revision for Slot 1 FRS2 4 63 0 Firmware Revision for Slot 2 FRS3 6 63 0 Firmware Revision for Slot 3 FRS4 8 63 0 Firmware Revision for Slot 4 FRS5 10 63 0 Firmware Revision for Slot 5 FRS6 12 63 0 Firmware Revision for Slot 6 FRS7 14 63 0 Firmware Revision for Slot 7 RSVD3 16 3583 Reserved 0 GetLogPage GetLogPage LOG_PAGE_ 0 63 0 Log Page Count Reservation COUNT Notification RN LOG PA 2 7 0 Reservation Notification Log GE TYPE Page Type NUMBER OF 2 15 8 Number of Available Log AVAILABLE _ Pages LOG PAGES RSVD 2 31 16 Reserved NAMESPACE 3 31 0 Namespace ID _ID RSVD1 4 415 0 Reserved Identify Identify_PSD lt index gt MP 0 15 0 Maximum Power Controller RSVD11 0 23 16 Reserved Power State Descriptor MPS 0 24 Max Power Scale NOPS 0 25 Non Operational State RSVD12 0 31 26 Reserved ENLAT 1 31 0 Entry Latency EXLAT 2 31 0 Exit Latency RRT 3 4 0 Relative Read Throughput RSVD13 3 7 5 Reserved RRL 3 12 8 Relative Read Latency RSVD14 3 15 13 Reserved RWT 3 20 16 Relati
4. INFS 26 Interface Non fatal Error Status IFS 27 Interface Fatal Error Status HBDS 28 Host Bus Data Error Status HBFS 29 Host Bus Fatal Error Status TFES 30 Task File Error Status CPDS 31 Cold Port Detect Status PxIE DHRE 00 Device to Host Register FIS Interrupt Enable PSE 01 PIO Setup FIS Interrupt Enable DSE 02 DMA Setup FIS Interrupt Enable SDBE 03 Set Device Bits FIS Interrupt Enable UFE 04 Unknown FIS Interrupt Enable DPE 05 Descriptor Processed Interrupt Enable PCE 06 Port Change Interrupt Enable DMPE 07 Device Mechanical Presence Enable RSVD2 21 08 Reserved PRCE 22 PhyRdy Change Interrupt Enable IPME 23 Incorrect Port Multiplier Enable OFE 24 Overflow Enable RSVD 25 Reserved INFE 26 Interface Non fatal Error Enable IFE 27 Interface Fatal Error Enable HBDE 28 Host Bus Data Error Enable HBFE 29 Host Bus Fatal Error Enable TFEE 30 Task File Error Enable CPDE 31 Cold Presence Detect Enable PxCMD ST 00 Start SUD 01 Spin Up Device POD 02 Power On Device CLO 03 Command List Override FRE 04 FIS Receive Enable RSVD 07 05 Reserved CSS 12 08 Current Command Slot MPSS 13 Mechanical Presence Switch State FR 14 FIS Receive Running CR 15 Command List Running CPS 16 Cold Presence State PMA 17 Port Multiplier Attached HPCP 18 Hot Plug Capable Port MPSP 19 Mechanical Presence Switch Attached to Port 48 Teledyne LeCroy Verification Scr
5. ATTR ALHD 26 Activity LED Hardware Driven ATTR PM 27 Port Multiplier Support RSVD 31 28 Reserved CAP2 BOH 00 BIOS OS Handoff NVMP 01 NVMHCI Present APST 02 Automatic Partial to Slumber Transitions SDS 03 Supports Device Sleep SADM 04 Supports Aggressive Device Sleep Management DESO 05 DevSleep Entrance from Slumber Only RSVD 31 06 Reserved BOHC BOS 00 BIOS Owned Semaphore OOS 01 OS Owned Semaphore SOOE 02 SMI on OS Ownership Change Enable OOC 03 OS Ownership Change BB 04 BIOS Busy RSVD 31 05 Reserved RSVD HBA Reserved RSVD NVMHCI Reserved for NVMHCI HBA VENDOR SPECIFIC Venfor specific Port registers PxCLB RSVD 09 00 Reserved CLB 31 10 Command List Base Address PxCLBU CLBU 31 00 Command List Base Address Upper PxFB RSVD 07 00 Reserved FB 31 08 FIS Base Address PxFBU FBU 31 00 FIS Base Address Upper 5 DHRS 00 Device to Host Register FIS Interrupt PSS 01 PIO Setup FIS Interrupt DSS 02 DMA Setup FIS Interrupt SDBS 03 Set Device Bits Interrupt UFS 04 Unknown FIS Interrupt DPS 05 Descriptor Processed PCS 06 Port Connect Change Status DMPS 07 Device Mechanical Presence Status RSVD2 21 08 Reserved PRCS 22 PhyRdy Change Status IPMS 23 Incorrect Port Multiplier Status OFS 24 Overflow Status RSVD1 25 Reserved 47 Teledyne LeCroy Verification Script Engine Reference Manual
6. DWORD in bits Asynchronous AsyncEventRequest AE_TYPE 0 2 0 Asynchronous Event Type Event Request RSVD 0 7 3 Reserved AE_INFO 0 15 8 Asynchronous Event Information ASSOCIATED 0 23 16 Associated Log Page LOG PAGE RSVD1 0 31 24 Reserved Get Set GetFeatures NSQA 0 15 0 Number of I O Submission Features SetFeatures Queues Allocated Number of R NCQA 0 31 16 Number of I O Completion Queues Allocated Payload Data Command Parameter Fields starting Offset Meaning DWORD in bits Get Set GetFeatures TYPE 0 7 0 Attributes Features LBA SetFeatures ATTRIBUTES 0 8 Attributes bit 0 Range Type BITO ATTRIBUTES 0 9 Attributes bit 1 _BIT1 RSVD 0 15 10 Reserved RSVD1 0 127 1 Reserved 6 SLBA 4 63 0 Starting LBA NLB 6 63 0 Number of logical blocks GUID 8 127 0 Unique Identifier RSVD2 12 127 0 Reserved Get Set GetFeatures RSVD 0 2 0 Reserved Features SetFeatures ITPS 0 7 3 Idle Transition Power State Autonomous Power State ITPT 0 31 8 Idle Time Prior to Transition Transition RSVD1 1 31 0 Reserved Get Set GetFeatures HOSTID 0 63 0 Host Identifier Features Host SetFeatures Identifier GetLogPage GetLogPage ERROR COU 0 63 0 Error Count Error NT Information SUB Q ID 2 15 0 Submission Queue ID COMMAND 2 31 16 Command ID D STATUS FIE 3 15 0 Status Field LD BYTE WITH 3 23 16 Parameter Error Location ERROR Byte BIT WITH E 3 26 24 P
7. MyFunction arg if arg My Arg return 1 return 0 FEE EEE EAA AE HE FE E FE E AEE EE HE FE AE EAE BE HE EAE FE AE FE FE FE FE HE FE E FE FE FE FE FE EE AE FE FE FE FE FE FE E FE AE FE FE FE FE HE FE E FE AE FE FE EE AE EA HE BE EEE Teledyne LeCroy Verification Script Engine Reference Manual 3 Interaction between PCle Protocol Suite and a verification script When a user runs a script against a pre recorded trace the following sequence occurs 1 Prior to sending information to the script s main processing function ProcessEvent VSE looks for the function OnStartScript and calls it if it is found In this function setup actions are defined such as specifying the kind of trace events that should be passed to the script and setting up initial values for script specific global variables Next the VSE parses the recorded trace to verify that the current packet or other event meets specific criteria if it does VSE calls the script s main processing function ProcessEvent placing information about the current event in the script s input context variables Please refer to the topic Input context variables later in this document for a full description of verification script input context variables ProcessEvent is the main verification routine for processing incoming trace events This function must be present in all verification scripts When the verification program consist
8. NVM command contains submission queue entry in nvmcHasOutput NVM command contains completion queue entry in nvmclsAdminCommand If set to a non zero value indicates NVM command is admin in nvmcNamespaceld Returns namespace in nvmcErrorld Returns NVM error with the smallest numeric encoding The following possible values are defined by VSE and the corresponding constants can be used by scripts Error type Value Error name Error description _ NVMC ERROR NO ERROR 0 No error errors Incomplete Sub Incomplete Sub NVMC ERROR INCOMPLETE SUB TRA 1 Transaction Transaction NVMC_ERROR_SUB_TRA_HAS_ERROR Error in Sub Transaction Transaction _ NVMC ERROR INCOMPLETE TRA Incomplete Transaction Incomplete command _ NVMC ERROR LOGICAL ERROR 4 Logical Error Logical error in nvmcErrorldAsString Contains an NVM error name in nvmcTraHasError If set to a non zero value indicates NVM command has errors in nvmcNumBytesTransferred Returns amount of transferred data by command in bytes in nvmcNumBytesRequested Returns number bytes requested by command in nvmcUtilizesPRP If set to a non zero value indicates that command uses PRP instead of SGL The following table shows the list of NVM commands and their fields defined in the input context The fields can be accessed by using E g in CreatelOCQ PC contains the numeric encoding of the PC field of Create I O
9. Remark This function works only for VS Engines controlled via the GUI For VSEs controlled by COM Automation clients it does nothing This function locks the PCle Protocol Suite application which means that there is no access to other application features until the dialog box is closed In order to prevent too many InputBox calls in the case of a script not written correctly VSE keeps track of all function calls demanding user interaction and doesn t show dialog boxes if a customizable limit was exceeded returns null object in that case Example if Something InputBox Enter the list Some stuff Hello world 0x12AAA Some 34 ReportText FormatEx input s 0 ss Sd v 0 v 1 v 2 v 3 Go on str InputBox Enter the string Some stuff lt your string gt IB STRING ReportText str 115 Teledyne LeCroy Verification Script Engine Reference Manual 19 3 GetUserDIgLimit This function returns the current limit of user dialogs allowed in the verification script If the script reaches this limit no user dialogs are shown and the script does not stop By default this limit is set to 20 Format GetUserDIgLimit Example result MsgBox Format UserDlgLimit d GetUserDlgLimit MB OKCANCEL EXCLAMATION Some Title SetUserDlgLimit 2 set the limit to 2 116 Teledyne LeCroy Verificatio
10. EE EE EE EE aE aE EEE EE EE EH OnFinishScript FE AE HETE HE FE FE TE HE FE FE HE FE FE TE AE HE FE FE TE AE HE FE FE FE AE FE FE FE TE AE FE FE FE FE AE FE FE FE FE E FE FE FE FE HE FE FE TE FE FE FE FE FE TE AE HE FE FE TE AE HE FE FE TE AE HE FE FE E E E E E E E TEHEAHETE HE E FE HE FE FE E FE HE FE FE HH FE FE HE FE E FE FE FE FE HE HE FE FE FE FE FE FE E FE FE FE FE EE HE FE FE FE FE HE FE E FE FE FE FE FE HE FE E FE FE FE FE HE HE FE ETH FE FE E FE FE FE FE RHE FE FE HE FE HE HE HH HE It is a main script function called by the application when the script completed running Specify in this function some resetting procedures for a successive run of this script OPTIONAL TEHEAHETE FE HE FE E FE FE HE FE HE FE FE FE E FE FE HE FE E FE FE FE FE HE HE FE FE FE FE FE FE E FE FE FE FE FE HE FE FE FE FE FE FE E FE FE FE FE RHE FE FE FE FE HE HE FE FE FE FE FE FE E FE FE FE FE RHE FE FE BG OnFinishScript return 0
11. REG Transactions that use Ports registers _ PORT REG Transactions that use Command list registers _ CMND LIST Transaction uses FIS registers _ RECEIVED FIS Transaction uses Command table registers _ CMND TABLE 7 7 ATA Transaction level events ATA level introduces no events Use SendAllTraceEvents function to get ATA events 62 Teledyne LeCroy Verification Script Engine Reference Manual 8 Sending Functions This topic contains information about the special group of VSE functions designed to specify which events the verification script should expect to receive 81 SendLevel This function specifies that events of the specified transaction level should be sent to the script Format SendLevel level Parameters level Can have one of following values PACKET value 0 Send Packet level events LINK value 1 Send Link Transaction level events _ SPLIT value 2 Send Split Transaction level events NVME value 3 Send NVM Transaction level events NVMC value 9 Send NVM Command level events _AHCI value 5 Send AHCI Transaction level events _ATA value 6 Send ATA Transaction level events Example SendLevel _PACKET Send packet level events Remark If no level was specified events of Packet level are sent to the script by default 63 Teledyne LeCroy 8 2 SendLevelOnly Verification Script Engine Reference Manual This function specifies that ONLY
12. Transactions that read or write controller register NVME CONTROLLER REG 60 Teledyne LeCroy Verification Script Engine Reference Manual Transactions that write doorbell register NVME DOORBELL REG Transactions that transfer admin submission command NVME ADMIN SUBMISSION CMD Transactions that transfer NVM submission command NVME NVM SUBMISSION CMD Transactions that transfer NVM or admin completion command NVME COMPLETION CMD Transactions that target idx dat registers registers that are at fixed offset from BAR2 NVME IDX DAT REG Transactions that target data which is referenced by PRP or SGL NVME TRANSFERED DATA Generated for all PRP list transactions NVME PRP Generated for all SGL descriptors transactions NVME SGL 7 5 NVM Command level events NVM Command level introduces own events The table below describes the current list of NVM Command events transaction level and value of in TraceEvent Types of NVM Commands in TraceEvent Admin command NVMC ADMIN COMMAND NVM command NVMC COMMAND Security command NVMC SECURITY COMMAND Flush command NVMC FLUSH Write command NVMC WRITE Read command NVMC READ Write Uncorrectable command NVMC WRITE UNCORRECTABLE Compare command NVMC COMPARE Write Zeros command NVMC WRITE ZEROES
13. Integer Unsigned hexadecimal integer using ABCDEF aoj X x c o String String 118 Teledyne LeCroy Verification Script Engine Reference Manual Remark A conversion specification begins with a percent sign 9e and ends with a conversion character The following optional items can be included in order between the and the conversion character to further control argument formatting e Flag characters are used to further specify the formatting There are five flag characters A minus sign causes an argument to be left aligned in its field Without the minus sign the default position of the argument is right aligned e Aplus sign inserts a plus sign before a positive signed integer This only works with the conversion characters d and i A space inserts a space before a positive signed integer This only works with the conversion characters d and i If both a space and a plus sign are used the space flag is ignored Ahash mark prepends a 0 to an octal number when used with the conversion character If is used with x or X it prepends Ox or OX to a hexadecimal number e Azero 0 pads the field with zeros instead of with spaces e Field width specification is a positive integer that defines the field width in spaces of the converted argument If the number of characters in the argument is smaller than the field width then the field is padded with spaces If the argument has m
14. 0x4 PIO Data Out command _ATA_PROTOCOL_DM 0x8 DMA command _ATA_PROTOCOL_DMQ 0x10 DMA QUEUED command _ATA PROTOCOL DR 0x20 DEVICE RESET command ATA PROTOCOL DD 0x40 EXECUTE DEVICE DIAGNOSTIC command ATA PROTOCOL P 0x80 PACKET command ATA PROTOCOL VS 0x100 Vendor specific in ataTraHasError If set to a non zero value indicates ATA command has errors in ataErrorld Contains the numeric encoding of the ATA error type The following possible values are defined by VSE and the corresponding constants can be used by scripts Error type Value Error name Error description _ATA_ERROR_WRONG_SUB_TRA 0 Error in Sub Transaction ATA command contains sub transaction with error in it for example AHCI _ATA_ERROR_INCOMPLETE_SUB_TRA 1 Incomplete Sub Transaction ATA command contains incomplete sub transaction for example AHCI 56 Teledyne LeCroy Verification Script Engine Reference Manual ATA ERROR INCOMPLETE TRA 2 Incomplete transaction Incomplete ATA transaction ATA ERROR LOGICAL ERROR 3 Logical error Wrong command order wrong amount of data transferred etc ATA ERROR ERROR SET 4 Error bit set Command has error bit set to 1 ATA ERROR SHADOW ERROR 5 Shadow error bit set Shadow error byte in AHCI is set ATA ERROR NO ERROR 7 No error Correct transaction in ATAErrorldAsString Contains an ATA error name in ataPort Contains port number
15. Dataset Management command NVMC DATASET MGMT Reservation Register command NVMC RESERVATION REGISTER Reservation Report command NVMC RESERVATION REPORT Reservation Acquire command NVMC RESERVATION ACQUIRE Reservation Release command NVMC RESERVATION RELEASE Delete Submission Queue command NVMC DELETE IO SQ Create Submission Queue command NVMC CREATE IO SQ Get Log Page command NVMC GET LOG PAGE Delete Completion Queue command NVMC DELETE IO CQ Create Completion Queue command NVMC CREATE IO CQ Identity command NVMC IDENTIFY Abort command NVMC ABORT Set Feature command NVMC SET FEATURE 61 Teledyne LeCroy Verification Script Engine Reference Manual Get Feature command NVMC GET FEATURE Asynchronous Event Request NVMC ASYNC EVENT REQUEST command Firmware Activate command _ NVMC FIRMWARE ACTIVATE Firmware Image Download command NVMC FIRMWARE IMG DOWNLOAD Format NVM command NVMC FORMAT NVM Security Send command NVMC SECURITY SEND Security Receive command NVMC SECURITY RECEIVE 7 6 AHCI Transaction level events The table below describes the current list of AHCI Transaction events transaction level 5 and value of in TraceEvent Types of AHCI Transactions in TraceEvent Transactions that use registers _
16. 5 Verification Script Engine Input Context Members All verification scripts have input contexts some special structures whose members are filled by the application and can be used inside of the scripts for more details about input contexts please refer to the CATC Script Language CSL Manual The verification script input contexts have two sets of members e Trace event independent set of members e Trace event dependent set of members 5 1 Trace event independent set of members This set of members is defined and can be used for any event passed to script in Level Transaction level of the trace event 0 packets 1 link transactions 2 split transactions 3 transactions 5 AHCI transactions 6 ATA transactions 9 commands in Index Index of the event in the trace file frame number for frames sequence number for sequences in Time Time of the event type list having the format 2 sec 125 ns 2 125 See 9 1 VSE Time Object for details in Channel Channel where the event occured may be CHANNEL 1 1 or CHANNEL 2 2 indicating which direction of the PE link the event occurred in TraceEvent Type of trace event application predefined constants are used See the list of possible events below in Notification Type of notification application predefined constants are used Currently no notifications are defined 11 Teledyne LeCroy Verification Script Engine Reference Manual
17. ATA RESERVED 1 ATA CFA REQUEST EXTENDED ERROR 2 ATA DATA SET MANAGEMENT 3 ATA DEVICE RESET 4 ATA REQUEST SENSE DATA EXT 5 ATA OBSOLETE 6 ATA RETIRED 7 ATA READ SECTORS 8 ATA READ SECTORS EXT 9 ATA READ DMA EXT 10 ATA READ NATIVE MAX ADDRESS EXT 11 ATA READ MULTIPLE EXT 12 ATA READ STREAM EXT 13 ATA READ STREAM EXT 14 ATA READ LOG EXT 15 ATA WHITE SECTORS 16 _ WHITE SECTOHRS EXT 17 ATA WRITE EXT 18 ATA SET MAX ADDRESS EXT 19 ATA CFA WRITE 5 5 WITHOUT ERASE 20 ATA WHITE SECTORS 21 _ WRITE SECTOHRS EXT 22 ATA WHITE STREAM EXT 23 ATA WHITE DMA FUA EXT 24 ATA WRITE LOG EXT 25 _ READ VERIFY SECTORS 26 ATA READ VERIFY SECTORS EXT 27 ATA WRITE UNCORRECTABLE EXT 28 54 Teledyne LeCroy Verification Script Engine Reference Manual ATA READ LOG DMA EXT 29 ATA CONFIGURE STREAM 30 ATA WRITE LOG EXT 31 ATA TRUSTED NON DATA 32 ATA TRUSTED RECEIVE 33 TRUSTED RECEIVE 34 ATA TRUSTED SEND 35 TRUSTED SEND 36 ATA READ FPDMA QUEUED 37 ATA WRITE FPDMA QUEUED 38 ATA VENDOR SPECIFIC 39 ATA CFA TRANSLATE SECTOR 40 EXECUTE DEVICE DIAGNOSTIC 41 ATA DOWNLOAD MICROCODE 42 DOWNLOAD MICROCODE 43 ATA PACKET 44 ATA IDENTIFY PACKET DEVICE 45 ATA SMART 46 ATA DEVICE CONFIGURATION OVERLAY 47 ATA SANITIZE DEVICE 48 A
18. COM clients connected to a PCle Protocol Suite application Teledyne LeCroy Verification Script Engine Reference Manual 2 Verification Script Structure Writing a verification script is easy as long as you follow a few rules and have some understanding of how the PCle Protocol Suite application interacts with running scripts The main script file that contains the text of the verification script should have extension pevs and be located in the subfolder Scripts VFScripts of the main PCle Protocol Suite folder Some other files might be included in the main script file using directive include see the Teledyne LeCroy PCle Protocol Suite File Based Decoding user manual for details The following schema presents a common structure of a verification script this is similar to the content of the script template VSTemplate pev which is included with VSE VS1 pevs Verification script Brief Description Performs specific verification Module info FEFEFE FE HE FE E FE TE HE FE HE FE FE FE HE FE E FE TE FE FE HE FE FE FE FE FE FE E FE FE FE TE HE FE E FE FE FE FE HE FE E FE TE FE FE E FE FE FE TE HE FE E FE TE FE TE HE FE E FE TE FE FE HE FE E FE TE FE E FE TE FE E FE E E E E E EE E H Filling of this block is necessary for pr
19. Completion Queue command Some commands have repeating blocks Power State Descriptors in Identify command these blocks be accesed the following way Command Block gt lt gt fileds i e in lIdentify PSD3 MP Note If length of returned value is bigger than 1 dword please specify dword by using DW and dword index otherwise string in a hex format will be returned For example in GetLogPage POWER CYCLES DWO contains the numeric encoding of the 1st dword of Power Cycles field of GetLogPage SMART Health Information Log command Submission Queue Entry Data Command Parameter Fields starting Offset Meaning DWORD in bits Abort Abort SQID 10 15 0 Submission Queue Identifier CID 10 31 16 Command Identifier Create I O CreatelOCQ PRP1 6 63 0 PRP Entry 1 27 Teledyne LeCroy Verification Script Engine Reference Manual Completion QID 10 15 0 Queue Identifier Queue QSIZE 10 31 16 Queue Size PC 11 0 Physically Contiguous IEN 11 1 Interrupts Enabled RSVD 11 15 2 Reserved IV 11 31 16 Interrupt Vector Create I O CreatelOSQ PRP1 6 63 0 PRP Entry 1 Submission QID 10 15 0 Queue Identifier Queue QSIZE 10 31 16 Queue Size PC 11 0 Physically Contiguous QPRIO 11 2 1 Queue Priority RSVD 11 15 3 Reserved CQID 11 31 16 Completion Queue Identifier
20. Right click provides some additional actions over the selected scripts Starts running selected verification scripts Test2 res Tests Finds a viewrelated to the Finds a view related to the verified trace and placethis verified trace and place this window under it window by the right side of it Expand Log 984 1 Save Duiput 3 Settings Allows to set Expands output windows Tabbed output Saves contents of different settings Shortcut key F11 Shit F11 windows for selected output windows in aso maximizes dialog verification scripts text files Teledyne LeCroy Verification Script Engine Reference Manual 4 1 Running verification scripts Push the button Run scripts after you selected the desired script s to run VSE starts running the selected verification script s show script report information in the output windows and present results of verifications in the script list i uM an verification script s D PE Traceslessi essi essi pex Select toni to un Testing PE verification script engine Verificalion script Resu Q Runscripts Test2 3 Tes Doing some stuff Test 2 is passed Expand Log mm Seve Output 3A Settings 2 Teledyne LeCroy Verification Script Engine Reference Manual Right click in script list opens a pop up menu with options for perfor
21. Some Text2 Write text string to file CloseFile file handle Closes file Opens file the following file operations append to contents of the file file handle OpenFile GetApplicationFolder Log txt APPEND 107 Teledyne LeCroy Verification Script Engine Reference Manual 17 2 CloseFile This function closes an opened file Format CloseFile file handle Parameters file handle File handle Example set file handle 0 file handle OpenFile D Log txt opens file the previous contents are erased WriteString file handle Some Textl1 write text string to file WriteString file handle Some Text2 write text string to file CloseFile file handle closes file 108 Teledyne LeCroy Verification Script Engine Reference Manual 17 3 WriteString This function writes a text string to the file Format WriteString file handle text string Parameters file handle File handle text string Text string Example set file handle 0 file handle OpenFile D Log txt WriteString file handle Some Textil WriteString file handle Some Text2 CloseFile file handle 109 Opens file the previous contents are erased Write text string to file Write text string to file Closes file Teledyne LeCroy Verification Script Engine Reference Manual 17 4 ShowlnBrowser Thi
22. Starting VSE running rr Emm 00 00100 1023 15 04056 ILI 16 Idle Time Sta oxeEcA 0 000 ns oooo ooo ooo ProcessEvent i a 10 01010 001 02 3 ET pore 16 1 5 0 000 ns 0000 000 000 90 00100 CRC 16 Idle Time Sta Epp E re 10 000 ns 0000 000 000 completenb Packet PH cre 16 Idle Time Sta Ee a 0 1040 0 000 ns 0000 000 ae F ctg 24 oo0 00100 001 02 3 26 ProcezsEvent E expected event 16 Time Starr 5 0 000 ns 0000 000 coc Text COH File Client 34 CfgRdo 00 00100 001 02 3 004 05 6 ProcezzEvent VERIFICATION PASSED 26 ER 10 000 ns ns 0000 ooo 000 compieterD VERIFICATION FAILED Xe e rau will complete the sapt ram HEELS 16 Idle Time Sta Ox3538 0 000 0000 000 001 OnFinishScript ri biis oo 00100 004 05 6 Time Sta EE 0 000 ns 0000 000 001 Verification Script results Note The Verification script result DONE occurs when the script has been configured to extract and display some information about the trace but not to display PASSED FAILED results To configure a script so that it only displays information place a call somewhere in your script to the function ScriptForDisplayOnly in OnStartScript for example Teledyne LeCroy Verification Script Engine Reference Manual 4 Running verification sc
23. 0 63 0 Current Reservation Key Release Reservation ReservationReport GEN 0 31 0 Generation Report RTYPE 1 7 0 Reservation Type REGCTL 1 23 8 Number of Registered Controllers RSVD 1 39 24 Reserved PTPLS 2 15 8 Persist Through Power Loss State RSVD1 2 127 1 Reserved 6 Reservation ReservationReport CNTLID 0 15 0 Controller ID 40 Teledyne LeCroy Verification Script Engine Reference Manual Report RCSTS BITO 0 16 Reservation Status bit 0 Registered RSVD 0 23 17 Reserved Controller RSVD1 0 63 24 Reserved HOSTID 2 63 0 Host Identifier RKEY 4 63 0 Reservation Key DatasetManage DatasetManagement AF 0 3 0 Access Frequency ment Range ange lt index gt Definition AL 0 5 4 Access Latency RSVD2 0 7 6 Reserved SR 0 8 Sequential Read Range SW 0 9 Sequential Write Range WP 0 10 Write Prepare RSVD3 0 2311 Reserved CAS 0 31 24 Command Access Size LEN LB 1 31 0 Length in logical blocks SLBA 2 63 0 Starting LBA The Feature Identifier field of Get Feature and Set Feature commands can be accessed the following way in GetFeature FID and in SetFeature FID respectively The following possible values are defined by VSE and the corresponding constants can be used by scripts Feature Identifier Value Name NVMC FID ARBITRATION Ox01 Arbitration NVMC FID POWERMANAGEMENT 0x02 Pow
24. 11 7 0 Aggregation Threshold SetFeatures TIME 11 15 8 Aggregation Time Coalescing RSVD 11 31 16 Reserved Get Set GetFeatures IV 11 15 0 Interrupt Vector Features SetFeatures CD 11 16 Coalescing Disable Interrupt Vector Configuration RSVD 11 31 17 Reserved Get Set GetFeatures DN 11 0 Disable Normal Features Write SetFeatures RSVD 11 311 Reserved Atomicity Get Set GetFeatures SMART 11 7 0 SMART Health Critical Features SetFeatures Warnings Asynchronous Event RSVD 11 31 8 Reserved Configuration Get Set GetFeatures APSTE 11 0 Autonomous Power State Features SetFeatures Transition Enable Autonomous Power State RSVD 11 31 1 Reserved Transition Get Set GetFeatures PBSLC 11 7 0 Pre boot Software Load Features SetFeatures Count Software Progress RSVD 11 31 8 Reserved Marker Get Set GetFeatures RSVD 11 0 Reserved REGPRE 11 1 Mask Registration Reservation Preempted Notification Notification Configuration RESREL 11 2 Mask Reservation Released Notification RESPRE 11 3 Mask Reservation Preempted Notification RSVD1 11 31 4 Reserved Get Set GetFeatures PTPL 11 0 Persist Through Power Loss Features SetFeatures RSVD 11 3111 Reserved Reservation Persistence Completion Queue Entry Data Command Parameter Fields starting Offset Meaning 33 Teledyne LeCroy Verification Script Engine Reference Manual
25. CQ 0x05 Create Completion Queue NVMC OPCODE IDENTIFY 0x06 Identify _ NVMC OPCODE ABORT 0x08 Abort NVMC OPCODE SET FEATURE 0x09 Set Feature _ NVMC OPCODE GET FEATURE Ox0A Get Feature _ NVMC OPCODE ASYNC EVENT REQUEST OxOC Asynchronous Event Request NVMC OPCODE FIRWARE ACTIVATE 0x10 Firmware Activate NVMC OPCODE FIRMWARE IMG DOWNLOAD 0x11 Firmware Image Download NVMC OPCODE FORMAT NVM 0x80 Format NVM _ NVMC OPCODE SECURITY SEND 0x81 Security Send NVMC OPCODE SECURITY RECEIVE 0x82 Security Receive NVMC OPCODE OTHER IO COMMAND SET SPECIFIC 0x83 Other IO command set specific NVMC OPCODE VENDOR SPECIFIC FIRST OxCO Vendor Specific NVMC OPCODE VENDOR SPECIFIC LAST OxFF Vendor Specific in nvmcSubmissionQueuelD Returns command submission queue id in nvmcCompletionQueuelD Returns command completion queue id in nvmcCommandlD Returns command id in nvmclsSecurityCommand If set to a non zero value indicates NVM command is security 26 Teledyne LeCroy Verification Script Engine Reference Manual in nvmclsDeviceToHostCommand If set to a non zero value indicates NVM command transfers data from device to host in nvmclsSuccesstul If set to a non zero value indicates NVM command is successful in nvmcStatus Returns command status numeric encoding in nvmcStatusType Returns command status type numeric encoding in nvmclsincomplete If set to a non zero value indicates NVM command is incomplete
26. Delete I O DeletelOCQ QID 10 15 0 Queue Identifier Completion Queue RSVD 10 31 16 Reserved Delete I O DeletelOSQ QID 10 15 0 Queue Identifier Submission 10 31 16 Reserved Queue Firmware FirmwareActivate FS 10 2 0 Firmware Slot Activate AA 10 4 3 Activate Action RSVD 10 31 05 Reserved Firmware FirmwarelmageDownloa PRP1 6 63 0 PRP Entry 1 Image d PNE PRP2 8 63 0 PRP Entry 2 NUMD 10 31 0 Number of Dwords OFST 11 31 0 Offset Get Features GetFeatures PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 FID 10 7 0 Feature Identifier SEL 10 10 8 Select RSVD 10 31 11 Reserved Get Log Page GetLogPage PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 LID 10 7 0 Log Page Identifier RSVD 10 15 8 Reserved NUMD 10 27 16 Number of Dwords RSVD1 10 31 28 Reserved Identify Identify PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 CNS 10 1 0 Controller or Namespace Structure RSVD 10 31 2 Reserved Set Features SetFeatures PRP1 6 63 0 PRP Entry 1 28 Teledyne LeCroy Verification Script Engine Reference Manual PRP2 8 63 0 PRP Entry 2 FID 10 7 0 Feature Identifier RSVD 10 30 8 Reserved SV 10 31 Save Format NVM FormatNVM LBAF 10 3 0 LBA Format MS 10 4 Metadata Settings PI 10 7 5 Protection Information PIL 10 8 Protection Information Location SES 10 11 9 Secure Erase Settings RSVD 10 31 12 Reserved Security S
27. Memory Read Request 64 bit address format TLP MRDLK64 Memory Read Request Locked 64 bit address format TLP TYPE MWRe64 Memory Write Request 64 bit address format TLP TYPE IORD Read Request TLP TYPE IOWR Write Request TLP CFGRD 0 Configuration Read Type 0 TLP TYPE CFGWR 0 Configuration Write Type 0 TYPE CFGRD 1 Configuration Read Type 1 TLP TYPE CFGWR 1 Configuration Write Type 1 TYPE MSG Message Request TLP TYPE MSGD Message Request with Data payload TLP TYPE MSGAS Message for Advanced Switching TYPE MSGASD Message for Advanced Switching with Data TLP CPL Completion TLP TYPE CPLD Completion with Data TLP TYPE CPLLK Completion for Locked Memory Read TLP TYPE CPLDLK Completion for Locked Memory Read with Data TLP TYPE MEMORY All Memory Request types TLP TYPE IO Request types TLP TYPE CONFIG Configuration Request types TLP TYPE MESSAGE All Message Request TLP types TYPE COMPLETION All Completion types ANY All possible TLP types Example SendTlpType TYPE ID MSG 4 Send Message Request TLPs to the script SendTlpType TYPE MEMORY Send all Memory Request TLPs to the sc
28. P 10 Protocol Error ERR E 11 Internal Error ERR RSVD 15 12 Reserved 49 Teledyne LeCroy Verification Script Engine Reference Manual 16 PhyRdy Change DIAG 1 17 Phy Internal Error DIAG 18 Comm Wake DIAG B 19 10B to 8B Decode Error DIAG D 20 Disparity Error DIAG C 21 CRC Error DIAG H 22 Handshake Error DIAG S 23 Link Sequence Error DIAG T 24 Transport state transition error DIAG F 25 Unknown FIS Type DIAG X 26 Exchanged DIAG_RSVD 31 27 Reserved PxSACT DS 31 00 Device Status PxCl Cl 31 00 Commands Issued PxSNTF PMN 15 00 PM Notify RSVD 31 16 Reserved 5 00 Enable DEC 01 Device Error Clear SDE 02 Single Device Error RSVD2 07 03 Reserved DEV 11 08 Device To Issue ADO 15 12 Active Device Optimization DWE 19 16 Device With Error RSVD 31 20 Reserved PxDEVSLP ADSE 00 Aggressive Device Sleep Enable DSP 01 Device Sleep Present DETO 09 02 Device Sleep Exit Timeout MDAT 14 10 Minimum Device Sleep Assertion Time DITO 24 15 Device Sleep Idle Timeout DM 28 25 DITO Multiplier RSVD 31 29 Reserved PxRSVD2 Reserved PxVS Vendor Specific FIS registers RFIS TYPE 07 00 FIS Type PMP 11 08 The Port Multiplier Port RSVD4 13 12 Reserved 14 Interrupt bit RSVD3 15 Reserved 50 Teledyne LeCroy Verification Script Engine Reference Manual
29. TLP TYPE ID MRDLK32 2 TYPE ID MWR32 3 TLP TYPE ID MRD64 4 TLP TYPE ID MRDLK64 5 TLP TYPE ID MWR64 6 TLP TYPE ID IORD Tg TLP TYPE ID IOWR 8 TLP TYPE ID CFGRD_0 9 ID 0 10 TYPE ID CFGRD 1 11 TLP TYPE ID CFGWR 1 12 TLP TYPE ID MSG 13 TLP TYPE ID MSGD 14 ID MSGAS 15 TYPE ID MSGASD 16 TLP TYPE ID CPL zd ge TLP TYPE ID CPLD 18 ID CPLLK 19 TYPE ID CPLDLK 20 Note For a comprehensive and most up to date list of constants and codes please review file Users Public Documents LeCroy PCle Protocol Suite Scripts VFScripts VS_constants inc TLP Error related Variables in InvalidEncoding If set to a non zero value indicates an invalid TLP encoding in ErrorRsvdFld set to a non zero value indicates a reserved field is non zero or in use in ErrorPayload set to a non zero value indicates the Payload does not match the Length field so that the TD field value does not correspond with the observed size in ErrorLengthField If set to a non zero value indicates the Length field is invalid in ErrorTCField If set to a non zero value indicates the TC field is invalid in ErrorAttrField If set to a non zero value indicates the Attr field is invalid in ErrorByteEnables If set to a non zero value indicates the TLP violates the Byte Enable rules in MemErrorAddrLength If
30. The Controller or Namespace Structure of Identify command can be accessed the following way in ldentify CNS The following possible values are defined by VSE and the corresponding constants can be used by scripts Controller or Namespace structure Value Name NVMC IDENTIFY NAMESPACE 0x00 The Identify Namespace NVMC IDENTIFY CONTROLLER 0x01 The Identify Controller NVMC IDENTIFY LIST OF NAMESPACES 0x02 A list of up to 1024 namespace Ids NVMC IDENTIFY RSVD 0x03 Reserved The Asynchronous Event Type of Asynchronous Event Request command can be accessed the following way in AsyncEventRequest AE TYPE The following possible values are defined by VSE and the corresponding constants can be used by scripts Asynchronous Event Type Value Name ASYNC EVENT TYPE ERROR STATUS 0x00 Error Status ASYNC EVENT SMART HEALTH STATUS 0x01 SMART Health Status NVMC ASYNC EVENT TYPE RSVD FIRST 0x02 Reserved NVMC ASYNC EVENT TYPE RSVD LAST 0x05 Reserved NVMC ASYNC EVENT TYPE ID COMMAND SET SPECIFIC STATUS 0x06 Set Specific NVMO EVENT VENDOR SPECIFIC 0x07 Vendor Specific 5 2 9 1 Metric values in Metric Throughput Metric presenting transaction payload divided by response time expressed in kilobytes per second an integer value in Metric PayloadBytes Metric presenti
31. Training Sequences f to the script 79 Teledyne LeCroy Verification Script Engine Reference Manual 8 17 FilterOrderedSetType This function specifies more precise tuning filtering out for sending Ordered Set packets to the script Format FilterOrderedSetType set type Parameters set type Encoding of the Ordered Set type This parameter may be one of the values defined for the SendOrderedSetType function Example FilterOrderedSetType ORDSET TYPE SKIP 4 Don t send Skip packets 80 Teledyne LeCroy Verification Script Engine Reference Manual 9 Timer Functions This group of functions covers VSE capability to work with timers internal routines that repeatedly measure a timing interval between different events 9 1 VSE Time Object A VSE time object is a special object that presents time intervals in verification scripts From point of view of the CSL the verification script time object is a list object of two elements Please see the CSL Manual for more details about CSL types seconds nanoseconds Note The best way to construct a VSE time object is to use the Time function see below 81 Teledyne LeCroy Verification Script Engine Reference Manual 9 2 SetTimer Starts the timing calculation from the event where this function was called Format SendTimer timer id z 0 Parameters timer id Unique timer identifier Example SetTimer Start timing for timer
32. events of the specified transaction level should be sent to the script Format SendLevelOnly level Parameters level PACKET Example SendLevelOnly PACK Can have one of following values value 0 Send Packet level events value 1 Send Link Transaction level events value 2 Send Split Transaction level events value 3 Send NVM Transaction level events value 9 Send NVM Command level events value 5 Send AHCI Transaction level events value 6 Send ATA Transaction level events 2 rH HH wa Send ONLY packet level events 64 Teledyne LeCroy Verification Script Engine Reference Manual 8 3 DontSendLevel This function specifies that events of the specified transaction level should NOT be sent to the script Format DontSendLevel level Parameters level Can have one of following values PACKET value 0 Do not send Packet level events LINK value 1 Do not send Link Transaction level events _ SPLIT value 2 Do not send Split Transaction level events NVME value 3 Do not send NVM Transaction level events NVMC value 9 Do not send NVM Command level events _AHCI value 5 Do not send AHCI Transaction level events ATA value 6 Do not send ATA Transaction level events Example DontSendLevel _LINK DO NOT send link transaction level events 65 Teledyne LeCroy Verification Script Engine Reference Manual 8 4 SendChannel This function specifies that events that have occurred on t
33. members Valid for AHCI transactions only Undefined for other events All the AHCI specific values are present in the input context for AHCI transactions depending upon the type of register Also the common PayloadLength and Payload values reflect the total combined payload for the AHCI transaction In addition to that the following values exist in AHCIRegld Contains the numeric encoding of the AHCI register type The following possible values are defined by VSE and the corresponding constants can be used by scripts Register type Value Register description Corresponding event type AHCI CAP 2 Host Capabilities AHCI GHC 3 Global Host Control AHCI 15 4 Interrupt Status AHCI 5 Ports Implemented AHCI VS 6 Version 7 Command Completion Coalescing Control _ PORTS 8 Command Completion Coalescing Ports AHCI HBA REG AHCI EM LOC 9 Enclosure Management Location AHCI EM 10 Enclosure Management Control _ CAP2 11 Host Capabilities Extended _ BOHC 12 BIOS OS Handoff Control and Status AHCI RESERVED HBA 13 Reserved AHCI RESERVED NVMHCI 14 Reserved for NVMHCI AHCI VENDOR SPECIFIC REGISTERS 15 Vendor Specific _ PxCLB 16 Port x Command List Base Address _ PxCLBU 17 Port x Command List Base Address Upper 32 Bits _ PxFB 18 Port x FIS Base Address PxF
34. nvmeCID Returns Command ld in nvmeQID Returns queue Id 5 2 8 3 NVM transaction members specific to NVME PRP event in nvmeCID Returns Command Id in nvmeQID Returns queue Id 5 2 8 4 NVM transaction members specific to NVME SGL event in nvmeCID Returns Command ld in nvmeQID Returns queue Id in nvmeAddress Returns address of the next SGL segment 64 bit value in nvmeLength Length of SGL segment in nvmeSGLId SGL identifier 24 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 8 5 NVM transaction members specific to NVME TRANSFERED DATA event in nvmeCID Returns Command ld in nvmeQID Returns queue Id in nvmeDataAddress Returns SGL segment or PRP entry address in nvmeDataLength Length of SGL segment or PRP entry 5 2 8 6 Metric values in Metric_Throughput Metric presenting transaction payload divided by response time expressed in kilobytes per second an integer value in Metric_PayloadBytes Metric presenting number of data payload bytes this NVM Transaction transferred an integer value in Metric NumOfLinkAndSplitTras Metric presenting the total number of Link and Split Transactions that compose this NVM Transaction an integer value 25 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 9 NVM command specific set of members Valid for NVM commands only Undefined for other events All the NVM command specific values are present in the input context for NVM
35. object representing the first time interval time 2 VSE time object representing the second time interval Example tl Time 100 t2 Time 2 200 t3 SubtractTime t2 t1 Returns VSE time object 2 sec 100 ns 87 Teledyne LeCroy Verification Script Engine Reference Manual 11 3 MulTimeBylnt Multiplies VSE time object by integer value Format MulTimeByint time mult Return values Returns VSE time object representing the time interval equal to the product of time mult Parameters time VSE time object mult multiplier integer value Example t Time 2 200 tl MulTimeByInt t 2 4 Returns VSE time object 4 sec 400 ns 88 Teledyne LeCroy 11 4 DivTimeBylnt Divides VSE time object by integer value Format DivTimeBylnt time div Return values Verification Script Engine Reference Manual Returns VSE time object representing the time interval equal to the quotient of time div Parameters time div Example t tl VSE time object divisor integer value Time 2 200 DivTimeByInt t 2 Returns VS 89 E tim object 1 sec 100 ns Teledyne LeCroy Verification Script Engine Reference Manual 12 Time Logical Functions This group of functions covers VSE capability to compare VSE time objects 12 4 IsEqualTime Verifies that one VSE time object is equal to the other VSE time object Format IsEqualTime time1 time2 Retu
36. of Power States Support AVSCC_BITO 66 0 Admin Vendor Specific Command Configuration bit 0 RSVD5 66 7 1 Reserved 37 Teledyne LeCroy Verification Script Engine Reference Manual APSTA BITO 66 8 Autonomous Power State Transition Attributes bit 0 RSVD4 66 15 9 Reserved RSVD5 66 1983 Reserved 16 SQES_BITSO 128 3 0 Submission Queue Entry _ Size bits 3 0 SQES 54 128 7 4 Submission Queue Entry _7 Size bits 7 4 CQES BITSO 128 11 8 Completion Queue Entry 23 Size bits 3 0 CQES 54 128 15 12 Completion Queue Entry af Size bits 7 4 RSVD 128 31 16 Reserved NN 129 31 0 Number of Namespaces ONCS_BITO 130 7 0 Optional NVM Command Support bit 0 130 8 1 Optional NVM Command Support bit 1 ONCS BIT2 130 9 2 Optional NVM Command Support bit 2 ONCS BIT3 130 10 3 Optional NVM Command Support bit 3 ONCS 4 130 11 4 Optional NVM Command Support bit 4 ONCS BIT5 130 12 5 Optional NVM Command Support bit 5 RSVD1 130 9 0 Reserved FUSES BITO 130 16 Fused Operation Support bit 0 RSVD2 130 31 17 Reserved FNA BITO 131 0 Format Attributes bit 0 FNA BIT1 131 1 Format NVM Attributes bit 1 FNA BIT2 131 2 Format NVM Attributes bit 2 RSVD3 131 7 3 Reserved VWC BITO 131 8 Volatile Write Cache bit 0 RSVD4 131 16 10 Reserved AWUN 131 31 16 Atomic Write Unit No
37. time object and less than the other VSE time object Format IsTimelninterval min time time max time Return values Returns 1 if min time lt time lt max time returns 0 otherwise Parameters time 1 VSE time object representing the first time interval time 2 VSE time object representing the second time interval Example tl Time 100 t Time 400 t2 Time 500 IsTimeInInterval tl t t2 DoSomething 93 Teledyne LeCroy Verification Script Engine Reference Manual 13 Time Text Functions This group of functions covers VSE capability to convert VSE time objects into text strings 13 1 TimeToText Converts a VSE time object into text Format TimeToText time Return values Returns a text representation of VSE time object Parameters time VSE time object Example t Time 100 ReportText TimeToText t See below details for ReportText function 94 Teledyne LeCroy Verification Script Engine Reference Manual 14 Output Functions This group of functions covers VSE capability to present information in the output window 14 4 ReportText Outputs text in the output window related to the verification script Format ReportText text Parameters text Text variable constant or literal Example ReportText Some text t Some text ReportText t num of frames in NumOfFrames text Format Number of frames d num of frames ReportT
38. with id 0 SetTimer 23 Start timing for timer with id 23 Remark If this function is called a second time for the same timer ID it resets the timer and starts timing calculations again from the point where it was called 82 Teledyne LeCroy Verification Script Engine Reference Manual 9 3 KillTimer Stops timing calculation for a specific timer and frees related resources Format KillTimer timer id 0 Parameters timer id Unique timer identifier Example KillTimer Stop timing for timer with id 0 KillTimer 23 Stop timing for timer with id 23 83 Teledyne LeCroy Verification Script Engine Reference Manual 9 4 GetTimerTime Retrieve the timing interval from the specific timer Format GetTimerTime timer id 0 Parameters timer id Unique timer identifier Return values Returns VSE time object from timer with id timer id Example GetTimerTime Retrieve timing interval for timer with id 0 GetTimerTime 23 Retrieve timing interval for timer with id 23 Remark This function when called does not reset the timer 84 Teledyne LeCroy Verification Script Engine Reference Manual 10 Time Construction Functions This group of functions are used to construct VSE time objects 10 1 Constructs a verification script time object Format Time nanoseconds Time seconds nanoseconds Return values First function returns O nanosecond
39. 23 TELEDYNE LECROY Everywhereyoulook Protocol Solutions Group 3385 Scott Blvd Santa Clara CA 95054 Tel 1 408 727 6600 Fax 1 408 727 6622 Verification Script Engine for Teledyne LeCroy PCle Protocol Suite Heference Manual For PCle Protocol Suite software version 7 34 Generated 7 8 2015 10 35 AM Teledyne LeCroy Verification Script Engine Reference Manual Document Disclaimer The information contained in this document has been carefully checked and is believed to be reliable However no responsibility can be assumed for inaccuracies that may not have been detected Teledyne LeCroy reserves the right to revise the information presented in this document without notice or penalty Trademarks and Servicemarks Teledyne LeCroy CATC Trace PETracer Summit Summit T3 16 Summit T3 8 Summit T34 Summit T28 Summit T24 Summit Z3 16 Summit T2 16 Summit Z2 16 and BusEngine are trademarks of Teledyne LeCroy Microsoft and Windows are registered trademarks of Microsoft Inc All other trademarks are property of their respective companies Copyright 2012 Teledyne LeCroy Inc All Rights Reserved This document may be printed and reproduced without additional permission but all copies should contain this copyright notice Teledyne LeCroy Verification Script Engine Reference Manual 1 INTRODUCTION NEUES 1 2 VERIFICATION SCRIPT STRUCTURE 2 INTERACTION BETWEEN PCIE
40. 5 2 Trace event dependent set of members This set of members is defined and can be used only for a specific events or after calling some functions filling out some of the variables 5 2 1 packet transaction specific set of members Members of this set are valid for any event in Payload Bit source of the frame sequence payload you can extract any necessary information using the GetNBits NextNBits or PeekNBits functions Refer to the CSL Manual for details about these functions in PayloadLength Length in bytes of the retrieved payload in LinkWidth Link Width recorded for this packet Possible values 1 2 4 8 and 16 represent the number of lanes on the link Only available at the Packet and Link Transaction levels in Speed Speed of this packet or link transaction 0 2 5GT s 1 5 0 GT s or 2 8 0 GT s The following constants are defined for the possible values SPEED GEN1 SPEED GEN2 and SPEED GEN3 Only available at the Packet and Link Transaction levels Error related Variables used for passing all the detected packet error types to the script in HasErrors Indicates the presence of any general error type in the current packet or critical packet type specific errors It is a logical OR of in ErrorDisparity in ErrorSymbol in ErrorDelimiter in ErrorEndBad in ErrorAllignment in ErrorLength in ErrorWrongSymbol in BadLCRC TLP and DLLP Packet Types in BadECRC TLP Packet Type in MsgErrorG3LenCheck TLP Pac
41. ADMIN SUBMISSION CMD and to Teledyne LeCroy Verification Script Engine Reference Manual in nvmeCID Returns Command Id in nvmePSDT Returns whether PRPs or SGLs are used for any data transfer associated with the command If cleared to 0 the command uses PRPs in nvmeFUSE In a fused operation returns whether complex command is created by fusing together two simpler commands in nvmeOpcode Returns the NVMe command code The value of in nvmeOpcode depends on transaction event type and can be compared against the predefined values The following possible values are defined by VSE and the corresponding constants can be used by scripts For NVME ADMIN SUBMISSION CMD transaction event Constant Value _ ASC DELETE IO SQ 00h _ ASC CREATE IO SQ 01h NVME ASC GET LOG PAGE 02h _ ASC DELETE IO CQ 04h NVME ASC CREATE IO CQ 05h NVME ASC IDENTIFY 06h NVME ASC ABORT 08h NVME ASC SET FEATURES 09h NVME ASC GET FEATURES OAh _NVME_ASC_ASYNC_EVENT_REQ OCh _NVME_ASC_FIRMWARE_ACTIVATE 10h _NVME_ASC_FIRMWARE_IMG_DWNLD 11h _NVME_ASC_FORMAT_NVM 80h _NVME_ASC_SECURITY_SEND 81h NVME ASC SECURITY RECEIVE 82h For NVME SUBMISSION transaction event Constant Value NVME FLUSH 00h NVME NSC WRITE 01h NVME NSC READ 02h NVME NSC WRITE UNCORRECTABLE 04h NVME NSC COMPARE 05h NV
42. AE FE E AE AE AE HE E AE AE AE HE E AE AE AE FE E E AE FE FE E E AE AE AE FE E AE AE AE FE E AE FE AE HE E AE AE AE HE E AE AE AE FE E E AE AE AE E AE AE AE AE E AE AE AE AE FE AE AE FE E HE E FEFE HE FE HE FE E FE TE HE FE HE FE TE FE EEE FE TE FE FE HE FE E FE TE HE FE REE HE FE E FE FE FE HE FE E FE TE FE FE HE REE E E EE E H OnStartScript FEFE EE TE HE FE AE FE TE HE FE HE AE TE FE EEE FE TE FE FE HE FE E FE TE HE FE REE FE FE FE FE E FE TE FE FE E FE FE FE TE HE FE E FE FE AE HE FE E FE TE FE FE EE REE HE E E E E GE It is a main intialization routine for setting up all necessary script parameters before running the script FEAE AE AE AE AE AE AE FE E AE AE FE FE FE FE FE AE AE AE AE FE E AE AE FE HE E AE AE AE FE E E AE AE FE FE E AE FE FE FE E AE AE AE FE E AE FE AE HE E AE AE AE FE E AE AE AE FE E E AE FE FE E AE AE AE AE E AE AE FE AE FE AE AE FE EE GE Teledyne LeCroy Verification Script Engine Reference Manual OnStartScript FE HEEE EHE FE HE FE E HE EHE FE HE FE E FE E FE FE HE FE E FE E FE FE FE FE HE FE E FE E FE FE HE FE HE FE E FE FE FE FE HE FE E FE E FE FE FE FE HE FE E FE FE FE FE HE FE HE FE AE FE FE FE FE HE FE E FE E FE FE FE FE HE FE E HE HEHE HE Specify in the body of this function the initial values for global variables and what kinds of trace events should be passed to the script By default all packet level events from all channels are passed to the scr
43. BU 19 Port x FIS Base Address Upper 32 Bits PXxIS 20 Port x Interrupt Status SIMULAT _ PXIE 21 Port x Interrupt Enable _ AHCI PxCMD 22 Port x Command and Status _AHCI PxReserved1 23 Reserved1 AHCI PxTFD 24 Port x Task File Data PxSIG 25 Port x Signature 43 Teledyne LeCroy Verification Script Engine Reference Manual AHCI PxSSTS 26 Port x Serial ATA Status SCRO SStatus _ PxSCTL 27 Port x Serial ATA Control SCR2 SControl _ PxSERR 28 Port x Serial ATA Error SCR1 SError _ 5 29 Port x Serial Active SCR3 SActive _ PxCI 30 Port x Command Issue _ PxSNTF 31 Port x Serial ATA Notification SCR4 SNotification AHCI PxFBS 32 Port x FIS based Switching Control AHCI PxDEVSLP 33 Port x Device Sleep _AHCI PxReserved2 34 Reserved2 _ 5 35 Port x Vendor Specific AHCI COMMAND HEADER 36 Command header AHCI CMND LIST AHCI DSFIS 44 DMA Setup FIS AHCI PSFIS 45 PIO Setup FIS _AHCI_RFIS 46 D2H Register FIS _AHCI_RECEIVED_ _AHCI_SDBFIS 47 Set Device Bits FIS FIS _AHCI_UFIS 48 Unknown FIS up to 64 bytes _AHCI RESERVED 49 Reserved AHCI CFIS 50 Command FIS ACMD 51 ATAPI Command AHCI CMND TAB AHCI RESERVED 52 Reserved LE _ PRDT 53 Physical Region Descriptor Table AHCI DATA 58 Actual data pointed by DBA amp amp DBAU
44. DSM 13 7 0 Dataset Management RSVD1 13 10 8 Reserved ILBRT 14 31 0 Initial Logical Block Reference Tag LBAT 15 15 0 Logical Block Application Tag LBATM 15 31 16 Logical Block Application Tag Mask Get Set GetFeatures AB 11 2 0 Arbitration Burst Features SetFeatures Arbitration RSVD 11 7 3 Reserved LPW 11 15 8 Low Priority Weight MPW 11 23 16 Medium Priority Weight HPW 11 31 24 High Priority Weight Get Set GetFeatures PS 11 4 0 Power State Features SetFeatures Power Management RSVD 11 31 5 Reserved Get Set GetFeatures LBARange NUM 11 5 0 Number of LBA Ranges Features LBA Type lt index gt Range Type SetFeatures LBARange RSVD 11 31 6 Reserved Type lt index gt Get Set GetFeatures TMPTH 11 15 0 Temperature Threshold Features SetFeatures RSVD 11 31 16 Reserved Temperature 32 Teledyne LeCroy Verification Script Engine Reference Manual Threshold Get Set GetFeatures TLER 11 15 0 Time Limited Error Recovery Features Error SetFeatures RSVD 11 31 16 Reserved Recovery Get Set GetFeatures WCE 11 0 Volatile Write Cache Enable Features SetFeatures RSVD 11 31 1 Reserved Volatile Write Get Set GetFeatures NSQR 11 15 0 Number of I O Submission Features SetFeatures Queues Requested Number of Queues NCQR 11 31 16 Number of I O Completion Queues Requested Get Set GetFeatures THR
45. DontSendTraceEvent event Parameters event See SendTraceEvent for all possible values Example SendLevel LINK Send Link Transaction level events SendTraceEvent LINK CONFIG Send Configuration transactions SendTraceEvent LINK COMPLETION Send Completion transactions SendTraceEvent LINK MESSAGE Send Message transactions if SomeCondition DontSendTraceEvent LINK CONFIG 4 Don t send Cfg Request transactions DontSendTraceEvent LINK COMPLETION Don t send Completion transactions Only Message transactions are sent 72 Teledyne LeCroy Verification Script Engine Reference Manual 8 10 SendTraceEventOnly This function specifies that ONLY the event specified in this function is sent to the script Format SendTraceEventOnly event Parameters event See SendTraceEvent for all possible values Remark This function may be useful when many events are to be sent but you need to send only one kind of event and turn off the rest Example SendLevel LINK Send Link Transaction level events SendTraceEvent LINK CONFIG Send Configuration transactions SendTraceEvent LINK COMPLETION Send Completion transactions SendTraceEvent LINK MESSAGE Send Message transactions if SomeCondition SendTraceEventOnly LINK MEMORY f Only Memory read write request transactions are sent 73 Teledyne LeCroy Verifica
46. If omitted the default value for buttons is MB OK See the list of possible values in the table below Optional String expression displayed in the title bar of the dialog box If you omit the title the script name is placed in the title bar Constant Description MB OKONLY Display OK button only by Default MB OKCANCEL Display OK and Cancel buttons MB RETRYCANCEL Display Retry and Cancel buttons MB YESNO Display Yes and No buttons MB YESNOCANCEL Display Yes No and Cancel buttons MB ABORTRETRYIGNORE Display Abort Retry and Ignore buttons MB EXCLAMATION Display Warning Message icon MB INFORMATION Display Information Message icon MB QUESTION Display Warning Query icon MB STOP Display Critical Message icon MB DEFBUTTON 1 First button is default MB DEFBUTTON2 Second button is default MB DEFBUTTON3 Third button is default MB DEFBUTTONA Fourth button is default 112 Teledyne LeCroy Verification Script Engine Reference Manual Return Values This function returns an integer value indicating which button the user clicked Constant Description MB OK OK button was clicked _ CANCEL Cancel button was clicked MB YES Yes button was clicked MB NO No button was clicked MB RETRY Retry button was clicked MB IGNORE
47. Ignore button was clicked MB ABORT Abort button was clicked Remark This function works only for VS Engines controlled via the GUI For VSEs controlled by COM Automation clients it does nothing This function locks the PCle Protocol Suite application which means that there is no access to other application features until the dialog box is closed In order to prevent too many MsgBox calls in the case of a script not written correctly VSE keeps track of all function calls demanding user interaction and doesn t show dialog boxes if a customizable limit was exceeded returns MB in this case Example if Something str Something happened nShould we continue result MsgBox MB YESNOCANCEL Some if ScriptDone Go result MB Y SUI MB Title ES EXCLAMATION 113 Teledyne LeCroy Verification Script Engine Reference Manual 19 2 InputBox Displays a prompt in a dialog box waits for the user to input text or click a button and returns a CSL list object see the CSL manual for details about list objects or a string containing the contents of the text box Format InputBox prompt title default text return type Parameters prompt Required String expression displayed as the message in the dialog box title Optional String expression displayed in the title bar of the dialog box If you omit title the script name is placed in t
48. L str html string Hello amp nbspworld amp nbsp br How amp nbspare amp nbspyou amp nbsptoday Note Some other useful miscellaneous functions can be found in the file VSTools inc 122 Teledyne LeCroy Verification Script Engine Reference Manual 21 4 Pause Pauses a running script Later script execution can be resumed or cancelled Format Pause Example If Something Interesting GotoEvent 4 Jump to the trace view Pause Pause script execution Remark This function works only for VS Engine controlled via a GUI For VSEs controlled by COM Automation clients it does nothing When script execution is paused the Run Verification Script window looks like FE Run verification seript s D PETraces ssi pex v Show Description Window v Show Output Click right mouse button and select Stop verification script s menu itemto cancel script execution E 0x700100 0x08 0x290000 SEQ ID 0 5 Click this button to resume DF CTL 0x00 i i SEQ CNT 0 0000 pee OX ID 0 022 IRK ID OxFFFF Param 0 00000000 0 87 23 5 ExpandLog Seno Done 123 Teledyne LeCroy Verification Script Engine Reference Manual 22 The VSE Important Script Files The VSE working files are located in the Scripts VFScripts subfolder of the main PCle Protocol Suit
49. ME IDX 87 NVME DAT 88 in nvmeQID Defined for NVME DOORBELL REG transaction event Returns zero for Admin doorbells or queue ID otherwise in nvmelndex Defined for NVME DOORBELL REG transaction event Returns SQT for submission doorbells and for completions in nvmeTraHasError If set to a non zero value indicates NVME transaction has errors In nvmeErrorld Contains the numeric encoding of the NVME error type The following possible values are defined by VSE and the corresponding constants can be used by scripts Error type Value Error name Error description NVME ERROR ACCESS DIR VIOLATION 1 Read only registry write Access direction violation NVME ERROR RESERVED NOT NULL 2 Reserved field is not Reserved field is not zero zero _ NVME ERROR INVALID FIELD VALUE 4 Field value is not from Field value is not listed as specified set a valid value NVME ERROR INCOMPLETE TRA 16 Incomplete transaction Incomplete transaction size doesn t match expected _ NVME ERROR INCOMPLETE SUB TRA 32 Incomplete sub Incomplete sub transaction transaction NVME ERROR ERROR IN SUB TRA 64 Error in sub transaction Error in sub transaction _ NVME ERROR LOGICAL ERROR 128 Logical error Logical error _ NVME ERROR NO ERROR 0 No Error Correct transaction in nvmeErrorldAsString Contains an NVME error name 5 2 8 1 NVME NVM SUBMISSION CMD events 22 NVM transaction members specific to NVME
50. ME NCS WRITE ZEROES 08h NVME DATASET MGMT 09h NVME NSC RESERVATION REGISTER ODh _NVME_NSC_RESERVATION_REPORT OEh _NVME_NSC_RESERVATION_ACQUIRE 11h NVME RESERVATION RELEASE 15h in nvme NSID This field specifies the namespace ID that this command applies to 23 Teledyne LeCroy Verification Script Engine Reference Manual in nvme MPTR Returns the address of a contiguous physical buffer of metadata or the address of an SGL segment containing exactly one SGL Descriptor which describes the metadata to transfer in nvme DPTR This field specifies the data used in the command in nvme CDW10 Returns command specific Dword 10 in nvme CDW11 Returns command specific Dword 11 in nvme CDW12 Returns command specific Dword 12 in nvme CDW13 Returns command specific Dword 13 in nvme CDW14 Returns command specific Dword 14 in nvme CDW15 Returns command specific Dword 15 5 2 8 2 NVM transaction members specific to NVME NVM COMPLETION CMD event in nvmeCDWO Returns command specific Dword 0 in nvmeCDW1 Returns command specific Dword 1 in nvmeSQID Returns the Submission Queue to which the associated command was issued to in nvmeSQHD Returns the current Submission Queue Head pointer for the Submission Queue indicated in the SQ Identifier field in nvmeSF Returns the status for the command that is being completed in nvmeP Returns Phase Tag P identifies whether a Completion Queue entry is new in
51. PROTOCOL SUITE AND A VERIFICATION SCRIPT 4 4 RUNNING VERIFICATION SCRIPTS FROM THE PCIE PROTOCOL SUITE 6 4 1 9 reete tee etse esee e tee d occ tee tested tese acts ee e EE E e E MEI deters 8 4 2 VSEGULSETTIINGS e ul v o ids 10 5 VERIFICATION SCRIPT ENGINE INPUT CONTEXT 5 2 11 5 1 TRACE EVENT INDEPENDENT SET OF 5 1 11 5 2 TRACE EVENT DEPENDENT SET OF MEMBERS 12 5 21 All packet transaction specific set of members 12 5 2 2 DLLP specific set of members 1 1 nnmnnn nnmnnn 13 5 2 3 TEP specific set of members cated ate cornice cce eee enun Rer re 14 5 2 4 Ordered Set specific set of members XN X NR EX RN RE 17 5 2 5 Link Condition specific set of 0 009 NX NN XY Y RN R YES 18 5 2 6 Link transaction specific set 11111 1 nnmnnn 19 5 2 7 Split transaction sp
52. ROWSEH i vies cee cert ves welt n vest EE ev ne 110 18 COM AUTOMATION COMMUNICATION nennt nnn annee nnn 111 18 1 NOTIEYGLEIENT iiit hene el oe eene et 111 19 USER INPUT F NCGTIONS 2 cerei eene a khemarak anaE khaaa nashina naai iisas 112 197 MSGBOX uihsb ases SBOPPREBOBbePIOE bebe E sete 112 19 2 EE EE EE EEG AE shes shan ERE 114 19 3 GETUSERDEGLIMIT 5 sa vee ERREUR RR ERR RR dass os 116 19 4 SET USERDEGLIMIT 1 i tH RR SEE ERE EFE RIEGO ER ARES 117 20 STRING MANIPULATION FORMATING FUNCTIONS 118 Teledyne LeCroy Verification Script Engine Reference Manual OH Ee usd EET bata tata tate tet tea DURURS 118 21 MISCELLANEOUS 120 21 1 65 4144 44441000 000000800000 nnn hens nnns nnns 120 Zh gt A SUEER rp TR 121 2103 SGONVERT odd Eom 122 Aves eked Moana ake Muar LU EU A DLE LUUD LM ATE 123 22 THE VSE IMPORTANT SCRIPT ALE S
53. TA NV CACHE 49 ATA RESERVED FOR THE COMPACTFLASH ASSOCIATION 50 ATA CFA ERASE SECTORS 51 ATA READ MULTIPLE 52 ATA WHITE MULTIPLE 53 ATA SET MULTIPLE MODE 54 ATA READ 55 ATA WRITE 56 ATA CFA WRITE MULTIPLE WITHOUT ERASE 57 ATA WHITE MULTIPLE FUA EXT 58 ATA CHECK MEDIA CARD 59 ATA RESERVED FOR THE MEDIA CARD PASS THROUGH COMMAND FE 60 ATURE SET ATA STANDBY IMMEDIATE 61 IDLE IMMEDIATE 62 ATA STANDBY 63 ATA IDLE 64 ATA READ BUFFER 65 CHECK POWER MODE 66 55 Teledyne LeCroy Verification Script Engine Reference Manual SLEEP 67 ATA FLUSH CACHE 68 ATA WHITE BUFFER 69 ATA READ BUFFER 70 ATA FLUSH CACHE EXT 71 ATA WRITE BUFFER 72 ATA IDENTIFY DEVICE 73 ATA SET FEATURES 74 ATA SECURITY SET PASSWORD 75 ATA SECURITY UNLOCK 76 SECURITY ERASE PREPARE 77 ATA SECURITY ERASE UNIT 78 ATA SECURITY FREEZE LOCK 79 ATA SECURITY DISABLE PASSWORD 80 READ NATIVE MAX ADDRESS 81 ATA SET MAX ADDRESS 82 in ataProtocol Contains the numeric encoding of the ATA protocol id The following possible values are defined by VSE and the corresponding constants can be used by scripts Constant Value Description ATA PROTOCOL NONE 0 Protocol undefined ATA PROTOCOL ND 0 1 Non Data command PROTOCOL PI 0x2 PIO Data In command ATA PROTOCOL
54. action levels and which events should be sent to verification scripts 7 1 Packet level events The table below describes the current list of Packet level events transaction level 0 and value of in TraceEvent Types of Packets in TraceEvent Data Link Layer Packets DLLP PKT DLLP Transaction Layer Packets TLP PKT Ordered Sets PKT ORDERED SET Link Conditions PKT LINK CONDITION 7 2 Link Transaction level events The table below describes the current list of Link Transaction events transaction level 1 and value of in TraceEvent Types of Link Transactions in TraceEvent Memory transactions MEMORY IO transactions LINK IO Configuration transactions LINK CONFIG Message transactions LINK MESSAGE Completion transactions LINK COMPLETION 7 3 Split Transaction level events The table below describes the current list of Split Transaction events transaction level 2 and value of in TraceEvent Types of Split Transactions in TraceEvent Memory transactions SPLIT MEMORY IO transactions SPLIT IO Configuration transactions SPLIT CONFIG 7 4 NVM Transaction level events NVME level introduces own events The table below describes the current list of NVM Transaction events transaction level 3 and value of in TraceEvent Types of NVM Transactions in TraceEvent
55. arameter Error Location RROR Bit RSVD 3 31 27 Reserved LBA 4 63 0 LBA 34 Teledyne LeCroy Verification Script Engine Reference Manual NAMESPACE 6 31 0 Namespace VENDOR SP 7 7 0 Vendor Specific Information INFO Available RSVD1 7 271 8 Reserved GetLogPage GetLogPage CRITICAL W 0 0 Critical Warning Bit 0 SMART ARNING BITO Health Information Log CRITICAL W 0 1 Critical Warning Bit 1 ARNING BIT1 CRITICAL W 0 2 Critical Warning Bit 2 ARNING BIT2 CRITICAL W 0 3 Critical Warning Bit 3 ARNING CRITICAL W 0 4 Critical Warning Bit 4 ARNING BIT4 RSVD 0 7 5 Reserved TEMPERATU 0 23 8 Temperature RE AVAILABLE 0 31 24 Available Spare SPARE AVAILABLE 1 7 0 Available Spare Threshold SPARE THR ESHOLD PERCENTAG 1 15 8 Percentage Used E USED RSVD1 1 223 1 Reserved 6 DATA UNITS 8 127 0 Data Units Read READ DATA UNITS 12 127 0 Data Units Written WRITTEN HOST READ 16 127 0 Host Read Commands COMMANDS HOST WRITE 20 127 0 Host Write Commands COMMANDS CONTROLLE 24 127 0 Controller Busy Time R_BUSY_TIM E POWER_CYC 28 127 0 Power Cycles LES POWER_ON_ 32 127 0 Power On Hours HOURS UNSAFE SH 36 127 0 Unsafe Shutdowns UTDOWNS MEDIA_ERR 40 127 0 Media Errors ORS 35 Teledyne LeCroy Verification Script Engine Reference Manual
56. atalDX Is set to a non zero value once per revolution in ataERR If set to a non zero value indicates an error during the transfer in ataPRIO If set to a non zero value then the command shall be high priority Otherwise the command shall be normal priority in ataNCQ Contains the numeric encoding of the NCQ Tag field in ataRARC Returns the RARC bit 57 Teledyne LeCroy Verification Script Engine Reference Manual in atalCC Contains the numeric encoding of the Isochronous Command Completion field in ataHybridlInfo If set to a non zero value then the device supports the hybrid information feature in ataPayloadLength Contains the exact payload size transferred data in bytes in ataRequestedB ytesCount Contains the requested data size in bytes in ataHasData If set to a non zero value indicates payload presence in atalsDeviceToHostTransition If set to a non zero value indicates the Host to Device direction in ataHasErrors If set to a non zero value indicates an error in decoded transaction in ataContainsPxSACT If set to a non zero value indicates PXSACT register usage in ataContainsCFIS If set to a non zero value indicates CFIS register usage in ataContainsSDBFIS If set to a non zero value indicates SDBFIS register usage in ataContainsPSFIS If set to a non zero value indicates PSFIS register usage in ataContainsRFIS If set to a non zero value indicates RFIS register usage in ataContainsInterruptD2H If set to a n
57. aten cea eee 62 8 SENDING FUNCTIONS ccccccssesccssscssscnseuennsuenusueneueneueneuenausenausenauuenaeseuauseuasseuauseuauseuauseeausenessoagees 63 8 1 12 63 8 2 SIND MEON OEE 64 8 3 DONTSENDLEVEL 65 8 4 222 66 8 5 2 m 67 8 6 DONTSENDCHANNEL 68 8 7 6 4 4 1 1 m 69 8 8 SENDTRACEEVENT MMMEEEEEMMME 70 8 9 444 72 9 10 lt 0 0 73 lt 5
58. commands Also the common PayloadLength and Payload values reflect the total combined payload for the NVM command In addition to that the following values exist in nvmcDeviceld Returns command device id in nvmcCommandOpCode Returns command opcode The following possible values are defined by VSE and the corresponding constants can be used by scripts Admin commands Command Value Command name NVMC OPCODE FLUSH 0x00 Flush NVMC OPCODE WRITE 0x01 Write NVMC OPCODE READ 0x02 Read _ NVMC OPCODE WRITE UNCORRECTABLE 0x04 Write Uncorrectable _ NVMC OPCODE COMPARE 0x05 Compare NVMC OPCODE WRITE ZEROES 0x08 Write Zeros NVMC OPCODE DATASET MGMT 0x09 Dataset Management NVMC OPCODE RESERVATION REGISTER 0 Reservation Register _ NVMC OPCODE RESERVATION REPORT OxOE Reservation Report NVMC OPCODE RESERVATION ACQUIRE 0x11 Reservation Acquire _NVMC_OPCODE_RESERVATION_RELEASE 0x15 Reservation Release NVMC OPCODE DATASET MGMT VENDOR SPECIFIC FIRST 0x80 Vendor Specific NVMC OPCODE DATASET MGMT VENDOR SPECIFIC LAST Vendor Specific commands NVMC OPCODE DELETE IO SQ 0x00 Delete Submission Queue _ NVMC OPCODE CREATE IO SQ 0x01 Create I O Submission Queue NVMC OPCODE GET LOG PAGE 0x02 Get Log Page NVMC OPCODE DELETE CQ 0x04 Delete Completion Queue NVMC OPCODE CREATE IO
59. dress is not aligned properly aligned in memory _ ERROR INVALID STATE 8 Invalid HBA state An attempt to do something forbidden in current state _ ERROR INVALID FIS SIZE 9 Invalid FIS size FIS size doesn t correspond to spec or CFIS CFL field AHCI ERROR UNKNOWN 10 Unknown error All other errors AHCI ERROR NO ERROR 12 No errors Correct transaction in AHCIErrorldAsString Contains an AHCI error name The following table shows the list of AHCI registers and their fields defined in the input context The fields can be accessed by using E g in CAP SXS contains the numeric encoding of the SXS field of CAP register Note If length of returned value is bigger than 1 dword please specify dword by using DW and dword index otherwise string in a hex format will be returned For example in HBA VENDOR SPECIFIC DW3 contains the numeric encoding of the 3rd dword of HBA Vendor Specific field Parameter Fields Offset Meaning CAP NP 04 00 Number of Ports SXS 05 Supports External SATA EMS 06 Enclosure Management Supported CCCS 07 Command Completion Coalescing Supported NCS 12 08 Number of Command Slots PSC 13 Partial State Capable SSC 14 Slumber State Capable PMD 15 PIO Multiple DRQ Block PMD FBSS 16 FIS based Switching Supported SPM 17 Supports Port Multiplier SAM 18 Supports AHCI mode only 45 Teledyne LeCroy Verification Sc
60. e folder The current version of VSE includes the following files File Description VSTools inc Main VSE file containing definitions of some generic and PCI Express specific VSE script functions provided by Teledyne LeCroy must be included in every script NOTE The files VS constants inc and VS Primitives inc are included VS constants inc constants File containing definitions of some important generic and PCI Express specific VSE global VSTemplate pev _ Template file for new verification scripts VSUser globals inc File of user global variable and constant definitions In this file it is useful to enter definitions of constants variables and functions to be used in many scripts you write 22 1 Example Script Files The VSE example files are located in the Scripts VFScripts Samples subfolder of the main PCle Protocol Suite folder The current version of VSE includes the following files File Description examp tlp data inc Sample include file containing definitions and functions used by some other sample scripts examp dllps pevs Sample processing script that outputs information about DLLP packets present in the trace examp tlps pevs Sample processing script that outputs information about TLP packets present in the trace examp ordered sets pevs Sample processing script that outputs information about Ordered Set and Link Condition packets present in t
61. e examp ahci errors pevs Sample processing script that outputs information about AHCI Transaction errors present in the trace examp ata errors pevs Sample processing script that outputs information about ATA Transaction errors present in the trace 124 Teledyne LeCroy Verification Script Engine Reference Manual 125 Teledyne LeCroy Verification Script Engine Reference Manual How to Contact Teledyne LeCroy Type of Service Call for technical support Fax your questions Write a letter Send e mail Visit Teledyne LeCroy web site Contact US and Canada 1 800 909 7112 Worldwide 1 408 653 1260 Worldwide 1 408 727 6622 Teledyne LeCroy Corporation Protocol Solutions Group Customer Support 3385 Scott Blvd Santa Clara CA 95054 3115 psgsupport teledynelecroy com teledynelecroy com 126
62. e a Re a E OR HERRERA REIS 97 15 INFORMATION FUNCTIONS 98 15 eire ne te ete e Em ate eet ea e 98 15 2 OETSCRIPTNAME 5 iet t ette et t e euet bebe ea bee eee bob be Deere 99 15 3 100 15 4 SGETGURRENTTIME EYRT ERE 101 15 5 95 2 ERR Ra e Ren ae Ea oup RETI 102 15 6 GETTRIGGERPACKETNUMBER 2 0 4 4 103 15 7 iTBABIASEBROR RE RETI ts 104 T6 NAVIGAT ON FUN O T ON S 22225255 105 40 1 7 GQOTOEVENT m EU MEME MIC MM INI MI M ot 105 16 25 testa ote D ND m MU IM IM I SDN OIA 106 Jwasie iilewgellme 107 Lo MEE On cem 107 108 1729 4 WRITESTRINGO 109 17 4 SHOWINB
63. ecific set of members 4 4 44400 20 5 2 8 NVM transaction specific set of members 11111111 21 5 2 9 NVM command specific set of members 26 5 2 10 AHCI transaction specific set of members sse eene 43 5 2 11 transaction specific set 1113111 111 1 nnn 54 6 VERIFICATION SCRIPT ENGINE OUTPUT CONTEXT 5 2 222 59 7 VERIFICATION SCRIPT ENGINE 60 7 1 PACKET LEVEL EVENTS t eret ere ter 60 7 2 LINK TRANSACTION LEVEL EVENTS 2 2 2 eu edet c e OE 60 7 3 0 60 7 4 NVM TRANSACTION LEVEL sese sess 60 7 5 NVM COMMAND LEVEL EVENTS 0 61 7 6 AHCI TRANSACTION LEVEL EVENTS 0 62 7 7 TRANSACTION PEVEL EVENTS e
64. ecurityReceive PRP1 6 63 0 PRP Entry 1 Receive PRP2 8 63 0 PRP Entry 2 RSVD 10 7 0 Reserved SPSP 10 23 8 SP Specific SECP 10 31 24 Security Protocol AL 11 31 0 Allocation Length Security Send SecuritySend PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 RSVD 10 7 0 Reserved SPSP 10 23 8 SP Specific SECP 10 31 24 Security Protocol TL 11 31 0 Transfer Length Read Read MPTR 4 63 0 Metadata Pointer PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 MSGLP 4 63 0 Metadata SGL Segment Pointer SGL1 6 63 0 SGL Entry 1 SLBA 10 63 0 Starting LBA NLB 12 15 0 Number of Logical Blocks RSVD 12 25 16 Reserved PRINFO 12 29 26 Protection Information Field FUA 12 30 Force Unit Access LR 12 31 Limited Retry ACCF 13 3 0 Access Frequency ACCL 13 5 4 Access Latency SEQR 13 6 Sequential Request INCOM 13 7 Incompressible RSVD1 13 10 8 Reserved EILBRT 14 31 0 Expected Initial Logical Block Reference Tag ELBAT 15 15 0 Expected Logical Block Application Tag 29 Teledyne LeCroy Verification Script Engine Reference Manual ELBATM 15 31 16 Expected Logical Block Application Tag Mask Reservation ReservationAcquire PRP1 6 63 0 PRP Entry 1 Acquire PRP2 8 63 0 PRP Entry 2 SGL1 6 63 0 SGL Entry 1 RACQA 10 2 0 Reservation Acquire Action IEKEY 10 3 Ignore Existing Key RSVD 10 7 4 Reserved RTYPE 10 15 8 Reservation Type RSVD1 10 31 16 Reserved Rese
65. eeeee enne nnna annus enn nni tnnt sanas assa nennt n nnns n nnn 85 o MENU IUE 85 1 TIME GALCULATION FUNC TIO NS 86 tei 86 1122 2 Wun a n RE eR i DS 87 11 39 TMUETIMEBYIN TO RM ee 88 IEA S 3 civics is tit Dee aod el di el ne in AT 89 12 TIME EOGICAE FUNCTIONS 5 222 aan aaae e aao dado aa aaa eaea aa 90 12 1 ISEQUAETIME anaana T T TT TT TT TT TT TT TT 90 12 2 SESS TMEO tit ot te tp aee aaae ota e Ep aae Ea ERE ERR EDU 91 12 3 SGREATERTIME ftn fnm db ne nnnm 92 12 4 ISTIMEININTERVAE eere n dave rne reds dace exeun s 93 13 TIME TEXT onore ee e D pups Sis els P ee adaa 94 19 1 94 OUTPUT FUNCTIONS si ccc 95 T4 b 5 22 2208202528002828280028282880282520080262226 2 e 95 14 2 ENABLEOUTPUIT eee ae on aa uL naa oe ER AR OE TR X a 96 14 35 DISABEEOUTPUT iiie cete deca een iato ta a ean ee aet uto oe Ia Aa Lo to a Xo a oe
66. ence Manual 15 6 GetTriggerPacketNumber This function returns the number of the trigger packet in the trace In case no trigger event was recorded in the trace a value of OXFFFFFFFF is returned Format GetTriggerPacketNumber Example ReportText FormatEx Trigger packet i GetTriggerPacketNumber 103 Teledyne LeCroy Verification Script Engine Reference Manual 15 7 TraHasError This function returns non zero value if transaction has passed error Format TraHasError error code Example if TraHasErrorr ERROR INCOMPLETE SUB TRA ReportText Incompete sub transaction 104 Teledyne LeCroy Verification Script Engine Reference Manual 16 Navigation Functions 16 1 GotoEvent This function forces the application to jump to some trace event and show it in the main trace view Format GotoEvent level index segment GotoEvent Parameters level Transaction level of the event to jump to possible values PACKET LINK SPLIT NVME NVMC AHCI ATA index Transaction index of the event to jump to segment Segment index of the event to jump to If omitted the current segment index is used Remarks If no parameters were specified the application jumps to the current event being processed by VSE The segment parameter is used only when the verification script is running over a multi segmented trace extension pem For regular traces it is ignored If wrong
67. ensions equal to the Link Width for the Training Sequence packet in TS_LinkNumberList Contains the Link Number parameter values for all lanes in TS_LaneNumberList Contains the Lane Number parameter values for all lanes in TS_N_FTSList Contains the N_FTS parameter values for all lanes in TS TrainingControlList Contains the Training Control bitmap parameter values for all lanes in TS RawSymbolsList Contains the list of all symbols for all lanes in TS DataRateList Contains the Data Rate parameter values for all lanes The following parameters are only valid for Gen 3 in TS PreCursorList Contains the Pre Cursor parameter values for all lanes in TS CursorList Contains the Cursor parameter values for all lanes in TS PostCursorList Contains the Post Cursor parameter values for all lanes Note For Link Number and Lane Number values the special value of Ox1FF is used to indicate the PAD symbol Please refer to the examp ordered sets pevs sample script for an example of how to process ordered Sets and Training Sequences in particular 17 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 5 Link Condition specific set of members in LinkConditionType Contains the numeric encoding of the Link Condition type The following possible values are defined by VSE and the corresponding constants can be used by scripts LINK CONDITION UNKNOWN 0 Link Condition unknown LINK_CONDITION_LINK_UP 1 Link Up Link Condit
68. er Management NVMC FID LBARANGETYPE 0x03 LBA Range Type NVMC FID TEMPERATURETHRESHOLD 0x04 Temperature Threshold NVMC FID ERRORRECOVERY 0x05 Error Recovery NVMC FID VOLATILEWRITECACHE 0x06 Volatile Write Cache NVMC FID NUMBEROFQUEUES 0x07 Number of Queues NVMC FID INTERRUPTCOALESCING 0x08 Interrupt Coalescing NVMC FID INTERRUPTVECTORCONFIG 0x09 Interrupt Vector Configuration NVMC FID WHRITEATOMICITY Write Atomicity NVMC FID ASYNCEVENTCONFIG OxOB Asynchronous Event Configuration NVMC FID AUTOPOWERSTATETRANS OxOC Autonomous Power State Transition NVMC FID SOFTPROGHRESMARKER 0x80 Software Progress Marker NVMC FID HOSTIDENTIFIER 0x81 Host Identifier NVMC FID RESERVNOTIFICMASK 0x82 Reservation Notification Mask NVMC FID RESERVPERSISTANCE 0x83 Reservation Persistance The Log Page Identifier field of Get Log Page command can be accessed the following way in GetLogPage LID The following possible values are defined by VSE and the corresponding constants can be used by scripts Log Page Identifier Value Name NVMC ERROR INFORMATION 0x01 Error Information NVMC SMART HEALTH INFORMATION 0x02 SMART Health Information NVMC LID FIRMWARE SLOT INFORMATION 0x03 Firmware Slot Information NVMC LID RESERVATION NOTIFICATION 0x80 Reservation Notification 41 Teledyne LeCroy Verification Script Engine Reference Manual
69. esenting transaction payload divided by response time expressed in kilobytes per second an integer value in Metric PayloadBytes Metric presenting number of data payload bytes this NVM Transaction transferred an integer value in Metric NumOfLinkAndSplitTras Metric presenting the total number of Link and Split Transactions that compose this AHCI Transaction an integer value in Metric ResponseTime Metric presenting time it took to transmit this AHCI Transaction on the link from the beginning of the first packet to the end of the last packet in the transaction a VSE time object value see 9 1 VSE Time Object for details 53 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 11 ATA transaction specific set of members Valid for ATA transactions only Undefined for other events All the ATA specific values are present in the input context for ATA transactions depending upon the type of register Also the common PayloadLength and Payload values reflect the total combined payload for the ATA transaction In addition to that the following values exist in ataCommandCode Contains ATA command code value in ataCommand Contains the numeric encoding of the ATA command id The following possible values are defined by VSE and the corresponding constants can be used by scripts Constant Value 0
70. ext text OxAAAA y OxBBBB text FormatEx x 0x 04X y 0Ox 04X x ReportText Text text 95 Teledyne LeCroy Verification Script Engine Reference Manual 14 2 EnableOutput Enables showing information in the output window and sending COM reporting notifications to COM clients Format EnableOutput Example EnableOutput 96 Teledyne LeCroy Verification Script Engine Reference Manual 14 3 DisableOutput Disables showing information in the output window and sending COM reporting notifications to COM clients Format DisableOutput Example DisableOutput 97 Teledyne LeCroy Verification Script Engine Reference Manual 15 Information Functions 15 1 GetTraceName This function returns the filename of the trace file being processed by VSE If the script is being run over a multi segmented trace this function returns the path to the segment being processed Format GetTraceName filepath compatible Parameters filepath compatible If this parameter is present and not equal to 0 the returned value may be used as part of the filename Example ReportText Trace name GetTraceName File OpenFile C My Files GetTraceName 1 log log For trace file with path D Some Traces Data pex GetTraceName 1 returns D Some Traces_Data pex 98 Teledyne LeCroy Verification Script Engine Reference Manual 15 2 Ge
71. g constants can be used by scripts For NVME CONTROLLER REG transaction event Constant Value NVME CAP 0 NVME VS 1 NVME INTMS 2 NVME 3 NVME 4 _NVME_RESERVED1 5 _NVME_CSTS 6 _NVME_NSSR 7 NVME AQA 8 NVME ASQ 9 _ ACQ 10 NVME RESERVED2 11 NVME RESERVED CMD SET SPECIFIC 12 For NVME DOORBELL REG transaction event Constant Value NVME ADMIN SQTDBL 14 NVME ADMIN CQHDBL 15 NVME SQYTDBL 16 NVME CQYHDBL 17 For NVME ADMIN SUBMISSION CMD transaction event Constant Value NVME ADMIN SUBMISSION Q ENTRY 18 For NVME COMPLETION CMD transaction event Constant Value NVME ADMIN COMPLETION Q ENTRY 19 For NVME SUBMISSION transaction event Constant Value NVME IO SUBMISSION Q ENTRY 20 For NVME COMPLETION CMD transaction event Constant Value 21 Teledyne LeCroy Verification Script Engine Reference Manual NVME IO COMPLETION ENTRY 21 For NVME transaction event Constant Value _NVME 80 NVME CMD PRP LIST 81 For NVME SQGL transaction event Constant Value NVME SGL DESCRIPTOR 83 NVME MSGLP 84 For NVME TRANSFERED DATA transaction event Constant Value _ NVME DATA 86 For NVME IDX DAT REG transaction event Constant Value NV
72. he specified channel should be sent to script Format SendChannel channel Parameters channel Can have one of following values CHANNEL 1 1 Send events from Upstream direction of the link channel 1 CHANNEL 2 2 Send events from Downstream direction of the link channel 2 Example SendChannel CHANNEL 1 Send events from Upstream direction of the link 66 Teledyne LeCroy Verification Script Engine Reference Manual 85 SendChannelOnly This function specifies that ONLY events that have occurred on the specified channel should be sent to the script Format SendChannelOnly channel Parameters channel Can have one of following values CHANNEL 1 1 Send events from Upstream direction of the link channel 1 CHANNEL 2 2 Send events from Downstream direction of the link channel 2 Example SendChannelOnly CHANNEL 1 Send ONLY events from Upstream direction of the link 67 Teledyne LeCroy Verification Script Engine Reference Manual 8 6 DontSendChannel This function specifies that events that have occurred on the specified channel should NOT be sent to the script Format DontSendChannel channel Parameters channel Can have one of following values CHANNEL 1 1 Send events from Upstream direction of the link channel 1 CHANNEL 2 2 Send events from Downstream direction of the link channel 2 Example DontSendChannel CHANNEL 1 DO NOT send events f
73. he title bar default text Optional String expression displayed in the text box as the default response if no other input is provided If you omit default text the text box is displayed empty return type Optional It specifies the contents of the return object The return type argument values are Constant Value Description B LIST 0 CSL list object is returned by Default STRING 1 String input as it was typed in the text box Return Values Depending upon the return type argument this function returns either a CSL list object or the text typed in the text box as it is In case of return type LIST by default the text in the text box is considered as a set of list items delimited by only hexadecimal decimal and string items are currently supported Text example Hello world 12 Something OxAA 10 1221 Produces a CSL list object of5 items list Hello world 12 Something OxAA 10 1221 J list 0 Hello world list 1 12 list 2 Something list 3 OxAA list 4 10 lust 5 22 114 Teledyne LeCroy Verification Script Engine Reference Manual Note Although the dialog box input text parser tries to determine a type of list item automatically a text enclosed in quote signs is always considered as a string P Some stuff TestPrimitives Eg Enter the list Cancel Hello world Ox12AAA 1122 34
74. he trace examp check errors pevs Sample PASS FAIL script that checks all packets in the trace for all the errors VSE exports and fails in case any error is found examp link transactions pevs Sample processing script that outputs information about Link Transactions present in the trace examp split transactions pevs Sample processing script that outputs information about Split Transactions present in the trace examp metrics pevs Sample processing script that outputs information about Memory Write Link Transaction metrics and all Split Transaction metrics examp nvme pevs Sample processing script that outputs information about NVM Transactions present in the trace examp nvme errors pevs Sample processing script that outputs information about NVM Transaction errors present in the trace examp nvmc pevs Sample processing script that outputs information about NVM Commands present in the trace examp nvmc errors pevs Sample processing script that outputs information about NVM Commands errors present in the trace examp nvc deltatime metrics pevs Sample processing script that outputs information about NVM Commands delta time metrics present in the trace examp ahci pevs Sample processing script that outputs information about AHCI Transactions present in the trace examp ata pevs Sample processing script that outputs information about ATA Transactions present in the trac
75. his option if set allows editor applications to edit all included files katal selected scripts in one process extension inc along wth main 8 verification script fles extension vse Launch editor application in full screen Otherwise only main verification script files will be opened for editing Path to the template for a new script oD Projects PETracet Debug Scrpts VFScrpt Browse Launches editor application in full screen m Display settings Show the full path for the trace file in dialog caption Full path to the file to be used as a v Restore don t maximize dialog at start template for a new script Load last output from saved log files when possible This setting if set specifies that the last 1 Activate dialog after scripils stop running saved output for selected scripts should Remember dialog layout be loaded into the output windows Saving settings This setting if set brings Run VS dialog Path to the folder where to save output log files to foreground when scripts stopped D Projects PE Tracer Debug Browse Save logs automatically after scripts stopped running This setting if set forces the application to save output automatically when the acrints stopped unning See screen pop up tooltips for explanation of other settings 10 Teledyne LeCroy Verification Script Engine Reference Manual
76. ied transaction level the function does nothing and an error message is sent to the output window Example set marker to the current event if Something interesting SetMarker Something cool if SomeCondition interesting segment GetEventSegNumber interesting level in Level interesting index in Index OnFinishScript set marker to the interesting event SetMarker Cool Marker interesting level interesting index interesting segment go to the interesting event GotoEvent interesting level interesting index interesting segment 106 Teledyne LeCroy Verification Script Engine Reference Manual 17 File Functions This group of functions covers VSE capabilities to work with the external files 17 1 OpenFile This function opens a file for writing Format OpenFile file path append Parameters file path Full path to the file to open For use W append This parameter if present and not equal to 0 specifies that VSE should append to the contents of the file Otherwise the contents of the file are overwritten Return Values The handle to the file to be used in other file functions Example set file handle 0 file handle OpenFile D Log txt Opens file the previous contents are erased WriteString file handle Some Textl Write text string to file WriteString file handle
77. illed by the script and can be used inside of the application For more details about output contexts please refer to the CATC Script Language CSL Manual The verification script output contexts have only one member out Result Result of the whole verification program defined in the verification script This member is supposed to have the values VERIFICATION PROGRESS set by default when script starts running VERIFICATION PASSED VERIFICATION FAILED The last two values should be set if you decide that the recorded trace does or does not satisfy the imposed verification conditions In both cases the verification script stops running If you don t specify any of those values the result of script execution is set as VERIFICATION FAILED at exit Note If you don t care about the results of the script that s running please call function ScriptForDisplayOnly one time before stopping the script Then the results are DONE 59 Teledyne LeCroy Verification Script Engine Reference Manual 7 Verification Script Engine Events VSE defines a large group of trace events on packet link split AHCI ATA NVM transaction and NVM command levels that can be passed to a verification script for evaluation or retrieving and displaying some contained information The information about the type of event can be seen in in TraceEvent Please refer to the topic Sending Functions in this manual for details about how to specify trans
78. in AHCIRegldAsString Contains an AHCI register name in PortNum Contains a port number in SlotNum Contains a slot number in AHCITraHasError If set to a non zero value indicates AHCI transaction has errors in AHCIErrorld Contains the numeric encoding of the AHCI error type The following possible values are defined by VSE and the corresponding constants can be used by scripts Error type Value Error name Error description AHCI ERROR RESERVED NOT NULL 0 Reserved field is not 0 Reserved registers and fields must be 0 for AHCI AHCI ERROR INCOMPLETE TRA 1 Incomplete Incomplete AHCI 44 Teledyne LeCroy Verification Script Engine Reference Manual transaction AHCI ERROR LOGICAL ERROR 2 Logical error Discrepancy between the states of different registers wrong order of transactions etc AHCI ERROR RO VIOLATION 3 Read only field changed An attempt of writing to the read only fields and registers AHCI ERROR COMPLETER ABORT 4 Completer abort Completer abort transaction AHCI ERROR TRA STARTS FROM MIDDLE 5 Unexpected register Incomplete AHCI offset transaction that starts from the middle of register _ ERROR REG ACCESS VIOLATION 6 Register access register access is violation longer than 64 bits or crosses 8 byte alignment boundary AHCI ERROR TABLE ALIGNMENT ERROR 7 Address is not properly Table base ad
79. in TH TLP Processing Hints bit value in TD Digest bit value in EP Poisoned TLP bit value in AT Address Type field value in Length Length field value in LCRC LCRC value as set by the Data Link Layer in ECRC ECRC value optional 15 Teledyne LeCroy Verification Script Engine Reference Manual Field values dependant upon TLP type in FirstDwBe Byte Enable bits for the first DW of the payload all TLPs except Completions and Messages in LastDwBe Byte Enable bits for the last DW of the payload all TLPs except Completions and Messages in Address 32 bit Address value for IO Configuration and Mem 32 requests in AddressLo Low 32 bits of the Address for Mem 64 requests and Messages routed by address in AddressHi High 32 bits of the Address for Mem 64 requests and Messages routed by address in Deviceld Requester ID value Bus Device and Function Number fields combined for Configuration requests and Messages routed by ID in Register Register address Register Number and Extended Register Number combined for Configuration requests For Completion TLPs only in Completerld Completer ID value Bus Device and Function Number fields combined in ComplStatus Completion Status field value in BCM Byte Count Modified bit value in ByteCount Remaining Byte Count field value in LowerAddr Lower Address for starting byte of completion field value For Message TLPs only in MessageCode Message Code field value i
80. in ataSlot Contains slot number in ataFeatures Contains feature sector count in ataCount Contains the numeric encoding of the Sector Count register of the Shadow Register Block in ataLBA Contains the numeric encoding of the LBA low mid and high registers of the Shadow Register Block in ataLBAEXT Contains the numeric encoding of the expanded LBA register of the Shadow Register Block in ataDevice Contains the first byte of the Device register of the Shadow Register Block in ataDevice0 Returns first bit of in ataDevice value in ataDevice7 Returns last bit of in ataDevice value in ataOutputStatus Contains the numeric encoding of transaction status register in ataBSY If set to a non zero value indicates that the device is accessing the registers Indicates the interface is busy in ataDRDY If set to a non zero value indicatesthat the device is capable of responding to a command in ataDF If set to a non zero value indicates that the device has detected a write fault condition in ataDSC If set to a non zero value indicates that a seek has been completed and the device head is settled over a track in ataDRQ Data If set to a non zero value indicates that the device is ready to transfer a word or byte of data between the host and the device in ataCORR If set to a non zero value indicates that a correctable data error was encountered and the data has been corrected This condition does not terminate a data transfer in
81. ion event LINK CONDITION LINK DOWN 2 Link Down Link Condition event LINK CONDITION SKEW 3 Deskewing Link Condition event LINK CONDITION LINK WAKE UP 4 Link Wake Up Link Condition event LINK CONDITION LINK WAKE DOWN 5 Link Wake Down Link Condition event Note For a comprehensive and most up to date list of constants and codes please review file Users Public Documents LeCroy PCle Protocol Suite Scripts VFScripts VS_constants inc 18 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 6 Link transaction specific set of members Valid for Link transactions only undefined for other events All the TLP specific values are present in the input context for Link transactions depending upon the type of TLP for this Link transaction In addition to that the following value exists in TransactionStatus Status for this Link transaction Can be one of three values Implicitly Acknowledged Explicitly Acknowledged or Incomplete Link Layer error See file 5 constants inc for encodings Metric values The following values are defined in input context for Link Transactions that are related to Unit Metrics To learn more about Unit Metrics please refer to PCle Protocol Suite Help in Metric NumOfPackets Metric presenting the total number of packets that compose this Link Transaction an integer value in Metric ResponseTime Metric presenting time it took to transmit this Link Transaction on the PE li
82. ipt For details how to specify what kind of events should be passed to the script please see the topic sending functions OPTIONAL g MyGlobalVariable 0 Uncomment the line below if you want to disable output from ReportText functions DisableOutput Ha EH EE FE TE HH FE EE EE EE aE aE EEE EE EE aE aE EE EE EE ProcessEvent HEH HE HE HE HE EE FE FE FE EE HH EE EH HE HH RE EH EH EE EH HE EH HE HE EE EH RHE EE HE HE HE HEHE FE aE HE HE HE HE HE HE FE FE FE FE HE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE E HE FE FE FE HE HE FE FE FE HE HE HE a aE FE a FE HE FE HE FE FE HE HE HE FE FE HH FE FE HE HH FE FH HH HE E It is a main script function called by the application when the next waited event occured in the evaluated trace REQUIRED MUST IMPLEMENTED IN VERIFICATION SCRIPT FEFE HEHE FE HE HE HE FE FE HE HE HE FE FE FE FE HE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE HE HE FE FE FE HE HE HE FE FE HE HE HE FE FE HE E HE FE FE HE HE HE FE FE HE HE HE FE FE HE HE HE FE HHHH HE HE ProcessEvent Write the body of this function depending upon your needs It might require branching on event type select in TraceEvent in TraceEvent return Complete Ha EH EE HH HHH a HE FE FE TE AE HE aE EE
83. ipt Engine Reference Manual CPD 20 Cold Presence Detection ESP 21 External SATA Port FBSCP 22 FIS based Switching Capable Port APSTE 23 Automatic Partial to Slumber Transitions Enabled ATAPI 24 Device is ATAPI DLAE 25 Drive LED on ATAPI Enable ALPE 26 Aggressive Link Power Management Enable ASP 27 Aggressive Slumber Partial 31 28 Interface Communication Control PxRSVD Reserved PxTFD STS_ERR 00 Error during the transfer STS_CS1 02 01 Command specific STS_DRQ 03 Data transfer is requested STS_CS2 06 04 Command specific STS_BSY 07 Interface is busy ERR 15 08 Error RSVD 31 16 Reserved 51 5 07 00 Sector Count Register LBA LOW 15 08 LBA Low Register LBA MID 23 16 LBA Mid Register LBA HIGH 31 24 LBA High Register PxSSTS DET 03 00 Device Detection SPD 07 04 Current Interface Speed IPM 11 08 Interface Power Management RSVD 31 12 Reserved PxSCTL DET 03 00 Device Detection Initialization SPD 07 04 Speed Allowed IPM 11 08 Interface Power Management Transitions Allowed SPM 15 12 Select Power Management PMP 19 16 Port Multiplier Port RSVD 31 20 Reserved PxSERR ERR I 00 Recovered Data Integrity Error ERR M 01 Recovered Communications Error ERR RSVD2 07 02 Reserved ERR T 08 Transient Data Integrity Error ERR C 09 Persistent Communication or Data Integrity Error ERR
84. it 2 DPC 7 3 End to end Data Protection Capabilities bit 3 DPC 4 7 4 End to end Data Protection Capabilities bit 4 RSVD3 7 7 5 Reserved DPS 50 2 7 10 8 End to end Data Protection Type Settings bits 0 2 39 Teledyne LeCroy Verification Script Engine Reference Manual DPS 7 11 End to end Data Protection Type Settings bit 3 RSVD4 7 15 12 Reserved BITO 7 16 Namespace Multi path I O and Namespace Sharing Capabilities bit 0 RSVD5 7 23 17 Reserved RESCAP BIT 7 24 Reservation Capabilities bit 0 0 RESCAP BIT 7 25 Reservation Capabilities bit 1 1 RESCAP BIT 7 26 Reservation Capabilities bit 2 2 RESCAP BIT 7 27 Reservation Capabilities bit 3 3 RESCAP BIT 7 28 Reservation Capabilities bit 4 4 RESCAP BIT 7 29 Reservation Capabilities bit 5 5 RESCAP BIT 7 30 Reservation Capabilities bit 6 6 RSVD6 7 31 Reserved RSVD7 8 703 0 Reserved EUI64 30 63 0 IEEE Extended Unique Identifier RSVD9 48 1535 Reserved 0 VS 96 29695 Vendor Specific 0 Identify List of Identify NSID index NSID 0 31 0 Namespace ID Namespaces NSID Reservation ReservationAcquire CRKEY 0 63 0 Current Reservation Key Acquire PRKEY 2 63 0 Preempt Reservation Key Reservation ReservationRegister CRKEY 0 63 0 Current Reservation Key Register NRKEY 2 63 0 New Reservation Key Reservation ReservationRelease CRKEY
85. itFC and UpdateFC DLLPs in DataFC Credit value for payload data of the type indicated by the DLLP type valid only for InitFC and UpdateFC DLLPs in VendorSpecific 3 byte vendor defined value in a Vendor specific DLLP DLLP Error related Variables in InvalidEncoding If set to a non zero value indicates an invalid DLLP encoding in RsvdField If set to a non zero value indicates a reserved field is non zero or in use in G3ErrorFraming If set to a non zero value indicates Symbol 1 is incorrect but Symbol 0 is correct The value of the incorrect Symbol 1 is stored in in G3ErrorSym1Val Note This is a PCIE Gen 3 DLLP error in G3ErrorSym1 Val The value of an incorrect Symbol 1 if in G3ErrorFraming is set to a non zero value in FCError If set to a non zero value indicates a Flow Control initialization protocol violation in BadCRC Set to 1 if the DLLP has bad 16 bit CRC and to 0 otherwise Un decoded Frame in Frame Contains the complete DLLP frame i e from SDP till END 13 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 3 TLP specific set of members Valid for TLPs only undefined for other events TLPs in TLPType Contains the numeric encoding of the TLP type The following possible values are defined by VSE and the corresponding constants can be used by scripts TLP TYPE ID INVALID 0 TYPE ID MRD32 1
86. j 46225458 tine annee 124 223 JEXAMPLE SCRIPT FILES tit eee a Oe ee ee eee eee oes 124 Teledyne LeCroy Verification Script Engine Reference Manual 1 Introduction This document contains a description of the Teledyne LeCroy Verification Script Engine VSE a utility in the PCle Protocol Suite software that allows users to perform custom analyses of PCI Express PE traffic recorded using the new generation of PCI Express protocol analyzers VSE allows users to ask the PCle Protocol Suite application to send some desired events currently defined as packets link transactions split transactions AHCI ATA NVM transactions or commands from a PE trace to a verification script written using the CATC script language This script then evaluates the sequence of events timing data or both in accordance with user defined conditions and performs post processing tasks such as exporting key information to external text based files or sending special Automation COM notifications to user client applications VSE was designed to allow users to easily retrieve information about any field in a PE packet header or link split NVM AHCI ATA transaction or command and to make complex timing calculations between different events in a pre recorded trace It also allows filtering in or filtering out of data with dynamically changing filtering conditions porting of information to a special output window saving of data to text files and sending of data to
87. k DLLPs to the script SendDllpType DLLP TYPE UPDATE FC Send all UpdateFC DLLPs 75 Teledyne LeCroy Verification Script Engine Reference Manual 8 13 FilterDIlpType This function specifies more precise tuning filtering out for sending DLLP packets to the script Format FilterDllpType dllp type Parameters dllp type Encoding of the DLLP type This parameter may be one of the values defined for the SendDIlpType function Example SendDllpType DLLP TYPE INIT FC Send all InitFC DLLPs to the script FilterDllpType DLLP TYPE INIT CPL 4 Don t send InitFCs for Completions FilterDllpType DLLP TYPE INIT FC2 CPL Only InitFC DLLPs for Posted and Non posted requests are sent to the script 76 Teledyne LeCroy Verification Script Engine Reference Manual 8 14 This function specifies more precise tuning filtering in for sending TLP packets to the script Format SendTlpType type Parameters tlp type TLP type values Encoding of the TLP type This parameter may be one of the following values Constant TLP type TLP TYPE INVALID Invalid TLP types TYPE MRD32 Memory Read Request 32 bit address format TLP TYPE MRDLKS32 Memory Read Request Locked 32 bit address format TYPE MWR32 Memory Write Request 32 bit address format TYPE MRD64
88. ket Type and in G3ErrorFraming DLLP Packet Type If this variable is 1 one or more of the errors indicated are present If it is O zero the errors indicated are not present in ErrorDisparity If set to a non zero value indicates presence of Running Disparity error s in this packet in ErrorSymbol If set to a non zero value indicates presence of Symbol 10 bit Code error s in this packet in ErrorWrongSymbol If set to a non zero value indicates a K symbol was received where a D symbol was expected or vice versa in ErrorDelimiter If set to a non zero value indicates presence of Delimiter error s in this packet in ErrorEndBad If set to a non zero value indicates presence of an EDB symbol in this packet in ErrorAlignment If set to a non zero value indicates presence of Alignment error s in this packet in ErrorLength If set to a non zero value indicates presence of Bad Length error s in this TLP packet in HasldleErrors Indicates presence of Idle errors in the current packet If set one of the following is set indicating the presence of error s between this packet and the previous packet on this direction of the link in IdleErrorDisparity If set to a non zero value indicates presence of Running Disparity error s in IdleErrorSymbol If set to a non zero value indicates presence of Symbol 10 bit Code error s in IdleErrorSkip If set to a non zero value indicates presence of Skip error s in IdleErrorData If
89. ming additional operations on the selected scripts m Run verification script s D PE Tracesless Venfication scnpt Resut Testa 15 Test DONE 55 Test2 Testa iS Test DONE spe Run verification script s Edt script New script v Show Gid v Show Description window F2 v Show Output F3 Settings e Run verification script s Starts running selected script s e Edit script Allows editing of the selected script s using whatever editor was specified in Editor settings e New script Creates a new script file using the template specified in Editor settings e Show Grid Shows hides a grid in the verification script list e Show Description window Shows hides the script description window Shortcut key F2 Show Output Shows hides the script output windows Shortcut key Settings Opens a special Setting dialog which allows you to specify different settings for VSE Teledyne LeCroy Verification Script Engine Reference Manual 42 VSE GUI Settings After choosing Settings the following dialog appears This option if set allows editor applications supporting multi docum ert interface MDI to edt all script files Choose Editor application and editing settings related to the selected scripts in one application instance Notepad by default C Other Otherwise a new application instance ie will be launched for each script file meatal teh leet ite T
90. n MessageRoute Message Routing field value from the TLP Type field Note For a comprehensive and most up to date list of constants and codes please review file Users Public Documents LeCroy PCle Protocol Suite Scripts VFScripts VS_constants inc For Configuration Write Requests and Read Completions in RegisterData 32 bit value written to or read from a configuration register for convenience of processing the configuration requests as it also can be obtained from the Payload Un decoded Frame in Frame Contains the complete TLP frame i e STP till END 16 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 4 Ordered Set specific set of members in OrderedSetType Contains the numeric encoding of the Ordered Set type The following possible values defined by VSE and the corresponding constants can be used by scripts ORDSET TYPE TS1 0x02 ORDSET TYPE TS2 0x03 ORDSET TYPE FTS 0x04 ORDSET TYPE EIOS 0x05 ORDSET TYPE SKIP 0x06 ORDSET TYPE PATN 0x07 ORDSET TYPE EIEOS 0x08 ORDSET TYPE SDS 0x0C Note For a comprehensive and most up to date list of constants and codes please review file Users Public Documents LeCroy PCle Protocol Suite Scripts VFScripts VS_constants inc For Training Sequences TS1 and TS2 the following variables of the list type exist in the input context the lists are arrays of integers with dim
91. n Script Engine Reference Manual 19 4 SetUserDigLimit This function sets the current limit of user dialogs allowed in the verification script If the script reaches this limit no user dialogs are shown and script does not stop By default this limit is set to 20 Format SetUserDIgLimit Example result MsgBox Format UserDlgLimit d GetUserDlgLimit MB OKCANCEL EXCLAMATION Some Title SetUserDlgLimit 2 set the limit to 2 117 Teledyne LeCroy Verification Script Engine Reference Manual 20 String Manipulation Formating Functions 20 1 FormatEx Write formatted data to a string FormatEx is used to control the way that arguments print out The format string may contain conversion specifications that affect the way in which the arguments in the value string are returned Format conversion characters flag characters and field width modifiers are used to define the conversion specifications Format FormatEx format string argument list Parameters format string Format control string argument list Optional list of arguments to fill in the format string Return Values Formatted string Format conversion characters Code Type Output Integer Character d Integer Signed decimal integer Integer Signed decimal integer Integer Unsigned octal integer Integer Unsigned decimal integer Integer Unsigned hexadecimal integer using abcdef
92. ng number of data payload bytes this NVM Transaction transferred an integer value in Metric_NumOfNVMTras Metric presenting the total number of NVM Transactions that compose this NVM Command an integer value in Metric LatencyTime Metric presenting time measured from the end of transmission of the SQ Doorbell to the completion of data delivery a VSE time object value see 9 1 VSE Time Object for details in Metric ResponseTime Metric presenting time it took to transmit this NVM Command on the link from the beginning of the first packet to the end of the last packet in the command a VSE time object value see 9 1 VSE Time Object for details in Metric SubmissionDoorbell CompletionDoorbell DeltaTime Metric presenting time measured between Submission Doorbell transaction and Completion Doorbell transaction a VSE time object value see 9 1 VSE Time Object for details in Metric SubmissionDoorbell CompletionCommand DeltaTime Metric presenting time measured between Submission Doorbell transaction and Completion Command transaction a VSE time object value see 9 1 VSE Time Object for details in Metric SubmissionCommand CompletionCommand DeltaTime Metric presenting time measured between Submission Command transaction and Completion Command transaction a VSE time object value see 9 1 VSE Time Object for details 42 Teledyne LeCroy 5 2 10 Verification Script Engine Reference Manual AHCI transaction specific set of
93. nk from the beginning of the first packet in the transaction to the end of the last packet in the transaction a VSE time object value see 9 1 VSE Time Object for details in Metric Throughput Metric presenting transaction payload divided by response time expressed in kilobytes per second an integer value in Metric PayloadBytes Metric presenting number of data payload bytes this Link Transaction transferred an integer value Notes For the incomplete Link Transactions only the NumOfPackets metric is valid In case of an incomplete Link Transaction the ResponseTime metric value is set to null 19 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 7 Split transaction specific set of members Valid for Split transactions only Undefined for other events All the TLP specific values for the request of the split transaction are present in the input context for Link transactions depending upon the type of TLP for this Link transaction Also the common PayloadLength and Payload values reflect the total combined payload for the Split transaction In addition to that the following values exist in CompletionStatus Completion Status for this Split transaction From the last completion of the response Metric values The following values are defined in input context for Split Transactions that are related to Unit Metrics To learn more about Unit Metrics please refer to PCle Protocol Suite Help in Metric NumOfPacke
94. ogical Block Application Tag Mask Write WriteUncorrectable SLBA 10 63 0 Starting LBA Uncorrectable NLB 12 15 0 Number of Logical Blocks RSVD 12 31 16 Reserved Compare Compare MPTR 4 63 0 Metadata Pointer PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 MSGLP 4 63 0 Metadata SGL Segment Pointer SGL1 6 127 0 SGL Entry 1 SLBA 10 63 0 Starting LBA NLB 12 15 0 Number of Logical Blocks RSVD 12 25 16 Reserved PRINFO 12 29 26 Protection Information Field FUA 12 30 Force Unit Access LR 12 31 Limited Retry EILBRT 14 31 00 Expected Initial Logical Block Reference Tag ELBAT 15 15 00 Expected Logical Block Application Tag ELBATM 15 31 16 Expected Logical Block Application Tag Mask Dataset DatasetManagement MPTR 4 63 0 Metadata Pointer Management PRP1 6 63 0 PRP Entry 1 31 Teledyne LeCroy Verification Script Engine Reference Manual PRP2 8 63 0 PRP Entry 2 MSGLP 63 0 Metadata SGL Segment Pointer SGL1 6 127 0 SGL Entry 1 NR 10 7 0 Number of Ranges RSVD 10 31 8 Reserved IDR 11 0 Attribute Integral Dataset for Read IDW 11 1 Attribute Integral Dataset for Write AD 11 2 Attribute Deallocate RSVD1 11 31 3 Reserved Write Zeroes WriteZeros SLBA 10 63 0 Starting LBA NLB 12 15 0 Number of Logical Blocks RSVD 12 24 16 Reserved PRINFO 12 29 26 Protection Information Field FUA 12 30 Force Unit Access LR 12 31 Limited Retry
95. on zero value indicates Device To Host interrupt happened in ataContainsInterruptH2D If set to a non zero value indicates Host To Device interrupt happened in ataContainsIncompleteSubTra If set to a non zero value indicates ATA transaction has incomplete sub transactions in ataContainsErrorSubTra If set to a non zero value indicates ATA transaction has sub transactions with errors in ataHasShadowRegisier If set to a non zero value indicates RFIS Shadow Register presence in ataRFISShadowRegister Contains the numeric encoding of the RFIS Shadow Register 5 2 11 1 Metric values in Metric Throughput Metric presenting transaction payload divided by response time expressed in kilobytes per second an integer value in Metric PayloadBytes Metric presenting number of data payload bytes this NVM Transaction transferred an integer value in Metric NumOfAHCITras Metric presenting the total number of AHCI Transactions that compose this ATA Transaction an integer value in Metric ResponseTime Metric presenting time it took to transmit this ATA Transaction on the link from the beginning of the first packet to the end of the last packet in the transaction a VSE time object value see 9 1 VSE Time Object for details 58 Teledyne LeCroy Verification Script Engine Reference Manual 6 Verification Script Engine Output Context Members All verification scripts have output contexts some special structures whose members are f
96. oper verification script operation FEFEFE FE HE FE E FE TE HE FE E FE TE FE HE FE FE FE TE FE FE HE FE FE FE TE HE FE E FE TE FE FE HE FE FE FE TE HE FE E FE TE FE FE FE FE FE FE TE FE FE E FE TE FE TE HE FE E FE TE FE FE HE FE E FE TE FE AE E E E E E E EE EE E set ModuleType Verification Script Should be set for all verification scripts set OutputType VS Should be set for all verification scripts that output only Report string and Result set InputType set DecoderDesc lt Your Verification Script description gt Optional HHH EH HE HH FE FE EH HE E FE EH HR HE EH HH EE HR HE EH EE HE HH EE EH RE EH HE EH HE HH EE HR E E E E E E HE include main Verification Script Engine definitions include VSTools inc Should be set for all verification scripts HHH EH FE FE HHH FE FE FE HE FE FE FE FE FE FE AE FE FE FE FE AE FE EH HE EE HE FE HE HE EE EH HE EH EH EH HE EH FE FE E E EHH HH Global Variables and Constants FEFE EE TE HE FE E AE TE HE FE HE FE TE FE EEE EEE FE HE FE E FE TE HE FE E FE TE FE EEE FE FE E FE TE HE FE E REE REE FE FE FE HE FE E FE TE FE AE HE FE REE E E E E E E E E E E Define your verification script specific global variables and constant in this section Optional const MY GLOBAL CONSTANT 10 set g MyGlobalVariable 0 FE AEAEE AE AE AE AE FE E AE AE AE AE FE
97. ore characters than the field width has spaces then the field expands to accommodate the argument Example str String 12 hex OxAABBCCDD formatted str FormatEx 5 d 0 508 str i hex i formatted str String 12 OxAABBCCDD 119 Teledyne LeCroy Verification Script Engine Reference Manual 21 Miscellaneous Functions 21 1 ScriptForDisplayOnly Specifies that the script is designed for displaying information only and that its author doesn t care about verification script result Such a script has a result of DONE after execution Format ScriptForDisplayOnly Example ScriptForDisplayOnly 120 Teledyne LeCroy Verification Script Engine Reference Manual 21 2 Sleep Asks VSE not to send any events to a script until the timestamp of the next event is greater than the timestamp of the current event plus sleeping time Format Sleep time Parameters time VSE time object specifying sleep time Example Sleep Time 1000 f Don t send any event occurred during 1 ms from the current event 121 Teledyne LeCroy Verification Script Engine Reference Manual 21 3 ConvertToHTML This function replaces spaces with amp nbsp and carriage return symbols with lt br gt in a text string Format ConvertToHTML text string Parameters text string Text string Example str Hello world n str How are you today html str ConvertToHTM
98. parameters were specified like an index exceeding the maximum index for the specified transaction level the function does nothing and an error message is sent to the output window Example if Something interesting GotoEvent 4 go to the current event if SomeCondition interesting segment GetEventSegNumber interesting level in Level interesting index in Index OnFinishScript go to the interesting event GotoEvent interesting level interesting index interesting segment 105 Teledyne LeCroy Verification Script Engine Reference Manual 16 2 SetMarker This function sets a marker for some trace event Format SetMarker marker text SetMarker marker text level index segment Parameters marker text Textofthe marker level Transaction level of the event to jump to possible values PACKET LINK SPLIT NVME NVMC AHCI ATA index Transaction index of the event to jump to segment Segment index of the event to jump to If omitted the current segment index is used Remarks If no parameters were specified other than marker text the application sets a marker to the current event being processed by VSE The segment parameter is used only when a verification script is running over a multi segmented trace extension pem For regular traces it is ignored If wrong parameters were specified like an index exceeding the maximum index for a specif
99. ript 77 Teledyne LeCroy Verification Script Engine Reference Manual 8 15 FilterTlpType This function specifies more precise tuning filtering out for sending TLP packets to the script Format FilterTlpType type Parameters tlp type Encoding of the TLP type This parameter may be one of the values defined for the SendTIpType function Example SendTlpType TLP TYPE CONFIG Send all Configuration Request TLPs f to the script TYPE ID CFGRD 1 Don t send Type 1 requests TYPE ID CFGWR 1 FilterTlpType FilterTlpType Fal Only 0 Configuration Request TLPs are sent to the script 78 Teledyne LeCroy Verification Script Engine Reference Manual 8 16 SendOrderedSetType This function specifies more precise tuning filtering in for sending Ordered Set packets to the script Format SendOrderedSetType set type Parameters set type Encoding of the Ordered Set type This parameter may be one of the following values Ordered Set type values Constant DLLP type ORDSET TYPE TS1 Training Sequence Type 1 ORDSET TYPE TS2 Training Sequence Type 2 ORDSET TYPE FTS Fast Training Sequence ORDSET TYPE IDLE SET Idle Set ORDSET TYPE IDLE GLC Idle Set ORDSET SKIP Skip ORDSET TYPE PATN Pattern ANY TYPE All possible Ordered Set types Example SendOrderedSetType ORDSET TYPE FTS Send Fast
100. ript Engine Reference Manual RSVD 19 Reserved 155 23 20 Interface Speed Support SCLO 24 Supports Command List Override SAL 25 Supports Activity LED SALP 26 Supports Aggressive Link Power Management SSS 27 Supports Staggered Spin up SMPS 28 Supports Mechanical Presence Switch SSNTF 29 Supports SNotification Register SNCQ 30 Supports Native Command Queuing S64A 31 Supports 64 bit Addressing GHC HR 00 HBA Reset IE 01 Interrupt Enable MRSM 02 MSI Revert to Single Message RSVD 30 03 Reserved AE 31 AHCI Enable IS IPS 31 00 Interrupt Pending Status PI PI 31 00 Port Implemented VS MNR 15 00 Minor Version Number MJR 31 16 Major Version Number CCC_CTL EN 0 Enable RSVD 2 1 Reserved INT 7 3 Interrupt 15 8 Command Completions TV 31 16 Timeout Value CCC PORTS PRT 31 0 Ports EM LOC SZ 15 0 Buffer Size OFST 31 16 Offset EM CTL STS MR 0 Message Received RSVD4 07 01 Reserved CTL_TM 8 Transmit Message CTL_RST 9 Reset RSVD3 15 10 Reserved SUPP LED 16 LED Message Types SUPP SAFTE 17 SAF TE Enclosure Management Messages SUPP SES2 18 SES 2 Enclosure Management Messages SUPP SGPIO 19 SGPIO Enclosure Management Messages RSVD2 23 20 Reserved ATTR_SMB 24 Single Message Buffer ATTR_XMT 25 Transmit Only Teledyne LeCroy Verification Script Engine Reference Manual
101. ripts from the PCle Protocol Suite In order to run a verification script over a trace you need to open the PCle Protocol Suite main menu item Report Run verification scripts or push the icon on the main toolbar if it is not hidden gt gt LeCroy PETracer TM PCI Express Protocol Analyzer C Program Files CATC PETracer Sample m File Setup Record Generate Report Search View Tools Window Help zc kW 2 5 File Information ORD m 5 Ki R 00 001 A 105 6 amp Timing Calculations 1 e Traffic summary ates leterD BoM pee 12 01 Bus utilization a Packet Link Tracker Time Stump EN TC to VC Mapping isteE EcRC 23 00 001 1111 0 37 06013 t Configuration Space tame Run verification scripts letenD BcmM Byte Addr 10 01010 001 02 3 oo405 sc Ilol 4 Teledyne LeCroy Verification Script Engine Reference Manual The special dialog opens displaying a list of verifications scripts You can select one script to run or several scripts from the list to run in parallel Verification Script List Verification S cript description Mame for scripts are file nam es Descriptions for scripts are defined in wthout extension set DecoderDesc MyDescription _ Ed Sj Tes Verification script ist Double click on a script starts its running
102. rmal AWUPF 132 15 0 Atomic Write Unit Power Fail NVSCC_BITO 132 16 NVM Vendor Specific Command Configuration bit 0 RSVD5 132 23 17 Reserved RSVD6 132 31 24 Reserved 38 Teledyne LeCroy Verification Script Engine Reference Manual ACWU 133 15 0 Atomic Compare amp Write Unit RSVD 133 31 16 Reserved SGL SUPPO 134 0 SGL Support bit 0 RT BITO RSVD7 134 15 1 Reserved SGL_SUPPO 134 15 1 SGL Support bit 16 RT_BIT16 RSVD8 134 30 16 Reserved RSVD9 135 1311 Reserved 0 RSVD10 176 10751 Reserved 0 VS 768 8191 Vendor Specific 0 Identify Identify_LBAF lt index gt MS 0 15 0 Metadata Size Namespace LBADS 0 23 16 LBA Data Size LBA Format 5 RP 0 25 24 Relative Performance RSVD8 0 31 26 Reserved Identify Identify NSZE 0 63 0 Namespace Size Namespace NCAP 2 63 0 Namespace Capacity NUSE 4 63 0 Namespace Utilization NSFEAT BIT 6 0 Namespace Features bit 0 0 RSVD 6 7 1 Reserved NLBAF 6 15 8 Number of LBA Formats FLBAS_BITSO 6 19 16 Formatted LBA Size bits 0 3 _3 FLBAS 4 6 20 Formatted LBA Size bit 4 RSVD1 6 23 21 Reserved MC BITO 6 24 Metadata Capabilities bit 0 MC BIT1 6 25 Metadata Capabilities bit 1 RSVD2 6 31 26 Reserved DPC BITO 7 0 End to end Data Protection Capabilities bit 0 DPC BIT1 7 1 End to end Data Protection Capabilities bit 1 DPC BIT2 7 2 End to end Data Protection Capabilities b
103. rn values Returns 1 if time 1 is equal to time 2 returns 0 otherwise Parameters time 1 VSE time object representing the first time interval time 2 VSE time object representing the second time interval Example tl Time 100 t2 Time 500 IsEqualTime tl t2 DoSomething 90 Teledyne LeCroy Verification Script Engine Reference Manual 12 2 IsLessTime Verifies that one VSE time object is less than the other VSE time object Format IsLessTime time1 time2 Return values Returns 1 if time 1 is less than time 2 returns 0 otherwise Parameters time 1 VSE time object representing the first time interval time 2 VSE time object representing the second time interval Example tl Time 100 t2 Time 500 If IsLessTime tl t2 DoSomething 91 Teledyne LeCroy Verification Script Engine Reference Manual 12 3 IsGreaterTime Verifies that one VSE time object is greater than the other VSE time object Format IsGreaterTime time1 time2 Return values Returns 1 if time 1 is greater than time 2 returns 0 otherwise Parameters time 1 VSE time object representing the first time interval time 2 VSE time object representing the second time interval Example tl Time 100 t2 Time 500 If IsGreaterTime tl t2 DoSomething 92 Teledyne LeCroy Verification Script Engine Reference Manual 12 4 IsTimelninterval Verifies that a VSE time object is greater than some VSE
104. rom Upstream direction of the link 68 Teledyne LeCroy Verification Script Engine Reference Manual 8 7 JSendAllChannels This function specifies that events that have occurred on ALL channels should be sent to the script Format SendAllChannels Example SendAllChannels 4 Send events from ALL channels 69 Teledyne LeCroy Verification Script Engine Reference Manual 8 8 SendTraceEvent This function specifies the events to be sent to the script Format SendTraceEvent event Parameters event Can have one of the following values Packet level events Event value Description DLLP Data Link Layer Packets DLLP PKT TLP Transaction Layer Packets TLP PKT ORDERED SET Ordered Sets PKT LINK CONDITION Link Conditions Link Transaction level events Event value Description MEMORY Memory transactions LINK IO IO transactions LINK CONFIG Configuration transactions LINK MESSAGE Message transactions LINK COMPLETION Completion transactions Split Transaction level events Event value Description SPLIT MEMORY Memory transactions SPLIT IO IO transactions _SPLIT_CONFIG Configuration transactions NVM Transaction level events Event value Description NVME CONTROLLER REG Transactions that read or write controller register NVME DOORBELL REG Transactions tha
105. rvation ReservationRegister PRP1 6 63 0 PRP Entry 1 Register PRP2 8 63 0 PRP Entry 2 SGL1 6 63 0 SGL Entry 1 RREGA 10 2 0 Reservation Register Action IEKEY 10 3 Ignore Existing Key RSVD 10 29 4 Reserved CPTPL 10 31 30 Change Persist Through Power Loss State Reservation ReservationRelease PRP1 6 63 0 PRP Entry 1 Release PRP2 8 63 0 PRP Entry 2 SGL1 6 63 0 SGL Entry 1 RRELA 10 2 0 Reservation Release Action IEKEY 10 3 Ignore Existing Key RSVD 10 7 4 Reserved RTYPE 10 15 8 Reservation Type RSVD1 10 31 16 Reserved Reservation ReservationReport PRP1 6 63 0 PRP Entry 1 Report PRP2 8 63 0 PRP Entry 2 SGL1 6 63 0 SGL Entry 1 NUMD 10 31 16 Number of Dwords Write Write MPTR 4 63 0 Metadata Pointer PRP1 6 63 0 PRP Entry 1 PRP2 8 63 0 PRP Entry 2 30 Teledyne LeCroy Verification Script Engine Reference Manual MSGLP 4 63 0 Metadata SGL Segment Pointer SGL1 6 127 0 SGL Entry 1 SLBA 10 63 0 Starting LBA NLB 12 15 0 Number of Logical Blocks RSVD 12 24 16 Reserved PRINFO 12 29 26 Protection Information Field FUA 12 30 Force Unit Access LR 12 31 Limited Retry ACCF 13 3 0 Access Frequency ACCL 13 5 4 Access Latency SEQR 13 6 Sequential Request INCOM 13 7 Incompressible RSVD1 13 31 8 Reserved ILBRT 14 31 0 Initial Logical Block Reference Tag LBAT 15 15 0 Logical Block Application Ta LBATM 15 31 16 L
106. s Second function returns seconds nanoseconds Parameters nanoseconds Number of nanoseconds in specified time seconds Number of seconds in specified time Example Time 50 1000 create time object of 50 microseconds Time 3 100 create time object of 3 seconds and 100 nanoseconds Time 3 MICRO SECS create time object of 3 microseconds Time 4 MILLI SECS create time object of 4 milliseconds Note MICRO SECS and MILLI SECS are constants defined in VS constants inc 85 Teledyne LeCroy Verification Script Engine Reference Manual 11 Time Calculation Functions This group of functions covers VSE capability to work with time VSE time objects 111 AddTime Adds two VSE time objects Format AddTime time1 time2 Return values Returns VSE time object representing the time interval equal to the sum of time 1 and time 2 Parameters time 1 VSE time object representing the first time interval time 2 VSE time object representing the second time interval Example tl Time 100 t2 Time 2 200 t3 AddTime tl t2 Returns VSE time object 2 sec 300 ns 86 Teledyne LeCroy Verification Script Engine Reference Manual 11 2 SubtractTime Subtract two VSE time objects Format SubtractTime time1 time2 Return values Returns VSE time object representing the time interval equal to the difference between time 1 and time 2 Parameters time 1 VSE time
107. s function allows you to open a file in the Windows Explorer If the extension of the file has the application registered to open files with such extensions it is launched For instance if Internet Explorer is registered to open files with extensions htm and the file handle passed to ShowInBrowser function belongs to a file with such an extension this file is opened in the Internet Explorer Format ShowInBrowser file handle Parameters file handle File handle Example set html file 0 html file OpenFile D Log htm WriteString html file lt html gt lt head gt lt title gt LOG lt title gt lt head gt WriteString html file lt body gt WriteString html file body html ShowlnBrowser html file opens the file in Internet Explorer CloseFile html file 110 Teledyne LeCroy Verification Script Engine Reference Manual 18 COM Automation Communication Functions This group of functions covers VSE capabilities to communicate with COM Automation clients connected to the PCle Protocol Suite application Please refer to the PCle Protocol Suite Automation Manual for the details on how to connect to the PCle Protocol Suite application and VSE 18 1 NotifyClient This function allows you to send information to COM Automation client applications in a custom format The client application receives a VARIANT object which it is supposed to parse Format Notif
108. s of a few stages the ProcessEvent function processes the event sent to the script verifies that information contained in the event is appropriate for the current stage and decides if VSE should continue running the script or if the whole result is clear on the current stage tell VSE to complete execution of the script The completion of the test before the entire trace has been evaluated is usually done by setting the output context variable in this manner out Result VERIFICATION PASSED VERIFICATION FAILED Please refer to the topic Output context variables later in this document for a full description of verification script output context variables NOTE Not only does verification script evaluate recorded traces against some criteria but it can also extract information of interest and post process it later by some third party applications There is a set of script functions allowing you to save extracted data in text files or send it to other applications via COM Automation interfaces When the script has completed running VSE looks for the function OnFinishScript and calls it if found In this function some resetting procedures can be done Teledyne LeCroy Verification Script Engine Reference Manual The following figure illustrates the interaction between the PCle Protocol Suite application and a running verification script Verification Script PCle Protocol Suite Run Verification Script OnStartSeript
109. set to a non zero value indicates presence of Logical Idle data pattern error s Note For CRC error variables see the specific packet type variable sets below 12 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 2 DLLP specific set of members Valid for data link layer packets only Undefined for other events in DLLPType Contains the numeric encoding of the DLLP type The following possible values are defined by VSE and the corresponding constants can be used by scripts DLLP TYPE ACK 0x0 DLLP TYPE NAK 0 1 DLLP TYPE INIT P 0x4 DLLP TYPE INIT FC1 NP 0x5 DLLP INIT CPL 0x6 DLLP TYPE INIT FC2 P 0 DLLP TYPE INIT FC2 NP OxD DLLP TYPE INIT FC2 CPL OxE DLLP TYPE UPDATE FC P 0x8 DLLP TYPE UPDATE FC NP 0x9 DLLP TYPE UPDATE FC CPL OxA DLLP TYPE VENDOR 0x3 DLLP TYPE PM ENTER L1 0x10 DLLP TYPE PM ENTER L23 0x11 DLLP PM STATE REQUEST L1 0x13 DLLP TYPE PM REQUEST ACK 0 14 DLLP TYPE INVALID 0x7 in AckNak SeqNum Field value valid only for Ack and Nak DLLPs indicating which TLPs are affected by the acknowledgement ID Virtual Channel ID valid only for InitFC and UpdateFC DLLPs in HdrFC Credit value for headers of the type indicated by the DLLP type valid only for In
110. set to a non zero value indicates the Address Length combination causes a Memory Space access to cross a 4 KB boundary in MemErrorWrongType If set to a non zero value indicates the wrong bit format is being used For example for addresses below 4 GB Requesters must use 32 bit format in CfgErrorRegister If set to a non zero value indicates an invalid register field for Cfg Must be DWORD aligned 14 Teledyne LeCroy Verification Script Engine Reference Manual in MsgErrorRouting If set to a non zero value indicates invalid Msg or MsgD routing in MsgErrorG3LenCheck If set to a non zero value indicates a CRC 4 and or Parity check failed on a Gen3 TLP length field in framing not the header Note This is a PCIE Gen 3 error in BadLCRC Set to 1 if the has bad LCRC to 0 otherwise in BadECRC Set to 1 if the has bad ECRC when it should be present to 0 otherwise Field values for all TLP types in Type Type of TLP field value in Fmt Format of TLP field value in PSN Packet Sequence Number for this TLP as set by the Data Link Layer in Requesterld Requester ID value Bus Device and Function Number fields combined in Tag Tag field value in TC Traffic Class field value in Snoop Snoop attribute bit value in Ordering Ordering attribute bit value in IDBasedOrdering ID Based Ordering attribute bit value in Attributes Attributes field value all three bits Snoop Ordering and IDBasedOrdering
111. t write doorbell register NVME ADMIN SUBMISSION CMD Transactions that transfer admin submission command NVME NVM SUBMISSION CMD Transactions that transfer NVM submission command NVME COMPLETION CMD Transactions that transfer NVM or admin completion command NVME IDX DAT REG Transactions that target idx dat registers registers that are at fixed offset from BAR2 NVME TRANSFERED DATA Transactions that target data which is referenced by PRP or SGL NVME PRP Generated for all PRP list transactions 70 Teledyne LeCroy Verification Script Engine Reference Manual NVME SGL Generated for all SGL descriptors transactions AHCI Transaction level events Event value Description _ REG Transactions that use registers AHCI PORT REG Transactions that use Ports registers _ CMND LIST Transactions that use Command list registers AHCI RECEIVED FIS Transaction uses FIS registers _ CMND TABLE Transaction uses Command table registers Example SendTraceEvent PKT TLP SendLevel LINK SendTraceEvent LINK MEMORY Send memory Read and Write request transactions to the script 71 Teledyne LeCroy Verification Script Engine Reference Manual 8 0 DontSendTraceEvent This function specifies that the event specified in this function should not be sent to script Format
112. tScriptName This function returns the name of the verification script where this function is called Format GetScriptName Example ReportText Current script GetScriptName 99 Teledyne LeCroy Verification Script Engine Reference Manual 15 3 GetApplicationFolder This function returns the full path of the folder where the PCle Protocol Suite application was started Format GetApplicationFolder Example ReportText PCIe Protocol Suite folder GetApplicationFolder 100 Teledyne LeCroy Verification Script Engine Reference Manual 15 4 GetCurrentTime This function returns the string representation of the current system time Format GetCurrentTime Example ReportText GetCurrentTime Yields February 10 2004 5 49 101 Teledyne LeCroy Verification Script Engine Reference Manual 15 5 GetEventSegNumber In case if a multi segmented trace is being processed this function returns the index of the segment for the current event Note When a multi segmented trace file extension pem is processed by VSE different trace events in different segments of the same trace file may have the same indexes value stored in in Index input context members but they have different segment numbers Format GetEventSegNumber Example ReportText Format Current segment d GetEventSegNumber 102 Teledyne LeCroy Verification Script Engine Refer
113. tion Script Engine Reference Manual 8 11 SendAllTraceEvents This function specifies that ALL trace events relevant for the selected transaction level are sent to the script Format SendAllTraceEvents Example SendLevel PACKET Send packet level events SendAllTraceEvents 11 DLLP and Ordered Set packets are sent to the script 74 Teledyne LeCroy Verification Script Engine Reference Manual 8 12 SendDilpType This function specifies more precise tuning filtering in for sending DLLP packets to the script Format dilp_type Parameters dllp type Encoding of the DLLP type This parameter may be one of the following values DLLP type values Constant DLLP type JDLLP TYPE Ack DLLP DLLP TYPE INIT FC1 P InitFC1 P DLLP TYPE INIT FC1 NP InitFC1 NP DLLP TYPE INIT FC1 CPL InitFC1 Cpl DLLP TYPE INIT FC2 P InitFC2 P DLLP TYPE INIT FC2 NP InitFC2 NP DLLP_TYPE_INIT_FC2_CPL InitFC2 Cpl _DLLP_TYPE_UPDATE_FC_P UpdateFC P _DLLP_TYPE_UPDATE_FC_NP UpdateFC NP _ TYPE UPDATE FC CPL UpdateFC Cpl DLLP TYPE PM All Power Management DLLP types DLLP TYPE INVALID Invalid DLLP types DLLP TYPE INIT FC All InitFC DLLP types _DLLP_TYPE_UPDATE_FC All UpdateFC DLLP types ANY TYPE All possible DLLP types Example SendDllpType DLLP TYPE ACK Send Ac
114. ts Metric presenting the total number of packets that compose this Link Transaction an integer value in Metric ResponseTime Metric presenting time it took to transmit this Split Transaction on the PE link from the beginning of the first packet in the transaction to the end of the last packet in the transaction a VSE time object value see 9 1 VSE Time Object for details in Metric LatencyTime Metric presenting time measured from the end of the request transaction to the first completion transmitted in response to the request within this Split Transaction a VSE time object value see 9 1 VSE Time Object for details in Metric Throughput Metric presenting transaction payload divided by response time expressed in kilobytes per second an integer value in Metric PayloadBytes Metric presenting number of data payload bytes this Split Transaction transferred an integer value Notes For the incomplete Link Transactions only the NumOfPackets metric is valid In case of an incomplete Link Transaction the ResponseTime metric value is set to nu11 20 Teledyne LeCroy Verification Script Engine Reference Manual 5 2 8 NVM transaction specific set of members Valid for NVM transactions only Undefined for other events in nvmeType Returns NVMe register type The value of in nvmeType depends on transaction event type and can be compared against the predefined values The following possible values are defined by VSE and the correspondin
115. unt 7 0 COUNT_EXP 103 96 Count 15 8 RSVD2 111 104 Reserved E STATUS 119 112 E Status TC 135 120 Transfer Count RSVD 151 136 Reserved SDBFIS TYPE 07 00 FIS 11 08 The Port Multiplier Port RSVD3 13 12 Reserved 14 Interrupt Bit N 15 Notification Bit STATUS LO 18 16 Status Lo RSVD2 19 Reserved STATUS HI 22 20 Status Hi RSVD 23 Reserved ERROR 31 24 Error PROT_SPEC 64 32 Protocol Specific Command Table PRDT DBA_RSVD 00 Reserved DBA 31 01 Data Base Address DBAU 63 32 Data Base Address Upper 32 bits RSVD 95 64 Reserved DI_DBC 117 96 Data Byte Count DI RSVD 126 118 Reserved DI I 127 Description Information Interrupt on Completion ACMD ACMD Description Information ATAPI Command Command List COMMAND HEADER CFL 04 00 Command FIS Length A 05 ATAPI W 06 Write p 07 Prefetchable R 08 Reset B 09 BIST 10 Clear Busy upon R OK RSVD 11 Reserved PMP 15 12 Port Multiplier Port PRDTL 31 16 Physical Region Descriptor Table Length 52 Teledyne LeCroy Verification Script Engine Reference Manual PRDBC 63 32 Physical Region Descriptor Byte Count CTBA RSVD 70 64 Reserved CTBA 95 71 Command Table Descriptor Base Address CTBAU 127 96 Command Table Descriptor Base Address Upper 32 bits RSVD1 159 128 Reserved RSVD2 191 160 Reserved RSVD3 223 192 Reserved RSVD4 255 224 Reserved 5 2 10 1 Metric values in Metric Throughput Metric pr
116. ve Write Throughput RSVD15 3 23 21 RSVD15 RWL 3 28 24 Relative Write Latency RSVD16 3 159 2 RSVD15 9 Identify Identify VID 0 15 0 PCI Vendor ID 36 Teledyne LeCroy Verification Script Engine Reference Manual Controller SSVID 0 31 16 PCI Subsystem Vendor ID SN 1 159 0 Serial Number MN 6 319 0 Model Number FR 16 63 0 Firmware Revision RAB 18 7 0 Recommended Arbitration Burst IEEE 18 31 8 IEEE OUI Identifier CMIC BITO 19 7 0 Controller Multi Path I O and Namespace Sharing Capabilities Bit 0 CMIC 19 8 1 Controller Multi Path and Namespace Sharing Capabilities Bit 1 CMIC BIT2 19 9 2 Controller Multi Path I O and Namespace Sharing Capabilities Bit 2 RSVD 19 42 3 Reserved MDTS 19 15 8 Maximum Data Transfer Size CNTLID 19 31 16 Controller ID RSVD1 20 1407 Reserved 0 OACS BITO 64 0 Optional Admin Command Support Bit 0 OACS BIT1 64 1 Optional Admin Command Support Bit 1 OACS BIT2 64 2 Optional Admin Command Support Bit 2 RSVD2 64 15 3 Reserved ACL 64 23 16 Abort Command Limit AERL 64 31 24 Asynchronous Event Request Limit FRMW_BITO 65 0 Firmware Updates bit 0 FRMW_BITS1 65 3 1 Firmware Updates bits 1 3 9 RSVD3 65 74 Reserved LPA BITO 65 8 Log Page Attributes bit O RSVD4 65 15 9 Reserved ELPE 65 23 16 Error Log Page Entries NPSS 65 31 24 Number
117. yClient param list Parameters param list List of parameters to be sent to the client application Each parameter might be an integer string or list See CSL Manual for details about data types available in CSL Because the list itself may contain integers strings or other lists it is possible to send complicated messages Lists should be treated as arrays of VARIANTS Example if SomeCondition NotifyClient 2 in Index in Level CHANNEL 2 TimeToText in Time Here we sent 2 parameters to clients applications 2 integer in Index in Level CHANNEL 2 TimeToText in Time list Remark See an example of handling this notification by client applications and parsing code in the PE Automation document 111 Teledyne LeCroy Verification Script Engine Reference Manual 19 User Input Functions 19 1 MsgBox Displays a message in a dialog box waits for the user to click a button and returns an Integer indicating which button the user clicked Format MsgBox prompt type title Parameters prompt type title The type argument values are Required String expression displayed as the message in the dialog box Optional Numeric expression that is the sum of values specifying the number and type of buttons to display the icon style to use the identity of the default button and the modality of the message box

Download Pdf Manuals

image

Related Search

Related Contents

CMS User Manual  Guida introduttiva di Dreamweaver  IC-7200 review    manuel lx450    Goodram PRO 2x4GB DDR3  Menu Setup  A - N° 46 / 30 juin 1997  Smeg FS61XPZ5 Instruction Manual  

Copyright © All rights reserved.
Failed to retrieve file