cancel
Showing results for 
Search instead for 
Did you mean: 

RMII interface stops working below 3.27V input of STM32H743VIT6

APate.2
Associate II

Hi,

I have used STM32H743VIT6 to manage Marvell Ethernet Switch 88E6352

Since last 2 weeks I am trying to resolve below issue.

Everything works fine at the 3.35V input. Just reduction of 100mV creates problems on RMII interface.

This voltage levels are measured & verified with calibrated Fluke Multi-meters as well as on calibrated oscilloscopes. The board is running on Rigol Linear DC Power Supply DC712. Ripple measured on 3.3V line is 60mV.

What further can be diagnose in order to resolve this problem?

Feel free to ask if any query.

Thanks,

Aakash

1 ACCEPTED SOLUTION

Accepted Solutions
APate.2
Associate II

Hi Danish,

Thanks for your prompt reply to investigate the problem systematically.

I would like to inform you that, the highlighted problem is resolved now.

The main problem with GPIO strength settings of GPIO_OSPEEDR register.

Register setting for OSPEEDRy[1:0] = 00 means it output speed was configured at Low speed

Then after we modify it to OSPEEDRy[1:0] = 00 (as per the datasheet) at High speed for all RMII pins used.

So the above stated problem is resolved.

Once again thanks for your response.

Regards,

Aakash

View solution in original post

3 REPLIES 3
Danish1
Lead II

I've never used "Marvell Ethernet Switch 88E6352" and it didn't look easy to get a data sheet on it.

I assume it's your own pcb.

Please describe sort of problems you see.

Does the 88E6352 get its power from the same 3.3 V supply as the STM32H743? RMII should be 5.0 / 3.3 V compatible but it might be marginal.

Are the waveforms on the RMII signals square and swinging high to at least 3.1 V?

Are both devices on the same pcb? How long are the traces between the two devices? The interface is relatively fast so traces should be short and similar in length.

You mention 60 mV ripple. What about high-frequency noise? If you have inadequate decoupling around the processor things can go wrong. You should have 0.1 uF between every Vdd and Vss pair as well as about 10 uF tantalum for the larger gulps.

How stable is your oscillator for the Ethernet?

Hope this helps,

Danish

APate.2
Associate II

Hi Danish,

Thanks for your prompt reply to investigate the problem systematically.

I would like to inform you that, the highlighted problem is resolved now.

The main problem with GPIO strength settings of GPIO_OSPEEDR register.

Register setting for OSPEEDRy[1:0] = 00 means it output speed was configured at Low speed

Then after we modify it to OSPEEDRy[1:0] = 00 (as per the datasheet) at High speed for all RMII pins used.

So the above stated problem is resolved.

Once again thanks for your response.

Regards,

Aakash

Hi Danish,

Problem resolved as mentioned in Answer section.

Let me know if you have any query.

Regards,

Aakash