See also
- Ventana Thermal Page
- Newport Thermal/Power Page
- Dynamic Voltage and Frequency Scaling of the Processor
- Venice Power Consumption
- Gateworks Shop - Heatsinks
Venice Thermal
Venice Heatsinks
The Venice SOMs have different heatsinks solution depending on the processor.
- i.MX8M Mini (standard) - System On Module (SoM) has a 20x20x10mm (LxWxH) aluminum heatsink for passive thermal dissipation.
- i.MX8M Plus (GW74xx, others) - * This CPU has an exposed die, shown below * (no lid, see silver exposed area) which means it can be fragile if designing a custom thermal solution.
Some boards also have a 4-pin Fan controller connector suitable for driving a 5V fan via PWM with Tachometer feedback if active cooling is needed for the system. The fan is automatically controlled through the fan set points as defined here
Venice Thermal Ratings
Gateworks pre-installs a heatsink on the CPU for all Venice boards. This heatsink provides basic cooling for the board during development but customers need to design their own thermal solution based on their particular enclosure, environment and operating conditions.
The 1600MHz IMX8MM Industrial Temp SoC used for Venice is rated at:
- Max: 105C Tj (Junction Temp)
- Min: -40C Tj (Junction Temp)
The thermal resistances for the packages assuming natural convection is:
- RθJC (junction to case) = 4°C/W
- RθJB (junction to board) = 7.8°C/W
- RθJA (junction to ambient) varies per baseboard but is expected to be about 20°C/W
Venice Temperature Readings
Venice has the ability to measure the board temperature and CPU temperature.
Both values are important, but the CPU will be the hottest component and thus should be watched closely.
CPU Temperature
The IMX8MM has an interface for measuring the internal CPU junction temperature.
A Linux thermal sysfs
driver exists which supports reading the CPU temperature and configuring various limits.
internal CPU junction temperature can be read via Linux:
~# cat /sys/class/thermal/thermal_zone0/type cpu-thermal ~# cat /sys/class/thermal/thermal_zone0/temp 59000 ~# cat /sys/class/thermal/thermal_zone0/trip_point_0_type passive ~# cat /sys/class/thermal/thermal_zone0/trip_point_0_temp 95000 ~# cat /sys/class/thermal/thermal_zone0/trip_point_1_type critical ~# cat /sys/class/thermal/thermal_zone0/trip_point_1_temp 105000
- Linux
thermal sysfs
devices refer to temperature in milidegree Celcius thus 105000 is 105C - The above shows the
cpu-thermal
sensor currently measuring 59C with a 'passive' trip at 95C (at which point CPU frequency throttling will occur) and a 'critical' trip at 105C (at which point the CPU will reset)
Board Temperature
Board temperature is monitored via the Gateworks System Controller (GSC) via a thermister located on the board.
A Linux hwmon
driver exists to provide access to this temperature:
~# DEV=$(for i in $(ls /sys/class/hwmon); do [ "gsc_hwmon" = $(cat /sys/class/hwmon/$i/name) ] && echo $i; done) # find GSC device ~# cat /sys/class/hwmon/$DEV/temp1_input 48100
- Linux
hwmon
devices refer to temperature in milidegree Celcius thus 48100 is 48.1C
The board temperature can also be shown in U-Boot:
u-boot=> gsc hwmon temp : 34.0C vdd_bat : 0.000V vdd_vin : 15.292V vdd_adc1: 0.000V vdd_adc2: 0.000V vdd_dram: 1.101V vdd_1p2 : 1.190V vdd_1p0 : 0.976V vdd_2p5 : 2.464V vdd_3p3 : 3.226V vdd_0p95: 0.939V vdd_1p8 : 1.796V vdd_gsc : 3.168V
Venice Thermal Protection
Thermal protection is offered by the GSC (Gateworks System Controller). Please read more on the GSC Wiki Page
Attachments (2)
- lid.png (16.9 KB ) - added by 21 months ago.
- exposeddie.png (100.3 KB ) - added by 21 months ago.
Download all attachments as: .zip