G64 Addresses
This page contains a detailed information of the G64 address types defined at ISA for the PCDOCT G64 units.
Addressing in the LS system is based on general address fields in the parameter definition table. The table index 'AdrTypeId' defines the actual interpretation of the general address parameters a0..a5, s1..s2. These address types are hardcoded into the source code. For ease of database maintenence, these interpretations is descriped in the Address Definition table.
PCDOCT G64 adresses:
Common fields for all PCDOCT G64 addresses:
a0 G64 address, 0..63 a1 G64 data type: 0: status Read value, status 1: status - data Read value, data 2: command Write value, command 3: command - data Write value, data a2 DOCT channel, 0..7
Adress type 1: G64 Conversion:
Used for all G64 parameters with a convertion from a native word value to a physical value. For the moment these are adc's,dac's and converted status and control words. The conversion used is defined in the table interpretation as descriped in Interpretations .
Valid data values: any value inherited CG64DataValue.
No aditional address fields.
Adress type 2: G64 Bit:
Address a single bit in a word. Reading/writing to this bit does not influence other bits in the word.
Valid data values: CConSysBit.
a3 bit number, 0..15
Address type 3: G64 Word:
Address a full word.
Valid data values: CConSysWord.
No aditional address fields.
Address type 4: Filtered word:
Addresses selected bits from a word. Only bits marked with 1 in the filter mask is used during read/write. An optional rotation can be performed on the control/result value.
Valid data values: CConSysWord.
a3 Filter Mask: bits marked with 1 in the mask is used. a4 Rotation: During write: The control word is rotated left by a3 before setting the masked control bits. During read: The bit mask is applied on the reading and the result is rotated rigth by a3 before it is returned.
Address Type 5: Three state:
The three state address type is used as a low level interpretation of two bits into a three state value. The data values has three valid interpretations:
0 low value (False), corresponds to low bit true and high bit false. 1 high value (True), corresponds to high bit true and low bit false. >=2 undefined, low bit = high bit
Valid data values: CConSysWord.
a3 low bit number, 0..15 a4 high bit number, 0..15
C++ Constant definitions:
G64_CONV_ADR 1 G64_BIT_ADR 2 G64_WORD_ADR 3 G64_FILTER_ADR 4 G64_THREESTATE_ADR 5
References:
Last Modified 11 January 2019