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

SpaceWire Codec接收端FPGA時(shí)序設(shè)計(jì)

發(fā)布時(shí)間:2010-3-22 16:54    發(fā)布者:我芯依舊
關(guān)鍵詞: Codec , FPGA , SpaceWire , 設(shè)計(jì) , 時(shí)序
引言

SpacewiTe是歐空局2003年提出的一種高速的、點(diǎn)對(duì)點(diǎn)、全雙工的串行總線網(wǎng)絡(luò),面向空間應(yīng)用。它以IEEE 1355—1995和LVDS標(biāo)準(zhǔn)為基礎(chǔ),提供了一種通用接口標(biāo)準(zhǔn)以簡(jiǎn)化和規(guī)范不同設(shè)備之間的互連,對(duì)解決目前星上數(shù)據(jù)處理系統(tǒng)的總線帶寬不足有重要作用。而且,隨著FPGA容量增大和功耗降低,以及內(nèi)部軟核的廣泛應(yīng)用,使用FPGA開(kāi)發(fā)數(shù)字電路,可以縮短設(shè)計(jì)時(shí)間、減少PCB面積、提高系統(tǒng)的可靠性,F(xiàn)PGA已成為解決系統(tǒng)級(jí)設(shè)計(jì)的重要選擇方案之一。本文在Actel的集成開(kāi)發(fā)環(huán)境Libem下編寫(xiě)了HDL代碼,利用內(nèi)部集成仿真工具M(jìn)od—elSim對(duì)設(shè)計(jì)進(jìn)行了時(shí)序仿真。

1 SpaceWire Codec接收端概述

SpaceWire標(biāo)準(zhǔn)餌CSS—E一50—12A)包括鏈路,節(jié)點(diǎn)和交換機(jī)三方面的內(nèi)容。SpaceWire采用線路交換形式,節(jié)點(diǎn)是指?jìng)鬏敯牧鞒鲈O(shè)備或者流向設(shè)備,鏈路是指數(shù)據(jù)包傳輸?shù)穆窂健?br />
SpaceWire是總線數(shù)據(jù)網(wǎng)絡(luò)結(jié)構(gòu),包括6層協(xié)議:物理層,信號(hào)層,字符層,交換層,信息包層和網(wǎng)絡(luò)層。SpaceWire Codec實(shí)現(xiàn)的是信號(hào)層,字符層和交換層的相關(guān)內(nèi)容。

SpaceWire物理層電纜采用九針微型D連接器.由四對(duì)雙絞線組成,傳輸四對(duì)差分信號(hào)。

SpaceWire信號(hào)層用LVDS差分信號(hào)傳輸,抑制了共模噪聲,保證了低電磁干擾。采用DS(data-strobe)編碼實(shí)現(xiàn)嵌入式時(shí)鐘總線傳輸,Ds編碼用data信號(hào)表示實(shí)際傳輸?shù)臄?shù)據(jù),strobe信號(hào)隨D信號(hào)變化而編碼,原則是在任一時(shí)鐘周期Ds信號(hào)只有一個(gè)發(fā)生變化,這樣DS信號(hào)異或就可得到接收端的時(shí)鐘。如圖1:



SpaceWire字符層定義了兩種類型的字符:四個(gè)控制字符和數(shù)據(jù)字符,采用奇校驗(yàn)方式。

串行比特流各個(gè)字符之間沒(méi)有分隔符,每個(gè)字符以奇偶檢驗(yàn)位開(kāi)始,第二位是ctrl—flag位,即區(qū)分?jǐn)?shù)據(jù)字符和控制字符的標(biāo)志,后面是不同的數(shù)據(jù)字符和控制字符。串行的比特流以包的形式傳輸,包以控制字符EOP標(biāo)志結(jié)尾。

SpaceWire交換層定義了鏈路的初始化和狀態(tài)機(jī)的運(yùn)轉(zhuǎn),實(shí)現(xiàn)鏈路的擁塞控制,檢測(cè)鏈路的斷開(kāi)等。

SpaceWire Codec由發(fā)送端,接收端和控制器組成,控制器根據(jù)接收端收到的不同數(shù)據(jù)字符控制狀態(tài)機(jī)的運(yùn)行,協(xié)調(diào)發(fā)送端和接收端的工作。

其中接收端實(shí)現(xiàn)時(shí)鐘恢復(fù),檢測(cè)DS信號(hào),判斷并處理Data數(shù)據(jù),進(jìn)行奇偶校驗(yàn),把數(shù)據(jù)字符送到fifo中,實(shí)現(xiàn)鏈路的擁塞控制,檢測(cè)鏈路的斷開(kāi)狀況等。這些功能的實(shí)現(xiàn)使用到不同的時(shí)鐘,設(shè)計(jì)時(shí)需要解決多時(shí)鐘域信號(hào)傳輸?shù)耐絾?wèn)題。

在本設(shè)計(jì)中。SpaceWire Codec接收端按照功能不同劃分為以下幾個(gè)模塊:


圖2接收端模塊劃分

上圖中的asyrst_n由epu復(fù)位信號(hào)和控制器的復(fù)位信號(hào)做組合邏輯得到。設(shè)計(jì)時(shí)用cpu配置鏈路狀態(tài),控制FPGA運(yùn)行。數(shù)據(jù)字符經(jīng)過(guò)6fo送到epu存儲(chǔ)區(qū)中。

2 時(shí)鐘域劃分

上圖中,虛線表示了不同的時(shí)鐘域。

用恢復(fù)的時(shí)鐘clk0進(jìn)行Ds信號(hào)的檢測(cè)和處理.在clk0時(shí)鐘域內(nèi)實(shí)現(xiàn)的是同步檢測(cè)和設(shè)計(jì)。由于DS信號(hào)不能通過(guò)自身恢復(fù)得到的時(shí)鐘去檢測(cè)DS鏈路的斷開(kāi).因此需要采用FPGA的pU模塊倍頻得到的高頻時(shí)鐘gclk 來(lái)檢測(cè)鏈路的斷開(kāi)狀_re況。在本設(shè)計(jì)中,擁塞控制要和發(fā)送端配合工作,發(fā)送端使用的是本地時(shí)鐘gclk,因此鏈路擁塞控制模塊也要用本地時(shí)鐘gclk來(lái)控制。用cpu時(shí)鐘clk_c讀走fifo中數(shù)據(jù),送到cpu存儲(chǔ)區(qū)中。

3 復(fù)位信號(hào)處理

接收端模塊的復(fù)位信號(hào)由cpu給出,鏈路狀態(tài)機(jī)運(yùn)行到復(fù)位狀態(tài)也要對(duì)接收端進(jìn)行復(fù)位。由于復(fù)位信號(hào)扇出很大,且要在不同的時(shí)鐘域起作用.因此對(duì)復(fù)位信號(hào)的處理相當(dāng)重要。

在接收端中,DS信號(hào)到來(lái)之前,DS信號(hào)檢測(cè)和Data數(shù)據(jù)一處理模塊的寄存器必須有確定的狀態(tài),這兩個(gè)模塊復(fù)位時(shí)clk0還沒(méi)有出現(xiàn),因此采用了不需要時(shí)鐘控制的異步復(fù)位。

對(duì)復(fù)位信號(hào)而言,復(fù)位信號(hào)的釋放和時(shí)鐘沿之間也存在時(shí)間約束關(guān)系,如同觸發(fā)器的D輸入端必須滿足建立和保持時(shí)間一樣,復(fù)位信號(hào)相對(duì)時(shí)鐘也必須滿足recovery time/removaltime。如圖3所示,recovery time指復(fù)位信號(hào)無(wú)效電平相對(duì)時(shí)鐘沿到來(lái)前的穩(wěn)定時(shí)間,removal time指復(fù)位信號(hào)無(wú)效電平相對(duì)時(shí)鐘沿到來(lái)后的穩(wěn)定時(shí)間。


圖3復(fù)位信號(hào)的recovery/removal time

4 DS信號(hào)的檢測(cè)

如圖4示,恢復(fù)的clkO時(shí)鐘是D信號(hào)頻率的1/2,用clk0檢測(cè)DS信號(hào),必須用elk0的上沿和下沿實(shí)現(xiàn),如下圖所示:


圖4 DS信號(hào)的檢測(cè)

clk0是DS組合邏輯得到的門(mén)控時(shí)鐘,且clk0的扇出很大,上沿和下沿都要用到,布局布線時(shí)將它放在全局時(shí)鐘bu雎r上,保證了clkO有最小的抖動(dòng)和偏移。

5 data數(shù)據(jù)處理

SpaceWire總線定義的串行數(shù)據(jù)的最大特點(diǎn)是各個(gè)不同的數(shù)據(jù)之間沒(méi)有分割字符。處理數(shù)據(jù)時(shí)不僅要對(duì)本次數(shù)據(jù)格式進(jìn)行正確判斷和校驗(yàn),并且要根據(jù)判讀和檢驗(yàn)結(jié)果指出下一個(gè)data起始位,否則下一個(gè)數(shù)據(jù)的判斷將會(huì)出現(xiàn)錯(cuò)誤。

設(shè)計(jì)中采取了串行移位寄存器的方法,設(shè)置了5個(gè)兩位的寄存器。在同—個(gè)cIkO周期內(nèi)能看到串行數(shù)據(jù)線上的10位串行數(shù)據(jù),根據(jù)不同數(shù)據(jù)位進(jìn)行判讀和奇偶校驗(yàn)。正確判讀后,根據(jù)不同的data數(shù)據(jù)長(zhǎng)度.分別用不同的ready信號(hào)指示下—個(gè)data的起始位,進(jìn)而進(jìn)行下一個(gè)數(shù)據(jù)格式的處理。

這些信號(hào)都是clkO時(shí)鐘域的同步信號(hào),且移位寄存器間沒(méi)有長(zhǎng)路徑延時(shí),這樣可以保證數(shù)據(jù)處理模塊的穩(wěn)定運(yùn)行。

6 多時(shí)鐘設(shè)計(jì)

接收端不同的時(shí)鐘域產(chǎn)生的信號(hào)是異步信號(hào),信號(hào)傳輸時(shí)需要同步到不同的時(shí)鐘域。數(shù)據(jù)信號(hào)通過(guò)fifo傳輸,控制信號(hào)在標(biāo)志位同步模塊中實(shí)現(xiàn)同步到gclk時(shí)鐘域。

在鏈路被動(dòng)啟動(dòng)時(shí),接收端收到NULL信號(hào)后,給出異got—NULL標(biāo)志,使link_enabh信號(hào)有效,鏈路由ready狀態(tài)進(jìn)入started狀態(tài),因此gotNULL信號(hào)電平有效。gotNULL信號(hào)由clkO時(shí)鐘域的DS數(shù)據(jù)處理模塊給出,需要同步到FPGA的本地時(shí)鐘域。電平同步通常用兩個(gè)D觸發(fā)器構(gòu)成同步器,第一級(jí)觸發(fā)器在采樣輸入信號(hào)時(shí)可能進(jìn)入亞穩(wěn)態(tài),后面的觸發(fā)器獲得前一個(gè)觸發(fā)器輸出時(shí),前一個(gè)觸發(fā)器已退出了亞穩(wěn)態(tài),并且輸出已穩(wěn)定.極大地減小了亞穩(wěn)態(tài)的發(fā)生。

其他的標(biāo)志位信號(hào),如gotDATA、gotFCT、gotEOP、gotEEP等都是脈沖有效,這些信號(hào)的同步是在電平同步的基礎(chǔ)上做組合邏輯實(shí)現(xiàn)的,如圖5所示:


圖5電平信號(hào)gotDATA的同步

在信號(hào)同步中,第二級(jí)寄存器的輸出是穩(wěn)定可用的,把第二級(jí)的輸出再延遲一拍,對(duì)gotDATA_2和gotDATA_3寄存器的輸出做組合邏輯,實(shí)現(xiàn)了一個(gè)gclk周期的有效電平。在時(shí)序允許的情況下,打一拍輸出,實(shí)現(xiàn)了脈沖有效信號(hào)的同步。

鏈路檢測(cè)模塊在gclk_re時(shí)鐘域?qū)崿F(xiàn),根據(jù)協(xié)議要求,當(dāng)離上一次DS信號(hào)出現(xiàn)850m后沒(méi)有Ds數(shù)據(jù)出現(xiàn),則認(rèn)為鏈路斷開(kāi)。該模塊給出的鏈路斷開(kāi)標(biāo)志link_dis相對(duì)gclk時(shí)鐘,是快時(shí)鐘域信號(hào),為了便于信號(hào)同步,link_dis標(biāo)志輸出電平而非脈沖。

結(jié)束語(yǔ)

本文介紹了SpaeeWire Codec接收端的時(shí)序設(shè)計(jì),給出了各個(gè)不同模塊的時(shí)鐘域劃分,門(mén)控時(shí)鐘和復(fù)位信號(hào)的有效處理,以及對(duì)串行數(shù)據(jù)的檢測(cè)和判讀,多時(shí)鐘域信號(hào)的同步等實(shí)現(xiàn)方法。

本文作者創(chuàng)新點(diǎn):對(duì)多時(shí)鐘域復(fù)位信號(hào)采用了對(duì)應(yīng)時(shí)鐘域的異步復(fù)位同步釋放方法;對(duì)串行總線數(shù)據(jù)判讀采用了串行移位寄存器的方法,便于數(shù)據(jù)的正確識(shí)別。對(duì)嵌入式時(shí)鐘總線傳輸?shù)慕邮斩嗽O(shè)計(jì)有一定的參考意義。


作者:曹海源    來(lái)源:《微計(jì)算機(jī)信息》2009年第1-2期
本文地址:http://www.qingdxww.cn/thread-9724-1-1.html     【打印本頁(yè)】

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

廠商推薦

  • Microchip視頻專區(qū)
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點(diǎn)宏來(lái)節(jié)省時(shí)間和空間
  • Dev Tool Bits——使用DVRT協(xié)議查看項(xiàng)目中的數(shù)據(jù)
  • Dev Tool Bits——使用MPLAB® Data Visualizer進(jìn)行功率監(jiān)視
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产一区二区在线免费观看 | 亚洲一级大片 | 99久久综合狠狠综合久久 | 国产一页| 一级特黄aaa大片在线观看 | 99久久99热精品免费观看国产 | 我不卡影院在线观看 | 99re8在线这里只有精品 | 91热久久免费频精品黑人99 | 特级毛片视频在线 | h在线看免费视频网站男男 h在线看 | 欧洲精品码一区二区三区免费看 | 久久一本热 | 男人天堂2019 | 91香蕉视频在线观看免费 | 亚洲国产成人久久综合一区 | 日本人爽p大片免费看 | 欧美手机手机在线视频一区 | 国产36d在线观看 | 夜色综合 | 91日韩精品天海翼在线观看 | 欧美激情视频二区三区 | 99热热热 | 四虎国产永久在线观看 | 四虎国产精品永久在线播放 | 中国一级片在线观看 | 印度幻女free性zozo交 | 视频一区二区在线 | 国产亚洲一区二区手机在线观看 | 99尹人香蕉国产免费天天在线 | 亚洲欧美成人综合 | 久久久久久国产精品视频 | 亚洲视频在线a视频 | 一二三四在线社区 | 四虎影视永久地址www成人污 | 欧美在线高清视频播放免费 | 免费成人高清视频 | 久久精品国产99久久久 | 偷偷鲁国内视频视频在线 | jizz日本zzz日本人 | 1024香蕉国产在线视频 |