欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于實(shí)施信道均衡訓(xùn)練的多道方法

文檔序號:6525068閱讀:718來源:國知局
用于實(shí)施信道均衡訓(xùn)練的多道方法
【專利摘要】包括對多個均衡系數(shù)集實(shí)施第一遍測試以過濾多個均衡系數(shù)集,來產(chǎn)生一個或多個經(jīng)過濾的均衡系數(shù)集的方法。每個經(jīng)過濾的均衡系數(shù)集滿足第一預(yù)定閾值。方法還包括對一個或多個經(jīng)過濾的均衡系數(shù)集實(shí)施第二遍測試以確定滿足第二預(yù)定閾值的最終的均衡系數(shù)集,其中第二遍測試相比第一遍測試產(chǎn)生更準(zhǔn)確的結(jié)果。
【專利說明】用于實(shí)施信道均衡訓(xùn)練的多道方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明總體涉及數(shù)據(jù)傳送,并且更具體地涉及用于實(shí)施信道均衡訓(xùn)練的方法。
【背景技術(shù)】
[0002]典型的數(shù)據(jù)連接器,諸如外圍部件接口(PCI)或者PCI express (PCIe),允許計算機(jī)系統(tǒng)內(nèi)的不同處理單元彼此交換數(shù)據(jù)。例如,常規(guī)計算機(jī)系統(tǒng)可以包括跨PCIe總線與圖形處理單元(GPU)交換數(shù)據(jù)的中央處理單元(CPU)。
[0003]當(dāng)跨數(shù)據(jù)連接器在傳送信道上傳送信號時,一些頻率分量可能比另一些衰減得更多,這可能使得信號在接收端難以辨認(rèn)。隨著傳送速度變得更快,由于噪聲影響更嚴(yán)重傳送因此變得更易于出現(xiàn)錯誤。在高速傳送信道中,信號的質(zhì)量非常重要。對抗這種傾向的一種技術(shù)是“均衡”信道以使得在輸入端的信號的頻率域?qū)傩栽谳敵龆巳鐚?shí)重新產(chǎn)生,從而致使更少的錯誤。高速串行通信協(xié)議比如PCIe使用均衡器來準(zhǔn)備數(shù)據(jù)信號用于傳送。
[0004]均衡可以在信道的發(fā)射端和接收端兩者上實(shí)施。對于發(fā)射均衡,信號可以在其發(fā)送之前在發(fā)射端被重塑以嘗試克服將由信道引入的失真。在接收端,可以再修復(fù)信號以改善信號質(zhì)量。
[0005]對于PCIe中的發(fā)射均衡,稱為均衡系數(shù)的兩個參數(shù)可以用于調(diào)諧發(fā)射器。典型的系統(tǒng)可以有數(shù)百個均衡系數(shù)的組合,并且這些組合中的一些相比另一些將會產(chǎn)生更好的均衡結(jié)果。在高速傳送信道中信號質(zhì)量非常重要,因此最優(yōu)系數(shù)集對于確保準(zhǔn)確的傳送至關(guān)重要。在均衡過程期間,需要選擇滿足系統(tǒng)的性能要求的系數(shù)的一個組合。此外,選擇該組合需要在固定的時間限制內(nèi)進(jìn)行,使得系統(tǒng)可以啟動或者開始其他過程。測試每一個系數(shù)組合來發(fā)現(xiàn)最好的一個是難以實(shí)施的,因為該方法通常將需要大量時間。此外,用于測試系數(shù)組合的當(dāng)前方法經(jīng)常會導(dǎo)致選擇次優(yōu)的組合。
[0006]因此,本領(lǐng)域所需要的是,以更有效的方式測試并選擇用于高速總線的均衡系數(shù)的技術(shù)。

【發(fā)明內(nèi)容】

[0007]本發(fā)明的一個實(shí)施例闡述了用于分析用于高速數(shù)據(jù)總線的均衡系數(shù)的方法。方法包括對多個均衡系數(shù)集實(shí)施第一遍測試以過濾多個均衡系數(shù)集,來產(chǎn)生一個或多個經(jīng)過濾的均衡系數(shù)集的。每個經(jīng)過濾的均衡系數(shù)集滿足第一預(yù)定閾值。方法還包括對一個或多個經(jīng)過濾的均衡系數(shù)集實(shí)施第二遍測試以確定滿足第二預(yù)定閾值的最終的均衡系數(shù)集。第二遍測試相比第一遍測試產(chǎn)生更準(zhǔn)確的結(jié)果。
[0008]有利地,使用以上技術(shù)選擇均衡系數(shù)允許更快選擇滿足系統(tǒng)所要求的質(zhì)量標(biāo)準(zhǔn)的系數(shù)。
【專利附圖】

【附圖說明】
[0009]因此,可以詳細(xì)地理解本發(fā)明的上述特征,并且可以參考實(shí)施例得到對如上面所簡要概括的本發(fā)明更具體的描述,其中一些實(shí)施例在附圖中示出。然而,應(yīng)當(dāng)注意的是,附圖僅示出了本發(fā)明的典型實(shí)施例,因此不應(yīng)被認(rèn)為是對其范圍的限制,本發(fā)明可以具有其他等效的實(shí)施例。
[0010]圖1是示出了配置為實(shí)現(xiàn)本發(fā)明的一個或多個方面的計算機(jī)系統(tǒng)的框圖;
[0011]圖2是根據(jù)本發(fā)明的一個實(shí)施例的、用于圖1的計算機(jī)系統(tǒng)的并行處理子系統(tǒng)的框圖;
[0012]圖3是發(fā)射的信號和接收的信號的常規(guī)示圖;
[0013]圖4是導(dǎo)致錯誤的發(fā)射的數(shù)據(jù)和接收的數(shù)據(jù)的常規(guī)示圖;
[0014]圖5是根據(jù)本發(fā)明一個實(shí)施例的、接收端處的信號在均衡前和均衡后的示圖;
[0015]圖6是來自振蕩器的眼圖的常規(guī)示圖;
[0016]圖7是根據(jù)本發(fā)明一個實(shí)施例的、均衡系數(shù)的映射圖的示圖;
[0017]圖8A和圖SB示出了根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施均衡系數(shù)的映射圖上的粗粒度搜索的一種技術(shù);
[0018]圖9是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施均衡系數(shù)的映射圖上的粗粒度搜索的另一種技術(shù)的示圖;
[0019]圖10是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施均衡系數(shù)的映射圖上的細(xì)粒度搜索的技術(shù)的示圖;
[0020]圖11是示出根據(jù)本發(fā)明一個實(shí)施例的、用于信道均衡訓(xùn)練的示范性多道方法的流程圖;
[0021]圖12是示出根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施粗粒度搜索的示范性技術(shù)的流程圖;
[0022]圖13是示出根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施粗粒度搜索的另一種示范性技術(shù)的流程圖;
[0023]圖14是示出根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施細(xì)粒度搜索的示范性技術(shù)的流程圖。
【具體實(shí)施方式】
[0024]在下面的描述中,將闡述大量的具體細(xì)節(jié)以提供對本發(fā)明更透徹的理解。然而,本領(lǐng)域的技術(shù)人員應(yīng)該清楚,本發(fā)明可以在沒有一個或多個這些具體細(xì)節(jié)的情況下得以實(shí)施。在其他實(shí)例中,未對已知的特征進(jìn)行描述以免混淆本發(fā)明。
[0025]系統(tǒng)概述
[0026]圖1為示出了配置為實(shí)現(xiàn)本發(fā)明的一個或多個方面的計算機(jī)系統(tǒng)100的框圖。計算機(jī)系統(tǒng)100包括中央處理單元(CPU) 102和包括設(shè)備驅(qū)動程序103的系統(tǒng)存儲器104。CPU102和系統(tǒng)存儲器104經(jīng)由可以包括存儲器橋105的互連路徑通信。存儲器橋105可以是例如北橋芯片,經(jīng)由總線或其他通信路徑106 (例如超傳輸(HyperTransport)鏈路)連接到輸入/輸出(I/O)橋107。I/O橋107,其可以是例如南橋芯片,從一個或多個用戶輸入設(shè)備108 (例如鍵盤、鼠標(biāo))接收用戶輸入并且經(jīng)由路徑106和存儲器橋105將該輸入轉(zhuǎn)發(fā)到CPU102。并行處理子系統(tǒng)112經(jīng)由總線或其他通信路徑113 (例如外圍部件互連(PCI)express、加速圖形端口(AGP)或超傳輸鏈路)耦連到存儲器橋105 ;在一個實(shí)施例中,并行處理子系統(tǒng)112是將像素傳遞到顯示設(shè)備110 (例如,常規(guī)的陰極射線管(CRT)或者基于液晶顯示器(IXD)的監(jiān)視器)的圖形子系統(tǒng)。系統(tǒng)盤114也連接到I/O橋107。交換器116提供I/O橋107與諸如網(wǎng)絡(luò)適配器118以及各種插卡120和121的其他部件之間的連接。其他部件(未明確示出),包括通用串行總線(USB)或其他端口連接、壓縮光盤(⑶)驅(qū)動器、數(shù)字視頻光盤(DVD)驅(qū)動器、膠片錄制設(shè)備及類似部件,也可以連接到I/O橋107。圖1所示的互連各種部件的通信路徑可以使用任何適合的協(xié)議實(shí)現(xiàn),諸如PC1、PCIExpreSS (PCIe)、AGP、超傳輸或者任何其他總線或點(diǎn)到點(diǎn)通信協(xié)議,并且如本領(lǐng)域已知的,不同設(shè)備間的連接可使用不同協(xié)議。
[0027]PPUl 12配置為執(zhí)行諸如設(shè)備驅(qū)動程序103的軟件應(yīng)用程序,其允許PPUl 12生成可以跨通信路徑113傳送的任意包類型。那些包類型由通信路徑113所使用的通信協(xié)議指定。在將新的包類型引入通信協(xié)議的情況中(例如由于增強(qiáng)通信協(xié)議),PPU112可以配置為基于新的包類型來生成包并使用新的包類型來跨通信路徑113與CPU102(或者其他處理單元)交換數(shù)據(jù)。[0028]在一個實(shí)施例中,并行處理子系統(tǒng)112包含經(jīng)優(yōu)化用于圖形和視頻處理的電路,包括例如視頻輸出電路,并且構(gòu)成圖形處理單元(GPU)。在另一個實(shí)施例中,并行處理子系統(tǒng)112包含經(jīng)優(yōu)化用于通用處理的電路,同時保留底層(underlying)的計算架構(gòu),本文將更詳細(xì)地進(jìn)行描述。在又一個實(shí)施例中,可以將并行處理子系統(tǒng)112與一個或多個其他系統(tǒng)元件集成,諸如存儲器橋105、CPU102以及I/O橋107,以形成片上系統(tǒng)(SoC)。
[0029]應(yīng)該理解,本文所示系統(tǒng)是示例性的,并且變化和修改都是可能的。連接拓?fù)?,包括橋的?shù)目和布置、CPU102的數(shù)目以及并行處理子系統(tǒng)112的數(shù)目,可根據(jù)需要修改。例如,在一些實(shí)施例中,系統(tǒng)存儲器104直接連接到CPU102而不是通過橋,并且其他設(shè)備經(jīng)由存儲器橋105和CPU102與系統(tǒng)存儲器104通信。在其他替代性拓?fù)渲校⑿刑幚碜酉到y(tǒng)112連接到I/O橋107或直接連接到CPU102,而不是連接到存儲器橋105。而在其他實(shí)施例中,I/O橋107和存儲器橋105可能被集成到單個芯片上。大型實(shí)施例可以包括兩個或更多個CPU102以及兩個或更多個并行處理系統(tǒng)112。本文所示的特定部件是可選的;例如,任何數(shù)目的插卡或外圍設(shè)備都可能得到支持。在一些實(shí)施例中,交換器116被去掉,網(wǎng)絡(luò)適配器118和插卡120、121直接連接到I/O橋107。
[0030]圖2示出了根據(jù)本發(fā)明的一個實(shí)施例的并行處理子系統(tǒng)112。如所示的,并行處理子系統(tǒng)112包括一個或多個并行處理單元(PI3U) 202,每個并行處理單元202都耦連到本地并行處理(PP)存儲器204。通常,并行處理子系統(tǒng)包括U個PPU,其中U≥1。(本文中,類似對象的多個實(shí)例需要時以標(biāo)識對象的參考數(shù)字和標(biāo)識實(shí)例的括號中的數(shù)字來表示。)PPU202和并行處理存儲器204可使用一個或多個集成電路設(shè)備來實(shí)現(xiàn),諸如可編程處理器、專用集成電路(ASIC)或存儲器設(shè)備,或者以任何其他技術(shù)可行的方式來實(shí)現(xiàn)。
[0031]再參考圖1,在一些實(shí)施例中,并行處理子系統(tǒng)112中的一些或所有PPU202是具有渲染管線的圖形處理器,其可以配置為實(shí)施與下述相關(guān)的各種任務(wù):經(jīng)由存儲器橋105和總線113從CPU102和/或系統(tǒng)存儲器104所供應(yīng)的圖形數(shù)據(jù)生成像素數(shù)據(jù),與本地并行處理存儲器204 (可被用作圖形存儲器,包括例如常規(guī)幀緩沖區(qū)(buffer))交互以存儲和更新像素數(shù)據(jù),傳遞像素數(shù)據(jù)到顯示設(shè)備110等等。在一些實(shí)施例中,并行處理子系統(tǒng)112可包括一個或多個作為圖形處理器而操作的PPU202以及一個或多個用于通用計算的其他PPU202。PTO可以是同樣的或不同的,并且每個PTO可具有自己的專用并行處理存儲器設(shè)備或不具有專用并行處理存儲器設(shè)備。一個或多個PPU202可輸出數(shù)據(jù)到顯示設(shè)備110,或者每個PPU202可輸出數(shù)據(jù)到一個或多個顯示設(shè)備110。
[0032]在操作中,CPU102是計算機(jī)系統(tǒng)100的主處理器,控制和協(xié)調(diào)其他系統(tǒng)部件的操作。具體地,CPU102發(fā)出控制PPU202的操作的命令。在一些實(shí)施例中,CPU102寫入用于每個PPU202的命令流到入棧緩沖區(qū)(pushbuffer)中(在圖1或圖2中未明確示出),該入棧緩沖區(qū)可位于系統(tǒng)存儲器104、并行處理存儲器204、或CPU102和PPU202都可訪問的其他存儲位置中。PPU202從入棧緩沖區(qū)讀取命令流,然后相對于CPU102的操作異步地執(zhí)行命令。
[0033]現(xiàn)在返回參考圖2,每個PPU202包括經(jīng)由連接到存儲器橋105 (或者,在一個替代性實(shí)施例中,直接連接到CPU102)的通信路徑113與計算機(jī)系統(tǒng)100的其余部分通信的I/O單元205。PPU202到計算機(jī)系統(tǒng)100的其余部分的連接也可以變化。在一些實(shí)施例中,并行處理子系統(tǒng)112可實(shí)現(xiàn)為可插入到計算機(jī)系統(tǒng)100的擴(kuò)展槽中的插卡。在其他實(shí)施例中,PPU202可以和諸如存儲器橋105或I/O橋107的總線橋集成在單個芯片上。而在其他實(shí)施例中,PPU202的一些或所有元件可以和CPU102集成在單個芯片上。
[0034]在一個實(shí)施例中,通信路徑113是PCIe鏈路,如本領(lǐng)域所知的,其中專用通道被分配到每個PPU202。也可以使用其他通信路徑。如以上所述,反向流動互連也可以用于實(shí)現(xiàn)通信路徑113以及計算機(jī)系統(tǒng)100、CPU102或者PPU202中的任何其他通信路徑。I/O單元205生成用于在通信路徑113上傳送的包(或其他信號),并且還從通信路徑113接收所有傳入的包(或其他信號),將傳入的包引導(dǎo)到PPU202的適當(dāng)部件。例如,可將與處理任務(wù)相關(guān)的命令引導(dǎo)到主機(jī)接口 206, 而將與存儲器操作相關(guān)的命令(例如,對并行處理存儲器204的讀取或?qū)懭?引導(dǎo)到存儲器交叉開關(guān)單元210。主機(jī)接口 206讀取每個入棧緩沖區(qū),并且將由入棧緩沖區(qū)指定的工作輸出到前端212。
[0035]有利地,每個PPU202都實(shí)現(xiàn)高度并行處理架構(gòu)。如詳細(xì)示出的,PPU202 (O)包括處理集群陣列230,該陣列230包括C個通用處理集群(GPC)208,其中C≥1。每個GPC208能夠并發(fā)執(zhí)行大量的(例如,幾百或幾千)線程,其中每個線程是程序的實(shí)例(instance)。在各種應(yīng)用中,可分配不同的GPC208用于處理不同類型的程序或用于實(shí)施不同類型的計算。例如,在圖形應(yīng)用程序中,GPC208的第一集可以分配為實(shí)施曲面細(xì)分操作并產(chǎn)生用于補(bǔ)丁(patch)的基元拓?fù)洌⑶褿PC208的第二集可以分配為實(shí)施曲面細(xì)分著色以評估用于基元拓?fù)涞难a(bǔ)丁參數(shù)并確定頂點(diǎn)位置和其他每頂點(diǎn)屬性。GPC208的分配可以取決于因每種類型的程序或計算所產(chǎn)生的工作量而變化。
[0036]GPC208經(jīng)由工作分布單元200接收所要執(zhí)行的處理任務(wù),工作分布單元200從前端單元212接收定義處理任務(wù)的命令。處理任務(wù)包括將要處理的數(shù)據(jù)的索引,諸如,表面(補(bǔ)丁)數(shù)據(jù)、基元數(shù)據(jù)、頂點(diǎn)數(shù)據(jù)和/或像素數(shù)據(jù),以及狀態(tài)參數(shù)和定義數(shù)據(jù)將如何處理的命令(例如將執(zhí)行什么程序)。工作分布單元200可以配置為取回與任務(wù)對應(yīng)的索引,或者工作分布單元200可以從前端212接收索引。前端212確保在入棧緩沖區(qū)所指定的處理發(fā)起前,將GPC208配置為有效狀態(tài)。
[0037]例如當(dāng)PPU202用于圖形處理時,用于每個補(bǔ)丁(patch)的處理工作量被分為大致相等大小的任務(wù)以能夠?qū)⑶婕?xì)分處理分布到多個GPC208。工作分布單元200可以配置為以能夠提供任務(wù)到多個GPC208用于處理的頻率產(chǎn)生任務(wù)。相反,在常規(guī)系統(tǒng)中處理典型由單個處理引擎來實(shí)施,而其他處理引擎保持空閑,在開始其處理任務(wù)之前等待該單個處理引擎完成任務(wù)。在本發(fā)明的一些實(shí)施例中,GPC208的各部分配置為實(shí)施不同類型的處理。例如第一部分可以配置為實(shí)施頂點(diǎn)著色和拓?fù)渖?,第二部分可以配置為?shí)施曲面細(xì)分和幾何著色,并且第三部分可以配置為實(shí)施屏幕空間的像素著色以產(chǎn)生經(jīng)渲染的圖像。由GPC208產(chǎn)生的中間數(shù)據(jù)可以存儲在緩沖區(qū)中以允許在GPC208之間傳送中間數(shù)據(jù)用于進(jìn)一步處理。
[0038]存儲器接口 214包括D個分區(qū)單元215,每個分區(qū)單元215直接耦連到并行處理存儲器204的一部分,其中D≥I。如所示的,分區(qū)單元215的數(shù)目一般等于DRAM220的數(shù)目。在其他實(shí)施例中,分區(qū)單元215的數(shù)目也可以不等于存儲器設(shè)備的數(shù)目。本領(lǐng)域的技術(shù)人員應(yīng)該理解動態(tài)隨機(jī)存取存儲器(DRAM) 220可以用其他合適的存儲設(shè)備來替代并且可以是一般常規(guī)的設(shè)計。因此省略了詳細(xì)描述。諸如幀緩沖區(qū)或紋理映射圖的渲染目標(biāo)可以跨DRAM220加以存儲,這允許分區(qū)單元215并行寫入每個渲染目標(biāo)的各部分以有效地使用并行處理存儲器204的可用帶寬。
[0039]任何一個GPC208都可以處理要被寫到并行處理存儲器204內(nèi)的任何DRAM220的數(shù)據(jù)。交叉開關(guān)單元210配置為路由每個GPC208的輸出到任何分區(qū)單元215的輸入或到另一個GPC208用于進(jìn)一步處理。GPC208通過交叉開關(guān)單元210與存儲器接口 214通信,以對各種外部存儲器設(shè)備進(jìn)行讀取或?qū)懭?。在一個實(shí)施例中,交叉開關(guān)單元210具有到存儲器接口 214的連接以和I/O單元205通信,以及到本地并行處理存儲器204的連接,從而使得在不同GPC208內(nèi)的處理內(nèi)核能夠與系統(tǒng)存儲器104或?qū)τ赑PU202而言非本地的其他存儲器通信。在圖2所示的實(shí)施例中,交叉開關(guān)單元210直接與I/O單元205連接。交叉開關(guān)單元210可使用虛擬信道來分開GPC208與分區(qū)單元215之間的業(yè)務(wù)流。
[0040]另外,GPC208可被編程以執(zhí)行與種類繁多的應(yīng)用相關(guān)的處理任務(wù),包括但不限于,線性和非線性數(shù)據(jù)變換、視頻和/或音頻數(shù)據(jù)過濾、建模操作(例如,應(yīng)用物理定律以確定對象的位置、速率和其他屬性)、圖像渲染操作(例如,曲面細(xì)分(tessellation)著色器、頂點(diǎn)著色器、幾何著色器、和/或像素著色器程序)等等。PPU202可將數(shù)據(jù)從系統(tǒng)存儲器104和/或本地并行處理存儲器204轉(zhuǎn)移到內(nèi)部(片上)存儲器中,處理該數(shù)據(jù),并且將結(jié)果數(shù)據(jù)寫回到系統(tǒng)存儲器104和/或本地并行處理存儲器204,其中這樣的數(shù)據(jù)可以由其他系統(tǒng)部件訪問,所述其他系統(tǒng)部件包括CPU102或另一個并行處理子系統(tǒng)112。
[0041]PPU202可配備有任何容量(amount)的本地并行處理存儲器204,包括沒有本地存儲器,并且可以以任何組合方式使用本地存儲器和系統(tǒng)存儲器。例如,在統(tǒng)一存儲器架構(gòu)(UMA)實(shí)施例中,PPU202可以是圖形處理器。在這樣的實(shí)施例中,將不提供或幾乎不提供專用的圖形(并行處理)存儲器,并且PPU202會以排他或幾乎排他的方式使用系統(tǒng)存儲器。在UMA實(shí)施例中,PPU202可集成到橋式芯片中或處理器芯片中,或作為具有高速鏈路(例如,PCIe)的分立芯片提供,所述高速鏈路經(jīng)由橋式芯片或其他通信手段將PPU202連接到系統(tǒng)存儲器。
[0042]如上所示,在并行處理子系統(tǒng)112中可以包括任何數(shù)目的PPU202。例如,可在單個插卡上提供多個PPU202、或可將多個插卡連接到通信路徑113、或可將一個或多個PPU202集成到橋式芯片中。在多PPU系統(tǒng)中的PPU202可以彼此同樣或不同。例如,不同的PPU202可能具有不同數(shù)目的處理內(nèi)核、不同容量的本地并行處理存儲器等等。在存在多個PPU202的情況下,可并行操作那些PPU從而以高于單個PPU202所可能達(dá)到的吞吐量來處理數(shù)據(jù)。包含一個或多個PPU202的系統(tǒng)可以以各種配置和形式因素來實(shí)現(xiàn),包括臺式電腦、筆記本電腦或手持式個人計算機(jī)、服務(wù)器、工作站、游戲控制臺、嵌入式系統(tǒng)等等。
[0043]使用可變長度訓(xùn)練評估周期的均衡
[0044]圖3是發(fā)射的信號和接收的信號的常規(guī)示圖。在計算機(jī)系統(tǒng)中,信號可以以I和O的形式沿電線傳送到其目的地。由于信號經(jīng)信道行進(jìn)因此可能削弱,所以在目的可能難以確定所接收的比特是I還是O。輸入信號10代表在信道的發(fā)射端處的數(shù)據(jù)I。輸入信號10包括寬度大致為Tb的脈沖。輸入信號12代表信道的發(fā)射端處的數(shù)據(jù)O。輸出信號12也包括寬度大致為Tb的脈沖。輸入信號10和12呈現(xiàn)為銳利的(sharp),類似階躍函數(shù)。
[0045]圖3的右側(cè)示出在信道的接收端處的兩個輸出信號。輸出信號20包括所接收的數(shù)據(jù)1,并且輸出信號22包括所接收的數(shù)據(jù)O。這些輸出信號由于碼間干擾(ISI)而失真,并且因此輸出信號和輸入信號10和12的銳利外觀不完全匹配。如果在接收端失真太多,那么I可能被誤解為O (或者反之亦然),并且將會在傳送中引入錯誤。
[0046]圖4是導(dǎo)致錯誤的發(fā)射的信號和接收的信號的常規(guī)圖示。在信道輸入處的發(fā)射數(shù)據(jù)由波形30代表。波形30包括在信道上傳送的I和O系列。波形30呈現(xiàn)為銳利的,具有I和O之間的清楚過渡。虛線代表限制電平,其標(biāo)記數(shù)據(jù)I和數(shù)據(jù)O之間的分界線。波形40代表在接收端處的信號。因為信道中的干擾,所接收的信號可能失真并且沒有呈現(xiàn)為和波形30代表的所發(fā)射的信號一樣銳利。波形50代表波形40中的數(shù)據(jù)。換言之,當(dāng)波形40轉(zhuǎn)換為I和O時,結(jié)果是波形50。如圖4所示,波形50 (所接收的數(shù)據(jù))不完全匹配波形30 (所發(fā)射的數(shù)據(jù))。在傳送中引入了錯誤。示出了錯誤的042,其意味著O被發(fā)射但接收器接收了 I。還示出了錯誤的144,其中I被發(fā)射但接收器接收了 O。當(dāng)數(shù)據(jù)在I和O之間快速切換時,如波形30中所示,由于在所接收的信號(波形40)中的干擾可能丟失一些過渡,導(dǎo)致所接收的數(shù)據(jù)(波形50)中的錯誤(諸如錯誤42和44)。隨著數(shù)據(jù)連接和數(shù)據(jù)傳送變得更快,由于所接收的信號沒有足夠的時間從I完全過渡到O或者反之,因此這些類型的錯誤更常見。可以實(shí)施均衡以幫助阻止這些錯誤。
[0047]在PCI Express Gen3中,均衡包括實(shí)現(xiàn)補(bǔ)償ISI以使得所接收的信號看起來像原始的所發(fā)射的信號的設(shè)定??梢詫?shí)施發(fā)射和接收均衡兩者。在發(fā)射均衡中,在發(fā)射端處的信號在其被發(fā)送之前以對將由信道引入的失真進(jìn)行補(bǔ)充的方式被“重塑”。換言之,重塑可以抵消失真。重塑可以允許接收端更容易在I和O之間進(jìn)行辨別。在接收均衡中,在接收端處再修復(fù)信號以抵抗由信道引入的失真并進(jìn)一步改善信號質(zhì)量。在PCI Express Gen3中,可以實(shí)施發(fā)射和接收均衡兩者。
[0048]圖5示出了根據(jù)本發(fā)明一個實(shí)施例的、在傳送的接收端處的信號均衡前和均衡后的一個示例。波形60所示的信號沒有在其上實(shí)施均衡。波形62所示的信號示出了均衡后的信號。I和O之間的過渡由于均衡的原因在波形62中相比在波形60中可以更清楚地看到。
[0049]圖6是傳送信道的接收端處的、來自示波器探測器的眼圖70的常規(guī)示圖。測量結(jié)果#5是眼高(eye height)。眼高提供信道中的噪聲或者干擾的測量。隨著干擾增加,“眼”呈現(xiàn)為關(guān)閉并且眼高尺寸變小。隨著干擾減小,眼高尺寸變大。因此可以測量眼高以檢查信道上傳送的質(zhì)量。在均衡訓(xùn)練的過程中,可以使用眼圖來每個地測試多個參數(shù)集以發(fā)現(xiàn)最優(yōu)參數(shù)集。如已知的,眼圖70中所示的其他尺寸(尺寸1-4和6-9)可以用于導(dǎo)出信道的其他性能指標(biāo)。
[0050]以下是數(shù)個示例均衡算法的描述。這些算法可以用于實(shí)施給定時間限制內(nèi)的均衡??梢詫@些算法進(jìn)行修改和變化,而不脫離本發(fā)明的較寬精神和范圍。
[0051 ] PCIe中的均衡可以通過發(fā)現(xiàn)可用于調(diào)諧發(fā)射器的最優(yōu)傳送均衡系數(shù)來完成??梢灾付ㄈ齻€系數(shù)(稱為前標(biāo)記(precursor)、后標(biāo)記(postcursor)和主標(biāo)記(maincursor)),并且通過以下方程約束系數(shù):
[0052](I) precursor+maincursor+postcursor=FS
[0053](2) FS — 2*(precursor+postcursor)>=LF
[0054](3) precursor<=FS/4
[0055]其中LF=低頻率以及FS=完全擺動,對于特定端口兩者都是常數(shù)。滿足這些方程的系數(shù)稱為“合法的(legal)”以及哪些不滿足的稱為“不合法的(illegal)”。術(shù)語“最優(yōu)系數(shù)”意味著導(dǎo)致等于或者小于10-12的誤碼率(BER)的系數(shù)。典型的計算機(jī)系統(tǒng)可以有數(shù)百個合法的均衡系數(shù)組合。本公開所描述的算法和技術(shù)可以用于有效發(fā)現(xiàn)合法的系數(shù)組合中的最優(yōu)系數(shù)集。
[0056]圖7是根據(jù)本發(fā)明的一個實(shí)施例的、均衡系數(shù)的映射圖的圖示。諸如該示例的映射圖可以用于形象化系數(shù)。映射圖上的每個點(diǎn)代表前標(biāo)記和后標(biāo)記的組合。因為主標(biāo)記可以使用以上方程(I)從其他兩個系數(shù)導(dǎo)出,所以搜索算法僅跟蹤前標(biāo)記和后標(biāo)記。圖7示出在X軸上的后標(biāo)記(C+1)和在Y軸上的前標(biāo)記(C-1)。在該示例中,F(xiàn)S值是24并且系數(shù)被表達(dá)為FS的比例。在映射圖上的陰影方格代表預(yù)設(shè)定并且虛線代表將合法的系數(shù)與不合法的系數(shù)分開的分界線。
[0057]映射圖中的每個點(diǎn)均有與其相關(guān)聯(lián)的眼高,其代表由在該點(diǎn)的系數(shù)產(chǎn)生的鏈路質(zhì)量。該鏈路質(zhì)量的評估可以由諸如決策反饋均衡器或者DFE的狀態(tài)機(jī)來實(shí)施。任何合適的均衡器都可以使用,并且在本公開的某些實(shí)施例中可以稱為EQ Train。最終結(jié)果是分?jǐn)?shù),在公開的某些示范性實(shí)施例中稱為“qeye”。qeye是眼高的測量,并且值越高代表鏈路質(zhì)量也好。搜索算法的目的是為發(fā)現(xiàn)映射圖上的最大值,或者可替代地為發(fā)現(xiàn)滿足或者超出預(yù)定閾值的值。可以使用質(zhì)量矩陣而不是眼高,諸如眼寬的測量或者眼面積的測量。
[0058]如上提到的,通常沒有足夠的時間測試映射圖上的每個點(diǎn)。在使用PCIe的一個示例實(shí)現(xiàn)方案中,每個點(diǎn)可能用200微秒以上來評估。因此評估250個點(diǎn)將會要求大致50毫秒,但是PCIe規(guī)范例如只允許最大24毫秒來發(fā)現(xiàn)最優(yōu)系數(shù)。此外,期望盡可能快地完成使得可以實(shí)施其他操作。在此描述的搜索算法將為短信道(其中映射圖上的許多點(diǎn)是可接受的)和長信道(其中映射圖上只有很少的點(diǎn)是可接受的)工作。在此所描述的搜索算法還可以利用qeye值在局部區(qū)域中單調(diào)增加來實(shí)行更有效的搜索。
[0059]在本發(fā)明的一個實(shí)施例中,在大的系數(shù)映射圖上實(shí)行粗粒度搜索以發(fā)現(xiàn)可能有最高qeye的映射圖區(qū)。一旦完成分析,就可以在映射圖的更小部分上實(shí)施細(xì)粒度搜索以發(fā)現(xiàn)最高qeye。實(shí)施粗粒度搜索在短時間內(nèi)提供映射圖的概覽,并且隨后更準(zhǔn)確的細(xì)粒度搜索可以用于磨練最優(yōu)系數(shù)集。
[0060]可以以各種方式實(shí)行粗粒度搜索。圖8A和SB示出了粗粒度搜索的一個示范性實(shí)施例。如所示的,粗粒度搜索包括四個序列一其每一個使用為2的步長迭代地(iteratively) “行走”映射圖。圖8A所示的第一序列開始于映射圖上的坐標(biāo)(O,O)處,而第二、第三和第四序列分別開始于(1,I)、(O,I)和(1,0)處。第一系列按以下順序覆蓋映射圖上的陰影點(diǎn):(O,O)、(O,2)、(O,4)、(O,6)、(2,6)、(2,4)、(2,2)、(2,O)、(4,O)、(4,2)、(4,4)、(6,2)、(6,0)、(8,0)。圖8B示出了第二序列,其開始于(1,I)處,并且如所示的用為2的步長行走映射圖。序列三和四(未示出)也運(yùn)行。通過將粗粒度搜索分解為四個序列,算法在搜索的早期階段能夠覆蓋映射圖的廣的區(qū)域,并且如果時間許可隨后覆蓋整個映射圖。如果在四個序列完成之前粗粒度搜索耗盡了時間,那么直到那個時間點(diǎn)所發(fā)現(xiàn)的最佳點(diǎn)被存儲并且傳遞到細(xì)粒度搜索。
[0061]可以為粗粒度搜索設(shè)置退出條件。在一個示范性實(shí)施例中,如果以下任何事件發(fā)生則粗粒度搜索算法可以退出:
[0062](I)已經(jīng)發(fā)現(xiàn)超出最小可接受qeye閾值的點(diǎn);
[0063](2)迭代的數(shù)目已經(jīng)超出預(yù)定閾值;
[0064](3)在粗粒度搜索中的總時間已經(jīng)超出預(yù)定值;或者
[0065](4)已經(jīng)測試了所有所選擇的粗粒度序列中的所有指定點(diǎn)。
[0066]一旦退出條件發(fā)生,則映射圖中的最佳點(diǎn)被用作細(xì)粒度搜索的開始點(diǎn)。
[0067]圖9是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施均衡系數(shù)的映射圖上粗粒度搜索的另一種技術(shù)的示圖。在該示范性實(shí)施例中,粗粒度搜索將每個軸切分為2、4、8個部分,以將系數(shù)映射圖分為大致相等的區(qū)。然后選擇每個區(qū)的中心點(diǎn),并且檢查與那些中心點(diǎn)相關(guān)聯(lián)的系數(shù)的合法性。確定用于每個合法的點(diǎn)的qeye,并且選擇具有最高qeye的點(diǎn)作為“最佳粗點(diǎn)”并作細(xì)粒度搜索的開始點(diǎn)。
[0068]在一些實(shí)施例中,粗粒度之外的技術(shù)可以用來選擇細(xì)粒度搜索的開始點(diǎn)。例如,軟件程序或者過程可以用來指定一個系數(shù)集以評估。所指定的系數(shù)集可以是之前在系統(tǒng)中用于均衡的系數(shù)集。在一些封閉系統(tǒng)諸如便攜式計算機(jī)中,在每個啟動周期期間最優(yōu)均衡系數(shù)可以不變,因此這些系數(shù)可以用作細(xì)粒度搜索的開始點(diǎn)或者如果與系數(shù)相關(guān)聯(lián)的眼高滿足可接受的閾值,則甚至可以不進(jìn)行細(xì)粒度搜索而被重新使用。
[0069]圖10是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施均衡系數(shù)映射圖上細(xì)粒度搜索的技術(shù)的示圖。上述的粗粒度搜索算法,用來發(fā)現(xiàn)將被用作細(xì)粒度搜索的開始點(diǎn)的“最佳粗點(diǎn)”。現(xiàn)在描述用于細(xì)粒度搜索的一個示例算法。所評估每個系數(shù)集被稱為算法的“調(diào)諧嘗試”或者“迭代”。細(xì)粒度搜索算法從評估開始點(diǎn)周圍的鄰近參數(shù)開始。然后,算法朝著具有最高眼高的鄰近點(diǎn)的方向一次“行走”一個點(diǎn)。與最大眼高相關(guān)聯(lián)的相鄰或者鄰近點(diǎn)可以稱為當(dāng)前穿過點(diǎn)。朝著該方向(第一方向)繼續(xù)行走并且評估沿途的每個點(diǎn),直到眼高開始下降或者直到達(dá)到邊界線。在眼高在該處開始下降的(或者到達(dá)邊界的)映射圖上的點(diǎn)處,算法評估映射圖上八個周圍的點(diǎn)(或者在邊界線的情況下更少)。算法隨后再朝著具有最高眼高的方向(第二方向)行走,并且重復(fù)這些行走和探索步驟,直到滿足退出條件。四個潛在退出條件是:
[0070](I)八個周圍的點(diǎn)都是低的一算法已經(jīng)到達(dá)最大值;
[0071](2)超時
[0072](3)迭代的數(shù)目已經(jīng)到達(dá)預(yù)定閾值;或者
[0073](4)眼高達(dá)到可接受的閾值。[0074]另外,圖10提供細(xì)粒度搜索的更詳細(xì)的示例。假設(shè)粗粒度搜索選擇了點(diǎn)(3,5)作為開始點(diǎn)。圖10中的映射圖上的數(shù)字僅是例示性的,并且用來代表用于與映射圖上的每個點(diǎn)相關(guān)聯(lián)的均衡系數(shù)的眼高。在開始點(diǎn)(3,5)處的數(shù)字是5。算法評估該開始點(diǎn)周圍的鄰近的系數(shù),并且發(fā)現(xiàn)點(diǎn)(4,5)有所有鄰近點(diǎn)的最高眼高一為6的眼高。以該方式評估鄰近點(diǎn)可以稱為“探索模式”。算法隨后朝著點(diǎn)(4,5)的方向一次一步地行走,直到眼高開始下降。該方向可以被認(rèn)為是第一方向,并且點(diǎn)(4,5)可以稱為當(dāng)前穿過點(diǎn)。沿映射圖行走可以稱為“行走模式”。點(diǎn)(8,5)處的眼高為10,并且點(diǎn)(9,5)處眼高為9。因此算法將圍繞眼高開始下降的點(diǎn)即點(diǎn)(8,5)重新居中。算法隨后評估映射圖上的點(diǎn)(8,5)周圍的八個點(diǎn)并且發(fā)現(xiàn)具有眼高為12的點(diǎn)(8,6)是具有最高眼高的點(diǎn)。因此算法從點(diǎn)(8,5)朝著點(diǎn)(8,6)的方向行走(即第二方向),并且繼續(xù)直到眼高開始下降。在點(diǎn)(8,10)處的眼高是19并且在點(diǎn)(8,11)處下降為14。再次,算法重新居中,該次圍繞點(diǎn)(8,10)并且評估點(diǎn)(8,10)周圍的八個點(diǎn)。該次評估之后,算法發(fā)現(xiàn)八個周圍的點(diǎn)的眼高都低于點(diǎn)(8,10)處的眼高。因此,算法已經(jīng)滿足退出條件并且選擇點(diǎn)(8,10)處的均衡系數(shù)在系統(tǒng)中使用。在該示例中總結(jié)了細(xì)粒度搜索。
[0075]在細(xì)粒度搜索期間,可以首先檢查算法所遇到的映射圖上的每個系數(shù)集合法性。如果在探索模式中時遇到不合法的點(diǎn),那么算法可以跳過該點(diǎn)并且往前走。如果在行走模式中時遇到不合法的點(diǎn),那么算法可以在該點(diǎn)處停止行走并且切換到探索模式。
[0076]上述粗粒度搜索和細(xì)粒度搜索可以以各種方式并且在各種系統(tǒng)中實(shí)現(xiàn)。這些技術(shù)可以用于例如類似PCIe的高速串行通信協(xié)議,以準(zhǔn)備數(shù)據(jù)信號用于傳送。PCIe3.0基本規(guī)范沒有提出均衡搜索算法。
[0077]在涉及PCIe3.0的一個示范性實(shí)現(xiàn)方案中,恢復(fù).均衡(Recovery.Equalization)是鏈路訓(xùn)練和狀況狀態(tài)機(jī)(LTSSM)的恢復(fù)狀態(tài)的子狀態(tài)。該子狀態(tài)用來發(fā)現(xiàn)用于8.0GT/s速度上的合適操作的 最優(yōu)傳送系數(shù)。均衡系數(shù)可以由硬件使用握手協(xié)議來自動確定。因此,恢復(fù).均衡訓(xùn)練算法用來在最短時間內(nèi)發(fā)現(xiàn)最優(yōu)系數(shù)。
[0078]恢復(fù).均衡子狀態(tài)進(jìn)一步分為五個子-子狀態(tài):
[0079](I)恢復(fù).均衡階段O
[0080](2)恢復(fù).均衡階段I
[0081](3)恢復(fù).均衡階段 2ReqCoeff
[0082](4)恢復(fù).均衡階段2EQ Train
[0083](5)恢復(fù).均衡階段3
[0084]恢復(fù).均衡階段O僅為上游端口預(yù)留(即端點(diǎn)(endpoint))。當(dāng)下游端口(即根端口(ootport))請求進(jìn)入恢復(fù).均衡時,端點(diǎn)首先進(jìn)入該狀態(tài)。在進(jìn)入該狀態(tài)之前,根端口將根端口建議均衡系數(shù)應(yīng)用于其發(fā)射器(根端口建議預(yù)設(shè)定由根端口在第一速度變化為gen3之前以genl/gen2速度通信)。根端口建議預(yù)設(shè)定的原因在于,由于大多數(shù)跟蹤都在母板上,因此根端口制造商會更好地預(yù)測最優(yōu)預(yù)設(shè)定會是什么,從而制造商應(yīng)該指定作為開始的預(yù)設(shè)定是什么。該制造商規(guī)范可以允許搜索算法更快停留在最優(yōu)點(diǎn)。
[0085]恢復(fù).均衡階段I用于上游和下游端口兩者。兩個端口都將根端口建議預(yù)設(shè)定應(yīng)用于其發(fā)射器。端口還經(jīng)由訓(xùn)練設(shè)定(TSl)彼此通信其FS和LF值,使得每個端口可以將這些值插入以上指定的約束方程。該步驟使得每個端口在其各自的“主”階段(即用于上游端口的階段2,用于下游端口的階段3)只搜索合法的系數(shù)。
[0086]在恢復(fù).均衡階段2ReqC0eff,上游端口(端點(diǎn))發(fā)送請求給下游端口(根端口)以設(shè)定其Tx (發(fā)射)設(shè)定為上游端口認(rèn)為會是最優(yōu)的值,并且等待請求被接受或者拒絕。上游端口可以注意只請求合法系數(shù),但是也可以具有處理合法系數(shù)被另一側(cè)拒絕的情況的機(jī)制。上游端口可以通過指定各個系數(shù)(前標(biāo)記、主標(biāo)記、后標(biāo)記)來請求將應(yīng)用的均衡設(shè)定。
[0087]在恢復(fù).均衡階段2EQ Train,上游端口評估由在恢復(fù).均衡階段2ReqCoeff中所請求的系數(shù)產(chǎn)生的鏈路質(zhì)量。該評估可以由均衡器來實(shí)施,并且最終的結(jié)果是qeye。端口隨后記下該值,并且將其與在較早的請求中所見的qeye值進(jìn)行比較一如果這是目前為止最高的一個,那么端口將所請求的系數(shù)存儲在臨時變量中諸如(best_precursor, best_maincursor, best_postcursor)0
[0088]如果需要試更多系數(shù)(以搜索甚至更高的qeye),那么下一個狀態(tài)是恢復(fù).均衡階段2ReqC0efT,或者如果最大qeye大于可接受的閾值(或者如果算法沒能發(fā)現(xiàn)其他值得試的點(diǎn)),那么下一個狀態(tài)是恢復(fù).均衡階段3。在該實(shí)施例中,可以用于在恢復(fù).均衡階段2ReqCoeff和恢復(fù).均衡階段2EQTrain之間迭代的最長時間是24ms。在達(dá)到24ms之后,端口過渡到恢復(fù).均衡階段3。
[0089]在恢復(fù).均衡階段3,下游端口向上游端口發(fā)請求以變化上游端口的Tx設(shè)定,并且下游端口試著發(fā)現(xiàn)用于上游端口至下游端口方向的鏈路的最佳qeye。該階段有32ms的超時。上游端口只是接收請求、將其反映回并且當(dāng)其是合法的時指示“被接受”(或者當(dāng)其是不合法的時指示“拒絕“)、以及將合法的應(yīng)用于其自己的發(fā)射器設(shè)定。
[0090]由于那些狀態(tài)只被分配給端點(diǎn)用于實(shí)施系數(shù)搜索,因此恢復(fù).均衡訓(xùn)練算法只適用于子-子狀態(tài)恢復(fù).均衡階段2ReqC0efT和恢復(fù).均衡階段2EQTrain。所試的每個系數(shù)集稱為算法的“調(diào)諧嘗試”或者“迭代”。當(dāng)滿足某些條件時可以發(fā)生從恢復(fù).均衡階段2Request Coeff的過渡。當(dāng)EQ Train信號變高時,發(fā)生從恢復(fù).均衡階段2EQ Train到恢復(fù).均衡階段2ReqCoeff的過渡。
[0091]以下描述包括粗的方法和細(xì)的方法兩者以及其他方法的搜索算法的一個示范性實(shí)施例。該示范性實(shí)施例可以寬泛地分類為五個子算法:
[0092]( I)請求之前的最佳設(shè)定一如果“最佳系數(shù)”變量有有效值,那么再請求那些值。如果鏈路又進(jìn)入恢復(fù).均衡狀態(tài)并且用戶希望測試由之前的均衡搜索所發(fā)現(xiàn)的點(diǎn),那么該子算法是有用的。
[0093](2) SBIOS預(yù)設(shè)定請求一請求由根端口在進(jìn)入gen3之前推薦的預(yù)設(shè)定。
[0094](3)軟件指定系數(shù)請求一軟件經(jīng)由寄存器提供可能是最優(yōu)的系數(shù)集
[0095](4)粗粒度算法一以某一步幅(或者步長)搜索系數(shù)空間以發(fā)現(xiàn)高的qeye值的區(qū);或者如上所述,實(shí)施任何類型的粗粒度算法
[0096](5)細(xì)粒度算法一在之前的步驟中未覆蓋的最高點(diǎn)附近搜索,但是限制步長為I。如上所述,總是朝著具有qeye的增幅最高的梯度的方向行進(jìn)。
[0097](6)最后的步驟是重新請求在之前5個步驟中發(fā)現(xiàn)的最佳點(diǎn)。該步驟是一代貫穿(one-1teration pass through)步驟。
[0098]圖11是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施多道信道均衡訓(xùn)練的方法步驟的流程圖。雖然結(jié)合圖1、2和7-10描述方法步驟,本領(lǐng)域技術(shù)人員將理解以任何順序?qū)嵤┓椒ǖ娜魏蜗到y(tǒng)均落在本發(fā)明范圍內(nèi)。當(dāng)執(zhí)行存儲在存儲器諸如系統(tǒng)存儲器104中的軟件應(yīng)用程序時,處理單元102配置為實(shí)施方法1100的各種步驟。在一些實(shí)施例中,并行處理子系統(tǒng)112可以實(shí)施方法1100的一些步驟。
[0099]如所示的,方法1100開始于步驟1110,其中處理單元102對均衡系數(shù)集實(shí)施第一遍測試。第一遍測試產(chǎn)生每個均滿足某一標(biāo)準(zhǔn)的一個或多個經(jīng)過濾的均衡系數(shù)集。第一遍測試可以包括上述粗粒度搜索算法中的一個。第一遍測試可以例如確定與每個均衡系數(shù)集相關(guān)聯(lián)的眼高,并且至少部分基于該眼高來過濾均衡系數(shù)集。
[0100]在步驟1120,處理單元102對一個或多個經(jīng)過濾的均衡系數(shù)集實(shí)施第二遍測試以確定最終的均衡系數(shù)集。第二遍測試產(chǎn)生比第一遍測試更準(zhǔn)確的結(jié)果。第二遍測試可以比第一遍測試用更長的時間來實(shí)施。此外,第二遍測試可以包括上述的細(xì)粒度搜索算法。第二遍測試可以例如確定與每個均衡系數(shù)集相關(guān)聯(lián)的眼高,并且至少部分基于該眼高來選擇或者拒接均衡系數(shù)集。
[0101]圖12是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施粗粒度算法的方法步驟的流程圖。雖然結(jié)合圖1、2和7-10描述方法步驟,本領(lǐng)域技術(shù)人員將理解以任何順序?qū)嵤┓椒ǖ娜魏蜗到y(tǒng)均落在本發(fā)明范圍內(nèi)。當(dāng)執(zhí)行存儲在存儲器諸如系統(tǒng)存儲器104中的軟件應(yīng)用程序時,處理單元102配置為實(shí)施方法1200的各種步驟。在一些實(shí)施例中,并行處理子系統(tǒng)112可以實(shí)施方法1200的一些步驟。
[0102]過程開始于步驟1210。處理器102執(zhí)行執(zhí)行軟件應(yīng)用程序以選擇均衡系數(shù)映射圖上的開始點(diǎn)。在圖8A所示的一個示例性實(shí)施例中,選擇的開始點(diǎn)是(O,O)。在其他實(shí)施例中可以選擇其他點(diǎn)。
[0103]在步驟1220,處理器102執(zhí)行軟件應(yīng)用程序來使用大于一的步長沿著映射圖迭代地行走。在圖8A所示的示例性實(shí)施例中,步長為2。在其他實(shí)施例中可以使用其他步長。在示例性實(shí)施例中,如以上針對圖8A所述,技術(shù)從點(diǎn)(0,0)行走到點(diǎn)(O, 2),然后到點(diǎn)(0,4)、(0,6)、(2,6)等。該方法通過使用大于一的步長可以在短時間內(nèi)覆蓋映射圖的廣的區(qū)域。
[0104]在步驟1230,處理器102執(zhí)行軟件應(yīng)用程序以測量每個點(diǎn)的眼高。將具有最高眼高的點(diǎn)存儲在存儲器中,并且也可以存儲其他點(diǎn)??梢允褂糜糜跍y量眼高的任何合適的過程。具有最高眼高的點(diǎn)可以用作最優(yōu)系數(shù)或者可以用作另一個搜索算法諸如細(xì)粒度搜索的開始點(diǎn)。
[0105]在步驟1240,如果退出條件發(fā)生,處理器102執(zhí)行軟件應(yīng)用程序以退出方法。可以使用數(shù)個潛在的退出條件。如果已經(jīng)發(fā)現(xiàn)超出最小可接受qeye閾值的點(diǎn),那么第一退出條件發(fā)生。如果退出條件發(fā)生,那么搜索已經(jīng)發(fā)現(xiàn)最優(yōu)系數(shù)集并且這些系數(shù)可以被選擇并用于傳送。如果反復(fù)數(shù)目已經(jīng)超出預(yù)定值,那么第二退出條件發(fā)生。搜索可以實(shí)施預(yù)定最大數(shù)目的反復(fù),使得不超出用于粗粒度搜索的時間限制。如果達(dá)到反復(fù)的數(shù)目,那么搜索過程可以退出。如果粗粒度搜索的總時間已經(jīng)超出預(yù)定值,那么另一個退出條件可以發(fā)生。如果已經(jīng)測試了在所有經(jīng)選擇的粗粒度序列中所指定的所有點(diǎn),第四退出條件可以發(fā)生。當(dāng)退出條件發(fā)生,處理器102可以執(zhí)行軟件應(yīng)用程序以選擇所發(fā)現(xiàn)的最佳均衡系數(shù)(如由眼高所測量的),并且或者使用那些系數(shù)用于均衡,或者使用那些系數(shù)作為細(xì)粒度搜索的開始點(diǎn)。
[0106]在步驟1250,如果沒有退出條件發(fā)生,那么處理器102執(zhí)行軟件應(yīng)用程序來通過從步驟1210開始重復(fù)方法,并且使用不同的開始點(diǎn)。如示例性實(shí)施例,過程可以針對第一序列使用開始點(diǎn)(0,0),并且隨后針對第二序列使用開始點(diǎn)(0,I)。第二序列正如第一一樣繼續(xù)進(jìn)行:沿映射圖使用大于一的步長行走、測量眼高、并且如果退出條件發(fā)生則退出。如果沒有滿足退出條件,那么可以發(fā)生任何數(shù)目的附加序列。
[0107]圖13是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施粗粒度搜索的方法步驟的流程圖。雖然結(jié)合圖1、2和7-10描述方法步驟,本領(lǐng)域技術(shù)人員將理解以任何順序?qū)嵤┓椒ǖ娜魏蜗到y(tǒng)均落在本發(fā)明范圍內(nèi)。當(dāng)執(zhí)行存儲在存儲器諸如系統(tǒng)存儲器104中的軟件應(yīng)用程序時,處理單元102配置為實(shí)施方法1300的各種步驟。在一些實(shí)施例中,并行處理子系統(tǒng)112可以實(shí)施方法1300的一些步驟。
[0108]過程開始于步驟1310。在該步驟,處理器102執(zhí)行軟件應(yīng)用程序以將均衡系數(shù)的映射圖切分為多個區(qū)。圖9中可見以該方式切分映射圖的示例。映射圖可以切分為大致相等大小的區(qū)或者非相等大小的區(qū)。映射圖可以切分為任何合適數(shù)目的區(qū)。
[0109]在步驟1320,處理器102執(zhí)行軟件應(yīng)用程序以測量每個區(qū)中的一個點(diǎn)的眼高??梢砸愿鞣N方式選擇在每個區(qū)中測量的點(diǎn)。在一些實(shí)施例中,可以選擇區(qū)的中心點(diǎn)。在另一些實(shí)施例中,可以選擇隨機(jī)的或者偽隨機(jī)的點(diǎn)。使用任何合適的技術(shù)來測量眼高。
[0110]在步驟1330,處理器102執(zhí)行軟件應(yīng)用程序以選擇具有最高眼高的點(diǎn)作為細(xì)粒度搜索算法或者另一個搜索算法的開始點(diǎn)。理想情況,選擇具有最高眼高的點(diǎn)作為開始點(diǎn)與從另一個點(diǎn)開始相比,導(dǎo)致更快發(fā)現(xiàn)最優(yōu)均衡系數(shù)集。
[0111]圖14是根據(jù)本發(fā)明一個實(shí)施例的、用于實(shí)施細(xì)粒度搜索的方法步驟的流程圖。雖然結(jié)合圖1、2和7-10描述方法步驟,本領(lǐng)域技術(shù)人員將理解以任何順序?qū)嵤┓椒ǖ娜魏蜗到y(tǒng)均落在本發(fā)明范圍內(nèi)。當(dāng)執(zhí)行存儲在存儲器諸如系統(tǒng)存儲器104中的軟件應(yīng)用程序時,處理單元102配置為實(shí)施方法1400的各種步驟。在一些實(shí)施例中,并行處理子系統(tǒng)112可以實(shí)施方法1400的一些步驟。
[0112]技術(shù)開始于步驟1410。在步驟1410,處理單元102在均衡系數(shù)映射圖上選擇開始點(diǎn)。在一個示范性實(shí)施例中,均衡系數(shù)映射圖可以類似于圖7所示的映射圖??梢杂扇魏芜m合的技術(shù)選擇開始點(diǎn),包括粗粒度搜索算法中的一個或者上述的子算法中的一個。
[0113]在步驟1420,處理單元102執(zhí)行軟件應(yīng)用程序以測量開始點(diǎn)和與開始點(diǎn)相鄰的每個點(diǎn)的眼高。這些眼高隨后可以用來在映射圖上搜索最優(yōu)均衡系數(shù)集。可以使用任何適合的方法來測量眼高。
[0114]在步驟1430,處理器102執(zhí)行軟件應(yīng)用程序,以沿均衡系數(shù)的映射圖朝著具有最高眼高的、與開始點(diǎn)相鄰的點(diǎn)的方向行走。以上針對圖10描述了該過程。
[0115]在步驟1440,處理器102執(zhí)行軟件應(yīng)用程序以確定眼高是否仍然在增大或者沒有增大。如果眼高仍然在增大,那么方法返回步驟1430并且繼續(xù)朝著有最高眼高的點(diǎn)的方向行走。只要眼高在增大(或者如下所述直到某一退出條件發(fā)生),重復(fù)步驟1430和1440。如果眼高沒有增大,那么方法進(jìn)行到步驟1450。
[0116]在步驟1450,處理器102執(zhí)行軟件應(yīng)用程序以選擇從該處眼高開始下降的點(diǎn),并且測量每個相鄰點(diǎn)的眼高。以上還針對圖7描述了該過程。這些眼高用于確定行走的新的方向,或者確定是否滿足退出條件。隨后過程繼續(xù)到步驟1460。
[0117]在步驟1460,處理器102執(zhí)行軟件應(yīng)用程序以確定是否已經(jīng)滿足退出條件。如以上針對圖10所述,可以使用數(shù)個潛在的退出條件。如果每個相鄰點(diǎn)與眼高開是下降的點(diǎn)相比都具有更低的眼高,那么方法發(fā)現(xiàn)本地最大值,并且在某些實(shí)施例中這可以結(jié)束細(xì)粒度搜索算法。是否已經(jīng)滿足預(yù)定時間閾值可以是另一個退出條件。第三退出條件可以是眼高是否在大于預(yù)定閾值。如果是,那么該眼高滿足系統(tǒng)要求并且那些系數(shù)可以由處理器102選擇來使用。當(dāng)算法的反復(fù)數(shù)目已經(jīng)到達(dá)某一閾值時,滿足第四退出條件。如果不滿足退出條件,那么方法返回步驟1430朝著具有最高眼高的方向繼續(xù)行走。如果已經(jīng)滿足退出條件,那么方法繼續(xù)到步驟1470。
[0118]在步驟1470,處理器102執(zhí)行軟件應(yīng)用程序以選擇在已經(jīng)分析的所有系數(shù)集中具有最高眼高的系數(shù)。已經(jīng)滿足以上在步驟1460中所述的至少一個退出條件,并且系統(tǒng)現(xiàn)在可以繼續(xù)其他啟動過程。理想情況是,所選擇的均衡系數(shù)將減小所傳送的信號中的錯誤率。
[0119]總而言之,可以使用兩道(遍)式方法來發(fā)現(xiàn)和選擇最優(yōu)均衡系數(shù)集用于高速數(shù)據(jù)傳送。第一遍包括在包括每個點(diǎn)處的均衡系數(shù)集的點(diǎn)的映射圖上的粗粒度搜索。粗粒度搜索的目的是選定可以用于高速數(shù)據(jù)傳送或可以用作第二遍的開始點(diǎn)的均衡系數(shù)集。可以以各種方式實(shí)施粗粒度搜索,包括將系數(shù)映射圖分為數(shù)個區(qū)并測試每個區(qū)中的一個點(diǎn)或者圍繞映射圖迭代地行走并測試映射圖上的點(diǎn)的子集。所實(shí)施的測試包括測量與每個均衡系數(shù)集相關(guān)聯(lián)的眼高。第二遍包括映射圖上的細(xì)粒度搜索。細(xì)粒度搜索涉及測量開始點(diǎn)的眼高和與開始點(diǎn)相鄰的每個點(diǎn)的眼高。搜索算法然后沿映射圖朝著具有最高眼高的點(diǎn)的方向行走,并且只要眼高保持增加就繼續(xù)行走。如果眼高開始下降,那么算法將在具有最高眼高的點(diǎn)處重新居中,并評估所有相鄰的點(diǎn)。算法隨后再朝著具有最高眼高的點(diǎn)的方向行走并繼續(xù)細(xì)粒度搜索直到滿足退出條件。一旦滿足退出條件,算法就選擇具有最高眼高的均衡系數(shù)并將那些系數(shù)用于均衡沿高速數(shù)據(jù)連接的傳送。
[0120]有利地,使用以上技術(shù)選擇均衡系數(shù)允許更快地選擇滿足系統(tǒng)所要求的質(zhì)量標(biāo)準(zhǔn)的系數(shù)。在諸如服務(wù)器的一些系統(tǒng)中,信道長并且噪聲非常大??山邮艿南禂?shù)子集因此非常少。上述的搜索算法通過首先識別最優(yōu)系數(shù)可能位于的均衡系數(shù)映射圖的區(qū),并隨后通過實(shí)施該區(qū)的貫穿搜索來發(fā)現(xiàn)最佳系數(shù),以有效發(fā)現(xiàn)最優(yōu)系數(shù)。在短信道系統(tǒng)中(諸如臺式電腦),大量點(diǎn)可以滿足操作要求。本文所述的算法可以快速進(jìn)行粗粒度搜索并隨后使用細(xì)粒度搜索來定位映射圖上的最優(yōu)點(diǎn)。細(xì)粒度搜索可以朝著八個可能的方向中的任何一個行走,并且這有助于快速發(fā)現(xiàn)最優(yōu)點(diǎn)。此外,諸如便攜式計算機(jī)的一些系統(tǒng)具有不可變的嵌入式鏈路,這意味著均衡系數(shù)也不期望改變。本公開提供直接指派已知質(zhì)量的均衡系數(shù)作為搜索的開始點(diǎn)的軟件。在質(zhì)量點(diǎn)處或者質(zhì)量點(diǎn)附近開始的搜索通??梢苑浅?斓赝瓿?。
[0121]其他優(yōu)點(diǎn)包括能夠通過改變步大小、退出條件或者其他變量來微調(diào)上述搜索算法。上述算法可以處理合法點(diǎn)和不合法點(diǎn)??梢哉{(diào)整撥給粗粒度搜索和/或細(xì)粒度搜索的時間。
[0122]本發(fā)明的一個實(shí)施例可被實(shí)施為與計算機(jī)系統(tǒng)一起使用的程序產(chǎn)品。該程序產(chǎn)品的程序定義實(shí)施例的各功能(包括本文中描述的方法)并且可以被包含在各種計算機(jī)可讀存儲介質(zhì)上。示例性計算機(jī)可讀存儲介質(zhì)包括但不限于:(i)不可寫的存儲介質(zhì)(例如,計算機(jī)內(nèi)的只讀存儲器設(shè)備,諸如可由CD-ROM驅(qū)動器讀取的光盤只讀存儲器(CD-ROM)盤、閃存、只讀存儲器(ROM)芯片或任何類型的固態(tài)非易失性半導(dǎo)體存儲器),在其上存儲永久性信息jP(ii)可寫的存儲介質(zhì)(例如,磁盤驅(qū)動器或硬盤驅(qū)動器內(nèi)的軟盤或者任何類型的固態(tài)隨機(jī)存取半導(dǎo)體存儲器),在其上存儲可更改的信息。
[0123]以上已參照特定實(shí)施例對本發(fā)明進(jìn)行了描述。然而,本領(lǐng)域普通技術(shù)人員將理解的是,可對此做出各種修改和變化而不脫離如隨附權(quán)利要求書中所闡述的本發(fā)明的較寬精神和范圍。因此,前面的描述以及附圖應(yīng)被視為是例示性而非限制性的意義。
【權(quán)利要求】
1.一種用于分析用于高速數(shù)據(jù)總線的均衡系數(shù)的計算機(jī)實(shí)現(xiàn)方法,所述方法包括: 對多個均衡系數(shù)集實(shí)施第一遍測試以過濾所述多個均衡系數(shù)集,來產(chǎn)生一個或多個經(jīng)過濾的均衡系數(shù)集,其中每個經(jīng)過濾的均衡系數(shù)集滿足第一預(yù)定閾值; 對所述一個或多個經(jīng)過濾的均衡系數(shù)集實(shí)施第二遍測試以確定滿足第二預(yù)定閾值的最終的均衡系數(shù)集,其中所述第二遍測試相比所述第一遍測試產(chǎn)生更準(zhǔn)確的結(jié)果。
2.根據(jù)權(quán)利要求1所述的方法,其中所述多個均衡系數(shù)集分布在包括多個點(diǎn)的均衡系數(shù)的映射圖上,其中所述映射圖上的每個點(diǎn)代表單個均衡系數(shù)集。
3.根據(jù)權(quán)利要求2所述的方法,其中實(shí)施所述第一遍測試包括將所述均衡系數(shù)的映射圖切分為多個區(qū),并且測試每個區(qū)中所選擇的均衡系數(shù)集以確定所述所選擇的均衡系數(shù)集是否滿足所述第一預(yù)定閾值。
4.根據(jù)權(quán)利要求3所述的方法,其中測試所述所選擇的均衡系數(shù)集包括,對與采用所述所選擇的均衡系數(shù)調(diào)諧的數(shù)據(jù)傳送相關(guān)聯(lián)的眼高進(jìn)行測量。
5.根據(jù)權(quán)利要求2所述的方法,其中實(shí)施所述第一遍測試包括沿所述均衡系數(shù)的映射圖迭代地行走到至少一個新的點(diǎn),并且測試由所述至少一個新的點(diǎn)所代表的均衡系數(shù)集。
6.根據(jù)權(quán)利要求5所述的方法,其中所述第一遍測試?yán)^續(xù),直到滿足退出條件。
7.根據(jù)權(quán)利要求6所述的方法,其中所述退出條件包括: 在每個被訪問的點(diǎn)處測量與所述均衡系數(shù)集相關(guān)聯(lián)的眼高,并且如果所述眼高高于預(yù)定閾值則退出; 沿所述均衡系數(shù)的映射圖上的所述點(diǎn)迭代地行走,直到已經(jīng)訪問預(yù)定數(shù)目的點(diǎn); 超出用于所述第一遍測試的預(yù)定時間限制;或者 完成沿所述均衡系數(shù)的映射圖迭代地行走的一個或多個預(yù)定序列。
8.根據(jù)權(quán)利要求2所述的方法,其中實(shí)施所述第二遍測試包括,沿所述均衡系數(shù)的映射圖上的所述點(diǎn),從代表所述一個或多個經(jīng)過濾的均衡系數(shù)集中的一個均衡系數(shù)集的點(diǎn),行走到至少一個新的點(diǎn),并且對由所述至少一個新的點(diǎn)代表的均衡系數(shù)集進(jìn)行測試。
9.根據(jù)權(quán)利要求8所述的方法,其中測試所述均衡系數(shù)集包括,對與采用所述所選擇的均衡系數(shù)集調(diào)諧的數(shù)據(jù)傳送相關(guān)聯(lián)的眼高進(jìn)行測量。
10.一種計算設(shè)備,包括: 處理器;以及 耦連到所述處理器并包括軟件應(yīng)用的存儲器,當(dāng)所述軟件應(yīng)用由所述處理器執(zhí)行時,使得所述處理器: 對多個均衡系數(shù)集實(shí)施第一遍測試以過濾所述多個均衡系數(shù)集,來產(chǎn)生一個或多個經(jīng)過濾的均衡系數(shù)集,其中每個經(jīng)過濾的均衡系數(shù)集滿足第一預(yù)定閾值; 對所述一個或多個經(jīng)過濾的均衡系數(shù)集實(shí)施第二遍測試以確定滿足第二預(yù)定閾值的最終的均衡系數(shù)集,其中所述第二遍測試相比所述第一遍測試產(chǎn)生更準(zhǔn)確的結(jié)果。
【文檔編號】G06F11/00GK103885911SQ201310714797
【公開日】2014年6月25日 申請日期:2013年12月20日 優(yōu)先權(quán)日:2012年12月20日
【發(fā)明者】車興世, 黃偉哲, 維沙·梅塔, 費(fèi)羅茲·卡里姆, 馬康棟, 麥克爾·霍普古德, 斯里坎斯·德瓦拉帕里 申請人:輝達(dá)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
五常市| 康乐县| 美姑县| 库伦旗| 库尔勒市| 汤原县| 达拉特旗| 迁安市| 惠水县| 彭州市| 横山县| 金乡县| 台前县| 凤冈县| 瑞昌市| 修文县| 通许县| 江城| 无为县| 偃师市| 大田县| 桦川县| 余姚市| 枣强县| 碌曲县| 宝山区| 宜君县| 汤原县| 祁东县| 宜川县| 九龙城区| 北辰区| 平湖市| 霍林郭勒市| 龙海市| 屯昌县| 连江县| 伊宁市| 根河市| 新沂市| 冕宁县|