Rohde & Schwarz R&S TS-PIO4 User Manual
Rohde & Schwarz R&S TS-PIO4 User Manual

Rohde & Schwarz R&S TS-PIO4 User Manual

Digital functional test module
Table of Contents

Advertisement

Quick Links

®
R&S
TS-PIO4
Digital Functional Test Module
User Manual
(;ÜOê2)
1178319202
Version 06

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the R&S TS-PIO4 and is the answer not in the manual?

Questions and answers

Summary of Contents for Rohde & Schwarz R&S TS-PIO4

  • Page 1 ® R&S TS-PIO4 Digital Functional Test Module User Manual (;ÜOê2) 1178319202 Version 06...
  • Page 2 ® This manual describes the following R&S TSVP module: ● ® R&S TS-PIO4 (1525.5559.02) © 2022 Rohde & Schwarz GmbH & Co. KG Muehldorfstr. 15, 81671 Muenchen, Germany Phone: +49 89 41 29 - 0 Email: info@rohde-schwarz.com Internet: www.rohde-schwarz.com Subject to change – data without tolerance limits is not binding. R&S ®...
  • Page 3: Table Of Contents

    ® Contents R&S TS-PIO4 Contents 1 Safety information (multilingual)............7 2 Documentation overview..............11 Getting started manual....................11 User manuals.......................11 System manual......................12 Service manual......................12 Printed safety instructions..................12 Brochures and specifications..................12 Release notes and open source acknowledgment..........12 3 Welcome to the R&S TS-PIO4............. 13 4 Module tour...................15 Status LEDs.........................
  • Page 4 ® Contents R&S TS-PIO4 Configuration of digital channels................33 7.3.1 Setting of voltage range....................33 7.3.2 Configuration of stimulus channels................33 7.3.3 Configuration of input channels..................34 7.3.4 Time settings for data output..................35 7.3.5 Time settings for data recording..................35 7.3.6 Configuration of data width in dynamic mode............... 35 7.3.7 Power consumption.......................37 Triggering and sequence control................
  • Page 5 ® Contents R&S TS-PIO4 10 Troubleshooting................... 82 10.1 LED test........................82 10.2 Power-on test......................82 10.3 R&S TSVP self-test..................... 83 10.4 Contacting customer support..................83 Annex....................84 A Specifications..................84 B Block diagrams..................85 C Interface description................90 Connector X10......................90 Connector X20......................91 Connector X30......................92 Connector X1.......................93 User Manual 1178.3192.02 ─...
  • Page 6 ® Contents R&S TS-PIO4 User Manual 1178.3192.02 ─ 06...
  • Page 7: Safety Information (Multilingual)

    ® Safety information (multilingual) R&S TS-PIO4 1 Safety information (multilingual) This option or accessory is designed for a specific Rohde & Schwarz product. Multilin- gual safety information is delivered with the product. Follow the provided installation instructions. Esta opción o este accesorio están diseñados para un producto Rohde & Schwarz concreto.
  • Page 8 ® Safety information (multilingual) R&S TS-PIO4 See valik või lisaseade on mõeldud konkreetsele Rohde & Schwarz tootele. Tootega on kaasas mitmekeelne ohutusteave. Järgige kaasasolevaid paigaldusjuhiseid. Šī opcija vai piederums ir izstrādāts īpaši Rohde & Schwarz produktam. Produktam pievienota drošības informācija vairākās valodās. Ievērojiet sniegtos uzstādīšanas nor- ādījumus.
  • Page 9 ® Safety information (multilingual) R&S TS-PIO4 Ova opcija ili pribor je dizajniran za određeni Rohde & Schwarz proizvod. Proizvodu su priložene sigurnosne informacije na više jezika. Slijedite priložena uputstva za instala- ciju. Ova opcija ili dodatni pribor je projektovan za određeni Rohde & Schwarz proiz- vod.
  • Page 10 ® Safety information (multilingual) R&S TS-PIO4 Tùy chọn hoặc phụ kiện này dành riêng cho một sản phẩm Rohde & Schwarz cụ thể. Thông tin an toàn đa ngôn ngữ được cung cấp kèm theo sản phẩm. Thực hiện theo hướng dẫn lắp đặt kèm theo.
  • Page 11: Documentation Overview

    ® Documentation overview R&S TS-PIO4 User manuals 2 Documentation overview This section provides an overview of the R&S TSVP (test system versatile platform) user documentation. All documents are delivered with the Generic Test Software Library ("R&S GTSL") installation package. After installing the software, you can open all the documentation from the Windows "Start"...
  • Page 12: System Manual

    ® Documentation overview R&S TS-PIO4 Release notes and open source acknowledgment Generic Test Software Library 2.3 System manual Describes the complete R&S TSVP (test system versatile platform) as a whole, includ- ing the combined use of R&S CompactTSVP and R&S PowerTSVP, plug-in modules and generic test software.
  • Page 13: Welcome To The R&S Ts-Pio4

    ® Welcome to the R&S TS-PIO4 R&S TS-PIO4 3 Welcome to the R&S TS-PIO4 This manual describes the function and operation of the Rohde & Schwarz digital func- tional test module R&S TS-PIO4 for use in the test system versatile platform R&S TSVP.
  • Page 14 ® Welcome to the R&S TS-PIO4 R&S TS-PIO4 ● Standalone self‑test capability ● LabWindows IVI‑C driver available ● Used in PXI based R&S TSVP base units User Manual 1178.3192.02 ─ 06...
  • Page 15: Module Tour

    ® Module tour R&S TS-PIO4 Status LEDs 4 Module tour The R&S TS-PIO4 module is designed as a long plug-in module for mounting in the front of PXI based base units. ‑ PIO4 module Figure 4-1: Overview of interfaces on R&S TS LEDs = Chapter 4.1, "Status LEDs",...
  • Page 16: Connectors X1 And X20

    ® Module tour R&S TS-PIO4 Connector X30 4.2 Connectors X1 and X20 Type: PXI bus Interface to connect the module to the backplane of PXI based base units. Chapter C.4, "Connector X1", on page 93 and Chapter C.2, "Connector X20", on page 91 for a detailed description of the connectors.
  • Page 17: Installing The Module

    ® Installing the module R&S TS-PIO4 5 Installing the module The R&S TS-PIO4 is a module installed on the front panel of PXI based base units. 1. Install the module as described in the user manuals of the base units. 2.
  • Page 18: Typical Applications

    ® Typical applications R&S TS-PIO4 Digital functional test – static 6 Typical applications The R&S TS-PIO4 digital functional test module is used for testing digital modules or devices. This type of functional test is used to check the overall operation of a digital circuit under conditions that are as close to reality as possible.
  • Page 19: Digital Functional Test - Dynamic

    ® Typical applications R&S TS-PIO4 Digital functional test – dynamic 6.2 Digital functional test – dynamic In the real‑time test, overall operation of the digital section of a UUT is tested under operating conditions that are as close to reality as possible. For this purpose, digital patterns (vectors and pattern sets) with a precisely defined, usually high clock rate and precise time response are applied at the UUT connections and the responses recor- ded.
  • Page 20: Functions

    ® Functions R&S TS-PIO4 Overview 7 Functions 7.1 Overview 7.1.1 General The R&S TS-PIO4 digital functional test module provides 8 ports each with 4 digital input pins and output pins. For this purpose, the module has unmultiplexed digital pins, i.e. behind each pin is a separate digital channel. Furthermore, the output voltages of the drivers as well as the comparator thresholds of the inputs can, within certain limits, be freely programmed on the module.
  • Page 21: Ports

    ® Functions R&S TS-PIO4 Overview 7.1.2 Ports Due to the structures in the hardware, the digital inputs and outputs are divided into so‑called ports. The R&S TS-PIO4 module provides 32 outputs (OUT1 to OUT32) and 32 inputs (IN1 to IN32). Each port (PORT0 to PORT7) is made up of 4 channels. Many functions of the driver refer to this port structure.
  • Page 22 ® Functions R&S TS-PIO4 Overview For reasons of backward compatibility, the attribute RSPIO4_ATTR_PORT_HANDLING can be set to the value RSPIO4_PORT_HANDLING_PDFT using the rspio4_ConfigurePortHandling function. In this case, the driver software emu- lates a module with 4 ports each with 8 channels. With this setting, the tri‑state infor- mation in the data structures is interpreted on a port‑specific basis.
  • Page 23: Static Digital Test

    ® Functions R&S TS-PIO4 Overview 7.1.3.3 Response memory The recorded response data is also stored in a 2 Msample memory. This memory always contains the results of the high comparators and the low comparators alter- nately in a 32‑bit value. The default functions evaluate these results according to the selected comparator mode: ●...
  • Page 24: Programming Of Digital Tests

    ® Functions R&S TS-PIO4 Programming of digital tests The "Response Delay" is the time offset between the beginning of a pattern and sam- pling of the data at the inputs. The pattern rate is the reciprocal of the pattern period. Figure 7-1: "Pattern Set Period"...
  • Page 25: Digital Tests With Device Driver Functions

    ® Functions R&S TS-PIO4 Programming of digital tests 7.2.1 Digital tests with device driver functions 7.2.1.1 Initialization ● rspio4_init ● rspio4_InitWithOptions ● rspio4_close 7.2.1.2 Auxiliary functions ● rspio4_reset ● rspio4_LockSession ● rspio4_UnlockSession ● rspio4_self_test ● rspio4_revision_query 7.2.1.3 Error queries ● rspio4_error_query ●...
  • Page 26 ® Functions R&S TS-PIO4 Programming of digital tests Static digital test with low‑level driver functions ● rspio4_SetDoutState ● rspio4_SetDoutPort ● rspio4_ConnectInOut ● rspio4_GetDinState ● rspio4_GetDinHighAndLowComp Dynamic digital test with low‑level driver functions Some of these functions are also required for configuring the default settings for dynamic tests compliant with IVI Digital (see Chapter 8.3.4, "Static pattern output with Low‑Level driver...
  • Page 27 ® Functions R&S TS-PIO4 Programming of digital tests ● rspio4_CreatePattern ● rspio4_GetChannelName ● rspio4_GetChannelOpcode ● rspio4_GetGroupOpcode ● rspio4_ConfigureStaticResponseDelay ● rspio4_ExecuteStaticPattern ● rspio4_FetchStaticChannelOpcode ● rspio4_GetStaticChannelName ● rspio4_FetchStaticChannelListResults ● rspio4_FetchStaticChannelResult ● rspio4_FetchStaticChannelData ● rspio4_FetchStaticChannelListData ● rspio4_AbortPatternSet ● rspio4_BeginPatternSetLoading ● rspio4_ClearPatternSet ● rspio4_ConfigurePatternSetMaxTime ●...
  • Page 28: Digital Test With Dio Manager

    ® Functions R&S TS-PIO4 Programming of digital tests Static digital test compliant with IVI Digital Here too static tests are possible, i.e. tests in which the host computer is responsible for control and which, as a result, do not have a fully defined time response. See the example in Chapter 8.3.3, "Static pattern execution with IVI Digital",...
  • Page 29 ® Functions R&S TS-PIO4 Programming of digital tests 9000.0> 0 0 0 0 0 09 = X 1 X X 10000.0> 0 0 0 0 1 0A = X 0 X X 11000.0> Z Z Z Z Z 0B = X X X X 12000.0>...
  • Page 30 ® Functions R&S TS-PIO4 Programming of digital tests 7.2.2.2 Configuration of DIO manager The waveform file contains the logical name of the inputs and outputs. Assignment of physical channels on the R&S TS‑PIO4 modules to logical names takes place in the file application.ini.
  • Page 31 ® Functions R&S TS-PIO4 Programming of digital tests 7.2.2.3 Structure of a test program Table 7-4: These functions must be called once at beginning of test program. Function Comments RESMGR_Setup Call of the resource manager DIOMGR_Setup Call of the DIO manager and initialization of the TS‑PDFT module DIOMGR_ConfigureStimulus Configuration of logical levels for inputs and outputs...
  • Page 32 ® Functions R&S TS-PIO4 Programming of digital tests 7.2.2.5 Loading of waveform file The waveform file defines a pattern set with specification of the timestamps. These timestamps do not have to be equidistant. Normally, a new line is created whenever at least one signal changes.
  • Page 33: Configuration Of Digital Channels

    ® Functions R&S TS-PIO4 Configuration of digital channels 7.2.2.6 Execution of pattern set The pattern set can be executed synchronously or asynchronously. In the first case, the DIOMGR_ExecutePatternSet() function does not return until execution has been completed (or the maximum time has been exceeded). In the second case, exe- cution is started or the trigger armed and the function returns without having to wait for actual execution of the pattern set.
  • Page 34: Configuration Of Input Channels

    ® Functions R&S TS-PIO4 Configuration of digital channels Figure 7-2: Configuration of stimulus channels 7.3.3 Configuration of input channels ● rspio4_ConfigureRespPort The measurement channel inputs have a safety circuit upstream of the comparators. This safety circuit has the following structure: Figure 7-3: Configuration of input channels Each input is routed to two comparators which have an adjustable threshold.
  • Page 35: Time Settings For Data Output

    ® Functions R&S TS-PIO4 Configuration of digital channels If the comparator is set to "COMP" mode, the two comparators function as window comparators. A 1 is detected if the input level is between the thresholds, and a 0 is detected if the input level is below the threshold for low or above the threshold for high. 7.3.4 Time settings for data output This setting is required both for dynamic tests in compliance with IVI Digital and for dynamic tests with the low‑level driver functions.
  • Page 36 ® Functions R&S TS-PIO4 Configuration of digital channels ● rspio4_ConfigureRespMode If required, the digital channels can be configured in different combinations for simulta- neous static and dynamic operation. This, for example, allows the configuration of con- trol signals that remain at a constant level during entire test sequences. They then no longer have to be part of the dynamic data.
  • Page 37: Power Consumption

    ® Functions R&S TS-PIO4 Configuration of digital channels 7.3.7 Power consumption 7.3.7.1 Estimation of power consumption The total power consumption of the R&S TS‑PIO module should not exceed 40 W and depends on the operating mode of the input and output channels. The following description explains calculation of the maximum power consumption for the operating ranges most frequently used.
  • Page 38 ® Functions R&S TS-PIO4 Configuration of digital channels Table 7-8: Maximum power consumption per module Range Power consumption of active IO channels [W] Maximum power con- sumption of a mod- ule [W] #GRP * #CH * 0.021 * f[MHz] * (0.421 + 0.233 * U_swing) + ∑P_load <...
  • Page 39 ® Functions R&S TS-PIO4 Configuration of digital channels Figure 7-4: Max. operating range as a function of maximum power consumption Input channels Depending on the operating range and frequency, receive channels (comparators) are additionally subject to dissipation loss during switchover. The table below gives the approximate additional power consumption for the operating ranges with the following output values: ●...
  • Page 40: Triggering And Sequence Control

    ® Functions R&S TS-PIO4 Triggering and sequence control 7.3.7.2 Safety mechanism If the maximum permissible power consumption is exceeded, the IOs are deactivated by a safety circuit. In this case, an error will occur when a driver function is called. The IOs can be reactivated with the rspio4_reset function.
  • Page 41: Receiving Of Trigger Signals

    ® Functions R&S TS-PIO4 Triggering and sequence control The output of the trigger unit is used to actuate other functions. Selection of a certain type of output signal does not influence the internal function (output stimulus, read in response). This output signal (e.g. ACTIVE) can be output on the PXI0 to 7 lines as well as on XTO in order to, for example, trigger a measurement on a different CompactPCI board.
  • Page 42: Generation Of Trigger Signals

    ® Functions R&S TS-PIO4 Triggering and sequence control The current state of both sequence controls can be queried using the rspio4_GetItStatus function. By calling the rspio4_WaitUntilPatternSetComplete function, the sequence control can be made to wait until the end of execution in the test program. If sequence control is in the "Waiting"...
  • Page 43: Pwm

    ® Functions R&S TS-PIO4 Frequency measurement The rspio4_ConfigItTrigOut function can be used to determine which signal the trigger logic blocks IT1 and IT2 are to output after they have been started either via software (rspio4_InitiateSWTrigger) or by means of a configured hardware sig- nal (rspio4_ConfigHWTriggerInput).
  • Page 44: Bidirectional Channels

    ® Functions R&S TS-PIO4 Bidirectional channels ● If a defined number of pulses (gateCounts) is specified, the module measures the time required for a certain number of pulses to arrive. The Gate Time parameter is considered a timeout value. If the desired number of pulses is not included into this time, the rspio4_FrequencyMeasurement function will return an error mes- sage.
  • Page 45: External Clock Input

    ® Functions R&S TS-PIO4 GND relay 7.8 External clock input Various applications can be implemented using the external clock input (EXT_CLK). One possibility is to generate output frequencies that cannot be achieved using an internal frequency divider; alternatively, the measuring card can be synchronized to the clock of a UUT.
  • Page 46: Software

    ® Software R&S TS-PIO4 Soft panel 8 Software 8.1 Driver software A LabWindows IVI driver is available for actuation of the R&S TS-PIO4 digital func- tional test module. All additional functions of the hardware are controlled using specific extensions of the driver. The driver is part of the ROHDE & SCHWARZ GTSL software. All the functions of the driver are described fully in the online help and in the LabWind- ows/CVI function panels.
  • Page 47: Programming Examples For R&S Ts-Pio4

    ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 Figure 8-1: Soft panel of R&S TS-PIO4 Operation of the soft panels is described in Software Description for R&S GTSL. In the R&S TS-PIO4 soft panel, it is possible to set static and dynamic bit patterns at the outputs and to read in input states.
  • Page 48 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 8.3.1.1 Main function /* Programming example with DIOMGR */ #include <ansi_c.h> #include "resmgr.h" #include "diomgr.h" static short errorOccurred; static long errorCode; static char errorMessage[GTSL_ERROR_BUFFER_SIZE]; static long residDiomgr; static char benchName[] = "bench->823916"; static char fileName[] = "823916.tbl";...
  • Page 49 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* cleanup libraries */ DIOMGR_Cleanup (0, residDiomgr, &errorOccurred, &errorCode, errorMessage); cs("DIOMGR_Cleanup"); RESMGR_Cleanup ( 0, &errorOccurred, &errorCode, errorMessage); cs("RESMGR_Cleanup"); printf("\nPress 'Enter' to terminate\n"); getchar(); return 0; 8.3.1.2 Error handling This function checks the return values of a function from the GTSL libraries (RESMGR, DIOMGR).
  • Page 50 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* configure stimulus and response levels */ DIOMGR_ConfigureStimulus (0, residDiomgr, stimChannels, "TTL", 3.3, 0.1, &errorOccurred, &errorCode, errorMessage); cs("DIOMGR_ConfigureStimulus"); DIOMGR_ConfigureResponse (0, residDiomgr, respChannels, "HYSTERESIS", 0.8, 2.0, &errorOccurred, &errorCode, errorMessage); cs("DIOMGR_ConfigureResponse"); /* load the waveform. Pattern set name = file name */ DIOMGR_LoadWaveform (0, residDiomgr, fileName, "TBL", 1.0e-6, fileName, &numPatterns, &errorOccurred, &errorCode, errorMessage);...
  • Page 51 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 *******************************************************************************/ static void diagnosis ( void ) long executedPatternCount; long failedPatternCount; long failedChannelCount; char failedChannelNames[1024]; long bufferSize; char * pData = NULL; char * pResults = NULL; char * token = NULL; int i;...
  • Page 52: Dynamic Pattern Execution With Ivi Digital

    ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 DIOMGR_GetPatternSetChannelResults ( 0, residDiomgr, fileName, token, bufferSize, pResults, &errorOccurred, &errorCode, errorMessage ); cs("DIOMGR_GetPatternSetChannelResults"); /* 1=passed, 0=failed. Replace "failed" by an X and "passed" by a space */ numFail = 0; for ( i=0; i<bufferSize; i++ ) switch ( pResults[i] ) case '0': pResults[i] = 'X';...
  • Page 53 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 static char patternSetName[] = "823916"; /* channel names */ static char o1[] = "OUT1"; static char o2[] = "OUT2"; static char o3[] = "OUT3"; static char o4[] = "OUT4"; static char o5[] = "OUT5"; static char bus[] = "OUT20-OUT27";...
  • Page 54 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 getchar(); return 0; 8.3.2.2 Error handling This function checks the return values of a driver call. An error message is issued if there is an error. /* FUNCTION *******************************************************************/ /* checks the return status of a driver call *******************************************************************************/ static void chk ( char * funcName ) if ( sta != VI_SUCCESS )
  • Page 55 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 chk ("rspio4_ConfigureMode"); /* create and load the pattern set */ createPatternSet(); /* configure the timing */ sta = rspio4_ConfigurePatternSetTiming(vi, patternSetName, 1.0e-6, 0.5e-6); chk ("rspio4_ConfigurePatternSetTiming"); /* run the test */ sta = rspio4_ExecutePatternSet(vi, patternSetName, 1000); chk ("rspio4_ExecutePatternSet");...
  • Page 56 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 *******************************************************************************/ static void createPatternSet ( void ) ViInt32 ph; /* create a pattern set */ sta = rspio4_CreatePatternSet(vi, patternSetName); chk ("rspio4_CreatePatternSet"); /* create a pattern */ sta = rspio4_CreatePattern(vi, &ph); chk ("rspio4_CreatePattern"); /* start loading */ sta = rspio4_BeginPatternSetLoading(vi, patternSetName);...
  • Page 57 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* load pattern */ sta = rspio4_LoadDynamicPattern(vi, patternSetName, ph); chk ("rspio4_LoadDynamicPattern"); /*** 3. pattern: all stim tristate, bus = 02 */ sta = rspio4_ConfigureChannelOpcode(vi, ph, o1, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o2, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode");...
  • Page 58 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 sta = rspio4_ConfigureChannelOpcode(vi, ph, o2, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o3, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o4, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o5, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureGroupOpcode(vi, ph, bus, RSPIO4_VAL_GROUP_INPUT, 0x05);...
  • Page 59 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 8.3.2.5 Evaluation of failed patterns /* FUNCTION *******************************************************************/ /* reads information about pattern set failures and prints it to stdout *******************************************************************************/ static void diagnosis ( void ) ViInt32 executedPatternCount; ViInt32 numChannels = 4; /* in1 - in4 */ ViInt32 * pResults;...
  • Page 60 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 sta = rspio4_FetchDynamicChannelListPatternData(vi, patternSetName, 0, executedPatternCount, "in1,in2,in3,in4", numChannels * executedPatternCount, pData, &actualSize); chk ("rspio4_FetchDynamicChannelListPatternData"); sta = rspio4_FetchDynamicChannelListPatternResults (vi, patternSetName, 0, executedPatternCount, "in1,in2,in3,in4", numChannels * executedPatternCount, pResults, &actualSize); chk ("rspio4_FetchDynamicChannelListPatternResults"); for ( channel = 0; channel < numChannels; channel ++ ) printf("\nin%d :\n", channel+1);...
  • Page 61: Static Pattern Execution With Ivi Digital

    ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 printf("\n"); free(pResults); free(pData); free(pPatterns); 8.3.3 Static pattern execution with IVI Digital 8.3.3.1 Main function /* Example using IVI functions for static pattern execution */ #include <ansi_c.h> #include "rspio4.h" /* adapt the resource descriptor to your test system! */ static char resDesc[] = "PXI5::11::INSTR";...
  • Page 62 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* loads the driver and runs the test *******************************************************************************/ int main (int argc, char *argv[]) printf("Example using IVI functions for static pattern execution\n\n"); /* open driver */ sta = rspio4_InitWithOptions(resDesc, VI_TRUE, VI_TRUE, "Simulate=0", &vi); /* check return value */ chk ("rspio4_InitWithOptions");...
  • Page 63 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 *******************************************************************************/ static void runTest ( void ) /* configure stimulus and response levels */ sta = rspio4_ConfigurePortVoltageRange(vi, RSPIO4_MASK_PORT_ALL, RSPIO4_PORT_VOLTAGE_RANGE_2); chk ("rspio4_ConfigurePortVoltageRange"); sta = rspio4_ConfigureStimPort(vi, RSPIO4_MASK_PORT_ALL, RSPIO4_STIM_MODE_TTL, 3.3, 0.0, 0.1); chk ("rspio4_ConfigureStimPort"); sta = rspio4_ConfigureRespPort(vi, RSPIO4_MASK_PORT_ALL, RSPIO4_RESP_MODE_HYST, 2.0, 0.8);...
  • Page 64 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 ViInt32 ph; ViInt32 patternIdx = 1; /* create a pattern */ sta = rspio4_CreatePattern(vi, &ph); chk ("rspio4_CreatePattern"); /*** 1. pattern : stim all zero, resp don't care */ sta = rspio4_ConfigureChannelOpcode(vi, ph, o1, RSPIO4_VAL_OPCODE_IL); chk ("rspio4_ConfigureChannelOpcode");...
  • Page 65 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o5, RSPIO4_VAL_OPCODE_IOX); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureGroupOpcode(vi, ph, bus, RSPIO4_VAL_GROUP_INPUT, 0x02); chk ("rspio4_ConfigureGroupOpcode"); executePattern(ph, patternIdx++); /*** 4. pattern: all stim = 0, bus = 03 */ sta = rspio4_ConfigureChannelOpcode(vi, ph, o1, RSPIO4_VAL_OPCODE_IL);...
  • Page 66 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o2, RSPIO4_VAL_OPCODE_IL); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o3, RSPIO4_VAL_OPCODE_IL); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o4, RSPIO4_VAL_OPCODE_IL); chk ("rspio4_ConfigureChannelOpcode"); sta = rspio4_ConfigureChannelOpcode(vi, ph, o5, RSPIO4_VAL_OPCODE_IL); chk ("rspio4_ConfigureChannelOpcode");...
  • Page 67 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 diagnosis (); else printf("Pattern %d passed\n", patternIdx); 8.3.3.6 Evaluation of a failed pattern /* FUNCTION *******************************************************************/ /* reads information about pattern failures and prints it to stdout *******************************************************************************/ static void diagnosis ( void ) ViInt32 numChannels = 4;...
  • Page 68: Static Pattern Output With Low-Level Driver Functions

    ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 case RSPIO4_VAL_RESULT_PASS: printf("pass"); break; case RSPIO4_VAL_RESULT_FAIL: printf("fail"); break; default: printf("not available"); break; printf("\n"); 8.3.4 Static pattern output with Low‑Level driver functions 8.3.4.1 Main function /* Example using low level driver functions for static pattern execution */ #include <utility.h>...
  • Page 69 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 0xFFFFFFFF, 0xFFFFFFF0, /* OUT1 to OUT4 tri state */ 0xFFFFFFFF, /* etc. */ 0x00000000 /* all channels tri state */ static ViStatus sta; static ViSession vi; /* prototypes */ static void chk ( char * funcName ); static void runTest ( void );...
  • Page 70 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 if ( sta != VI_SUCCESS ) char errorMessage[256]; rspio4_error_message(vi, sta, errorMessage); printf ("%s returned 0x%08X; %s\n", funcName, sta, errorMessage); 8.3.4.3 Execution of digital test /* FUNCTION *******************************************************************/ /* configures the digital test and executes it *******************************************************************************/ static void runTest ( void ) ViReal64 voltageHigh = 3.3;...
  • Page 71: Dynamic Pattern Execution With Low-Level Driver Functions

    ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 chk ("rspio4_ConfigureRespMode"); /* executes the pattern set */ executePatternSet(); 8.3.4.4 Execution of a pattern set /* FUNCTION *******************************************************************/ /* executes the pattern set *******************************************************************************/ static void executePatternSet( void ) loopIdx; ViUInt32 response; ViUInt32 enableMask = 0xFFFFFFFF;...
  • Page 72 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 #define PATTERN_COUNT #define PATTERN_PERIOD 1.0e-6 #define FETCH_TIMEOUT /* adapt the resource descriptor to your test system! */ static char resDesc[] = "PXI5::11::INSTR"; static ViUInt32 stimData[PATTERN_COUNT] = { 0x00000000, 0x00000010, 0x0000001F, /* tri state */ 0x00000000, 0x00000010, 0x0000001F, /* tri state */...
  • Page 73 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* open a session to the device driver */ sta = rspio4_InitWithOptions(resDesc, VI_TRUE, VI_TRUE, "Simulate=0", & vi); /* check return value */ chk ("rspio4_InitWithOptions"); if (VI_SUCCESS == sta) runTest(); /* close the driver */ sta = rspio4_close(vi);...
  • Page 74 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 ViReal64 voltageHigh = 3.3; ViReal64 voltageLow = 0.0; ViReal64 currentLimit = 0.1; ViReal64 thresholdHigh = 2.0; ViReal64 thresholdLow = 0.8; ViReal64 triggerDelayStim = 0.0; ViReal64 triggerDelayResp = PATTERN_PERIOD / 2.0; /* set voltage range; sta = rspio4_ConfigurePortVoltageRange(vi, RSPIO4_MASK_PORT_ALL, RSPIO4_PORT_VOLTAGE_RANGE_2);...
  • Page 75 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* read the response data */ sta = rspio4_FetchPatternResponseData(vi, sizeof(response), (ViAddr *)response, FETCH_TIMEOUT, & respByteCount); chk ("rspio4_FetchPatternResponseData"); /* evaluate response data */ printf("Response data:\n"); for (loopIdx = 0; loopIdx < PATTERN_COUNT; loopIdx++) printf("%2d 0x%08X\n", loopIdx, response[loopIdx].data);...
  • Page 76: Triggered Pattern Execution

    ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 portMask = portMask << 1; printf("%2d 0x%08X\n", loopIdx, stimulus[loopIdx].data); printf(" 0x%s\n", triStateInfo); /* load data to stimulus RAM */ sta = rspio4_LoadData (vi, (ViAddr)s_stimData, sizeof(s_stimData), RSPIO4_VAL_DATA_TYPE_STIM, & memId); chk ("rspio4_LoadData"); 8.3.6 Triggered pattern execution In this example, a pulse on trigger line PXI0 of the TSVP backplane triggers output of the pattern.
  • Page 77 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 static ViStatus sta; static ViSession vi; static ViUInt16 memId; /* prototypes */ static void chk ( char * funcName ); static void runTest ( void ); /* FUNCTION *******************************************************************/ /* loads the driver and runs the test *******************************************************************************/ int main(int argc, char *argv[]) printf("Use of low level driver functions for triggered execution\n\n");...
  • Page 78 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 8.3.6.3 Triggered digital test /* FUNCTION *******************************************************************/ /* configures the digital test, loads the test and executes it. *******************************************************************************/ static void runTest ( void ) ViUInt32 respByteCount; ViInt32 loopIdx; /* set voltage range; sta = rspio4_ConfigurePortVoltageRange(vi, RSPIO4_MASK_PORT_ALL, RSPIO4_PORT_VOLTAGE_RANGE_2);...
  • Page 79 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 /* load data to stimulus RAM */ sta = rspio4_LoadData (vi, (ViAddr)stimulus, sizeof(stimulus), RSPIO4_VAL_DATA_TYPE_STIM, & memId); chk ("rspio4_LoadData"); /* connect all outputs to inputs */ sta = rspio4_ConnectInOut (vi, RSPIO4_MASK_PORT_ALL, RSPIO4_MASK_PORT_ALL); chk ("rspio4_ConnectInOut");...
  • Page 80 ® Software R&S TS-PIO4 Programming examples for R&S TS-PIO4 (ViAddr *)response, 0.1, & respByteCount); chk ("rspio4_FetchPatternResponseData"); /* evaluate response data */ printf("Idx | Stimulus | Response \n"); printf("-----------------------------\n"); for (loopIdx = 0; loopIdx < PATTERN_COUNT; loopIdx++) printf("% 3d | 0x%08X | 0x%08X\n", loopIdx, stimulus[loopIdx].data, response[loopIdx].data);...
  • Page 81: Maintenance, Storage And Disposal

    ® Maintenance, storage and disposal R&S TS-PIO4 Disposal 9 Maintenance, storage and disposal 9.1 Storage Protect the product against dust. Ensure that the environmental conditions, e.g. tem- perature range and climatic load, meet the values specified in the data sheet. 9.2 Disposal Rohde &...
  • Page 82: Troubleshooting

    ® Troubleshooting R&S TS-PIO4 Power-on test 10 Troubleshooting If the system is not running properly, try to find the problem with the following tests. If the tests do not help to locate the problem, contact your Rohde & Schwarz service rep- resentative.
  • Page 83: R&S Tsvp Self-Test

    ® Troubleshooting R&S TS-PIO4 Contacting customer support Power-on test for modules with a rear I/O supply module If the green LED indicates a problem with the supply voltage, check the LEDs of the corresponding rear I/O supply module separately. If the LEDs on the rear I/O module also indicate a supply voltage failure, replace the rear I/O module.
  • Page 84: Annex

    ® Specifications R&S TS-PIO4 Annex A Specifications For an overview of technical specifications of the R&S TS-PIO4 module, refer to the corresponding product brochure / data sheet. If discrepancies exist between information in this manual and the values in the data sheet, the values in the data sheet take precedence.
  • Page 85: B Block Diagrams

    ® Block diagrams R&S TS-PIO4 B Block diagrams This section contains a functional block diagram of the R&S TS‑PIO4 module as well as a detailed block diagram. ‑ PIO4 module Figure B-1: Functional block diagram of R&S TS ‑ PIO4 module Figure B-2: Detailed block diagram of R&S TS User Manual 1178.3192.02 ─...
  • Page 86 ® Block diagrams R&S TS-PIO4 Figure B-3: Clock switch Figure B-4: Trigger und timing control Figure B-5: Digital input comparator User Manual 1178.3192.02 ─ 06...
  • Page 87 ® Block diagrams R&S TS-PIO4 Figure B-6: Hardware trigger configurator Figure B-7: Trigger logic block User Manual 1178.3192.02 ─ 06...
  • Page 88 ® Block diagrams R&S TS-PIO4 Figure B-8: Trigger output configurator Figure B-9: Stimulus User Manual 1178.3192.02 ─ 06...
  • Page 89 ® Block diagrams R&S TS-PIO4 Figure B-10: Driver and comparator ‑ PIO4 in R&S CompactTSVP Figure B-11: R&S TS User Manual 1178.3192.02 ─ 06...
  • Page 90: C Interface Description

    ® Interface description R&S TS-PIO4 Connector X10 C Interface description C.1 Connector X10 Figure C-1: Connector X10 (mating side) Table C-1: Pin assignment of R&S TS-PIO4 connector x10 AUX1 EXT_CLK AUX2 AUX3 AUX4 OUT1 OUT2 OUT3 OUT4 OUT5 OUT6 OUT7 OUT8 GNDNO OUT9...
  • Page 91: Connector X20

    ® Interface description R&S TS-PIO4 Connector X20 OUT17 OUT18 OUT19 IN17 IN18 IN19 OUT20 OUT21 OUT22 IN20 IN21 IN22 OUT23 OUT24 GNDNO IN23 IN24 OUT25 OUT26 OUT27 IN25 IN26 IN27 OUT28 OUT29 OUT30 IN28 IN29 IN30 OUT31 OUT32 GNDNO IN31 IN32 CHA‑GND C.2 Connector X20...
  • Page 92: Connector X30

    ® Interface description R&S TS-PIO4 Connector X30 Figure C-3: Pin assignment of connector X20 C.3 Connector X30 ‑ PIO4 connector x30 Table C-2: Assignment of R&S TS User Manual 1178.3192.02 ─ 06...
  • Page 93: Connector X1

    ® Interface description R&S TS-PIO4 Connector X1 C.4 Connector X1 Figure C-4: Connector X1 (mating side) Figure C-5: Pin assignment of connector X1 User Manual 1178.3192.02 ─ 06...

This manual is also suitable for:

1525.5559.02

Table of Contents