All: This is being sent out per the issue raised at the Aug. 18 meeting concerning parser interpretation of the AMI Spec. The ibischk5 parser with the -ami flag will check the syntax of the <file name>.ami file. The attached document shows several forms for <parameter_name> that are in the specification. Some of the forms imply a restricted set of parameters, but then this is contradicted by the example at the end. This implies that some parameters are really optional and not excluded according to the syntaxes given. The propposal is simply to make all parameters at least optional, and some required according to a draft Table 4 that is NOT in the specification. Do the choices in Table 4 look reasonable? Bob -- Bob Ross Teraspeed Consulting Group LLC Teraspeed Labs 121 North River Drive 13610 SW Harness Lane Narragansett, RI 02882 Beaverton, OR 97008 401-284-1827 503-430-1065 http://www.teraspeed.com 503-246-8048 Direct bob@xxxxxxxxxxxxx Teraspeed is a registered service mark of Teraspeed Consulting Group LLC
SOME SYNTAX VARIATIONS, BUT NOT CLEAR IF OTHER PARAMETERS ARE "ALLOWED" First five reserved parameters: (no Format, is Default optional for the first two (Init_Returns_Impulse, GetWave_Exists) since Table 1 states Default "NA". | (parameter_name (Usage <usage>)(Type <data_type>) | (Default <values>) (Description <string>)) TX_Jitter, TX_DCD: | (<parameter_name> (Usage <usage>)(Type <data_type>) | (Format <data format>) (Default <values>) | (Description <string>)) Examples (without Default, but showing "required" Format choices) | (Tx_Jitter (Usage Info)(Type Float) | (Format Gaussian <mean> <sigma>)) | | (Tx_Jitter (Usage Info)(Type Float) | (Format Dual-Dirac <mean> <mean> <sigma>)) | | (Tx_Jitter (Usage Info)(Type Float) | (Format DjRj <minDj> <maxDj> <sigma>)) | | (Tx_Jitter (Usage Info)(Type Float) | (Format Table .... etc. | (Tx_DCD (Usage Info)(Type Float) | (Format Range <typ> <min> <max>)) RX_Receiver_Sensitivity, RX_Clock_PDF: | (<parameter_name> (Usage <usage>)(Type <data_type>) | (Format <data format>) (Default <values>) | (Description <string>)) Examples (without Default, but showing "required" Format choices) | (Rx_Clock_PDF (Usage Info)(Type Float) | (Format Gaussian <mean> <sigma>)) | | (Rx_Clock_PDF (Usage Info)(Type Float) | (Format Dual-Dirac <mean> <mean> <sigma>)) | | (Rx_Clock_PDF (Usage Info)(Type Float) | (Format DjRj <minDj> <maxDj> <sigma>)) | | (Rx_Clock_PDF (Usage Info)(Type Float) | (Format Table .... etc. | (Rx_Receiver_Sensitivity (Usage Info)(Type Float) | (Format Value <value>)) | | (Rx_Receiver_Sensitivity (Usage Info)(Type Float) | (Format Range <typ> <min> <max>)) | | (Rx_Receiver_Sensitivity (Usage Info)(Type Float) | (Format Corner <slow> <fast>)) ----------------------------------------------------------------------------- GENERAL SYNTAX (and Model Specific Syntax) | (<parameter_name> (Usage <usage>) (Type <data type>) | (Format <data format>) (Default <values>) | (Description <string>)) | NEW TABLE TO CLARIFY REQUIRED AND OPTIONAL PARAMETERS SHOWING CASES WHERE SOME UNSPECIFIED PARAMETERS CAN BE "OPTIONALLY" INCLUDED | +-------------------+ | | Parameter | | =============================================== | | <parameter_name> | U | T | F | D | D | | | | s | y | o | e | e | | | | a | p | r | f | s | | | | g | e | m | a | c | | | | e | | a | u | r | | | | | | t | l | i | | | | | | | t | p | | | | | | | | t | | | | | | | | i | | | | | | | | o | | | | | | | | n | | +-------------------------+---+---+---+---+---+ | | Reserved Parameters | | | Init_Returns_Impulse | X X O O O | | | GetWave_Exists | X X O O O | | | Use_Init_Output | X X O O O | | | Ignore_Bits | X X O O O | | | Max_Init_Aggressors | X X O O O | | | Tx_Jitter | X X X O O | | | Tx_DCD | X X X O O | | | Rx_Receiver_Sensitivity | X X X O O | | | Rx_Clock_PDF | X X X O O | | | Model Specific Params. | X X X X O | | | | +-------------------------+-------------------+ | | Table 4: Syntax Variations (X=required, O=optional) ------------------------------------------------------------------------ EXAMPLE IN SPEC - SHOWING SOME "OPTIONAL" PARAMETERS SUCH AS "Default" |============================================================================= | Example of Parameter File |============================================================================= (mySampleAMI | Name given to the Parameter file (Description "Sample AMI File") (Reserved_Parameters | Required heading (Ignore_Bits (Usage Info) (Type Integer) (Default 21) (Description "Ignore 21 Bits")) (Max_Init_Aggressors (Usage Info) (Type Integer)(Default 25)) (Init_Returns_Impulse (Usage Info) (Type Boolean)(Default True)) (GetWave_Exists (Usage Info) (Type Boolean) (Default True)) ) | End Reserved_Parameters (Model_Specific | Required heading (txtaps (-2 (Usage Inout)(Type Tap) (Format Range 0.1 -0.1 0.2)(Default 0.1) (Description "Second Precursor Tap")) (-1 (Usage Inout)(Type Tap) (Format Range 0.2 -0.4 0.4)(Default 0.2) (Description "First Precursor Tap")) (0 (Usage Inout)(Type Tap) (Format Range 1 -1 2)(Default 1) (Description "Main Tap")) (1 (Usage Inout)(Type Tap) (Format Range 0.2 -0.4 0.4)(Default2 0.2) (Description "First Post cursor Tap")) (2 (Usage Inout)(Type Tap) (Format Range 0.1 -0.1 0.2)(Default 0.1) (Description "Second Post cursor Tap")) ) | End txtaps (tx_freq_offset (Format Range 1 0 150) (Type UI) (Default 0)) ) | End Model_Specific ) | End SampleAMI |