Perform FileIO operations on Microblaze embedded processor of FPGA over LWIP and Sockets
C
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
microblaze_client
x86_host
README

README

FileIO on Microblaze embedded processor

LWIP server runs on Microblaze processor and host system runs server to service FileIO and stdio.

x86_host
 - Compile with Makefile
 - Requires PCRE library (See pcre_split repository for how to install)

microblaze_client
 - Requires hardware implementation with UART and Ethernet IP
 - Create a new C project and import the files in microblaze_client directory (You'll need to have the platform* files generated by XSDK)
 - Include the x86_host/inc directory as an Include path to pick up "def.h"


You will need to connect the ethernet port on the FPGA to a network where it can assign itself an IP address.
The setup I used was to have the Microblaze and x86_host connected to a Router with only these connected.

Run Microblaze first with gtkterm (or similar) to retreive IP and Port.
This should be printed to the terminal, for example:
"Waiting for connection @ 192.168.0.1:1337"

Run the x86_host application passing the IP and port to
"./ser 192.168.0.1 1337"

The x86_host then send a packet to the Microblaze system, once a handshake has occured the Microblaze system executes the main_main() function and the x86_host listens to the socket setup for incomming data.
In the example provided this just performs some simple test. To include your own program include the files and remain your main() to main_main().
All FileIO paths reference directories on the x86_host.

Once execution has completed another handshake takes place and both systems should gracefully complete.