Xcell Journal: The authoritative journal for programmable ... - Xilinx
Xcell Journal: The authoritative journal for programmable ... - Xilinx
Xcell Journal: The authoritative journal for programmable ... - Xilinx
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Forthcoming developments in future releases of<br />
DIMEtalk will include additional interface support and<br />
links directly into algorithm development tools...<br />
Application Architecture Example<br />
Let’s look at DIMEtalk in an application<br />
context. <strong>The</strong> easiest approach is a very highlevel<br />
one to avoid getting caught up in the<br />
details of a potential system – the focus being<br />
on the overall architecture rather than lowlevel<br />
functionality. A typical application<br />
might include the following:<br />
• VME <strong>for</strong>m-factor<br />
• Multiple high-density plat<strong>for</strong>m FPGAs<br />
• High-speed external analog interfaces<br />
• High-speed synchronous SRAM memory<br />
• Gigabit Ethernet interface<br />
This relatively complex hardware configuration<br />
is shown in Figures 3 and 4. In this<br />
case, the system comprises commercial offthe-shelf<br />
hardware products. From a functional<br />
perspective, the algorithm processing<br />
blocks that would per<strong>for</strong>m the function of<br />
this application reside within the FPGAs.<br />
VME<br />
Interface<br />
FPGA FPGA FPGA<br />
N<br />
N<br />
B<br />
R<br />
N<br />
E Edge R<br />
B Bridge N<br />
Router<br />
Node<br />
N<br />
FPGA<br />
N<br />
N<br />
B<br />
R<br />
B<br />
B<br />
R<br />
N<br />
B B<br />
A<br />
E R<br />
You can develop these algorithm blocks<br />
using the design entry flow of your choice,<br />
including HDL, commercial IP cores, and<br />
high-level languages and tools.<br />
An example DIMEtalk network <strong>for</strong> this<br />
system is shown conceptually and in the<br />
DIMEtalk software tool in Figures 5 and 6.<br />
<strong>The</strong> network spans across all five FPGAs in<br />
the system, with router and bridge elements<br />
in place as appropriate to enable the network<br />
to operate. Each FPGA has algorithm<br />
blocks(s) associated with it – these are connected<br />
to the network at user nodes. <strong>The</strong><br />
user node type and location can be defined<br />
to fit your application requirements.<br />
In this example, the network is also<br />
connected through a DIMEtalk edge to<br />
the VMEbus host interface on the system<br />
– enabling direct data communications<br />
from the host to specific algorithm blocks<br />
inside the FPGAs.<br />
What is clear from this example is the<br />
value DIMEtalk adds to the system. You<br />
N<br />
N<br />
R<br />
B<br />
N<br />
B<br />
R<br />
N<br />
Brightly colored<br />
blocks represent<br />
algorithms<br />
Figure 5 – DIMEtalk network shown <strong>for</strong> example system<br />
can take an off-the-shelf system along with<br />
your algorithm blocks and rapidly connect<br />
all of these together and to the VMEbus.<br />
Conclusion<br />
Using DIMEtalk, you can efficiently<br />
implement the systems communications<br />
infrastructure required <strong>for</strong> FPGA computing<br />
applications. <strong>The</strong> generated network is<br />
flexible and provides a complete communications<br />
solution to connect together algorithm<br />
blocks, interfaces, backplane links,<br />
and host system. This type of infrastructure<br />
would have taken significantly longer to<br />
implement using traditional methods.<br />
Forthcoming developments in future<br />
releases of DIMEtalk will include additional<br />
interface support and links directly into<br />
algorithm development tools, making<br />
application development even easier.<br />
For further in<strong>for</strong>mation about<br />
DIMEtalk, visit www.nallatech.com/<br />
dimetalk/.<br />
Figure 6 – Screenshot of DIMEtalk network<br />
portion <strong>for</strong> example system<br />
Winter 2004 <strong>Xcell</strong> <strong>Journal</strong> 107