Go Back   Velocity Reviews > Newsgroups > VHDL
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply

VHDL - Implementing a communication protocol for data transfer over TCP on an FPGA

 
Thread Tools Search this Thread
Old 04-03-2007, 02:34 PM   #1
Default Implementing a communication protocol for data transfer over TCP on an FPGA


Hi,

I am currently working on a project where I have to transmit data from a PC
to an FPGA board via Ethernet. For that purpose I use the HTG-V4PCIe
evaluation board, which is a Xilinx Virtex-4 PCI Express Development Board
from HighTech Global (http://www.hitechglobal.com/boards/v4pcie.htm). It
features the Marvell Alaska 88E1111 Gigabit-Ethernet PHY which I use in
combination with the Virtex-4 built-in MAC interface. I implemented the
TCP/IP stack fully in hardware in VHDL and it works. Fine!

Now I have some serious problems with the data transmission and maybe
someone could point me to the right direction.

For transmitting the data from the PC to the board (in the form of files) I
need some sort of application protocoll layer, I guess. First I thought
about HTTP which is in my opinion a bit overkill, because all I want to do
is transmit files FROM the PC TO the FPGA. I may run a HTTP server on the
FPGA's Microblaze but I have the impression that would not satisfy my need
of just transmitting data files.
Then I thought about Telnet but I am afraid I am not familiar enough with it
to estimate if it allows the transfer of files. Is there any simple solution
to transmit files from a PC to the FPGA board with a plain application
protocoll layer?

Any help is highly appreciated.

Regards Andre




Andre Renee
  Reply With Quote
Old 04-03-2007, 02:44 PM   #2
jetq88
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer over TCP on an FPGA
On Apr 3, 8:34 am, "Andre Renee" <trauben...@arcor.de> wrote:
> Hi,
>
> I am currently working on a project where I have to transmit data from a PC
> to an FPGA board via Ethernet. For that purpose I use the HTG-V4PCIe
> evaluation board, which is a Xilinx Virtex-4 PCI Express Development Board
> from HighTech Global (http://www.hitechglobal.com/boards/v4pcie.htm). It
> features the Marvell Alaska 88E1111 Gigabit-Ethernet PHY which I use in
> combination with the Virtex-4 built-in MAC interface. I implemented the
> TCP/IP stack fully in hardware in VHDL and it works. Fine!
>
> Now I have some serious problems with the data transmission and maybe
> someone could point me to the right direction.
>
> For transmitting the data from the PC to the board (in the form of files) I
> need some sort of application protocoll layer, I guess. First I thought
> about HTTP which is in my opinion a bit overkill, because all I want to do
> is transmit files FROM the PC TO the FPGA. I may run a HTTP server on the
> FPGA's Microblaze but I have the impression that would not satisfy my need
> of just transmitting data files.
> Then I thought about Telnet but I am afraid I am not familiar enough with it
> to estimate if it allows the transfer of files. Is there any simple solution
> to transmit files from a PC to the FPGA board with a plain application
> protocoll layer?
>
> Any help is highly appreciated.
>
> Regards Andre


you could try using socket, it's standard way to tranfer files over
tcp/ip

jet



jetq88
  Reply With Quote
Old 04-03-2007, 03:12 PM   #3
Nick Maclaren
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer over TCP on an FPGA

In article <461257ca$0$6411$>,
"Andre Renee" <> writes:
|>
|> Then I thought about Telnet but I am afraid I am not familiar enough with it
|> to estimate if it allows the transfer of files. Is there any simple solution
|> to transmit files from a PC to the FPGA board with a plain application
|> protocoll layer?

FTP or even TFTP. You can do it a lot more simply, but it sounds as
if you aren't the sort of person who is happy designing a one-off
protocol. WITH FTP, you need implement only one form of binary.


Regards,
Nick Maclaren.


Nick Maclaren
  Reply With Quote
Old 04-03-2007, 03:13 PM   #4
Ben Jones
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer over TCP on an FPGA

"Andre Renee" <> wrote in message
news:461257ca$0$6411$...
> I implemented the TCP/IP stack fully in hardware in VHDL and it works.


Man!

> Is there any simple solution to transmit files from a PC to the FPGA board
> with a plain application protocoll layer?


Personally, I would look at GNU Netcat(http://netcat.sourceforge.net/) for
very simple file transfer over TCP/UDP. You might also try TFTP (yuk).

Good luck,

-Ben-




Ben Jones
  Reply With Quote
Old 04-03-2007, 03:29 PM   #5
Tauno Voipio
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer overTCP on an FPGA
Andre Renee wrote:
> Hi,
>
> I am currently working on a project where I have to transmit data from a PC
> to an FPGA board via Ethernet. For that purpose I use the HTG-V4PCIe
> evaluation board, which is a Xilinx Virtex-4 PCI Express Development Board
> from HighTech Global (http://www.hitechglobal.com/boards/v4pcie.htm). It
> features the Marvell Alaska 88E1111 Gigabit-Ethernet PHY which I use in
> combination with the Virtex-4 built-in MAC interface. I implemented the
> TCP/IP stack fully in hardware in VHDL and it works. Fine!
>
> Now I have some serious problems with the data transmission and maybe
> someone could point me to the right direction.
>
> For transmitting the data from the PC to the board (in the form of files) I
> need some sort of application protocoll layer, I guess. First I thought
> about HTTP which is in my opinion a bit overkill, because all I want to do
> is transmit files FROM the PC TO the FPGA. I may run a HTTP server on the
> FPGA's Microblaze but I have the impression that would not satisfy my need
> of just transmitting data files.
> Then I thought about Telnet but I am afraid I am not familiar enough with it
> to estimate if it allows the transfer of files. Is there any simple solution
> to transmit files from a PC to the FPGA board with a plain application
> protocoll layer?
>
> Any help is highly appreciated.


The simple way is TFTP. It uses UDP as the transport layer,
so even TCP is not needed. However, there's practically no
security, and the protocol is a simple send-and-wait-for-
ack protocol. For local links, it's simple and works.

TFTP was created to boot diskless workstations, and for
similar tasks it's OK.

For more general file transfer, FTP is probably the correct
thing, although it's much more tedious to implement than TFTP.

The primary reference for TFTP is
<http://www.faqs.org/rfcs/rfc1350.html>.

--

Tauno Voipio
tauno voipio (at) iki fi



Tauno Voipio
  Reply With Quote
Old 04-03-2007, 04:22 PM   #6
Andre Renee
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer over TCP on an FPGA
Hi Nick,

thanks for your quick reply. The problem is: with my TCP/IP implementation I
have only one port available. As far as I know with FTP I need at least
two...!?




Andre Renee
  Reply With Quote
Old 04-03-2007, 04:42 PM   #7
zcsizmadia@gmail.com
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer over TCP on an FPGA
On Apr 3, 9:12 am, n...@cus.cam.ac.uk (Nick Maclaren) wrote:
> In article <461257ca$0$6411$9b4e6...@newsspool2.arcor-online.net>,"Andre Renee" <trauben...@arcor.de> writes:
>
> |>
> |> Then I thought about Telnet but I am afraid I am not familiar enough with it
> |> to estimate if it allows the transfer of files. Is there any simple solution
> |> to transmit files from a PC to the FPGA board with a plain application
> |> protocoll layer?
>
> FTP or even TFTP. You can do it a lot more simply, but it sounds as
> if you aren't the sort of person who is happy designing a one-off
> protocol. WITH FTP, you need implement only one form of binary.
>
> Regards,
> Nick Maclaren.


If you have to write on the PC side as well, simple TCP socket
communication should be simple.
If not, just implement a simple TFTP server with the bare minimum in
the FPGA, so you can connect from any computer with "tftp" command.

Regards,
Zoltan



zcsizmadia@gmail.com
  Reply With Quote
Old 04-05-2007, 01:00 AM   #8
already5chosen@yahoo.com
 
Posts: n/a
Default Re: Implementing a communication protocol for data transfer over TCP on an FPGA
On Apr 3, 5:22 pm, "Andre Renee" <trauben...@arcor.de> wrote:
> Hi Nick,
>
> thanks for your quick reply. The problem is: with my TCP/IP implementation I
> have only one port available. As far as I know with FTP I need at least
> two...!?



Yes, FTP client, FTP server and TFTP server require at least two
ports. But TFTP client could leave with one local port that
communicates with two remote ports.
By the way, do you really implemented full TCP transport protocol in
hardware, all related RCPs including adaptive retransmission timers,
window size adjustment, flow control and congestion avoidance? If you
did that implementing application protocols should be a piece of cake
- most of them are order of magnitude simpler than TCP.

BTW, what you have against microblaze? Could save you months (years?)
of work and plenty of logic cells at cost of some embedded memory.



already5chosen@yahoo.com
  Reply With Quote
Old 04-11-2007, 06:21 PM   #9
OscarM
Junior Member
 
Join Date: Apr 2007
Posts: 2
Default
Hi Andre,

I am very interested in your job as I have to face a very similar problem. In my case I need to implement a TCP/IP protocol and also DHCP, ARP and ICMP.

For my application a Spartan 3 will do the job perfectly so I am considering two possibilites:

1) Use Spartan 3 + Embedded Ethernt product (Rabbit Semiconductors ...)
2) Use Virtex 4FX12 and implement it by myself.

Of course I like more the second option (also it will allow me to upgrade my design in he future) but I am afraid about how much time I would need to implement it. Please can you tell me how much time did you need for your implementation? Did you face any critical problem?

I have seen that Xilinx is selling GSRD to free Power PC processing time. Did you find big speed limitation doing in this way (all done by Power PC processing)?

Sorry for so many questions.

Thanks!

BR.
Oscar.


OscarM
OscarM is offline   Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
communication PowePC FPGA eiria Hardware 0 05-28-2008 08:10 PM
Buffer Overrun Error (Windows\Explorer.exe) 911pyro General Help Related Topics 2 06-01-2007 02:48 AM
Classic Original Broadcasts Trading List - Updated ( w/o/c ) porkys1982@sbcglobal.net DVD Video 0 12-05-2005 03:38 AM
Classic Original Broadcasts Trading List - Updated ( w/o/c ) porkys1982@sbcglobal.net DVD Video 0 11-19-2005 04:46 PM
Original Airings : The A-Team , M*A*S*H , Taxi , Barney Miller , WKRP porkys1982@sbcglobal.net DVD Video 0 08-15-2005 03:09 AM




SEO by vBSEO 3.3.2 ©2009, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46