Systems and methods for telemetry interactive permutation matrix

The Telemetry Interactive Permutation Matrix (TIPM) system addresses the inefficiencies in test data qualification for multiplexed telemetry systems by using an Asynchronous Telemetry Bandwidth Simulator (ATBS) to quickly analyze permutations, enhancing design verification efficiency and accuracy.

JP2025162968APending Publication Date: 2025-10-28THE BOEING CO
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025021224
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-16
Filing Date
2025-02-13
Publication Date
2025-10-28

AI Technical Summary

Technical Problem

The process of test data qualification for multiplexed telemetry systems is resource-intensive, requiring significant planning, effort, and time due to the numerous permutations of data rates, formats, and frame sizes, which are difficult to test thoroughly under aggressive schedules.

Method used

A Telemetry Interactive Permutation Matrix (TIPM) system that utilizes an Asynchronous Telemetry Bandwidth Simulator (ATBS) to quickly classify permutations based on data rate and overhead, narrowing down suitable designs through a predictive tool like the Data Exchange Message (DEM) that correlates with avionics data containers.

Benefits of technology

The TIPM system significantly reduces the effort required to verify telemetry system designs by rapidly analyzing multiple permutations, improving efficiency and accuracy in predicting data and overhead performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025162968000001_ABST
    Figure 2025162968000001_ABST
Patent Text Reader

Abstract

To provide a method, computer program product, and computing system for identifying a plurality of information pieces associated with a telemetry system, by a computing device.SOLUTION: The method comprises: constructing a permutation matrix for use with a telemetry system; extracting one or more parameters for use in the permutation matrix based upon, at least in part, the plurality of information pieces associated with the telemetry system; performing a plurality of iterations using the permutation matrix based upon, at least in part, the one or more parameters extracted for use in the permutation matrix; and providing a final telemetry geometry for the telemetry system.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001]

[0001] The invention described herein was made in the performance of work under NASA Contract No. NNM07AB03C and is subject to the provisions of Section 305 of the National Aeronautics and Space Act of 1958 (72 Stat. 435:42 U.S.C. 2457). [Background technology]

[0002]

[0002] Generally, test data qualification is one of the important parts of validation and requires a lot of planning, cost, and effort. Testing and analyzing a specific system that is multiplexed and transmitted to the ground requires creating procedures, releasing documents, labor to install all components, running tests, analyzing test data, and documenting results, all under a potentially aggressive schedule to complete the work. Summary of the Invention

[0003] In one exemplary implementation, a method performed by one or more computing devices may include, without limitation, identifying, by the computing device, a plurality of pieces of information associated with a telemetry system. A permutation matrix may be constructed for use with the telemetry system. One or more parameters for use in the permutation matrix may be extracted based at least in part on the plurality of pieces of information associated with the telemetry system. Multiple iterations may be performed using the permutation matrix based at least in part on the extracted one or more parameters for use in the permutation matrix. A final telemetry geometry may be provided to the telemetry system.

[0004]

[0004] One or more of the following example features may be included: The plurality of information associated with the telemetry system may include one or more air data containers, a phase of flight, a data rate of each air data container per format, a word geometry, an input window size time, or a combination thereof; The plurality of frame arrivals may be constructed based at least in part on the plurality of information associated with the telemetry system; Providing the final telemetry geometry to the telemetry system may include performing multiple iterations; The multiple iterations may be based on one or more of a cylindrical region and an elliptical region; Providing the final telemetry geometry to the telemetry system may include refining the multiple iterations; At least a portion of the plurality of information associated with the telemetry system may be optimized; At least a portion of the plurality of information associated with the telemetry system after optimization may be used as a hardware configuration file.

[0005] In another exemplary implementation, a computing system may include one or more processors and one or more memories configured to perform operations. The operations may include, without limitation, identifying, by the computing device, a plurality of pieces of information associated with a telemetry system. A permutation matrix may be constructed for use with the telemetry system. One or more parameters used in the permutation matrix may be extracted based at least in part on the plurality of pieces of information associated with the telemetry system. Multiple iterations may be performed using the permutation matrix based at least in part on the extracted one or more parameters used in the permutation matrix. A final telemetry geometry may be provided to the telemetry system.

[0006]

[0006] One or more of the following example features may be included: The plurality of information associated with the telemetry system may include one or more air data containers, a phase of flight, a data rate of each air data container per format, a word geometry, a time of an input window size, or a combination thereof; The plurality of frame arrivals may be constructed based at least in part on the plurality of information associated with the telemetry system; Providing the final telemetry geometry to the telemetry system may include performing multiple iterations; The multiple iterations may be based on one or more of a cylindrical region and an elliptical region; Providing the final telemetry geometry to the telemetry system may include refining the multiple iterations; At least a portion of the plurality of information associated with the telemetry system may be optimized; At least a portion of the plurality of information associated with the telemetry system after optimization may be used as a hardware configuration file.

[0007] In another exemplary implementation, a computer program product having instructions stored thereon resides on a computer-readable storage medium. The instructions, when executed across one or more processors, cause at least a portion of the one or more processors to perform a plurality of operations. The operations may include, without limitation, identifying, by a computing device, a plurality of pieces of information associated with the telemetry system. A permutation matrix may be constructed for use with the telemetry system. One or more parameters used in the permutation matrix may be extracted based at least in part on the plurality of pieces of information associated with the telemetry system. Multiple iterations may be performed using the permutation matrix based at least in part on the extracted one or more parameters used in the permutation matrix. A final telemetry geometry may be provided to the telemetry system.

[0008]

[0008] One or more of the following example features may be included: The plurality of information associated with the telemetry system may include one or more air data containers, a phase of flight, a data rate of each air data container per format, a word geometry, a time of an input window size, or a combination thereof; The plurality of frame arrivals may be constructed based at least in part on the plurality of information associated with the telemetry system; Providing the final telemetry geometry to the telemetry system may include performing multiple iterations; The multiple iterations may be based on one or more of a cylindrical region and an elliptical region; Providing the final telemetry geometry to the telemetry system may include refining the multiple iterations; At least a portion of the plurality of information associated with the telemetry system may be optimized; At least a portion of the plurality of information associated with the telemetry system after optimization may be used as a hardware configuration file.

[0009]

[0009] The details of one or more exemplary embodiments are set forth in the accompanying drawings and the following description. Other possible exemplary features and / or possible exemplary advantages will become apparent from the description, drawings, and claims. Some embodiments may not have those possible exemplary features and / or possible exemplary advantages. Such possible exemplary features and / or possible exemplary advantages may not be required for some embodiments. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 is an exemplary schematic diagram of a telemetry process coupled to an exemplary distributed computing network, in accordance with one or more exemplary embodiments of the present disclosure. [Figure 2]

[0011] 2 is an exemplary schematic diagram of the client electronic device of FIG. 1 in accordance with one or more exemplary embodiments of the present disclosure. [Figure 3]

[0012] 1 is an exemplary flowchart of a telemetry process, according to one or more exemplary embodiments of the present disclosure. [Figure 4]

[0013] FIG. 1 illustrates an example schematic diagram of an asynchronous telemetry bandwidth simulator for a telemetry process, in accordance with one or more example embodiments of the present disclosure. [Figure 5]

[0014] FIG. 1 illustrates an example schematic diagram of an asynchronous telemetry bandwidth simulator for a telemetry process, in accordance with one or more example embodiments of the present disclosure. [Figure 6]

[0015] FIG. 10 is an example schematic diagram of an aviation data container iteration performed by a telemetry process, according to one or more example embodiments of the present disclosure. [Figure 7]

[0016] 1 is an exemplary flowchart of a telemetry process, according to one or more exemplary embodiments of the present disclosure. [Figure 8A]

[0017] FIG. 1 is an exemplary diagram of permutations and resulting data points performed by a telemetry process, according to one or more exemplary embodiments of the present disclosure. [Figure 8B] FIG. 1 is an exemplary diagram of permutations and resulting data points performed by a telemetry process, according to one or more exemplary embodiments of the present disclosure. [Figure 9]

[0018] FIG. 10 is an exemplary schematic diagram of a permutation matrix / classification performed by a telemetry process, according to one or more exemplary embodiments of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0011]

[0019] Like reference numbers in the various drawings may indicate like elements.

[0012]

[0020] Generally, test data qualification is one of the key parts of validation and requires a lot of planning, cost, and effort. Testing and analyzing specific systems that are multiplexed and transmitted to ground requires creating procedures, releasing documentation, labor to install all components, running tests, analyzing test data, and documenting results, all under what may be an aggressive schedule to complete the work.

[0013]

[0021] Additionally, there can be many permutations of data rates, formats, word sizes, frame sizes (e.g., minor frame sizes) within a data container (e.g., a box). As these inputs change, the overall performance after passing through the telemetry box (including all data and all overhead) needs to be measured each time. To verify, tests need to be run each time the format changes. This requires a significant amount of effort. Furthermore, each time the box design changes, the box owner may not know the impact on the overall data and overhead after it is sent to the telemetry unit. This can be important in designing an efficient telemetry unit.

[0014]

[0022] Sometimes there is uncertainty about the input geometry (e.g., minor frame, word format size, input rate), and it is not possible to test all possibilities. For example, the geometry from the booster may not be given, and only the data rate may be available. As mentioned above, there are many permutations that can occur for a given data rate. In that case, the word size / format may be any size. Some systems may be accurate in predicting the total data and overhead when all necessary inputs are available. However, when data inputs or geometry are not available, many permutations are possible. It takes a lot of effort to change the format to verify each permutation, and tests must be performed with great effort.

[0015]

[0023] Thus, as will be explained in more detail below, this disclosure describes a predictive tool (e.g., a Telemetry Interactive Permutation Matrix, or TIPM). The TIPM can be utilized for space programs as well as any system where data is multiplexed together (e.g., NASA, DoD, commercial space programs, etc.). The TIPM can go through hundreds of permutations and classify each permutation based on data rate and overhead extracted by an Asynchronous Telemetry Bandwidth Simulator (ATBS) in minutes. Based on the results, the classification can narrow down multiple permutations or a single permutation suitable for the design. One exemplary element of the TIPM, other than the classifier, is the Data Exchange Message (DEM). The DEM directly correlates to the input geometry from the avionics data container.

[0016]

[0024] In some embodiments, the present disclosure may be embodied as a method, system, or computer program product. Accordingly, in some embodiments, the present disclosure may take the form of an entirely hardware configuration, an entirely software configuration (including firmware, resident software, microcode, etc.), or a configuration combining software and hardware aspects, all of which may be generally referred to herein as a "circuit," "module," or "system." Furthermore, in some embodiments, the present disclosure may take the form of a computer program product on a computer-usable storage medium having usable program code embodied therein.

[0017]

[0025] The software may include an artificial intelligence system. The artificial intelligence system may include machine learning or other computational intelligence. For example, the artificial intelligence (AI) may include one or more models used for one or more problem domains. When presented with many data features, identifying a subset of features relevant to the problem domain can improve prediction accuracy, reduce storage space, and increase processing speed. This identification may be referred to as feature engineering. Feature engineering may be performed by a user or may be guided solely by a user. In various implementations, a machine learning system may computationally identify relevant features, such as by performing singular value decomposition on the contributions of different features to the output.

[0018]

[0026] In some embodiments, various computing devices integrate, link with, exchange data with, be governed by, receive input from, and / or provide output to one or more AI systems. The one or more AI systems may include models, rule-based systems, expert systems, neural networks, deep learning systems, supervised learning systems, robotic process automation systems, natural language processing systems, intelligent agent systems, self-optimizing and self-organizing systems, etc. Unless the context indicates otherwise, reference to an AI or one or more embodiments of an AI should be understood to encompass one or more of these various alternative methods and systems. For example, without limitation, it should be understood that the AI ​​systems described to enable any of the wide variety of functions, capabilities, and solutions described herein (such as optimization, autonomous operation, prediction, control, orchestration, etc.) can be implemented by operations on a model or rule set, by training on a training dataset such as human tags or labels, by training on a training dataset of human interactions (e.g., human interactions with a software interface or hardware system), by training on an AI-generated training dataset (e.g., where the complete training dataset is generated by the AI ​​from a seed training dataset), by supervised learning, by semi-supervised learning, by deep learning, etc. For any given function or capability described herein, various types of neural networks may be used, including any of the types described herein. In embodiments, a hybrid set of neural networks may be selected such that a neural network type more suitable for performing each element of a multi-function or multi-capability system or method may be implemented within the set. As one example among many, deep learning or black box systems may use gated recurrent neural networks for functions such as language translation in intelligent agents.In this case, the underlying mechanisms of AI operation do not need to be understood as long as the results are well received by users. On the other hand, more transparent models and systems, and simpler neural networks, may be used for automated governance systems, where a deeper understanding of how inputs can be transformed into outputs may be required to comply with regulations and policies.

[0019]

[0027] Examples of models include recurrent neural networks (RNNs) such as long short-term memory (LSTM), deep learning models such as Transformers, decision trees, support vector machines, genetic algorithms, Bayesian networks, and regression analysis. Examples of systems based on Transformer models include Bidirectional Encoder Representations from Transformers (BERT) and Generative Pre-Trained Transformers (GPT). Training of machine learning models may include supervised learning (e.g., based on labeled input data), unsupervised learning, and reinforcement learning. In various embodiments, machine learning models may be pre-trained by their operators or by a third party. Problem domains include nearly any situation in which structured data can be collected, including natural language processing (NLP), computer vision (CV), classification, image recognition, etc. Some or all of the software may be executed in a virtual environment rather than running directly on hardware. Virtual environments may include hypervisors, emulators, sandboxes, container engines, etc. Software may be built as virtual machines, containers, etc. Virtualized resources may be controlled using, for example, the DOCKER container platform or the Pivot Cloud Foundry (PCF) platform. Some or all of the software may be logically partitioned into microservices. Each microservice provides a reduced subset of functionality. In various embodiments, each microservice may be independently scaled in response to load by either dedicating more resources to the microservice or instantiating more instances of the microservice. In various embodiments, the functionality provided by one or more microservices may be combined with each other and / or with other software that does not conform to the microservices model.

[0020]

[0028] In some implementations, any suitable computer-usable or computer-readable medium(s) may be utilized. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-usable or computer-readable storage medium (including a storage device associated with a computing device or client electronic device) may be, for example, without limitation, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable media or storage media may include the following: Examples of such devices include electrical connections having one or more wires, portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, solid-state drives (SSD), digital versatile disks (DVDs), Blu-ray disks, and Ultra HD Blu-ray disks, static random access memory (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), synchronous graphics RAM (SGRAM), and video RAM (VRAM), analog magnetic tape, digital magnetic tape, rotating hard disk drives (HDDs), memory sticks, floppy disks, mechanically encoded instruction storage devices such as punch cards and grooved ridge structures, media supporting the Internet or an intranet, or magnetic storage devices. It should be noted that a computer usable or computer readable medium may even be a suitable medium on which a program may be stored, scanned, compiled, interpreted, or otherwise processed in a suitable manner, as appropriate, and then stored in a computer memory.In the context of this disclosure, a computer-usable or computer-readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.

[0021]

[0029] Examples of storage implemented by storage hardware include distributed ledgers, such as permissioned or permissionless blockchains. Entities recording transactions, such as in a blockchain, can reach consensus using algorithms, such as proof-of-stake, proof-of-work, or proof-of-storage. Elements of the present disclosure may be represented by or encoded as non-fungible tokens (NFTs). Ownership rights associated with non-fungible tokens may be recorded on or referenced by a distributed ledger. Transactions initiated by or related to the present disclosure may use one or both of fiat currency and cryptocurrency, examples of which include Bitcoin and Ether.

[0022]

[0030] In some embodiments, a computer-readable signal medium may include a propagated data signal having computer-readable program code embodied therein, for example, in baseband or as part of a carrier wave. In some embodiments, such a propagated signal may take any of a variety of forms, including, but not limited to, electromagnetic, optical, or any suitable combination thereof. In some embodiments, the computer-readable program code may be transmitted using any suitable medium, including, but not limited to, the Internet, wired, optical fiber, RF, etc. In some embodiments, a computer-readable signal medium may be any computer-readable medium that is not a computer-readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.

[0023]

[0031] In some embodiments, a computer program for performing operations of the present disclosure may be either source code or object code written in any combination of one or more programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or object-oriented programming languages ​​such as Java, Smalltalk, C++, and the like. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and / or its affiliates. However, computer program code for performing operations of the present disclosure may also be written in conventional procedural programming languages, such as the "C" programming language, PASCAL, or similar programming languages, and scripting languages, such as JavaScript, PERL, or Python. The program code may execute entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, a remote computer may be connected to the user network via a network such as a cellular network, a local area network (LAN), a wide area network (WAN), a body area network (BAN), a personal area network (PAN), a metropolitan area network (MAN), or a connection may be made to an external computer (e.g., via the Internet using an Internet service provider). The network may include one or more of point-to-point and mesh technologies. Data sent or received by the networking components may traverse the same or different networks. Networks may be connected to each other via WANs or point-to-point leased lines using technologies such as Multiprotocol Label Switching (MPLS) or Virtual Private Networks (VPNs).In some implementations, an electronic circuit, including, for example, a programmable logic circuit, an application-specific integrated circuit (ASIC), a gate array such as a field-programmable gate array (FPGA), or other hardware accelerator, a microcontroller unit (MCU), or a programmable logic array (PLA), an integrated circuit (IC), a digital circuit element, an analog circuit element, a combinational logic circuit, a digital signal processor (DSP), a complex programmable logic device (CPLD), etc., may execute computer-readable program instructions / code by utilizing state information of the computer-readable program instructions to customize the electronic circuit to perform aspects of the present disclosure. Multiple hardware components may be integrated on a single die, a single package, a single printed circuit board or logic board, etc. For example, multiple hardware components may be implemented as a system-on-chip. A component or a set of integrated components may be referred to as a chip, a chipset, or a chip stack. Examples of a system-on-chip include a radio frequency (RF) system-on-chip, an artificial intelligence (AI) system-on-chip, a video processing system-on-chip, an organ-on-chip, a quantum algorithm system-on-chip, etc.

[0024]

[0032] Examples of processing hardware may include a central processing unit (CPU), a graphics processing unit (GPU), an approximate computing processor, a quantum computing processor, a parallel computing processor, a neural network processor, a signal processor, a digital processor, a data processor, an embedded processor, a microprocessor, and a coprocessor. Coprocessors can provide additional processing functionality and / or optimizations, such as speed and power consumption. Examples of coprocessors include a mathematics coprocessor, a graphics coprocessor, a communications coprocessor, a video coprocessor, and an artificial intelligence (AI) coprocessor.

[0025]

[0033] In some embodiments, the flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatuses (systems), methods, and computer program products according to various embodiments of the present disclosure. Each block in the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, may represent a module, a segment, or a portion of code. They comprise one or more executable computer program instructions for implementing the specified logical function(s) / operations. These computer program instructions may be provided to a general-purpose computer, a special-purpose computer, or other programmable data processing device to create a machine. The computer program instructions, executed via a processor of a computer or other programmable data processing device, thereby create the capability to implement one or more of the functions / operations specified in a block or blocks of the flowcharts and / or block diagrams, or a combination thereof. Note that in some embodiments, the functions described in the block(s) may be performed in the order described in the figures (or may be combined or omitted). For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.

[0026]

[0034] In some embodiments, these computer program instructions may also be stored in a computer-readable memory. The computer-readable memory may direct a computer or other programmable data processing apparatus to function in a particular manner. The instructions stored in the computer-readable memory thereby produce an article of manufacture that includes the instruction means. The instruction means implements the function(s) / act(s) specified in the flowchart and / or block diagram block(s) or blocks, or a combination thereof.

[0027]

[0035] In some embodiments, computer program instructions are also loaded into a computer or other programmable data processing apparatus to cause the computer or other programmable data processing apparatus to perform sequential operational steps (not necessarily in a particular order) to create a computer-implemented process, whereby the instructions that execute on the computer or other programmable data processing apparatus provide steps for implementing the functions / acts (not necessarily in a particular order) specified in a block or blocks or combinations thereof of the flowcharts and / or block diagrams.

[0028]

[0036] Referring now to the exemplary embodiment of FIG. 1 , a telemetry process 10 is shown that may reside on and be executed by a computer (e.g., computer 12). The computer may be connected to a network (e.g., network 14) (e.g., the Internet or a local area network). Examples of computer 12 (and / or one or more of the client electronic devices described below) may include, without limitation, a storage system (e.g., a network-attached storage (NAS) system, a storage area network (SAN)), one or more personal computers, one or more laptop computers, one or more mobile computing devices, a server computer, a series of server computers, one or more mainframe computers, or one or more computing clouds. A SAN may include one or more of the client electronic devices, including a RAID device or a NAS system. In some embodiments, each of the foregoing may be generally described as a computing device. In certain embodiments, a computing device may be a physical or virtual device. In many embodiments, a computing device may be any device capable of performing multiple operations. For example, a dedicated processor, a portion of a processor, a virtual processor, a portion of a virtual processor, a portion of a virtual device, or a virtual device. In some embodiments, a processor may be a physical processor or a virtual processor. In some embodiments, a virtual processor may correspond to one or more portions of one or more physical processors. In some embodiments, instructions / logic may be distributed and executed across one or more processors, either virtual or physical, to execute the instructions / logic. Computer 12 may run an operating system such as, for example, but not limited to, Microsoft® Windows®, Mac® OS X®, Red Hat®, Linux®, Windows® Mobile, Chrome OS, BlackBerry OS, Fire OS, or a custom operating system.(Microsoft and Windows are registered trademarks of Microsoft Corporation in the United States and / or other countries; Mac and OS X are registered trademarks of Apple Inc. in the United States and / or other countries; Red Hat is a registered trademark of Red Hat Ltd. in the United States and / or other countries; Linux is a registered trademark of Linus Stovall in the United States and / or other countries.)

[0029]

[0037] In some implementations, as will be described in more detail below, a telemetry process, such as telemetry process 10 of FIG. 1, may identify, by a computing device, a plurality of pieces of information associated with a telemetry system. A permutation matrix may be constructed for use with the telemetry system. One or more parameters used in the permutation matrix may be extracted based at least in part on the plurality of pieces of information associated with the telemetry system. Multiple iterations may be performed using the permutation matrix based at least in part on the extracted one or more parameters used in the permutation matrix. A final telemetry geometry may be provided to the telemetry system.

[0030]

[0038] In some embodiments, the instruction sets and subroutines of telemetry process 10 (which may be stored on a storage device, such as storage device 16 coupled to computer 12) may be executed by one or more processors and one or more memory architectures included within computer 12. In some embodiments, storage device 16 may include, without limitation, hard disk drives, all forms of flash memory storage devices, tape drives, optical drives, RAID arrays (or other arrays), random access memory (RAM), read-only memory (ROM), or combinations thereof. In some embodiments, storage device 16 may be organized as extents, extent pools, RAID extents (e.g., an exemplary 4D+1P R5, where a RAID extent may include, for example, five storage device extents allocable from five different storage devices), mapped RAID (e.g., a collection of RAID extents), or combinations thereof.

[0031]

[0039] In some implementations, network 14 may be connected to one or more secondary networks (e.g., network 18). Examples of the one or more secondary networks may include, without limitation, a local area network, a wide area network, or other communications network, or the Internet. As used herein, the phrase "communications network equipment" may refer to equipment configured to send and / or receive transmissions to and / or from one or more mobile client electronic devices (e.g., mobile phones, etc.), among many other things.

[0032]

[0040] In some embodiments, computer 12 may include a data store, such as a database (e.g., a relational database, an object-oriented database, a triple store database, etc.), a data store, a data lake, a column store, and / or a data warehouse, which may be located in any suitable memory location, such as a storage device 16 coupled to computer 12. In some embodiments, the data, metadata, information, etc. described throughout this disclosure may be stored in a data store. In some embodiments, computer 12 may utilize known database management systems, such as, without limitation, DB2, to allow multiple users to access one or more databases, such as the relational databases described above. In some embodiments, the data store may also be a custom database, such as, for example, a flat file database or an XML database. In some embodiments, any other form(s) of data storage structure and / or organization may also be used. In some embodiments, telemetry process 10 may be a component of a data store, a standalone application that interacts with the data stores described above, and / or an applet / application accessed via client applications 22, 24, 26, 28. In some implementations, the data stores described above may be distributed, in whole or in part, in a cloud computing topology. In this manner, computers 12 and storage devices 16 may refer to multiple devices that may also be distributed throughout a network.

[0033]

[0041] In some embodiments, computer 12 may execute a flight software application (e.g., flight software application 20). In some embodiments, telemetry process 10 and / or flight software application 20 may be accessed via one or more of client applications 22, 24, 26, 28. In some embodiments, telemetry process 10 may be a standalone application or may be an applet / application / split / extension that may interact with and / or run within flight software application 20, components of flight software application 20, and / or one or more of applications 22, 24, 26, 28. In some embodiments, flight software application 20 may be a standalone application or may be an applet / application / split / extension that may interact with and / or run within telemetry process 10, components of telemetry process 10, and / or one or more of client applications 22, 24, 26, 28. In some embodiments, one or more of the client applications 22, 24, 26, 28 may be standalone applications or may be applets / applications / splits / extensions that may interact with and / or run within components of the telemetry process 10 and / or flight software application 20. Examples of client applications 22, 24, 26, 28 may include, without limitation, for example, standard and / or mobile web browsers, email applications (e.g., email client applications), text and / or graphical user interfaces, customized web browsers, plug-ins, application programming interfaces (APIs), or custom applications.The instruction sets and subroutines of the client applications 22, 24, 26, 28, which may be stored on storage devices 30, 32, 34, 36 coupled to the client electronic devices 38, 40, 42, 44, may be executed by one or more processors and one or more memory architectures incorporated within the client electronic devices 38, 40, 42, 44.

[0034]

[0042] In some implementations, one or more of storage devices 30, 32, 34, 36 may include, without limitation, a hard disk drive, a flash drive, a tape drive, an optical drive, a RAID array, random access memory (RAM), and read-only memory (ROM). Examples of client electronic devices 38, 40, 42, 44 (and / or computer 12) may include, without limitation, a personal computer (e.g., client electronic device 38), a laptop computer (e.g., client electronic device 40), a smart / data-enabled mobile phone (e.g., client electronic device 42), a notebook computer (e.g., client electronic device 44), a tablet, a server, a television, a smart television, a smart speaker, an Internet of Things (IoT) device, a media (e.g., audio / video, photo, etc.) capture and / or output device, an audio input and / or recording device (e.g., a handheld microphone, a lapel microphone, an embedded microphone (e.g., embedded in eyeglasses, a smartphone, a tablet computer, and / or a watch), and a dedicated network device. Client electronic devices 38, 40, 42, 44 may each execute an operating system. Examples of operating systems may include, but are not limited to, Android™, Apple® iOS®, Mac® OS X®, Red Hat®, Linux®, Windows® Mobile, Chrome OS, BlackBerry OS, Fire OS, or a custom operating system.

[0035]

[0043] In some embodiments, one or more of client applications 22, 24, 26, 28 may be configured to implement some or all of the functionality of telemetry process 10 (or vice versa). Thus, in some embodiments, telemetry process 10 may be a purely server-side application, a purely client-side application, or a hybrid server-side / client-side application (executed cooperatively by one or more of client applications 22, 24, 26, 28 and / or telemetry process 10).

[0036]

[0044] In some embodiments, one or more of client applications 22, 24, 26, 28 may be configured to implement some or all of the functionality of flight software application 20 (or vice versa). Thus, in some embodiments, flight software application 20 may be a purely server-side application, a purely client-side application, or a hybrid server-side / client-side application (executed cooperatively by one or more of client applications 22, 24, 26, 28 and / or flight software application 20). Because the client applications 22, 24, 26, 28, the telemetry process 10, and the flight software application 20, taken alone or in any combination, may achieve some or all of the same functionality, any description of achieving such functionality via one or more of the client applications 22, 24, 26, 28, the telemetry process 10, the flight software application 20, or a combination thereof, and any described interaction(s) between one or more of the client applications 22, 24, 26, 28, the telemetry process 10, the flight software application 20, or a combination thereof to achieve such functionality should be taken as an example only and does not limit the scope of the present disclosure.

[0037]

[0045] In some embodiments, one or more of users 46, 48, 50, 52 may access computer 12 and telemetry process 10 (e.g., using one or more of client electronic devices 38, 40, 42, 44) directly over network 14 or through a secondary network 18. Additionally, computer 12 may be connected to network 14 through secondary network 18, as illustrated by phantom (virtual) link line 54. Telemetry process 10 may include one or more user interfaces, such as a browser or a text or graphical user interface. Users 46, 48, 50, 52 may access telemetry process 10 through one or more user interfaces.

[0038]

[0046] In some embodiments, various client electronic devices may be directly or indirectly coupled to network 14 (or network 18). For example, client electronic device 38 is shown directly coupled to network 14 via a hardwired network connection. Additionally, client electronic device 44 is shown directly coupled to network 18 via a hardwired network connection. Client electronic device 40 is shown wirelessly coupled to network 14 via a wireless communication channel 56 established between client electronic device 40 and a wireless access point (i.e., WAP) 58. WAP 58 is shown directly coupled to network 14. WAP 58 can be, for example, IEEE 802.11a, 802.11b, 802.11g, 802.11n, 802.11ac, Wi-Fi, RFID, and / or Bluetooth™ (including Bluetooth™ Low Energy), or any device capable of establishing a wireless communication channel 56 between client electronic device 40 and WAP 58. Client electronic device 42 is shown wirelessly coupled to network 14 via a wireless communication channel 60 established between client electronic device 42 and a cellular network / bridge 62. Cellular network / bridge 62 is shown in the embodiment directly coupled to network 14.

[0039]

[0047] In some implementations, some or all of the IEEE 802.11x specifications may use Ethernet protocols and carrier sense multiple access with collision avoidance (i.e., CSMA / CA) for path sharing. Various 802.11x specifications may use, for example, phase shift keying (i.e., PSK) or complementary code keying (i.e., CCK) modulation. Bluetooth™ (including Bluetooth™ Low Energy) is a telecommunications industry specification that may interconnect, for example, mobile phones, computers, smartphones, and other electronic devices using short-range wireless connections. Other forms of interconnection (e.g., near-field communication (NFC)) may also be used. In some implementations, the computer 12 may be directed or controlled by an operator. The computer 12 may be hosted by one or more of operator-owned assets, operator-released assets, and third-party assets. The assets may be referred to as a private, community, or hybrid cloud computing network or environment. For example, computer 12 may be partially or fully hosted by a third party providing Software as a Service (SaaS), Platform as a Service (PaaS), and / or Infrastructure as a Service (IaaS). Computer 12 may be implemented using Agile Development and Operations (DevOps) principles. In some embodiments, some or all of computer 12 may be implemented in a multi-environment architecture. For example, the multi-environment may include one or more production environments, one or more integration environments, one or more development environments, etc.

[0040]

[0048] In some implementations, various I / O requests (e.g., I / O request 15) may be sent from, for example, client applications 22, 24, 26, 28 to, for example, computer 12 (and vice versa). Examples of I / O request 15 may include, without limitation, a data write request (e.g., a request to write content to computer 12) and a data read request (e.g., a request to read content from computer 12).

[0041]

[0049] Referring also to the exemplary embodiment of Figure 2, a schematic diagram of a client electronic device 38 is shown. While a client electronic device 38 is shown in this figure, this is for illustrative purposes only and is not intended to limit the present disclosure, as other configurations are possible. Additionally, any computing device capable of executing telemetry process 10, in whole or in part, can be substituted (in whole or in part) for client electronic device 38 in Figure 2, examples of which may include, without limitation, computer 12 and / or one or more of client electronic devices 38, 40, 42, 44.

[0042]

[0050] In some implementations, client electronic device 38 may include a processor (e.g., microprocessor 200) configured to, for example, process data and execute the code / instruction sets and subroutines described above. Microprocessor 200 may be coupled to the storage device(s) described above (e.g., storage device 30) via a storage adapter. An I / O controller (e.g., I / O controller 202) may be configured to couple microprocessor 200 to various devices (e.g., via wired or wireless connections), such as keyboard 206, pointing / selection devices (e.g., touchpad, touchscreen, mouse 208, etc.), custom devices (e.g., device 215), USB ports, and printer ports. A display adapter (e.g., display adapter 210) may be configured to couple a display 212 (e.g., one or more touchscreen monitors, plasma monitors, CRT monitors, or LCD monitors, etc.) to the microprocessor 200, while a network controller / adapter 214 (e.g., an Ethernet adapter) may be configured to couple the microprocessor 200 to the network 14 (e.g., the Internet or a local area network).

[0043]

[0051] As will be described below, the telemetry process 10 can overcome exemplary and non-limiting problems that arise particularly in the area of ​​computer processing, and can at least assist in improving, for example, data flight (or other) simulation techniques, which are necessarily rooted in computer technology, to improve existing technical processes, such as those related to telemetry systems, etc. It will be understood that the computer processes described throughout are integrated into one or more practical applications and, at least when taken as a whole, are not considered to be well-understood, routine, conventional functions.

[0044]

[0052] As described above, and with reference to at least the exemplary embodiment of FIG. 3 , the telemetry process 10 may, by a computing device, identify a plurality of pieces of information associated with a telemetry system 300. The telemetry process 10 may construct a permutation matrix for use with the telemetry system 302. The telemetry process 10 may extract one or more parameters for use in the permutation matrix based at least in part on the plurality of pieces of information associated with the telemetry system 304. The telemetry process 10 may perform a plurality of iterations using the permutation matrix based at least in part on the extracted one or more parameters for use in the permutation matrix 306. The telemetry process 10 may provide a final telemetry geometry to the telemetry system 308.

[0045]

[0053] In some implementations, telemetry process 10, by a computing device, may identify a plurality of pieces of information associated with a telemetry system 300. For example, with reference to at least the exemplary implementations of Figures 4-5, exemplary systems 400 and 500 are shown. In some implementations, the plurality of pieces of information associated with the telemetry system may include one or more air data containers (e.g., boxes), a phase of flight (e.g., launch, booster separation, communications format switch, core stage separation, core stage impact, etc.), a data rate for each air data container per format (e.g., each having a bandwidth in, e.g., megabytes per second), word geometry (e.g., minor frame word length and word length), an input window size time (WST) (e.g., a telemetry unit processing time τ (e.g., 20 ms) of telemetry process 10), or a combination thereof.

[0046]

[0054] In some embodiments, telemetry process 10 may construct 314 a plurality of (e.g., minor) frame arrivals based at least in part on information associated with a telemetry system (e.g., a flight simulation, although a simulation is not required and any telemetry system, including a live telemetry system, may be used). In that case, in some embodiments, each minor frame arrival of the plurality of minor frame arrivals may be constructed for each input window size time. For example, with reference to at least the exemplary embodiment of FIG. 6, an exemplary iteration 600 of each aviation data container is shown. Upon receiving (or otherwise identifying or obtaining) the data rate, word geometry, and format, telemetry process 10 may construct (e.g., via an asynchronous function) a minor frame arrival for each WST. The construction of a minor frame arrival is a time allocation window in which the transmitted data may be processed. As an example, one minor frame is the minor frame word size × word length (e.g., 800 × 12 = 9600). The system may model how many minor frames arrive per WST based on the data rate.

[0047]

[0055] In some embodiments, telemetry process 10 may determine that one of the multiple minor frame arrivals does not fit entirely within the input window size time. Telemetry process 10 may transmit the one of the multiple minor frame arrivals that does not fit entirely within the input window size time to the next input window size time. For example, for illustrative purposes only, assume that telemetry process 10 (e.g., via a telemetry unit) processes only every integer number of minor frames. Thus, if telemetry process 10 (e.g., via a telemetry unit) cannot fit a complete minor frame within that window, telemetry process 10 may transmit it to the next window. For example, if there are 10.4 frames per 20 ms WST, telemetry process 10 (in some embodiments) may only be able to transmit 10 frames in the current window, but following the same data rate, the next window will have 10.8 frames (10.4 new + 0.4), thereby allowing telemetry process 10 to still transmit 10 frames in the next window. The next window may have 11.2 frames (10.4 + 0.8), resulting in telemetry process 10 transmitting 11 frames. Therefore, the number of minor frames per telemetry unit is not necessarily constant and may vary, which may tend to complicate the simulation or increase the error rate.

[0048]

[0056] In some implementations, telemetry process 10 can packetize multiple minor frame arrivals into multiple data packets. For example, after receiving the number of minor frames per window, telemetry process 10 can multiply it by the minor frame size and packetize it based on any relevant protocol and coding (e.g., CCSDS protocol and LDPC coding). For example, for box 1, assume each minor frame is 12 bits * 800 words = 9,600 bits. If there are 10 minor frames, 96,000 bits of data need to be packetized using the CCSDS packet format. In one embodiment, each minor frame can add a message identifier header, for example, 20 bytes. The start of the ENCAP can add, for example, 32 bits. After aggregating the message identifier header, minor frame data, and ENCAP, telemetry process 10 can divide the sum by the packet length (e.g., using 7 / 8 LDPC coding, each packet is 7072 bits long). In some embodiments, telemetry process 10 can add various overhead for each specific protocol (e.g., ASM, TF header, MPDU header, and LDPC for the CCSDS protocol) to encode parity filled with zero bits into the packet. In some embodiments, telemetry process 10 can use the filled data after the data ends in the last packet and the next data type begins in the new encapsulating CCSDS packet. Generally, the filled data may be described as idle pattern information (e.g., AEAEAEAE...) and can fill the remainder of the packet. In some embodiments, telemetry process 10 can consider the filled data as part of the overhead.

[0049]

[0057] In some embodiments, the telemetry process 10 can multiplex multiple data packets to generate a multiplexed data packet. For example, the above process can be repeated for all avionics boxes with different data rates, minor frame geometries, etc.

[0050]

[0058] In some embodiments, telemetry process 10 can predict the total amount of bandwidth needed for the telemetry system based at least in part on the multiplexed data packets. For example, in some embodiments, the total amount of bandwidth needed for the telemetry system can include all raw data, all data, all overhead data, all filled data, or a combination thereof. For example, for all raw data (e.g., excluding message identifier headers), telemetry process 10 can predict all raw data and separate them into various types of data (e.g., CS data, booster data, etc.). Total data can generally be all data, including all of the overhead described above. Overhead data can include CCSDS overhead, including message identifier headers and ENCAP headers, as well as filled data. The filled data can be used to fill the remainder of the packet, and the filled data can be included in the total overhead.

[0051]

[0059] In some embodiments, the telemetry process 10 may predict the amount of bandwidth available for the telemetry system. For example, margin packets or IDLE packets may be generally described as remaining empty packets from the RF bandwidth. Thus, the telemetry process 10 may predict how much remaining data will be available for the entire mission and for each phase of flight.

[0052]

[0060] Thus, the telemetry process 10 can be used as a prediction tool (asynchronous telemetry bandwidth simulator). This prediction tool can be designed for space programs as well as any system where data is multiplexed together (e.g., NASA, Department of Defense, commercial space programs, etc.). Some systems may consist of several avionics "boxes" transmitting data with various data rates to a telemetry unit. In that case, the telemetry unit may then multiplex the data, packetize the data, and add overhead using forward error correction overhead (e.g., CCSDS with 7 / 8 LDPC coding or other space application protocol formats). The packetized data is then sent to a radio frequency (RF) transmitter for transmission to the ground during the SLS CS mission. Telemetry boxes may also be in asynchronous systems. Asynchronous systems may operate in specific time windows. A specific time window transmits only entire minor frames from each time window. This means that not all windows have the same amount of raw data.

[0053]

[0061] In some embodiments, the telemetry process 10 can predict total data, total overhead, total fill data, total CCSDS data, and DLE packets / margins to within ±0.025%. The telemetry process 10 can provide important support for testing operation even when components fail or entire bandwidths become unavailable; component bandwidths can still be accurately modeled without sacrificing schedules or rerunning tests. In some embodiments, the telemetry process 10 can help reduce per-vehicle costs, eliminate risk, and save on test schedules. In some embodiments, the telemetry process 10 not only allows users to implement specific requested formats, but can also run hundreds of permutations within minutes, analyze the results, and recommend / categorize permutations based on overall performance.

[0054]

[0062] In some embodiments, telemetry process 10 may optimize 316 at least a portion of the plurality of pieces of information associated with the telemetry system, and the optimized at least a portion of the plurality of pieces of information associated with the telemetry system may be used 318 by telemetry system 10 as a hardware configuration file. For example, with reference to at least one exemplary embodiment of FIG. 7, an exemplary alternative diagram of a flowchart for telemetry system 10 is shown. In step 1, the configuration of each box (above-described aviation data container) is established by telemetry process 10 as described above (also illustrated in step e.). In step 2, the programmed data rate and geometry may be telemetry by each box (e.g., via telemetry process 10). In step 3, the telemetry unit (e.g., via telemetry process 10) multiplexes all telemetry from each box and transmits it to an RF transmitter. In step 4, the data is transmitted to the ground (e.g., via telemetry process 10). In step 5, the data is decoded and analyzed (e.g., via telemetry process 10) for results across the entire system bandwidth.

[0055]

[0063] In step a., the data rate and geometry are input into, for example, telemetry process 10. In step b., telemetry process 10 generates the overall bandwidth for the system. In step c., the bandwidth result is compared to the request by telemetry process 10. In step d., if the bandwidth cannot meet the request, a new data rate / geometry is updated / optimized by telemetry process 10 and input back into telemetry process 10. Optimizing reduces overhead and increases the actual data transmitted in the same allocated RF bandwidth. In step e., if the bandwidth meets the requirements, the box programming is good for use in operation.

[0056]

[0064] As mentioned above, sometimes there is uncertainty about the input geometry (e.g., minor frame, word format size, input rate), and it is not possible to test all possibilities. For example, the geometry from the booster may not be given, and only the data rate may be available. As mentioned above, there are many permutations that can occur for a given data rate. In that case, the word size / format may be any size. Some systems may be accurate in predicting the total data and overhead when all necessary inputs are available. However, when data inputs or geometry are unavailable, many permutations are possible. It takes a lot of effort to change the format to verify each permutation, and tests must be performed with great effort.

[0057]

[0065] The classification narrows down the suitable permutations or a single permutation for design based on the results.

[0058]

[0066] In some implementations, telemetry process 10 may construct 302 a permutation matrix for use with a telemetry system. For example, to address one example and non-limiting problem described above, telemetry process 10 may be used as a predictive tool (e.g., a Telemetry Interactive Permutation Matrix, or TIPM). This predictive tool may be utilized by the telemetry system. The telemetry system may go through hundreds of permutations and classify each permutation. This classification may occur in minutes or even seconds, depending on processing resources, based on the data rate and overhead extracted by the above-described ATBS system of telemetry process 10. Referring at least to the example implementation of FIG. 8, an example permutation matrix (e.g., permutation matrix 800) is shown. In one implementation, permutation matrix 800 may include, for example, WF1→DR2→RB as one permutation in permutation matrix 800, WF1→DR3→LB as one permutation in permutation matrix 800, etc.

[0059]

[0067] In some implementations, telemetry process 10 may extract one or more parameters for use in the permutation matrix 304 based at least in part on a plurality of pieces of information associated with the telemetry system. For example, for reach permutations for which ATBS is invoked (e.g., via telemetry process 10), telemetry process 10 extracts parameters (e.g., average data totals and average overhead). Telemetry process 10 then inputs the extracted data into a classifier (described further below). Thus, in this example, all data totals (e.g., plot 802) and overhead totals (e.g., plot 806) are shown in ATBS. Thus, while there are two parameters, data totals and overhead totals, it will be understood after reading this disclosure that more or fewer parameters may be used without departing from the scope of this disclosure. In some implementations, one of the exemplary elements of telemetry process 10 (apart from the classifier) ​​is a data exchange message (DEM) (shown in plot 804). The DEM directly correlates to the input geometry from the avionics data container.

[0060]

[0068] In some implementations, telemetry process 10 may perform multiple iterations 306 with the permutation matrix based at least in part on one or more extracted parameters used in the permutation matrix. For example, telemetry process 10 may go through all possible permutations of the input matrix. For example, there may be two layers of four nodes, so the combinations for each box are 4x4. In one non-limiting example, there are two boxes, and for each permutation of box 1, box 2 has 16 possible permutations. Thus, a total of 16x16=256 or (MxN) n where M is the number of first layers (WF in FIG. 8), N is the number of second layers (DR in FIG. 8), and n is the number of avionics data containers (e.g., LB and RB, or two in this example).

[0061]

[0069] In some implementations, the telemetry process 10 may provide the final telemetry geometry to the telemetry system 308. For example, based on the classification (described below), the telemetry process 10 may select the most optimized permutation based on overall data and overhead, and even other factors such as complexity. The final telemetry geometry to the telemetry system may then be used in a hardware configuration (e.g., as shown in FIG. 7).

[0062]

[0070] In some embodiments, providing the final telemetry geometry to the telemetry system may include performing 310 multiple iterations of multiple classes. For example, with reference to at least one exemplary embodiment of FIG. 9, exemplary permutation matrices / classifications 900a and 900b are shown. In some embodiments, the multiple classes may be binary classes (e.g., good / bad, 0 / 1, etc.) as shown in permutation matrix / classification 900a, or multi-class classes (e.g., good / bad / fair / marginal) as shown in permutation matrix / classification 900b. Based on requirements, telemetry process 10 may build a multi-class classifier. For example, for illustrative purposes only, assume it is desired to identify the total data between a and b and the total overhead between c and d. Approaching a boundary line may be called marginal, e.g., within a certain distance from the boundary edge, and outside the boundary may be called poor. Other classifications are possible without departing from the scope of this disclosure.

[0063]

[0071] In some embodiments, the multiple iterations of the classification may be based on one or more of cylindrical and elliptical regions. For example, referring back to FIG. 8, classification 808 is shown as a 3D classifier. In one embodiment, there may be a center (x, y) and radii r1 and r2 from the center. Thus, if r1 and r2 are the same value, it is cylindrically based, and if they are different values, it is elliptical based. It is worth noting that the height is the length of the permutation.

[0064]

[0072] In some embodiments, providing the final telemetry geometry to the telemetry system may include pruning 312 to multiple iterations. For example, pruning may involve choosing perhaps a few good permutations from hundreds of permutations (based on the classification described above), and then performing a final pruning among those good permutations to pick the "best" based on various factors (e.g., optimized based on overall data, overall overhead, complexity, etc.). In some embodiments, the pruning may be automatic based on the classification, but the final selection may also have an end user in the loop to determine the final design permutation based on all optimization factors, etc.

[0065]

[0073] Article 1. 1. A computer-implemented method comprising: identifying, by a computing device, a plurality of pieces of information associated with a telemetry system; constructing a permutation matrix for use with the telemetry system; extracting one or more parameters for use in the permutation matrix based at least in part on the plurality of pieces of information associated with the telemetry system; performing a plurality of iterations using the permutation matrix based at least in part on the extracted one or more parameters for use in the permutation matrix; and providing a final telemetry geometry to the telemetry system.

[0066]

[0074] Article 2. The computer-implemented method of claim 1, wherein the plurality of pieces of information associated with the telemetry system include one or more air data containers, a phase of flight, a data rate for each air data container per format, a word geometry, an input window size time, or a combination thereof.

[0067]

[0075] Article 3. 3. The computer-implemented method of claim 1 or 2, further comprising constructing a plurality of frame arrivals based at least in part on the plurality of information associated with the telemetry system.

[0068]

[0076] Article 4. 4. The computer-implemented method of any one of clauses 1 to 3, wherein providing the final telemetry geometry to the telemetry system includes performing multiple types of the multiple iterations.

[0069]

[0077] Article 5. 5. The computer-implemented method of claim 4, wherein the multiple iterations of the multiple classes are based on one or more of a cylindrical domain and an elliptical domain.

[0070]

[0078] Article 6. 4. The computer-implemented method of any one of clauses 1 to 3, wherein providing the final telemetry geometry to the telemetry system includes refining the multiple iterations.

[0071]

[0079] Article 7. 7. The computer-implemented method of any one of clauses 1 to 6, further comprising optimizing at least a portion of the plurality of pieces of information associated with the telemetry system, and using the at least a portion of the plurality of pieces of information associated with the telemetry system after optimization as a hardware configuration file.

[0072]

[0080] Article 8. 1. A computer program product having a plurality of instructions stored on a computer-readable storage medium, the plurality of instructions residing on the computer-readable storage medium, the plurality of instructions, when executed across one or more processors, causing at least a portion of the one or more processors to perform a plurality of operations, the plurality of operations including: identifying a plurality of pieces of information associated with a telemetry system; constructing a permutation matrix for use with the telemetry system; extracting one or more parameters for use in the permutation matrix based at least in part on the plurality of pieces of information associated with the telemetry system; performing a plurality of iterations using the permutation matrix based at least in part on the extracted one or more parameters for use in the permutation matrix; and providing a final telemetry geometry to the telemetry system.

[0073]

[0081] Article 9. 9. The computer program product of clause 8, wherein the plurality of pieces of information associated with the telemetry system include one or more air data containers, a phase of flight, a data rate for each air data container per format, a word geometry, an input window size time, or a combination thereof.

[0074]

[0082] Article 10. 10. The computer program product of clause 8 or 9, wherein the operations further include constructing frame arrivals based at least in part on the information associated with the telemetry system.

[0075]

[0083] Article 11. 11. The computer program product of any one of clauses 8 to 10, wherein providing the final telemetry geometry to the telemetry system comprises performing multiple types of the multiple iterations.

[0076]

[0084] Article 12. 12. The computer program product of claim 11, wherein the plurality of iterations of the plurality of classes are based on one or more of a cylindrical domain and an elliptical domain.

[0077]

[0085] Article 13. 11. The computer program product of any one of clauses 8 to 10, wherein providing the final telemetry geometry to the telemetry system includes refining the multiple iterations.

[0078]

[0086] Article 14. 14. The computer program product of any one of clauses 8 to 13, wherein the instructions further include optimizing at least a portion of the plurality of pieces of information associated with the telemetry system, and using the at least a portion of the plurality of pieces of information associated with the telemetry system after optimization as a hardware configuration file.

[0079]

[0087] Article 15. 1. A computing system comprising: one or more processors and one or more memories configured to perform a plurality of operations, the plurality of operations including: identifying a plurality of pieces of information associated with a telemetry system; constructing a permutation matrix for use with the telemetry system; extracting one or more parameters for use in the permutation matrix based at least in part on the plurality of pieces of information associated with the telemetry system; performing a plurality of iterations using the permutation matrix based at least in part on the extracted one or more parameters for use in the permutation matrix; and providing a final telemetry geometry to the telemetry system.

[0080]

[0088] Article 16. The computing system of clause 15, wherein the plurality of pieces of information associated with the telemetry system include one or more aviation data containers, a phase of flight, a data rate for each aviation data container per format, a word geometry, an input window size time, or a combination thereof.

[0081]

[0089] Article 17. 17. The computing system of clause 15 or 16, wherein the operations further include constructing frame arrivals based at least in part on the information associated with the telemetry system.

[0082]

[0090] Article 18. 18. The computing system of any one of clauses 15 to 17, wherein providing the final telemetry geometry to the telemetry system comprises performing multiple types of the multiple iterations.

[0083]

[0091] Article 19. 19. The computing system of claim 18, wherein the plurality of iterations of the plurality of classes are based on one or more of a cylindrical domain and an elliptical domain.

[0084]

[0092] Article 20. 18. The computing system of any one of clauses 15 to 17, wherein providing the final telemetry geometry to the telemetry system includes refining the multiple iterations.

[0085]

[0093] Article 21. 21. The computing system of any one of clauses 15 to 20, wherein the instructions further include optimizing at least a portion of the plurality of pieces of information associated with the telemetry system, and using the at least a portion of the plurality of pieces of information associated with the telemetry system after optimization as a hardware configuration file.

[0086]

[0094] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the present disclosure. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, including any multiple steps performed by a computer / processor, unless the context clearly dictates otherwise. As used herein, the phrase "at least one of A, B, and C" should be interpreted to mean a non-exclusive logical OR (A OR B OR C) and not to mean "at least one of A, at least one of B, and at least one of C." As another example, "at least one of A and B" (etc.) and "at least one of A or B" (etc.) should be interpreted to cover A only, B only, or both A and B. It will be further understood that the terms "comprises" and / or "comprising," when used in this specification, specify the presence of stated features, entities, steps (not necessarily in a particular order), operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, entities, steps (not necessarily in a particular order), operations, elements, components, and / or groups thereof. While example sizes / models / values / ranges may be given, examples are not limited thereto.

[0087]

[0095] As used herein, the terms “coupled,” “connected,” “adjacent,” “transmit,” “receive,” “connected,” “engaged,” “coupled,” “adjacent,” “next to,” “over,” “above,” “below,” “abut,” and “disposed” refer to any kind of relationship, direct or indirect, between the components in question and may apply to electrical, mechanical, fluid, optical, electromagnetic, electromechanical, or other connections. Furthermore, terms such as “first,” “second,” etc. are used herein for ease of explanation only and do not have any particular temporal or chronological significance unless otherwise expressly stated. The term “cause” or “cause” means to cause, compel, direct, command, indicate, and / or enable an event or action to occur, or at least to cause such an event or action to occur, in a direct or indirect manner. The term “set” does not necessarily exclude empty sets; in other words, in some situations, a “set” may have no elements. The term “non-empty set” may be used to indicate the exclusion of an empty set. That is, a non-empty set must have one or more elements, although this term need not be used specifically. The term "subset" does not necessarily require a proper subset. In other words, a "subset" of a first set may be coextensive (equivalent) with the first set. Furthermore, the term "subset" does not necessarily exclude an empty set. In some circumstances, a "subset" may have no elements.

[0088]

[0096] It is intended to include corresponding structure, material, acts, and equivalents (e.g., all means- or step-plus-function elements) that may fall within the scope of the following claims, including any structure, material, or act that is specifically claimed and performs a function in combination with other claimed elements. While the present disclosure describes structures that correspond to claimed elements, these elements do not necessarily invoke a means-plus-function interpretation unless the "means for" designation is explicitly used. Unless otherwise indicated, the description of ranges of values ​​is intended merely to serve as a shorthand for individually referencing each individual value falling within the range, and each individual value is incorporated herein as if individually described. While the figures divide elements of the present disclosure into various functional or operational blocks, these divisions are for illustrative purposes only. In accordance with the principles of the present disclosure, functions may be combined in other ways, such that some or all functionality from multiple individually depicted blocks may be implemented in a single functional block. Similarly, functions depicted in a single block may be separated into multiple blocks. Unless expressly stated to be mutually exclusive, features depicted in different figures may be combined consistent with the principles of the present disclosure.

[0089]

[0097] The description of the present disclosure has been presented for purposes of illustration and description and is not intended to be exhaustive or to limit the disclosure to the disclosed form. Numerous modifications, variations, substitutions, and any combination thereof will become apparent to those skilled in the art after reading this disclosure without departing from the scope and spirit of the examples of the present disclosure. The embodiment(s) illustrate the principles and practical applications of the present disclosure, and various embodiment(s) with various modifications and / or any combination of embodiment(s) as may be suitable for the particular use contemplated have been selected and described to enable those skilled in the art to understand the present disclosure. Features of any dependent claim may be combined with features of the independent claim or any other dependent claim.

[0090]

[0098] Thus, while the disclosure of the present application has been described in detail and by reference to embodiment(s) thereof, it will be apparent that modifications, variations, and any combination of the embodiment(s) (including any modifications, variations, substitutions, and combinations thereof) are possible without departing from the scope of the disclosure, as defined in the appended claims.

Claims

1. 1. A computer-implemented method comprising: Identifying (300), by a computing device (215), a plurality of pieces of information associated with the telemetry system (500) (400); constructing (302) a permutation matrix (800) for use with said telemetry system (500) (400); extracting (304) one or more parameters for use in the permutation matrix (800) based at least in part on the plurality of pieces of information associated with the telemetry systems (500) (400); performing (306) a plurality of iterations (600) using the permutation matrix (800) based at least in part on the extracted one or more parameters used in the permutation matrix (800); and providing a final telemetry geometry to the telemetry system (500) (400).

2. 2. The computer-implemented method of claim 1, wherein the plurality of pieces of information associated with the telemetry system (500) (400) comprises an air data container, a phase of flight, a data rate of each air data container by format, a word geometry, an input window size time, or a combination thereof.

3. 2. The computer-implemented method of claim 1, further comprising: constructing (314) a plurality of frame arrivals based at least in part on the plurality of pieces of information associated with the telemetry system (500) (400).

4. 2. The computer-implemented method of claim 1, wherein providing the final telemetry geometry to the telemetry system includes performing the multiple iterations of multi-classification.

5. 5. The computer-implemented method of claim 4, wherein the multiple iterations of the multi-classification are based on one or more of cylindrical and elliptical regions.

6. 2. The computer-implemented method of claim 1, wherein providing the final telemetry geometry to the telemetry system includes refining the multiple iterations.

7. optimizing (316) at least a portion of the plurality of pieces of information associated with the telemetry system (500) (400); and 2. The computer-implemented method of claim 1, further comprising using (318) the at least a portion of the plurality of pieces of information associated with the optimized telemetry system (500) (400) as a hardware configuration file.

8. 1. A computer program product resident on a computer-readable storage medium having a plurality of instructions stored thereon, the plurality of instructions, when executed across one or more processors, causing at least a portion of the one or more processors to perform a plurality of operations, the plurality of operations comprising: Identifying a plurality of pieces of information associated with the telemetry system (500) (400); constructing a permutation matrix (800) for use with said telemetry system (500) (400); deriving one or more parameters for use in the permutation matrix (800) based at least in part on the plurality of pieces of information associated with the telemetry systems (500) (400); performing (310) a plurality of iterations (600) using the permutation matrix (800) based at least in part on the extracted one or more parameters used in the permutation matrix (800); and providing a final telemetry geometry to said telemetry system (500) (400).

9. 9. The computer program product of claim 8, wherein the plurality of pieces of information associated with the telemetry system include an air data container, a phase of flight, a data rate for each air data container per format, a word geometry, an input window size time, or a combination thereof.

10. 10. The computer program product of claim 8, wherein the operations further comprise constructing frame arrivals based at least in part on the information associated with the telemetry system.

11. 11. The computer program product of claim 10, wherein providing the final telemetry geometry to the telemetry system comprises performing the multiple iterations of multi-classification.

12. 12. The computer program product of claim 11, wherein the multiple iterations of the multi-classification are based on one or more of a cylindrical region and an elliptical region.

13. 10. The computer program product of claim 8, wherein providing the final telemetry geometry to the telemetry system includes refining the multiple iterations.

14. The plurality of instructions: optimizing at least a portion of the plurality of pieces of information associated with a flight simulation; and The computer program product of claim 8 , further comprising using the at least a portion of the plurality of pieces of information associated with the optimized flight simulation as a hardware configuration file.

15. A computing system (500) (400) including one or more processors and one or more memories configured to perform a plurality of operations, Identifying a plurality of pieces of information associated with the telemetry system (500) (400); constructing a permutation matrix (800) for use with said telemetry system (500) (400); deriving one or more parameters for use in the permutation matrix (800) based at least in part on the plurality of pieces of information associated with the telemetry systems (500) (400); performing (310) a plurality of iterations (600) using the permutation matrix (800) based at least in part on the extracted one or more parameters used in the permutation matrix (800); and A computing system (500) (400) including providing final telemetry geometry to said telemetry system (500) (400).

16. 16. The computing system (500) (400) of claim 15, wherein the plurality of pieces of information associated with the telemetry system (500) (400) include an air data container, a phase of flight, a data rate of each air data container per format, a word geometry, an input window size time, or a combination thereof.

17. 16. The computing system (500) (400) of claim 15, wherein the operations further comprise constructing a plurality of frame arrivals based at least in part on the plurality of information associated with the telemetry system (500) (400).

18. 20. The computing system (500) (400) of claim 17, wherein providing the final telemetry geometry to the telemetry system (500) (400) comprises performing (310) the multiple iterations (600) of multi-classification (900b) (900a) (808).

19. 20. The computing system of claim 18, wherein the multiple iterations of the multi-classification are based on one or more of cylindrical and elliptical regions.

20. 16. The computing system (500) (400) of claim 15, wherein providing the final telemetry geometry to the telemetry system (500) (400) comprises refining (312) the multiple iterations (600).