现代处理器中是否常见多个时钟域?

Are multiple clock domains common in modern processors?

我正在阅读 Euiseong Seo 等人的“Energy Efficient Scheduling of Real-Time Tasks on Multicore Processors" (2008, doi: 10.1109/TPDS.2008.104, PDF”。在某一点上,他们指出具有单个时钟域的多核架构是最常见的。情况仍然如此吗?

现代处理器(和 SoC)通常有多个时钟域。例如,AMD 的 Phenom (2007)“will allow individual cores to request different clock speeds", IBM's POWER7 (2010) provided a digital phase-locked loop per core slice (Charles R. Lefurgy et al., "Active Management of Timing Guardband to Save Energy in POWER7", Figure 1, PDF), SPARC T3 had "Six clock and four voltage domains" (Wikipedia is quoting Jinuk Luke Shin et al.'s "A 40nm 16-core 128-thread CMT SPARC SoC processor"; this does not provide per-core clock control), Intel's Silvermont provides a PLL per module (pair of cores sharing an L2 [see David Kanter's "Silvermont, Intel’s Low Power Architecture”。快速搜索似乎表明主流英特尔处理器不支持不同内核的不同频率,尽管它们实现了不同的时钟域(例如,L3 缓存和环形互连以及具有独立时钟的内核,允许 L3 被窥探(例如,由 GPU)全速运行而不强制内核全速运行)。

对于异构多核(例如 ARM 的 big.LITTLE),如果希望不同的内核同时运行(不同的内核微体系结构通常具有不同的频率范围),不同的时钟域几乎是一个要求。