Skip to content

Example: Ethernet

Julian Kemmerer edited this page Jan 17, 2021 · 25 revisions

This is a break down of an Arty board based example that receives Ethernet frames, does some work on the payload, and sends a response frame back.

This example is from a series of examples designed for the Arty Board. See that page for basic instruction for using the Arty board.

somecode

Source

The source code for this project can be primarily found in work_app.c. This project uses the Xilinx TEMAC core at this for easy access to the off chip Ethernet PHY. work_app.c describes three main functions / clock domains: rx_main() which is connected the receive part of the TEMAC core, tx_main() which is connected to the transmit part of the TEMAC core, and work_pipeline() which has the work() function to be done.

TODO C source

PipelineC Tool Output

Pipeline Map

The compiler produces a text representation of what operations occur at which point during the pipeline (i.e. how long each operation takes and when). Inputs flow from top to bottom. Functions listed on the same lines are occurring in parallel.

TODO PIPELINE MAP

Throughput Sweep

TODO TOOL RESULTS

Vivado Results

Resource usage:

TODO IMAGE

C Driver/Test Code

TODO

Ethernet Loopback Example

ethloop

Clone this wiki locally