An aircraft cluster simulation method based on optical fiber reflection memory
Patent Information
- Application Number
- CN202311739778.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-18
- Publication Date
- 2026-09-29
- Estimated Expiration
- 2043-12-18
AI Technical Summary
[0004]鉴于上述的分析,本发明实施例旨在提供一种基于光纤反射内存的飞行器集群仿真方法,用以解决现有飞行器集群仿真节点无法根据多样化的仿真任务,自动地、动态地竞争仿真任务并提供仿真计算的问题
[0047]1、本发明所述的仿真方法,可以动态构建仿真场景、实现对包含多模型、多仿真模式的飞行器集群任务的仿真,降低了实验测试系统的成本;
Smart Images

Figure CN117725739B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of aircraft cluster simulation technology, and in particular to an aircraft cluster simulation method based on fiber optic reflection memory. Background Technology
[0002] The hardware-in-the-loop simulation of the aircraft cluster adopts a distributed simulation system, which contains several simulation nodes. Each simulation node is a flight node and includes a simulation computer and a fiber optic reflective memory board. To meet the real-time requirements of system data interaction, a fiber optic reflective memory network is used to achieve data sharing.
[0003] Since the flight control equipment connected to the hardware-in-the-loop simulation system is different each time, and the number and type of simulation tasks to be run each time are diverse, how to enable the simulation nodes connected to the fiber optic reflection network to form a self-organizing network to compete for tasks, realize automatic task allocation, and provide dynamic and random simulation computing services for the system is an urgent problem to be solved in the hardware-in-the-loop simulation process. To this end, this invention proposes an aircraft cluster simulation method based on fiber optic reflection memory. Summary of the Invention
[0004] Based on the above analysis, the embodiments of the present invention aim to provide an aircraft cluster simulation method based on fiber optic reflection memory, in order to solve the problem that existing aircraft cluster simulation nodes cannot automatically and dynamically compete for simulation tasks and provide simulation calculations according to diverse simulation tasks.
[0005] This invention provides a method for simulating aircraft clusters based on fiber optic reflection memory, including a pre-simulation network competition task phase and a simulation phase; wherein,
[0006] The network competition task phase includes: determining one scheduling node and N computing nodes from all simulation nodes, and obtaining the attributes of each computing node; the scheduling node issues a simulation task list including Num_R subtasks; each computing node joins the fiber optic reflection memory network, reads the subtasks issued by the scheduling node, and competes for subtasks with the same attributes as itself until all subtasks are allocated.
[0007] The simulation phase includes: the scheduling node issuing a simulation start command, causing each computing node to start its simulation thread and wait for start control; the scheduling node issuing a flight zero-point command, causing the required computing nodes to run the simulation task; the scheduling node updating the external input of the model and sending it to the corresponding computing nodes, and the computing nodes updating the model output to obtain the simulation results; after the simulation task is completed, the scheduling node issuing a simulation stop command, causing each computing node to exit the fiber optic reflection memory network.
[0008] Specifically, the attributes include simulation mode and model number; the number of models is M, and the model numbers are m = 1, 2, ..., M;
[0009] The simulation modes include mathematical simulation mode and hardware-in-the-loop simulation mode, and the computing nodes include hardware-in-the-loop simulation nodes and mathematical simulation nodes; any mathematical simulation node can provide mathematical simulation calculations for all models, and any hardware-in-the-loop simulation node can provide hardware-in-the-loop simulation calculations for its corresponding model.
[0010] Specifically, the simulation task list {R} r Any subtask R in} r The simulation mode is mathematical simulation or hardware-in-the-loop simulation, and the model number is R. r _m requires one compute node to execute; where r = 1, 2, ..., Num_R.
[0011] Specifically, each computing node reads the subtasks issued by the scheduling node and competes for subtasks with the same attributes as itself, including:
[0012] Step S1: Each computing node reads each subtask and obtains its own executable subtask queue based on its own attributes and the attributes of the subtasks. Among them, all mathematical simulation nodes have the same subtask queue, which contains all mathematical simulation tasks. All subtasks in the subtask queue i_R of any half of the physical simulation nodes i have the same simulation mode and model number.
[0013] Step S2: Several computing nodes with the same subtask queue are classified as nodes of the same type. Each computing node in each type of node competes for subtasks from the corresponding subtask queue according to the task competition algorithm.
[0014] Step S3: Wait for all subtasks in all subtask queues to be assigned, and the task competition phase ends.
[0015] Specifically, the task competition algorithm includes: step S201, setting different random delay times for each computing node in the same type of node L;
[0016] Step S202: Define the competition node count CN, with an initial value of 0; define the allocation status of each subtask in the subtask queue as "unallocated"; define the competition status of each computing node in the same type of node L as "not competing"; each computing node performs the following operations:
[0017] Step SS1: After the delay time is reached, update the competing node count and set CN = CN + 1;
[0018] Step SS2, Hibernation T max Waiting for all computing nodes to complete the counting; the T max This represents the maximum value among the latency times of each computing node;
[0019] Step SS3: Read the allocation status of the first task in the subtask queue; if it is "unallocated", the compute node will preempt the first task, change the task status to "allocated", update the competing node count, set CN = CN-1, and change the compute node's own competing status to "competitive"; if it is "allocated", update the node count, set CN = CN-1.
[0020] Step SS4: When CN is reduced to 0, it means that all participating nodes have withdrawn from the competition for the first task in the subtask queue. Then, remove the first task in the subtask queue, obtain the updated subtask queue, remove the "competing" computing nodes from the same type of nodes L, and obtain the updated same type of nodes L.
[0021] Step S203: Based on the updated same-type node L and the updated subtask queue, repeat steps S201-S203.
[0022] Specifically, setting different random delay times for each computing node in the same type of node L involves the following steps:
[0023] Using the return value of the GetTickCount() function as the random number seed, and employing the mt19937 random number engine, a random number generator is generated that is uniformly distributed in [T]. min ,T max Several random numbers within the interval are used as the delay time for each computing node; the number of random numbers is the same as the number of computing nodes in the same type of node L.
[0024] Specifically, the scheduling node issues a simulation task list comprising Num_R subtasks, and the specific operation is as follows:
[0025] The scheduling node writes task instructions into the fiber address range starting at address A2, which includes the number of tasks and the task number.
[0026] The scheduling node writes the simulation mode of each task into the fiber address range starting at address A3;
[0027] The scheduling node writes the model number of each task into the fiber address range with the first address being A4;
[0028] The specific operation for defining the allocation status of each subtask in the subtask queue is as follows:
[0029] Determine the fiber optic address range with the starting address A5, and write the corresponding allocation status for each task.
[0030] The computing node reads the allocation status of the first task in the subtask queue, specifically by:
[0031] Read the data within the fiber optic address range starting at address A5 to obtain the corresponding allocation status of the task.
[0032] Specifically, the scheduling node updates the external input to the model, and the specific operation is as follows:
[0033] Select the fiber optic address range with the starting address A9;
[0034] Based on the task number i to which the model number belongs, obtain the offset p of the external input write address of the model relative to A9. i Calculate according to the following formula:
[0035] p i =0x1000×(i-1);
[0036] Offset p at A9 i At this point, the external input quantity of the model is written;
[0037] The specific operation for updating the model output by the computing node is as follows:
[0038] Select the fiber optic address range with the starting address A10;
[0039] Based on the task number i to which the model number belongs, obtain the offset q of the model's output data write address relative to A10. i Calculate according to the following formula:
[0040] q i =0x1000×(i-1);
[0041] Offset q at A10 i Write the output data of the model at that location.
[0042] Specifically, after the simulation task is completed, each computing node exits the fiber optic reflection memory network. The specific operation is as follows:
[0043] The scheduling node monitors the task running status, records the number and quantity of completed tasks, compares them with the issued simulation subtasks, and issues a simulation stop command when the number of completed tasks is equal to the number of issued simulation subtasks.
[0044] After each computing node reads the simulation stop command, it exits the fiber optic reflection memory network.
[0045] Furthermore, the simulation start command and simulation stop command issued by the scheduling node are both written in the fiber optic address range of the first address A1; the flight zero point command is written in the fiber optic address range of the first address A7; and the number and quantity of completed tasks are written in the fiber optic address range of the first address A8.
[0046] Compared with the prior art, the present invention can achieve at least one of the following beneficial effects:
[0047] 1. The simulation method described in this invention can dynamically construct simulation scenarios and realize the simulation of aircraft cluster missions containing multiple models and multiple simulation modes, thereby reducing the cost of experimental testing systems;
[0048] 2. Before executing the simulation task, a self-organizing network is implemented using a network competition task algorithm, so that each simulation node can automatically preempt its own executable task from the total simulation task according to its own attributes.
[0049] 3. The use of segmented address management for each simulation instruction simplifies the compilation process. On the other hand, it eliminates the need to configure operation addresses for each computing node connected to the fiber optic reflective memory network, thus avoiding the tedious and error-prone work caused by manually configuring fiber optic addresses. For example, by writing the task allocation status word within the A5 address range, competing computing nodes do not need to read the task allocation status from other computing nodes, and therefore do not need to set operation addresses for computing nodes, thereby achieving automatic allocation.
[0050] 4. In the task competition algorithm, nodes of the same type compete for elements in their subtask queues in multiple rounds. Each round sets a delay time for each computing node, which can avoid fluctuations during program operation that could cause two computing nodes with different delay times to start at the same time and compete for tasks, thus causing conflicts. Setting a delay time for each round of competition can effectively reduce data conflicts caused by program fluctuations.
[0051] In this invention, the above-described technical solutions can be combined with each other to achieve more preferred combinations. Other features and advantages of this invention will be set forth in the following description, and some advantages may become apparent from the description or be learned by practicing the invention. The objects and other advantages of this invention can be realized and obtained from what is particularly pointed out in the description and drawings. Attached Figure Description
[0052] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Throughout the drawings, the same reference numerals denote the same parts.
[0053] Figure 1 This is a flowchart of the aircraft cluster simulation method based on fiber optic reflective memory network described in this invention;
[0054] Figure 2 This is a schematic diagram of the actions and time of each computing node in this round of task competition. Detailed Implementation
[0055] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which form part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not intended to limit the scope of the present invention.
[0056] A specific embodiment of the present invention discloses a method for simulating aircraft clusters based on fiber optic reflective memory networks, such as... Figure 1 As shown, the simulation includes: a pre-simulation network competition task phase and a simulation phase. The network competition task phase includes: determining one scheduling node and N computing nodes, and obtaining the attributes of the N computing nodes, including simulation mode and model number; the scheduling node issuing a simulation task list containing Num_R subtasks, each subtask having the attributes of simulation mode and model number; each computing node joining the fiber optic reflection memory network, reading the subtasks issued by the scheduling node, and competing for subtasks with the same attributes as itself until all subtasks are allocated; the simulation phase includes: the scheduling node issuing a simulation start command, causing each computing node to start its simulation thread and wait for start control; the scheduling node issuing a flight zero-point command, causing the computing nodes to start the simulation; the scheduling node monitoring the model output of the computing nodes and updating the external input of the model, sending the updates to the corresponding computing nodes; the computing nodes updating the model output to obtain simulation results; after the simulation task is completed, the scheduling node issuing a simulation stop command, causing each computing node to exit the fiber optic reflection memory network.
[0057] Specifically, the attributes of each computing node include: simulation mode and model number. Among the N computing nodes, some computing nodes are connected to the flight control equipment to provide hardware-in-the-loop simulation. Each hardware-in-the-loop simulation node has a corresponding model number m, which is consistent with the program burned into the flight control equipment it is connected to, where m = 1, 2, ..., M, and M is the number of models. The remaining computing nodes are not connected to the flight control equipment and provide mathematical simulation. Unlike the hardware-in-the-loop simulation nodes, any mathematical simulation node can provide mathematical simulation calculations for all models, and its model number is independent of the flight control equipment.
[0058] Specifically, the attributes of each simulation subtask in the simulation task list are shown in Table 1. The simulation task list is divided into two sub-lists according to the simulation mode: the mathematical simulation task list and the mathematical simulation task list. and hardware-in-the-loop simulation task list Num0 and Num1 represent the number of mathematical simulation tasks and the number of semi-physical simulation tasks, respectively. Num_R = Num0 + Num1, and each subtask requires a computing node to execute.
[0059] Before implementation, data storage addresses were pre-allocated for various types of data, including task instructions, task simulation modes, model numbers required for the task, simulation start / stop instructions, flight zero-point instructions, external input data of the model, output data of the model, and instructions for ending the task, as shown in Table 2.
[0060] Table 1 Attributes of each simulation subtask
[0061]
[0062] During implementation, the scheduling node issues the simulation task list by writing task instructions in the fiber optic address range starting with A2, task simulation modes in the fiber optic address range starting with A3, and task model numbers in the fiber optic address range starting with A4. For example, a task instruction consists of 128 bits, with the least significant bit being little-endian. A 1 in the i-th bit indicates that task number i requires simulation computing services from a computing node. A maximum of 128 tasks are supported. For instance, a task instruction of 0xFF indicates that 8 tasks are issued. The simulation mode instructions are numbered 1-8 respectively. The least significant bit is little-endian. The i-th bit of the instruction is 1 or 0, which indicates that the simulation mode of task i is hardware-in-the-loop simulation or mathematical simulation. For example, if the simulation mode instruction is 0x1F, it means that among the 8 tasks, tasks numbered 1-6 are hardware-in-the-loop simulations and tasks numbered 7-8 are mathematical simulations. The model number that each task needs to run is stored in an address consisting of a base address and an offset. For example, the offset of the model number that task i needs to run is 4(i-1).
[0063] Table 2 Storage addresses of various data types
[0064] A1 Simulation start / stop commands 0x22 or 0x33 0x11 indicates enabled, 0x33 indicates disabled. A2 Task Instructions 0xFF There are 8 tasks in total, numbered 1-8. A3 Task simulation mode 0x1F Tasks numbered 1-5 are hardware-in-the-loop simulations, and tasks numbered 6-8 are mathematical simulations. A4 Task model number Write address is A4 offset 4(i-1) i is the task number, and 4(i-1) is the base address offset. A5 Task allocation status 0x3A Tasks numbered 2 and 4-6 have been assigned; tasks numbered 1, 3, 7, and 8 have not been assigned. A7 Flight Zero Point Command 0x3F Tasks numbered 1-6 have started running, while tasks numbered 7-8 are waiting. A8 Run the command to terminate the task 0xF1 Tasks numbered 1 and 5-8 have finished running, while tasks numbered 2-4 are still running. A9 External input data of the model Write to address A9 offset 0x1000*(i-1) i is the task number, and 0x1000*(i-1) is the base address offset. A10 Model output data Write to address A10 offset 0x1000*(i-1) i is the task number, and 0x1000*(i-1) is the base address offset.
[0065] Specifically, each computing node reads the subtasks issued by the scheduling node and competes for subtasks with the same attributes as itself, including:
[0066] Step S1: Each computing node reads each subtask and obtains its own executable subtask queue based on its own attributes and the attributes of the subtasks. Among them, all mathematical simulation nodes have the same subtask queue, which contains all mathematical simulation tasks. All subtasks in the subtask queue i_R of any half of the physical simulation nodes i have the same simulation mode and model number.
[0067] Step S2: Several computing nodes with the same subtask queue are classified as nodes of the same type. Each computing node in each type of node competes for subtasks from the corresponding subtask queue according to the task competition algorithm.
[0068] Step S3: Wait for all subtasks in all subtask queues to be assigned, and the task competition phase ends.
[0069] Table 3 shows the contents of each node of the same type and its corresponding subtask queue.
[0070] Table 3. Similar nodes and their corresponding subtask queues
[0071]
[0072] Specifically, each computing node within each type of node, according to a task contention algorithm, preempts a subtask from the corresponding subtask queue. The task contention algorithm includes:
[0073] Step S201: Set different random delay times for each computing node in the same type of node L;
[0074] Step S202: Define the contention node count CN, with an initial value of 0; define the allocation status of each subtask in the subtask queue as "unallocated"; such as Figure 2 As shown, each compute node performs the following operations:
[0075] Step SS1: After the delay time is reached, update the competing node count and set CN = CN + 1;
[0076] Step SS2, Hibernation T max Waiting for all computing nodes to complete the counting; the T max This represents the maximum value among the latency times of each computing node;
[0077] Step SS3: Read the allocation status of the first task in the subtask queue; if it is "unallocated", the computing node will preempt the first task, change the task status to "allocated", update the competing node count, set CN = CN-1, and at the same time, the computing node that preempted the task will wait for the scheduling node to issue the simulation start command, start the simulation thread, and wait for start control; if it is "allocated", update the node count and set CN = CN-1.
[0078] Step SS4: Once CN is reduced to 0, it means that all participating nodes have withdrawn from the competition for the first task in the subtask queue. Then, remove the first task from the subtask queue and obtain the updated subtask queue.
[0079] Step S203: The computing node that has preempted the task exits the same type of node L and no longer participates in subsequent task competition; determine whether the updated subtask queue element is empty. If so, repeat steps S201-S203 based on the updated subtask queue; otherwise, the task allocation for the subtask queue is complete.
[0080] Figure 2 The delay time of node A is T A Let T be the shortest delay time, and let T be the delay time of node N. max , which is the longest delay time.
[0081] For example, setting a delay time for each computing node in the current computing node list specifically involves the following steps:
[0082] Using the return value of the GetTickCount() function as the random number seed, and employing the mt19937 random number engine, a random number generator is generated that is uniformly distributed in [T]. min ,T max Several random numbers within the specified interval are used as the delay time for each computing node; the number of random numbers is the same as the number of computing nodes in the current computing node list. Setting multiple rounds of delay time for each computing node can avoid data conflicts caused by simultaneous task contention of fiber optic reflector cards powered on at the same time.
[0083] Specifically, the allocation status of each subtask in the subtask queue is defined as follows:
[0084] Determine the fiber optic address range with the starting address A5, and write the corresponding allocation status for each task.
[0085] The computing node reads the allocation status of the first task in the subtask queue, specifically by:
[0086] Read the data within the fiber optic address range starting at address A5 to obtain the corresponding allocation status of the task.
[0087] Specifically, after the simulation task is completed, each computing node exits the fiber optic reflection memory network. The specific operation is as follows:
[0088] The scheduling node monitors the task running status, records the number and quantity of tasks that have finished running, and compares them with the issued simulation subtasks. When the number of tasks that have finished running is equal to the number of issued simulation subtasks, a simulation stop command is issued.
[0089] After each computing node reads the simulation stop command, it exits the fiber optic reflection memory network.
[0090] During implementation, after all simulation tasks are assigned, the scheduling node issues a simulation start command by writing the start command into the fiber optic address range starting at address A1. For example, the start command can be set to 0x22. The computing node that wins the task reads the simulation start command, starts multithreading, and waits for control to begin. The scheduling node, based on demand, issues a flight zero-point command, specifying the tasks to be run. That is, the node executing the corresponding task begins the simulation. For example, the scheduling node writes a flight zero-point command of 0x3F into the fiber optic address range starting at address A7, indicating that tasks numbered 1-6 need to start running. The nodes that win the competition for these tasks begin executing them, while tasks numbered 7-8 are still waiting. During the simulation, the scheduling node updates the external input data of the corresponding task model into the fiber optic address range starting at address A9. For example, when executing a target strike task, the input data is the target's real-time motion parameters. The storage of this input data... The address consists of a base address and an offset. For example, for task number i, the offset of its model input data storage address is 0x1000*(i-1). During the simulation, the model output of each computing node is written into the fiber address range with A10 as the starting address. The storage address consists of a base address and an offset. For example, for task number i, the offset of its model output storage address is 0x1000*(i-1). The scheduling node monitors the running status of the task and writes the task termination instruction into the fiber address range with A8 as the starting address. For example, if tasks numbered 1 and 5-8 have finished running, but tasks numbered 2-4 are still running, 0xF1 is written. When all subtasks have finished running, i.e., when the task termination instruction is 0xFF, the scheduling node writes the simulation stop instruction into the fiber address range with A1 as the starting address, such as 0x33. After each computing node reads the simulation stop instruction, it exits the fiber reflection memory network.
[0091] In summary, the aircraft cluster simulation method based on fiber optic reflective memory network described in this invention can achieve at least one of the following beneficial effects:
[0092] 1. The simulation method described in this invention can dynamically construct simulation scenarios and realize the simulation of aircraft cluster missions containing multiple models and multiple simulation modes, thereby reducing the cost of experimental testing systems;
[0093] 2. Before executing the simulation task, a self-organizing network is implemented using a network competition task algorithm, so that each simulation node can automatically preempt its own executable task from the total simulation task according to its own attributes.
[0094] 3. The use of segmented address management for each simulation instruction simplifies the compilation process. On the other hand, it eliminates the need to configure operation addresses for each computing node connected to the fiber optic reflective memory network, thus avoiding the tedious and error-prone work caused by manually configuring fiber optic addresses. For example, by writing the task allocation status word within the A5 address range, competing computing nodes do not need to read the task allocation status from other computing nodes, and therefore do not need to set operation addresses for computing nodes, thereby achieving automatic allocation.
[0095] 4. In the task competition algorithm, nodes of the same type compete for elements in their subtask queues in multiple rounds. Each round sets a delay time for each computing node, which can avoid fluctuations during program operation that could cause two computing nodes with different delay times to start at the same time and compete for tasks, thus causing conflicts. Setting a delay time for each round of competition can effectively reduce data conflicts caused by program fluctuations.
[0096] Those skilled in the art will understand that all or part of the processes of the methods described in the above embodiments can be implemented by a computer program instructing related hardware, and the program can be stored in a computer-readable storage medium. The computer-readable storage medium may be a disk, optical disk, read-only memory, or random access memory, etc.
[0097] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for simulating aircraft clusters based on fiber optic reflection memory, characterized in that, This includes the pre-simulation network competition task phase and the simulation phase; among which, The network competition task phase includes: determining one scheduling node and N computing nodes from all simulation nodes, and obtaining the attributes of each computing node; the scheduling node issues a simulation task list including Num_R subtasks; each computing node joins the fiber optic reflection memory network, reads the subtasks issued by the scheduling node, and competes for subtasks with the same attributes as itself until all subtasks are allocated. The simulation phase includes: the scheduling node issuing a simulation start command, causing each computing node to start its simulation thread and wait for start control; the scheduling node issuing a flight zero-point command, causing the required computing nodes to run the simulation task; the scheduling node updating the model's external input values and sending them to the corresponding computing nodes, and the computing nodes updating the model's output values to obtain the simulation results; after the simulation task is completed, the scheduling node issuing a simulation stop command, causing each computing node to exit the fiber optic reflection memory network. Each computing node reads the subtasks issued by the scheduling node and competes for subtasks with the same attributes as itself, including: Step S1: Each computing node reads each subtask and, based on its own attributes and the attributes of the subtasks, obtains its own executable subtask queue; among them, all mathematical simulation nodes share the same subtask queue, containing all mathematical simulation tasks, and any half of the physical simulation nodes... All subtasks in the subtask queue i_R have the same simulation mode and model number; Step S2: Several computing nodes with the same subtask queue are classified as nodes of the same type. Each computing node in each type of node competes for subtasks from the corresponding subtask queue according to the task competition algorithm. Step S3: Wait for all subtasks in all subtask queues to be assigned, and the task competition phase ends; The task competition algorithm includes: step S201, setting different random delay times for each computing node in the same type of node L; Step S202: Define the contention node count CN, with an initial value of 0; define the allocation status of each subtask in the subtask queue as "unallocated"; each computing node performs the following operations: Step SS1: After the delay time is reached, update the competing node count and set CN = CN + 1; Step SS2, hibernation Waiting for all computing nodes to complete the counting; This represents the maximum value among the latency times of each computing node. Step SS3: Read the allocation status of the first task in the subtask queue; if it is "unallocated", the computing node will preempt the first task, change the task status to "allocated", update the competing node count, set CN=CN-1, and at the same time, the computing node that preempted the task will wait for the scheduling node to issue the simulation start command, start the simulation thread, and wait for start control; if it is "allocated", update the node count and set CN=CN-1. Step SS4: Once CN is reduced to 0, it means that all participating nodes have withdrawn from the competition for the first task in the subtask queue. Then, remove the first task from the subtask queue and obtain the updated subtask queue. Step S203: The computing node that has preempted the task exits the same type of node L and no longer participates in subsequent task competition; determine whether the updated subtask queue is empty. If not, repeat steps S201-S203 based on the updated subtask queue; otherwise, the task allocation for the subtask queue is complete. The scheduling node issues a simulation task list containing Num_R subtasks, and the specific operation is as follows: The scheduling node writes task instructions into the fiber address range starting at address A2, which includes the number of tasks and the task number. The scheduling node writes the simulation mode of each task into the fiber address range starting at address A3; The scheduling node writes the model number of each task into the fiber address range with the first address being A4; The specific operation for defining the allocation status of each subtask in the subtask queue is as follows: Determine the fiber optic address range with the starting address A5, and write the corresponding allocation status word for each task. The computing node reads the allocation status of the first task in the subtask queue, specifically by: Read the data within the fiber optic address range starting at address A5 to obtain the corresponding allocation status word for the task.
2. The aircraft cluster simulation method based on fiber optic reflection memory according to claim 1, characterized in that, The attributes include simulation mode and model number; the number of models is M, and the model number is... ; The simulation modes include mathematical simulation mode and hardware-in-the-loop simulation mode, and the computing nodes include hardware-in-the-loop simulation nodes and mathematical simulation nodes; any mathematical simulation node can provide mathematical simulation calculations for all models, and any hardware-in-the-loop simulation node can provide hardware-in-the-loop simulation calculations for its corresponding model.
3. The aircraft cluster simulation method based on fiber optic reflection memory according to claim 2, characterized in that, The simulation task list Any subtask The simulation mode is mathematical simulation or hardware-in-the-loop simulation, and the model number is [model number missing]. It requires one compute node to execute; among which .
4. The aircraft cluster simulation method based on fiber optic reflection memory according to claim 1, characterized in that, The specific operation of setting different random delay times for each computing node in the same type of node L is as follows: Using the return value of the GetTickCount() function as the random number seed, and employing the mt19937 random number engine, a uniformly distributed random number generator is generated. Several random numbers within the interval are used as the delay time for each computing node; the number of random numbers is the same as the number of computing nodes in the same type of node L.
5. The aircraft cluster simulation method based on fiber optic reflection memory according to claim 1, characterized in that, The scheduling node updates the external input of the model, specifically by: Select the fiber optic address range with the starting address A9; Based on the task number to which the model number belongs. Obtain the offset of the external input write address of the model relative to A9. Calculate according to the following formula: Offset at A9 At this point, the external input quantity of the model is written; The specific operation for updating the model output by the computing node is as follows: Select the fiber optic address range with the starting address A10; Based on the task number to which the model number belongs. Obtain the offset of the model's output data write address relative to A10. Calculate according to the following formula: Offset at A10 Write the output data of the model at that location.
6. The aircraft cluster simulation method based on fiber optic reflection memory according to claim 5, characterized in that, After the simulation task is completed, each computing node exits the fiber optic reflection memory network. The specific operation is as follows: The scheduling node monitors the task running status, records the number and quantity of completed tasks, compares them with the issued simulation subtasks, and issues a simulation stop command when the number of completed tasks is equal to the number of issued simulation subtasks. After each computing node reads the simulation stop command, it exits the fiber optic reflection memory network.
7. The aircraft cluster simulation method based on fiber optic reflection memory according to claim 6, characterized in that, The simulation start and stop commands issued by the scheduling node are both written in the fiber optic address range of the first address A1; the flight zero point command is written in the fiber optic address range of the first address A7; and the number and quantity of completed tasks are written in the fiber optic address range of the first address A8.
Citation Information
Patent Citations
Data communication method of semi-physical simulation system based on reflective memory network
CN114047712A
Intelligent ammunition cooperative combat system evaluation simulation platform based on RTX
CN116266061A