專利名稱:校準芯片間信號驅動參數(shù)的方法與相關裝置的制作方法
技術領域:
本發(fā)明提供一種校準芯片間信號驅動參數(shù)的方法與相關裝置,尤其指一種實際進行芯片間信號交換測試以實測較佳信號驅動強度的校準方法與相關裝置。
背景技術:
微處理機系統(tǒng)/電子系統(tǒng)是現(xiàn)代信息社會最重要的硬件基礎之一。在微處理機系統(tǒng)這類的復雜電子系統(tǒng)中,常需要集合多種不同功能的芯片,使各芯片協(xié)調運行,才能綜合實現(xiàn)系統(tǒng)的整體功能。舉例來說,個人計算機系統(tǒng)中就設有芯片形式的中央處理器、各個芯片組(如南橋芯片/北橋芯片或是南北橋綜合于同一芯片的芯片組)與存儲模塊,而計算機系統(tǒng)中的各個外國設備,也都是經(jīng)由芯片來控制外國設備與芯片組的數(shù)據(jù)交換。譬如說,硬盤驅動器、光盤驅動器中都會設有控制芯片來管理這些外國設備的運行與數(shù)據(jù)交換,而顯示卡、網(wǎng)路卡、音效卡等外國設備更可分別視為一個次微處理機系統(tǒng),各個次微處理機系統(tǒng)中要以一或多個專屬的芯片來實現(xiàn)其功能。要如何協(xié)調電子系統(tǒng)中的各個芯片,使各個芯片能正確地交換數(shù)據(jù)而順利地將多個芯片的功能綜合起來,也就成為信息廠商研發(fā)的重點之一。
如本領域技術人員所知,電子系統(tǒng)中的各個芯片會被安裝于電路板上(如印刷電路板或是主機板),經(jīng)由電路板上的信號布線電連接在一起。以電氣特性來說,當同一電子系統(tǒng)中的某一芯片A要將一信號發(fā)送/傳輸至另一芯片B時,芯片A的信號輸出端就可視為一電源(如電流源),而芯片B的對應信號接收端就可視為一負載(如一電容性負載)。由芯片A的信號輸出端所提供的電子驅動強度(strength)(電壓/電流)會經(jīng)由電路板上的信號布線注入至芯片B的信號接收端,使芯片B于信號接收端的電功率電平(如電流/電壓電平)能被適當?shù)仳寗?,而芯片B就可根據(jù)其信號接收端的電功率電平來判讀信號所代表的數(shù)值(內容);這樣,也就完成了芯片A對芯片B的信號發(fā)送。舉例來說,在一般數(shù)字電子系統(tǒng)中,若芯片B于信號接收端的電功率電平高于某一預設的參考值Vrp,芯片B可將其判讀為一數(shù)值“1”的數(shù)字信號;若電功率電平低于某一參考值Vrn,則芯片B可將其判讀為一數(shù)值“0”的數(shù)字信號。因此,當芯片A要發(fā)出一數(shù)值“1”信號至芯片B時,芯片A所提供的驅動強度(可稱為正驅動強度)就應該足以將芯片B的電功率電平驅動至參考值Vrp之上,才能使芯片B正確地判讀出芯片A發(fā)出的信號內容。相對地,若芯片A要發(fā)出一數(shù)字“0”信號至芯片B時,芯片A所提供的信號驅動強度(可稱為負驅動強度)就應該能將芯片B的電功率電平拉低至參考值Vrn以下,這樣芯片B才能正確地判讀出芯片A的信號內容。
一般來說,在現(xiàn)行的公知技術中,當芯片設計者在設計芯片時,會在芯片中以硬件內建的方式預先設定好信號收發(fā)的相關參數(shù),也就是信號發(fā)射所應使用的驅動強度,以及信號接收時用來判讀信號內容的參考值。當芯片得到充分供電而開始運行后,就可依照設計時設定的驅動強度及參考值來收發(fā)信號,和其他的芯片交換數(shù)據(jù)。譬如說,當一計算機系統(tǒng)的使用者打開電源時,計算機系統(tǒng)中的各芯片就會在得到供電后以預先設定好的驅動強度/參考值來交換數(shù)據(jù),以進行初步的協(xié)調,接下來才能載入基本輸出入系統(tǒng)(BIOS,Basic Input/Output System),進行計算機系統(tǒng)的供電后自我測試(POST,Power-On Self-Test),以完成開機(boot)程序。
不過,在實際實現(xiàn)一電子系統(tǒng)時,卻往往有許多不理想的因素影響芯片間的數(shù)據(jù)交換,使一芯片所提供的電子驅動強度無法正確/適當?shù)仳寗恿硪恍酒男盘栯娖?。譬如說,芯片的制造誤差可能會使其信號驅動強度不足,或使一芯片的信號接收端有逾越預期的阻抗,使其電功率電平不易受驅動;另外,如電路板上信號布線的阻抗過大(如布線過長、布線分布于電路板中不同的導電層),芯片運行于較高或較低的溫度而使驅動強度/參考值漂移等,這些因素都可能超越芯片設計者原先的設計規(guī)格,導致發(fā)送信號的芯片即使使用了預設的驅動強度也無法在接收芯片處建立預期的電功率電平;這樣一來,接收芯片就無法正確地判讀由發(fā)送芯片傳來的數(shù)據(jù)。當該情形發(fā)生在計算機系統(tǒng)中,計算機系統(tǒng)甚至將無法進行開機程序,因為各芯片在得到供電后無法順利地交換數(shù)據(jù),也就無法載入基本輸出入系統(tǒng)來進行開機。換句話說,芯片間的運行環(huán)境(如電路板上信號布線的情形,芯片運行的溫度等)是會動態(tài)改變的,其變化程度可能會超乎芯片設計者的預期;公知技術僅能以固定的內設驅動強度/參考值來開始芯片間的數(shù)據(jù)交換,就無法有效地適應芯片運行的真正環(huán)境。
發(fā)明內容
因此,本發(fā)明的主要目的,即在于提供一種能在各芯片開始運行之初以實際的數(shù)據(jù)交換來校準信號驅動的相關參數(shù)(也就是驅動強度及/或參考值)的方法與相關裝置,各相連的芯片能在運行之初實測對方所能正確接受的驅動強度/參考值,以克服公知技術的缺點,動態(tài)地適應芯片運行的環(huán)境。
在本發(fā)明的一實施例中,當相連的兩芯片A與B得到供電而要開始協(xié)調運行之前,芯片A和B可先進行驅動強度的交互測試,先以一芯片(如芯片A)當作主端(master),以另一芯片(芯片B)作為從端(slave),并使主端芯片開始以不同的驅動強度發(fā)出多個用來代表同一測試數(shù)值的測試信號。從端芯片接收這些測試信號后,就可一一予以判讀,并以響應信號將判讀所得的數(shù)值回傳至主端芯片;這樣一來,主端芯片就可比較從端芯片的判讀數(shù)值是否和測試信號原先的測試數(shù)值相等,藉此來判斷要以何種驅動強度來向從端芯片發(fā)送信號。
舉例來說,假設主端芯片可依序以M種強弱不同的正驅動強度Ip(1)至Ip(M)來驅動從端芯片的信號接收端,使從端芯片信號接收端的電功率電平增高。當要實現(xiàn)本發(fā)明的上述實施例時,主端芯片就可依序使用這M種正驅動強度,以嘗試向從端芯片發(fā)出數(shù)值“1”的數(shù)字測試信號。如前面所討論過的,因為種種不理想因素,主端芯片的某些驅動強度在傳輸至從端芯片后,可能已經(jīng)無法將從端芯片的電功率電平驅動至足夠的程度,故也無法被從端芯片判讀為數(shù)值“1”,反而被判讀為數(shù)值“0”。當從端芯片針對這些驅動強度而向主端芯片回傳其判讀值時,從端芯片就會回傳數(shù)值“0”的響應信號給主端芯片(從端芯片可用從端芯片最強的負驅動強度來發(fā)出該數(shù)值“0”響應信號,使主端芯片不會誤判從端芯片的回傳值)。主端芯片接收從端芯片回傳的判讀值后,由于該回傳的數(shù)值“0”和主端芯片原本欲發(fā)出的數(shù)值“1”不同,主端芯片就可得知這些驅動強度所發(fā)出的信號不能被對方(從端芯片)正確判讀。同理,若從端芯片針對某些驅動強度所回傳的判讀數(shù)值和主端芯片原先發(fā)出的數(shù)值相同,就代表主端芯片能以這些驅動強度來正確地發(fā)出信號。經(jīng)由上述的芯片間測試,主端芯片就能實測出哪些驅動強度所發(fā)出的信號才能被從端芯片正確判讀。接下來,芯片A與B可交換主從關系,再進行上述的測試。等芯片A與B都分別當過主端芯片后,芯片A、B在正式運行并開始交換數(shù)據(jù)時,就能利用實測有效的驅動強度正確地發(fā)出對方能解讀無誤的信號。
依據(jù)類似的原理,在本發(fā)明的另一實施例中,互連的兩芯片能互為主端/從端芯片,以調整判讀信號的參考值。主端芯片能以其較佳的驅動強度發(fā)出測試信號,而從端芯片就能依序以不同的參考值判讀測試信號,藉以實測出哪一個參考值能用來正確地判讀對方(主端芯片)發(fā)送來的信號。
在公知技術中,每一芯片都是經(jīng)由芯片設計者硬件內建的預設驅動強度/參考值來開始與其他芯片交換數(shù)據(jù)/信號。然而,各芯片運行的環(huán)境(包括電路板的阻抗,溫度,對方芯片的運行狀況等)往往會發(fā)生芯片設計者預料的外的狀況,若各芯片僅能固定地利用其內建的預設驅動強度/參考值來發(fā)射/判讀信號,顯然無法動態(tài)地適應不同的運行環(huán)境。相較之下,本發(fā)明最主要的精神,是在芯片開始協(xié)調運行并交換數(shù)據(jù)/信號之前,先進行實際的測試,了解對方所能接受的驅動強度/參考值。這樣一來,就能確保芯片間能動態(tài)地適應各種運行環(huán)境,在不同運行環(huán)境下都能正確地交換信號/數(shù)據(jù)。
舉例來說,本發(fā)明的精神可運用于筆記型計算機系統(tǒng)中;由于筆記型計算機的空間要求較嚴格,筆記型計算機的系統(tǒng)設計者可能需要以特殊的配置來安放不同的芯片,譬如說,某芯片的信號布線要繞經(jīng)某些裝置,或是于穿越電路板的不同層,才能連接于另一芯片。而且,筆記型計算機常會被使用于不同的環(huán)境,如戶外較高或較低的溫度。由于上述種種因素,筆記型計算機中的各個芯片常需運行于于芯片設計者較難預期的運行環(huán)境。而在筆記型計算機系統(tǒng)中運用本發(fā)明的技術時,就能在筆記型計算機系統(tǒng)開機之初進行芯片間的實際測試,確保筆記型計算機系統(tǒng)中的各個芯片能正確地互相交換信號/數(shù)據(jù),順利地實現(xiàn)筆記型計算機系統(tǒng)所應具備的整體功能。
圖1為本發(fā)明一實施例的流程示意圖。
圖2為本發(fā)明一電子系統(tǒng)的功能方塊示意圖。
圖3為圖2中電子系統(tǒng)在實施圖1流程時相關信號的時序示意圖。
圖4為本發(fā)明另一實施例的流程示意圖。
圖5為本發(fā)明另一電子系統(tǒng)的功能方塊示意圖。
圖6為圖5中電子系統(tǒng)在實施圖4流程時相關信號的時序示意圖。
圖7為本發(fā)明實現(xiàn)于另一電子系統(tǒng)的功能方塊示意圖。
主要元件符號說明10、30、60電子系統(tǒng)12A-12B、32A-32B、62A-62C芯片14A-14B、34A-34B、64A-64C核心電路16A-16B、36A-36B、66A-66C、72A接口電路18A-18B、38A-38B 驅動電路20A-20B、42A-42B 測試電路22A-22B、46A-46B 比較電路24A-24B、48A-48B 發(fā)射電路26A-26B、50A-50B 接收電路40A-40B參考值電路68A-68C、74C 接口相關電路70A-70C、76A 測試相關電路100、200流程VrA(.)-VrB(.)參考值102、104A-104B、106-116、118-120、104A’-104B’、106’-116’、202、204A-204B、206-212、214-216、204A’-204B’、206’-212’步驟A+/A-、B+/B-、As/Bs信號IpA(.)-IpB(.)、InA(.)-InB(.) 驅動強度VpA(.)-VpB(.)、VnA(.)-VnB(.) 電平t0-t18時點具體實施方式
請參考圖1;圖1的流程100即為本發(fā)明校準技術的一個實施例。在同一電子系統(tǒng)中互連的兩芯片A、B可利用流程100來實測彼此所能接受的信號驅動強度,進而確保各芯片相互發(fā)出的信號能被對方所正確判讀。以下就進一步說明流程100中的各個步驟步驟102開始。流程100可在各芯片得到充足供電后開始實施。舉例來說,若流程100是實施于一計算機系統(tǒng)中的各個芯片間,則當計算機系統(tǒng)得到供電后,就能進行該流程100。完成流程100后,就能確保各芯片能正確交換數(shù)據(jù),然后就能載入計算機系統(tǒng)的基本輸出入系統(tǒng),繼續(xù)完成開機程序。
步驟104A-104B在對互連的兩芯片A、B實施流程100時,可先以其中的芯片A作為測試的主端(master)芯片,而另一芯片B則為從端(slave)芯片。
步驟106主端芯片利用選定的一種驅動強度向從端芯片發(fā)出一個測試信號。該測試信號的內容為一測試數(shù)值。舉例來說,假設主端芯片能選用M種強弱不同的正驅動強度發(fā)送信號而使從端芯片對應的信號接收端的電功率電平升高,那么在該步驟,主端芯片就可先以M種正驅動強度的其中一種來嘗試向從端芯片發(fā)出一個代表數(shù)值“1”的測試信號;數(shù)值“1”也就是該測試信號的測試數(shù)值。
步驟108從端芯片接收主端芯片發(fā)送來的測試信號,并判讀該測試信號的數(shù)值內容。就如前面討論過的,由于芯片運行環(huán)境的總總因素,主端芯片驅動的信號在傳輸至從端芯片后可能已經(jīng)無法正確地被從端芯片判讀。舉例來說,主端芯片以某一正驅動強度嘗試發(fā)出一數(shù)值“1”的測試信號,但該正驅動強度傳輸至從端芯片后卻無法使對應信號接收端的電功率電平充分升高,此時從端芯片就會將該測試信號的內容判讀為數(shù)值“0”。另一方面,若主端芯片測試信號的正驅動強度夠強,在被從端芯片接收后就能使其信號接收端的電功率電平充分的升高,也就能被從端芯片判讀為數(shù)值“1”。
步驟110從端芯片將步驟108中判讀所得數(shù)值以一響應信號回傳至主端芯片。在該步驟中,從端芯片可用從端芯片最強的驅動強度來向主端芯片發(fā)出該一響應信號,使主端芯片能正確地接收到從端芯片回傳的判讀數(shù)值。舉例來說,假設從端芯片可選用K種不同的正驅動強度而使主端芯片信號接收端的電功率電平升高,在進行該步驟110時,從端芯片就可選用其中最強的正驅動強度(也就是能使對方電功率電平升至最高的驅動強度)來發(fā)送數(shù)值“1”的響應信號。同理,若從端芯片能以K種負驅動強度來將主端芯片信號接收端的電平拉低,從端芯片就可選用其中最強的負驅動強度(也就是能將對方電功率電平拉至最低的驅動強度)來發(fā)送數(shù)值“0”的響應信號。
步驟112主端芯片接收從端芯片回傳的響應信號后,就能得知從端芯片對測試信號的判讀數(shù)值。而主端芯片就能將從端芯片的判讀數(shù)值和原先測試信號的測試數(shù)值相比較,檢查兩者是否相符。若兩者不符,就代表原先在步驟106用來發(fā)出測試信號的驅動強度不足以發(fā)出能被正確判讀的信號,而當主端芯片、從端芯片結束流程100的實測而要開始正式交換信號時,主端芯片就能避免用該無效的驅動強度來發(fā)出信號。舉例來說,若主端芯片用某一正驅動強度來升高從端芯片信號接收端的電功率電平以嘗試發(fā)出數(shù)值“1”的測試信號,但從端芯片卻只能將其判讀為數(shù)值“0”,這就代表該驅動強度不足以克服主端芯片的運行環(huán)境,而主端芯片就可將該驅動強度記錄為一無效的驅動強度,不應用來發(fā)出信號。同理,若主端芯片利用某一負驅動強度來拉低從端芯片信號接收端的電功率電平而嘗試發(fā)出數(shù)值“0”的測試信號,而從端芯片卻將其判讀為數(shù)值“1”,主端芯片在后續(xù)運行時就可避免使用該一驅動強度來向從端芯片發(fā)出信號。
相對地,若從端芯片回傳的判讀數(shù)值和原先測試信號的數(shù)值相同,就代表原先用來發(fā)出測試信號的驅動強度應有較佳而充分的強度。而主端芯片就可該驅動強度為記錄一可用的驅動強度。
換句話說,在進行本步驟時,主端芯片可比較原先測試信號的數(shù)值是否與從端芯片判讀的數(shù)值相符,藉此來評估先前用來發(fā)出測試信號的驅動強度是否為一有效的驅動強度,是否能用來發(fā)出能被對方正確解讀的信號。而主端芯片可記錄下對各驅動強度的評估結果,以便在流程100結束后決定要用哪些驅動強度來實際發(fā)送信號。
步驟114進行步驟106、108、110及112可針對某一驅動強度評估其是否能有效發(fā)出信號。若要測試其他的驅動強度,主端芯片可由此步驟進行至步驟116。若主端芯片已經(jīng)測試完各種正負驅動強度,或是不需再進行測試,就能直接進行至步驟118。
步驟116主端芯片選定另一驅動強度,針對該一驅動強度重復進行步驟106、108、110及112以評估該驅動強度是否有效。主端芯片也可以選用同一種驅動強度重復進行步驟106、108、110及112,以再度確認評估結果。
步驟118芯片A與芯片B交換主端芯片與從端芯片的角色。在步驟104A、104B中,芯片A作為主端芯片,芯片B則為從端芯片,而作為主端芯片的芯片A就能經(jīng)由芯片B的配合來評估芯片A中的各種驅動強度是否有效。在步驟118中,芯片A與芯片B能以預設的信號交換協(xié)定(protocol)來相互聯(lián)系,讓芯片A、B能交換主端/從端的關系,改由芯片B來評估其驅動強度是否有效。
步驟104A’、104B’進行步驟118之后,芯片B成為主端芯片,而芯片A則是配合測試的從端芯片。
步驟106’、108’、110’、112’、114’、116’各步驟分別和步驟106、108、110、112、114、116相同,主端芯片(現(xiàn)在是芯片B)能比較從端芯片回傳的判讀數(shù)值與原先測試信號的數(shù)值內容,并藉此來評估原先用來發(fā)出測試信號的驅動強度是否有效,是否能有效發(fā)出能被從端芯片正確解讀的信號。
步驟120結束流程100。當芯片A、芯片B都分別以實測來評估其驅動強度是否有效之后,就可結束流程100。接下來,芯片A、B就能根據(jù)對各驅動強度的評估結果來選擇正式運行時數(shù)據(jù)交換時所應使用的驅動強度。舉例來說,若流程100實施于一計算機系統(tǒng)的各個芯片中,當計算機系統(tǒng)電源打開后,每兩個相連的芯片間就可互相合作進行流程100,讓每一個芯片評估其驅動強度。結束流程100后,每一芯片就能以有效的驅動強度來相互交換數(shù)據(jù)/信號,正確地互相協(xié)調以開始正式運行;然后就能載入/執(zhí)行計算機系統(tǒng)的基本輸出入系統(tǒng)(BIOS),以完成開機程序,讓使用者能使用計算機系統(tǒng)。
為進一步說明流程100的實施情形,請參考圖2及圖3(并一并參考圖1)。圖2為一電子系統(tǒng)10的功能方塊示意圖,圖3即為圖2中電子系統(tǒng)10在實施流程100時各相關信號的時序示意圖;圖3的橫軸為時間,各信號的縱軸代表信號的電功率(電壓或電流)電平大小。首先,如圖2所示,電子系統(tǒng)10中有兩互連芯片12A、12B,在實施流程100時,該兩芯片12A、12B就可分別作為芯片A、芯片B。各芯片12A、12B的宏觀結構基本上是相同的,以芯片12A為例,芯片12A具有一核心電路14A、一接口電路16A及一驅動電路18A;其中,核心電路14A用來主控/實現(xiàn)芯片12A的功能,如實現(xiàn)邏輯運算處理的功能。接口電路16A則是核心電路12A對外收發(fā)信號的接口。接口電路16A中可設有多個發(fā)射電路24A(圖2中以差動放大電路作為發(fā)射電路的一種例子)及接收電路26A(圖2中以差動檢測電路來作為接收電路的一種例子)。核心電路12A要向外發(fā)送的信號會經(jīng)由各發(fā)射電路24A驅動發(fā)出,其他芯片要傳輸至核心電路12A的信號則會由接收電路26A予以檢測/判讀,轉換為核心電路12A可接收的電子信號。而各發(fā)射電路24A驅動信號發(fā)射的正負驅動強度IpA、InA即由驅動電路18A來控制;其中,正驅動強度IpA是使對方(另一芯片的信號接收端)信號電功率電平升高的驅動強度,負驅動強度InA則是將對方信號電功率電平拉低的驅動強度。
為了實現(xiàn)本發(fā)明的技術,芯片12A中還設有一測試電路20A及一比較電路22A;測試電路20A用來主控流程100的進行(如設定測試信號的測試數(shù)值,選用驅動強度,在適當時機以對應信號交換進行步驟118以交換主從關系等),而當芯片12A作為主端芯片時,比較電路22A則可比較測試信號與從端芯片回傳的判讀數(shù)值,使測試電路20A能評估各驅動強度是否有效。
類似于芯片12A的結構,芯片12B中亦設有核心電路14B、接口電路16B及驅動電路18B;接口電路16B中設有各接收電路26B以對應于另一芯片中的發(fā)射電路24A,亦設有各發(fā)射電路24B以對應于另一芯片中的接收電路26A,驅動電路18B則控制各發(fā)射電路24B的正負驅動強度IpB、InB。配合流程100的實現(xiàn),芯片12B中亦設有測試電路20B及比較電路22B。
當要在芯片12A、12B間實現(xiàn)本發(fā)明的流程100時,芯片12A、12B可在兩者連線間選出一對信號傳輸路徑,一個信號傳輸路徑用來向另一芯片發(fā)出信號,另一信號傳輸路徑用來接收另一芯片的信號。在圖2中,由芯片12A至芯片12B的信號對A+/A-即可形成其中一個信號傳輸路徑,由芯片12B至芯片12A的信號對B+/B-則形成另一信號傳輸路徑。在圖2的實施例中,由于各發(fā)射電路/接收電路是差動放大電路/檢測電路,故每一信號傳輸路徑上有一對信號對。
圖3所示意的就是芯片12A、12B(分別為芯片A、芯片B)在實現(xiàn)本發(fā)明流程100時,各信號傳輸路徑上信號變化的時序圖;圖面上方顯示的是信號對A+/A-(A-以虛線標示),下方顯示的則是信號對B+/B-(B-以虛線標示)。芯片12A的發(fā)射電路可選擇性地以電子驅動強度IpA(1)、IpA(2)、...IpA(M)等M種正驅動強度來向芯片12B驅動發(fā)出信號A+/A-;這些正驅動強度在實際傳輸至芯片12B后,能分別將對應信號接收端的電功率電平升高至VpB(1)至VpB(M),也就是使芯片12B接收到電平為VpB(1)至VpB(M)的信號A+(信號A-則為信號A+的反向)。值得注意的是,這些電平VpB(.)都會受芯片運行環(huán)境的影響,并非芯片12A、12B所能主動控制的,只能以本發(fā)明的技術來實測這些電平對信號判讀的影響。另外,芯片12A的發(fā)射電路也可選擇性地以驅動強度InA(1)、InA(2)、...InA(M)這些負驅動強度來向芯片12B發(fā)出信號A+/A-,以將對應信號接收端的電功率電平拉低至電平VnB(1)、VnB(2)、...VnB(M),也就是讓芯片12B接收到電平為VnB(1)至VnB(M)的信號A+(信號A-則為反相);這些電平VnB(1)至VnB(M)同樣會受芯片運行環(huán)境的影響。
同理,在另一信號傳輸路徑上,芯片12B可利用正驅動強度IpB(1)至IpB(K)來向芯片12A發(fā)出信號B+/B-,使芯片12A接收到電功率電平分別為VpA(1)至VpA(K)的信號B+(信號B-為反相),而芯片12B也可利用負驅動強度InB(1)至InB(K)來驅動信號B+/B-,使芯片12A接收到電功率電平分別為VnA(1)至VnA(K)的信號B+(信號B-則為其反相)。各信號電平VpA(1)至VpA(K)、VnA(1)至VnA(K)也都會受芯片運行環(huán)境的影響。
如圖3所示,在時點t0,芯片12A、12B開始進行流程100,先以芯片12A為主端芯片,以芯片12B為從端芯片;故在時點t0,主端芯片12A先在信號A+/A-中以正驅動強度IpA(1)來嘗試向從端芯片12B發(fā)出一數(shù)字“1”的測試信號(步驟106)。該驅動強度IpA(1)會使從端芯片12B接收到電功率電平VpB(1)的信號A+(及反相的信號A-)。不過,該電平不足以使從端芯片12B將其判讀為數(shù)值“1”,反而將其判讀為數(shù)值“0”。所以,時點t0、t1之間,從端芯片12B就會以最強的負驅動強度InB(K)向主端芯片12A發(fā)出響應信號B+(及B-)以回傳數(shù)值“0”,代表其判讀出的數(shù)值為“0”(也就是步驟108、110)。主端芯片12A由信號B+/B-中接收到從端芯片12B回傳的判讀數(shù)值后,就可得知驅動強度IpA(1)并非有效的正驅動強度,該驅動強度不足以發(fā)出能被正確解讀的信號(步驟112)。接下來,在時點t1,主端芯片12A重新由步驟114、116進行至步驟106,改以另一正驅動強度IpA(2)來驅動信號A+/A-,嘗試發(fā)出數(shù)值“1”的測試信號。該一驅動強度IpA(2)可在從端芯片12B將信號B+的電平驅動至電功率電平VpB(2)。假設該一電平仍不足以被芯片12B判讀為數(shù)值“1”,從端芯片12B就會以其最大的負驅動強度InB(K)來驅動信號B+/B-(步驟108、110),向主端芯片12A回傳數(shù)值“0”。接收到從端芯片12B回傳的數(shù)值“0”,再和原本欲發(fā)出的數(shù)值“1”比較,主端芯片12A就可得知,正驅動強度IpA(2)仍不足以發(fā)出能被正確判讀的信號。
在時點t1-t2間完成對正驅動強度IpA(2)的評估后,主端芯片12A可在時點t2再度改以正驅動強度IpA(3)來發(fā)出數(shù)值“1”的測試信號,并再度根據(jù)從端芯片12B回傳的判讀數(shù)值來評估驅動強度IpA(3)。經(jīng)由流程100中的步驟106、108、110及112,主端芯片12A可逐一以各種正驅動強度IpA(1)、IpA(2)等來嘗試向從端芯片12B發(fā)出數(shù)值“1”的測試信號,以對各個正驅動強度IpA(1)、Ip(A(2)等驅動強度逐一進行評估。到了時點t3,假設主端芯片12A所選用的正驅動強度終于能夠在從端芯片12B處建立起足夠的電功率電平,能使芯片12B將其判讀為數(shù)值“1”,而從端芯片12B就會改以其最大的正驅動強度IpB(K)來驅動信號B+/B-,以向主端芯片12A回傳一數(shù)值“1”的響應信號。而主端芯片12A接收該一響應信號,就可知道原先用來發(fā)出測試信號的驅動強度為一有效的驅動強度,可用來驅動發(fā)出能被正確判讀的信號。
到了時點t7,主端芯片12A逐一評估完所有的正驅動強度IpA(1)至IpA(M)后,就能繼續(xù)評估各個負驅動強度InA(1)至InA(M)。在時點t7,主端芯片12A改以負驅動強度InA(1)來驅動信號A+/A-,嘗試向從端芯片12B發(fā)出數(shù)值“0”的測試信號;該驅動強度會在芯片12B處將信號A+拉低至電平VnB(1);若該電平不夠低,從端芯片12B就會將其判斷為數(shù)值“1”,并以芯片12B的最大正驅動強度IpB(K)來驅動信號B+/B-,將數(shù)值“1”回傳至芯片12A。而芯片12A就能據(jù)此評估出該負驅動強度InA(1)并不能發(fā)出有效的信號。同理,在時點t8,主端芯片12A再以次一驅動強度InA(2)來驅動信號A+/A-;假設該一驅動強度的確能充分驅動信號B+/B-,從端芯片12B就能將其判讀為數(shù)值“0”,并以芯片12B最強的負驅動強度InB(K)來驅動信號B+/B-,以向芯片12A回傳數(shù)值“0”。而主端芯片12A就可獲悉負驅動強度InA(2)可用來發(fā)出有效的信號。
到了時點t11,主端芯片12A已逐一評估完所有負驅動強度InA(1)至InA(M)之后;接下來,流程100就可從步驟114進行至步驟118,以特定的信號交換協(xié)定來提示芯片12B,使芯片12A、12B能協(xié)議交換主從關系。在第2、圖3的實施例中,本發(fā)明利用信號對A+/A-與B+/B-的特性來進行步驟118。首先,主端芯片12A可先使信號A+/A-的發(fā)射電路進行共模運行,用最大的正驅動強度將信號A+/A-均驅動至數(shù)值“1”,將該狀態(tài)維持一定的時間(也就是時段Tx);這種信號型態(tài)就是用來提示從端芯片12B,使從端芯片12B準備要開始進行步驟118。接收信號A+/A-的從端芯片12B在時點t13發(fā)現(xiàn)主端芯片12A將信號A+/A-維持于共模的數(shù)值“1”的時間已經(jīng)屆滿了協(xié)定預設的時段Tx,就可獲悉應該要進行步驟118了。故在時點t13,從端芯片12B也可使信號B+/B-的發(fā)射電路進行共模運行,以芯片12B的最大正驅動強度將信號B+/B-一起驅動至數(shù)值“1”作為響應,代表芯片12B已經(jīng)認可芯片12A的要求,準備進行步驟118。芯片12A由信號B+/B-中接收到芯片12B的響應之后,芯片12A就可用最大負驅動強度將信號A+/A-一并驅動為數(shù)值“0”,代表芯片12A準備成為從端芯片,將可配合芯片12B來測試芯片12B中的各種驅動強度;而芯片12A也會使信號A+/A-的發(fā)射電路回復至差動運行的模式,正式作為流程100中的從端芯片(步驟104A’)。另一方面,由芯片12A接收到信號A+/A-中的共模數(shù)值“0”之后,芯片12B就會使信號B+/B-的發(fā)射電路回復至差動運行的模式,使芯片12B成為主端芯片(步驟104B’)。到了時點t15,主端芯片12B就可進行至步驟106’,以其正驅動強度IpB(1)來驅動信號B+/B-,嘗試向從端芯片12B發(fā)出數(shù)值“1”的測試信號。而從端芯片12A就會判讀測試信號的數(shù)值,并以其最大的正驅動強度IpA(M)或最大的負驅動強度InA(M)來驅動信號A+/A-,向主端芯片12B發(fā)出響應信號,將芯片12A的判讀值回傳至芯片12B,讓主端芯片12B能評估驅動強度IpB(1)是否能發(fā)出有效信號。以此類推,當主端芯片12B逐一評估完所有的正負驅動強度IpB(.)、InB(.)后,流程100也就可以進行至步驟120而結束。
就如流程100中對步驟120的討論,當相連的兩芯片均已完成其驅動強度評估后,各芯片已經(jīng)可由實際測試而獲悉有哪些驅動強度是有效的,而哪些驅動強度是無效的。而當流程100結束、各芯片要正式交換數(shù)據(jù)而協(xié)調運行時,各芯片就可各自在其有效的驅動強度中選出一種驅動強度來向另一芯片發(fā)出信號。舉例來說,延續(xù)圖2、圖3中的例子,假設芯片12A在實測后發(fā)現(xiàn)由弱至強的各正驅動強度IpA(m0)、IpA(m0+1)、IpA(m0+2)至IpA(M)(其中m0為一定值)可以發(fā)出有效的數(shù)值“1”信號,芯片12A在正式發(fā)送信號時,就可選用驅動強度IpA(m0+2)來發(fā)送數(shù)值“1”信號,也就是比最弱的有效驅動強度IpA(m0)更強2級的驅動強度IpA(m0+2)。同理,芯片12A若實測出各負驅動強度InA(m1)、InA(m1+1)、InA(m1+2)至InA(M)均可有效地發(fā)出數(shù)值“0”信號(m1為某一定值),就可選用驅動強度InA(m1+2)來驅動發(fā)出數(shù)值“0”的信號。這樣可較為安全(較有余欲)地確保芯片12A能正確地發(fā)出數(shù)值“1”/“0”的信號。當各芯片結束流程100而能正確地開始互相協(xié)調并正式運行后,各芯片間還能根據(jù)流程100實測評估的結果來改選其他有效的驅動強度。譬如說,當芯片12A、12B要頻繁地交換大量數(shù)據(jù)時,芯片12A可選用更強的正負驅動強度(如IpA(m0+3)/InA(m1+3))來驅動“1”/“0”的信號。值得注意的是,在正式運行時直接使用最強的正負驅動強度雖能確保芯片間不會錯誤判讀彼此的數(shù)據(jù),但這樣也會增加功率消耗,使芯片的溫度升高并增加噪聲(如熱噪聲),并非較佳的驅動強度解決方案。采用本發(fā)明的技術來實測芯片間彼此可接受的驅動強度,才能選出適當且有效(能使信號被對方正確判讀)的驅動強度,在“功率消耗”與“信號/數(shù)據(jù)正確性”之間取得較佳的平衡。
在圖2的電子系統(tǒng)10中,當芯片12A、12B完成流程100而要開始正式交換信號時,各個信號A+/A-與B+/B-就可回歸由各芯片的核心電路控制,讓這些信號傳輸路徑能用來傳輸正式運行的信號;而各芯片的測試電路也可以停止運行。換句話說,當以芯片12A、12B來實現(xiàn)流程100時,芯片12A、12B可以先借用正式運行時的信號傳輸路徑來交換測試所需的測試信號/響應信號,并進行主從交換協(xié)定所需的信號聯(lián)系;等流程100結束后,這些信號傳輸路徑就可回歸原來的正常用途,在正式運行時用來進行數(shù)據(jù)交換。另外,在圖2、圖3的實施例中,評估驅動強度時的測試信號/響應信號與交換主從關系時的信號交換協(xié)定(步驟118)都是在相同的信號傳輸路徑上實現(xiàn)在信號A+/A-、B+/B-上以差動運行模式來實現(xiàn)測試信號/響應信號的交換,同樣也在信號A+/A-、B+/B-上以共模運行模式的數(shù)據(jù)交換協(xié)定來觸發(fā)主從關系的交換。當然,本發(fā)明也可用不同的信號傳輸路徑來分別實現(xiàn)測試信號/響應信號與主從關系交換的信號交換協(xié)定。譬如說,本發(fā)明可在圖2的芯片12A、12B上另選出兩條信號傳輸路徑C+/C-與D+/D-(未示于圖2),專門用來實現(xiàn)主從關系交換時所需的信號交換協(xié)定;而原本的信號傳輸路徑A+/A-與B+/B-就只用來交換測試信號/響應信號。在這種實施例中,當芯片12A、12B要進行主從交換時,就可利用信號傳輸路徑C+/C-與D+/D-來相互通知/確認,讓主從關系得以交換。
當一電子系統(tǒng)的兩相連芯片交換數(shù)據(jù)/信號時,接收數(shù)據(jù)的芯片可以將接收到信號電平與一參考值相比較,以判讀出該信號的內容/數(shù)值。舉例來說,像在數(shù)字電子系統(tǒng)中,各芯片就可在接收信號后根據(jù)信號電平是否大于參考值,以判讀該信號的內容為數(shù)值“1”或數(shù)值“0”。改變參考值的電平,自然也會影響對信號的判讀結果。而本發(fā)明也可實施于這種電子系統(tǒng),讓電子系統(tǒng)中的各芯片能夠評估參考值,讓各芯片能經(jīng)由實測來了解何種參考值才能用來正確判讀對方傳來的數(shù)據(jù)。請參考圖4;圖4示意的即為本發(fā)明校準技術另一實施例的流程200,流程200可實施于一電子系統(tǒng)的芯片A、芯片B,使芯片A、B能夠以實測來評估各自的判讀參考值。流程200中有以下步驟步驟202開始流程200。類似于流程100(圖1),本發(fā)明可在芯片得到供電后、芯片間開始正式運行之前來進行流程200。
步驟204A、204B先以芯片A為主端芯片,芯片B為從端芯片。
步驟206主端芯片以其較佳的驅動強度向從端芯片發(fā)出一測試信號。主端芯片可以選用多種驅動強度來發(fā)出信號,但在考慮功率消耗與驅動強度強弱等因素后,應該有一種驅動強度是較佳的驅動強度,而該較佳驅動強度不必然是最強驅動強度。而主端芯片就可利用該較佳驅動強度來向從端芯片發(fā)出一測試信號。在實施該步驟時,主端芯片可先用其最強的驅動強度發(fā)出一標準信號,將測試信號正確的數(shù)值內容通知從端芯片,接下來再用較佳的驅動強度來發(fā)出測試信號。
步驟208從端芯片接收到測試信號,并根據(jù)一選定的參考值加以判讀。舉例來說,若測試信號的電功率電平大于該參考值,就可將測試信號的數(shù)值判讀為數(shù)值“1”;若小于參考值,就不將其判讀為數(shù)值“1”。從端芯片在判讀后可將判讀數(shù)值與標準信號中的正確數(shù)值相比較,進而評估該參考值是否能用來正確地判讀測試信號。譬如說,在步驟206中,主端芯片可先以標準信號通知從端芯片,要向從端芯片發(fā)出一個數(shù)值“1”的測試信號,然后再以主端芯片的較佳驅動強度來發(fā)出測試信號。從端芯片接收標準信號后得知測試信號的數(shù)值應該是“1”,但若以選定的參考值來實際判讀測試信號時卻將測試信號判讀為“0”,這就代表該參考值并非有效的參考值。相對地,若從端芯片以參考值來判讀測試信號時,其判讀出的數(shù)值與標準信號的數(shù)值相等,就代表該參考值是有效的,可用來正確地判讀對方(主端芯片)以較佳驅動強度發(fā)出的信號。而從端芯片就可將該驅動強度評估為一有效的參考值。
步驟210若從端芯片還要評估另一個參考值(或是要對同一參考值進行另一次評估),就可進行至步驟212;若從端芯片不需再評估參考值,就可進行至步驟214。
步驟212從端芯片重新設定參考值,以重新進行步驟208。
步驟214主端芯片與從端芯片經(jīng)由一定的信號交換協(xié)定來進行主從關系的交換。
步驟204A’、204B’完成步驟214后,芯片A就成為從端芯片,而芯片B就變成主端芯片。
步驟206’、208’、210’、212’分別就和步驟206、208、210、212相同。
步驟216當芯片A、芯片B都各自完成參考值的評估后,就能結束流程200。接下來,芯片A、芯片B就能各自以其較佳的驅動強度發(fā)出信號,而在接收信號時則以有效的參考值予以判讀。這樣,芯片A、B就能正確地交換數(shù)據(jù)/信號并互相協(xié)調,開始正式運行。舉例來說,若在計算機系統(tǒng)中實現(xiàn)本發(fā)明的流程200,當流程200結束后,計算機系統(tǒng)中的各芯片也就能正確地相互協(xié)調,將基本輸出入系統(tǒng)載入/執(zhí)行,完成開機程序。
另外,在上述流程200中,步驟206、208(以及206’、208’)也可以有其他的實施方式。譬如說,主端芯片可用較佳驅動強度來向從端芯片發(fā)出測試信號,從端芯片接收測試信號并以選定的參考值予以判讀,再用從端芯片最強的驅動強度將該判讀數(shù)值回傳至主端芯片。主端芯片接收從端芯片回傳的判讀數(shù)值后,可將該判讀數(shù)值和原先測試信號的數(shù)值相比較,以了解從端芯片是否正確地判讀了原先的測試信號。主端芯片可將比較結果以最強的驅動強度回傳至從端芯片,讓從端芯片得知其判讀是否正確,若判讀正確,從端芯片所選定的參考值就是有效的參考值;若判讀錯誤,從端芯片就可將原先選定的參考值評估為一無效的參考值。重復上述流程,從端芯片就可逐一評估各個參考值,而主端芯片則不需發(fā)出步驟206中的標準信號。
另外,各芯片可能會有多種不同種類的參考值來將盼讀其所接收到的信號。譬如說,某些芯片可能會具有一高位參考值及一低位參考值;接收信號的電平大于高位參考值會被判讀為數(shù)值“1”,電平低于低位參考值的信號才會被判斷為數(shù)值“0”。在對這類型的芯片進行流程200時,就可針對高位參考值先進行步驟206、208、210、212,以便評估出有效的高位參考值。接下來可針對低位參考值再度進行步驟206、208、210、212,評估出有效的低位參考值。
為進一步說明流程200的實施情形,請參考圖5及圖6(并一并參考圖4)。圖5為一電子系統(tǒng)30的功能方塊示意圖,圖6即為圖5中電子系統(tǒng)實施流程200時各相關信號的時序示意圖;圖6的橫軸為時間,各信號的縱軸代表信號的電功率(電壓或電流)電平大小。如圖5所示,電子系統(tǒng)30中設有兩相連芯片32A、32B,可分別視為芯片A與芯片B。類似于圖2中的芯片12A、12B,芯片32A、32B中也分別設有核心電路34A、34B與收發(fā)信號的接口電路36A、36B,接口電路36A中設有多個發(fā)射信號的發(fā)射電路48A及接收/檢測信號的接收電路50A;接口電路36B也對應地設有多個接收電路50B及發(fā)射電路48B。芯片32A中有驅動電路38A來控制各發(fā)射電路48A的正負驅動強度IpA、InA;各接收電路50A判讀信號數(shù)值所依據(jù)的參考值VrA,則由參考值電路40A來控制。同理,在芯片32B中,各發(fā)射電路48B的正負驅動強度IpB、InB由其驅動電路38B控制,而參考值電路40B則控制各接收電路50B的參考值。
為了在電子系統(tǒng)30中實現(xiàn)本發(fā)明,芯片32A、32B中分別設有對應的測試電路42A、42B與比較電路46A、46B。測試電路42A、42B可主導測試流程200的進行,比較電路46A、46B則可比較測試信號的數(shù)值是否和判讀值相同,使測試電路42A、42B可根據(jù)比較結果來評估一特定的參考值是否有效。在芯片32A、32B之間選出兩條信號傳輸路徑來分別傳輸信號As、Bs,就可在該兩芯片間實現(xiàn)本發(fā)明的流程200。
類似于圖3的情形,如圖6所示,芯片32A可選擇性地以正負驅動強度IpA(1)至IpA(M)、InA(1)至InA(M)來驅動信號As,使芯片32B接收到電功率電平分別為VpB(1)至VpB(M)、VnB(1)至VnB(M)的信號;這些電功率電平都會受芯片運行環(huán)境的影響。接收到信號As后,芯片32B則可選用不同的參考值(也就是參考電平)VrB(1)至VrB(L)來予以判讀。同理,芯片32B可選擇性地以正負驅動強度IpB(1)至IpB(K)、InB(1)至InB(K)來驅動信號Bs,使芯片32A能接收到電功率電平分別為VpA(1)至VpA(K)、VnA(1)至VnA(K)的信號Bs,而芯片32A則可選用參考值VrA(1)至VrA(Q)來判讀信號Bs的值。
在圖6中,流程200可于時點t0開始,而主端芯片(此時為芯片32A)會以其最大正驅動強度IpA(M)來驅動信號As,以向從端芯片(此時為芯片32B)發(fā)出一數(shù)值“1”的標準信號,代表主端芯片32A將要以其較佳驅動強度發(fā)出一個數(shù)值“1”的測試信號。從端芯片32B接收標準信號后,可先記錄其值為數(shù)值“1”,并以其最強正驅動強度IpB(K)來驅動信號Bs,以發(fā)出一數(shù)值“1”作為響應,代表從端芯片32B已經(jīng)收到標準信號。然后,從端芯片32B可在時點t1以最強負驅動強度InB(K)將信號Bs驅動至數(shù)值“0”,代表從端芯片32B已經(jīng)準備好要接收測試信號。而當主端芯片32A發(fā)現(xiàn)信號Bs已經(jīng)被驅動到數(shù)值“0”,主端芯片32A就可改以其較佳驅動強度(假設其為IpA(m0),m0為一定值)向從端芯片32B發(fā)出數(shù)值“1”的測試信號(也就是在時點t1開始進行步驟206)。從端芯片32B接收到電平VpB(m0)的測試信號As后,就能先以參考值VrB(1)來判讀其數(shù)值(也就是在時點t1、t2之間進行流程200的步驟208)。假設該參考值VrB(1)的確小于電平VpB(m0)而使芯片32B能將測試信號判讀為“1”,芯片32B就能將該參考值VrB(1)評估為一有效的參考值。同理,在時點t2-t3間,從端芯片32B可選用另一參考值VrB(2)來評估該參考值是否有效(也就是由步驟212重新進行步驟208),以此類推。像在時點t3-t4之間,從端芯片32B改用參考值VrB(3)來判讀信號As,但由于該參考值過高,從端芯片32B會將信號As判讀為數(shù)值“0”,與原先測試信號的數(shù)值“1”不相符,從端芯片32B就可以將該參考值VrB(3)評估為一無效的參考值。
到了時點t6,從端芯片32B評估完其所有的參考值VrB(1)至VrB(L),就可進行步驟214,使芯片32A、32B交換主從關系。芯片32B可先以最強負驅動強度InB(K)驅動信號Bs,向芯片32A發(fā)出數(shù)值“1”的信號,代表芯片32B已經(jīng)完成其參考值評估。芯片32A接收到信號Bs中的數(shù)值“1”,就可先以最強負驅動強度InA(M)而在信號As發(fā)出數(shù)值“0”,代表芯片32A已經(jīng)同意轉換主從關系。在時點t7,芯片32A可再度以最強正驅動強度IpA(M)驅動信號As,向芯片32B發(fā)出數(shù)值“1”的信號,代表芯片32A已經(jīng)認可主從關系的交換,芯片32B/32A分別成為主端/從端芯片,且從端芯片32A已經(jīng)準備好由主端芯片32B處接收標準信號及測試信號。而主端芯片32B就可在時點t7之后先以最強驅動強度IpB(K)而在信號Bs中發(fā)出數(shù)值“1”的標準信號。從端芯片32A接收數(shù)值“1”的標準信號,可得知主端芯片32B將要發(fā)出的是數(shù)值“1”的測試信號。而在時點t8,從端芯片32A就可將信號As驅動至數(shù)值“0”,要求主端芯片32B開始提供測試信號。從信號As中接收到數(shù)值“0”,主端芯片32B就能在時點t8之后開始以其較佳的驅動強度(假設為IpB(k0),k0為一定值)驅動信號Bs,也就是向從端芯片32A發(fā)出測試信號。而從端芯片32A就能根據(jù)該測試信號逐一評估其判讀所根據(jù)的各個參考值VrA(1)至VrA(Q)。等芯片32B、32A都分別評估完各自的參考值后,就可結束流程200。類似于圖1至圖3所討論的實施例,在第4至圖6的實施例中,在流程200結束而芯片32A、32B要正式運行時,信號傳輸路徑As、Bs不必再用來傳輸測試信號,也可以回歸原來的用途,用來作為正式運行時交換數(shù)據(jù)的路徑。
在較為復雜的電子系統(tǒng)(如計算機系統(tǒng))中,同一芯片可能會以多個接口電路而分別與多個其他芯片相連接;在這種電子系統(tǒng)中,本發(fā)明的技術可一一實現(xiàn)于成對的芯片接口之間。關于該情形,請參考圖7;圖7為本發(fā)明技術實現(xiàn)于另一電子系統(tǒng)60的示意圖。電子系統(tǒng)60中有多個芯片62A、62B及62C;各個芯片分別具有各自的核心電路64A至64C。由于芯片62A同時連接于芯片62B及62C,故芯片62A中有兩個接口電路66A及72A;接口電路66A對應于芯片62B的接口電路66B,以使芯片62A、62B能交換數(shù)據(jù)/信號。而接口電路72A則對應于芯片62C的接口電路66C,使芯片62A、62C能互相交換數(shù)據(jù)/信號。而各個接口電路66A至66C、72A則分別有對應的接口相關電路68A至68C、74A,這些接口相關電路中可包括有驅動電路或/與參考值電路,以使對應的接口電路能驅動發(fā)出信號,或根據(jù)參考值來判讀接收到的信號。為了在該電子系統(tǒng)中實現(xiàn)本發(fā)明,每個接口電路66A-66C/72A可分別設有對應的測試相關電路(包括比較電路與測試電路)70A-70C/76A。而這些測試相關電路就可在對應接口電路間主導流程100(圖1)或200(圖4)的實現(xiàn)。測試相關電路70A/70B可在接口電路66A/66B之間獨立地實施流程100/200;同理,測試相關電路76A/70C則能在接口電路72A/66C之間獨立地實施流程100/200。
事實上,不論是圖2、圖5或圖7中的電子系統(tǒng),各芯片中的測試相關電路,包括測試電路與比較電路,都可和對應的核心電路綜合在一起。換句話說,各芯片中的測試電路/比較電路可以直接利用核心電路的邏輯功能來實現(xiàn),進而實現(xiàn)本發(fā)明的技術。
總結來說,本發(fā)明最主要的精神之一,是利用芯片間的實測來明確地評估能有效收發(fā)信號的驅動相關參數(shù),也就是驅動強度及/或參考值(參考電平),以確實地排除芯片運行環(huán)境的不理想因素。在公知技術中,當一電子系統(tǒng)中的各個芯片開始正式運行時,各個芯片是以芯片硬件預設/內建的固定驅動強度/參考值來進行數(shù)據(jù)交換,無法實際地依據(jù)芯片運行環(huán)境來加以調整,容易導致芯片間無法正確交換數(shù)據(jù),使整個電子系統(tǒng)無法正常運行。相較之下,本發(fā)明則是在芯片開始正式運行前先在芯片間進行實際測試/評估與校準,使得各芯片能得知在其運行環(huán)境下有哪些驅動強度/參考值是有效的;等到芯片開始正式運行后,就能確保各芯片能正常地交換數(shù)據(jù),互相協(xié)調運行,并成功地實現(xiàn)電子系統(tǒng)的整體功能。本發(fā)明特別適用于各種便攜式電子系統(tǒng),如筆記型計算機系統(tǒng)或甚至是手機等電子系統(tǒng),因為這些電子系統(tǒng)比較常運行在極端的環(huán)境(溫度較高或較低),其致密(compact)的體積容易形成芯片運行環(huán)境的限制(譬如說芯片間信號布線要遷就其他硬件安排而較難最佳化),又有功率消耗的限制。而本發(fā)明的芯片間實測技術能動態(tài)地適應芯片運行的環(huán)境,又能在“判讀正確性”與“功率消耗”間做較佳的平衡,故已優(yōu)于公知的技術。
以上所述僅為本發(fā)明的優(yōu)選實施例,凡依本發(fā)明權利要求所進行的等效變化與修改,皆應屬本發(fā)明的涵蓋范圍。
權利要求
1.一種校準方法,用來調整一第一芯片與一第二芯片在信號交換時的相關參數(shù);該方法包含有使該第一芯片以一第一驅動強度發(fā)出一測試信號以代表一測試數(shù)值;使該第二芯片接收該測試信號,并使該第二芯片判讀該測試信號所代表的數(shù)值;以及進行一比較步驟,以比較該第二芯片對該測試信號判讀所得到的數(shù)值是否與該測試數(shù)值相符。
2.如權利要求1所述的方法,其中該比較步驟包含有在該第二芯片判讀該測試信號所代表的數(shù)值后,使該第二芯片發(fā)出一響應信號以代表該第二芯片判讀該測試信號所得到的數(shù)值;以及使該第一芯片接收該響應信號并判讀該響應信號代表的數(shù)值,以比較該響應信號代表的數(shù)值是否和該測試數(shù)值相符。
3.如權利要求1所述的方法,其還包含有在進行該比較步驟后,若該第二芯片對該測試信號判讀所得的數(shù)值與該測試數(shù)值不符,則使該第一芯片改以一第二驅動強度向該第二芯片發(fā)出一第二測試信號以代表該測試數(shù)值,其中該第二驅動強度相異于該第一驅動強度。
4.如權利要求3所述的方法,其還包含有在使該第一芯片發(fā)出該第二測試信號后,使該第二芯片判讀該第二測試信號所代表的數(shù)值,并重復該比較步驟以比較該測試數(shù)值是否符合于該第二芯片由該第二測試信號判讀所得的數(shù)值。
5.如權利要求1所述的方法,其還包含有由該第二芯片以一第三驅動強度發(fā)出一第三測試信號以代表一第三測試數(shù)值;使該第一芯片接收該第三測試信號,并使該第一芯片判讀該第三測試信號所代表的數(shù)值;以及進行另一比較步驟,以比較該第三測試數(shù)值是否與該第一芯片對該第三測試信號判讀所得到數(shù)值相符。
6.如權利要求1所述的方法,其中該第二芯片在接收該測試信號根據(jù)接收測試信號的電功率大小是否大于一參考值而判讀該測試信號代表的數(shù)值,而該方法還包含有在進行該比較步驟后,若該第二芯片判讀該測試信號所得的數(shù)值與該測試數(shù)值不符,則使該第二芯片改以另一參考值來判讀該測試信號的數(shù)值。
7.一種校準方法,用來調整一第一芯片與一第二芯片在信號交換時的驅動強度;該方法包含有使該第一芯片以一驅動強度發(fā)出一對應的測試信號以代表一測試數(shù)值;在該第二芯片接收該測試信號后使該第二芯片對該測試信號進行判讀,以根據(jù)接收測試信號的電功率大小是否大于一參考值而判讀該測試信號代表的數(shù)值;進行一比較步驟,以比較該第二芯片對該測試信號判讀所得的數(shù)值是否與該測試數(shù)值相符。
8.如權利要求7所述的方法,其還包含有重復使該第二芯片根據(jù)不同的參考值而對該測試信號加以判讀。
9.一種電子系統(tǒng),其包含有一第一芯片,該第一芯片包含有一第一測試電路,其可提供一測試信號以代表一預設的測試數(shù)值;一驅動電路,其可提供一第一驅動強度;以及一第一接口電路,其可根據(jù)該驅動電路提供的第一驅動強度發(fā)出該測試信號;以及一第二芯片,該第二芯片包含有一第二接口電路,其可接收該第一芯片發(fā)出的測試信號并判讀該測試信號所代表的數(shù)值;而該電子系統(tǒng)還包含有一比較電路,其可比較該測試數(shù)值是否與該第二接口電路對該測試信號判讀所得的數(shù)值相符。
10.如權利要求9所述的電子系統(tǒng),其中該第二芯片還包含有一第二測試電路,其可提供一響應信號以代表該第二接口電路對該測試信號判讀所得的數(shù)值,該第二接口電路可將該響應信號發(fā)送至該第一芯片;而該比較電路設于該第一芯片中;該比較電路比較該測試數(shù)值是否與該響應信號所代表的數(shù)值相符,以比較該測試數(shù)值是否與該第二接口電路對該測試信號判讀所得的數(shù)值相符。
11.如權利要求9所述的電子系統(tǒng),其中,若該比較電路發(fā)現(xiàn)該響應信號所代表的數(shù)值與該測試數(shù)值不符,則該驅動電路可提供一第二驅動強度,而該第一接口電路可根據(jù)該第二驅動強度發(fā)出一第二測試信號以代表該測試數(shù)值。
12.如權利要求9所述的電子系統(tǒng),其中,該驅動電路可提供多種不同的驅動強度,使該第一接口電路可根據(jù)每一驅動強度而提供一對應的測試信號以代表該測試數(shù)值。
全文摘要
本發(fā)明提供一種校準芯片間信號驅動參數(shù)的方法與相關裝置。當同一電子系統(tǒng)中的一芯片A與另一芯片B開始正式交換數(shù)據(jù)前,本發(fā)明的一實施例使芯片A以不同的信號驅動強度發(fā)出多個代表同一邏輯數(shù)值的測試信號,由芯片B判讀這些測試信號的數(shù)值后,再將判讀值回傳至芯片A,讓芯片A可比較判讀值與原先測試信號所代表的數(shù)值,以評估何種信號驅動強度所發(fā)出的信號能被芯片B正確判讀。同理,芯片B亦可以不同的驅動強度發(fā)出測試信號并根據(jù)芯片A回傳的判讀值來評估出哪些驅動強度發(fā)出的信號能被芯片A正確判讀。
文檔編號G06F13/00GK1687906SQ20051007045
公開日2005年10月26日 申請日期2005年5月9日 優(yōu)先權日2005年5月9日
發(fā)明者郭宏益, 陳慧美 申請人:威盛電子股份有限公司