您好,登錄后才能下訂單哦!
aurora的線速率及其用戶時鐘之間的關系是什么,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
在定制aurora IP核的時候,我們需要選擇各種時鐘的頻率,包括GT參考時鐘,INIT時鐘以及DRP時鐘,其中GT參考時鐘是來自于專用的MGT bank上的專用端口,其他就沒有必要。
從GT參考時鐘開始,通過一系列的時鐘管理單元,例如PLL,MMCM等,可以衍生出一系列的時鐘供Transceiver以及aurora協議使用,今天的主角是十分重要的,用戶邏輯側時鐘USER_CLK!它等于多少?從上面的定制頁面可以看出,我們的線速率選擇的是3.125Gbps,看起來很高了,其實看單位也就是bit而已!除以8,變成390.625MBps,這時候是字節了,如果傳輸的數據具有32bit呢?也就是4字節?那么線速率可以轉換位97.65625MQBps,其中的QB就是QUAD Bytes(也就是雙字,DW),如果使用一個時鐘去傳輸這樣的32bit數據,一個時鐘傳輸一個數據,需要一個90多M的時鐘就夠了!注意,上面說的是在沒有編碼的情況下,算出來的時鐘,但是高速串口進行數據傳輸時,都是會編碼的,8B/10B編碼,那么傳輸32bit數據,編碼后就得40bit了。線速率為3.125Gbps,那么如果一個并行用戶時鐘傳輸一個數據,需要一個78.125M的時鐘就行了。
為了驗證,就上面的定制頁面,生成一個例子程序,進行仿真,如下:
對用戶時鐘進行測量,12.8ns時鐘,頻率不就是78.125M嗎?驗證無誤!
下面給出結論,如果采用8B/10B編碼,用戶時鐘為線速率除以編碼后的用戶數據位寬。編碼前的位寬可以在IP的定制頁面選擇:
數據位寬選擇
在算上編碼,就很容易得出編碼后的位寬!
為了得到auroa的用戶時鐘來源?我們就aurora的例子程序扒一扒!從用戶邏輯模塊開始,一層一層追溯它的來源:
從user_clk_i,到USER_CLK,再到GT_CLK,再到txoutclk_out,最終追溯到原語GTXE2_CHANNEL中的TXOUTCLK;當然接收模塊的用戶時鐘來源于RXOUTCLK;
用戶時鐘也不是一直都有的,需要鏈路通路才行!
關于aurora的線速率及其用戶時鐘之間的關系是什么問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。