本申請要求于2016年5月2日在韓國知識產(chǎn)權局提交的第10-2016-0054256號韓國專利申請的優(yōu)先權的權益,該申請的公開內(nèi)容通過引用全部包含于此。
本發(fā)明構思的各種示例實施例涉及外圍組件互連高速(pcie)裝置,更具體地,涉及用于支持具有獨立擴頻時鐘(ssc)的單獨參考時鐘(separatereferenceclockwithindependentssc,sris)的pcie裝置,其可以自動選擇從幾個不同時鐘源輸出的一個參考時鐘信號作為操作時鐘信號。
背景技術:
通常,在包括pcie主機和pcie裝置的pcie系統(tǒng)中使用具有100mhz的頻率的參考時鐘信號。提供參考時鐘信號的方法可以分為公共參考時鐘信號方法和單獨參考時鐘信號方法。
公共參考時鐘信號方法是pcie裝置和pcie主機共享一個參考時鐘源的方法,在pcie主機中實施參考時鐘源。在公共參考時鐘信號方法中,參考時鐘信號由參考時鐘源產(chǎn)生并通過pcie連接器提供到pcie裝置。需要在pcie連接器中安排用于提供參考時鐘信號的引腳。
單獨參考時鐘信號方法是pcie裝置和pcie主機分別各具有不同的參考時鐘源的方法,pcie裝置和pcie主機的參考時鐘源分別產(chǎn)生各自的參考時鐘信號以由相應的pcie裝置或pcie主機在操作中使用。在這種情況下,pcie裝置和pcie主機可以使用pcie電纜等彼此連接,并且pcie電纜不需要用于提供參考時鐘信號的引腳。
技術實現(xiàn)要素:
本發(fā)明構思的至少一個示例實施例涉及一種用于支持具有獨立擴頻時鐘(ssc)的單獨參考時鐘(sris)的外圍組件互連高速(pcie)裝置,所述外圍組件互連高速裝置包括:連接器,在連接到pcie主機并且被配置為從pcie主機接收第一參考時鐘信號的結構中;時鐘信號發(fā)生器,被配置為產(chǎn)生第二參考時鐘信號;以及選擇電路,被配置為確定是否通過連接器提供第一參考時鐘信號,并且基于所述確定將所述第一參考時鐘信號和所述第二參考時鐘信號中的一個發(fā)送到收發(fā)器。
本發(fā)明構思的至少一個示例實施例涉及一種用于支持具有獨立擴頻時鐘(ssc)的單獨參考時鐘(sris)的外圍組件互連高速(pcie)裝置,所述外圍組件互連高速裝置包括:時鐘信號發(fā)生器,被配置為產(chǎn)生第二參考時鐘信號;以及物理層,被配置為自動檢測是否從pcie主機提供第一參考時鐘信號,并且根據(jù)所述檢測結果選擇所述第一參考時鐘信號或所述第二參考時鐘信號作為pcie裝置的主參考時鐘信號。
本發(fā)明構思的至少一個示例實施例涉及一種用于支持多個時鐘信號的外圍組件互連高速(pcie)裝置,所述外圍組件互連高速裝置包括:裝置時鐘發(fā)生器,被配置為產(chǎn)生裝置時鐘信號;選擇電路,被配置為接收多個時鐘信號,所述多個時鐘信號包括從pcie主機接收的外部時鐘信號和所述裝置時鐘信號,基于所述多個時鐘信號產(chǎn)生結果并且基于所述產(chǎn)生的結果發(fā)送參考時鐘信號,參考時鐘信號從所述多個時鐘信號中選擇;以及收發(fā)器,被配置為使用發(fā)送的參考時鐘信號將pcie數(shù)據(jù)傳送到另一pcie裝置。
附圖說明
圖1是示出根據(jù)本發(fā)明構思的至少一個示例實施例的pcie系統(tǒng)的示意性配置的框圖;
圖2是示出根據(jù)本發(fā)明構思的至少一個示例實施例的在圖1中示出的pcie裝置的物理層中實施的電路的框圖;
圖3是示出根據(jù)本發(fā)明構思的至少一個示例實施例的在圖1中示出的pcie裝置的物理層中實施的電路的框圖;
圖4是描述根據(jù)本發(fā)明構思的至少一個示例實施例的當?shù)谝粎⒖紩r鐘信號從圖1的pcie主機被提供到圖1的pcie裝置時,圖2中示出的物理層的操作的時序圖;
圖5是描述根據(jù)本發(fā)明構思的至少一個示例實施例的當?shù)谝粎⒖夹盘栁磸膱D1的pcie主機被提供到圖1的pcie裝置時,圖2中示出的物理層的操作的時序圖;
圖6是根據(jù)本發(fā)明構思的至少一個示例實施例的用于描述操作圖2或圖3中示出的pcie裝置的物理層的方法的流程圖;
圖7是根據(jù)本發(fā)明構思的至少一個示例實施例的用于具體描述圖6中示出的判斷步驟的流程圖。
具體實施方式
圖1是示出根據(jù)本發(fā)明構思的示例實施例的pcie系統(tǒng)的示意性配置的框圖。參照圖1,pcie系統(tǒng)50(例如,包括pcie接口的計算機系統(tǒng))可以包括pcie主機100、pcie裝置200和提供pcie主機100與pcie裝置200之間的連接的pcie接口300,但是示例實施例不限于此。例如,雖然在圖1中僅描繪了單個pcie主機和單個pcie裝置,但是示例實施例不限于此,并且在pcie系統(tǒng)50中可以存在pcie主機和/或pcie裝置的任意組合。
pcie主機100可以是產(chǎn)生第一參考時鐘信號refclk_mb并將第一參考時鐘信號refclk_mb提供到pcie裝置200和/或計算裝置的主板的計算裝置。計算裝置可以是個人計算機(pc)、膝上型計算機、平板電腦、移動計算裝置、智能裝置等。
pcie裝置200可以通過pcie接口300連接到pcie主機100,并且可以使用從pcie主機100提供的第一參考時鐘信號refclk_mb或者在pcie裝置200中產(chǎn)生的第二參考時鐘信號refclk_aic作為參考時鐘信號。pcie裝置200可以支持具有獨立擴頻時鐘(ssc)的單獨參考時鐘(sris)。
pcie裝置200可以是擴展卡、擴展板、適配卡、附加卡、附件卡、外圍裝置等,并且可以包括可插入到電連接器(例如,pcie接口連接)和/或位于pcie主機100的主板上的擴展槽中以通過pcie總線(例如,擴展總線)向pcie系統(tǒng)50(和/或計算機系統(tǒng))提供附加功能的印刷電路板(pcb)。另外,pcie裝置200還可以是諸如固態(tài)驅動器(ssd)的存儲裝置、圖形卡、網(wǎng)卡、usb卡等。
pcie主機100可以包括第一時鐘信號發(fā)生器105和pcie主機控制器110,但不限于此。第一時鐘信號發(fā)生器105和pcie主機控制器110可以安裝在主板上,但不限于此。pcie主機控制器110可以包括pcie核心120、事務層130、數(shù)據(jù)鏈路層140和物理層150等。
pcie裝置200可以包括連接器202、第二時鐘信號發(fā)生器205和pcie裝置控制器210,但是不限于此。pcie裝置控制器210可以包括pcie核心220、事務層230、數(shù)據(jù)鏈路層240和物理層250等。
pcie層包括三個離散的邏輯層,即事務層130或230、數(shù)據(jù)鏈路層140或240以及物理層150或250。層130或230、140或240和150或250中的每一個被分成兩個部分(section)。發(fā)送部分tx處理出站信息(例如,將要發(fā)送的信息),接收部分rx處理入站信息(例如,將要接收的信息)。
pcie協(xié)議使用數(shù)據(jù)包(packet)在諸如pcie主機100和pcie裝置200的各種組件之間交流信息。
根據(jù)pcie協(xié)議的協(xié)議棧,上層是事務層130或230。事務層130或230的首要職責是組裝和拆解事務層數(shù)據(jù)包(tlp)。tpl用于對事務進行通信。
在pcie協(xié)議棧中,中間層是數(shù)據(jù)鏈路層140或240。數(shù)據(jù)鏈路層140或240用作事務層130或230與物理層150或250之間的中間級。數(shù)據(jù)鏈路層140或240的首要職責是包括錯誤檢測和糾錯的數(shù)據(jù)完整性和鏈路管理。
數(shù)據(jù)鏈路層140或240的發(fā)送側(例如,發(fā)送部分)接受在事務層130或230中組裝的tlp,計算并應用數(shù)據(jù)保護代碼和tlp序列號并且將數(shù)據(jù)保護代碼和tlp序列號發(fā)送到物理層150或250以通過包括在pcie接口300中的至少一個鏈路(例如,鏈路310)進行發(fā)送。
數(shù)據(jù)鏈路層140或240的接收側(例如,接收部分)檢查所接收的tlp的數(shù)據(jù)完整性并且將tlp提交到事務層130或230以進行附加處理。
物理層150或250包括用于物理接口操作的電路。物理層電路包括驅動器、輸入緩沖器、串行-并行轉換電路、并行-串行轉換電路、鎖相環(huán)路(pll)和阻抗匹配電路。物理層150或250還包括與pcie接口的初始化和維護相關的邏輯功能。
pcie接口300包括包含用于發(fā)送數(shù)據(jù)包的第一傳輸線310-1和第二傳輸線310-2的至少一個鏈路310。
pcie主機100包括用于產(chǎn)生第一參考時鐘信號refclk_mb的第一時鐘信號發(fā)生器105,其中,所述第一參考時鐘信號refclk_mb至少被提供到物理層150和pcie接口300。pcie核心120通常可以控制pcie主機控制器110。pcie核心120通常可以控制pcie裝置控制器210。
根據(jù)本發(fā)明構思的一些示例實施例,參照圖2至圖7描述的電路涉及pcie裝置控制器210的新穎的物理層(phy)250(例如,物理層250b),其支持多個參考時鐘源并且可以自動選擇從多個參考時鐘源輸出的一個參考時鐘信號作為操作時鐘信號。因此,下面將詳細描述根據(jù)本發(fā)明構思的一些示例實施例的物理層250的電路的結構和功能。
圖2是示出根據(jù)本發(fā)明構思的至少一個示例實施例的在圖1中示出的pcie裝置的物理層中實施的電路的框圖。參照圖1和圖2,用于支持具有獨立擴頻時鐘(ssc)的單獨參考時鐘(sris)的pcie裝置200的pcie裝置控制器210包括第二時鐘信號發(fā)生器205和新穎的pcie物理層250a。
第二時鐘信號發(fā)生器205產(chǎn)生第二參考時鐘信號refclk_aic。物理層250a可以自動檢測第一參考時鐘信號refclk_mb是從pcie主機100提供的還是從另一個源提供的,并且根據(jù)或者基于檢測的結果選擇第一參考時鐘信號refclk_mb和第二參考時鐘信號refclk_aic中的一個作為參考時鐘信號refclk。
根據(jù)至少一個示例實施例,物理層250a可以包括收發(fā)器260、內(nèi)部時鐘信號發(fā)生器270以及參考時鐘選擇電路280a。該收發(fā)器260可以包括鎖相環(huán)路(pll)電路262、發(fā)送器264和接收器266等,但是不限于此。
pll電路262可以使用參考時鐘信號refclk產(chǎn)生將要提供到發(fā)送器264和/或接收器266的時鐘信號。參考時鐘信號refclk可以是從參考時鐘選擇電路280a輸出的refclk_mb時鐘信號或refclk_aic時鐘信號。參考時鐘信號refclk可以是從pcie主機100發(fā)送的第一參考時鐘信號refclk_mb和在pcie裝置200中產(chǎn)生的第二參考時鐘信號refclk_aic中的一個。
pll電路262可通過將參考時鐘信號refclk與期望頻率相乘來基于參考時鐘信號refclk產(chǎn)生具有改變的頻率的新時鐘信號。例如,pll電路262可以通過將參考時鐘信號refclk與100mhz的頻率相乘來產(chǎn)生具有2.5ghz的頻率的時鐘信號。
根據(jù)至少一個示例實施例,發(fā)送器264可以使用pll電路262的輸出信號將并行數(shù)據(jù)信號轉換為串行數(shù)據(jù)信號pcietx,并且通過連接到pcie主機100的接收部分rx第一通道310-1將串行數(shù)據(jù)信號pcietx發(fā)送到pcie主機100,但不限于此。
根據(jù)至少一個示例實施例,接收器266通過連接到pcie主機100的發(fā)送部分tx的第二通道310-2接收從pcie主機100發(fā)送的串行數(shù)據(jù)信號pcierx,并且產(chǎn)生用于恢復接收的串行數(shù)據(jù)信號的時鐘信號及用于使用pll電路262的輸出信號將恢復的串行數(shù)據(jù)信號轉換為并行數(shù)據(jù)信號的時鐘信號,但不限于此。
參考時鐘選擇電路280a可以選擇從pcie主機100發(fā)送的第一參考時鐘信號refclk_mb和在pcie裝置200中產(chǎn)生的第二參考時鐘信號refclk_aic中的一個作為用于pcie裝置200的操作的參考時鐘信號refclk。即,參考時鐘選擇電路280a可以自動進行確定是否從pcie主機100提供第一參考時鐘信號refclk_mb,并且因此發(fā)送第一參考時鐘信號refclk_mb,或者根據(jù)確定結果,使用由pcie裝置200產(chǎn)生的第二參考時鐘信號并且將第二參考時鐘信號refclk_aic發(fā)送到收發(fā)器260。
參考時鐘選擇電路280a可以包括第一計數(shù)器281a、第二計數(shù)器282a、比較器283a、選擇器285和時鐘門控電路287,但是示例實施例不限于此。
當?shù)谝粎⒖紩r鐘信號refclk_mb被提供到pcie裝置200時,第一計數(shù)器281a可以接收從pcie主機100發(fā)送的第一參考時鐘信號refclk_mb,對第一參考時鐘信號refclk_mb的切換(toggle)(或振蕩)次數(shù)進行計數(shù)并產(chǎn)生第一計數(shù)值refclk_mb_cnt。
第二計數(shù)器282a可以接收從pcie裝置200的第二時鐘信號發(fā)生器205(例如,內(nèi)部參考時鐘發(fā)生器、裝置參考時鐘發(fā)生器等)產(chǎn)生的第二參考時鐘信號refclk_aic,對第二參考時鐘信號refclk_aic的切換(或振蕩)次數(shù)進行計數(shù)并產(chǎn)生第二計數(shù)值refclk_aic_cnt。
第一計數(shù)值refclk_mb_cnt和第二計數(shù)值refclk_aic_cnt可以被提供到比較器283a。比較器283a可以是將第一計數(shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt進行比較、基于期望標準根據(jù)比較結果產(chǎn)生時鐘選擇信號clk_sel、并將時鐘選擇信號clk_sel輸出到選擇器285的邏輯門。另外,比較器283a可以是諸如處理器、cpu、asic等的可進行編程處理的裝置,其中,該可進行編程處理的裝置被配置為基于與多個相應時鐘信號(例如,refclk_mb_cnt、refclk_aic_cnt等)相關的多個計數(shù)值的比較結果來產(chǎn)生時鐘選擇信號。
用于選擇參考時鐘信號的期望標準可以是可配置的。例如,根據(jù)至少一個示例實施例,當?shù)谝挥嫈?shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差小于期望的參考值時,比較器283a可以產(chǎn)生用于選擇第一參考時鐘信號refclk_mb作為參考時鐘信號refclk的時鐘選擇信號clk_sel,并且將產(chǎn)生的時鐘選擇信號clk_sel輸出到選擇器285。換言之,可以基于兩個參考時鐘信號的切換和/或振蕩的計數(shù)與期望的閾值進行比較來選擇參考時鐘信號。
當?shù)谝挥嫈?shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差大于期望的參考值時,比較器283a可以產(chǎn)生用于選擇第二參考時鐘信號refclk_aic作為參考時鐘信號refclk的時鐘選擇信號clk_sel并將產(chǎn)生的時鐘選擇信號clk_sel輸出到選擇器285。
根據(jù)另一示例實施例,比較器283a可以被配置為使用從內(nèi)部時鐘信號發(fā)生器270(例如,輔助時鐘信號發(fā)生器)提供的內(nèi)部時鐘信號auxclk來決定位于第一計數(shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的比較時刻。例如,比較時刻可以是從pcie裝置200的重置起經(jīng)過某個(例如,期望的)時間段之后的時刻,和/或從第一計數(shù)器281a和/或第二計數(shù)器282a的操作開始起經(jīng)過某個期望的時間段之后的時刻。
比較器283a可以產(chǎn)生用于控制是否產(chǎn)生第二參考時鐘信號refclk_aic的控制信號clkgen_dis,并且可以向第二時鐘信號發(fā)生器205輸出控制信號clkgen_dis。例如,當?shù)谝挥嫈?shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差小于參考值時,比較器283a可以產(chǎn)生用于使第二時鐘信號發(fā)生器205斷電的控制信號clkgen_dis,并將控制信號clkgen_dis輸出到第二時鐘信號發(fā)生器205,但是示例實施例但不限于此。
換言之,控制信號clkgen_dis可以控制第二時鐘信號發(fā)生器的功率狀態(tài)(例如,通電、斷電等)。當?shù)诙r鐘信號發(fā)生器205根據(jù)從比較器283a輸出的控制信號clkgen_dis而斷電時,包括第二時鐘信號發(fā)生器205的pcie裝置200的功耗降低。
選擇器285可以響應于和/或基于時鐘選擇信號clk_sel將第一參考時鐘信號refclk_mb和第二參考時鐘信號refclk_aic中的一個發(fā)送到時鐘門控電路287。選擇器285可以是多路復用器(mux)等,并且可以被配置為接收諸如時鐘信號refclk_mb、refclk_aic等的多個參考時鐘信號并可以基于時鐘選擇信號(例如,clk_sel)來選擇和/或輸出這些參考時鐘信號中的一個。
時鐘門控電路287可以在選擇器285選擇參考時鐘信號之前門控和/或阻斷向pll電路262提供參考時鐘信號refclk。因此,防止了將不穩(wěn)定和/或不期望的參考時鐘信號refclk提供到pll電路262。
例如,時鐘門控電路287可以響應于從比較器283a輸出的激活的時鐘使能信號clk_en而將從選擇器285輸出的參考時鐘信號refclk輸出到pll電路262。在圖4和圖5中示出了根據(jù)一些示例實施例的激活時鐘使能信號clk_en的時序。
另外,根據(jù)至少一個示例實施例,物理層250a還可以接收指示pcie裝置200將被重置的重置信號perst_n。將結合圖4更詳細地討論重置信號perst_n。
圖3是示出根據(jù)本發(fā)明構思的一些示例實施例的在圖1中示出的pcie裝置的物理層中實施的電路的框圖。參照圖3,根據(jù)至少一個示例實施例,pcie裝置200的物理層250b可以包括收發(fā)器260、內(nèi)部時鐘信號發(fā)生器270和參考時鐘選擇電路280b,但不限于此。
圖3中示出的收發(fā)器260和內(nèi)部時鐘信號發(fā)生器270與圖2中示出的收發(fā)器260和內(nèi)部時鐘信號發(fā)生器270執(zhí)行相同或相似的功能,因此,將省略對這些組件的具體描述。
參考時鐘選擇電路280b可以響應于(或基于)時鐘選擇信號clk_sel選擇從pcie主機100提供的第一參考時鐘信號refclk_mb和在pcie裝置200中產(chǎn)生的第二參考時鐘信號refclk_aic中的一個作為用于pcie裝置200的操作的參考時鐘信號refclk。
參考時鐘選擇電路280b可以自動確定是否選擇從pcie主機100提供的第一參考時鐘信號refclk_mb作為參考時鐘信號并將其發(fā)送到收發(fā)器260,并且根據(jù)確定結果自動確定是否選擇由pcie裝置200產(chǎn)生的第二參考時鐘信號refclk_aic作為參考時鐘信號并將其發(fā)送到收發(fā)器260。
參考時鐘選擇電路280b可以包括寄存器282b、cpu284b、選擇器285和時鐘門控電路287。根據(jù)至少一個示例實施例,寄存器282b可以是用于存儲信息(諸如與pcie裝置200的操作相關的配置數(shù)據(jù))的環(huán)境配置寄存器。寄存器282b還可以存儲用于選擇pcie裝置200的參考時鐘信號refclk的指示數(shù)據(jù)ind。在至少一個示例實施例中,指示數(shù)據(jù)ind可以是由pcie主機100的pcie核心120產(chǎn)生并通過pcie裝置200的cpu284b存儲在寄存器282b中的數(shù)據(jù)。即,從pcie主機100發(fā)送的指示數(shù)據(jù)ind可以存儲在寄存器282b中。
指示數(shù)據(jù)ind可以包括與由pcie主機100的第一時鐘信號發(fā)生器105產(chǎn)生的第一參考時鐘信號refclk_mb是否被提供給pcie裝置200有關的信息。換言之,指示數(shù)據(jù)ind提供指示多個參考時鐘信號中哪一個將被選擇為將由pcie裝置200使用的參考時鐘的數(shù)據(jù),例如,是refclk_mb信號還是refclk_aic信號被用作參考時鐘。例如,當指示數(shù)據(jù)ind指示第一電平(例如,高信號或數(shù)據(jù)值1等)時,可以表示第一參考時鐘信號refclk_mb被提供或將被提供到pcie裝置200。然而,當指示數(shù)據(jù)ind指示第二電平(例如,低信號或數(shù)據(jù)值0等)時,指示數(shù)據(jù)ind可以表示第一參考時鐘信號refclk_mb不被提供到pcie裝置200而第二參考時鐘信號refclk_aic被提供到pcie裝置200。然而,示例實施例不限于此,指示數(shù)據(jù)ind可以使用任何值,參考時鐘信號的數(shù)量可以大于所描述的兩個。
在pcie主機100與pcie裝置200之間建立鏈接(例如,連接等)之后或者在pcie裝置200(物理地)連接到pcie主機100等之后,pcie主機100可以通過pcie接口300(未示出)將指示數(shù)據(jù)ind與寫命令一起發(fā)送到pcie裝置200。根據(jù)至少一個示例實施例,pcie裝置200的cpu284b可以響應于寫命令將指示數(shù)據(jù)ind寫入寄存器282b。
cpu284b通常可以通過提供用于參考時鐘選擇電路280b的操作的控制信號等來控制參考時鐘選擇電路280b的操作。例如,cpu284b可以從寄存器282b讀取先前存儲的指示數(shù)據(jù)ind,并且基于指示數(shù)據(jù)ind產(chǎn)生將發(fā)送到選擇器285的時鐘選擇信號clk_sel和/或將發(fā)送到時鐘門控電路287的時鐘使能信號clk_en。
例如,當從寄存器282b讀取的指示數(shù)據(jù)ind指示第一電平(和/或第一狀態(tài))時,cpu284b可以產(chǎn)生時鐘選擇信號clk_sel并將時鐘選擇信號clk_sel發(fā)送到選擇器285,該時鐘選擇信號clk_sel指示和/或控制選擇器285輸出和/或選擇第一參考時鐘信號refclk_mb作為參考時鐘信號refclk。
當從寄存器282b讀取的指示數(shù)據(jù)ind指示第二電平(和/或第二狀態(tài))時,cpu284b可以產(chǎn)生時鐘選擇信號clk_sel并將時鐘選擇信號clk_sel發(fā)送到選擇器285,該時鐘選擇信號clk_sel指示和/或控制選擇器285輸出和/或選擇第二參考時鐘信號refclk_aic作為參考時鐘信號refclk。盡管結合示例實施例僅討論了兩個參考時鐘,但是示例實施例不限于此,根據(jù)其它示例實施例可以存在更多數(shù)量的參考時鐘。
基于由選擇器285接收的時鐘選擇信號clk_sel的電平和/或狀態(tài),選擇器285可以將第一參考時鐘信號refclk_mb和第二參考時鐘信號refclk_aic中的一個發(fā)送到時鐘門控電路287。換言之,選擇器285基于從cpu284b接收的時鐘選擇信號clk_sel的狀態(tài)來選擇多個參考時鐘信號中的一個。
時鐘門控電路287可以在選擇參考時鐘信號refclk之前,對不穩(wěn)定的參考時鐘信號refclk至pll電路262的供應進行門控(和/或阻斷、延遲等)。換言之,時鐘門控電路287防止不穩(wěn)定的參考時鐘信號refclk發(fā)送到收發(fā)器260。
例如,時鐘門控電路287可以響應于從cpu284b輸出的被激活的(例如,被使能的、高的、被選擇的等)時鐘使能信號clk_en將從選擇器285輸出的參考時鐘信號refclk輸出到pll電路262。換言之,時鐘門控電路287基于接收到的從cpu284b輸出的時鐘使能信號clk_en將選擇的參考時鐘信號refclk發(fā)送到收發(fā)器260。根據(jù)一些示例實施例的用于激活時鐘選擇信號clk_sel和時鐘使能信號clk_en中的每一個的時序在圖4和圖5中示出。在至少一個示例實施例中,激活可以指從第二電平(例如,低值、“0”值等)到第一電平(例如,高值、“1”值等)的過渡,但不限于此。
另外,根據(jù)至少一個示例實施例,物理層250b還可以接收指示pcie裝置200將被重置的重置信號perst_n。將結合圖4更詳細地討論重置信號perst_n。
圖4是描述根據(jù)至少一個示例實施例的當?shù)谝粎⒖紩r鐘信號從圖1的pcie主機被提供到圖1的pcie裝置時,圖2中示出的物理層的操作的時序圖。參照圖1、圖2和圖4,假設pcie主機100通過pcie接口300將第一參考時鐘信號refclk_mb提供到pcie裝置200。因此,第一參考時鐘信號refclk_mb和第二參考時鐘信號refclk_aic都可以被提供到參考時鐘選擇電路280a,但是示例實施例不限于此,例如,可以存在提供到參考時鐘選擇電路280a的更大數(shù)量的參考時鐘信號。
根據(jù)一些示例實施例,第一參考時鐘信號refclk_mb可以通過pcie接口300和連接器202被提供到第一計數(shù)器281a以及選擇器285的第一輸入端。根據(jù)一些示例實施例,第二參考時鐘信號refclk_aic可以被提供到第二計數(shù)器281a和選擇器285的第二輸入端。
在第一時刻t1,釋放pcie裝置200的重置端(reset)(例如,pcie裝置200被重置)。當重置信號perst_n從低電平轉變?yōu)楦唠娖綍r,假設在圖4和圖5中pcie裝置200的重置端被釋放和/或重置。
當釋放pcie裝置200的重置端時,第一計數(shù)器281a和第二計數(shù)器282a可以執(zhí)行在第一時刻t1開始的計數(shù)操作。例如,第一計數(shù)器281a可以對第一參考時鐘信號refclk_mb的第一邊沿的數(shù)量進行計數(shù)(例如,對信號的上升沿進行計數(shù)),并產(chǎn)生第一計數(shù)值refclk_mb_cnt,但示例實施例不限于此,可以使用執(zhí)行計數(shù)操作的其它方法。第二計數(shù)器282a可以對第二參考時鐘信號refclk_aic的第一邊沿(例如,上升沿)的數(shù)量進行計數(shù),并且產(chǎn)生第二計數(shù)值refclk_aic_cnt,但是示例實施例不限于此。
在第二時刻t2,比較器283a可以比較第一計數(shù)值refclk_mb_cnt和第二計數(shù)值refclk_aic_cnt,和/或計算第一計數(shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差。然后,比較器283a可以將第一次比較的結果與參考值和/或期望的閾值進行比較,并且根據(jù)第二次比較的結果產(chǎn)生時鐘選擇信號clk_sel。根據(jù)至少一個示例實施例,可以基于內(nèi)部時鐘信號auxclk來決定比較器283a的比較時刻(例如,t2),如果改變了比較時刻,則參考值也會改變。
參照圖4,當?shù)谝挥嫈?shù)值(例如,refclk_mb_cnt=7)與第二計數(shù)值(例如,refclk_aic_cnt=8)之間的差小于或等于參考值和/或閾值(例如,n,其中,n是大于1的自然數(shù),例如2)時,則比較器283a可以確定第一參考時鐘信號refclk_mb的頻率和第二參考時鐘信號refclk_aic的頻率(例如,100mhz)彼此相等和/或在誤差容限范圍內(nèi)。換言之,計算refclk_mb_cnt值與refclk_aic_cnt值之間的差,并且將計算結果與期望的閾值進行比較,以便確定各個時鐘信號的頻率是否在期望的誤差容限范圍內(nèi)。
圖4的比較器283a可以向選擇器285輸出被激活的(例如,高電平信號、高信號、“1”值、使能信號等)時鐘選擇信號clk_sel,并且選擇器285可以基于激活的時鐘選擇信號選擇參考時鐘信號中的一個。換言之,根據(jù)至少一個示例實施例,可以根據(jù)激活的時鐘選擇信號clk_sel將提供到比較器283a的第一輸入端的第一參考時鐘信號refclk_mb輸出為用于pcie裝置200的操作的參考時鐘信號refclk。
在第三時刻t3,比較器283a可以產(chǎn)生激活的時鐘使能信號clk_en使得第一參考時鐘信號refclk_mb可以輸出(和/或發(fā)送)到pll電路262和收發(fā)器260作為參考時鐘信號refclk,該參考時鐘信號refclk可以表示為pll_in信號。比較器283a還可以將激活的時鐘使能信號clk_en輸出到時鐘門控電路287。
比較器283a可以向第二時鐘信號發(fā)生器205輸出激活的控制信號clkgen_dis以阻斷第二時鐘信號發(fā)生器205的功率(例如,停止到第二時鐘信號發(fā)生器的電流等)。如圖4所示,根據(jù)至少一個示例實施例,可以都激活(和/或同時激活)時鐘使能信號clk_en和控制信號clkgen_dis。因此,第二時鐘信號發(fā)生器205可以斷電以降低pcie裝置200的功耗并且時鐘門控電路287可以將參考時鐘信號refclk=refclk_mb提供給收發(fā)器260和pll電路262,該參考時鐘信號refclk可以表示為pll_in信號。
圖5是描述根據(jù)至少一個示例實施例的當?shù)谝粎⒖夹盘栁磸膱D1的pcie主機被提供到圖1的pcie裝置時,圖2中示出的物理層的操作的時序圖。參照圖1、圖2和圖5,假設pcie主機100不通過pcie接口300向pcie裝置200提供第一參考時鐘信號refclk_mb。換言之,pcie裝置200不從pcie主機100接收第一參考時鐘信號refclk_mb。因此,第二參考時鐘信號refclk_aic可以是提供到選擇電路280a的僅有的參考時鐘信號。
當在第一時刻t1釋放pcie裝置200的重置信號perst_n時,第一計數(shù)器281a和第二計數(shù)器282a可以執(zhí)行從第一時刻t1開始的計數(shù)操作。例如,第一計數(shù)器281a可以對第一參考時鐘信號refclk_mb的上升沿(例如,前沿)的數(shù)量進行計數(shù)并產(chǎn)生第一計數(shù)值refclk_mb_cnt。第二計數(shù)器282a可以對第二參考時鐘信號refclk_aic的上升沿的數(shù)量進行計數(shù)并產(chǎn)生第二計數(shù)值refclk_aic_cnt。
由于第一參考時鐘信號refclk_mb不被提供到pcie裝置200,所以根據(jù)此示例的情景,第一計數(shù)值refclk_mb_cnt為零。
在第二時刻t2,比較器283a可以比較第一計數(shù)值refclk_mb_cnt和第二計數(shù)值refclk_aic_cnt和/或計算第一計數(shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差。然后,比較器283a可以將計算的結果與期望的參考值(和/或期望的閾值)進行比較,并且根據(jù)與期望的參考值的比較的結果產(chǎn)生時鐘選擇信號clk_sel。
可以基于內(nèi)部時鐘信號auxclk來決定和/或設定比較器283a的比較時刻(例如,t2),并且期望的參考值可以隨著比較時刻的變化而變化。換言之,期望的參考值(例如,期望的閾值)可以基于設定的比較時刻。
參照圖5,由于第一計數(shù)值(refclk_mb_cnt=0)與第二計數(shù)值(refclk_aic_cnt=8)之間的差為8并且大于期望的參考值(例如,n,其中,n是大于1的自然數(shù),例如2),所以比較器283a向選擇器285輸出去激活的(例如,低電平的、“0”值等)時鐘選擇信號clk_sel。根據(jù)至少一個示例實施例,選擇器285可以根據(jù)去激活的時鐘選擇信號clk_sel來選擇提供到第二輸入端的第二參考時鐘信號refclk_aic作為用于pcie裝置200的操作的參考時鐘信號refclk。
在第三時刻t3,比較器283a可以產(chǎn)生激活的時鐘使能信號clk_en使得第二參考時鐘信號refclk_aic作為可被表示為pll_in信號的參考時鐘信號refclk被輸出和/或發(fā)送到收發(fā)器260和pll電路262。另外,比較器283a可以將激活的時鐘使能信號clk_en輸出到時鐘門控電路287。
比較器283a還向第二時鐘信號發(fā)生器205輸出指示不對第二時鐘信號發(fā)生器205的功率進行阻斷的去激活的(例如,低信號、“0”值等)控制信號clkgen_dis。換言之,比較器283a發(fā)送控制信號,該控制信號指示不中斷第二時鐘信號發(fā)生器205的功率。
根據(jù)至少一個示例實施例,第二時鐘信號發(fā)生器205可以響應于去激活的控制信號clkgen_dis保持第二參考時鐘信號refclk_aic的發(fā)生,并且時鐘門控電路287可以響應于激活的時鐘使能信號clk_en將參考時鐘信號refclk=refclk_aic提供到收發(fā)器260和pll電路262,該參考時鐘信號refclk可以表示為pll_in信號。
圖6是根據(jù)一些示例實施例的用于描述操作圖2或圖3中示出的pcie裝置的物理層的方法的流程圖。圖7是根據(jù)一些示例實施例的用于具體描述圖6中示出的判斷步驟的流程圖。參照圖1至圖7,當pcie主機100和pcie裝置200通過pcie接口300彼此連接時,pcie裝置200的第二時鐘信號發(fā)生器205可以產(chǎn)生第二參考時鐘信號refclk_aic并且可以向參考時鐘選擇電路(例如,280a或280b)提供第二參考時鐘信號refclk_aic(s110)。
參考時鐘選擇電路(例如,280a或280b)可以確定是否將從pcie主機100的第一時鐘信號發(fā)生器105輸出的第一參考時鐘信號refclk_mb提供到pcie裝置200(s120)。
現(xiàn)在參照圖7,參考時鐘選擇電路280a可以對第一參考時鐘信號refclk_mb的切換(toggle)和/或振蕩的次數(shù)進行計數(shù),以產(chǎn)生第一計數(shù)值refclk_mb_cnt(s122)。參考時鐘選擇電路280a可以對第二參考時鐘信號refclk_aic的切換和/或振蕩的次數(shù)進行計數(shù),以產(chǎn)生第二計數(shù)值refclk_aic_cnt(s124)。參考時鐘選擇電路280a可以計算第一計數(shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差并將計算出的差與期望的參考值進行比較(s126)。
基于比較步驟s126的結果,當?shù)谝挥嫈?shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差等于或小于期望的參考值(在s120中為“是”)時,參考時鐘選擇電路280a可以確定將第一參考時鐘信號refclk_mb提供到pcie裝置200,并且選擇第一參考時鐘信號refclk_mb作為參考時鐘信號refclk(s130)。
當?shù)谝粎⒖紩r鐘信號refclk_mb被選擇作為參考時鐘信號refclk時,第二時鐘信號發(fā)生器205不再被需要和/或被請求操作,因此停止和/或阻斷提供到第二時鐘信號發(fā)生器205的功率(s150)。
可選擇地,根據(jù)至少一個示例實施例,當?shù)谝挥嫈?shù)值refclk_mb_cnt與第二計數(shù)值refclk_aic_cnt之間的差大于期望的參考值(在s120中為“否”)時,參考時鐘選擇電路280a可以確定不把第一參考時鐘信號refclk_mb提供到pcie裝置200,并且選擇第二參考時鐘信號refclk_aic作為參考時鐘信號refclk(s140)。
根據(jù)本發(fā)明構思的至少一個示例實施例的用于支持sris的pcie裝置可以自動選擇從多個時鐘源輸出的多個參考時鐘信號中的一個作為操作時鐘信號(例如,主參考時鐘信號)。
根據(jù)本發(fā)明構思的至少一個示例實施例的用于支持sris的pcie裝置可以自動確定是否從pcie裝置的外部提供第一參考時鐘信號(例如,從一個或多個外部目的地輸出)。pcie裝置還可以基于確定結果使用多個參考時鐘信號中的一個(例如,第一參考時鐘信號或在pcie裝置中產(chǎn)生的第二參考時鐘信號)作為pcie裝置的操作時鐘信號,因此,當?shù)谝粎⒖紩r鐘信號被選擇為操作時鐘信號(例如,被選擇為主參考時鐘信號)時,pcie裝置可以使產(chǎn)生第二參考時鐘信號的時鐘信號發(fā)生器自動斷電(例如,掉電、關閉等)。因此,可以降低pcie裝置的功耗。
應當理解,這里描述的示例實施例應當被視為僅是描述性的含義,而不是出于限制的目的。在根據(jù)示例實施例的每種裝置或方法內(nèi)的特征或方面的描述通常應被視為可用于根據(jù)示例實施例的其它裝置或方法中的其它類似的特征或方面。盡管已經(jīng)具體示出和描述了一些示例實施例,但是本領域普通技術人員將理解的是,在不脫離權利要求的精神和范圍的情況下,可以在其中做出形式和細節(jié)上的變化。
由于功能塊、單元和/或模塊在本發(fā)明構思的領域中是傳統(tǒng)的,所以按照功能塊、單元和/或模塊的形式在附圖中示出并描述了各種示例實施例。本領域技術人員將理解的是,這些塊、單元和/或模塊通過諸如邏輯電路、分立組件、微處理器、硬布線電路、存儲元件、布線連接等的電子(或光)電路物理地實現(xiàn),其可以使用基于半導體的制造技術或其他制造技術形成。在由微處理器或類似處理裝置實現(xiàn)塊、單元和/或模塊的情況下,可以使用軟件(例如,微碼)對它們進行編程以執(zhí)行這里討論的各種功能并且可以可選地由固件和/或軟件驅動它們,從而將微處理器或類似的處理裝置變換成專用處理器。另外,每個塊、單元和/或模塊可以由專用硬件或執(zhí)行一些功能的專用硬件和執(zhí)行其它功能的處理器(例如,一個或多個編程的微處理器和相關的電路)的組合來實現(xiàn)。此外,在不脫離本發(fā)明構思的范圍的情況下,示例實施例的每個塊、單元和/或模塊可以物理地分離成兩個或更多個交互并離散的塊、單元和/或模塊。此外,在不脫離本發(fā)明構思的范圍的情況下,示例實施例的塊、單元和/或模塊可以物理地組合成更復雜的塊、單元和/或模塊。