This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PCA9306: how should pull up resistor be used in MDIO/MDC

Part Number: PCA9306
Other Parts Discussed in Thread: TCA9406

Hello

I am going to use PCA9306 for MDC MDIO signal .

the pull up resistor in "9.2.2.2 Sizing Pullup Resistors" is asking to refer SLVA639,

SLVA639 just provide I2C part don't have MDC/MDIO

The maximum clock frequency will work between 1MHz to 12.5MHz

Please help to calculate the pull up resistor value.

thanks

David.

  • Hey David,

    This device uses only a pass FET architecture and is not meant to support MDC/MDIO.

    If you are trying to support 1 MHz - 12 MHz, TCA9406 may be a better option because it uses rise time accelerators to actively pull the signals high and can support faster speeds. If you use the TCA9406 then the pull up resistors can be a larger value because the rise time accelerators will by pass the external pull up resistors to drive the signal high.

    Thanks,

    -Bobby

  • Hello Bobby,

    Datasheet record that PCA9306 can support MDIO, I have check in this case , but they didn't provide Pull up resistor value.

    please help to check that. 

    Thanks!!

    David.

  • Hi Team,

    Please confirm if 9306 can work on MDC MDIO signal (1MHz to 12.5MHz) or not? Since there is a opposite opinion as David link.

    Also, what is the suggested pull high value for MDC MDIO signal?

    Thanks

  • David and Daniel,

    The worry I have about using purely a pass FET architecture with a push pull architecture is to support the fast rise times MDIO requires, you need to use strong pull up resistors. Because of the pass FET architecture of PCA9306, there will be a larger load dropped across the Ron of the PCA9306. This will generate larger shifts on VoL for the receiving slave.

    I've also seen in some cases (case at 10 MHz) the signal is no longer monotonic:

    I believe this is caused by fast rise times inducing leakage current into the reference voltage shifting the gate voltage up and down. You would need to find a way to stabilize the the reference voltage (more capacitance on the reference or smooth/slow the rising waveform). This could also be related to the drivers on the CMOS structure, if the drivers are not slew rate controlled/limited then the source impedance could swing and cause the Ron to fluctuate.

    "Please confirm if 9306 can work on MDC MDIO signal (1MHz to 12.5MHz) or not?""

    It can work but I'm pessimistic about having perfectly monotonic waveforms at higher speeds, and the VoL will be shifted higher which could be problematic at lower logic levels. If these are not worries for you then this device is fine, my preference for something like this would be to use TCA9406 though.

    "Also, what is the suggested pull high value for MDC MDIO signal?"

    This is dependent on the rise time you are targeting and the expected parasitic capacitance on the slave side.

    I assume the master is push pull on MDC so the master side does not need a pull up resistor on the MDC line since the master supplies the pull up through a PFET. The slave side will require a strong pull up. The MDIO does require a pull up resistor on the master side as I believe this is open drain.


    From SLVA689 that David reference:

    Equation 7:

    Rp=tr/(0.8473*Cb)

    the 0.8473 value assumes you define rise time as 30% to 70% of Vcc like I2C does

    Cb is the bus capacitance on slave side

    tr is the targeted rise time

    Example: you expect 30pF on the slave side with a targeted rise time of 10 ns then Rp <= 393.4

    -Bobby