Agilent E1439 Programmer's Reference

Functions listed alphabetically

This function performs the following sequence:

1.Waits for both the AGE1439_STATUS_HARDWARE_SET and AGE1439_STATUS_ SYNC_COMPLETE bits to be set.

2.Returns AGE1439_STATUS_WAIT_TIMEOUT if more than three seconds elapses in step 1.

3.Returns AGE1439_SETUP_ERROR if AGE1439_STATUS_SETUP_ERROR was detected in step 1.

4.Writes data to the control register as prescribed by arguments to the function.

5.Clears the overload count maintained by the API. See “Comments on Overload” on page 160

6.Waits for AGE1439_STATUS_SYNC_COMPLETE.

7.Returns AGE1439_SYNC_NOT_COMPLETE if more than three seconds elapse in step 6, otherwise it returns AGE1439_SUCCESS.

Special conditions prevail during the Measure state. If programmed for block mode operation in the Measure state, the module asserts the Sync signal (regardless of the age1439_meas_control sync parameter setting) until a complete block of data has been collected and is available to the I/O port. When the shared Sync signal is released, indicating that all block mode data collection is finished, all block mode modules move synchronously to the idle state. In continuous mode the module releases the Sync signal immediately after moving into the measure state. This allows the age1439_meas_control function to manipulate the Sync signal to cause synchronous changes to LO frequency while a continuous measurement is in progress. In continuous mode a module moves to the idle state only if explicitly programmed to do so or whenever the FIFO data buffer overflows.

In addition to controlling the progression through the four module states, the Sync signal is used to allow for synchronizing the decimation counters and local oscillators of multiple

Agilent E1439 modules and synchronizing the fs/10 clock during external sampling. This is done by calling age1439_filter_sync and/or age1439_frequency_sync prior to asserting Sync with age1439_meas_control. This is normally done with the module in the Idle state; however, the center frequency can also be changed in the Measure state with age1439_frequency_sync if the modules are all programmed for continuous (non-block mode) data collection.

If all modules in a multi-module system are in the Idle state when the age1439_meas_control sync parameter is asserted, the LO frequency is updated and the next measurement is armed. If all modules are in the measurement state in continuous mode, the LO frequency is synchronously updated, and the measurement continues. In continuous mode you should ensure that all modules are in the same state, either the Idle state or the Measure state, before using age1439_meas_ control to assert Sync. Otherwise some modules re-arm while others continue the current measurement. In block mode the sync assertion is ignored unless all modules are in the Idle state.

The age1439_meas_control function assures that a single module is in a valid state by checking that the hardware complete and sync valid bits in the status register are both true. In synchronous multi-module systems you should use the age1439_wait function for each module to assure a valid state in non-master modules within a synchronous group.

In the case of systems made up of multiple mainframes you must be aware that only modules in the mainframe containing the master module, as defined by age1439_clock_setup, may assert sync. Any sync asserted in other mainframes is ignored by modules in all mainframes. This is true only for rear panel sync. Front panel sync is not sensitive to master mainframe designation.

152

Page 162
Image 162
Agilent Technologies E1439 manual This function performs the following sequence