Teledyne-lecroy SAS_SATA Protocol Suite Verification Script Engine Manuel d'utilisateur Page 1

Naviguer en ligne ou télécharger Manuel d'utilisateur pour Équipement Teledyne-lecroy SAS_SATA Protocol Suite Verification Script Engine. Teledyne LeCroy SAS_SATA Protocol Suite Verification Script Engine Reference Manual User Manual Manuel d'utilisatio

  • Télécharger
  • Ajouter à mon manuel
  • Imprimer
  • Page
    / 97
  • Table des matières
  • MARQUE LIVRES
  • Noté. / 5. Basé sur avis des utilisateurs
Vue de la page 0
1
PROTOCOL SOLUTIONS GROUP
3385 SCOTT BLVD
SANTA CLARA, CA 95054
SAS/SATA Protocol Suite
Verification Script Engine
Reference Manual
Manual Version 5.40
For SAS/SATA Protocol Suite Software 5.40
November 2013
Vue de la page 0
1 2 3 4 5 6 ... 96 97

Résumé du contenu

Page 1 - Reference Manual

1 PROTOCOL SOLUTIONS GROUP 3385 SCOTT BLVD SANTA CLARA, CA 95054 SAS/SATA Protocol Suite Verification Script Engine Reference Manual Manua

Page 2 - Copyright

10 The Verification script result DONE occurs when the script has been configured to extract and display some information about the trace, but not

Page 3 - Table of Contents

11 Chapter 4: Running Verification Scripts from SASSuite/SATASuite To run a verification script over a trace, open the SASSuite/SATASuite main menu

Page 4

12 The special dialog will open and display a list of verifications scripts. You can select one script to run, or several scripts to run in parallel

Page 5

13 4.1 Running Verification Scripts After you select the script(s) to run, push the button Run scripts. VSE starts running the selected verificati

Page 6 - Chapter 1: Introduction

14 Right-click in the script list to open a pop-up menu with options for performing additional operations on the selected scripts: Run verificat

Page 7

15 4.2 VSE GUI Settings After choosing Settings, the following dialog appears:

Page 8

16 Chapter 5: Verification Script Engine Input Context Members All verification scripts have input contexts –special structures whose members are f

Page 9

17 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 functi

Page 10

18 5.2.3 SAS/SATA Generic Frame members in.Payload Bit source of the frame/sequence payload. You can extract any necessary information using th

Page 11 - SASSuite/SATASuite

19 For all function-specific fields of any frame/command type, refer to the actual field name in the trace file and access the same as follows:

Page 12

2 Document Disclaimer The information contained in this document has been carefully checked and is believed to be reliable. However, no responsibili

Page 13

20 5.2.5 SAS Identify Address Frame members Note: All members return the content of the matching field name ("in.xyz" returns the value

Page 14

21 5.2.7.1 XFER_RDY SSP Frame in.Trp_SSPFrameType is SSP_FRAME_TYPE_ XFER_RDY (0x05) in.Trp_ReqOffset in.Trp_WriteDataLen 5.2.7.2 COMMAND SSP Fra

Page 15 - 4.2 VSE GUI Settings

22 5.2.8.2.2 Report Manufacturer Info Frame members in.Trp_ReqLength 5.2.8.2.3 Discover Frame members in.Trp_Ignorezonegroup in.Trp_PhyId Not

Page 16 - Members

23 5.2.8.2.27 Phy control members 5.2.8.2.28 PHY test function members 5.2.8.2.29 Configure phy event members 5.2.8.2.30 Configure zone permiss

Page 17

24 5.2.8.3 SMP Response Frames members in.Trp_FuncResult in.Trp_RespLength 5.2.8.3.1 Report General Frame members in.Trp_ExpanderChgCount in.Tr

Page 18

25 5.2.8.3.1.1.1.9 Report phy SATA members 5.2.8.3.1.1.1.10 Report route information members 5.2.8.3.1.1.1.11 Report phy event members 5.2.8.3.1.1.

Page 19

26 5.2.9 SATA/STP Frame Members Note: All members return the content of the matching field name ("in.xyz" returns the value of field &quo

Page 20

27 5.2.10 SCSI Command Frame Members Note: All members return the content of the matching field name ("in.xyz" returns the value of fiel

Page 21

28 5.2.11 ATA Commands Frame Members Note: All members return the content of the matching field name ("in.xyz" returns the value of fiel

Page 22

29 5.2.12 Metrics Fields for SCSI and ATA Commands (ONLY) Note: All members return the content of the matching field name ("in.xyz" retu

Page 23

3 Table of Contents CHAPTER 1: INTRODUCTION ...

Page 24

30 Chapter 6: Verification Script Engine Output Context Members All verification scripts have output contexts –special structures whose members are

Page 25

31 Chapter 7: Verification Script Engine Events VSE defines a large group of trace "events", on packet, link, and split transaction level

Page 26

32 Chapter 8: Declarations 8.1 Array Declarations Scripts can declare an array object. Format: Array( source, size, default_value ) Parameter

Page 27

33 Arrays can grow and change dynamically through the functions: InsertAt, RemoveAt, and SetAt: set MyArray = Array( [1, 2, 3, 4, 5, 6] ); InsertA

Page 28

34 Example 2 # Example of map having mixed types of keys - both integer and string. set MyMap = Map( [ [0, 1,

Page 29

35 Chapter 9: Sending Functions This topic contains information about the special group of VSE functions designed to specify which events the verif

Page 30 - Context Members

36 9.2 SendLevelOnly() This function specifies that ONLY events of the specified transaction level should be sent to the script. Format : SendLe

Page 31 - 7.1 Frame Level Events

37 9.4 SendChannel() This function specifies that events that have occurred on the specified channel should be sent to script. Format : SendChan

Page 32 - Chapter 8: Declarations

38 9.6 DontSendChannel() This function specifies that events that have occurred on the specified channel should NOT be sent to the script. Format

Page 33 - 8.2 Map Declaration

39 9.9 DontSendTraceEvent() This function specifies that the event specified in this function should not be sent to script. Format : DontSendTr

Page 34

4 9.21 SENDSTPTRANSPORT() ... 45 9.22 SENDSMPTRANSPORT(

Page 35 - 9.1 SendLevel()

40 9.12 SendProtocolError() This function specifies that a selected Protocol Error event be sent to the script along with any other events (if sent

Page 36 - 9.3 DontSendLevel()

41 Then only OOB-Sequence_Error events will be sent to the script. 9.14 DontSendProtocolError() This function specifies NOT to send the selected Pro

Page 37 - 9.5 SendChannelOnly()

42 9.16 SendPairSASAddressOnly() This function specifies that ONLY the selected Pair-SAS-Address event be sent to the script, and no other events be

Page 38 - 9.8 SendTraceEvent()

43 9.19 SendPrimitive() This function specifies to send a selected Primitive event to the script for verification. Format : SendPrimitive(Primitiv

Page 39 - 9.11 SendAllTraceEvents()

44 9.20 SendSSPTransport() This function specifies to send a selected SSP Transport event to the script. Format : SendSSPTransport( Frame Type)

Page 40 - 9.13 SendProtocolErrorOnly()

45 Example … SendSSPTransport (SSP_FRAME_TYPE_XFER_RDY); SendSSPTransport (SSP_FRAME_TYPE_XFER_RDY, “NumOfFillBytes”, 0); SendSSPTransport (SSP_FR

Page 41 - 9.15 SendPairSASAddress()

46 9.22 SendSMPTransport() This function specifies to send a selected SMP Transport event to the script. Format : SendSMPTransport( Frame Type)

Page 42 - 9.18 SendAllPairSASAddress()

47 9.23 SendSCSICommand() This function specifies to send a selected SCSI Command event to the script. Format : SendSCSICommand( OpCode, Servic

Page 43 - 9.19 SendPrimitive()

48 9.24 SendATACommand() This function specifies to send a selected ATA Command event to the script. Format : SendATACommand( Command, Feature,

Page 44 - 9.20 SendSSPTransport()

49 9.25 SendSMPCommand() This function specifies to send a selected SMP Command event to the script. Format : SendSMPCommand( Function, Field N

Page 45 - 9.21 SendSTPTransport()

5 CHAPTER 19: COM/AUTOMATION COMMUNICATION FUNCTIONS ... 73 19.1 NOTIFYCLIENT() ...

Page 46 - 9.22 SendSMPTransport()

50 9.26 SendTaskMgmCommand() This function specifies to send a selected Task Management Command event to the script. Format : SendTaskMgmComman

Page 47 - 9.23 SendSCSICommand()

51 Chapter 10: Time Construction Functions This group of functions constructs VSE time objects. 10.1 Time() Constructs a verification script time

Page 48 - 9.24 SendATACommand()

52 Chapter 11: Timer Functions This group of functions covers VSE capability to work with timers –-- internal routines that repeatedly measure a t

Page 49 - 9.25 SendSMPCommand()

53 11.2 GetTimerTime() Calculates and returns the timing interval (VSE Time object) between the Time-at SetTimer() and Current Time. For example, if

Page 50 - 9.26 SendTaskMgmCommand()

54 Chapter 12: Time Calculation Functions This group of functions covers VSE capability to work with "time" — VSE time objects. 12.1 Add

Page 51 - 10.1 Time()

55 12.3 MulTimeByInt() Multiplies VSE time object by integer value. Format : MulTimeByInt (time, mult) Return values Returns VSE time objec

Page 52 - Chapter 11: Timer Functions

56 Chapter 13: Time Logical Functions This group of functions covers VSE capability to compare VSE time objects. 13.1 IsEqualTime() Verifies wheth

Page 53 - 11.3 KillTimer()

57 13.3 IsGreaterTime() Verifies whether or not one VSE time object is greater than the other VSE time object. Format : IsGreaterTime (time1,

Page 54 - 12.2 SubtractTime()

58 Chapter 14: Time Text Functions This group of functions covers VSE capability to convert VSE time objects into text strings. 14.1 TimeToText()

Page 55 - 12.4 DivTimeByInt()

59 Chapter 15: Output Functions This group of functions covers VSE capability to Enable, Disable, and Display of information/results in the output

Page 56 - 13.2 IsLessTime()

6 Chapter 1: Introduction This document contains a description of the Teledyne LeCroy Verification Script Engine (VSE), a new utility in the SA

Page 57 - 13.4 IsTimeInInterval()

60 15.3 ReportText() Reports/Displays textual information in the output window of verification script engine. Format : ReportText (text) Par

Page 58 - 14.1 TimeToText()

61 Chapter 16: Information Functions 16.1 GetTraceName() This function returns the filename of the trace file being processed by VSE. If the scri

Page 59 - 15.2 DisableOutput()

62 16.4 GetCurrentTime() This function returns the string representation of the current system time. Format : GetCurrentTime() Example Report

Page 60 - 15.3 ReportText()

63 16.7 GetTraceStartPacketTime() This function returns time stamp of the first packet in trace file. Format : GetTriggerPacketNumber() Retu

Page 61 - 16.3 GetApplicationFolder()

64 Chapter 17: Navigation Functions 17.1 GotoEvent() This function forces the application to jump to some trace event and show it in the main trace

Page 62 - 16.5 GetEventSegNumber()

65 17.2 SetMarker() This function sets a marker (bookmark) for some trace event. Format : SetMarker( marker_text ) SetMarker( marker_text,

Page 63

66 Chapter 18: File Functions This group of functions covers VSE capabilities to work with the external files. 18.1 OpenFile() This function opens

Page 64 - 17.1 GotoEvent()

67 18.2 WriteString() This function writes a text string to the file. Format : WriteString( file_handle, text_string ) Parameters file_hand

Page 65 - 17.2 SetMarker()

68 18.4 WriteBin () This function writes content to a binary file. Format : WriteBin( bin_file_handle, variable ) Parameters bin_file_handle

Page 66 - Chapter 18: File Functions

69 18.5 ReadBin () This function reads content from a binary file. Case 1: Open and Read the content from a binary file The file should be opened

Page 67 - 18.3 CloseFile()

7 Chapter 2: Verification Script Structure Writing a verification script is easy, as long as you follow a few rules and have some understanding of

Page 68 - 18.4 WriteBin ()

70 Example # This example demonstrates CASE 1, how to open and read data. # Opens file in binary mode with _APPEND functionality, # to read data. b

Page 69 - 18.5 ReadBin ()

71 18.6 SeekToBegin () This function seeks the file read-write pointer from current position to the BEGIN of the file. Format : SeekToBegin(fi

Page 70

72 18.8 ShowInBrowser() This function allows you to open a file in the Windows Explorer. If the extension of the file has the application registered

Page 71 - 18.7 SeekToEnd()

73 Chapter 19: COM/Automation Communication Functions This group of functions covers VSE capabilities to communicate with COM/Automation clients co

Page 72 - 18.8 ShowInBrowser()

74 Chapter 20: User Input Functions 20.1 MsgBox() Displays a dialog-based message in a dialog box, waits for the user to click a button, and return

Page 73 - Functions

75 Return Values This function returns an integer value indicating which button the user clicked. Constant Description _MB_OK OK button was clicke

Page 74 - 20.1 MsgBox()

76 20.2 InputBox() Displays a dialog-based input prompt in a dialog box, waits for the user to input text or click a button, and returns a CSL list

Page 75

77 Remark This function works only for VS Engines controlled via the GUI. For VSEs controlled by COM/Automation clients, it does nothing. This

Page 76 - 20.2 InputBox()

78 20.3 GetUserDlgLimit() This function returns the current limit of user dialogs (message box or input box) allowed in the verification script. If

Page 77

79 Chapter 21: String Manipulation/Formatting Functions 21.1 FormatEx() This function writes formatted data to a string. FormatEx() controls the wa

Page 78 - 20.4 SetUserDlgLimit()

8 OnStartScript() { #################################################################################### # Specify in the body of this function

Page 79

80 Remark A conversion specification begins with a percent sign (%) and ends with a conversion character. The following optional items can be inclu

Page 80

81 21.3 Get and Set Characters in Strings You can set and get characters at positions in CSL-script-file string objects. Format : str [ index ]

Page 81

82 Chapter 22: Miscellaneous Functions 22.1 ScriptForDisplayOnly() This function specifies that the script is designed for displaying information o

Page 82 - 22.3 ConvertToHTML()

83 22.4 Pause() Pauses a running script. Later, script execution can be resumed or cancelled. Format : Pause() Example … If( Something_In

Page 83 - 22.4 Pause()

84 22.5 GetPacketData() This function returns packet’s data in unscramble 8 bits format as a list of DWORDs. Each item of the list includes one DWO

Page 84 - 22.5 GetPacketData()

85 Chapter 23: The VSE Important Script Files The VSE working files are located in the ..\SASVFScripts or ..\SATAVFScripts subfolder of the main SA

Page 86

87 Appendix A – Primitive Codes PRIM_CODE_ERROR PRIM_CODE_AIP_NORMAL PRIM_CODE_AIP_RESERVED_0 PRIM_CODE_AIP_RESERVED_1 PRIM_CODE_AIP_RESERVED_2 PRI

Page 87 - Appendix A – Primitive Codes

88 PRIM_CODE_RRDY_NORMAL PRIM_CODE_RRDY_RESERVED_0 PRIM_CODE_RRDY_RESERVED_1 PRIM_CODE_NOTIFY_ENABLE_SPINUP PRIM_CODE_NOTIFY_POWER_FAILURE_EXPECTED

Page 88

89 Appendix B – ATA Commands See the include file “VS_ATA_Commands.inc“ in the ..\SASVFScripts or ..\SATAVFScripts subfolder of the main SAS Protoco

Page 89 - Appendix B – ATA Commands

9 Chapter 3: Interaction Between SASSuite/SATASuite and a Verification Script When you run a script against a pre-recorded trace, the following seq

Page 90

90 SERVICE = 0xA2 SET_FEATURES = 0xEF SET_MAX = 0xF9 SET_MAX_ADDRESS_EXT = 0x37 SET_MULTI

Page 91 - Appendix C – SCSI Commands

91 Appendix C – SCSI Commands See the include file “VS_SCSICommands.inc“ in the ..\SASVFScripts or ..\SATAVFScripts subfolder of the main SAS Protoc

Page 92

92 SBC_ERASE12 = 0xAC SBC_MEDIUM_SCAN = 0x38 SBC_READ_GENERATION = 0x29 SBC_READ_UPDATED_BLOCK =

Page 93

93 SSC_READ6 =0x08 SSC_READ_REVERSE6 =0x0F SSC_SPACE6 =0x11 SSC_VERIFY6 =0x13 SS

Page 94

94 SPC_INQUIRY = 0x12 SPC_LOGSELECT = 0x4C SPC_LOGSENSE = 0x4D SPC_MODESELECT6 = 0x15 SPC_MODE

Page 95 - Appendix D – SMP Commands

95 Appendix D – SMP Commands # Management Function definitions const SMP_REPORT_GENERAL = 0x00; const SMP_REPORT_MANUFACTURER_INFO = 0x

Page 96

96 Appendix E – Limitation of For and While Loops To prevent infinite loops in improperly written script code there is a maximum limitation of 40,00

Page 97

97 How to Contact Teledyne LeCroy Type of Service Contact Call for technical support… US and Canada: 1 (800) 909-2282 Worldwide: 1 (408) 727-66

Commentaires sur ces manuels

Pas de commentaire