Measurement Event Synchronization

Measurement Event Synchronization

Last updated: April 15, 2005

Description

Measurement event synchronization saves time by controlling the communication between the controller, the test set, and the mobile station, so that no device does something before it is supposed to (which can cause errors or do something well after it could have). Because some measurements can run concurrently, it is necessary that the control program know when individual measurement results are available.

Measurement event synchronization is accomplished using the INITiate subsystem's command INITiate:DONE? or the STATus:OPERation:NMRReady status registers.

INITiate:DONE?

The INITiate:DONE? query returns a string that indicates which, if any, measurements have completed since the last INITiate command was received. This query is useful when performing measurements concurrently, and is generally used within a loop, with a loop exit when all measurements have been obtained. The INITiate:DONE? query returns a measurement name, "WAIT," or "NONE" after each pass through the loop. See INITiate:DONE? and INITiate Programming Examples (how INIT commands are used) for more details about this query.

Note

The INIT:DONE? command is only useful when performing concurrent testing. When initiating only one measurement at a time, simply send the INITiate command immediately followed by the FETCh command to retrieve the results.

Note

STATUS:OPERATION:NMRREADY

The STATus:OPERation:NMRReady command allows the program to immediately branch to the next operation or command without continuing through a loop as in INITiate:DONE? See STATus:OPERation:NMRReady Condition Register Bit Assignments for more details about this command.

You must enable the following so that as soon as the enabled NMRReady bit is true the program moves on.

The STATus:OPERation:NMRReady Condition Register Bit Assignments status register provides status reporting on the cdma2000 measurements.

Note

The following program uses the E1960A GSM Mobile Test Application Bit Error Rate measurement for the example. Refer to STATus:OPERation:NMRReady Condition Register Bit Assignments for bit assignments for other Test Applications.

Note

Generating a Service Request (SRQ) Interrupt - Bit Error Rate NMRR

The following example illustrates the use of the STATus subsystem to generate a service request when a BERR measurement has completed. This code assumes a call is already connected and the BERR measurement is setup (mobile station must be in loopback type A or B).

 
10  OUTPUT 714;"STATUS:OPERATION:NMRREADY:PTR 256" !Enable positive transition
20                                                 !filter on fast BER bit.
30  OUTPUT 714;"STATUS:OPERATION:NMRREADY:ENABLE 256" !Enable the fast BER Bit to
40                                                    !generate a summary message.
50  OUTPUT 714;"STATUS:OPERATION:ENABLE 512" !Enable the Operation summary bit to
60                                           !generate a summary message.
70  OUTPUT 714;"*SRE 128" !Enable the service request enable register to generate SRQ.
80  OUTPUT 714;"*CLS" !Clear all status data structures.
90  ON INTR 7,15 CALL Meas_complete !Define interrupt-initiated branch with a priority
100                                 !of 15 (highest)
110 ENABLE INTR 7;2 !Enable interrupt on interface card 7 with a bit mask
120                 !(for interface's interrupt-enable register) of 2.
130 OUTPUT 714;"SETUP:FBER:CONTINUOUS OFF;:INITIATE:FBERROR" !Initiate a single
140                                                          !fast BER test.
150 LOOP
160 DISP "Waiting for BERR test to complete"
170 WAIT .1 !"Dummy" loop
180 END LOOP
190 !Instead of a "dummy" loop, controlling application could be performing setups,
200 !making measurements, etc.
210 END
220 SUB Meas_complete
230 DISP "BER test complete, OK to FETCh results now"
240 Clear_interrupt=SPOLL(714) !Clear the RQS message in the status byte register.
250 STOP
260 SUBEND

Operating Considerations

Only one indicator is returned per query.

All active measurements must be set to single trigger mode. This ensures that when a measurement completes it remains in the "DONE" state rather than restarting. Sending the "*RST" command at the beginning of your test code or using the "SETup:CONTinuous:OFF" command during measurement setup are ways to set trigger to single for all measurements.

Related Topics


Test System Synchronization Overview

Data Connection Processing Event Synchronization

Data Connection State Synchronization