Altera Ethernet MAC without DMA

J

Jakab Tanko

Guest
Hi all,

I have a design that uses Altera Ethernet MAC and
I would like to connect it to NIOS without DMA.
Any suggestions?

Thanks,
--
Jakab
 
Jakab Tanko <jakab.tanko@gmail.com> wrote:
Hi all,

I have a design that uses Altera Ethernet MAC and
I would like to connect it to NIOS without DMA.
Any suggestions?

The MAC (at least the 10G MAC which I've worked with) has Avalon stream
pipes in and out for packet data. So you just need something to generate a
stream of 64 bit words. The Altera supplied stream-to-memory-mapped
components only go as wide as 32 bits. So I wrote a very simple FIFO to
stream converter, with 64 bit Avalon ST and 32 bit Avalon MM ports. Write
words into a pair of 32 bit FIFO registers, 64 bit words come out on the
stream. Another register handles start-of-packet/end-of-packet bits.

You probably don't want my code (it's in Bluespec), but it shouldn't take
long to write something similar. Alternatively you could use the Altera 32
bit components and make something to double up two words on a 32 bit stream
to be a single 64 bit stream word.

Theo
 
On Thursday, July 28, 2016 at 12:09:12 PM UTC+2, Theo Markettos wrote:
Jakab Tanko <jakab.tanko@gmail.com> wrote:
Hi all,

I have a design that uses Altera Ethernet MAC and
I would like to connect it to NIOS without DMA.
Any suggestions?

The MAC (at least the 10G MAC which I've worked with) has Avalon stream
pipes in and out for packet data. So you just need something to generate a
stream of 64 bit words. The Altera supplied stream-to-memory-mapped
components only go as wide as 32 bits. So I wrote a very simple FIFO to
stream converter, with 64 bit Avalon ST and 32 bit Avalon MM ports. Write
words into a pair of 32 bit FIFO registers, 64 bit words come out on the
stream. Another register handles start-of-packet/end-of-packet bits.

You probably don't want my code (it's in Bluespec), but it shouldn't take
long to write something similar. Alternatively you could use the Altera 32
bit components and make something to double up two words on a 32 bit stream
to be a single 64 bit stream word.

Theo

Hi Theo,

Thanks for the reply,
In this design I have the 1G MAC but the problem is the same;
Can't connect Avalon streaming ports (ST) to the NIOS directly
so I will follow what you did and build my own bridge(s),

Cheers,
Jakab
 

Welcome to EDABoard.com

Sponsor

Back
Top