Vous êtes sur la page 1sur 3

environments and in detail the ones concerning the data

Augmenting the number of entities in Real-Time


Distributed Virtual Environments using Field
Programmable Gate Arrays
Danny Hocka Lugo
School of Electrical and
Computer Engineering
Air Force Institute of Technology
45419 Dayton, Ohio
Email: daniel.lugo@at.edu
AbstractThis paper explores real-time distributed virtual
environments and the use of Field Programmable Gate Arrays
(FPGAs) to augment the number of entities in a simulation that
uses the Distributed Interactive Simulation (DIS) standard. The
DIS standard defines a network protocol for simulations to
communicate with each other. The FPGAs will be used to send
DIS data packets that will represent the entities in the virtual
environment. We will look into using several FPGAs to simulate
different entities and how it helps to free some processing power
on the entity generators for the human controlled entities.

I.

INTRODUCTION

Real-time distributed virtual environments are used for


many applications. These virtual environments allow people
to communicate and interact even though they are not in the
same location. They could be used for meetings, training,
simulations or even entertainment. Our focus is on the use of
these distributed virtual environments for military training.
By using these distributed virtual environments, we can train
without the risk and higher cost associated with using real
aircrafts, boats, weapons or ammunition. By incorporating
graphics and audio in an appropriate way these real-time
distributed environments can provide users a sense of realism
that would be beneficial for training.
There are several components that are used to create a realtime distributed virtual environment. First we have graphics
engine and display which provide the user with a visual
representation of the environment. The graphic engine is in
charge of generating the images for the displays. The
processing systems receive messages and events, and
determine when and how to notify the users. We also need
some sort of control and communication device to help the
user interact with objects and other players in this real-time
distributed virtual environment. Last we have the network
which is used to exchange messages and information about the
entities and the environment. Later we will look at some of

the challenges that exist in real-time distributed virtual

network. This is where FPGAs will be used to augment the


number of entities.
II. THE DISTRIBUTED INTERACTIVE SIMULATION
STANDARD
A. What is DIS
DIS is a standard that defines interoperability infrastructure
to create virtual environments. It explains the information
technology protocols required for DIS applications and defines
the data messages, known as Protocol Data Units (PDUs) that
are exchanged on a network among simulation applications
[1]. A more general statement, DIS is part of a larger activity
involving the linking together of various combinations of live,
virtual, and constructive models that may be geographically
separated and that may involve some or even a great deal of
human interaction [2].
DIS provides many types of PDUs and the most commonly
used ones are the ones that describe the entity state. This PDU
describes the physical state of an entity: entitys position,
velocity, acceleration, angular velocity, angular acceleration,
orientation, and much more information depending on what
type of entity it is. A plane and a tank have very different
attributes and they are described in their respective PDUs. In
our case we will use the FPGAs to inject the network traffic
that is produced by flying entities.

transmitted or received per unit time. A good analogy that I


heard is how big the pipe is where the information flows.
Bandwidth varies depending on your type of network. There
are wide area networks and local area networks and depending
on the distribution of your system you can have varying
capabilities. In other words, you can encounter physical
bottlenecks on your network that will prevent your real-time
virtual environments to send or receive all the information.
C. Latency
Networklatencyisallaboutthetimeittakestoget your
informationfromthesendertothereceiver.Youcanalsocall
itthedelay.Latencyisproportionaltothedistancebetween
thesenderandreceiverandthephysicalmediumwherethe
informationisbeingsent.Latencyisachallengethatcannot
beeliminatedbecauseitisduetomostlypropagationdelayof
thesignal. Forrealtimeapplicationsinvolvingfastmoving
entities the DIS standard suggests that the network latency
shouldbelessthan100ms[4].
IV. DESIGN FLOW PROCESS

Table 1. This is a table with the Entity State PDU components established
in the DIS standard. It was taken from the DIS Data Dictionary created at Ft.
Huachuca,
AZ
(http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/
disEnumerations/JdbeHtmlFiles/pdu/29.htm)

III. CHALLENGES IN REAL-TIME DISTRIBUTED VIRTUAL


ENVIRONMENTS
The fact that the virtual environment is distributed means
that they must be networked to get the information from one
environment to the other. And real-time interaction between
them also creates constraints on how long things should take.
A. Processing Power
Processing power is important and can be sometimes
overlooked when talking about networking challenges but it is
the processors job to process all these network packets. We
tend to forget how much work takes place behind the scenes
for each sent or received packet. The use of hardware to send
some of the packets will free up some of the processing done
by entity generators.
B. Bandwidth
Real-time virtual environments rely on the data network to
exchange information about the environment and the entities
inside it [3]. For users to send and receive information all the
data must be sent over the network and the more information
you want to send the more information needs to flow through
the network. Since the network resources are not unlimited
we have a challenge. Bandwidth refers to the transmission
capacity of a communication line such as a network. Simply
put, bandwidth is the proportion of the amount of data

Inthissectionwewilldiscusshowtousethedesignflow
processtoaidusincreatingasolutiontoaugmentthenumber
of entities and lessen the demand on the entity generator
applications.TheFPGAswillbeusedtosendthesenetwork
packets.
A. Requirements and Proof of Concept
As far as requirements we will use the FPGA to recreate the
network traffic created by an entity generator. FPGA needs to
connect to the network to send the packets. We can see from
table 3, the IEEE DIS standard PDU components that will be
sent. We will be using Wireshark to capture network data.
Next Generation Threat System (NGTS) will be used as the
virtual environment and entity generator. First step will be to
create the entities in NGTS and create a pattern they will fly.
After that is complete Wireshark will be used to record the
DIS packets created by the route. This will be a repetitive
route like a plane in orbit. Once we have the network traffic
we will create a small Java program that sends the packets
using the time it was received. We should be able to see the
entity in NGTS. Once we are able to see the entity and it is it
is replicating what was seen when the entity generator created
the entity we can move to the design layout.
B. FPGA Design and System Integration
Now that the proof of concept is complete we can then we
can do a modular layout of the solution. We will need some
memory to keep all the data and components to keep the
timing to when the messages need to be sent. We will use
ModelSim and VHDL to simulate our solution. We can
translate the functionality of the Java code into VHDL
components and create a test bench for it. If the test bench is
able to produce the network output needed, then it is time to
put it into the actual hardware and test the functionality. After

the functionality is tested we would run a simulation in which


the FPGA will simulate the entities flying in the airspace.
V. CONCLUSION

[2]
[3]
[4]

This paper provides an overview of real-time distributed


virtual environments and the use of FPGAs to help alleviate
some of the networking challenges found in them. We also
looked at an imaginary design and project using Wireshark,
Java and FPGAs to capture entity update PDUs and play them
to augment a simulation. I believe the use of the FPGA for
something like this is not the smartest thing to do and would
never attempt to do this in real life.
REFERENCES
[1] Standard for Distributed Interactive Simulation-Application Protocols,
IEEE Std. 1278.1-2012.

Davis, P. Distributed Interactive Simulation in the Evolution of DoD


Warfare Modeling and Simulation .Santa Monica, CA. March 1995.
Singal, S. Zyda, M. Networked Virtual Environments. ACM
Press New Yor, NY. 1999.
Neyland D., Virtual Combat: A Guide to Distributed Interactive
Simulation, Stackpole Books, Mechanicsburg, PA, 1997

Vous aimerez peut-être aussi