国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

RocketIOTM GTP在串行高速接口中的位寬設(shè)計(jì)

發(fā)布時(shí)間:2011-1-18 21:28    發(fā)布者:designer
關(guān)鍵詞: GTP , RocketIOTM , 串行 , 高速接口 , 位寬
Virtex-5 RocketI0TM GTP是Xilinx公司根據(jù)高速串行接口開發(fā)市場(chǎng)對(duì)高性能GTP的特殊要求而開發(fā)的一款具有通用性、易用性、低功耗和低成本特性的GTP收發(fā)器。文章針對(duì)Virtex-5 RocketIOTM GTP收發(fā)器的串行高速系統(tǒng)接口開發(fā)過程中位寬轉(zhuǎn)換的幾個(gè)技術(shù)問題提出了解決方案,并以SATA2.0開發(fā)為例,通過Xilinx Virtex-5 XC5VLX50T FPGA驗(yàn)證方案進(jìn)行了可行性驗(yàn)證。

二十世紀(jì)六七十年代,集成電路技術(shù)取得了大幅進(jìn)步,大量元件可以集成到一個(gè)小小的芯片上,因此,當(dāng)時(shí)的計(jì)算機(jī)系統(tǒng)便開始普遍采用并行通訊處理機(jī)制。但是,隨著技術(shù)進(jìn)步和速度需求的提升,人們發(fā)現(xiàn),并行通訊也存在很多弊端,比如碼間串?dāng)_,時(shí)鐘混亂,傳輸距離受限,傳輸線造價(jià)高等。

最近幾年,在接口互聯(lián)技術(shù)范圍內(nèi),高速串行接口正在迅速取代并行拓?fù)浣Y(jié)構(gòu)而成為流行的接口標(biāo)準(zhǔn)。當(dāng)今很多公用互連標(biāo)準(zhǔn)(如USB,PCIExpress,Serial ATA)都是基于串行傳輸來(lái)實(shí)現(xiàn)速度的躍升。串行接口技術(shù)的開發(fā)也迅速在全世界走紅。

為了迎合串行高速接口技術(shù)開發(fā)的廣闊前景,Xilinx公司在推出的Virtex-5 FPGA以及配套的Virtex-5 RocketIOTM GTP收發(fā)中開始支持多種協(xié)議,如SATA2.0傳輸協(xié)議。SATA (Serial ATA),即串行高級(jí)技術(shù)附加裝置,該協(xié)議于2001年發(fā)布,是目前主流的主機(jī)硬盤互聯(lián)標(biāo)準(zhǔn),該標(biāo)準(zhǔn)采用差分信號(hào)串行傳輸數(shù)據(jù),進(jìn)而解決了IDE硬盤由于串?dāng)_而導(dǎo)致的傳輸速率受限問題。2002年,Serial ATA委員會(huì)確立的Serial ATA 2.0規(guī)范可對(duì)外提供3.0Gb/s的傳輸速率,并支持熱插拔NCO,磁盤陣列等功能。2005年,SATA2.0產(chǎn)品正式上市。此外,Virtex-5 Rock-etI0TM GTP收發(fā)器還可以完成內(nèi)部8B/10B轉(zhuǎn)換,但是,Virtex-5 RocketIOTMGTP進(jìn)行8B/10B轉(zhuǎn)換時(shí),處理的目標(biāo)數(shù)據(jù)以字節(jié)為單位,即并行數(shù)據(jù)接收端的最大位寬為16bit,而SATA2.0協(xié)議中定義的數(shù)據(jù)處理單位是雙字(DW:Double Words),同時(shí),F(xiàn)PGA中設(shè)計(jì)的數(shù)據(jù)處理邏輯也是根據(jù)協(xié)議的要求而定義為75MHz的時(shí)鐘域來(lái)進(jìn)行處理,因此,在將數(shù)據(jù)交給FPGA中的數(shù)據(jù)處理主體邏輯之前,還必須進(jìn)行等速率的時(shí)鐘域和位寬的轉(zhuǎn)換。

為此,本文在對(duì)Virtex-5 RocketIOTM GTP進(jìn)行了解的基礎(chǔ)上,針對(duì)串行高速接口開發(fā)中位寬不匹配的問題,提出了一種位寬轉(zhuǎn)換方法,以解決Virtex-5 RocketI0TM GTP無(wú)法直接應(yīng)用于某些串行高速接口開發(fā)的問題,并就SATA2.0接口開發(fā)中該問題的解決方案進(jìn)行詳細(xì)闡述。

1 SATA2.0協(xié)議數(shù)據(jù)的相關(guān)操作結(jié)構(gòu)

根據(jù)SATA2.0協(xié)議規(guī)定,系統(tǒng)進(jìn)行數(shù)據(jù)操作和傳輸時(shí)的基本單位是Dword (Double、word),共計(jì)32 bit,由低有效字wordO和高有效字wordl組成,也可以看做是由byte0~byte3四個(gè)有效字節(jié)組成。其相互關(guān)系如圖1所示。





原語(yǔ)(primitive)是主機(jī)與設(shè)備間鏈路層交互的載體,一般由一個(gè)帶有控制字符byteO和附加字符bvtel—byte3的Dword組成,SATA2.0協(xié)議將原語(yǔ)的byte0稱為K字符,將附加字符bytel一byte3稱為D字符,由不同的K字符和D字符可以構(gòu)成原語(yǔ)組。字符內(nèi)容由8B/10B轉(zhuǎn)換中的6—4分組確定。其原語(yǔ)組的編碼如表1所列。



無(wú)論是在傳輸還是在操作過程中,都要保證每個(gè)Dword的正確性和完整性,否則將導(dǎo)致數(shù)據(jù)出錯(cuò)或原語(yǔ)流失。

另外,目前高速數(shù)據(jù)傳輸接口或總線常用8B/10B編碼來(lái)編碼,其根本目的是實(shí)現(xiàn)直流平衡(DC Balance)。當(dāng)高速串行流的邏輯1或邏輯0有多個(gè)位沒有變化時(shí),信號(hào)的轉(zhuǎn)換就會(huì)因?yàn)?a href="http://www.qingdxww.cn/keyword/電壓" target="_blank" class="relatedlink">電壓位階的關(guān)系而造成信號(hào)錯(cuò)誤。直流平衡的最大好處便是可以克服以上問題。8B/10B編碼是目前許多高速串行總線采用的一種編碼機(jī)制,如1394b、Serial ATA、PCI Express、Infini-band、Fiber Channel、RapidIO等總線或網(wǎng)絡(luò),都是8B/10B編碼的擁護(hù)者。該編碼技術(shù)的基本精神很簡(jiǎn)單,就是將8個(gè)位經(jīng)過映射的機(jī)制轉(zhuǎn)化為10個(gè)位的字碼,但它平衡了位流中0與l的數(shù)量。

8B/10B編碼是將一組連續(xù)的8位數(shù)據(jù)分解成兩組數(shù)據(jù),一組3位,一組5位,經(jīng)過編碼后分別構(gòu)成一組4位代碼和一組6位代碼,從而組成一組10位的數(shù)據(jù)發(fā)送出去。相反,解碼是將l組10位的輸入數(shù)據(jù)經(jīng)過變換得到8位數(shù)據(jù)位。其8B/10B編解碼過程如圖2所示。



Xilinx公司推出的Virtex-5 FPGA以及配套的Virtex-5 RocketI0TM GTP收發(fā)器只支持16bit接口位寬的數(shù)據(jù)傳輸,即該GTP收發(fā)器是以word為數(shù)據(jù)處理單位。由于這與SATA2.0協(xié)議的相關(guān)規(guī)定出現(xiàn)了偏差,因而要求在數(shù)據(jù)進(jìn)入設(shè)計(jì)主體邏輯前后要進(jìn)行合并以及分解。同時(shí),F(xiàn)PGA中設(shè)計(jì)的數(shù)據(jù)處理邏輯是根據(jù)協(xié)議的要求而定義為75 MHz的時(shí)鐘域來(lái)進(jìn)行處理的,因此,在將數(shù)據(jù)交給FPGA中的數(shù)據(jù)處理主體邏輯之前,也必須進(jìn)行位寬的轉(zhuǎn)換。

由于GTP附帶的2 bit控制字節(jié)指示信號(hào)rxcharisk可用以表征接收到了K字符,故實(shí)際的數(shù)據(jù)需要從150 MHz (16+2) bit轉(zhuǎn)換為75 MHz(32+4)bit。但由于16 bit和32 bit的并行數(shù)據(jù)是主體。因此,筆者仍稱之為16 bit到32 bit位寬轉(zhuǎn)換和32bit到16 bit位寬轉(zhuǎn)換,它們實(shí)際上都包含了指示信號(hào),用來(lái)標(biāo)示該字符是否是控制字符。

   



2 位寬轉(zhuǎn)換

根據(jù)SATA2.0協(xié)議的規(guī)定和Virrex-5 RocketIOTM GTP的特性,以及SATA2.0接口邏輯中需要提取原語(yǔ)(primitive)進(jìn)行邏輯控制的要求,16bit和32 bit位寬的相互轉(zhuǎn)換不能簡(jiǎn)單的進(jìn)行word合并拆解,而是需要實(shí)現(xiàn)圖1中wordO和wordl的正確組合,否則將導(dǎo)致原語(yǔ)或數(shù)據(jù)受損,使控制邏輯無(wú)法獲得有效的交互原語(yǔ),數(shù)據(jù)處理邏輯組幀傳輸錯(cuò)誤,文件損壞的狀況發(fā)生。這就要求系統(tǒng)能夠在提取原語(yǔ)和數(shù)據(jù)組幀之前,及時(shí)進(jìn)行Dword邊界校正,以保證后續(xù)處理的正確。

2.1 16bit至32bit位寬轉(zhuǎn)換模塊

該模塊將GTP接收后的150 MHz 16 bit并行數(shù)據(jù)轉(zhuǎn)換成數(shù)據(jù)處理邏輯可以工作的75 MHz 32 bit的并行數(shù)據(jù)。圖3所示為其位寬轉(zhuǎn)換要求示意圖。



由于在轉(zhuǎn)換開始時(shí),必須正確地將2個(gè)相關(guān)的16 bit Word組合成一個(gè)32bit DW,但不能將一個(gè)DW的低字跟相鄰的一個(gè)DW的高字組合成一個(gè)DW,否則邏輯處理時(shí)就會(huì)出錯(cuò)。圖4所示是16Bit轉(zhuǎn)32 bit的實(shí)現(xiàn)邏輯示意圖。

對(duì)于這個(gè)問題,Xilinx提供了非對(duì)稱的異步FIFO,但這樣又會(huì)造成較大的延時(shí),同時(shí)無(wú)法避免圖4所示的DW組合轉(zhuǎn)換不當(dāng)?shù)膯栴}。這樣就使得FIF0的控制邏輯比較復(fù)雜,而數(shù)據(jù)的延時(shí)又較大,又會(huì)致使性能下降,有些得不償失,也不符合SATA2.0的高速低延遲要求。

為了降低延時(shí),同時(shí)簡(jiǎn)化邏輯,筆者設(shè)計(jì)了一個(gè)滑動(dòng)窗口位寬轉(zhuǎn)換器,其中滑動(dòng)窗口的作用就在于尋找到正確的DW邊界,避免不當(dāng)?shù)腄W組合轉(zhuǎn)換。150 MHz時(shí)鐘和75 MHz時(shí)鐘的相位一致是這種轉(zhuǎn)換穩(wěn)定進(jìn)行的保障,而xilinx Virtex-5xc5vlx50t FPGA恰恰通過DCM提供了這樣兩個(gè)穩(wěn)定時(shí)鐘,因此,這兩個(gè)時(shí)鐘必須接到DCM響應(yīng)頻率的輸出。

利用3個(gè)18bit寄存器可以組成一個(gè)右移的寄存器組,輸入按[rxcharisk,rxdata]的形式組合成18 bit輸入數(shù)據(jù)。在位寬轉(zhuǎn)換開始后,通過判別中間寄存器的最高2 bit rxcharisk是否為2’bOl可判別DW的邊界,并選擇輸出數(shù)據(jù)來(lái)自哪個(gè)窗口。如果75 MHz時(shí)鐘有效沿檢測(cè)到中間寄存器最高2 bit rxcharisk是2’b01,則輸出reg2和regl重組后的36 bit數(shù)據(jù)。否則,就會(huì)輸出regl和reg0重組后的36 bit數(shù)據(jù)。但由于150 MHz時(shí)鐘和75 MHz時(shí)鐘存在著有效沿不一致的情況(即150 MHz時(shí)鐘的上升沿可能對(duì)應(yīng)著75 MHz時(shí)鐘的下降沿),75MHz時(shí)鐘有效沿可能會(huì)檢測(cè)到rxcharisk=2’b01,也可能永遠(yuǎn)檢測(cè)不到,這取決于復(fù)位之后初始輸入數(shù)據(jù)的特性。數(shù)據(jù)重組的作用是將2個(gè)相鄰的寄存器中的16bit數(shù)據(jù)(rxdata)及其2 bit類型指示(rxcharisk)信號(hào)重組為32 bit數(shù)據(jù)及其4 bit類型指示信號(hào)。DW邊界判別的依據(jù)是:在PHY連接建立之后,主機(jī)和設(shè)備之間會(huì)相互發(fā)送SYNC原語(yǔ),表明兩端處于空閑狀態(tài),而SYNC就是一個(gè)控制(K)字節(jié),其低字接收后的xcharisk是2’bol,通過這個(gè)即可識(shí)別DW的邊界。

2.2 32 bit至16 bit位寬轉(zhuǎn)換模塊

根據(jù)上面16 bit至32 bit位寬轉(zhuǎn)換分析,需要將數(shù)據(jù)處理邏輯輸出的32 bit數(shù)據(jù)拆分成兩個(gè)16bit數(shù)據(jù)交給GTP進(jìn)行發(fā)送。同時(shí)在轉(zhuǎn)換的開始時(shí)刻,要求先發(fā)送一個(gè)DW的低字,然后發(fā)送其高字,而不能先發(fā)送一個(gè)DW的高字,否則接收端將無(wú)法正確恢復(fù)出DW。另外,150 MHz時(shí)鐘和75MHz時(shí)鐘的相位一致,同樣是這種轉(zhuǎn)換穩(wěn)定進(jìn)行的保障,因此,這兩個(gè)時(shí)鐘也必須接到DCM響應(yīng)頻率的輸出。其32 bit轉(zhuǎn)16 bit的實(shí)現(xiàn)邏輯示意圖如圖5所示。



用2個(gè)18 bit的寄存器組寄存經(jīng)數(shù)據(jù)重組后的36 bit輸入數(shù)據(jù)時(shí),可根據(jù)輸入數(shù)據(jù)的控制字節(jié)(rxcharisk)指示位來(lái)判別數(shù)據(jù)的寫入和讀出。由于150 MHz時(shí)鐘和75 MHz時(shí)鐘存在著有效沿不一致的情況,即150 MHz時(shí)鐘的上升沿可能對(duì)應(yīng)著75 MHz時(shí)鐘的下降沿,因此,要準(zhǔn)確地進(jìn)行讀寫控制,就必須對(duì)wr_en和rd_en信號(hào)進(jìn)行同步。同步方法是利用75 MHz時(shí)鐘的有效沿(上升沿)與150 MHz時(shí)鐘有效沿一致的特性來(lái)同步產(chǎn)生wr-en和rd_en信號(hào)。而產(chǎn)生wr_en和rd_en信號(hào)的依據(jù)是在系統(tǒng)復(fù)位后,由數(shù)據(jù)處理邏輯向外發(fā)送SYNC信號(hào)來(lái)表明系統(tǒng)處于空閑(Idle)狀態(tài)。事實(shí)上,SYNC就是一個(gè)控制(K)字節(jié),其響應(yīng)的rxcharisk是4’b0001,通過這個(gè)可以正確地將DW寫入和讀出。DW的發(fā)送要求先發(fā)送低字,然后發(fā)送高字。數(shù)據(jù)讀出控制塊會(huì)利用rd-en信號(hào)使能2 bit的計(jì)數(shù)器,然后利用計(jì)數(shù)值將DW的低高字依次選擇讀出。

3 仿真及驗(yàn)證

通過對(duì)位寬轉(zhuǎn)換模塊的Verilog HDL描述,可在ModelSim se以及Xilinx ISE集成開發(fā)環(huán)境下進(jìn)行功能仿真和綜合布局布線后的時(shí)序仿真,也可在Xilinx Virtex-5 xc5vlx50t FPGA上進(jìn)行驗(yàn)證。圖6所示為16 bit轉(zhuǎn)32 bit邏輯仿真圖。而其32 bit轉(zhuǎn)16 bit邏輯仿真圖如圖7所示。



4 結(jié)束語(yǔ)

本設(shè)計(jì)可實(shí)現(xiàn)Virrex-5 RocketI0TM GTP進(jìn)行SATA2.0相關(guān)開發(fā)過程中的位寬匹配轉(zhuǎn)換功能,而且具有處理延遲小、差錯(cuò)率低等優(yōu)點(diǎn),并通過了Xilinx ISE綜合布線以及Virtex-5 FPGA上的驗(yàn)證,結(jié)果證明:本設(shè)計(jì)能夠完全滿足SATA2.0相關(guān)開發(fā)時(shí)序及功能上的要求。實(shí)際上,邏輯設(shè)計(jì)人員利用Virrex-5 RocketIOTM GTP進(jìn)行其他高速串行傳輸接口的開發(fā)時(shí),也可以借鑒此設(shè)計(jì)思想。
本文地址:http://www.qingdxww.cn/thread-49760-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • Cortex-M4外設(shè) —— TC&TCC結(jié)合事件系統(tǒng)&DMA優(yōu)化任務(wù)培訓(xùn)教程
  • 我們是Microchip
  • 你仿真過嗎?使用免費(fèi)的MPLAB Mindi模擬仿真器降低設(shè)計(jì)風(fēng)險(xiǎn)
  • 更佳設(shè)計(jì)的解決方案——Microchip模擬開發(fā)生態(tài)系統(tǒng)
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区免费观看 | 中文字幕日韩在线一区国内 | 91成人午夜精品福利院在线观看 | 最近韩国日本免费免费版 | 国产极品一区 | 理论毛片 | 二区中文字幕 | 欧美一区二区三区高清视频 | 精品视频一区二区三区 | 99re2| 四虎在线免费观看视频 | 四虎最新永久免费视频 | 色屋网| 久久亚洲欧美成人精品 | 欧美最爽乱淫视频播放黑人 | 国产亚洲欧美另类专区 | 99精品视频在线在线视频观看 | 亚洲a网| 欧美精品不卡 | 日本视频在线观看免费 | 韩国福利在线观看 | 国产一区二区三区视频在线观看 | 国产国语对白精品视频 | 福利社区在线观看 | 91精品综合| 视色网 | 两个人的视频免费观看 | 久久亚洲国产最新网站 | 激情九月婷婷 | 免费看一级做a爰片久久 | 无人区国语版免费观看 | 欧美在线播放成人a | 天天玩天天操 | 国产一区精品在线观看 | 91精品国产色综合久久 | 久久久久久久91精品免费观看 | 污片网站| 欧美日韩精品在线播放 | 国产亚洲自拍一区 | 成人观看的视频三级 | 四虎成人国产精品视频 |