xFaceMAC32
xFaceMAC32 is an Ethernet media-access controller. It receives and transmits Gigabit traffic concurrently (full-duplex). The xFaceStream32 interface allows direct network access for software and for hardware.
Application
Application of xFaceMAC32 as network interface for software-defined radios
The xFaceMAC32 allows receiving and transmitting Gigabit Ethernet traffic with minimal hardware resources. It is applied to connect systems on chip with the Internet. xFaceMAC32 provides direct access to the network for digital hardware via the xFaceStream32 bus. This allows high throughput applications with minimal latency because no software interaction is needed.
Deliverables
- Source code
- Synthesizable Verilog code
- Behavioral code without specific instances
- Simulation
- Testbench and test data
- Documentation
- Including getting started tutorial
- Optional
- Customization and integration services
Features
- Functionality
- Gigabit Ethernet IEEE 802.3 compatible
- 1 Gbps receiving of traffic of any shape
- 1 Gbps sending of data up to 8k packet size
- Verification and generation of CRC-32 checksum (FCS calculation)
- Extraction of received Ethernet headers
- Up to four data sources for transmission (multiplexing)
- DMA like data transfer
- No CPU interaction needed for transferring data to / from MAC
- Interfaces
- GMII interface for physical device
- external PHY for 1000Base-T network (RJ45 connector)
- PCS/PMA for 1000Base-X (SFP modules)
- xFaceStream32 interface
- High throughput, low latency
- Optimization
- Optimized for Xilinx FPGAs Spartan-6, Virtex-4, Virtex-5, Virtex-6
- Performance
- Throughput: 1 Gbps RX + 1 Gbps TX (full duplex)
- Latency GMII <-> xFaceStream32
- RX: 620+ ns (increases with packet size)
- TX: 120 ns
- Max. clock frequency
- Spartan-6: 165 MHz
- Virtex-6: 274 MHz
- Resources
- Spartan-6, Virtex-6: 8 BRAM (18k block RAM) and 870 slices
- Verified on
- Xilinx SP605 board (Xilinx Spartan-6)
Interested?
Contact us:
Tel | +43 681 10291010 |
Skype | johannes.wolkerstorfer |
Johannes.Wolkerstorfer@xface.at | |
Web | https://www.xface.at/ |
Results
xFaceMAC32 | |||
---|---|---|---|
FPGA | slice | BRAM | f_max |
Xilinx Spartan-3 XC3SD1800A | 557 of 16640 (3%) | 8 of 84 (9%) | 122.47 MHz |
Xilinx Spartan-6 XC6SLX45T | 868 of 27288 (3%) | 8 of 116 (6%) | 165.70 MHz |
Xilinx Virtex-4 XC4VLX25 | 570 of 10752 (5%) | 8 of 72 (11%) | 213.42 MHz |
Xilinx Virtex-6 XC6VLX75T | 813 of 46560 (1%) | 4 of 156 (2%) | 274.03 MHz |