I'm currently designing a PCB using an STM32L433CB LQFP48 chip. The design uses the USB connection to communicate with an external PC. USB is configured to Full Speed (internal pull-up on D+ line) and device config VBUS sensing as described in STM's "USB Hardware and PCB Guidelines using STM32 MCUs". As recommended in their Reference Manual, I'm using a 4 layer board with typical layer stackup of {Signal, GND, PWR, Signal}.

The left and top edges of the PCB are where my connectors to external devices (illuminated pushbuttons, relay boards, etc) are and some DC-DC converters sit on the right side of the board, leaving the bottom and middle of the board available. I have the micro USB socket on the bottom aligned with the MCU IC so as to keep the data lines as straight as possible, reducing the need to make any turns keeping the lengths roughly equal. That leaves the middle section of the board free where I have the JTAG connection set-up.

I also want to have the unused IOs connected to a header pin to allow for future expansion. The issue is that quite a few of the unused pins need to cross over or go around the USB data lines. To prevent any data issues, I have routed them by going back into the MCU IC through vias as in image.

MCU IC with vias on the inside of the chip borders

This cuts up the GND plane under the MCU in Internal Layer 1 and has traces on Front and Back layers running parallel to each other to get to the header pins. Is there a better way to do this? Or am I overthinking this and it would have been fine to simply route the lines on the Back layer under the USB lines?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.