YoDo you agree that technically it's more accurate to measure something with a ruler marked with cm rather than inches? If so, then you will also agree that having a timing mechanism to accuracy of 1/3.579545Mhz (Amiga) is more accurate than one at 1/1.19318Mhz (PC). Opinions are only good if you don't have the facts.
Do you agree that technically it's more accurate to measure something with a ruler marked with cm rather than inches? If so, then you will also agree that having a timing mechanism to accuracy of 1/14.3818 MHz (PC) is more accurate than one at 1/3.579545Mhz (Amiga)?
There are several timers in the X86 PC..
One should read up on Pentium era APIC timer.
The minimum resolution with this APIC-based timer is in the magnitude of microseconds. With the bus speed of
100 MHz for 2001 era X86 PCs, the minimum resolution should be 0,1 microseconds (1/100 MHz). But due to the calculation time needed for switching to the interrupt service routine (e.g. saving context info) the achievable accuracy is about 1 microsecond. This is a 1,000 to 10,000 times higher precision than the pre-APIC PC timer.
There's High Precision Event Timer (HPET) in Windows.
To quote Microsoft
Timer Requirements
Chipset vendors should implement an HPET to comply with Intels "IA-PC HPET (High Precision Event Timers) Specification". This spec will be available on Intels web site in the second quarter of 2002 with royalty free licensing terms.
Microsoft is in the process of adding the requirements for the HPET to the Windows Logo Program for Hardware to check for the presence and quality of the HPET in chipsets. Although no timeline has been set in regard to when this hardware will be required for a logo, Windows Hardware Quality Lab (WHQL) tests will begin testing the quality of the HPET, if it is implemented, in the timeframe of the release of Windows Vista. Some of the requirements stated in Intels HPET spec are re-articulated below.
Windows Vista, Windows 2008, x86 based versions of Mac OS X, Linux 2.6 are known to use HPET.
"The accuracy of the main counter is as accurate
as the 14.3818 MHz clock." - Intel Corp.
HPET is included in following chipsets/southbridges
Intel ICH5
Intel ICH6
Intel ICH7 (e.g. Napa platform),
Intel ICH8(e.g. SantaRosa platform)
Intel ICH9 (e.g. Montevina platform).
AMD/ATI 690 chipsets
AMD/ATI 7x0 chipsets
AMD 8111 chipsets
nVidia nForce 5 chipsets
nVidia nForce 4 chipsets
Refer to
http://softwarecommunity.intel.com/isn/Community/en-US/forums/thread/30225022.aspxTo quote Intel support
Intel's answer:. The HPET (High Precision Event Timers) is a component that is part of the chipset. However, the firmware (BIOS/EFI) needs to enable it, and will provide you with the means to get to it via the various ACPI methods.
Intel(R) chipsets, since quite some time ago (at least a year, if not more), have HPET on board. However, not all vendors that sell machines with Intel(R) chipsets enable HPET in their firmware. Some have it as a BIOS option, and sometimes it defaults to Off.
Edited to add: HPET has been productized and supported in chipsets since Intel® ICH5 (at least from a client perspective -- embedded and server/workstation specific chipsets may be different).
==
Lexi S.
Intel(R) Software Network Support
PS; To test HPET, Intel recommends Linux.
In this forums, you'll notice engineers from Mitac Technology Corporation i.e. ODM laptop vendor.
If you want to hack/learn the latest X86 hardware, its better you go via Linux.