摘要:后文全用表示,同樣適用于的發(fā)送器和接收器可以獨(dú)立的同步進(jìn)行初始化。使用的任何都是多帶帶的進(jìn)行復(fù)位,復(fù)位操作與復(fù)位完全獨(dú)立。復(fù)位序列要求的時(shí)間是決定了的。在復(fù)位過(guò)程中,必須保持為低。
所有IP核沒(méi)有正確工作,原因一半是時(shí)鐘,一半是復(fù)位。
匯總篇:
Xilinx FPGA平臺(tái)GTX簡(jiǎn)易使用教程(匯總篇)
目錄
5.1 GTX TX復(fù)位和初始化的端口信號(hào)
5.2 GTX TX復(fù)位對(duì)配置完成的響應(yīng)
5.3 GTX?TX復(fù)位對(duì)GTTXRESET脈沖的響應(yīng)
????????復(fù)位與初始化部分其實(shí)還挺復(fù)雜,還好GTX已經(jīng)幫我們做好了,不想麻煩的直接跳到文末看結(jié)論~~~不過(guò)了解下也挺有意思的~~
????????同時(shí)GTX復(fù)位也挺隨意的,你想怎么復(fù)位都可以,支持整體復(fù)位,單個(gè)組件復(fù)位。我們也可以不復(fù)位,核不會(huì)因?yàn)槲覀儧](méi)有進(jìn)行軟復(fù)位就不對(duì)核進(jìn)行復(fù)位,在上電之后會(huì)自動(dòng)進(jìn)行一系列的復(fù)位,不隨你的意志而轉(zhuǎn)移。下面我們就來(lái)仔細(xì)研究研究GTX的復(fù)位吧!
????????鑒于筆者剛學(xué)習(xí)FPGA半年時(shí)間,對(duì)一些底層內(nèi)容還不是很熟悉,所以本章內(nèi)容基本為UG476關(guān)于復(fù)位和初始化章節(jié)的翻譯。
????????在FPGA上電配置之后,必須進(jìn)行初始化才能使用GTX/GTH。(后文全用GTX表示,同樣適用于GTH)GTX的發(fā)送器(TX)和接收器(RX)可以獨(dú)立的同步進(jìn)行初始化。
GTX的TX和RX初始化包含兩步:
????????GTX的TX和RX能從QPLL或者CPLL接收一個(gè)時(shí)鐘。所以在TX/RX初始化之前必須對(duì)相關(guān)的PLL(QPLL/CPLL)進(jìn)行初始化。TX/RX使用的任何PLL都是多帶帶的進(jìn)行復(fù)位,PLL復(fù)位操作與TX/RX復(fù)位完全獨(dú)立。TX/RX的數(shù)據(jù)路徑復(fù)位必須在相關(guān)的PLL復(fù)位完成,locked之后進(jìn)行。(就跟我們使用PLL ?IP核一樣,等locked拉高之后,時(shí)鐘穩(wěn)定才能使用)
?看圖說(shuō)話:TX/RX是獨(dú)立的并行的進(jìn)行復(fù)位操作。
????????GTX的TX和RX使用一個(gè)狀態(tài)機(jī)來(lái)控制初始化過(guò)程,并被劃分為幾塊來(lái)分別復(fù)位。該劃分允許復(fù)位狀態(tài)機(jī)按順序控制復(fù)位過(guò)程:PMA可以首先被復(fù)位,PCS可以在TXUSERRDY或者 RXUSERRDY信號(hào)被斷言后進(jìn)行復(fù)位。在需要的時(shí)候,它也同樣允許PMS,PCS,他們內(nèi)部的功能模塊獨(dú)立的進(jìn)行復(fù)位。
????????GTX提供了兩種復(fù)位類(lèi)型: initialization 和 component。
? Initialization Reset:?初始化復(fù)位。這種復(fù)位用作GTX完全復(fù)位。必須在設(shè)備上電及配置完成之后。在必要的時(shí)候,TX端口和RX端口的復(fù)位(GTTXRESET 和 GTRXRESET)同樣可被用來(lái)重新初始化GTX的TX和RX。 ?
? Component Reset:?模塊復(fù)位。對(duì)TX / RX 多帶帶部分進(jìn)行復(fù)位。 TX模塊復(fù)位端口包括TXPMARESET 和TXPCSRESET 。RX 模塊復(fù)位端口包含RXPMARESET,RXDFELPMRESET,EYESCANRESET, RXPCSRESET, RXBUFRESET和 RXOOBRESET。(有木有很多很復(fù)雜。。)
注:
兩種復(fù)位類(lèi)型主要有以下不同:
TX部分:
?RX部分:
GTX的初始化復(fù)位 (initialization reset) 只能使用順序復(fù)位模式(Sequential mode )。?
GTX的TX復(fù)位只能使用順序復(fù)位模式(Sequential mode )。
GTX的RX復(fù)位可以使用兩種復(fù)位模式:
Sequential mode :順序復(fù)位。隨復(fù)位狀態(tài)機(jī)(initialization 或 component)順序復(fù)位各個(gè)部分。
Single mode :多帶帶復(fù)位。僅復(fù)位單個(gè)部分(PMA、PCS、內(nèi)部功能塊)。
復(fù)位完成由信號(hào)(TX/RX)RESETDONE表示,由低到高。
復(fù)位模式對(duì)CPLL和QPLL沒(méi)有任何影響。GTX也可以被軟件進(jìn)行彈性復(fù)位設(shè)置,不管是哪種模式。
使用GTRESETSEL來(lái)選擇復(fù)位模式,RESETOVRD必須驅(qū)動(dòng)為低電平。詳細(xì)見(jiàn)下表:
?注:復(fù)位前,GTRESETSEL和RESETOVRD需要300-500ns的有效時(shí)間。
????????在相關(guān)時(shí)鐘邊沿信號(hào)被檢測(cè)到之前,CPLL必須使用CPLLPD端口來(lái)下電。在CPLLPD被釋放后,CPLL在使用之前必須進(jìn)行復(fù)位。每個(gè)GTX通道都有3個(gè)專用端口用來(lái)CPLL復(fù)位。如下圖:
?CPLLRESET :CPLL的復(fù)位輸入。推薦設(shè)計(jì)是一個(gè)時(shí)鐘周期。
CPLLLOCK ?:拉高時(shí),表示CPLL的復(fù)位完成。
內(nèi)部CPLL復(fù)位信號(hào):低有效。但是由GTX內(nèi)部電路產(chǎn)生的真正的CPLL復(fù)位必須比CPLLRESET高脈沖時(shí)間要長(zhǎng)。這個(gè)時(shí)間跟帶寬、時(shí)鐘頻率等有關(guān)。
QPLL復(fù)位大致與CPLL相同。放張圖:
????????開(kāi)門(mén)見(jiàn)山的說(shuō):GTX的TX復(fù)位只能使用順序復(fù)位模式(Sequential mode )。
????????GTX的TX使用一個(gè)復(fù)位狀態(tài)機(jī)來(lái)控制復(fù)位過(guò)程。TX復(fù)位分為兩部分:TX PMA和TX PCS。
????????回憶下(1)GTX基本知識(shí)所介紹的:GTX的TX和RX均有PMA+PCS兩個(gè)子層組成。
?????????在整個(gè)PMA和PCS中,都由這個(gè)復(fù)位狀態(tài)機(jī)按順序執(zhí)行復(fù)位。如下圖:
?????????使用TXPMARESET來(lái)對(duì)TX進(jìn)行復(fù)位,TXRESETDONE拉高表示復(fù)位完成。
? ? ? 直到TXUSERRDY被檢測(cè)為高時(shí),TX復(fù)位狀態(tài)機(jī)才對(duì)PCS進(jìn)行復(fù)位。但是,驅(qū)動(dòng)TXUSERRDY為高需滿足以下條件:
端口 | 方向 | 時(shí)鐘域 | 描述 |
GTTXRESET | 輸入 | 異步 | TX復(fù)位,驅(qū)動(dòng)為高,然后釋放,來(lái)啟動(dòng)整個(gè)TX復(fù)位序列。復(fù)位序列要求的時(shí)間是決定了的。 |
TXPMARESET | 輸入 | 異步 | TX PMA復(fù)位。驅(qū)動(dòng)為高,然后釋放,來(lái)啟動(dòng)TX PMA復(fù)位過(guò)程。在順序復(fù)位模式時(shí),這個(gè)復(fù)位端口將激活PMA和PCS都復(fù)位。 |
TXPCSRESET | 輸入 | 異步 | TX PCS復(fù)位。驅(qū)動(dòng)為高,然后釋放,來(lái)啟動(dòng)TX PCS復(fù)位過(guò)程。在順序復(fù)位模式時(shí),這個(gè)復(fù)位端口將激活PMA和PCS都復(fù)位。 |
TXUSERRDY | 輸入 | 異步 | 在TXUSRCLK和TXUSRCLK2時(shí)鐘穩(wěn)定后,用戶應(yīng)用將該端口驅(qū)動(dòng)為高。例如:使用了MMCM,那么MMCM的locked信號(hào)就可以用到這里。 |
TXRESETDONE | 輸出 | TXUSRCLK2 | 拉高表示復(fù)位完成。 |
CFGRESET | 輸入 | 異步 | 保留。 |
TXPMARESETDONE | 輸出 | 異步 | 拉高表示TX-PMA復(fù)位完成。 |
PCSRSVDOUT | 輸出 | 異步 | 保留。 |
TX復(fù)位必須滿足下列條件:
1. ?使用順序復(fù)位模式,GTRESETSEL必須為低。.
2. ?GTTXRESET必須使用。
3. ?在復(fù)位完成前(TXRESETDONE拉高),TXPMARESET和TXPCSRESET 必須驅(qū)動(dòng)為低不變。
4. ?在PLL locked之前,GTTXRESET不能被驅(qū)動(dòng)為低。
如果加載配置時(shí),復(fù)位模式默認(rèn)為順序復(fù)位模式,在配置加載后等待最少500ns,C/QPLLRESET 和GTTXRESET 就可以被斷言了。
如果復(fù)位模式為single mode,用戶必須:
1. ?在配置加載完成后,等待最少500ns。
2. ?將復(fù)位模式改為順序復(fù)位模式?Sequential mode。
3. ?再等待300-500ns。
4. ?斷言 C/QPLLRESET和 GTTXRESET。
推薦的設(shè)計(jì)是使用來(lái)自相關(guān)的CPLL或者QPLL的PLLLOCK 來(lái)釋放GTTXRESET由高到低。
TX復(fù)位狀態(tài)機(jī)等GTTXRESET拉高,開(kāi)始TX復(fù)位,直到GTTXRESET被釋放低為止。
如下圖所示:
?
GTX允許用戶在任意時(shí)刻對(duì)TX進(jìn)行復(fù)位,只需要給GTTXRESET一個(gè)有效的高脈沖信號(hào)。 TXPMARESET_TIME和 TXPCSRESET_TIME 可以被設(shè)置為靜態(tài)的也可以通過(guò)DRP端口來(lái)動(dòng)態(tài)設(shè)置以適配在申請(qǐng) GTTXRESET之前要求的復(fù)位時(shí)間。
當(dāng)使用GTTXRESET時(shí)必須滿足以下條件:
????????TX PMA和 TX PCS 可以多帶帶進(jìn)行復(fù)位。在 TXPMARESET 或者 TXPCSRESE復(fù)位過(guò)程完成之前,TGTTXRESET必須保持為低。驅(qū)動(dòng)TXPMARESET從高到低來(lái)啟動(dòng)PMA復(fù)位程序, 在TXPMARESET復(fù)位過(guò)程中,TXPCSRESET必須保持為低。
????????在順序復(fù)位模式,復(fù)位狀態(tài)機(jī)在PMA復(fù)位完成后,(如果TXUSERRDY為高)自動(dòng)開(kāi)始PCS復(fù)位。如下圖:
?當(dāng)TXUSERRDY為高時(shí),驅(qū)動(dòng)TXPCSRESET由高到低來(lái)啟動(dòng)PCS復(fù)位程序。在PCS復(fù)位過(guò)程中,TXPMARESET 必須保持為低。
在順序復(fù)位模式,復(fù)位狀態(tài)機(jī)僅復(fù)位PCS,如下圖:
已經(jīng)快11點(diǎn)了,累了,溜了溜了,,,放張圖:
?
由GTX核分別輸出了發(fā)送端TX和接收端RX的初始化完成信號(hào):
TX:?gt0_tx_fsm_reset_done_out(output)
RX: gt0_rx_fsm_reset_done_out(output)
直接使用這兩個(gè)信號(hào)就好,TX復(fù)位完成就可以開(kāi)始發(fā)送數(shù)據(jù),RX復(fù)位就可以接收數(shù)據(jù)。
也可以加個(gè)信號(hào) GT_RESET_DONE;
assign GT_RESET_DONE = gt0_tx_fsm_reset_done_out && gt0_rx_fsm_reset_done_out;
先用起來(lái),后面再深入研究,不過(guò)了解了復(fù)位過(guò)程發(fā)現(xiàn)還是有點(diǎn)意思~
OK,前面說(shuō)了一大堆結(jié)論卻還是很簡(jiǎn)單的~
拿去搬磚吧~
???
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/125575.html
摘要:年月日,機(jī)器之心曾經(jīng)推出文章為你的深度學(xué)習(xí)任務(wù)挑選最合適從性能到價(jià)格的全方位指南。如果你想要學(xué)習(xí)深度學(xué)習(xí),這也具有心理上的重要性。如果你想快速學(xué)習(xí)深度學(xué)習(xí),多個(gè)廉價(jià)的也很好。目前還沒(méi)有適合顯卡的深度學(xué)習(xí)庫(kù)所以,只能選擇英偉達(dá)了。 文章作者 Tim Dettmers 系瑞士盧加諾大學(xué)信息學(xué)碩士,熱衷于開(kāi)發(fā)自己的 GPU 集群和算法來(lái)加速深度學(xué)習(xí)。這篇博文最早版本發(fā)布于 2014 年 8 月,之...
摘要:阿里云服務(wù)器平臺(tái)在云端提供統(tǒng)一硬件平臺(tái)與中間件,可大大降低加速器的開(kāi)發(fā)與部署成本。我們相信,通過(guò)即開(kāi)即用的硬件資源統(tǒng)一的軟硬件邏輯開(kāi)發(fā)接口和市場(chǎng),阿里云能夠真正兌現(xiàn)計(jì)算資源平民化的承諾。 阿里云ECS的異構(gòu)計(jì)算團(tuán)隊(duì)和高性能計(jì)算團(tuán)隊(duì)一直致力于將計(jì)算資源平民化;高性能計(jì)算團(tuán)隊(duì)在做的E-HPC就是要讓所有云上用戶都能夠瞬間擁有一個(gè)小型的超算集群,使得超算不再僅僅是一些超算中心和高校的特權(quán);而...
摘要:文章翻譯自深度學(xué)習(xí)是一個(gè)計(jì)算需求強(qiáng)烈的領(lǐng)域,的選擇將從根本上決定你的深度學(xué)習(xí)研究過(guò)程體驗(yàn)。因此,今天就談?wù)勅绾芜x擇一款合適的來(lái)進(jìn)行深度學(xué)習(xí)的研究。此外,即使深度學(xué)習(xí)剛剛起步,仍然在持續(xù)深入的發(fā)展。例如,一個(gè)普通的在上的售價(jià)約為美元。 文章翻譯自:Which GPU(s) to Get for Deep Learning(http://t.cn/R6sZh27)深度學(xué)習(xí)是一個(gè)計(jì)算需求強(qiáng)烈的領(lǐng)域...
摘要:在低端領(lǐng)域,在上訓(xùn)練模型的價(jià)格比便宜兩倍。硬件定價(jià)價(jià)格變化頻繁,但目前提供的實(shí)例起價(jià)為美元小時(shí),以秒為增量計(jì)費(fèi),而更強(qiáng)大且性能更高的實(shí)例起價(jià)為美元小時(shí)。 隨著越來(lái)越多的現(xiàn)代機(jī)器學(xué)習(xí)任務(wù)都需要使用GPU,了解不同GPU供應(yīng)商的成本和性能trade-off變得至關(guān)重要。初創(chuàng)公司Rare Technologies最近發(fā)布了一個(gè)超大規(guī)模機(jī)器學(xué)習(xí)基準(zhǔn),聚焦GPU,比較了幾家受歡迎的硬件提供商,在機(jī)器學(xué)...
摘要:本文將告訴你如何用最省錢(qián)的方式,來(lái)搭建一個(gè)高性能深度學(xué)習(xí)系統(tǒng)。 由于深度學(xué)習(xí)的計(jì)算相當(dāng)密集,所以有人覺(jué)得必須要購(gòu)買(mǎi)一個(gè)多核快速CPU, 也有人認(rèn)為購(gòu)買(mǎi)快速CPU可能是種浪費(fèi)。?那么,這兩種觀點(diǎn)哪個(gè)是對(duì)的? 其實(shí),在建立深度學(xué)習(xí)系統(tǒng)時(shí),最糟糕的事情之一就是把錢(qián)浪費(fèi)在不必要的硬件上。 本文將告訴你如何用最省錢(qián)的方式,來(lái)搭建一個(gè)高性能深度學(xué)習(xí)系統(tǒng)。當(dāng)初,在我研究并行深度學(xué)習(xí)過(guò)程中,我構(gòu)建了一個(gè)GP...
閱讀 3792·2023-01-11 11:02
閱讀 4299·2023-01-11 11:02
閱讀 3121·2023-01-11 11:02
閱讀 5231·2023-01-11 11:02
閱讀 4793·2023-01-11 11:02
閱讀 5568·2023-01-11 11:02
閱讀 5371·2023-01-11 11:02
閱讀 4070·2023-01-11 11:02