tags:

views:

313

answers:

4

Hi,

I study on a robot simulator that written on Java environment.But sonar scan simulations and computational burden of some driven algorithms on robot drop my simulator's performance.

So ı have decided to use fpga module and put the computational burden on it.I have spartan 3a development kit for this implemenatation.

Does anyone has any document or application sample that related with communication of java program on PC with fpga code.

thanks.

A: 

What interfaces do you have between the PC and the FPGA board? That will define how you use Java to access the board. Which dev kit are you using?

But... before that, have you attempted to simulate the algorithms you propose to push out to the FPGA to make sure they are feasible, and that they will speed up the right bit of your code? I only ask because on occasion FPGAs are touted as the solution to all performance problems, but if they don't suit the problem at hand, you just push the problem elsewhere (often to a comms bottleneck between the PC and the FPGA board)

Martin Thompson
Er, the ethernet interface to his FPGA card will probably have enough bandwidth...
Tim Williscroft
Doh, missed that line of the question! OTOH, I still don't know how much data he needs to shuffle about. A big 3d sonar sim could be *a lot*...
Martin Thompson
A: 

Read this, Programming Parallel and Serial Ports.

It will help you a lot in such problems.

medopal
Uh, his kit has an ethernet interface to the FPGA.
Tim Williscroft
yaeh it is true ...ethernet interface can be used.
murat
This article should be great if u have Ethernet di u try it yet?
medopal
A: 

Mr Thompson;

Thanks for your advices your sayings are reasonable ...

let me expalin more..

my fpga board is xilinx spartan 3a developmant kit that having usb coonection and ethernet and rs232 to PC. (http://www.xilinx.com/products/devkits/HW-SPAR3A-SK-UNI-G.htm)

So ı intended to use it.

As for performance progression, ı purpose to develop a sonar simulation system wtihin 3D environment as a primary reason.At the second hand,ı will try to speed up computational processes that is containing basic mathematical operations.

I plan to design vhdl codes so as to implement sonar readings acquired from given environemnts via byte code to fpga.So ı have to write a java code that can communicate with the generated signals from fpga.

So my real question arises now. !!!

How can ı set a communication thecnique between the fpga signals and java code variables.

thanks alot.

murat
This is quite a big area. You cannot just "wire up" some comms port to FPGA signals. You need some VHDL interface. Easiest might be to use the RS232 port - you can read and write characters easily I would imagine in Java. Then a UART in the FPGA can write these characters into a RAM block which your onward processing can then use.I stick by my earlier comment that you really need to evaluate what your performance bottlenecks are and what moving them to the FPGA will imply in terms of comms bandwidth though. Do that first before leaping in writing code!
Martin Thompson
A: 

I think using ethernet port is much better than rs232 with Ram block..You may know the socket programming methods via TCP/IP.I made talk my computers via TCP/Ip using java socket at many times.So it is similiar activity with our FPGA PC comm that takes place in here.Using Fpga IP CORE Mac facility ı try to assign an IP address to my fpga.Then ı propose to lead java sockets to FPGA IP CORE so as to communicate.

As a consequence of our discussions yet, my ultimate question now is does anyone use the ethernet link i.e IP CORE MAC on fpga startar kit ???

thanks alot,

for your answers:

Mr.Thompson, Medapol and Mr.Wiliscroft.

murat
If you have access to EDK, the EMAC_LITE peripheral will do what you want for no extra cost - there are also cost-option ethernet peripherals. Ethernet may be easy at the host end, but there's a bunch of work to do at the FPGA end, either writing your own low-level data management, or all the way up to embedding a processor core and running Linux on it :)Or do it all yourself like this! http://www.fpga4fun.com/10BASE-T2.htmlFor more reading matter search Usenet via Google groups using "udp on fpga group:comp.arch.fpga"
Martin Thompson