Serdes接收器過采樣速率的制作方法
【技術領域】
[0001 ]以下描述涉及集成電路器件(“1C”)。更具體的,以下描述涉及用于IC的串行一解串器(“SERDES”)的過采樣速率。
【背景技術】
[0002]存在著一些應用,在這些應用中串行一解串器接收器被鎖定到基準模式(reference mode)來處理過采樣的數據。然而,隨著對線路速率和過采樣速率要求的提高,以這種較高速率來過采樣數據的成本和復雜度也隨之增加。這意味著,為提高過采樣線路速率,電路資源和/或復雜度方面的成本大幅增加。因此,提高過采樣線路速率、而不顯著增加額外的資源和/或使用復雜電路,是所希望的并且有用的。
【發(fā)明內容】
[0003]—種設備大體涉及串行一解串器。在該設備中,第一串行一解串器具有第一數據路徑和數據眼路徑。該第一數據路徑耦接到第一串行一解串器的第一數據輸出接口。第二串行一解串器具有第二數據路徑。該第二數據路徑耦接到第二串行一解串器的第二數據輸出接口。第一串行一解串器的數據眼路徑耦接到第二串行一解串器的第二數據路徑。
[0004]—種方法大體涉及串行一解串器。第一串行信息被第一串行一解串器以線路速率接收。在該第一串行一解串器的第一數據路徑和數據眼路徑的每一個上對第一串行信息進行過采樣,以分別提供第一并行信息和第二并行信息。第一數據路徑耦接到第一串行一解串器的第一數據輸出接口。經由第一數據輸出接口輸出第一并行信息。將第二并行信息由第一串行一解串器的數據眼路徑提供至第二串行一解串器的第二數據路徑。第二數據路徑耦接至第二串行一解串器的第二數據輸出接口。經由第二數據輸出接口輸出第二并行信息。
【附圖說明】
[0005]附圖示出了示例性的設備和/或方法。然而,附圖不應當用于限制權利要求的范圍,而僅用于解釋和理解。
[0006]圖1是示出一個示例性的列式現場可編程邏輯門陣列(“FPGA”)架構的簡要框圖;
[0007]圖2是示出一個示例性串行一解串器(“SERDES”)系統(tǒng)的框圖;
[0008]圖3是示出一個示例性偏移校正器(deskewer)的框圖;
[0009]圖4是示出示例性信號的信號圖;
[0010]圖5是示出一個示例性的過采樣過程的流程圖。
【具體實施方式】
[0011]以下描述中,列舉了多個具體細節(jié),從而提供對具體實施例的詳盡描述。然而本領域技術人員應當理解,可以在沒有以下給定的所有具體細節(jié)的情況下實施一個或多個其他實施例和/或實施例的變化例。在一些情形下,未詳細描述眾所周知的特征,以免影響對文本實施例的描述。為了便于說明,在不同圖示中使用相同的編號來指代相同的項;然而,這些項在替代實施例中可能不同。
[0012]在描述被示意性地表示在若干附圖中的實施例之前,先進行大體介紹以加深理解。
[0013]串行一解串器(“SERDES”)用于通信,例如用于高速串行鏈路。用于提供SERDES的收發(fā)器可以具有數據眼(data eye)路徑。在加利福尼亞圣何塞的Xilinx,Inc.( “Xilinx” )于2012年11月30號發(fā)表的白皮書(WP428,版本1.0)中,Harry Fu和Romi Mayder所著的“用于低成本、高容量FPGA收發(fā)器的基于IBIS—AMI模擬的串行鏈路信號完整性分析和片上眼掃描,,(“Serial Link Signal Integrity Analysis with IBIS-AMI Simulat1n and On-Chip Eye Scan for Low-Cost,High-Volum FPGA Transceivers”)一文中可以找到這種數據眼路徑的描述。此外,可以使用由FPGA的可編程資源構成的微處理器進行的眼掃描,例如Xilinx在2012年 10月18號發(fā)表的Xilinx Applicat1n Note(XAPP743版本I.0)中,MikeJenkins和David Hahashin所著的“利用MicroBlaze處理器MCS的眼掃描”(“Eye Scan withMicroBlaze Processor MCS”)一文中所描述的。與這樣一個收發(fā)器一起構成的SERDES的這樣的數據眼或眼掃描路徑沒有延用到FPGA可編程構造中,FPGA可編程構造有時被稱為FPGA可編程資源或者FPGA邏輯。
[0014]然而,如下文更具體描述的,通過將一個收發(fā)器的數據眼路徑,或者更具體地說是其中的一個接收器部分,耦接至另一個收發(fā)器的另一個接收器部分的輸出路徑,一個SERDES的這種數據眼路徑可以經由另一個SERDES的接口而有效耦接到這種FPGA構造。這可以被用于增加有效過采樣速率,其使用一個實際時鐘頻率來進行過采樣,該過采樣僅為有效過采樣速率的分數(fract1n)。
[0015]基于以上大體的認識,以下總體地描述用于SERDES系統(tǒng)的各種配置。
[0016]由于一個或多個上述實施例在本文中的描述使用了一個具體類型的1C,因此以下提供了該IC的詳細描述。然而應當理解,其他類型的IC也可以從本文描述的一個或多個技術中獲益。
[0017]可編程邏輯器件(“PLD”)是一種常見的集成電路,其可編程以用于執(zhí)行指定的邏輯功能。一種PLD,現場可編程邏輯門陣列(“FPGA”),通常包含可編程單元塊(tile)陣列。這些可編程單元塊可包含例如輸入/輸出模塊(“Ι0Β”)、可配置邏輯模塊(“CLB”)、專用隨機存取存儲器模塊(“BRAM”)、乘法器、數字信號處理模塊(“DSP”)、處理器、時鐘管理器、延遲鎖定環(huán)(“DLL”)等等。本文中使用的“包含”和“包括”是指包括但不限于。
[0018]每個可編程單元塊通常既包含可編程互連也包含可編程邏輯??删幊袒ミB通常包含許多個不同長度的互連線,其通過可編程互連點(“PIP”)相互連接??删幊踢壿嬍褂每删幊淘韺崿F用戶設計的邏輯,可編程元件可包含例如函數發(fā)生器、寄存器、算術邏輯等。
[0019]通常通過將配置數據流加載到內部配置存儲器單元中來編程可編程互連件及可編程邏輯,所述內部配置存儲器單元界定如何配置可編程元件??蓮拇鎯ζ?例如從外部PR0M)讀取配置數據,或者通過外部器件將配置數據寫入FPGA中。于是,各個存儲器單元的總和狀態(tài)決定FPGA的功能。
[0020]另一種類型的PLD是復雜可編程邏輯器件,或CPLDXPLD包含兩個或兩個以上“功能塊”,其通過互連開關矩陣連接在一起并連接到輸入/輸出(“I/O”)資源。CPLD的每一功能塊包含類似于可編程邏輯陣列(“PLA”)及可編程陣列邏輯(“PAL”)器件中使用的兩級與/或(AND/OR)結構。在CPLD中,通常將配置數據片上地(on-chip)存儲在非易失性存儲器中。在一些CPLD中,配置數據被片上地存儲在非易失性存儲器中,然后其被作為初始配置(編程)序列的一部分下載到易失性存儲器。
[0021 ]對于所有這些可編程邏輯器件(“PLD”),通過出于該目的而被提供給器件的多位數據比特來控制該器件的功能??蓪⑦@些數據比特存儲于易失性存儲器(例如,靜態(tài)存儲器單元,如在FPGA及一些CPLD)中、非易失性存儲器(例如,快閃存儲器,如在一些CPLD中)中,或者任何其它類型的存儲器單元中。
[0022]通過應用處理層,例如金屬層,來編程其它PLD,該處理層以可編程的方式使器件上的多個元件互連。這些PLD被稱為掩??删幊唐骷?。還可用其它方式來實現PLD,例如使用熔絲或反熔絲技術。術語“PLD”及“可編程邏輯器件”包含但不限于這些示范性器件,也涵蓋僅部分可編程的器件。例如,一種類型的PLD包含硬編碼(hard-coded)晶體管邏輯與可編程開關結構的組合,該可編程開關結構以可編程的方式使硬編碼晶體管邏輯互連。
[0023]如以上指出的,高級FPGA可以包含成陣列的若干不同類型的可編程邏輯模塊。例如,圖1示出的FPGA架構100包含多個不同的可編程單元塊,這些不同的可編程單元塊包括千兆位收發(fā)器(“MGT” ) 101、可配置邏輯模塊(“CLB” ) 102、隨機存取存儲器模塊(“BRAM” )103、輸入/輸出模塊(“Ι0Β”)104、配置及時鐘邏輯(“CONFIG/CLOCK”)105、數字信號處理模塊(“DSP”)106、專用輸入/輸出模塊(“1/0”)107(例如,配置端口及時鐘端口),以及其它可編程邏輯108,例如數字時鐘管理器、模/數轉換器、系統(tǒng)監(jiān)視邏輯等。一些FPGA還包含專用處理器模塊彳卞肋^丨^)。
[0024]在一些FPGA中,每個可編程單元塊包含可編程互連元件(“INT”)111,其具有連向及來自每個鄰近單元塊中的對應互連元件的標準化連接。因此,這些可編程互連元件共同實現所示出的FPGA的可編程互連結構??删幊袒ミB元件111還包含連向及來自同一單元塊內的可編程邏輯元件的連接,如圖1上部所包含的示例所示。
[0025]例如,CLB 102可包含可配置邏輯元件(“CLE”)112,其中CLE 112和可編程互連元件(“INT”)111可被編程以實現用戶邏輯。除了一個或一個以上可編程互連元件之外,BRAM103還可包含BRAM邏輯元件(“BRL”)113。通常,一個單元塊中包含的互連元件的數量取決于單元塊的高度。在圖示的實施例中,BRAM單元塊的高度與五個CLB的高度相同,但也可使用其它數目(例如四個)。除了適當數量的可編程互連元件之外,DSP單元塊106還可包含DSP邏輯元件(“DSPL”)114。除了包含一個可編程互連元件111外,1B 104還可包含例如兩個輸入/輸出邏輯元件(“10L”)115。本領域技術人員將容易了解,連接到例如1/0邏輯元件115的實際1/0墊通常并不局限于輸入/輸出邏輯元件115的區(qū)域。
[0026]在圖示實施例中,鄰近裸片的水平區(qū)域(示出于圖1)用于配置、時鐘和其他邏輯控制。延伸自該水平區(qū)域的多個縱列109或者一個縱列用于在整個FPGA寬度上分配時鐘和配置信