We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Visitor mcohan428
Registered: ‎12-29-2016

10/100 Ethernet MII via EMIO

Hi there-


Short version:


Please refer to my question in bold below.


Longer version:


I'm a hardware engineer tasked with adding 10/100 ethernet to an existing custom board/design that uses a Zynq XC7Z020-CLG400. I spent most of yesterday afternoon at work reading through various UGs, the Zynq TRM and etc. trying to get up to speed on the Zynq as I've never worked with it before. I actually haven't worked with an FPGA since college (I understand that the Zynq is a SoC) although I have worked with plenty of microprocessors. I understand there are some forum posts on this topic and I've read through the ones I came across; however, I was hoping somebody could just verify my current understanding below.


All the MIO pins are already being used by other peripherals so my only other option is to bring one of the ETH modules (connections) out through the PL via the EMIO, which is all fine and dandy because I want to use MII anyway which can't be used on the PS side. I'm going to use Bank 34 because it is currently unused and I can set it for 3.3V logic to match the ETH PHY (a TI DP83848 for anybody interested). My current understanding is that, being an FPGA, there are no dedicated ETH pins to connect to and I can assign the MII connections to any pins in Bank 34 and the SW developer will do the assignments when he writes the drivers/code. Is this correct? Are there any restrictions in terms of multifunction pins I should avoid? Any input from experienced Zynq developers will be greatly appreciated! Thanks!

Tags (2)
0 Kudos
1 Reply
Teacher muzaffer
Registered: ‎03-31-2012

Re: 10/100 Ethernet MII via EMIO

@mcohan428 Zynq soc allows ethernet to be muxed to emio. 10/100 mii being quite slow, I suspect this would be easy to implement. The rest is quite easy, as you say, you can connect the emio signals coming from PS to any PL IO at any bank. The hardware configuration of the PS7 block should be changed appropriately so that the ETH pins are routed to EMIO. The rest is handled by existing drivers correctly as they just use the built-in hardwired ethernet controller.

- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
0 Kudos