[IBIS] IBIS BIRD108

From: Bob Ross <bob_at_.....>
Date: Tue Apr 29 2008 - 16:44:19 PDT
All:

Attached is BIRD108 to provide an editorial correction for impulse_matrix
and missing underbars.

BIRD108 will be introduced at the May 16 meeting.

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@teraspeed.com

Teraspeed is a registered service mark of Teraspeed Consulting Group LLC

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


*****************************************************************************
*****************************************************************************

BIRD ID#:        108
ISSUE TITLE:     Fixing Algorithmic Modeling API Impulse_matrix Nomenclature 
REQUESTER:       Bob Ross, Teraspeed Consulting Group
DATE SUBMITTED:  April 29, 2008
DATE REVISED:
DATE ACCEPTED BY IBIS OPEN FORUM:  PENDING

*****************************************************************************
*****************************************************************************

STATEMENT OF THE ISSUE:

In the Section, "NOTES ON ALGORITHMIC MODELING INTERFACE AND PROGRAMMING
GUIDE", the paragraphs describing impulse_matrix have inconsistent usuage
of the underbar character.  The terms "impulse_matrix" and "impulse matrix"
are used.

The suggestion is to use impulse_matrix when naming the data and other
terms when describing the data or the structure.


*****************************************************************************

Replace this text:


| 3 FUNCTION SIGNATURES
| =====================
|
| 3.1 AMI_Init
| ============
|
| 3.1.1 Declaration
| =================
|
| long AMI_Init (double *impulse_matrix,
|                long row_size,
|                long aggressors, 
|                double sample_interval,
|                double bit_time,
|                char *AMI_parameters_in, 
|                char **AMI_parameters_out, 
|                void **AMI_memory_handle,
|                char **msg)
| 
| 3.1.2 Arguments
| ===============
|
| 3.1.2.1 impulse_matrix
| ======================
|
| Impulse matrix is the channel impulse response matrix.  The impulse values
| are in volts and are uniformly spaced in time.  The sample spacing is given
| by the parameter ‘sample_interval’.
|
| The ‘impulse_matrix’ is stored in a single dimensional array of floating
| point numbers which is formed by concatenating the columns of the impulse
| response matrix, starting with the first column and ending with the last
| column.  The matrix elements can be retrieved /identified using
|       
|   impulse_matrix[idx] = element (row, col)
|   idx = col * number_of_rows + row
|   row – row index , ranges from 0 to row_size-1
|   col – column index, ranges from 0 to aggressors
|
| The first column of the impulse matrix is the impulse response for the
| primary channel.  The rest are the impulse responses from aggressor drivers
| to the victim receiver.
|
|
| The AMI_Init function may return a modified impulse response by modifying
| the first column of impulse_matrix. If the impulse response is modified,
| the new impulse response is expected to represent the concatenation of the
| model block with the blocks represented by the input impulse response.
|
| The aggressor columns of the matrix should not be modified.
|
| 3.1.2.2 row_size
| ================
|
| The number of rows in the impulse matrix.
|
| 3.1.2.3 aggressors
| ==================
|
| The number of aggressors in the impulse matrix. 
|
| 3.1.2.4 sample_interval:

| ========================
|
| This is the sampling interval of the impulse matrix. Sample_interval is
| usually a fraction of the highest data rate (lowest bit_time) of the
| device.  Example:
|
|   Sample_interval = (lowest_bit_time/64)
|
| 3.1.2.5 bit_time
| ================
|
| The bit time or unit interval (UI) of the current data, e.g., 100 ps, 200
| ps etc.  The shared library may use this information along with the impulse
| matrix to initialize the filter coefficients.
|

--------------

With the following text with changes noted by "|*"  lines where
"impulse_matrix" is used, and "impulse response matrix" is the descriptive
version of the variable":


| 3 FUNCTION SIGNATURES
| =====================
|
| 3.1 AMI_Init
| ============
|
| 3.1.1 Declaration
| =================
|
| long AMI_Init (double *impulse_matrix,
|                long row_size,
|                long aggressors, 
|                double sample_interval,
|                double bit_time,
|                char *AMI_parameters_in, 
|                char **AMI_parameters_out, 
|                void **AMI_memory_handle,
|                char **msg)
| 
| 3.1.2 Arguments
| ===============
|
| 3.1.2.1 impulse_matrix
| ======================
|
|* 'Impulse_matrix' is the channel impulse response matrix.  The impulse values
| are in volts and are uniformly spaced in time.  The sample spacing is given
| by the parameter ‘sample_interval’.
|
|* The impulse_matrix is stored in a single dimensional array of floating
| point numbers which is formed by concatenating the columns of the impulse
| response matrix, starting with the first column and ending with the last
| column.  The matrix elements can be retrieved /identified using
|       
|   impulse_matrix[idx] = element (row, col)
|   idx = col * number_of_rows + row
|   row – row index , ranges from 0 to row_size-1
|   col – column index, ranges from 0 to aggressors
|
|* The first column of the impulse_matrix is the impulse response for the
| primary channel.  The rest are the impulse responses from aggressor drivers
| to the victim receiver.
|
|
| The AMI_Init function may return a modified impulse response by modifying
| the first column of impulse_matrix. If the impulse response is modified,
| the new impulse response is expected to represent the concatenation of the
| model block with the blocks represented by the input impulse response.
|
| The aggressor columns of the matrix should not be modified.
|
| 3.1.2.2 row_size
| ================
|
|* The number of rows in the impulse_matrix.
|
| 3.1.2.3 aggressors
| ==================
|
|* The number of aggressors in the impulse_matrix. 
|
| 3.1.2.4 sample_interval:

| ========================
|
|* This is the sampling interval of the impulse_matrix. Sample_interval is
| usually a fraction of the highest data rate (lowest bit_time) of the
| device.  Example:
|
|   Sample_interval = (lowest_bit_time/64)
|
| 3.1.2.5 bit_time
| ================
|
| The bit time or unit interval (UI) of the current data, e.g., 100 ps, 200
|* ps etc.  The shared library may use this information along with the
|* impulse_matrix to initialize the filter coefficients.
|

*****************************************************************************

ANALYSIS PATH/DATA THAT LED TO SPECIFICATION

This is an editorial correction to use "impulse_matrix" consistently.


*****************************************************************************

ANY OTHER BACKGROUND INFORMATION:


*****************************************************************************


--------------------------------------------------------------------
|For help or to subscribe/unsubscribe, e-mail majordomo@eda-stds.org
|with the appropriate command message(s) in the body:
|
|  help
|  subscribe   ibis       <optional e-mail address, if different>
|  subscribe   ibis-users <optional e-mail address, if different>
|  unsubscribe ibis       <optional e-mail address, if different>
|  unsubscribe ibis-users <optional e-mail address, if different>
|
|or e-mail a request to ibis-request@eda-stds.org.
|
|IBIS reflector archives exist under:
|
|  http://www.eda-stds.org/pub/ibis/email_archive/ Recent
|  http://www.eda-stds.org/pub/ibis/users_archive/ Recent
|  http://www.eda-stds.org/pub/ibis/email/         E-mail since 1993
Received on Tue Apr 29 16:44:48 2008

This archive was generated by hypermail 2.1.8 : Tue Apr 29 2008 - 16:44:54 PDT