Hi, I am Maxim, a multiphysics simulation engineer.
I do thermal integrity checking of the PCB to assure it is compliant with the system requirements.
Although the PCB design at this stage is not yet complete, as soon as the board 3D geometry
is ready, I can start the analysis in Simcenter FloEFD, a CFD simulation environment built in NX.
Alex created the assembly file for the PCB design, so I can start the work from this point.
First, let’s do an arrangement of the assembly.
To simplify the geometry for the FloEFD solver, I am using basic thermal models for some electronic
components and excluding some components from the analysis.
These models can be built from the data available in the manufacturer datasheets.
This decreases calculation time significantly while still giving accurate results.
The FPGA dissipates around 100 Watts, so I will add a heatsink with an integrated fan.
The accurate fan geometry is not important for my simulation, so I replace it with the simplified version.
I place the board into the chassis system design and will run the simulation in that context.
This is not absolutely required, but the simulation
will be closer to reality when run out on real design geometries.
I already have the FloEFD project created for this standard chassis we used in other designs.
Some of the input data, like computation domain, materials, fans and others are already predefined
for the chassis.
For this case, I set up the transient simulation project where the physical time is taken into account.
Our chassis is designed to work up to 40 °C (104 °F), so this will be the operating temperature
for this simulation to test for the worst-case scenario.
I load the electronic thermal models from the FloEFD Engineering Database, a library,
and finalize the project setup.
The next steps are a mesh arrangement and solver setup; and then I can run simulation.
Once it is complete, I can display the results.
There are different techniques in FloEFD to do that.
For instance, I can display the plots of the temperature distribution or fluid velocity.
In the example, I display the plot to see the air velocity nearby the heatsink.
It helps me to identify the areas in the design which may require the improvements.
Now I check the temperature of the electronic components and relevant chassis parts.
As you can see, there is a significant overheat of the FPGA and adjacent DDR4 chips so a better
FPGA heatsink solution must be selected.
The fan velocity and the ribs’ geometry can be optimized.
For the transient type analysis, I can create a video to see how the temperature are changed
over time in accordance with the power load.
In the example, I create the video to cover the process within first five minutes of the load.
Let's optimize the FPGA heatsink to get a better cooling.
I can change the geometry without closing FloEFD and return to the full assembly to
re-run the simulation with the optimized parameters.
I increase the size of the heatsink, also adjust the volume flow rate of the fan in
the FloEFD project.
Then run the simulation again.
Despite some overheating, this looks much better.
I can compare the results from the different simulation runs side by side.
For instance, let’s see the FPGA temperature compared from two different simulations where
different heatsink size and fan were tested.
I can see from the report the proposed heatsink optimization decreases the FPGA temperature
by 20 degrees.
I think certain adjustments at the chassis can improve the cooling of this control board
further to meet the thermal requirements.
I will work on that while the layout team continues work on the PCB.
Adding this larger heatsink impacts the current PCB component placement, which must be fixed
in the mechanical and electronic views of the PCB design.
I will make the change in NX and alert my colleagues to adjust accordingly.