Patent Description:
In some systems, radio frequency (RF) testing may be performed in a setup that includes components such as an RF generator and a device under test (DUT). In order to emulate real-word testing of the DUT, a number of different RF waveforms may be used by the RF generator. In such testing, latency requirements related to switching between RF waveforms may be challenging, in some cases.

<CIT> discloses a radio control (RC) vehicle, e.g. drone, travelling in a predefined zone that is detected by scanning frequencies of radio frequency (RF) signals, measuring RF power in frequency bands of the scanned frequencies and generating a temporal RF signature based on the measured RF power. A frequency hopping scheme of a RC communications protocol used by the RC vehicle is determined, and a timing and an order of the frequency hopping scheme is determined to produce an RC signature of the RC vehicle. The RC vehicle may be engaged by transmitting interfering RF signals at a precise frequency and timing as the frequency hopping scheme exhibited by the RC vehicle and/or by seizing control of the RC vehicle by injecting one or more data packets to control the vehicles travel or disrupt normal communication of the RC vehicle to disable remote control between the RC vehicle and its operator.

<CIT> discloses a hardware performance testing system and method of a frequency-hopping receiving system. The hardware performance testing system comprises a standard signal source module, a to-be-tested receiver, and an upper computer processing and control module; the standard signal source module is used for providing single carriers with different signal intensities for the to-be-tested receiver or providing input signals in different modulation types for the to-be-tested receiver; the to-be-tested receiver is used for receiving and analyzing a measurement command from an upper computer, setting a state parameter of the to-be-tested receiver according to the measurement command, and passing back the input signal from the standard signal source to the upper computer after collecting and storing the same. The hardware performance testing system disclosed by the invention effectively solves the quick testing problem of the input signal to noise ratio of a frequency-hopping communication system receiver, the troubleshooting efficiency is improved, and the great convenience is provided for the quick positioning in the testing site.

In a first aspect, there is provided a controller device to perform control functionality for a system that includes a radio frequency (RF) generator and a device under test (DUT). The RF generator is configured to provide a source signal to the DUT, the DUT is configurable to switch between receive configurations of a plurality of receive configurations. The control device comprises memory and processing circuitry configured to: generate a machine learning rule for prediction of future receive configurations of the DUT, wherein the generated machine learning rule is based on historical data related to a sequence of receive configurations of the DUT at a sequence of times; receive, from the DUT, feedback that indicates a current receive configuration of the DUT; apply the machine learning rule to the current receive configuration of the DUT to determine a set of candidate future receive configurations of the DUT during a future time period; generate a set of RF waveforms that includes and RF waveform for each of the candidate future receive configurations of the DUT based on one or more RF parameters of the corresponding candidate future receive configuration of the DUT; and transfer the set of RF waveforms to the RF generator.

In another aspect, there is provided a method comprising: generating a machine learning rule for prediction of a future configuration of a device under test (DUT), wherein the generated machine learning rule is based on historical data related to a sequence of receive configurations of the DUT at a sequence of times; receiving from the DUT, feedback that indicates a current receive configuration of the DUT; applying the machine learning rule to the current receive configuration of the DUT to determine a set of candidate future receive configurations of the DUT during a future time period; generating a set of radio frequency (RF) waveforms for testing of the DUT, wherein the set of R waveforms includes an RF waveform for each of the candidate future receive configurations of the DUT; and transferring the set of RF waveforms to a RF generator.

In another aspect, there is provided a non-transitory computer-readable storage medium that stores instructions for execution by processing circuitry that, when executed by a computer, cause the computer to carry out the methods disclosed herein.

The following description and the drawings sufficiently illustrate specific embodiments to enable those skilled in the art to practice them. Other embodiments may incorporate structural, logical, electrical, process, and other changes. Portions and features of some embodiments may be included in, or substituted for, those of other embodiments. Embodiments set forth in the claims encompass all available equivalents of those claims.

<FIG> illustrates an example system <NUM> and example scenarios <NUM>, <NUM> in accordance with some embodiments. Embodiments are not limited to the name, number, type, arrangement and/or other aspects of the components shown in <FIG>. The scenarios <NUM> and <NUM> illustrate non-limiting example scenarios. It is understood that embodiments are not limited to these scenarios, as other scenarios are possible. In some embodiments, one or more of the techniques, operations, and/or methods described herein may be applicable to the scenario <NUM>, the scenario <NUM> and/or other scenarios. Although some techniques, operations and/or methods may be described herein in terms of one of the scenarios <NUM>, <NUM>, the scope of embodiments is not limited to the scenarios <NUM>, <NUM>, as one or more of those techniques, operations and/or methods may be applicable to other scenarios.

The system <NUM> may include a controller device <NUM>, a radio frequency (RF) generator <NUM>, and a device under test (DUT) <NUM>.

Example DUTs <NUM> may include, but are not limited to, a radar warning receiver (RWR), electronic intelligence (ELINT) device, a communication device, a radar device, or any device for which one or more tests are performed.

Examples of test equipment setup goals, and/or test setup performance metrics may include, but are not limited to: the number of pulses per second that can be generated, power, time accuracy, phase accuracy, a number of simulated active emitters, the number of antennas on the DUT <NUM> capable of being driven, the number of simultaneous RF signals supported, and/or other(s). The goals, test metrics, and/or performance metrics related test result measurements may include, but are not limited to: ID accuracy, response accuracy, and/or other(s). In addition, the goals, test metrics, and/or performance metrics described above may be related to the DUT <NUM>, the RF generator <NUM> and/or other component(s), although the scope of embodiments is not limited in this respect.

It is understood that some embodiments may not necessarily include all components of the system <NUM> shown in <FIG>. Some embodiments may include one or more additional components not shown in <FIG>. Some embodiments of the system <NUM> may include one or more alternate components in place of one or more of the components shown in <NUM> in <FIG>. In some embodiments, a device other than the controller device <NUM> may perform one or more of the techniques, operations and/or methods described herein, in some embodiments.

Different arrangements are possible in terms of communication between components <NUM>, <NUM>, <NUM>. Communication between the components <NUM>, <NUM>, <NUM> may include wireless connectivity and/or wired connectivity. In some embodiments, one or more of the following may be applicable: the controller device <NUM> and the RF generator <NUM> may communicate in accordance with wired connectivity; the controller device <NUM> and the DUT <NUM> may communicate in accordance with wired connectivity; the RF generator <NUM> and the DUT <NUM> may communicate in accordance with wired connectivity; and/or other.

In the scenario <NUM>, the controller device <NUM> may communicate with the RF generator <NUM>, such as over a wired connection <NUM> and/or other. The RF generator <NUM> may communicate with the DUT <NUM>, such as over a wired connection <NUM> and/or other. The DUT <NUM> may communicate with the RF Generator <NUM>, such as over a wired connection <NUM> and/or other. In some embodiments, the DUT <NUM> may receive a signal. In some embodiments, the DUT <NUM> may receive a signal over a wired RF connection. In some embodiments, the DUT <NUM> may transmit a signal over a wired RF connection based upon input from the Controller Device <NUM> and the DUT <NUM>. In some embodiments, the RF generator <NUM> may provide a source signal to the DUT <NUM>, and the DUT <NUM> may transmit a signal that is based on the source signal.

In the scenario <NUM>, the controller device <NUM> may communicate with the RF generator <NUM>, such as over a wired connection <NUM> and/or other. The DUT <NUM> may communicate with the RF Generator <NUM>, such as over a wired connection <NUM> and/or other. The RF generator <NUM> may transmit signals using the antenna <NUM>. The DUT <NUM> may receive signals using the antenna <NUM>. As indicated by <NUM>, the signal from the antenna <NUM> of the RF generator <NUM> may be any describable signal, including interference, to the DUT <NUM>. The scope of embodiments is not limited in this respect, however, as the RF generator <NUM> may transmit signals (that are not necessarily interference) wirelessly to the DUT <NUM>, in some embodiments.

Embodiments described herein may be implemented into a system using any suitably configured hardware and/or software.

<FIG> illustrates a block diagram of an example machine in accordance with some embodiments. In some embodiments, the controller device <NUM> and/or other device may include one or more components shown in <FIG>. For instance, the machine readable medium <NUM> may be used to implement one or more operations of the controller device <NUM> and/or other device, in some cases. In some embodiments, the machine <NUM> may be a device that includes the controller device <NUM>. As an example, the controller device <NUM>, an airborne device, an aircraft, a missile and/or other device may perform communication operations and/or other operations using one or more components from <FIG>. In some embodiments, the machine <NUM> or one or more components of the machine <NUM> may be configurable to transmit elements such as packets, numbers, values, fields, compressed numbers and/or other.

Any one or more of the techniques (e.g., methodologies) discussed herein may be performed on such a machine <NUM>, in some embodiments. In some embodiments, the machine <NUM> may be a controller device (such as <NUM> and/or other), RF generator (such as <NUM> and/or other), DUT (such as <NUM> and/or other), a radar warning receiver (RWR), electronic intelligence (ELINT) device, a communication device, a radar device, a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine.

As a non-limiting example, a module may include a group of components connected to (permanently, temporarily and/or semi-permanently) a circuit board, processor board and/or other medium.

In some embodiments, components of the machine <NUM> may communicate with each other via optical interfaces, waveguides and/or other circuitry configured to exchange optical signals. In some embodiments, the interconnect <NUM> may be configured to communicate optical signals and/or other signals between components of the machine <NUM>.

The machine <NUM> may include an output controller <NUM>, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).

The term "machine readable medium" may include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine <NUM> and that cause the machine <NUM> to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions. Non-limiting machine readable medium examples may include solid-state memories, and optical and magnetic media. Specific examples of machine readable media may include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; Random Access Memory (RAM); and CD-ROM and DVD-ROM disks. In some examples, machine readable media may include non-transitory machine readable media. In some examples, machine readable media may include machine readable media that is not a transitory propagating signal. In some embodiments, a machine readable medium may be a non-transitory computer-readable storage medium. In some embodiments, a machine readable medium may be a computer-readable storage medium.

The instructions <NUM> may further be transmitted or received over a communications network <NUM> using a transmission medium via the network interface device <NUM> utilizing any one of a number of transfer protocols. Example communication networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), among others. The term "transmission medium" shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine <NUM>, and includes digital or analog communications signals or other intangible medium to facilitate communication of such software.

Although the controller device <NUM> and machine <NUM> may be illustrated as having several separate functional elements, one or more of the functional elements may be combined and may be implemented by combinations of software-configured elements, such as processing elements including digital signal processors (DSPs), and/or other hardware elements. For example, some elements may comprise one or more microprocessors, DSPs, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), radio-frequency integrated circuits (RFICs) and combinations of various hardware and logic circuitry for performing at least the functions described herein. In some embodiments, the functional elements may refer to one or more processes operating on one or more processing elements. Embodiments may be implemented in one or a combination of hardware, firmware and software. Embodiments may also be implemented as instructions stored on a computer-readable storage device, which may be read and executed by at least one processor to perform the operations described herein. A computer-readable storage device may include any non-transitory mechanism for storing information in a form readable by a machine (e.g., a computer). For example, a computer-readable storage device may include read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash-memory devices, and other storage devices and media. Some embodiments may include one or more processors and may be configured with instructions stored on a computer-readable storage device.

It should be noted that in some embodiments, an apparatus of a controller device <NUM> may include various components of the example machine <NUM> shown in <FIG> and/or other component(s). Accordingly, in some cases, techniques and operations described herein that refer to the controller device <NUM> may be applicable to an apparatus of a controller device.

In accordance with some embodiments, the controller device <NUM> may perform control functionality for a system that includes a radio frequency (RF) generator and a DUT <NUM>. The RF generator <NUM> may be configured to provide a source signal to the DUT <NUM> to enable transmission by the DUT <NUM>. The DUT <NUM> may be configurable to switch between receive configurations of a plurality of receive configurations. The controller device <NUM> may generate a machine learning rule for prediction of future receive configurations of the DUT. The machine learning rule may be generated based on historical data related to a sequence of receive configurations of the DUT <NUM> at a sequence of times. The controller device <NUM> may receive, from the DUT <NUM>, feedback that indicates a current receive configuration of the DUT <NUM>. The controller device <NUM> may apply the machine learning rule to the current receive configuration of the DUT <NUM> to determine a set of candidate future receive configurations of the DUT <NUM> during a future time period. The controller device <NUM> may generate a set of RF waveforms that includes an RF waveform for each of the candidate future receive configurations of the DUT <NUM>. Each RF waveform may be generated based on one or more RF parameters of the corresponding candidate future receive configuration of the DUT <NUM>. The controller device <NUM> may transfer the set of RF waveforms to the RF generator <NUM>. These embodiments are described in more detail below.

<FIG> illustrates the operation of an example method in accordance with some embodiments. In some embodiments, the method <NUM> may be performed by the controller device <NUM>, although the scope of embodiments is not limited in this respect. The method <NUM> may be performed by other devices and/or components in some embodiments. In some embodiments, operations of the method <NUM> may be performed by one or more components, including but not limited to one or more of the components of the machine <NUM> shown in <FIG>. Those components may be included in the controller device <NUM> in some embodiments, although the scope of embodiments is not limited in this respect. In descriptions herein of techniques and/or operations, references may be made to components of the controller device <NUM>, but such references are not limiting. The techniques and/or operations may be performed by other components (such as components shown in and/or described by any of <FIG>) which may or may not necessarily be included in a controller device <NUM>, in some embodiments.

In some embodiments, a component and/or an apparatus of the component (wherein the component may be the controller device <NUM>, the RF generator <NUM>, the DUT <NUM>, and/or other) may perform one or more operations that may be the same as, similar to, reciprocal to and/or related to one or more of the operations of the method <NUM>. In some embodiments, a component and/or an apparatus of the component (wherein the component may be the controller device <NUM>, the RF generator <NUM>, the DUT <NUM>, and/or other) may perform one or more operations that may be the same as, similar to, reciprocal to and/or related to one or more operations described herein.

It is important to note that embodiments of the method <NUM> may include additional or even fewer operations or processes in comparison to what is illustrated in <FIG>. In addition, embodiments of the method <NUM> are not necessarily limited to the chronological order that is shown in <FIG>. In describing the method <NUM>, reference may be made to one or more of <FIG>, although it is understood that the method <NUM> may be practiced with any other suitable systems, interfaces and components.

It should also be noted that the method <NUM> may be applicable to an apparatus for a controller device (such as <NUM> and/or other), in some embodiments. For instance, an apparatus of the controller device <NUM> may perform one or more operations of the method <NUM> and/or other operations described herein, in some embodiments. In some embodiments, the controller device <NUM> (and/or components of the controller device <NUM>) may operate as part of a system such as a computing device, computer, switch, router, mobile device and/or other device. Embodiments are not limited to these examples, however.

In some embodiments, the controller device <NUM> may perform control functionality for a system that includes an RF generator <NUM> and a DUT <NUM>. Embodiments are not limited to this system, however, as one or more of the techniques, operations and/or methods described herein may be applicable to other systems, in some embodiments.

At operation <NUM>, the controller device <NUM> may receive data. At operation <NUM>, the controller device <NUM> may generate one or more machine learning rules. At operation <NUM>, the controller device <NUM> may receive feedback from the DUT <NUM>. At operation <NUM>, the controller device <NUM> may apply the one or more machine learning rules. At operation <NUM>, the controller device <NUM> may generate a set of RF waveforms for the set of candidate future configurations of the DUT <NUM>. At operation <NUM>, the controller device <NUM> may transfer the set of RF waveforms to an RF generator <NUM>.

In some embodiments, the RF generator <NUM> may be configured to provide a source signal to the DUT <NUM> to enable reception by the DUT <NUM>. The DUT <NUM> may be configurable to switch between receive configurations of a plurality of receive configurations. Embodiments are not limited to receive configurations, however, as one or more of the techniques, operations and/or methods described herein may be applicable to transmit configurations and/or other configurations, in some embodiments.

In some embodiments, the RF generator <NUM> may be configured to generate/provide an interference signal. The interference signal may be transmitted by the RF generator and may affect the DUT <NUM>. The DUT <NUM> may be configurable to switch between configurations of a plurality of configurations (wherein the configurations may be receive configurations, transmit configurations and/or other configurations), although the scope of embodiments is not limited in this respect.

At operation <NUM>, the controller device <NUM> may receive data. In some embodiments, the controller device <NUM> may receive historical data. In some embodiments, the controller device <NUM> may receive the historical data from the DUT <NUM>. In some embodiments, the controller device <NUM> may receive the historical data from the RF generator <NUM>. In some embodiments, the controller device <NUM> may receive the historical data from another component.

In some embodiments, the controller device <NUM> (and/or other component) may determine the historical data by collection of feedback from the DUT <NUM>. In some embodiments, the feedback may be feedback at multiple instances of time. In a non-limiting example, the feedback for each instance of time may indicate a configuration (such as a transmit configuration, receive configuration and/or other configuration) of the DUT <NUM> at the instance of time.

In some embodiments, the historical data may be related to configurations of the DUT <NUM>, such as transmit configurations, receive configurations and/or other configurations. In some embodiments, the historical data may be related to a sequence of configurations (transmit configurations, receive configurations and/or other configurations) of the DUT <NUM>. In some embodiments, the historical data may be related to a sequence of configurations (transmit configurations, receive configurations and/or other configurations) of the DUT <NUM> at a sequence of times.

It is understood that references to a transmit configuration, receive configuration and/or other configuration are not limiting. For instance, one or more techniques, operations and/or methods may be described herein in terms of transmit configurations, and it is understood that one or more of those techniques, operations and/or methods may be applicable to embodiments related to receive configurations and/or other configurations.

In some embodiments, the configurations of a plurality of configurations may be different in terms of factors such as angles, polarizations, numbers of beams, beam directions, and/or other.

In some embodiments, the transmit configurations of a plurality of transmit configurations may be different in terms of one or more of: transmit angles, transmit polarizations, numbers of transmit beams, transmit start times, transmit durations, RF modulation types, center frequencies, starting phase angles and/or other.

In some embodiments, the receive configurations of a plurality of receive configurations may be different in terms of one or more of: receive angles, receive polarizations, numbers of receive beams, frequency ranges and/or other.

In some embodiments, the historical data may be related to states of the DUT <NUM>. In some embodiments, the historical data may be related to one or more of: one or more transmit parameters of the DUT <NUM>, one or more receive parameters of the DUT <NUM>, one or more configurations of the DUT that occurred prior to a current configuration of the DUT <NUM>, one or more configurations of the DUT that occurred after the current configuration of the DUT <NUM>, and/or other.

At operation <NUM>, the controller device <NUM> may generate one or more machine learning rules. In some embodiments, the controller device <NUM> may generate the one or more machine learning rules based on one or more of: the historical data, other data, one or more parameters and/or other. In a non-limiting example, the historical data may be related to a sequence of configurations (such as transmit configurations, receive configurations and/or other) of the DUT <NUM> at a sequence of times.

In some embodiments, the controller device <NUM> may generate the one or more machine learning rules for one or more of: prediction of a future transmit configuration of the DUT <NUM>, prediction of a future receive configuration of the DUT <NUM>, prediction of a future configuration of the DUT <NUM>, prediction of future behavior of the DUT <NUM>, determination of candidate future configurations (such as transmit configurations, receive configurations and/or other configurations) of the DUT <NUM>, and/or other.

In some embodiments, the one or more machine learning rules may be related to assignment of one or more probabilities that the DUT <NUM> switches from a current configuration to one or more other configurations during a future time period. For instance, the probabilities may be related to switching, by the DUT <NUM>, from the current transmit configuration to one or more other transmit configurations during the future time period.

In some embodiments, probabilities may be assigned to one or more configurations. In a non-limiting example, the assignment of the probabilities may be based on running averages for the transmit configurations (including but not limited to running averages based on how frequently the DUT <NUM> uses the transmit configurations).

At operation <NUM>, the controller device <NUM> may receive feedback from the DUT. In some embodiments, the feedback may indicate a current configuration (such as a transmit configuration, receive configuration and/or other configuration) of the DUT <NUM>, although the scope of embodiments is not limited in this respect.

At operation <NUM>, the controller device <NUM> may apply the one or more machine learning rules. In some embodiments, the controller device <NUM> may apply the one or more machine learning rules to the current configuration of the DUT <NUM> to determine one or more elements, such as a set of candidate future configurations of the DUT <NUM> and/or other element(s). In some embodiments, the controller device <NUM> may use the one or more machine learning rules, and may use one or more inputs, including but not limited to the current configuration of the DUT <NUM>.

In some embodiments, the controller device <NUM> may apply the one or more machine learning rules to determine a set of candidate future configurations (such as transmit configurations, receive configurations and/or other configurations) of the DUT <NUM>. In some embodiments, the controller device <NUM> may apply the one or more machine learning rules to determine a set of candidate future configurations (such as transmit configurations, receive configurations and/or other configurations) of the DUT <NUM> during a future time period. In some embodiments, the controller device <NUM> may apply the one or more machine learning rules to a current configuration (such as a transmit configuration, a receive configuration and/or other configuration) of the DUT <NUM>. The current configuration may be received in the feedback of operation <NUM>, although the scope of embodiments is not limited in this respect.

In some embodiments, the candidate future configurations (such as a transmit configuration, a receive configuration and/or other configuration) may be a subset of a larger set of configurations. In a non-limiting example, the DUT <NUM> may be configurable for the configurations of a master set of possible configurations. The controller device <NUM> may determine the candidate future configurations of the DUT <NUM> to be a subset of the master set of possible configurations. In some embodiments, a size of the set of candidate future configurations of the DUT <NUM> may be configurable to be less than a size of the master set of possible configurations.

In some embodiments, the controller device <NUM> may determine, based on the one or more machine learning rules, probabilities that the DUT <NUM> switches from a current configuration (such as a transmit configuration, a receive configuration and/or other configuration) to one or more of other configurations. The controller device <NUM> may determine the set of candidate future configurations of the DUT <NUM> to include the configurations for which the corresponding probabilities are greater than a threshold.

At operation <NUM>, the controller device <NUM> may generate a set of RF waveforms for the set of candidate future configurations of the DUT <NUM>. At operation <NUM>, the controller device <NUM> may transfer the set of RF waveforms to an RF generator <NUM>.

In some embodiments, the set of RF waveforms may include an RF waveform for each of the candidate future transmit configurations of the DUT <NUM>, although the scope of embodiments is not limited in this respect. In some embodiments, each RF waveform may be based on one or more RF parameters of the corresponding candidate future configuration of the DUT <NUM>.

In some embodiments, the controller device <NUM> may generate the RF waveforms based on configurable parameters that may include one or more of the following: RF transmit power, transmit polarization, transmit direction, numbers of transmit beams, RF modulation type, waveform start time, waveform duration, waveform center frequency, waveform starting phase, and/or other.

In a non-limiting example, at least some of the transmit configurations of the plurality of transmit configurations may be based on transmission in accordance with different angles. The controller device <NUM> may generate the RF waveforms in accordance with the corresponding angles of the candidate future transmit configurations.

In another non-limiting example, at least one of the transmit configurations of the plurality of transmit configurations may be based on transmission in accordance with a polarization angle. At least one of the transmit configurations of the plurality of transmit configurations may be based on transmission in accordance with an orthogonal polarization angle. The controller device <NUM> may generate the RF waveforms in accordance with the corresponding angles of the candidate future transmit configurations.

In another non-limiting example, at least some of the transmit configurations may be based on transmission in accordance with different numbers of transmit beams. The controller device <NUM> may generate the RF waveforms in accordance with the corresponding numbers of transmit beams of the candidate future transmit configurations.

In another non-limiting example, at least some of the transmit configurations may be based on transmission in accordance with different frequency ranges. The controller device <NUM> may generate the RF waveforms in accordance with the frequency range of the candidate future transmit configurations.

In some embodiments, the controller device <NUM> may transfer the set of RF waveforms to the RF generator <NUM> to enable the RF generator <NUM> to transfer one of the RF waveforms to the DUT <NUM> during a future time period in response to a switch of configurations (transmit configurations, receive configurations and/or other configurations) by the DUT <NUM>. In a non-limiting example, the controller device <NUM> may transfer the set of RF waveforms to the RF generator <NUM> to enable switching of a signal (such as a source signal, interference signal and/or other signal) in less than <NUM> nano-seconds (nsec). Embodiments are not limited to the example number of <NUM> nsec, as other values may be used in some embodiments.

In some embodiments, the controller device <NUM> may generate one or more machine learning rules for prediction of a future configuration of a DUT <NUM>. The controller device <NUM> may generate the one or more machine learning rules based on one or more of: historical data related to a sequence of receive configurations of the DUT <NUM> at a sequence of times, other data related to the DUT <NUM> (such as configurations, states and/or other), and/or other. The controller device <NUM> may receive, from the DUT <NUM>, feedback that indicates a current receive configuration of the DUT <NUM>. The controller device <NUM> may apply the one or more machine learning rules to the current receive configuration of the DUT <NUM> to determine a set of candidate future receive configurations of the DUT <NUM> during a future time period. The controller device <NUM> may generate a set of RF waveforms for testing of the DUT <NUM>. The set of RF waveforms may include an RF waveform for each of the candidate future receive configurations of the DUT <NUM>. The controller device <NUM> may transfer the set of RF waveforms to the RF generator <NUM>.

In some embodiments, the controller device <NUM> may receive, from the DUT <NUM>, feedback that indicates configurations of the DUT <NUM> at different times. The configurations may be included in a master set of possible configurations. The controller device <NUM> may generate, based on the feedback, one or more machine learning rules to predict a future configuration of the DUT <NUM> based on a current configuration of the DUT <NUM>. The controller device <NUM> may receive, from the DUT <NUM>, an indicator of the current configuration. The controller device <NUM> may select, based on the one or more machine learning rules, a subset of configurations from the master set of possible configurations. The controller device may select the subset of configurations based on probabilities of the DUT <NUM> switching from the current configuration to each of the configurations of the subset. The controller device <NUM> may, for each of the configurations of the subset, generate an RF waveform to be used by the RF generator <NUM> to provide a source signal to the DUT <NUM> or an interference signal to the DUT <NUM>. The controller device <NUM> may generate each of the RF waveforms based on an RF parameter of the corresponding configuration. The controller device <NUM> may transfer the RF waveforms to the RF generator <NUM>.

<FIG> illustrates an example test environment in accordance with some embodiments. <FIG> illustrates an example test environment in accordance with some embodiments. <FIG> illustrates an example algorithm in accordance with some embodiments. <FIG> illustrates an example algorithm in accordance with some embodiments. It should be noted that the examples shown in <FIG> may illustrate some or all of the concepts and techniques described herein in some cases, but embodiments are not limited by the examples. For instance, embodiments are not limited by the name, number, type, size, ordering, arrangement of elements (such as devices, operations, messages and/or other elements) shown in <FIG>.

Some embodiments may not necessarily include all operations shown in <FIG>. For instance, the controller device <NUM> may perform one or more operations shown in <FIG>, but may not necessarily perform all of those operations, in some embodiments. In some embodiments, the telemetry device <NUM> may perform one or more additional operations not shown in <FIG>. For instance, the controller device <NUM> may perform one or more operations shown in <FIG>, and one or more additional operations. In some embodiments, the controller device <NUM> may perform one or more operations that are similar to one or more operations shown in <FIG>.

Referring to <FIG>, a hardware-based architecture <NUM> for selecting RF waveforms is shown. It should be noted that a number of RF generators are used in this solution <NUM>. That number may be large, in some cases.

Referring to <FIG>, in the architecture <NUM>, software may stream RF waveforms to the RF generator <NUM>. Firmware of the RF generator <NUM> may select a waveform buffer based upon a switch selection. Non-active buffers may clear out expired waveform data. The control device <NUM> may learn switch behavior of the DUT <NUM>, and may generate RF waveforms that have a high probability of being active.

In comparison to the architecture <NUM>, in some cases, one or more of the following benefits may be realized by the architecture <NUM>: a reduced amount of hardware (such as one RF generator <NUM> in comparison to multiple RF generators <NUM>); a simpler RF calibration; fewer RF parts (which may provide better signal-to-noise ratio); reduction in an amount of pattern generations through learning; and/or other(s).

In some embodiments, in an RF test environment, RF pattem/waveform generation may be changed based on a signal from the DUT <NUM> (which may be in a nano-second scale, although the scope of embodiments is not limited in this respect). In some cases, one or more of the following and/or similar may be applicable (although the scope of embodiments is not limited as such): the number of RF pattems/waveforms may be known, an RF pattem/waveform to be used may only be known shortly before it is needed (which may be in a milli-second scale, although the scope of embodiments is not limited in this respect); an RF switching sequence (such as a pattern of configurations/states) may not necessarily be known; and/or other. Aspects such as polarization and/or others may be changed by the DUT <NUM>. In a non-limiting example, in a closed-loop RF radar simulation for electronic warfare testing, the DUT <NUM> may switch its selected antenna polarization.

In some embodiments, an architecture may provide closed-loop control (in the nano-second range or otherwise) of an RF environment between a DUT <NUM> and one or more RF generators <NUM>. In some cases, complex waveforms may be created using a minimum amount of hardware and/or a reduced amount of hardware.

In some embodiments, one or more algorithms (such as artificial intelligence (AI) algorithms and/or machine learning algorithms) may be used. In some embodiments, such algorithms may increase a test RF waveform density (after a first run or otherwise) by learning RF switching patterns and/or other patterns. Upcoming possible waveforms may be streamed (by software and/or other) to the RF generator <NUM> based on the closed-loop feedback from the DUT <NUM>. In some embodiments, each of the RF waveforms that is streamed to the RF generator <NUM> may be tagged with an ID.

In some embodiments, one or more of the following may be used: two-level adaptive predication, correlation-based branch prediction, and/or other. In some embodiments, a pattern history table (which may be similar to historical data described herein, although the scope of embodiments is not limited in this respect) may be generated. Such a table may enable prediction based on a current state/configuration and past results (such as states, configurations, and/or other).

In some embodiments, a correlation limit may be established, and only predictions that exceed the correlation limit will be used (selected, sent to the RF generator <NUM>, etc.). In some cases, a more aggressive correlation limit may lead to more prediction mistakes but patterns may be found more quickly. In some cases, a running average of previous occurrences may be used, and probabilities may be generated based on that average. In some cases, if the prediction turns out to be wrong, then the RF may still be generated in real time so that the system behaves correctly.

A non-limiting example <NUM> is shown in <FIG>. If a correlation limit of <NUM>% is used, only beams #<NUM> and #<NUM> would be used. Prediction may be used to determine whether or not beam SDRs are to be generated.

In some embodiments, different types of switch history analysis may be used. In a non-limiting example, a linear technique may be used. A next time may be subtracted from a previous time in the switch history. If the result is consistent throughout the history within a certain error range, then a linear interpolation can be used.

In another non-limiting example, Fourier analysis may be used. A periodicity of the switch history may be determined using Fourier analysis, Fast Fourier analysis and/or other.

In another non-limiting example, regression analysis (including but not limited to Poisson regression) may be used. In some cases, such a technique may be used to make predictions for linear data with a broader distribution, although the scope of embodiments is not limited in this respect.

Claim 1:
A controller device (<NUM>) to perform control functionality for a system (<NUM>) that includes a radio frequency ,RF, generator (<NUM>) and a device under test ,DUT, (<NUM>), the RF generator configured to provide a source signal to the DUT, the DUT configurable to switch between receive configurations of a plurality of receive configurations, the controller device comprising: memory; and processing circuitry, configured to:
generate a machine learning rule for prediction of future receive configurations of the DUT (<NUM>), wherein the generated machine learning rule is based on historical data related to a sequence of receive configurations of the DUT at a sequence of times;
receive, from the DUT (<NUM>), feedback that indicates a current receive configuration of the DUT;
apply the machine learning rule to the current receive configuration of the DUT (<NUM>) to determine a set of candidate future receive configurations of the DUT during a future time period;
generate a set of RF waveforms that includes an RF waveform for each of the candidate future receive configurations of the DUT (<NUM>) based on one or more RF parameters of the corresponding candidate future receive configuration of the DUT; and
transfer the set of RF waveforms to the RF generator (<NUM>).