Machine Learning Based Antenna Array Validation, Prototyping, and Optimization
Machine learning-based methods, particularly neural networks, address the computational challenges in estimating angular resolution of nonlinear antenna arrays, enabling efficient design optimization and reducing physical experiments.
Patent Information
- Application Number
- JP2022504169
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-09-26
- Filing Date
- 2020-06-12
- Publication Date
- 2024-12-16
- Estimated Expiration
- 2040-06-12
AI Technical Summary
Estimating the angular resolution of antenna arrays with nonlinear phase responses is computationally complex and difficult due to the exponential increase in complexity with the number of elements, limiting design efficiency, especially in mobile or wearable devices.
Utilizing machine learning techniques, specifically neural networks, to perform feature extraction and clustering of RF signal data to reduce dimensionality and estimate angular resolution, allowing for automated antenna design workflows.
The method significantly reduces computational complexity and enables efficient identification of suboptimal antenna array partitions, facilitating improved design optimization and reduced physical prototypes.
Smart Images

Figure 0007600206000001 
Figure 0007600206000002 
Figure 0007600206000003
Abstract
Description
[Technical field]
[0001] Related Applications This application is an international application of U.S. Nonprovisional Patent Application No. 16 / 584,383, filed September 26, 2019, and claims the benefit of U.S. Provisional Patent Application No. 62 / 878,232, filed July 24, 2019, the entire contents of which are incorporated by reference. [Background technology]
[0002] An antenna array may include multiple antenna elements having a particular geometric shape and size. In practice, antenna design parameters may include the number, type and geometric characteristics (e.g., shape, size, area) of the antenna elements as well as the amount of spacing between the antenna elements.
[0003] The present disclosure is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings. [Brief description of the drawings]
[0004] [Figure 1] FIG. 2 is a diagram showing the phase response of an ideal antenna in the spatial domain. [Diagram 2] FIG. 2 is a diagram illustrating the phase response of an exemplary area-optimized array antenna embodiment. [Diagram 3] 1 is a diagram illustrating the dependence of radio frequency (RF) signal phase on angle of arrival measured by a first element and a second element of an exemplary antenna array. [Figure 4] FIG. 2 illustrates a two-dimensional projection of a collection of multi-dimensional data points representing input RF signal measurements. [Diagram 5] FIG. 1 is a diagram illustrating the structure of an exemplary neural network. [Figure 6] FIG. 1 illustrates a simplified example automated workflow for antenna design. [Figure 7] FIG. 2 is a diagram illustrating the phase response of an exemplary prototype antenna array. [Figure 8]1 is a block diagram of an example system for implementing the methods described herein. [Figure 9] 4 is a flow diagram of an exemplary method for estimating an angular resolution value of an antenna array. [Figure 10] 1 is a flow diagram of an exemplary method for automating an antenna design workflow based on estimating an angular resolution value of an antenna array. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0005] The embodiments described herein relate to systems and methods that use machine learning models for validation, prototyping and optimization of antenna arrays.
[0006] Antenna design parameters may include the number, type, and geometric characteristics (e.g., shape, size, area) of antenna elements as well as the amount of spacing between antenna elements. Thus, in one example, an antenna design goal may include optimizing a particular operational characteristic of the antenna, such as the resolution of the angle-of-arrival estimation (also referred to herein as angular resolution), while satisfying physical design constraints, which may be specified by ranges or maximum values of particular antenna design parameters (e.g., the number, type, and geometric characteristics of antenna elements, and / or the spacing between antenna elements). In another example, an antenna design goal may include optimizing a particular physical design parameter (e.g., the number, type, and geometric characteristics of antenna elements, and / or the spacing between antenna elements) while satisfying operational constraints (e.g., providing at least a desired angular resolution). Additional constraints may be applied to the design process itself, such as, for example, reducing the number of physical prototypes and physical experiments included in the design process.
[0007] Unlike various common implementations that analyze antenna gain distribution over the spatial and / or frequency domains, the system and method of the present disclosure analyzes the phase response of a multi-element antenna to estimate its angular resolution. Figure 1 illustrates the phase response of an ideal antenna in the spatial domain (X-axis corresponds to the number of antenna elements, while Y-axis corresponds to the phase of the received RF signal). Each plot 110A-110Z corresponds to a particular value of the angle-of-arrival (AoA) of the received RF signal (denoted as θ in Figure 1).
[0008] As can be seen from FIG. 1, the angular resolution of an antenna exhibiting a plotted linear phase response is believed to depend only on the spatial domain characteristics (i.e., the number of antenna elements). However, antenna design requirements may limit the physical size of the antenna, e.g., for a mobile or wearable device. Thus, the phase response of an exemplary area-optimized antenna may be significantly nonlinear, as shown in plots 210A-210Z of FIG.
[0009] The task of estimating the angular resolution of an antenna array that exhibits a substantially nonlinear phase response can be extremely challenging, at least due to its computational complexity. Therefore, the systems and methods described herein rely on machine learning techniques to build and train efficient models for estimating the angular resolution of antenna arrays.
[0010] The raw data utilized for estimating the angular resolution may include magnitude and phase values of multiple RF signals measured by multiple antenna elements in one or more RF channels. Each input data point is thus represented by a vector in a 2×N dimensional hyperspace, where N is the number of antenna elements and the dimensions represent the magnitude and phase values measured by each antenna element. In some implementations, the magnitude and phase values of the RF signals may be generated by an antenna simulation model based on specified antenna design parameters.
[0011] The disclosed systems and methods use a machine learning model that performs feature extraction to reduce the dimensionality of input data and then performs clustering of the extracted features in the reduced dimensional space to estimate the angular resolution of a prototype antenna array. Once the angular resolution of the prototype antenna array is identified, the system can formulate a design optimization feedback to improve suboptimal sections of the antenna array response, as described in more detail herein below.
[0012] Various aspects of the above methods and systems are described herein by way of example, rather than limitation. The methods described herein may be implemented by hardware (e.g., general-purpose and / or special-purpose processing devices, and / or other devices and associated circuitry), software (e.g., instructions executable by a processing device), or a combination thereof.
[0013] As described herein above, the systems and methods of the present disclosure analyze the phase response of a multi-element antenna to estimate its angular resolution. FIG. 3 shows plots 310A-310N and 320A-320N of RF signal phase measured by a first element and a second element of an exemplary antenna array, respectively (the X-axis corresponds to the AoA of the received RF signal, while the Y-axis corresponds to the phase of the received RF signal). Each plot 310A-310N and 320A-320N corresponds to a particular RF channel. As can be seen from FIG. 3, for some values of AoA, the phase response may not be sufficiently distinct to provide the required angular resolution.
[0014] Since the phase response of an antenna is substantially nonlinear, the computational complexity of a direct analysis of the phase response would grow exponentially with the number of antenna array elements. Hence, machine learning models can be used to perform feature extraction to reduce the dimensionality of the input data, thereby significantly reducing the computational complexity of the task to be solved.
[0015] The machine learning model can then utilize the extracted features (i.e., a representation of the input data in a reduced dimensional space) to cluster the data points representing the phase responses into multiple clusters, where each cluster corresponds to a particular value of AoA. As illustrated diagrammatically in FIG. 4, which depicts a two-dimensional projection of a collection of multi-dimensional data points representing the input data, the data points are grouped into multiple overlapping clusters, where each cluster corresponds to a particular value of AoA (labeled θ1-θ5 in FIG. 4) of the received RF signal.
[0016] In some implementations, the model used to perform feature extraction and clustering can be implemented by a neural network, such as a convolutional neural network (CNN) or a recurrent neural network (RNN). A neural network is a computational model that implements a large number of connected nodes called "artificial neurons", whereby each artificial neuron processes one or more input signals (including bias signals) and sends an output signal to one or more neighboring artificial neurons. The output of an artificial neuron can be calculated by applying its activation function to a linear combination of its inputs. A neural network can be trained by processing examples ("training data sets") to perform feature extraction, regression and / or classification tasks, generally without being programmed with any task-specific rules, as described in more detail herein below.
[0017] As shown diagrammatically in FIG. 5, the neural network used by the disclosed system and method can be represented by a multilayer perceptron (MLP) 500, whose artificial neurons are grouped into multiple layers including an input layer 510, one or more hidden layers 520A-520L, and an output layer 530. The input layer 510 includes one or more neurons 540A-540N, which are connected to one or more neurons 550A-550K of a first hidden layer 520A. The first hidden layer neurons 550A-550K are themselves connected to one or more neurons 560A-560M of a second hidden layer 520L. The second hidden layer neurons 560A-560M are themselves connected to one or more neurons 570A-570Z of an output layer 530. At least some of the nodes of the artificial neural network 500 may utilize non-linear activation functions, while the remaining nodes (e.g., nodes in the output layer) may utilize linear activation functions. Although FIG. 5 illustrates a single hidden layer 550 diagrammatically, in various implementations of the systems and methods of the present disclosure, the number of hidden layers may vary. In some embodiments, the number of hidden layers is a hyperparameter of the model, i.e., a parameter whose value is specified before the training process. Other hyperparameters of the model may include the number of nodes in each layer, activation function type, etc.
[0018] Each edge in Figure 5 represents a connection for transmitting a signal from one artificial neuron to another, in a manner similar to how synapses work in the human brain. Edge weights that boost or attenuate the signal transmitted through each connection are defined in a network training stage based on a training data set that includes multiple labeled inputs (i.e., inputs with known classifications).
[0019] The neural network training procedure can begin with initializing all edge weights and neuron bias values to random or predefined values. The disclosed system and method utilizes an unsupervised training procedure to train neural networks that perform feature extraction and clustering tasks. Unlike supervised training, which requires a training dataset labeled with known output values, unsupervised training utilizes an unlabeled training dataset.
[0020] In some implementations, a clustering technique (such as k-means clustering) is used to assign samples in the training set data to one of k clusters, thereby minimizing the average distance between the samples and the cluster centroids. Once the clustering iterations are completed, a predefined quality requirement (e.g., cluster density) is calculated and compared to a desired value, and the error is propagated back to the previous layer of the neural network, where weights and bias values are adjusted to minimize a predefined loss function (e.g., the difference between the observed cluster density and the desired cluster density). This process can be repeated until the quality requirement meets a predefined condition (e.g., falls below a predefined threshold or exceeds a predefined threshold). In various other implementations, other clustering techniques can be used.
[0021] In some implementations, the feature extraction, clustering and regression operations can be performed by the same neural network, where a first subset of layers performs feature extraction and a second subset of layers performs clustering, while the remaining layers perform regression tasks. In other implementations, multiple neural networks trained separately can be used to perform each of the feature extraction, clustering and regression tasks.
[0022] Referring again to FIG. 4, the machine learning model can utilize the extracted features (i.e., a representation of the input data in a reduced-dimensional space) to cluster the data points representing the phase response into multiple clusters, such that each cluster corresponds to a specific value of AoA. The angular resolution of the antenna array can thus be visualized by the degree of overlap of the clusters, i.e., a relatively small overlap or no overlap indicates that the AoA values of points belonging to adjacent clusters are distinguishable and the angular resolution is at least the difference between the AoA values of the cluster centroids, whereas a large overlap indicates that the angular resolution cannot be accurately estimated based on the available input data. Thus, the angular resolution of the antenna array can be estimated from the observed RF signal parameter values by a neural network performing a regression task.
[0023] Supervised training of a neural network involves sequential processing of labeled data items of a training data set (i.e., sequential processing of multiple vectors of RF signal power levels such that each vector containing RF signal magnitude and phase values measured by multiple antenna elements at a given frequency channel is labeled with a corresponding AoA value, and groups of vectors are labeled with corresponding angular resolution values). The observed output of the neural network is compared to a desired output specified by the label associated with the vector being processed, and the error is propagated back to the previous layer of the neural network, where the weights and bias values are adjusted accordingly. This process can be repeated until the output error falls below a predetermined threshold.
[0024] Thus, the machine learning model may receive input data including magnitude and phase values of multiple RF signals (measured by multiple antenna elements in one or more RF channels or generated by an antenna simulation model based on specified antenna design parameters), perform feature extraction to reduce the dimensionality of the input data, and perform clustering of the extracted feature values to estimate the angular resolution of the antenna array. Although the examples described herein refer to neural networks, other machine learning techniques may be used in accordance with the systems or methods of the present disclosure.
[0025] The machine learning models described herein can be used in an automated antenna design workflow by estimating the angular resolution of prototype antenna arrays, identifying sub-optimal sections of the antenna array response, and providing feedback to antenna designers.
[0026] An example of an automated workflow for antenna design is depicted in Figure 6. The workflow 600 can begin with an antenna design module 610 that feeds an initial set of antenna design parameters to an antenna array simulation model 620. In some implementations, the antenna design module 610 can be implemented by a computer-aided design (CAD) system that can be fully automated and / or managed by a human designer. The antenna design parameters can include the number, type and geometric characteristics (e.g., shape, size, area) of the antenna elements as well as the amount of spacing between the antenna elements.
[0027] The antenna array simulation model 620 generates raw data utilized for estimating the angular resolution, which may include magnitude and phase values of multiple RF signals measured by multiple antenna elements in one or more RF channels. Each input data point is thus represented by a vector in a 2×N dimensional hyperspace, where N is the number of antenna elements and the dimensions represent the magnitude and phase values measured by each antenna element. Notably, the antenna array model 620 is optional, and in some implementations physical measurements of received RF signals can instead be performed by physical antenna prototypes.
[0028] The magnitude and phase values of the RF signal are then provided to a machine learning model 630, which performs a feature extraction operation 632 to reduce the dimensionality of the input data. The machine learning model 630 can then utilize the extracted features (i.e., a representation of the input data in a reduced dimensional space) to perform a clustering operation 634 to group the data points into multiple clusters, such that each cluster corresponds to a particular value of AoA. The machine learning model 630 can then perform a regression operation 636 to estimate the angular resolution 640 and / or the AoA value 650, as described in further detail herein above.
[0029] The processing device implementing workflow 600 may further identify one or more suboptimal sections of the antenna array response and / or one or more satisfying sections of the antenna array response at block 660. The suboptimal sections of the antenna array response may include sections corresponding to clusters of substantially overlapping features that adversely affect angular resolution based on a selected overlap criterion. The satisfying sections of the antenna array response may include sections corresponding to clusters of features that have no intersection or that overlap slightly.
[0030] FIG. 7 shows a schematic diagram of the phase response of an exemplary prototype antenna. Each plot 710A, 710B, 710N corresponds to a particular AoA value of the received RF signal. As can be seen from FIG. 7, within regions 720A and 720B, the phase response may not be sufficiently distinguishable to provide the required angular resolution. Thus, referring back to FIG. 6, a processing device implementing workflow 600 may further identify antenna array elements corresponding to the identified suboptimal and / or satisfying sections of the antenna array response. The processing device may further identify design parameters (e.g., sizes) of the antenna array elements that may have contributed to the suboptimal antenna response.
[0031] Output data including the identified sub-optimal and / or demanding sections 660 of the angular resolution 640, AoA values 650, and antenna array response can be fed back to the antenna design module 610, which can initiate a new iteration of the workflow 600 by modifying values of one or more antenna design parameters and providing the modified antenna design parameters to the antenna model 620.
[0032] 8 is a block diagram of a system implementing the methods described herein. The system 800 can include a processing unit 806, which can optionally include a front-end circuit 808 coupled to the antenna array 804. The front-end circuit 808 can include a transceiver 812 and an analog-to-digital converter (ADC) 814. The transceiver 812 coupled to the antenna array 804 can transmit and receive RF signals via the antenna array 804. The processing unit 806 can implement the angular resolution estimation tool 120 as described herein. The angular resolution estimation tool 120 can implement one or more machine learning models (such as neural networks) that perform a feature extraction operation 816 to reduce the dimensionality of input data, a clustering operation 818 to classify data points into multiple clusters corresponding to different AoA values, and a regression operation 820 to estimate the angular resolution 821 and / or the AoA value 823, as described in further detail herein above.
[0033] The processing device may include one or more application processors, one or more host processors, one or more microcontrollers, and / or other processing components. In some embodiments, the system 800 may be implemented as a system-on-chip (SoC) including a transceiver and a processor that processes digital values representative of RF signals received or transmitted by the transceiver. The transceiver and the processor may be provided on a common carrier substrate or may be implemented in separate integrated circuits. The system 800 may alternatively be implemented as a mobile or wearable device (such as a smartphone or smartwatch). The system 800 may alternatively be implemented as a desktop computer, a portable computer, or a server.
[0034] In some implementations, the processing unit may receive a plurality of values of magnitude and phase of a radio frequency (RF) signal for each antenna element of a plurality of antenna elements included by the antenna array. The processing unit 806 may then perform a feature extraction operation to convert the plurality of magnitude and phase values into a plurality of data points in a reduced dimensional space using a machine learning model. The processing unit 806 may then classify the plurality of data points into a plurality of clusters using the machine learning model. The processing unit 806 may then calculate an angular resolution value for the antenna array and / or an AoA value for each cluster based on the plurality of clustered data points, as described in further detail herein above.
[0035] FIG. 9 is a flow diagram of an exemplary method for estimating an angular resolution value of an antenna array. Method 900 and / or each of its individual functions, routines, subroutines or operations may be performed by processing logic including hardware (circuitry, dedicated logic, etc.), software (such as those executed on a general-purpose computing system or a dedicated machine), firmware (embedded software), or any combination thereof. Two or more functions, routines, subroutines or operations of method 900 may be performed in parallel or in an order that may differ from the order described below. In a particular implementation, method 900 may be performed by a single processing thread. Method 900 may alternatively be performed by two or more processing threads, each thread performing one or more individual functions, routines, subroutines or operations of the method. In an illustrative example, the processing threads implementing method 900 may be synchronized (e.g., using semaphores, critical sections and / or other thread synchronization mechanisms). Alternatively, the processing threads implementing method 900 may be executed asynchronously with respect to each other. In one embodiment, the operations of method 900 may be performed by the processing unit 806 of the example system 800 of FIG.
[0036] In block 910, a processing device implementing the method may receive multiple values of magnitude and phase of a radio frequency (RF) signal for each antenna element of a plurality of antenna elements included by the antenna array, as described in further detail herein above.
[0037] At block 920, a processing unit may perform a feature extraction operation using a machine learning model to convert the magnitude and phase values into data points in a reduced dimensional space. In some implementations, as described in further detail herein above, the model used to perform the feature extraction and clustering may be implemented by a neural network, such as a convolutional neural network (CNN), a recurrent neural network (RNN), or a multi-layer perceptron (MLP).
[0038] At block 930, the processing unit may classify the data points into clusters, as described in further detail herein above.
[0039] At block 940, the processing unit may calculate an angular resolution value of the antenna array based on the clustered data points. The angular resolution of the antenna array may be characterized by cluster overlap, where a relatively small overlap or no overlap indicates that the AoA values of points belonging to adjacent clusters are distinguishable and the angular resolution is at least the difference between the AoA values of the cluster centroids, as described in more detail herein above, whereas a large overlap would indicate that the angular resolution cannot be accurately estimated based on the available input data.
[0040] A regression operation may be optionally performed by the processing unit to estimate an AoA value for each cluster from the plurality of clustered data points in block 950. In some implementations, the same model may be used to perform the feature extraction of block 920, the clustering of block 930, and the regression operation of block 950. Alternatively, multiple separate models may be used to perform each task, as described in further detail herein above.
[0041] At block 960, the processing device may output the calculated angular resolution and / or AoA values (e.g., by displaying the calculated values and / or transmitting the calculated values to one or more recipients over one or more communications networks) and the method may end.
[0042] FIG. 10 is a flow diagram of an exemplary method for automating an antenna design workflow based on estimating an angular resolution value of an antenna array. Method 1000 and / or each of its individual functions, routines, subroutines or operations may be performed by processing logic including hardware (circuitry, dedicated logic, etc.), software (such as those executed on a general-purpose computing system or a dedicated machine), firmware (embedded software), or any combination thereof. Two or more functions, routines, subroutines or operations of method 1000 may be performed in parallel or in an order that may differ from the order described below. In a particular implementation, method 1000 may be performed by a single processing thread. Method 1000 may alternatively be performed by two or more processing threads, each thread performing one or more individual functions, routines, subroutines or operations of the method. In an illustrative example, the processing threads implementing method 1000 may be synchronized (e.g., using semaphores, critical sections and / or other thread synchronization mechanisms). Alternatively, the processing threads implementing method 1000 may be executed asynchronously with respect to each other. In one embodiment, the operations of method 1000 may be performed by the processing unit 806 of the example system 800 of FIG.
[0043] At block 1010, multiple values of design parameters of an antenna array having multiple antenna elements may be received by a processing device implementing the method. The antenna design parameters may include the number, type and geometric characteristics (e.g., shape, size, area) of the antenna elements as well as the amount of spacing between the antenna elements, as described in further detail herein above.
[0044] In block 1020, an antenna simulation model can be utilized by the processing unit to calculate multiple values of magnitude and phase of the RF signal received by each antenna element of the antenna array, characterized by specified design parameters, as described in further detail herein above.
[0045] At block 1030, a feature extraction operation may be performed by a processing unit using a machine learning model to convert the magnitude and phase values into data points in a reduced dimensional space. In some implementations, as described in further detail herein above, the model used to perform the feature extraction and clustering may be implemented by a neural network, such as a convolutional neural network (CNN), a recurrent neural network (RNN), or a multi-layer perceptron (MLP).
[0046] At block 1040, the processing unit may classify the data points into clusters, as described in further detail herein above.
[0047] In block 1050, the processing unit may use the machine learning model to perform a regression operation to estimate the angular resolution value of the antenna array from the clustered data points. The angular resolution of the antenna array may be characterized by cluster overlap, i.e., a relatively small overlap or no overlap indicates that the AoA values of points belonging to adjacent clusters are distinguishable and the angular resolution is at least the difference between the AoA values of the cluster centroids, whereas a large overlap indicates that the angular resolution cannot be accurately estimated based on the available input data. In some implementations, the same model may be used to perform the feature extraction of block 1030, the clustering of block 1040, and the regression operation of block 1050. Alternatively, multiple separate models may be used to perform each task, as described in more detail herein above.
[0048] In response to determining in block 1060 that the angular resolution value is less than or equal to a predetermined threshold, in block 1070, the processing device may output the calculated angular resolution value of the antenna array (e.g., by displaying the calculated angular resolution value and / or transmitting the calculated angular resolution value to one or more recipients via one or more communication networks) and the method may end.
[0049] Otherwise, i.e., in response to determining in block 1060 that the angular resolution value is greater than the predetermined threshold, in block 1080, the processing device may identify design parameters of the antenna array elements and / or antenna array that caused the angular resolution value to exceed the predetermined threshold. In some implementations, the processing device may identify one or more suboptimal sections of the antenna array response as sections in which the phase response is not sufficiently distinct to provide the required angular resolution. The processing device may further identify antenna array elements that correspond to the identified suboptimal sections of the antenna array response. The processing device may further identify design parameters (e.g., magnitudes) of the antenna array elements that may have caused the suboptimal antenna response, as described in more detail herein above.
[0050] At block 1090, the processing device may notify the antenna design module of the calculated angular resolution value and antenna elements and / or antenna design parameters that may have adversely affected the angular resolution (e.g., by displaying a notification and / or transmitting a notification to one or more recipients over one or more communication networks). Taking corrective action (e.g., modifying the identified antenna design parameters), the antenna designer or antenna design CAD module may resubmit the modified antenna design parameters to input block 1010 of method 1000.
[0051] The embodiments described herein may be implemented by an electronic system including a processing device that may perform the same or similar functions as described with respect to the figures above, or vice versa. In another embodiment, the processing device may be a microprocessor or a microcontroller. The angular resolution estimation tool 120 may be implemented as a microcontroller or firmware running on a microprocessor. The microcontroller may report the estimations described herein to an application processor. The electronic system may include a host processor for a computer system that utilizes a microcontroller to provide the estimations described herein. The host processor may include one or more processing devices, memory, and other hardware or software components that perform operations for the electronic system.
[0052] The processing unit may include analog and / or digital general purpose input / output ("GPIO") ports. The GPIO ports may be programmable. The GPIO ports may be connected to a programmable interconnect and logic ("PIL"), which serves as an interconnect between the GPIO ports and the digital block array of the processing unit. The processing unit may include analog blocks that are programmable and reprogrammable in some cases to implement various analog functions. The processing unit may also include a digital block array. In one embodiment, the digital block array can be configured to implement various digital logic circuits (e.g., DACs, digital filters, or digital control systems) using configurable user modules ("UM"). The digital block array may be connected to a system bus. The processing unit may also include memory devices such as random access memory (RAM) and program flash. The RAM may be static RAM (SRAM) and the program flash may be a non-volatile storage device that can be used to store firmware (e.g., control algorithms executable by the processor to implement the operations described herein). The processing device may also include a memory controller unit ("MCU") connected to the memory and the processor. The processor may be a processing element (e.g., a processor core) configured to execute instructions or perform operations. The processor may include other processing elements, as will be understood by those skilled in the art having the benefit of this disclosure. It should also be noted that the memory may be internal or external to the processing device. If the memory is internal, the memory can be connected to a processing element, such as a processing core.If the memory is external to the processing unit, then the processing unit is connected to another device in which the memory is located, as will be understood by those skilled in the art having the benefit of this disclosure.
[0053] In one embodiment, the processing device further includes processing logic. Some or all of the operations of the processing logic can be implemented in firmware, hardware, or software, or some combination thereof. The processing logic can receive signals from the antenna array as described herein. The processing device may also include an analog block array (e.g., a field programmable analog array). The analog block array can also be connected to the system bus. In one embodiment, the analog block array can be configured to implement various analog circuits (e.g., ADCs or analog filters) using configurable UMs. The analog block array can also be connected to a GPIO port. The processing device may include an internal oscillator / clock and communication block ("COM"). In another embodiment, the processing device includes a spread spectrum clock. The oscillator / clock block provides clock signals to one or more components of the processing device. The communication block can be used to communicate with external components, such as a host processor (also referred to as an application processor), via application interface ("I / F") lines.
[0054] The processing device may be provided on a common carrier substrate, such as, for example, an integrated circuit ("IC"), a die substrate, or a multi-chip module substrate. Alternatively, the components of the processing device may be one or more separate integrated circuits and / or discrete components. In one exemplary embodiment, the processing device is a Programmable System on a Chip (PSoC®) processing device developed by Cypress Semiconductor Corporation of San Jose, Calif. The processing device may alternatively be one or more other processing devices known to those skilled in the art, such as a microprocessor or a central processing unit, a controller, a special purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or the like.
[0055] It should also be noted that the embodiments described herein are not limited to configurations having a processing device connected to an application processor, but may include systems that measure RF signals and transmit raw data to a host computer where the raw data is analyzed by an application, and in fact the processing performed by the processing device may be performed in the application processor.
[0056] The angular resolution estimation tool 120 may be incorporated in the processor IC or alternatively in another IC. Alternatively, a description of the angular resolution estimation tool 120 may be generated and compiled for incorporation into another integrated circuit. For example, a behavioral level code describing parameters for the angular resolution estimation tool 120, or a portion thereof, may be generated using a hardware description language such as VHDL or Verilog and stored on a machine-accessible medium (e.g., CD-ROM, hard disk, floppy disk, etc.). Additionally, the behavioral level code may be compiled into register transfer level ("RTL") code, a netlist, or even a circuit layout and stored on a machine-accessible medium. The behavioral level code, RTL code, netlist, and circuit layout may represent different levels of abstraction describing the angular resolution estimation tool 120. It should be noted that the components of an electronic system may include all, some, or none of the components described above.
[0057] In one embodiment, the electronic system may be used in a tablet computer. The electronic device may alternatively be used in other applications, such as notebook computers, mobile phones, personal data assistants (PDAs), keyboards, televisions, remote controls, monitors, handheld multimedia devices, handheld media (audio and / or video) players, handheld gaming devices, signature entry devices for point of sales (POS) transactions, eBook readers, medical devices, etc., warehouse tracking devices, such as scanners used by shipping companies, automotive devices, such as car keys and electronic devices in vehicles, global position systems (GPS), or control panels, etc. Certain embodiments may be implemented as a computer program product, which may include instructions stored on a machine-readable medium. These instructions may be used to program a general-purpose or special-purpose processor to perform the described operations. A machine-readable medium includes any mechanism for storing or transmitting information in a form (e.g., software, processing applications) readable by a machine (e.g., a computer). Machine-readable media may include, but are not limited to, magnetic storage media (e.g., floppy disks), optical storage media (e.g., CD-ROMs), magneto-optical storage media, read-only memory (ROM), random-access memory (RAM), erasable programmable memory (e.g., EPROM and EEPROM), flash memory, or another type of medium suitable for storing electronic instructions.
[0058] Additionally, some embodiments may be practiced in a distributed computing environment in which the machine-readable medium is stored and / or executed by two or more computer systems. Additionally, information transferred between computer systems may be pulled or pushed across the communications medium connecting the computer systems.
[0059] Although the operations of the methods herein are shown and described in a particular order, the order of the operations of each method can be changed, such that certain operations can be performed in a reverse order, or certain operations can be performed, at least in part, in parallel with other operations. In alternative embodiments, different operation instructions or sub-operations can be intermittent and / or alternating. Terms such as "first," "second," "third," "fourth," etc., as used herein are intended as labels to distinguish between different elements and are not necessarily meant to indicate an order according to their numbering. The term "connected to" as used herein can mean directly connected or indirectly connected through one or more intermediate components. Any signals provided through the various buses described herein may be time multiplexed with other signals and provided through one or more common on-die buses. Additionally, the interconnects and interfaces between circuit components or blocks can be viewed as buses or as single signal lines. Each bus may alternatively be one or more single signal lines, and each single signal line may alternatively be a bus.
[0060] In the above description, numerous specific details are set forth, such as examples of specific systems, components, methods, and the like, to provide an understanding of multiple embodiments of the present invention. However, it will be apparent to one of ordinary skill in the art that at least some embodiments can be practiced without these specific details. In other cases, well-known components or methods have not been described in detail or have been shown in simplified block diagram form to avoid unnecessarily obscuring the embodiments of the present invention. Thus, the specific details described are merely exemplary. A particular implementation may differ from these exemplary details and still be considered to be within the scope of the embodiments of the present invention.
[0061] Embodiments of the claimed subject matter include, but are not limited to, various operations described herein that may be performed by hardware components, software, firmware, or any combination thereof.
[0062] In the above description, numerous specific details are described, such as examples of specific systems, components, methods, etc., to provide an understanding of multiple embodiments of the claimed subject matter. However, it will be apparent to those skilled in the art that at least some embodiments of the present disclosure can be practiced without these specific details. In other cases, well-known components or methods have not been described in detail or have been shown in simple block diagram form. Thus, the specific details described are merely exemplary. A particular implementation may differ from these example details and still be considered to be within the scope of the claimed subject matter.
Claims
1. receiving, by a processing device, for each antenna element of a plurality of antenna elements included by an antenna array, a plurality of values of radio frequency (RF) signal magnitude and phase measured by said plurality of antenna elements in one or more RF channels; performing a feature extraction operation by said processing device utilizing a machine learning model to transform said magnitude and phase values into data points in a reduced dimensional space; clustering, by the processing device utilizing the machine learning model, the plurality of data points into a plurality of clusters; calculating, by the processing unit, an angular resolution value of the antenna array based on an overlap of a plurality of the clusters; outputting, by the processing device, the angular resolution value; having the dimensions represent a plurality of the values of magnitude and phase measured by each antenna element; method.
2. The method comprises: receiving a plurality of values of design parameters of the antenna array; calculating a plurality of said values of magnitude and phase of the RF signal for each antenna element of a plurality of said antenna elements by applying a simulation model to a plurality of said values of design parameters; and The design parameters include the number, type and geometric characteristics of the antenna elements and the spacing between the antenna elements, and are set by physical design constraints. The method of claim 1.
3. The step of calculating the angular resolution value comprises: and performing a regression operation to estimate the angular resolution value from a plurality of the data points by utilizing the machine learning model. The method of claim 1.
4. The method further comprises performing a regression operation to calculate, for each cluster of the plurality of clusters, a corresponding value of Angle of Arrival (AoA) by utilizing the machine learning model. The method of claim 1.
5. The method comprises: identifying a subset of overlapping clusters of a plurality of said clusters; identifying, based on the subset of overlapping clusters, a physical parameter of the antenna array that caused the subset of overlapping clusters to overlap; Further comprising The method of claim 1.
6. The machine learning model is represented by a neural network. The method of claim 1.
7. The method further comprises performing an unsupervised training procedure to train the neural network to perform the feature extraction operation. The method of claim 6.
8. The method further comprises performing an unsupervised training procedure to train the neural network to perform the clustering step. The method of claim 6.
9. The method further comprises performing a supervised training procedure to train the neural network to perform a regression operation to estimate the angular resolution value from a plurality of the data points. The method of claim 6.
10. receiving, by a processor, a plurality of values of design parameters for an antenna array having a plurality of antenna elements; calculating, by the processing device applying a simulation model to the plurality of values of design parameters, a plurality of values of RF signal magnitude and phase for each antenna element of a plurality of the antenna elements; calculating, by the processing device utilizing a machine learning model, an angular resolution value of the antenna array based on an overlap of a plurality of clusters; in response to determining that the angular resolution value is less than or equal to a predetermined threshold, outputting the angular resolution value of the antenna array; having The design parameters include the number, type and geometric characteristics of the antenna elements and the spacing between the antenna elements, and are set by physical design constraints. method.
11. In response to determining that the angular resolution value exceeds a predetermined threshold, the method further comprises identifying design parameters of the antenna array that caused the angular resolution value to exceed the predetermined threshold. The method of claim 10.
12. The step of calculating the angular resolution value comprises: performing a feature extraction operation to transform said magnitude and phase values into a plurality of data points in a reduced dimensional space using a machine learning model; clustering the data points into a plurality of clusters using the machine learning model; performing a regression operation to estimate the angular resolution value from a plurality of the clusters using the machine learning model; and the dimensions represent a plurality of the values of magnitude and phase measured by each antenna element; The method of claim 10.
13. The method further comprises performing an unsupervised training procedure to train the machine learning model to perform the feature extraction operation.
13. The method of claim 12.
14. The method further comprises performing an unsupervised training procedure to train the machine learning model to perform the clustering step.
13. The method of claim 12.
15. The method further comprises performing a supervised training procedure to train the machine learning model to perform a regression operation to estimate the angular resolution value from a plurality of the clusters.
13. The method of claim 12.
16. The method further comprises performing a regression operation to calculate, for each cluster of the plurality of clusters, a corresponding value of Angle of Arrival (AoA) by utilizing the machine learning model.
13. The method of claim 12.
17. The machine learning model is represented by a neural network. The method of claim 10.
18. An apparatus, comprising: a transceiver configured to connect an antenna having a plurality of antenna elements, the transceiver configured to receive, for each antenna element of the plurality of antenna elements, a plurality of values of magnitude and phase of a radio frequency (RF) signal measured by the plurality of antenna elements in one or more RF channels; a processor connected to the transceiver; having The processor, performing a feature extraction operation to transform said magnitude and phase values into a plurality of data points in a reduced dimensional space using a machine learning model; classifying the data points into a plurality of clusters by a processing device utilizing the machine learning model; performing a regression operation to calculate, for each cluster of the plurality of clusters, a corresponding value of Angle of Arrival (AoA) by utilizing the machine learning model; It is structured as follows: the dimensions represent a plurality of the values of magnitude and phase measured by each antenna element; Device.
19. The machine learning model is represented by a neural network.
20. The apparatus of claim 18.
Citation Information
Patent Citations
Arrival angle estimation algorithm research based on machine learning and application thereof
CN108828505A
Autonomous mobile robot
JP2006236132A
Radar system, radar signal processing device, vehicle travel control device and method, and computer program
JP2016075558A
Radar Angular Ambiguity Resolution
US20190187268A1
