用于高頻時鐘的低噪聲計時的狀態機的制作方法
【技術領域】
[0001]總體而言,本公開涉及集成電路,并且更具體地說,涉及減小由集成電路時鐘樹的電容引起的噪聲。
【背景技術】
[0002]集成電路要求時鐘信號確保它們各種部件的同步和有效運轉。通常,鎖相環(PLL)提供時鐘信號的同步版本,并且時鐘網格或時鐘樹給集成電路的各種部件分配時鐘信號的各種版本。根據典型現代時鐘樹的高功率和高頻率,可能不得不處理噪聲問題。例如,時鐘樹生成顯著的電容,這會引起可能對集成電路的一個或多個部件的正確操作造成干擾的噪聲。這種噪聲可能在時鐘門控(例如,時鐘啟用、時鐘禁用)和復位定序(例如,熱復位、掃描測試)期間尤其明顯。
[0003]具體而言,可從方程式I = CVF確定時鐘網格中消耗的電流,其中C是時鐘電容、F是頻率,并且V是電壓。如果時鐘的頻率改變得非常快,如快速地從時鐘關閉狀態轉變到對許多現代CPU已知的多GHz時鐘頻率,那么dl/dT將非常高,因此如以上討論的可能生成噪聲。現代娃中電壓噪聲的一個來源是裸片封裝電感。根據定義,電感L上的電壓等于V =Ldl/dTo電壓噪聲影響處理器可運行的速度。
[0004]對于在現代集成電路裝置如計算機系統中的使用,用于管理時鐘樹中噪聲的已知技術不合期望地慢。
【發明內容】
[0005]根據本公開的一些實施方案的設備、系統和方法可通過漸增或漸減時鐘信號來管理時鐘狀態轉換期間在時鐘網格中引起的噪聲。通過減小時鐘頻率的改變速率且同時仍允許快速和復雜的時鐘控制行為,可減少電壓噪聲。可通過任何方法,如通過生長或沉積來在微電路內形成控制和實施這種時鐘信號管理的機構。
[0006]根據本公開的一些實施方案的設備包括:具有第一速率的時鐘;和處理器,所述處理器被配置來:接收將具有第一速率的時鐘調整為第二速率的信號;并且響應于接收信號,將時鐘從第一速率漸變到第二速率,其中漸變包括將時鐘的頻率改變為第一速率與第二速率之間的至少一個第三速率。
[0007]根據本公開的一些實施方案的方法包括:接收將具有第一速率的時鐘調整為第二速率的信號;并且響應于接收信號,將時鐘從第一速率漸變到第二速率,其中漸變包括將時鐘的頻率改變為第一速率與第二速率之間的至少一個第三速率。
[0008]本公開的一些實施方案可被用在任何類型的集成電路中,所述集成電路使用多個計算單元、共享緩存單元以及功率管理單元。一個實例是通用微處理器。
【附圖說明】
[0009]所公開的主題將在下文中參考附圖來描述,其中類似參考數字表示類似元件,并且:
[0010]圖1是根據本公開的一些實施方案的包括時鐘電路的集成電路的簡化示意圖。
[0011]圖2A提供根據本公開的一些實施方案的包括如圖1中示出的一個或多個電路的娃裸片/芯片的表不。
[0012]圖2B提供根據本公開的一些實施方案的包括可在制造設施中產生的一個或多個裸片/芯片的硅晶圓的表示。
[0013]圖3A是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0014]圖3B是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0015]圖3C是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0016]圖3D是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0017]圖3E是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0018]圖4A是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0019]圖4B是根據本公開的一些實施方案的各種時鐘信號的波形圖。
[0020]圖5是根據本公開的一些實施方案的狀態機圖。
[0021]圖6是根據本公開的一些實施方案的與時鐘信號管理相關的方法的流程圖。
[0022]雖然所公開的主題易產生各種修改和替代形式,但其一些實施方案已通過舉例在附圖中示出并在本文中詳細描述。然而,應當理解,本文對具體實施方案的描述并不意圖將所公開的主題限制于所公開的特定形式,而正相反,其意圖是涵蓋落在所公開的主題的如隨附權利要求書定義的精神和范圍內的所有修改、等效物和替代物。
【具體實施方式】
[0023]本公開的一些實施方案提供集成電路裝置中時鐘的漸變。通過這樣做,可減小由時鐘門控和復位定序生成的、由與集成電路裝置的時鐘樹相關聯的電容引起的噪聲,從而改進集成電路裝置的性能。
[0024]現在參考圖1,是一個框圖,其示出根據本公開的一些實施方案的計算機系統100的部件的程式化表示。計算機系統100可至少包括集成電路110和存儲裝置115。集成電路110的部件包括但不限于鎖相環(PLL) 120。PLL 120生成并分配時鐘PLLCLK。緩沖器125可緩沖時鐘信號,導致PLLCLK_BUF信號。CKGEN邏輯130接收PLLCLK_BUF信號并生成漸變信號,例如,RampB 140和RampA 150。觸發器(flip-flop) 142可通過RampB 140信號來計時。觸發器142可提供鎖存到PLLCLK的上升沿上的數據。低態有效鎖存器152可接收并作用于RampA 150信號。鎖存器152可提供基于PLLCLK的上升沿建立并保持的數據。多路復用器155可作用于從觸發器142和鎖存器152接收的信號并輸出信號。OR門170可接收多路復用器155輸出的信號。OR門170還可接收與測試模式相關的時鐘信號,例如TST_CLK160o OR門170將CCLK信號輸出到集成電路110的CCLK網格180。
[0025]現在參考圖2A,在一些實施方案中,集成電路110可駐留在硅裸片/芯片240上。硅裸片/芯片240可被安裝在計算機系統100的主板或其他結構上。在一個或多個實施方案中,在每個硅裸片/芯片240上可能有多于一個的集成電路110。集成電路110的各種實施方案可被用在廣泛多種電子裝置中。
[0026]現在參考圖2B,根據一些實施方案,并如上所述,集成電路110可被包括在硅芯片/裸片240上。硅芯片/裸片240可包括集成電路110的一個或多個不同配置。可在制造設施(或“fab”) 290中在硅晶圓230上產生硅芯片/裸片240。也就是說,硅晶圓230和硅裸片/芯片240可被稱為fab 290的輸出或產品。硅芯片/裸片240可用在電子裝置中。
[0027]可通過本領域已知的任何方法在半導體材料上形成本文描述的電路。例如,可通過生長或沉積或通過本領域已知的任何其他方法來完成所述形成。在微電路裝置的設計和制造過程中可使用不同種類的硬件描述語言(HDL)。實例包括VHDL和Verilog/Verilog-XL0在一個實施方案中,可使用HDL代碼(例如,寄存器傳輸級(RTL)代碼/數據)來生成GDS數據、GDSII數據等等。例如,GDSII數據是描述型文件格式,并且可被用在不同實施方案中來表示半導體產品或裝置的三維模型。此類模型可由半導體制造設施使用來創建半導體產品和/或裝置。GDSII數據可存儲為數據庫或其他程序存儲結構。此數據也可存儲在計算機可讀存儲裝置(例如,數據存儲單元、RAM、光盤、DVD、固態存儲器等等)中并且在一個實施方案中,可被用來配置制造設施(例如,通過使用掩膜作品)以便創建能夠實施當前公開的各種方面的裝置。如本領域技術人員或普通技術人員所理解的,可將它編程到計算機、處理器或控制器中,所述控制器可隨后整體或部分地控制半導體制造設施(或fab)的操作來創建半導體產品和裝置。這些工具可被用來構造本文描述的本公開的實施方案。
[0028]圖3A-3E提供用于各種情況的波形圖。圖3A示出用于將CCLK從PLLCLK/10的初始時鐘值漸變到PLLCLK/4的波形圖。PLLCLK/4值可適合于掃描移位操作。圖3B示出用于在掃描移位之后將CCLK從PLLCLK/4漸變到PLLCLK的波形圖。圖3C示出用于將CCLK從PLLCLK直接切換到PLLCLK/4處的掃描移位的波形圖。圖3D示出用于在門控器被解除斷言時漸減CCLK從而允許集成電路進入低功率模式的波形。圖3E示出用于在門控器被斷言時漸增CCLK從而允許集成電路從低功率模式退出的波形。
[0029]圖3D-3E示出CCLK的抖動期。“抖動”在本文中用于指時鐘通過使用兩個頻率之間的中間時鐘啟用周期模式而在一段時間內從第一頻率到第二頻率的傳輸,以及從第一頻率到第二頻率的漸變。中間時鐘啟用周期模式可為隨機的或預先編程的。例如,圖3D示出從CCLK的第一頻率(等于PLLCLK)到CCLK的第二頻率(等于PLLCLK/2)的向下抖動。圖3E示出從CCLK的第一頻率(等于PLLCLK/2)到CCLK的第二頻率(等于PLLCLK)的向上抖動。
[0030]時鐘抖動可幫助消除中期電流消耗,從而最小化di/dt事件,否則如果在單個步驟中從PLLCLK/2改變為PLLCLK,則預計會發生di/dt事件。例如,如果電流在全頻率下是2A并且在半頻率下是1A,那么可使用抖動模式(如以下描述的一個)平緩地漸變4個周期內的平均電流。這一電流漸變可給予較長的裸片外(off-die)電容器時間來響應電流改變且可減小突然改變導致的電壓下降。
[0031]圖4A-4B提供可用于探測時鐘門控核心或其他計算單元的緩存的波形圖。在圖4A中,例如,就在用于CPU核心的時鐘控制(CoreClkOn)即將進入時鐘門控狀態時可做出探測請求(PrbRequest)。CoreClkOn信號可保持為低的到探測狀態機,以保證探測在實際時鐘被移除之前停頓。在描繪的實施方案中,因為發生了 PrbRequest,ProbeActive被設置為高的并且MasterClockEnable不被降低。在探測完成(由PrbResponse被設置為高的并且ProbeActive被設置為低的示出)之后,CoreClkOn被降低并且隨后,因為ProbeActive是低的,MasterClockEnable 下降。
[0032]在圖4B中,用于CPU核心的時鐘控制(CoreClkOn)在請求探測之前已進入時鐘門控狀態。在此描繪的情境中,MasterClockEnable和CoreClkOn均被設置為低的。因此,探測狀態機被配置來不發送PrbRequest,而是將ProbeActive設置為高的以向時鐘控制邏輯發送