《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于RapidIO控制符產生單元設計與實現(xiàn)
基于RapidIO控制符產生單元設計與實現(xiàn)
2015年電子技術應用第11期
馮龍輝1,張興明1,楊鎮(zhèn)西1,李沛杰1,汪 欣2
(1.國家數(shù)字交換系統(tǒng)工程技術研究中心,河南 鄭州450002;2.珠海高凌有限公司,河南 鄭州450002)
摘要: 針對RapidIO_2.2協(xié)議進行開發(fā),設計并實現(xiàn)了該協(xié)議的控制符產生單元。本設計將控制符根據(jù)不同的功能字段拆分,采用流水線設計的方法將各個字段內部分別流水產生,最終并行實現(xiàn)。仿真結果表明,本設計在RapidIO_2.2規(guī)范下,可以實現(xiàn)正確快速產生控制符的功能,并且能夠連續(xù)產生不同的控制符。
中圖分類號: TN911
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.11.013

中文引用格式: 馮龍輝,張興明,楊鎮(zhèn)西,等. 基于RapidIO控制符產生單元設計與實現(xiàn)[J].電子技術應用,2015,41(11):48-50.
英文引用格式: Feng Longhui,Zhang Xingming,Yang Zhenxi,et al. Design and realization of the control symbols module based on RapidIO specification[J].Application of Electronic Technique,2015,41(11):48-50.
Design and realization of the control symbols module based on RapidIO specification
Feng Longhui1,Zhang Xingming1,Yang Zhenxi1,Li Peijie1,Wang Xin2
National Digital Switching System Engineering Technological Research Center,Zhengzhou 450002,China
Abstract: This paper designs and realizes the control symbols module based on the RapidIO_2.2 specification. Using the method of pipeline, the control symbol is decomposed and created according to the functions of different fields, which can be combined parallelly in the end. The simulation results show that under the RapidIO_2.2 specification our design can create the right control symbols rapidly, and can also create different control symbols continuously.
Key words : RapidIO;control symbols;pipeline;parallel

 

0 引言

  RapidIO是一種高性能、低引腳數(shù)、基于包交換的互連架構,是為滿足未來高性能嵌入式系統(tǒng)需求而設計的一種開放式互連技術標準,同時也是國際標準組織(ISO)唯一授權的嵌入式互連技術標準。RapidIO互連接口延時小、吞吐量高,在電子對抗、聲納以及雷達等軍用設備中應用廣泛[1]。控制符作為協(xié)議的重要組成部分,主要用于鏈路維護,包定界,錯誤報告以及錯誤恢復等,是進行正常通信必不可少的信息單元,在RapidIO端點設備和交換設備中均發(fā)揮不可替代作用,占據(jù)重要的地位[2]。本文針對RapidIO_2.2規(guī)范,提出一種快速正確產生控制符的設計實現(xiàn)方法[3]。仿真結果表明,在滿足控制條件的情況下,下一周期即可產生正確的控制符,達到了設計的預期目的。

1 控制符格式的介紹


001.jpg

  控制符分為長控制符和短控制符,長短控制符的格式分別如圖1所示,其中(a)為短控制符格式,(b)為長控制符格式。控制符有兩個字段,一個是stype0字段,一個是stype1字段。stype0與parameter0和parameter1配合工作,構成信息字段,表明端口傳遞各種類型控制符的狀態(tài),其編碼如表1[2]所示。stype1則與cmd配合工作,構成功能字段,用于鏈路維護或者傳輸定界的請求等,其編碼如表2[2]所示。短控制符有24位,長控制符有48位,長控制符與短控制符相似,其對應字段的名稱、功能和編碼都相同,唯一不同的是某些字段的位寬不同,這里不再贅述。

2 控制符產生的設計



  綜上可知,控制符主要由三個部分構成,分別為stype0、stype1和CRC,其中CRC為鏈路檢錯機制[2],這里不予討論,stype0和stype1分別為控制符的兩個域。parameter0和parameter1配合stype0一起工作,根據(jù)stype0的功能產生對應的字段,用于指示鏈路的各種狀態(tài)信息;cmd則配合stype1一起工作,根據(jù)stype1的功能產生對應的cmd字段,用于鏈路各種控制功能。基于此,本設計將stype0和stype1兩個域拆分為stype0 function generator和stype1 function generator,兩個域分別設計分別產生對應的控制符。對于stype0 function generator來說,首先根據(jù)鏈路控制信號產生stype0的類型,然后根據(jù)stype0的類型選擇并產生對應的parameter0字段和parameter1字段[4],stype1 function generator工作機制與此相同。值得說明的是:status控制符是stype0默認的也是常用的控制符,同時也是鏈路初始化時使用的控制符;NOP則是stype1默認的控制符[2]。控制符是由stype0和stype1的任意組合共同構成,例如,當stype0要發(fā)送一個包接收控制符PA,stype1不需要產生特定的控制符時,則產生NOP,由PA和NOP共同構成控制符。形成的各個控制信號在一定的控制條件下產生對應的字段,然后根據(jù)鏈路IDLE的使用情況產生長控制符或短控制符[5],最后通過控制符選擇模塊發(fā)送出去。本設計結構框圖如圖2所示[6],下面對框圖中每個模塊的作用進行闡述。

002.jpg

  (1)Initialization sequence:初始化序列模塊用于初始化序列及初始化鏈路。當端口完成初始化以后要對鏈路進行初始化,當端口收到連續(xù)的指定數(shù)量無錯誤的狀態(tài)控制符以后,則表明鏈路初始化已經完成。

  (2)Stype0 function generator:此模塊用于產生stype0的狀態(tài)信息并且根據(jù)狀態(tài)信息產生對應的parameter0字段和parameter1字段。若控制信號無效,即不需要產生特定的控制符時,status即為默認的stype0控制符。

  (3)Stype1 function generator:Stype1是功能字段,此模塊用于產生stype1功能字段并且根據(jù)功能字段產生對應的cmd字段。若控制信號無效,即不需要產生特定的控制符時,NOP為默認的stype1控制符。

  (4)Short control symbol creation:在IDLE1(短空閑序列)置位的情況下,根據(jù)控制信號產生對應的短控制符。

  (5)Long control symbol creation:在IDLE2(長空閑序列)置位的情況下,根據(jù)控制信號產生對應的長控制符。

  (6)Control symbol selector:根據(jù)鏈路上IDLE1和IDLE2的使用情況,選擇合適的控制符。長短控制符在鏈路上的使用情況是依據(jù)IDLE(空閑序列)的使用情況而定的。當鏈路使用IDLE1時,此時傳輸控制符為短控制符,當鏈路使用IDLE2時,傳輸控制符為長控制符。而IDLE的使用情況主要依據(jù)鏈路速率而定,當鏈路小于5.5 GB并且收發(fā)兩端不使用自適應均衡(Adaptive Equalization,AE)的情況下,鏈路使用IDLE1;而鏈路速率大于5.5 GB并且收發(fā)兩端具有AE功能的情況下鏈路使用IDLE2[2]。若鏈路雙方都支持IDLE2且鏈路速率小于5.5 GB時,也可通過鏈路協(xié)商進而使用IDLE2。

  綜上所述,本設計采用流水線設計的思想將控制符根據(jù)其不同功能、不同字段進行拆分,拆分后根據(jù)控制條件分別設計產生對應字段,最后將設計的結果拼接、選擇進而發(fā)送,可以達到快速正確產生控制符的目的,并且可以連續(xù)地產生不同的控制符。

3 仿真測試

003.jpg

  將本文中控制符產生的設計進行仿真測試,仿真結果如圖3所示。其中圖3(a)所示為短控制符的產生。協(xié)議規(guī)定當端口初始化完成以后,在VC=0的情況下,要連續(xù)發(fā)送16個status控制符以使鏈路初始化;若VC=1,則要連續(xù)發(fā)送15個status控制符和1個vcstatus控制符來完成鏈路初始化[2]。本次仿真以VC=0為例,從圖中信號可以看出,在端口初始化完成以后,連續(xù)發(fā)送了16個status控制符,從而使得鏈路初始化完成。

  圖3(b)為產生長控制符仿真測試圖。stype0產生的是PA,stype1產生的是sop。產生PA的情況有多種,有一個計數(shù)器outstanding_pa_ctr專門計數(shù)未能及時處理發(fā)送的PA的數(shù)目,當鏈路初始化完成以后,只要outstanding_pa_ctr的值不為零則發(fā)送PA控制符;或者當PA的數(shù)目太多超過一定值之后,亦或buf的狀態(tài)已經過期,都要產生PA控制符,本仿真圖以第一種情況為例。對于sop的產生也有多種情況,若sop信號有效,同時配置模塊允許其advance,此時會產生sop控制符;若上個周期eop有效,但是下個周期即將到來sop,此時要把eop重寫為sop,產生sop控制符。本文以第二種情況為例。本設計短控制符為32位,其中頭部包含8位的包定界符;長控制符為64位,其中頭部和尾部各自包含一個包定界符。

4 結論

  本文針對RapidIO_2.2協(xié)議進行開發(fā),設計并且實現(xiàn)了控制符的產生。根據(jù)控制符的特點,對其不同的功能字段進行拆分,采用流水線的設計思想,流水產生各個字段最后拼接發(fā)送。仿真結果表明,本設計可以快速正確地產生對應功能的長短控制符,滿足預期目標,為器件的正常通信提供了有力的保障。

參考文獻

  [1] 陳程.串行RapidIO總線在存儲系統(tǒng)中的應用研究[D].西安:西安電子科技大學,2013.

  [2] ASSOCIATION R T.RapidIOTM Interconnect Specification Part 6:LP-Serial Physical Layer Specification[D].2011.

  [3] 楊卿.RapidIO高速互聯(lián)接口的設計研究與應用[D].成都:電子科技大學,2009.

  [4] 陳宏銘,李蕾,姚益武,等.基于AXI總線串行RapidIO端點控制器的FPGA實現(xiàn)[J].北京大學學報,2014,50(4).

  [5] 吳峰鋒.一種低時延的串行RapidIO端點設計方案[J].北京大學學報(自然科學版),2013,49(4).

  [6] 張強.串行RapidIO互連系統(tǒng)的設計與實現(xiàn)[D].南京:南京理工大學,2013.


此內容為AET網站原創(chuàng),未經授權禁止轉載。
主站蜘蛛池模板: 含羞草实验研所入口| 国内免费在线视频| 亚欧日韩毛片在线看免费网站| 老司机午夜在线| 国产精品一区二区久久沈樵| α片毛片免费看| 日本高清视频网址| 亚洲日韩精品欧美一区二区| 精品国偷自产在线视频| 国产成人精品动图| 99re在线观看| 手机看片福利日韩国产| 亚洲av永久无码精品| 清早可以吃西瓜吗| 啊~又多了一根手指| 国产成人精品一区二区秒拍| 国内揄拍高清国内精品对白| 中文乱码字幕午夜无线观看| 日韩欧美综合在线| 亚洲日韩精品A∨片无码| 精品一区二区三区av天堂| 国产人成免费视频| 亚洲伊人久久大香线蕉结合| 夜天干天干啦天干天天爽| 中文在线最新版天堂| 日韩欧美在线看| 亚洲国产精品久久久久秋霞影院 | 亚洲国产成人久久一区二区三区| 精品一区精品二区制服| 国产乱子伦精品视频| 精品91自产拍在线| 国产精品爽爽影院在线| a级日本片在线观看| 思思久久99热只有频精品66 | 国产码欧美日韩高清综合一区| 99视频精品全部在线观看| 成人午夜福利视频镇东影视| 久久人妻夜夜做天天爽| 极品精品国产超清自在线观看| 亚洲欧美一区二区三区| 狠狠爱无码一区二区三区|