What is a Material Map?
A material map is a computationally efficient and accurate method to represent material thermal property variations in printed circuit boards (PCBs) copper and layers, and for modeling complex IC package substrates and metalized dies. To learn more about the Material Map read this blog post with video.
PCB Material Map Creation
To create an explicit Material Map of each PCB layer in an ODB++ file, Python scripts are included in a zip file found in the files download area of this article (requires log-in). The primary Python script, odbTofltMaterialMap.py, uses FloSCRIPT to import the ODB++ using Simcenter Flotherm to extract PCB layer images and stackup. The FloSCRIPT functions are located in pyFS.py, and must be located in the same directory. The script requires numpy, psutil, and opencv (https://pypi.org/project/opencv-python/). Other modules should be part of a standard Python standard installation.
To determine the material distribution, each PCB layer is exported as an image. Python is used to process the image, where black pixels are interpreted as conductor material and white pixels as dielectric material and save in a format that the Simcenter Flotherm Material Map SmartPart requires.
Within odbTofltMaterialMap.py there are a number of inputs:
- deleteInternalCutouts, geomTol: allows internal cutouts (holes) within PCB boundary to be ignored. If deleteInternalCutouts=True and a hole is within the geomTol of a PCB edge it is removed. An example of internal cutouts can be seen in the Simcenter Flotherm EDA Bridge image below.
- fltBin: Simcenter Flotherm is automated during the extraction process and the bin folder must be specified.
- debug: If true additional information is printed to screen and temp files are not removed.
- bProps, wProps: Material properties for black and white pixels.
odbTofltMaterialMap.py User Inputs
Simcenter Flotherm EDA Bridge: BeagleBone Black
An example is shown below where a PowerShell is opened in the script directory. The full path to the ODB++ file is provided following the
-i flag.
odbTofltMaterialMap in PowerShell Example
To create the Material Map SmartPart in Simcenter Flotherm select the icon from the New Geometry Palette and select the file created by the Python Script.
New Geometry Palette: Material Map SmartPart
An explicit material distribution, based on pixel resolution, is stored in the Material Map SmartPart. The user controls the material property representation based on the computational mesh. In the image below, U5 of the BeagleBone Black PCB is modeled in detail with a refined localized mesh.
U5 Refined Localized Grid
The image below shows the material property distribution in the localized and neighboring regions.
BeagleBone Black Z-Conductivity
The Python scripts provided are intended to provide a utility for efficiently representing a PCB material distribution in Simcenter Flotherm. Support questions or comments should be posted to this Community Article.