HD3SS3220: Schematic and layout review request

Part Number: HD3SS3220

Tool/software:

Hi!

In response to the previous thread I have updated in lieu of the changes suggested and just wanted a review of my schematic and layout before fabrication. 

Schematic:

Layout:

Layer 1:

Inner Layer:

Bottom layer

The PCB is 6 layers:

SIG/GND : GND : SIG/PWR : PWR : GND :SIG/GND

All signal layers have a ground power but I have removed them from view for easier readability. Would really appreciate feedback on the schematic and layout as well as power to the USB-C port!

Thanks

  • Hi,

    Are you able to provide allegro PCB files and a pdf of the schematic?

  • Hi!

    this was done in easyeda pro unfortunately but I have attached the schematic pdf as requested. I will try export as Altium format but please note it has issues with exporting so will not necessarily be reflective of the actual design and will have some artefacts with the board outline and some polygon pours.

     Argo-v0.2.pdf

    Altium_Argo-v2_2025-09-10.zip

  • I will have the schematic and layout review done in 1-2 days.

  • Ok great, thanks so much! Just for further reference but should be inferable from the schematics, this board is for the Raspberry Pi CM5

  • Hi,

    Here is the schematic review:

    1) What is the AC coupling status of the common path in the MUX. I see this goes to an external connector, but I dont see any AC coupling on this bus.

    2) The CC pins are routed to two USB Type-C connectors. This is incorrect. You will need one CC/PD controller per USB Type-C port.

    The CC connections of the HD3SS3220 should only be connected to the USB3.0 Type-C port. 

    From what I understand the functions of each poet is different. The USB Type-C input is used to power the board and communicate at USB 2.0 speeds. In this case, DP and DN for the normal and flip orientations are tied together. In this case you may be able to use a CC PUP and PDOWN network rather than a CC controller as flip orientation doesn't matter.

    3) I recommend leaving PORT pin floating for DFP and UFP operation. This will make the board more flexible in usage.

    4) Looks like this implementation is going to be 5V 3A. In this case use a 10K resistor to PUP CURRENT_MODE pin to VCC. Not a direct connection.

    5) VBUSDET pin has 900K to VBUS, OK

    DIR pin has 200k PUP, but is not connected to any SoC. This DIR pin will provide the flip status of the connection. This signal may be needed by RPi SoC. 

    En_MUX has direct connection to ground, OK

    6) ENn_CC direct connection to ground, OK

    ID pin has 200k PUP, but this signal is not sent to SoC. This ID pin is typically used to tell the SoC that a device is connected when the port is in DFP mode. This pin can also be used as a trigger for supplying Vbus. Does the RPi SoC need this signal?

    7) Output USB Type-C connections look ok. 100nF on TX signals and direct connection on RX signals. It may be worthwhile to use ESD diodes on this connector to protect the IC on this PCB. We recommend PUSB3FR4. 

  • I am unable to open the layout file, can you provide some labels on the PCB traces in the layout images provided?

  • Hi, thanks so much  

    in response to 1) this goes directly to the raspberry pi CM5 RX and TX lines I’m unsure whether it has built in AC coupling but the official CM5 IO Board doesn’t include any (although it’s using a regular USB-A 3.0 port)

    2) im unsure what exactly you’re mistaking. The CC lines from the MUX only go to a single USB-C port, the other port has 5.1k resistors and has nothing to do with this design or schematic, it is simply the labelling on the part but isn’t electrically linked at all.

    3) Thanks, will do that!

    4) no this port is output only and I’m actually trying to limit it to 500mA output. This is reflected in the current limiter that is providing it 5V.

    5) I believe the CM5 doesn’t need this pin at all, it doesn’t have a DIR connector as it doesn’t natively support the flipping and only supports a USB-A 3.0 port hence my use of this MUX. I’m a little confused as I thought the MUX automatically handles the orientation of the port and flipping?

    6) again I don’t believe the CM5 has any requirement for this pin or input

    7) thanks will take a look!

    I will shortly send annotated images of the routing 

  • Bottom Layer

    Inner layer

    Top layer

    I was largely following this from the data sheet:

    I also edited a schematic a bit in response to your comments (really grateful for the insight!):

    I connected current_mode to GND for lowest 900mA limit, also left ID floating as it will not be used. The data sheet mentions the DIR pin needs the 200k resistor to 3.3V for proper operation of device so I left that as is.

  • Hi,

    Thanks for the updates:

    2) im unsure what exactly you’re mistaking. The CC lines from the MUX only go to a single USB-C port, the other port has 5.1k resistors and has nothing to do with this design or schematic, it is simply the labelling on the part but isn’t electrically linked at all.

    Got it, I assumed that traces labeled the same were connected. Typically this is the standard for schematic design. In the future I recommend unconnected nets having different names.

    4) no this port is output only and I’m actually trying to limit it to 500mA output. This is reflected in the current limiter that is providing it 5V.

    Currently the CURRENT-MODE pin is pulled up to 3.3V using a 4.7K resistor. I recommend pulling this pin down to limit the advertisement from 3A to 900mA to put less stress of current limiting parts.

    I connected current_mode to GND for lowest 900mA limit, also left ID floating as it will not be used. The data sheet mentions the DIR pin needs the 200k resistor to 3.3V for proper operation of device so I left that as is.

    perfect!

    Regarding the layout:

    The differential routing looks ok for the most part. Its best to have a solid ground plane under/ above every high speed trace to properly couple to ground. The routing itself looks ok to me.

  • thanks so much!