In answer to your question, HWMonitor and the BIOS both read their data from the same chip on the motherboard. Temperatures will read different in Windows and BIOS because BIOS temps are pure idle, and in Windows your CPU is usually doing something.
I still don't trust these values as being accurate but are useful for finding if things look correct (e.g. if they show 80C then something has gone horribly wrong). For the CPU I rely on using RealTemp to watch the core temp (bypassing the motherboard sensor chip) under load.
Yes I have, and I do know the difference between Tcase and Tjunction.
What I didn't do is read the OP correctly.
I also just realised that the Tjunction values will be coming through that same monitoring chip if HWMon is reading them, which I wasn't aware of (but should have been).
Although, poking me aside, the difference between Tcase and Tjunction isn't the only issue in the OP. If their Tjunctions are in the low 30's, then Tcase will be slightly lower (not as high as 43C). So an explanation is also needed for the drop in temperature anyway.
I'd expect this to be because the power saving features aren't active in the BIOS (or secondarily the possibility of a BIOS error)
I could've answered the OP's question directly, however, he would've learned nothing. I can spoon-feed information and explanations, but that would defeat the purpose of the Guide. The idea is to read the Stickies. Newcomers just might learn something. Every question posted asks that we volunteer our precious time to write answers that have already been written in Stickies, because Forum Members are either unaware of where to find the information, or are simply too lazy to read.
I also just realised that the Tjunction values will be coming through that same monitoring chip if HWMon is reading them, which I wasn't aware of ...
Not quite, nor does the choice of monitoring utility have anything to do with it, although Hardware Monitor typically shows CPU temperature as "CPUTIN". You might want to give the Guide another read, as it appears that you have a few misconceptions, which are best not passed on to our readers.
From the Guide:
Section 5: Findings
(A) Tcase is acquired on the CPU substrate from the CPU case Thermal Diode as an analog level, which is converted to a digital value by the super I/O (Input/Output) chip on the motherboard. The digital value is BIOS Calibrated and displayed by temperature software. Motherboard BIOS Calibration affects the accuracy of Tcase, or CPU temperature.
(B) Tjunction is acquired on the Cores from Thermal Diodes as analog levels, which are converted to digital values by the Digital Thermal Sensors (DTS) on each Core. The digital values are Factory Calibrated and displayed by temperature software. Intel Factory Calibration affects the accuracy of Tjunction, or Core temperatures.
If their Tjunctions are in the low 30's, then Tcase will be slightly lower (not as high as 43C)) ... I'd expect this to be because the power saving features aren't active in the BIOS (or secondarily the possibility of a BIOS error)
Regardless, you've expressed concerns regarding temperature accuracies, with which I agree. Consequently, Section 9: Calibrations is devoted entirely to achieving accurate CPU temperature and Core temperatures. It works. You should give it a try.
Section 1: Introduction
... Since these sensors measure 2 distinct thermal levels, there is a 5c temperature difference between them, which is Tcase to Tjunction Gradient...
Section 5: Findings
(G) Existing test data from several Intel papers - http://arxiv.org/ftp/arxiv/papers/0709/0709.1861.pdf - as well as numerous independent sources show Tcase to Tjunction Gradient has a known Offset which is 5c, and is Calibrated at Load using a standardized Test Setup.
I hope this helps to calrify how CPU temperature and Core temperatures work.
Thanks for pointing out the bits I missed in there, specifically the points about calibration.
On my setup I don't have CPUTIN, just SYSTIN0 and SYSTIN1. SYSTIN0 is definately Tcase, its always approximately reading 3c below core temp. SYSTIN1 I expect is my NB temp. On one occasion I had SYSTIN1 report -4C, and I've also had SYSTIN3 appear and disappear, and I've had it show a fan reading of 38000RPM. I had similar things on my Asrock board as well. So yeah I've got very little faith in those numbers at times. I also don't trust SYSTIN1, I've had it show 32C but the heatsink was burning hot (have replaced heatsink with a heatpipe unit for NB now).
But all that is totally irrelevant to this thread, just thought it was interesting.
Hopefully we haven't confused the OP too much.
Edit: and yes I'll be more careful about opening my trap in future