1、STD-EIA JESD71-ENGL 1999 W 323Yb00 Ob25517 JEDEC STANDARD Standard Test and Programming Language (STAPL) JESD71 August 1999 ELECTRONIC INDUSTRIES ALLIANCE JEDEC Solid State Technology Association Electronic Industries Alliance STD-EIA JESD7L-ENGL 1777 = 323Lib00 Ob25520 bT3 9 NOTICE EWJEDEC standard
2、s and publications contain material that has been prepared, reviewed, and approved through the JEDEC Board of Directors level and subsequently reviewed and approved by the EIA General Counsel. EWJEDEC standards and publications are designed to serve the public interest through eliminating misunderst
3、andings between manufacturers and purchasers, facilitating interchangeability and improvement of products, and assisting the purchaser in selecting and obtaining with minimum delay the proper product for use by those other than JEDEC members, whether the standard is to be used either domestically or
4、 internationally. EWJEDEC standards and publications are adopted without regard to whether or not their adoption may involve patents or articles, materials, or processes. By such action JEDEC does not assume any liability to any patent owner, nor does it assume any obligation whatever to parties ado
5、pting the EWJEDEC standards or publications. The information included in EWJEDEC standards and publications represents a sound approach to product specification and application, principally from the solid state device manufacturer viewpoint. Within the JEDEC organization there are procedures whereby
6、 an EWJEDEC standard or publication may be further processed and ultimately become an ANSEIA standard. No claims to be in conformance with this standard may be made unless all requirements stated in the standard are met. Inquiries, comments, and suggestions relative to the content of this EWJEDEC st
7、andard or publication should be addressed to JEDEC Solid State Technology Association, 2500 Wilson Boulevard, Arlington, VA 22201-3834, (703)907-7560/7559 or www.jedec.org Published by ELECTRONIC INDUSTRIES ALLIANCE 1999 Engineering Department 2500 Wilson Boulevard Arlington, VA 22201-3834 This docu
8、ment may be downloaded free of charge, however EIA retains the copyright on this material. By downloading this file the individual agrees not to charge or resell the resulting material. PRICE: Please refer to the current Catalog of JEDEC Engineering Standards and Publications or call Global Engineer
9、ing Documents, USA and Canada (1-800-854-7179), International (303-397-7956) Printed in the U.S.A. All rights reserved STD-EIA JESD7L-ENGL 1779 H 3234600 Ob25521 53T . JEDEC Standard No . 7 1 Page i STANDARD TEST AND PROGRAMMING LANGUAGE (STAPL) (From JEDEC Board Ballot JCB.99.23. formulated under t
10、he cognizance of the IC-42.1 Committee on Programmable Logic Devices (PLD).) CONTENTS 1 . Introduction 1 2 . Language Overview . 1 2.1 Description 1 2.2 Overall Structure . 1 2.4 Program Flow 2 2.5 Data Management . 2 2.6 Input ). Arguments may be literal constants, variables, or expressions resulti
11、ng in the desired data type (i.e., Boolean or integer). Each statement usually occupies one line of the STAPL file, but this is not required. Line breaks are not significant to STAPL syntax, except for terminating comments. An apostrophe character () can be used to signify a comment, which is ignore
12、d. The language does not specie any limits for line length, statement length, or file size. 2.2 Overall Structure A STAPL file consists of the following elements, in the order shown below: NOTEstatements ACTION statements A CRC statement PROCEDURE blocks and DATA blocks A NOTE statement contains tex
13、t strings for documentation of the contents and features of the STAPL file. An ACTION statement describes the sequence of steps required to implement a complete operation, such as programming a device. A STAPL file must contain an ACTION statement corresponding to each operation that can be selected
14、 by a user. Each ACTION statement specifies a list of PROCEDURG blocks that must be called, in the specified order, to complete the operation. Some of these listed PROCEDURG blocks may be identified as recommended or optional and may be included or excluded as desired by the end user, such as verify
15、ing a device after programming. A PROCEDURE block contains STAPL statements describing computations and other processing, including interactions with IEEE 1 149.1-compliant devices. Statements inside a PROCEDURE block may use data variables contained in other DATA blocks, and they may call other PRO
16、CEDURE blocks. STD.EIA JESD7L-ENGL 1779 D 3234b00 Ob25524 249 H JEDEC Standard No. 71 Page 2 2.2 Overall Structure (contd) A DATA block contains variable declaration statements. A PRCCEDURE block that uses this DATA block (referenced via the USES keyword) may contain STAPL statements that use these
17、variables. The CRC statement contains the cyclic redundancy code of the entire STAPL file that verifies the data integrity of the file. Variable declaration statements must appear inside a PROCEDURF: block or a DATA block. NOTE, ACTION, and CRC statements must appear outside all blocks. All other st
18、atements may appear only inside a PROCEDURE block. A PROCEDURG or DATA block may not contain another PROCEDURE or DATA block. 2.3 Program Flow A STAPL session is the execution process of a STAPL file. A STAPL session starts with the ACTION statement selected by the user and ends with the completion
19、of that statement. The PROCEDURE blocks listed for that ACTION are called in order. Within each PROCEDURE block, statements are executed from the beginning of the block until the E”DPROC statement is encountered. The CALL statement begins execution of a different PROCEDURE block, and the GOM stateme
20、nt causes execution to branch to another statement within the same PROCEDURE block. To call a PROCEDURE block, the PROCEDURE block containing the CALL statement must be linked to the called block by the USES keyword in the PROCEDURE statement. No facility exists within a STAPL file for linking multi
21、ple STAPL files together, or for including the contents of another file into a STAPL file. 2.4 Data Management All variables in a STAPL file must be declared in order to be used. Variables declared inside a PROCEDURE block are only available inside that block. Variables declared inside a DATA block
22、are available in and shared by any PROkEDURE block that uses that DATA block. STAPL files have variables of two types: integer and Boolean. Integers are 32-bit signed numbers. Boolean variables can be considered to be single-bit unsigned integers, although they cannot be used interchangeably with in
23、teger variables. Onedimensional Boolean or integer arrays can be declared. These arrays are indexed to give access to a single element or a range of elements inside the array. Multi-dimensional arrays are not supported. STAPL does not support string variables. However, string constants and sring rep
24、resentations of Boolean and integer values can be used to form text output messages. A complete set of arithmetic, logical, and relational operators is available for integers, and a complete set of logical operators is provided for Boolean expressions. No operators are provided to work directly on i
25、nteger arrays or Boolean arrays. For strings, concatenation is available to permit the construction of simple messages. STAPL is not case sensitive. All labels, variable names, instruction names, and other language elements are processed without regard to case. (The only exception is the encoded for
26、mat used for compressed Boolean array initialization data, which is described in “Data Management” on page 9.) In this document, STAPL file examples use uppercase instruction and keyword names and lowercase label and variable names, but the language does not require this convention. For string const
27、ants in PRINT statements, the case is preserved when printing the string. Go to Annex A on page 38 for a sample STAPL file. 2.5 Input chain information would then be specified in the STAPL Player on these testers. 3.3 The STAPL Player STAPL supports implementations in either an interpreted or a comp
28、iled mode. In an interpreted implementation, the STAPL file statements are executed directly without first compiling these statements into binary executable code. The interpreter program that reads and executes a STAPL file is called the STAPL Player. In a compiled implementation, the STAPL file sta
29、tements are first pre-processed and then executed. The mechanism by which the STAPL Player reads the contents of the STAPL file is platform-dependent-it may use a file system, or it may simply read characters from a memory buffer. The STAPL Player has access to the IEEE i 149.1 signals that are used
30、 for all instructions based on the IEEE 1 149.1 interface. When executing a STAPL file that requires the use of the VECTOR and VMAP instructions, the STAPL Player may also need access to several other signal pins. The hardware access to the IEEE 1 149.1 and other signal pins is platform dependent. T
31、he mapping of pin names to hardware channels may be read from a wiring file or it may be built directly into the STAPL Player. Executing STAPL statements based on the iEEE I 149. i interface requires information on the location of the target device(s) along the serial chain. The method for conveying
32、 this chain information is platform-dependent-it may be specified via a user interface, in the STAPL file using the poCTDR, POSIR, PREDR, and PREIR instructions, or read from a chain file. When a file is used to store this chain information, the STAPL Player must support chain files as specified in
33、the EINJEDEC Standard: “Standard for Chain Description File (EINJESD32)”. If the STAPL Player is running inside a system that has a console or teletype output device, that device can be used to display messages generated by the STAPL file. 33.1 Required Features of the STAPL Player The STAPL Player
34、shall have the following capabilities: Execute a STAPL file Process the user-specified actions and procedures (if the specified action or procedure does not exist in the file or no action is specified, an mor will result) Check the CRC of a STAPL file (without executing the STAPL file) Extract infor
35、mation from the NOTE fields of a STAPL file (without executing the STAPL file) Access to the signals of an IEEE I 149.i interface Access to the signals specified by VECTOR/VMAP instructions as supported by the platform Reliable mechanism for creating accurate real-time delays Report exit status info
36、rmation following the execution of a STAPL file (e.g., an exit code) JEDEC Standard No. 71 Page 5 3.3.2 Optional Filtering Feature A STAPL file may support many ACTION statements. In some situations, only a subset of these supported ACTION statements may be desired in a STAPL file. For these cases,
37、the original file may be filtered down to preserve only the desired actions. All ACTION statements, and DATA and PROCEDURE blocks not necessary for these desired ACTION statements, are removed from the STAPL file. To filter a STAPL file to the desired subset of actions, identi the list of PROCEDURE
38、blocks called by the desired ACTION statements, and recursively identi6 all other DATA and PROCEDURE blocks that are used (USES keyword) by that PROCEDURE block. Finally, a new STAPL file is created by preserving only those PROCEMSRE and DATA blocks that have been identified. All NOTE fields must be
39、 preserved and a new CRC is calculated. This new STAPL file is called the ?filtered? STAPL file. Implementing this optional filtering feature of the STAPL Player allows STAPL Composers to generate full-featured STAPL files while allowing users to minimize file size by selecting only the actions that
40、 they desire. 333 A STAPL file that programs a programmable device must contain both the data pattern to be programmed into the device and the algorithm for programming that data into the device. In some situations it may be necessary to provide an updated programming algorithm for the STAPL file, w
41、hile leaving the data pattern undisturbed. In particular, this updating process may be required to permit the programming of a new device version. For dedicated device programming systems, the update process should be done automatically by the STAPL Player. Optional Update Feature for Device Program
42、ming For STAPL files to be updated automatically, the STAPL Player must have access to a library of STAPL files containing programming algorithms for the supported devices. Each of these ?reference? programs must have NOTE statements to define the following attributes: DEVICE, SAVE-DATA, and ALG_VER
43、SION. When a STAPL file is loaded into the STAPL Player, if the same three NOTE statements are defined in the loaded STAPL file, it is possible to update the STAPL file. If the library of reference programs contains a program whose DEVICE string matches that of the loaded STAPL file, and whose SAm-D
44、ATA string matches that of the loaded STAPL file, the AI) terminates the statement. 4.2 Labels (Optional) Labels provide a means of branching within the program. A unique label can begin each STAPL file statement and must be followed by a colon (:). Label names are not case sensitive (i.e., two labe
45、l names that differ only by case are considered equal). 43 Instructions Each STAPL statement (except the Assignment statement) begins with one of the following instruction names. “STAPL Statement Specifications” on page 18 provides a detailed description of each instruction name. The instruction nam
46、es, including the names of the optional instructions, are reserved keywords and cannot be used as variable or label identifiers in a STAPL file. Assignment (=) GOT0 PUSH ACTION - IF - STATE BOOLEAN INTEGER TRST CALL IRSCAN WAIT CRC IRSTOP VECTOR(2) DATA - NEXT WP (2) DRSCAN NOTE DRSTOP POP ENDDATA P
47、OSTDR - ENDPROC POSTIR EXIT PREDR EXPORT PREIR FOR PRINT 9 FREQUENCY (i) PROCEDURE Notes: (1) This instruction allows the changing of the TCK frequency on hardware that can support it. (2) his instruction allows the application of parallel vectors if the hardware exists to support it JEDEC Standard
48、No. 71 Page 7 IEEE 1149.1 State Names Test-Laic- Reset All STAPL instructions take arguments in the form of variables or expressions, except for the following: STAPL Reserved State Names RESET - The GOT0 instruction takes labels as arguments. The CALL instruction takes procedure names as arguments.
49、The PRINT insbuction takes a string expression as an argument. he DRCCAN, IRSCAN, and VECTOR instructions take Boolean array expressions as arguments. The DATA and PROCEDURE instructions take identifiers representing names of DATA and PROCEDURE blocks as arguments. The ENDDATA and ENDPROC instructions take no arguments at ail. The ACTION instruction takes identifies representing the name of the ACTION, a list of PROCEDURE blocks, and a string. Run-Test-Idle Select-DR-Scan Caoture-DR When a statement is processed, each argument is checked for a valid variable or expression t
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1