RTC6 boards
Doc. Rev. 1.0.21 en-US
6 Developing RTC6-User Programs
97
6.2.3 Initializing the RTC6 DLL and
RTC6 Board Management
As many RTC6 PCIe Boards as the PCIe bus allows can
be operated simultaneously in one PC. However, the
RTC6 board management can manage a maximum of
255 RTC6 PCIe Boards and RTC6 Ethernet Boards at
the same time, see Chapter 16.5.3 ”About the
RTC6 Board Management”, page 905.
The RTC6 DLL allows multi-processing
(1)
as well as
multi--threading.
No RTC6 PCIe Board can be simultaneously used by
several user programs. Access rights (even if
temporary) to existing boards are assigned on an
exclusive basis by the RTC6 DLL.
Multiple threads of one user program can use the
same board, but can not send commands to it at the
same time (the RTC6 DLL automatically serializes the
command calls).
The RTC6 board management, see Chapter 16.5.3
”About the RTC6 Board Management”, page 905,
must be initiated by init_rtc6_dll at the beginning of
each user program so that an RTC6 PCIe Board can be
addressed at all. This even applies, if only one
RTC6 PCIe Board is to be used by only one
user program.
init_rtc6_dll does the following (for details, see the
command description):
• Searches for all present RTC6 PCIe Boards
• Establishes the RTC6 board management
• Automatically assigns the user program access
rights to the found boards (as long as access
rights are not already assigned to another
user program)
• Assigns RTC6 DLL-internal numbers for all found
RTC6 Ethernet Boards (important for multi-board
commands)
• Sets one board as the active board, which
therefore, is the target for non-multi-board
commands
• Does not search for RTC6 Ethernet Boards. These
must be added separately, see Chapter 16
”Appendix A: The RTC6 Ethernet Board”,
page 876.
acquire_rtc, release_rtc, select_rtc allow changing
access rights and the active board at run-time.
Usage of several boards is described in Chapter 6.6
”Using Several RTC6 PCIe Boards in One PC”,
page 123; usage by several user programs is
described in Chapter 6.7 ”Usage of RTC6 PCI Express
Boards by Several User Programs”, page 128.
After RTC6 DLL initialization by init_rtc6_dll, the
default DLL-operation mode is the
RTC6 Standard Mode. If required, a different DLL-
operation mode can be set (see set_rtc4_mode,
set_rtc5_mode and set_rtc6_mode).
The RTC4 Compatibility Mode is provided so that
user program written for the RTC4 can be processed
by the RTC6 PCIe Board (for otherwise unchanged
commands
(2)
) without modification. In the command
descriptions, notes changes in this regard, see
Chapter 10.2 ”RTC6 Command Set”, page 315,
“RTC4RTC6” rows.
See also Chapter 2.10.2 ”Porting RTC4 Source Code
to the RTC6 PCIe Board”, page 49.
The similar applies to the RTC5 Compatibility Mode,
see RTC5RTC6 rows of the command descriptions.
See also Chapter 2.12.2 ”Adapting RTC5 Source Code
for the RTC6 PCIe Board”, page 60.
(1) Several user programs can run simultaneously.
(2) Commands having identical names with analogous
parameterization and meaning.
Example:
mark_abs(X,Y)
.