background image

Chapter 2

NI 5450 Overview

©

 National Instruments Corporation

2-45

NI PXIe-5450 User Manual

The following tables list the types of information that are used to make up 
the instructions that are saved to memory. You can store the instructions for 
multiple sequences to the onboard memory ahead of time and generate 
them later, allowing for quick reconfiguration times between tests. There 
are two example sequences. Sequence 1 represents the instructions for a 
sequence containing a maximum number of segments 

k

. Sequence 

m

 is an 

example of a sequence containing 8 segments. Each sequence downloads 
different waveforms to the onboard memory, and uses various looping and 
Marker placement options to construct the resulting waveform.

Sequence 1: Burst Trigger Mode

Sequence Segment

Waveform

Number of Loops

Marker Placement

1

1

1

0

2

5

14

100

3

17

1

–1

4

12

18,045

10,000

5

12

64,000

12

6

34

64,000

0

.........

k

15

20

10,000

Sequence 

m

: Stepped Trigger Mode

Sequence Segment

Waveform

Number of Loops

Marker Placement

1

1

1

0

2

2

340

4

3

35

1

–1

4

2

10

0

5

340

5

10,000

6

34

64,000

0

7

20,000

1,000,000

13

8

1

1

0

Summary of Contents for NI PXIe-5450

Page 1: ...NI PXIe 5450 User Manual National Instruments 400 MS s 16 bit differential I Q generator for the PXI Express platform July 2008 372622A 01...

Page 2: ...Lebanon 961 0 1 33 28 28 Malaysia 1800 887710 Mexico 01 800 010 0793 Netherlands 31 0 348 433 466 New Zealand 0800 553 322 Norway 47 0 66 90 76 60 Poland 48 22 328 90 10 Portugal 351 210 311 210 Russ...

Page 3: ...ring in an information retrieval system or translating in whole or in part without the prior written consent of National Instruments Corporation National Instruments respects the intellectual property...

Page 4: ...t of Communications DOC Changes or modifications not expressly approved by NI could void the user s authority to operate the equipment under the FCC Rules Class A Federal Communications Commission Thi...

Page 5: ...Clock Input 2 6 External Sample Clock Timebase Input 2 6 CLK OUT Connector 2 7 PFI Connectors 2 7 ACCESS and ACTIVE LEDs 2 8 ACCESS LED 2 8 ACTIVE LED 2 8 Power Up and Reset Conditions 2 9 Thermal Shu...

Page 6: ...P Enabled 2 28 Data Processing Mode 2 28 IQ Rate 2 28 Frequency Shift 2 29 FIR Filter Type 2 30 Common Onboard Signal Processing Applications 2 30 Arbitrary Waveform Generation 2 30 Baseband Interpola...

Page 7: ...mple Size and Resolution 2 62 Waveform Size and Quantum 2 62 Waveform Size 2 62 Waveform Quantum 2 63 Streaming 2 64 Streaming Waveform Data 2 64 Streaming to Multiple Channels 2 69 Average Performanc...

Page 8: ...dules 3 3 Chassis Guidelines 3 4 Using PXI Compatible Products with Standard CompactPCI Products 3 4 PXI Trigger Lines 3 5 System Reference Clock PXI_CLK10 3 6 PFI Lines 3 6 MXI Optimization Applicati...

Page 9: ...4 14 Configure Frequency List Mode 4 16 Configure Script Mode 4 17 Initiate Generation 4 19 Abort Generation 4 19 Abort to Ground 4 19 Abort to a Known Voltage 4 20 Closing the Session 4 21 NI FGEN Er...

Page 10: ...5 3 Nyquist Theorem 5 3 Shannon s Sampling Theorem 5 3 Aliased Images 5 4 DAC Resolution 5 6 Impedance Matching 5 7 Mismatch Uncertainty 5 9 Resistive Matching 5 9 Output Attenuation 5 10 Phase Locke...

Page 11: ...Options from the last dialog box The symbol indicates that the following text applies only to a specific product a specific operating system or a specific software version This icon denotes a tip whi...

Page 12: ...nes of code that are different from the other examples monospace italic Italic text in this font denotes text that is a placeholder for a word or value that you must supply Platform Text in this font...

Page 13: ...peration Output Modes Standard Function Frequency List Standard Function Frequency List Standard Function Arbitrary Waveform Arbitrary Sequence Standard Function Arbitrary Waveform Arbitrary Sequence...

Page 14: ...Minimum Frequency 0 Hz 0 Hz 1 mHz 1 mHz 1 mHz 0 Hz 0 Hz Maximum Frequency Sine 20 MHz Square 20 MHz User Defined 20 MHz Other 1 MHz Sine 40 MHz Square 40 MHz User Defined 40 MHz Other 5 MHz Sine 20 MH...

Page 15: ...Minimum Step Duration 1 28 s 1 28 s 1 28 s 1 28 s Step Duration Quantum 80 ns 80 ns 80 ns 80 ns Arbitrary Waveform Output Write Quantum 64 samples or 32 complex samples 64 samples or 32 complex sampl...

Page 16: ...Waveforms 2 097 151 2 097 151 2 097 151 2 097 151 2 097 151 2 097 151 Streaming Yes Yes Yes Yes Yes Onboard Signal Processing Yes Yes Yes Arbitrary Sequence Output Minimum Sequence Length 1 1 1 1 1 1...

Page 17: ...Number of Markers 4 4 4 4 4 Streaming Yes Yes Yes Yes Yes Output Characteristics Output Voltage at load equal to source impedance up to 5 V up to 5 V up to 6 V up to 6 V up to 6 V up to 6 V up to 1 V...

Page 18: ...s Yes Flatness Correction for Sine Waveforms Yes Yes Yes Flatness Correction for Arbitrary Waveforms Yes Digital Filter Option Yes Yes Yes Yes Yes Yes Digital Filter Interpo lation Factor 2 or 4 autom...

Page 19: ...ternal Software RTSI_ 0 7 PXI_STAR PFI 0 1 Immediate External Software RTSI_ 0 7 PXI_STAR PFI 0 1 Immediate External Software RTSI_ 0 7 PXI_STAR PFI 0 1 Immediate External Software RTSI_ 0 7 PXI_STAR...

Page 20: ...MS s Internal Sample clock 10 S s to 100 MS s External Sample clock 10 S s to 105 MS s Internal Sample clock 10 S s to 100 MS s External Sample clock 10 S s to 105 MS s 5 MS s to 200 MS s Internal Sa...

Page 21: ...MHz clock Internal none External CLK IN PXI 10 MHz clock Internal none External CLK IN PXI 10 MHz clock Reference Clock Frequency 5 MHz to 20 MHz in 1 MHz steps 5 MHz to 20 MHz in 1 MHz steps 5 MHz t...

Page 22: ...ast ExtCalCon stants niFgen_Se lfCal niFgen_Re storeLast ExtCalCon stants niFgen_Se lfCal niFgen_Re storeLast ExtCalCon stants niFgen_Se lfCal niFgen_Re storeLast ExtCalCon stants niFgen_Se lfCal niFg...

Page 23: ...Sequence mode the number and length of sequences Typically waveforms use most of the memory but if you have a very large number of sequences the available waveform memory is reduced Calibration utilit...

Page 24: ...differential load 50 output impedance 100 differential output impedance and output attenuation levels from 0 to 3 dB High Resolution internal clocking External clocking options PLL synchronization to...

Page 25: ...Chapter 2 NI 5450 Overview NI PXIe 5450 User Manual 2 2 ni com Front Panel The following figure shows the NI PXIe 5450 front panel This front panel has two SMB connectors and six SMA connectors...

Page 26: ...ectors are bidirectional connections that can accept a trigger from an external source and can start or step through waveform generation or route signals from several clock event and trigger sources T...

Page 27: ...to a high impedance load HiZ This difference is illustrated in the following figure If the output terminates into any other load the levels are defined by the following formula Vout RL RL RO 2 V where...

Page 28: ...to peak voltage amplitude or arbitrary gain relative to 1 V You can configure the load impedance by calling the Load Impedance property or NIFGEN_ATTR_LOAD_IMPEDANCE attribute Note The voltage output...

Page 29: ...tions for the allowable external Sample clock frequencies and signal characteristics Tip When configuring an external Sample clock set the sample rate to the exact frequency you are using to avoid dat...

Page 30: ...frequency Refer to the device specifications for information about the signal characteristics for the CLK OUT connector PFI Connectors PFI 0 and PFI 1 are bidirectional connectors As an input the PFI...

Page 31: ...onal or the device has detected a problem with a power rail Amber The device is being accessed Green The device is ready to be programmed by NI FGEN Color Indications Off Device is not generating Ambe...

Page 32: ...k impedance to ground The CLK OUT connector is tristated and has a high impedance to ground PXI trigger lines are tristated and floating After the operating system is fully booted and NI FGEN is load...

Page 33: ...hen you use any of the VIs or functions that program the hardware or check hardware status for example the niFgen Commit VI or the niFgen_commit function and the niFgen Self Cal VI or the niFgen_SelfC...

Page 34: ...eve triggers from Trigger and Event Control The output from the Waveform Generation Engine is sent to the DAC device after any digital gain or onboard signal processing is applied The waveform data is...

Page 35: ...rdware configuration of the device may not match the session property or attribute values The device remains configured as it was the last time a session was committed If the computer has just been po...

Page 36: ...N and the NIFGEN_ATTR_ARB_OFFSET attributes are applied immediately to hardware Started Event trigger is generated as the device recognizes triggers Depending on the configured trigger mode the device...

Page 37: ...ount of attenuation required corresponding to the gain setting 2 Following the DAC the signal follows the Direct path The Direct path can provide a maximum of 1 0 Vpk pk differential output into 50 wi...

Page 38: ...f electromechanical relays on the NI 5450 distorts the output signal for about 10 ms Waveform Amplitude Control The NI 5450 can be configured to achieve required amplitude settings Output Paths and Am...

Page 39: ...DAC also provides the fine resolution for the attenuation settings Fine tuning of the main DAC attenuation is performed by the gain DAC Adjust the gain DAC using the Gain DAC Value property or the NIF...

Page 40: ...ng external calibration the frequency response of the Analog path in its different configurations is measured using the niFgen Initialize Flatness Calibration VI or the niFgen_InitializeFlatnessCalibr...

Page 41: ...onnects the differential channel SMA connectors to the Analog Output path You can change the output enable state at any time during waveform generation and generation continues internally You can enab...

Page 42: ...configured This allows you to use the entire onboard memory for one channel of generation Configuring Channels for OSP The NI 5450 supports one channel of real or complex baseband OSP generation When...

Page 43: ...teps to write waveform data to another channel To write waveform data to both channels at once you must first interleave the data Once the data is interleaved call the niFgen Write Waveform poly VI or...

Page 44: ...d Interpolation Baseband I Q Interpolation Onboard Signal Processing Components The following figure shows the block diagram of the OSP block The OSP block includes the following components Prefilter...

Page 45: ...I Q samples If an overflow occurs during these samples the data is clipped but an error is not returned The prefilter gain can be used to attenuate the I Q data to eliminate overflows in later stages...

Page 46: ...IR Filter Types There are a number of built in low pass pulse shaping filters available in NI FGEN Because the coefficients are scaled for unity gain the filters may overflow if transients such as ste...

Page 47: ...AND attribute to set the passband value Caution The Flat filter stopband does not begin until 0 6 I Q Rate If you provide data that has frequency content above 0 4 I Q Rate then aliasing occurs in the...

Page 48: ...ns at 0 5 1 of the I Q Rate The transition band of the raised cosine filter in dB follows the following formula where S is 0 5 1 f is Frequency fraction of the I Q Rate Use the Raised Cosine Filter Al...

Page 49: ...1 of the I Q Rate The transition band of the root raised cosine filter in dB follows the following formula where S is 0 5 1 f is Frequency fraction of the I Q Rate Use the Raised Cosine Filter Alpha p...

Page 50: ...nel devices I Q data can either be written to individual channels for example designating one channel for I data and one channel for Q data or to both channels of the device at once when following the...

Page 51: ...x or the NIFGEN_ATTR_OSP_DATA_PROCESSING_MODE attribute is set to NIFGEN_VAL_OSP_COMPLEX both the I and Q signal paths are used Complex waveform data should be downloaded to the signal generator using...

Page 52: ...at the external Sample clock source is connected to the NI 5450 connector specified in the Sample Clock Source property or the NIFGEN_ATTR_SAMPLE_CLOCK_SOURCE attribute and is generating a clock befor...

Page 53: ...ions The OSP block is particularly useful for the following common applications Arbitrary Waveform Generation Baseband Interpolation Baseband I Q Interpolation Arbitrary Waveform Generation The follow...

Page 54: ...ribute 2 Specify the use of real numbers for the waveform data by setting the Data Processing Mode property or the NIFGEN_ATTR_OSP_DATA_PROCESSING_MODE attribute 3 Set the IQ Rate property or the NIFG...

Page 55: ...Processing Mode property or the NIFGEN_ATTR_OSP_DATA_PROCESSING_MODE attribute 4 Set the IQ Rate property or the NIFGEN_ATTR_OSP_IQ_RATE attribute to the low sample rate of the waveform data 5 Set th...

Page 56: ...characteristics of the image rejection filter For more information about the image rejection filter refer to the NI 5450 specifications Interpolation Settings To determine the total interpolation and...

Page 57: ...61 50 to 67 5 M 20 to 27 M 4 200 to 270 31 23 67 5 to 100 M 27 to 40 M 4 270 to 400 62 45 100 to 135 M 40 to 54 M 2 200 to 270 31 31 135 to 200 M 54 to 80 M 2 270 to 400 62 28 200 to 270 M 80 to 108 M...

Page 58: ...ample clock the Sample clock has an external source that derives device clocking by directly driving the DAC and all waveform generation operations on the device Reference clock the Sample clock is de...

Page 59: ...The term Update clock is synonymous with Sample clock Sample Clock Source Clock Mode PLL Reference Clock Source OnboardClk default NIFGEN_VAL_HIGH_ RESOLUTION None default PXI_CLK10 ClkIn NIFGEN_VAL_...

Page 60: ...ecifications for more information about jitter Phase Locked Loop Reference Clock A phase locked loop PLL is a circuit that tunes the Sample clock timebase to phase lock to an external Reference clock...

Page 61: ...FERENCE_CLOCK_SOURCE attribute is set to None the internal calibration DAC generates the calibration voltage and the PLL circuit is not used Reference Clock Sources The NI 5450 can phase lock its Samp...

Page 62: ...the clock by an integer W or 1 W by calling the External Sample Clock Multiplier property or the NIFGEN_ATTR_EXTERNAL_SAMPLE_CLOCK_MULTIPLIER attribute When using an external Sample clock you should...

Page 63: ...eration VI or the niFgen_InitiateGeneration function to start the next generation If you must remove the external Sample clock between generations after calling the niFgen Abort Generation VI or niFge...

Page 64: ...e Rate property or the NIFGEN_ATTR_SAMPLE_CLOCK_TIMEBASE_RATE attribute You can export the Sample clock timebase to a terminal configured by the Sample Clock Timebase Export Output Terminal property o...

Page 65: ...ses the NI 5450 allows you to export your clocks so that other devices can share the timing of the NI 5450 The following sections describe the possible clock routing configurations Sample Clock The Sa...

Page 66: ...eference You configure a Reference clock as a PLL Reference clock source for the signal to be available for exporting The Reference clock can be routed to the PFI 0 1 front panel SMB connectors the CL...

Page 67: ...h the minimum standard memory size you can store very long waveforms on the device and obtain reliable waveform generation at full sample rate of 400 MS s The NI 5450 also comes with higher memory opt...

Page 68: ...ons for a sequence containing a maximum number of segments k Sequence m is an example of a sequence containing 8 segments Each sequence downloads different waveforms to the onboard memory and uses var...

Page 69: ...el 0 and a square wave on channel 1 as shown in the following figure Waveform and Generation Instruction Memory Size Waveform Memory Size Waveforms are stored in the NI 5450 onboard memory in contiguo...

Page 70: ...tiple of 128 you can determine that the waveform occupies 128 bytes in memory 2 A waveform containing 64 samples occupies 128 bytes in memory By rounding up to the nearest multiple of 128 you can dete...

Page 71: ...e mode and Continuous trigger mode with 500 segments in a sequence list is determined by the following formula Size in Bytes 208 64 500 32 208 bytes Size in memory 32 208 coerced up to the next multip...

Page 72: ...e and use varying numbers of waveforms waveform sizes and number of segments in the sequences Note The following examples only consider the memory used for instructions for one sequence It is possible...

Page 73: ...e list The following table shows all the numbers used to determine the total memory stored in the onboard memory 135 296 bytes Total Onboard Memory Used 135 296 bytes Number of Segments in Sequence Me...

Page 74: ...gure 2 000 segments in a sequence list The following table shows all the numbers used to determine the total memory stored in the onboard memory 66 190 464 bytes Total Onboard Memory Used 66 190 464 b...

Page 75: ...igure 100 segments in a sequence list The following table shows all the numbers used to determine the total memory stored in the onboard memory 78 720 bytes Total Onboard Memory Used 78 720 bytes Wave...

Page 76: ...dditionally the signal generator is configured for Arbitrary Sequence mode and Continuous trigger mode with 100 segments in a sequence list The following table shows all the numbers used to determine...

Page 77: ...or script from memory that was not the last block written Every new NI FGEN session begins with empty memory First multiple waveforms are written to memory nearly filling the device memory as shown in...

Page 78: ...h MAX either by navigating to Start All Programs National Instruments Measurement Automation or by double clicking the Measurement Automation icon on the desktop 2 Expand Devices and Interfaces Expand...

Page 79: ...your system To guarantee the uniqueness of a terminal name across multiple devices terminal names begin with a forward slash followed by the name of the device as configured in MAX such as Dev1 A forw...

Page 80: ...ode allows you to load multiple waveforms in the onboard memory of the signal generator A finite number of samples make a waveform To generate these downloaded waveforms in a specific order you must p...

Page 81: ...cycle of a ramp waveform that is downloaded to onboard memory Waveform Segment 1 shows a segment created using Waveform A repeating or looping three times Waveform Segment 2 contains Waveform B loopi...

Page 82: ...al Waveform Segment 3 contains Waveform A looping only once These waveforms are linked in a sequence The concept of using a sequence to generate waveforms is referred to as waveform sequencing or link...

Page 83: ...waveform that is downloaded to the onboard memory Refer to the niFgen Create Waveform or niFgen Allocate Waveform VIs or the niFgen_CreateArbWaveform or niFgen_AllocateWaveform functions for more info...

Page 84: ...following is the script of this example script myFirstScript wait until scriptTrigger0 repeat 3 generate waveformA marker0 16 end repeat repeat 2 generate waveformB generate waveformC generate wavefo...

Page 85: ...the minimum waveform size values for the different modes Note To provide greater programming flexibility NI FGEN does not strictly enforce the minimum waveform sizes stated in the device specification...

Page 86: ...minus the data already in memory Query the Max Waveform Size property or the NIFGEN_ATTR_MAX_WAVEFORM_SIZE attribute for the current largest size waveform that can be downloaded to the device You can...

Page 87: ...s of new waveform data until the waveform is complete Streaming Waveform Data The following instructions are a guide for configuring your application for streaming For a programmatic example refer to...

Page 88: ...to the waveform handle returned in step 1 Setting this property or attribute ensures that none of your streaming data is overwritten before it is generated NI FGEN monitors your progress to ensure tha...

Page 89: ...blocks of waveform data break the data into smaller blocks and call the niFgen Write Waveform VI or the niFgen_WriteWaveform function multiple times The data is appended sequentially A computer can al...

Page 90: ...orm property or the NIFGEN_ATTR_STREAMING_SPACE_AVAILABLE_IN_WAVEFORM attribute to determine how much of the streaming waveform is free for writing new data As the waveform generates space becomes ava...

Page 91: ...Waveform VI or the niFgen_WriteWaveform function to write a new block of waveform data to the streaming waveform in onboard memory 7 Repeat steps 5 and 6 as free space becomes available 1 6 GB Wavefor...

Page 92: ...erage data transfer rates are highly system dependent The following table is intended to give you an idea of the average sustainable transfer rates using 16 bit or 2 byte samples PXI and PCI PXI Expre...

Page 93: ...READS NIFGEN_ATTR_DATA_TRANSFER_PCI_DMA_OPTIMIZATIONS or NIFGEN_ATTR_DATA_TRANSFER_PREFERRED_PACKET_SIZE attributes Optimize the bus bandwidth usage for multi device streaming applications by calling...

Page 94: ...oximately 600 MB s High speed transfers that saturate the PCI Express link can affect other devices when multiple devices share a single PCI Express link For example if an NI PXI Express signal genera...

Page 95: ...rcuitry or other NI devices When triggering your NI signal generator you can select the type of trigger the trigger source and the trigger mode that you want to use Maximum In Flight Read Requests NIF...

Page 96: ...es Description Start Digital Edge Software The Start trigger transitions a device from an idle state to a generation state where the device can respond to Sample clocks Script Digital Edge Digital Lev...

Page 97: ...Edge of Signal or at Rising Edge of Signal Level Trigger You can configure certain triggers to act when a signal goes below the defined low level or above the defined high level Triggers configured to...

Page 98: ...signals after generation has been initiated You can configure the trigger source with niFgen Configure Trigger VI or the niFgen_ConfigureTriggerSource function Refer to the niFgen Send Software Edge...

Page 99: ...nerates only once and waveform generation halts unless the Arbitrary Waveform Repeat Count property or the NIFGEN_ATTR_ARB_REPEAT_COUNT attribute is set in which case the waveform generates the specif...

Page 100: ...r All Start triggers after the first Start trigger are ignored Arbitrary Sequence Mode The waveform pattern you define in the sequence list generates continuously by continually cycling through the se...

Page 101: ...Arbitrary Waveform Mode If the Arbitrary Waveform Repeat Count property or the NIFGEN_ATTR_ARB_REPEAT_COUNT attribute is set the waveform generates the specified number of times instead of just once...

Page 102: ...ration returns to the waveform defined by the first segment and subsequent Start triggers will restart the process Only the first Start trigger which signals a transition to the next segment is recogn...

Page 103: ...trigger The exported Start Trigger event is a slightly delayed version of the Start trigger used for waveform generation It is guaranteed to be at least 150 ns wide The preceding figure also shows the...

Page 104: ...g Static Value properties or the NIFGEN_ATTR_ANALOG_DATA_MASK and NIFGEN_ATTR_ANALOG_STATIC_VALUE attributes Events An event is a signal generated by the NI device at a device state Typically events a...

Page 105: ...Marker is an event that the device generates in relation to a waveform that is generated The event is configured to occur at the time that a specific location or sample n if the waveform generates on...

Page 106: ...nt generated relative to the configured waveform sample n being generated tm2 represents the Marker event pulse width in time NI FGEN takes into account the factors that affect the delays in the Digit...

Page 107: ...ource for the other device for more precise alignment to the generating waveform You can do this using the RTSI bus PXI trigger lines SYNC OUT PFI 0 and PFI 1 Data Marker Events The Data Marker events...

Page 108: ...eform generation appears on the output connector Therefore synchronizing the signal generator output signal to other devices with fast trigger response times is accomplished using the data marker even...

Page 109: ...ut delay and continues to apply the event delay that you was originally configured If an event delay is applied to an event that is being exported to multiple output terminals NI FGEN aligns the event...

Page 110: ...clock as the Start trigger begins signal generation at the same place each time relative to the divided down Sample clock This technique is more useful as the divisor becomes larger and while an impro...

Page 111: ...nal controls other devices that require timing information related to a specific point in the generated waveform Routing Signals You can route signals in the following ways The Marker event generated...

Page 112: ...pares the values indicated by a measuring instrument or measuring system to the corresponding values realized by external standards You can use the results of calibration to determine the measurement...

Page 113: ...ring Standardized timing protocols eliminate incompatibilities giving you the best performance when synchronizing any kind of analog digital or timing measurements Peripheral Component Interconnect PC...

Page 114: ...Note In newer NI chassis the settings are HIGH and AUTO in some older NI chassis the fan settings may be HI and LO All empty slots in the chassis should be covered with a blank slot filler panel Remo...

Page 115: ...device in a slot away from devices with power supplies and other noisy circuitry The device may also be sensitive to heat generated by high power products in neighboring slots When possible consider...

Page 116: ...ovided by the PXI Specification revision 2 1 If you use a PXI compatible plug in device in a standard CompactPCI chassis you cannot use PXI specific functions but you can still use the basic plug in d...

Page 117: ...ely timed responses to asynchronous external events that are being monitored or controlled The number of triggers that a particular application requires varies with the complexity and number of events...

Page 118: ...ble function input outputs These lines serve as connections to virtually all internal timing signals NI signal generators have up to six digital lines that can accept or generate a trigger generate a...

Page 119: ...Windows starts If you have an initialization timeout or performance issue with your module or if you are not certain that the application ran select Start All Programs National Instruments MXI 3 MXI...

Page 120: ...tate However when in the Idle state the properties may not have been applied to the device yet so the device hardware configuration may not match the session property values the device remains configu...

Page 121: ...or settings cause a transition between states Calling the niFgen Initiate Generation VI or the niFgen_InitiateGeneration function in the Idle state causes a transition to the Generating state Calling...

Page 122: ...e the generation is aborted first General Programming Flow The following diagram shows the general programming flow for applications using NI FGEN Not all NI FGEN VIs appear in the general programming...

Page 123: ...r device NI FGEN is IVI compliant and works with NI LabVIEW NI LabWindowsTM CVITM and conventional programming languages such as Microsoft Visual C C and Visual Basic Optional step Arbitrary Waveform...

Page 124: ...application To successfully build your application you need to have NI FGEN installed along with one of the following ADEs NI LabVIEW NI LabVIEW Real Time NI LabWindows CVI Microsoft Visual C C Micros...

Page 125: ...ule 7 1 or later Unsupported Hardware The following signal generators are not supported as targets for your LabVIEW RT application NI PXI PCI 5401 NI PXI PCI 5411 NI PXI PCI 5431 Unsupported Features...

Page 126: ...NI FGEN examples are classified by keyword so you can search for a particular device or measurement function To browse the NI FGEN examples available in LabWindows CVI launch LabWindows CVI select He...

Page 127: ...gs pass a pointer to the first element of the character array Be sure that the string is null terminated Parameter Passing By default Visual C passes parameters by value Remember to pass pointers to v...

Page 128: ...e Start menu by navigating to Start All Programs National Instruments NI FGEN Examples Note The NI FGEN examples assume that you are already familiar with the ADE in which you will be programming If y...

Page 129: ...Devices and Interfaces Id Query specifies whether or not to verify that NI FGEN supports the device you initialize Circumstances can arise where sending an ID query to the device is undesirable When y...

Page 130: ...ed topic for your device for more information about the type of output modes it supports Note If your application requires triggers clocking or exported signals you must configure them before waveform...

Page 131: ...you to generate standard function waveforms such as sine square triangle etc LabVIEW Example The procedure below provides the basic steps required to configure Standard Function mode For a more detail...

Page 132: ...any previously created arbitrary waveforms sequences and scripts from the signal generator memory Choose one of the following two options for creating your arbitrary waveform Option 1 Allow NI FGEN to...

Page 133: ...eformFromFileI16 or niFgen_CreateWaveformFromFileHWS The function you choose creates a waveform the size and type of the data you choose 4 Call the niFgen_ConfigureArbWaveform function to configure th...

Page 134: ...e onboard memory you allocated in step 3 3 Call the niFgen Create Arbitrary Sequence VI or the niFgen Create Advanced Arb Sequence VI 4 Call the niFgen Configure Arbitrary Sequence VI to configure the...

Page 135: ...ory 3 Call the niFgen Create Frequency List VI to set the function type the frequency list and the duration of each step in the list 4 Call the niFgen Configure Frequency List VI to select the active...

Page 136: ...your device call the niFgen Write Script VI to write the script s containing the generation instructions to be executed The script you write can manage waveform generation based on multiple waveforms...

Page 137: ...dWaveformComplexI16 and associate the proper names to them 3 After your waveforms are written to your device call the niFgen_WriteScript function to write the script s containing the generation instru...

Page 138: ...ple Call the niFgen_InitiateGeneration function to transition the device to the Generation state Abort Generation The abort generation step aborts any signal generation that was initiated in the initi...

Page 139: ...stopped on the CH 0 analog output connector To ensure the output voltage goes to zero volts when closing your applications always disable the output enable relay first and then abort the generation La...

Page 140: ...used Closing the session is important because it releases any temporary buffers that were created to transfer data between the digitizer and the host memory LabVIEW Example Call the niFgen Close VI t...

Page 141: ...ndicator from one of the NI FGEN VIs as shown in the following figure C Example void ErrorBox ViUInt32 errMsgSize ViChar errMsg if error 0 errMsgSize niFgen_GetError vi VI_NULL 0 VI_NULL errMsg ViChar...

Page 142: ...source If you have not changed the settings for your Sample clock source you do not need to perform this procedure LabVIEW Example 1 Call the niFgen Configure Sample Clock Source VI with Source set to...

Page 143: ...e C Example 1 Call the niFgen_ConfigureSampleClockSource function with the sampleClockSource parameter set to an external location Perform the following step if your application is configured for Arbi...

Page 144: ...ipt or Frequency List mode you can select the type of trigger the trigger source and the trigger mode that you want to use LabVIEW Example 1 Call the niFgen Configure Trigger Mode VI to select the tri...

Page 145: ...id In addition a marker at an offset of 97 or 100 is always invalid while a marker at an offset of 96 is valid for all trigger modes except Burst The marker can be placed at an offset of 92 for all tr...

Page 146: ...dArbSequence function and set the markerLocationArray parameter to the location at which you would like the marker to generate 2 Export the marker event by calling the niFgen_ExportSignal function and...

Page 147: ...Marker Event Level Polarity property 3 To export the data marker use the niFgen Export Signal VI To determine all possible signal routes for your device refer to Signal Routing Note When exporting dat...

Page 148: ...waveform faster than allocating a single large contiguous block in memory Depending on the amount of RAM on the computer transferring ten 16 MB blocks may be faster than transferring one 160 MB block...

Page 149: ...he niFgen_WriteWaveform function to write the first part of the waveform data to the streaming waveform in onboard memory Tip When transferring large blocks of waveform data break the data into smalle...

Page 150: ...waveform data in blocks as free space becomes available Configuring Your Application for Direct DMA You can achieve high rates of data transfer to the onboard memory by configuring your device for Di...

Page 151: ...generators support simulation Simulating a device enables you to perform the following tasks Protect your devices by first testing settings and configurations on simulated devices Verify device behav...

Page 152: ...with 256 MB of onboard memory For more information refer to the niFgen Initialize With Options VI C Example In LabWindows CVI simulation is enabled with the niFgen_InitWithOptions function Enable sim...

Page 153: ...of the frequency response at 50 kHz This method is used because two different metrology instruments a digital multimeter DMM and a power meter are used to measure passband flatness The power meter is...

Page 154: ...to be accurately generated Ideally a sample rate many times greater than the frequency of the signal produces accurate waveforms A higher sample rate also captures more waveform details The following...

Page 155: ...nside the spectrum of interest passband An alias is a false lower frequency component that appears in sampled data acquired at too low a sampling rate The following figure shows a 5 MHz sine wave digi...

Page 156: ...want to generate accurate signals using sampled data the sampling rate must be set high enough to prevent aliasing Aliased Images An aliased image is a frequency component that appears in continuous...

Page 157: ...ated and superimposed onto the sampling points of the image The following figure shows the frequency domain representation of the previous example The vertical arrow at fo represents the frequency and...

Page 158: ...rete levels With a vertical range of 10 V the 3 bit DAC cannot generate voltage differences smaller than 1 25 V In comparison a 16 bit DAC with 65 536 discrete levels can generate voltage differences...

Page 159: ...ne as this minimizes signal reflections The presence of impedance discontinuities or mismatches degrade the amplitude and phase accuracy as well as the temporal fidelity of waveforms generated with a...

Page 160: ...the cable back and forth numerous times diminishing at each end by the reflection coefficient where vr reflected voltage vi incident voltage zt terminating impedance z0 characteristic impedance The re...

Page 161: ...a fundamental limit to the power transfer accuracy that can be achieved across a mismatched junction Resistive Matching Signal generators with low high source impedance can be matched with a resistor...

Page 162: ...r the DAC and not before it For example if a DAC with a range of 5 0 V to 5 0 V and a resolution of 12 bits with each bit corresponding to 2 44 mV 5 0 5 0 2 12 does not use output attenuation and the...

Page 163: ...diagram of a basic PLL The operation of this circuit is typical of all PLLs A PLL is a feedback control system that controls the phase of a voltage controlled oscillator VCO The frequency reference si...

Page 164: ...r from DC to the full Nyquist bandwidth half the sampling rate A spur is any frequency bin on a spectrum analyzer or from a Fourier transform of the analog signal SFDR is expressed in dBc The followin...

Page 165: ...the following formula Note Assumes the full scale of the DAC is utilized The ENOB value is the value of an ideal DAC that is equivalent to the DAC of the device Filtering and Interpolation All NI sig...

Page 166: ...signing an analog filter that rejects the images and yet gets maximum output bandwidth 0 to 0 43fs is difficult and is represented by the curve Analog Filter 1 in the following figure Analog Filter 2...

Page 167: ...dth NI signal generators use a halfband digital filter to interpolate one three or seven samples between every two waveform samples at two times four times and eight times the sample frequency fs Also...

Page 168: ...in the following figure Note The allowable range of interpolation factors is dependent on the NI signal generator being used Using two times interpolation filtering with a DAC effective sample rate of...

Page 169: ...l above the cutoff frequency of Analog Filter 3 This configuration eliminates the spectral images and has a filter that is maximally flat within the passband This configuration approaches an ideal des...

Page 170: ...to direct access to NI Applications Engineers via phone and email for one to one technical support as well as exclusive access to on demand training modules via the Services Resource Center NI offers...

Page 171: ...te If your product supports calibration you can obtain the calibration certificate for your product at ni com calibration If you searched ni com and could not find the answers you need contact your lo...

Reviews: