當前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]一個簡化的異步數(shù)據(jù)通信系統(tǒng)如圖1所示。接收機端從接收到的來自串行鏈路的比特流中提取時鐘信號Clk1,作為其工作時鐘源;而發(fā)送機端采用本地晶振和鎖相環(huán)產(chǎn)生的時鐘Clk2,作為其工作時鐘源。接收機在時鐘Clk1的上升沿把數(shù)據(jù)寫入彈性緩存,發(fā)送機在時鐘Clk2的上升沿從彈性緩存中讀出數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)的同步。

引  言

一個簡化的異步數(shù)據(jù)通信系統(tǒng)如圖1所示。接收機端從接收到的來自串行鏈路的比特流中提取時鐘信號Clk1,作為其工作時鐘源;而發(fā)送機端采用本地晶振和鎖相環(huán)產(chǎn)生的時鐘Clk2,作為其工作時鐘源。接收機在時鐘Clk1的上升沿把數(shù)據(jù)寫入彈性緩存,發(fā)送機在時鐘Clk2的上升沿從彈性緩存中讀出數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)的同步。 



雖然光纖通道仲裁環(huán)中的所有通信設(shè)備必須工作在同一頻率,但圖1中兩個不同源的時鐘信號Clk1和Clk2除了在相位上可能存在差異外,由于制造工藝的因素,晶振產(chǎn)生時鐘時其頻率也是被允許有一定誤差存在的。這個誤差范圍為±100×10-6,即在每一百萬個理想時鐘周期的時間內(nèi)容許±100個時鐘周期的偏差。兩個不同的晶振產(chǎn)生同一頻率的時鐘時,它們之間可能存在的誤差最大為200×10-6。所以,對于由不同晶振產(chǎn)生的同一頻率的2個時鐘,除了相位上的不同外,在最壞情況下,經(jīng)過106/200=5 000個周期后,它們之間將出現(xiàn)一個時鐘周期的偏移。對于連續(xù)的數(shù)據(jù)流,由于用于時鐘同步的彈性緩存的大小有限,如果不能正確處理這個時鐘周期的偏移,將會導(dǎo)致緩存溢出,損壞有效數(shù)據(jù),嚴重影響系統(tǒng)的性能。

1  FC-AL彈性緩存管理的基本原理 

FC-AL通信系統(tǒng)中,也采用彈性緩存來解決數(shù)據(jù)在不同時鐘域的同步問題,并通過對彈性緩存的管理適時地向緩存中添加或刪除填充字,以控制緩存中有效傳輸字的數(shù)量(本設(shè)計中彈性緩存的存儲單位為字),從而達到對時鐘傾斜的補償。填充字是FC-AL協(xié)議中定義的一類特殊的傳輸字,它們在幀與幀的間隙,且在幀界定符之外被傳輸。所以,彈性緩存的管理對這些特殊傳輸字進行的適當?shù)奶砑踊騽h除操作,不會損壞數(shù)據(jù)幀或影響環(huán)網(wǎng)的正常運作。何時對彈性緩存添加或刪除填充字,是由緩存的占用率來決定的。彈性緩存空間的使用狀態(tài)分為4個等級:添加填充字等待、保持狀態(tài)、低級別的刪除填充字等待以及高級別的刪除填充字等待。當彈性緩存的寫時鐘慢于讀時鐘時(如圖1中Clk1的頻率略低于Clk2的頻率),緩存可能被讀空而出現(xiàn)誤讀,此時需要添加填充字,相當于增加緩存中可讀的數(shù)據(jù)量,防止緩存出現(xiàn)下溢;當彈性緩存的寫時鐘快于讀時鐘時(如圖1中Clk1的頻率略高Clk2的頻率),緩存可能出現(xiàn)被寫滿導(dǎo)致錯誤的數(shù)據(jù)覆蓋,此時需要刪除填充字,以增加緩存中的可用空間防止緩存出現(xiàn)上溢。

彈性緩存管理的基本原理如圖2所示。假設(shè)彈性緩存的深度為4,圖中被標識為0或1的每一個小格代表彈性緩存的一個存儲空間。置1,表示相應(yīng)的存儲空間已被寫入有效數(shù)據(jù),且未被讀出;置0,表示相應(yīng)的存儲空間未被寫入,或?qū)懭氲臄?shù)據(jù)已被讀出。



由于對于緩存的讀操作必須是在有數(shù)據(jù)已寫入緩存后才能開始,假設(shè)當緩存中有2個空間被寫入時才開始讀操作。所以,對于隨后的彈性緩存管理,當緩存中剛好有2個空間被占用時,其處于保持狀態(tài),執(zhí)行正常的讀寫操作;當緩存中超過2個的空間被占用時,其處于刪除填充字等待的狀態(tài),說明寫時鐘的頻率高于讀時鐘的頻率,需要進行刪除填充字的操作;當緩存中少于2個空間被占用,其處于添加填充字等待狀態(tài),說明寫時鐘的頻率低于讀時鐘的頻率,需要進行添加填充字的操作。

2硬件電路設(shè)計

用異步FIFO實現(xiàn)彈性緩存的關(guān)鍵是監(jiān)測緩存空間的占用率,以此來判斷讀寫時鐘可能存在的微小差異,預(yù)見彈性緩存可能出現(xiàn)讀空還是寫滿,并決定在何時進行填充字的添加或刪除操作,以及何種等級的刪除操作,并保證在添加或刪除操作之后不對其后的數(shù)據(jù)讀寫產(chǎn)生任何影響。需要注意的是,這里的添加或刪除填充字的操作都必須在讀時鐘域進行。

在異步數(shù)據(jù)通信系統(tǒng)中,使用彈性緩存實現(xiàn)數(shù)據(jù)在多時鐘域之間的同步存在兩個問題——數(shù)據(jù)延時和緩存大小。數(shù)據(jù)延時指的是,數(shù)據(jù)從被寫入緩存到從緩存中讀出的時間差。假設(shè)彈性緩存的大小為N,在不出現(xiàn)數(shù)據(jù)覆蓋的前提下,當前數(shù)據(jù)被寫入緩存的第N個存儲空間,而此時緩存中還有N-1個空間中的數(shù)據(jù)還未被讀出,至少在讀時鐘域看來是這樣的,那么當前被寫入的數(shù)據(jù)需要至少N-1個讀時鐘周期的延時后才能被讀出。由此可見,緩存空間越大,經(jīng)過緩存的數(shù)據(jù)的延時可能越大。但是,為了防止緩存將滿或?qū)⒖斩砑踊騽h除填充字的操作不能得到及時的執(zhí)行而致使緩存溢出,須設(shè)置較大的緩存空間,給緩存管理提供較充足的時間范圍,從而減小了緩存出現(xiàn)溢出的可能性。

為了獲得盡可能小的數(shù)據(jù)延時,同時不對數(shù)據(jù)的正常傳輸產(chǎn)生影響,在緩存大小滿足系統(tǒng)基本要求的情況下,如何更精確地判斷彈性緩存空間的占用率就變得很重要了。為了提高緩存管理的精度,本文中所采取的彈性緩存的設(shè)計方法如圖3所示。在寫時鐘的上升沿將數(shù)據(jù)寫入到基于寫時鐘上升沿的寫地址產(chǎn)生邏輯的輸出,即寫指針所指向的彈性緩存空間;在讀時鐘的上升沿將基于讀時鐘上升沿的讀地址產(chǎn)生邏輯的輸出,即讀指針所指向的彈性緩存空間的數(shù)據(jù)讀出。此外,還各設(shè)置了一個基于時鐘下降沿的讀和寫地址產(chǎn)生邏輯,但它們不對彈性緩存的讀寫操作產(chǎn)生影響。分別對基于讀時鐘上升沿的讀地址和經(jīng)過延時后的基于寫時鐘上升沿的寫地址,以及基于讀時鐘下降沿的讀地址和經(jīng)過延時后的基于寫時鐘下降沿的寫地址進行異步比較。綜合兩個比較結(jié)果,判斷因同頻但不同源的讀寫時鐘之間可能存在的差異而導(dǎo)致的彈性緩存空間占用率的變化。判斷得到的異步信號通過一個同步邏輯被同步到讀時鐘域,控制基于讀時鐘上升沿的讀地址產(chǎn)生邏輯的輸出,從而實現(xiàn)對彈性緩存中填充字的添加或刪除,達到預(yù)防緩存出現(xiàn)溢出的目的。

3仿真結(jié)果分析

用Verilog語言實現(xiàn)圖3所示電路的RTL描述,并對其用ModelSim進行仿真,仿真結(jié)果如圖4和圖5所示。兩圖中,CLK_rcv和CLK_local分別為頻率非常相近的緩存的寫時鐘和讀時鐘。





圖4中,CLK_rcv的時鐘頻率略低于CLK_local的時鐘頻率,彈性緩存有被讀空的可能。當CLK_local比CLK_rcv多出半個時鐘周期左右后,緩存管理就發(fā)出添加填充字的請求,以在最近的幀間隙進行添加操作。

圖5中,CLK_rcv的時鐘頻率略高于CLK_local的時鐘頻率,彈性緩存有被寫滿的可能。當CLK_local比CLK_rcv少了半個時鐘周期左右后就發(fā)出較低級別的刪除填充字的請求,以在最近的間隙進行刪除操作。若低級別的刪除操作未被及時執(zhí)行,致使緩存空間占用率進一步提高,則請求較高級別的刪除操作。

從圖4和圖5中可以看出,添加填充字,即在當前時鐘周期不讀緩存空間的數(shù)據(jù),而是發(fā)送一個當前填充字;刪除填充字,即在條件滿足的情況下跳過當前讀地址空間,直接讀取下一個地址空間中的數(shù)據(jù)。

結(jié)  語

本文提出的彈性緩存設(shè)計方法,充分利用了光纖通道協(xié)議的特性,通過提高對彈性緩存的管理精度,減小了數(shù)據(jù)在彈性緩存中可能的最大延時,有利于提高仲裁環(huán)網(wǎng)的整體性能。
本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉