999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA狀態(tài)機(jī)和片上總線的CompactPCI異步串口板設(shè)計(jì)方案

2014-04-29 00:00:00韓懷宇張建軍袁鳳
電子產(chǎn)品世界 2014年7期

摘要:首先簡要介紹了CompactPCI異步串口板的通常設(shè)計(jì)方法,并且提出了這些方法的不足之處,重點(diǎn)闡述了基于FPGA狀態(tài)機(jī)和片上總線的新設(shè)計(jì)方案,以及該方案的技術(shù)優(yōu)勢,隨后公布了基于該方案的異步串口板達(dá)到的性能指標(biāo)。通過比較有關(guān)應(yīng)答延遲的試驗(yàn)數(shù)據(jù),提出了基于FPGA狀態(tài)機(jī)和基于DSP處理器的異步串口板卡存在明顯的處理速度差異問題,并基于兩種設(shè)計(jì)方案,解釋了形成差異的原因。最后提出了FPGA狀態(tài)機(jī)對外部總線存儲(chǔ)器或端口的訪問管理性能大幅超越了任何一款DSP處理器的觀點(diǎn),并對同行提出了類似研發(fā)項(xiàng)目的設(shè)計(jì)建議。本文網(wǎng)絡(luò)版地址:http://www. eepw.com.cn/article/248894.htm

關(guān)鍵詞:狀態(tài)機(jī);片上總線;異步串口板;片上系統(tǒng)

DOI: 10.3969/j.issn.1005-5517.2014.6.009

引言

CompactPCI異步串口板安裝在工業(yè)計(jì)算機(jī)CompactPCI擴(kuò)展槽內(nèi),可實(shí)現(xiàn)工業(yè)計(jì)算機(jī)與外圍多路設(shè)備串口之間的異步串行通訊。異步串口板有多種設(shè)計(jì)方案,不同的設(shè)計(jì)方案決定了板卡具有不同的通訊性能和可靠性。根據(jù)任務(wù)要求,某重要設(shè)備的測試平臺(tái)必須達(dá)到36路通道、11種通訊協(xié)議、波特率4/19.2/38.4/57.6/115.2(kbps)、小于1ms的處理時(shí)間、通訊模式可配置和高可靠性的試驗(yàn)要求,因此測試平臺(tái)內(nèi)異步串口板的設(shè)計(jì)方案要面向上述試驗(yàn)要求而制定。

1 背景技術(shù)

1.1 現(xiàn)有技術(shù)

目前CompactPCI異步串口板一般采用以下兩類方法實(shí)現(xiàn)。

1.1.1 使用嵌入式處理器作數(shù)據(jù)處理單元

采用獨(dú)立的嵌入式處理器作為數(shù)據(jù)處理單元,異步串口單元要么使用嵌入式處理器自身的2到3個(gè)異步串口,要么使用連接到FPGA片內(nèi)總線的通用異步收發(fā)器或異步收發(fā)邏輯,從而建立起一主多從式總線結(jié)構(gòu)。

1.1.2 使用FPGA芯片集成收發(fā)邏輯和處理邏輯

采用FPGA芯片集成了若干獨(dú)立的異步串口通路,每個(gè)通路均有一對處理邏輯和收發(fā)邏輯,其中收發(fā)邏輯實(shí)現(xiàn)了一路串行數(shù)據(jù)的接受、發(fā)送和并串轉(zhuǎn)換,處理邏輯實(shí)現(xiàn)了一路串行數(shù)據(jù)的讀取、處理和存儲(chǔ)。

2 設(shè)計(jì)方案

2.1 設(shè)計(jì)思路

為便于性能比較,在采用第一類設(shè)計(jì)方案的總線式系統(tǒng)結(jié)構(gòu)基礎(chǔ)上,分別用TMS320C6416 DSP處理器和FPGA狀態(tài)機(jī)作處理單元,實(shí)現(xiàn)了兩塊異步串口板(兩者系統(tǒng)結(jié)構(gòu)、程序流程、通訊功能和軟硬件接口均相同)。每塊均在FPGA片上總線集成了36個(gè)UART軟核、1個(gè)雙口SDRAM接口邏輯、地址譯碼器、配置狀態(tài)寄存器區(qū),以及串口接收濾波邏輯等,兩者不同之處在于FPGA狀態(tài)機(jī)作處理單元的串口板在FPGA上實(shí)現(xiàn)了一個(gè)完整的片上系統(tǒng)。下文重點(diǎn)介紹了后者的實(shí)現(xiàn)方法、性能指標(biāo),并對兩者的處理速度進(jìn)行了比較和分析。

2.2 實(shí)現(xiàn)方法

2.2.1 板卡設(shè)計(jì)

基于FPGA狀態(tài)機(jī)和WISHBONE片上總線(圖中簡稱為WB總線)的36通路CompactPCI異步串口板系統(tǒng)架構(gòu)如圖1所示。

(1)雙口SDRM

采用IDT7132芯片作為數(shù)據(jù)緩沖區(qū),容量2k×8bit,讀寫周期均為20ns。為了避免上位機(jī)正在更新某數(shù)據(jù)區(qū),而與該數(shù)據(jù)區(qū)對應(yīng)的異步串口要求發(fā)送該數(shù)據(jù)區(qū)的情況,在設(shè)計(jì)中將雙口SDRAM的存儲(chǔ)空間分為兩部分,即上位機(jī)可寫訪問的一級(jí)緩沖區(qū)和WB總線處理邏輯可寫訪問的二級(jí)緩沖區(qū)。對應(yīng)36通路,一級(jí)和二級(jí)緩沖區(qū)均分成了72個(gè)子區(qū),每路異步串口對應(yīng)著一級(jí)緩沖區(qū)內(nèi)的一對發(fā)送子區(qū)和接收子區(qū),以及二級(jí)緩沖區(qū)內(nèi)的一對發(fā)送子區(qū)和接收子區(qū)。上位機(jī)可讀寫一級(jí)發(fā)送子區(qū),但只能讀一級(jí)接收子區(qū);WB總線處理邏輯只能讀一級(jí)發(fā)送子區(qū),可讀寫一級(jí)接收子區(qū)和二級(jí)所有子區(qū)。

(2)FPGA芯片

FPGA芯片為串口板核心器件,選用XC3S2000-4 FG456芯片,I/O口速度達(dá)到5ns。

①WB片內(nèi)總線

即WISHBONE片內(nèi)總線,是一種應(yīng)用普遍的、具有靈活性的IP核互聯(lián)接口。

②異步收發(fā)器

異步收發(fā)器為IP軟核,來源于opencores開源組織,支持WISHBONE接口,與通用異步收發(fā)器兼容,每個(gè)可實(shí)現(xiàn)一路全雙工異步串口通訊。

③雙口SDRM總線接口邏輯

片內(nèi)有兩個(gè)獨(dú)立的雙口SDRAM總線接口邏輯,分別實(shí)現(xiàn)了雙口SDRAM與WISHBONE總線和LOCAL總線的邏輯連接。

④LOCAL總線寄存器區(qū)

為了方便上位機(jī)對各異步串口獨(dú)立靈活配置、全面監(jiān)控工作狀態(tài),必須設(shè)置可供上位機(jī)訪問的若干配置寄存器和狀態(tài)寄存器, 而且LOCAL總線寄存器區(qū)邏輯是上位機(jī)與片內(nèi)WB總線處理邏輯之間的通訊橋梁。

⑤地址譯碼邏輯

片內(nèi)有兩個(gè)獨(dú)立的地址譯碼邏輯,分別根據(jù)LOCAL總線地址和WISHBONE總線地址,片選總線從邏輯。

⑥串口接收濾波邏輯

片內(nèi)36個(gè)獨(dú)立的串口接收濾波邏輯,每個(gè)對應(yīng)一路異步收發(fā)器的接收端,可濾除正負(fù)跳變寬度小于1ms的毛刺,但會(huì)造成1ms的信號(hào)延遲。

⑦WB總線處理邏輯

即WISHBONE總線狀態(tài)機(jī),實(shí)現(xiàn)了訪問WISHBONE總線、數(shù)據(jù)處理、數(shù)據(jù)存儲(chǔ)和各串口通訊協(xié)議的功能。主要任務(wù)是根據(jù)上位機(jī)設(shè)置的LOCAL總線配置寄存器區(qū),設(shè)置各異步收發(fā)器的工作模式,接收串口數(shù)據(jù),遵循通訊協(xié)議,發(fā)送串口數(shù)據(jù),完成一級(jí)、二級(jí)緩沖區(qū)數(shù)據(jù)更新或復(fù)制,并將各串口通道的工作狀態(tài)標(biāo)識(shí)到LOCAL總線狀態(tài)寄存器區(qū),供上位機(jī)查詢。

2.2.2 處理流程

如果上位機(jī)請求更新一級(jí)緩沖區(qū)的某子區(qū),上位機(jī)查詢“FPGA訪問雙口SDRAM一級(jí)緩沖區(qū)標(biāo)志”,若為真,則等待;否則置位“上位機(jī)訪問雙口SDRAM一級(jí)緩沖區(qū)標(biāo)志”,更新一級(jí)緩沖區(qū)的發(fā)送子區(qū),完畢后復(fù)位“上位機(jī)訪問雙口SDRAM一級(jí)緩沖區(qū)標(biāo)志”,產(chǎn)生“更新二級(jí)緩沖區(qū)的中斷請求”。WB總線處理邏輯響應(yīng)該中斷,查詢“上位機(jī)訪問雙口SDRAM一級(jí)緩沖區(qū)標(biāo)志”,若為真,則等待;否則置位“FPGA訪問雙口SDRAM一級(jí)緩沖區(qū)標(biāo)志”,讀訪問一級(jí)緩沖區(qū)的相應(yīng)發(fā)送子區(qū),并存入二級(jí)緩沖區(qū)的相應(yīng)發(fā)送子區(qū),完畢后復(fù)位“FPGA訪問雙口SDRAM一級(jí)緩沖區(qū)標(biāo)志”。在WB總線處理邏輯更新二級(jí)緩沖區(qū)期間,暫不響應(yīng)異步串口交易中斷。

如果某異步收發(fā)器存在接收發(fā)送任務(wù),即串口交易中斷請求存在,WB總線處理邏輯讀訪問該異步收發(fā)器的中斷狀態(tài)寄存器,如果是發(fā)送中斷,繼續(xù)發(fā)送下一字節(jié),并退出,循環(huán)直至發(fā)送幀結(jié)束;如果是接收中斷,讀訪問接收數(shù)據(jù)寄存器,并將數(shù)據(jù)存入二級(jí)緩沖區(qū)對應(yīng)接收子區(qū)。每接收一個(gè)字節(jié)后,延遲半位,未出現(xiàn)新的接收數(shù)據(jù)中斷,則認(rèn)為已收到完整數(shù)據(jù)幀。隨后設(shè)置“二級(jí)緩沖區(qū)接收子區(qū)覆蓋一級(jí)緩沖區(qū)接收子區(qū)”中斷請求。如果上位機(jī)未訪問一級(jí)緩沖區(qū),則WB總線處理邏輯響應(yīng)上述中斷,執(zhí)行二級(jí)至一級(jí)的某接收子區(qū)“數(shù)據(jù)復(fù)制”,任務(wù)結(jié)束后,清相應(yīng)中斷;如果上位機(jī)正在訪問一級(jí)緩沖區(qū),則等待時(shí)機(jī)再復(fù)制數(shù)據(jù)。

3 試驗(yàn)數(shù)據(jù)分析

在聯(lián)機(jī)試驗(yàn)中,測試平臺(tái)先后使用了由TMS320C6416 DSP處理器和XC3S2000 FPGA狀態(tài)機(jī)作處理單元的異步串口板,分組測試了相同波特率的通道,及全部通道,通訊周期200ms,每通道間隔5ms。試驗(yàn)重點(diǎn)考察應(yīng)答延遲時(shí)間,其由兩部分組成,分別是固有延遲和處理延遲。其中固有延遲由為濾波設(shè)置的1ms濾波延遲和為判斷接收幀結(jié)束而設(shè)置的半位延遲組成,半位延遲與波特率成反比。處理延遲由處理單元訪問總線端口、數(shù)據(jù)處理和實(shí)現(xiàn)通訊協(xié)議所耗時(shí)間組成,實(shí)測應(yīng)答延遲時(shí)間統(tǒng)計(jì)如表1所示。

從統(tǒng)計(jì)表得出如下結(jié)論。

(1)無論采用何種處理單元,處理延遲與波特率和通訊數(shù)據(jù)量無關(guān)。因?yàn)樯衔粰C(jī)已將數(shù)據(jù)寫入各通道的數(shù)據(jù)發(fā)送子區(qū),依據(jù)接收幀命令參數(shù),DSP處理器和FPGA狀態(tài)機(jī)只需進(jìn)行簡單邏輯和算法運(yùn)算即可獲得發(fā)送數(shù)據(jù)幀,對于4-115.2kbps之間的波特率和12字節(jié)的數(shù)據(jù)量,有充分時(shí)間裕量,不會(huì)出現(xiàn)處理瓶頸。

(2)TMS320C6416 DSP處理器作處理單元時(shí),處理延遲及其變化范圍較大,而且通道數(shù)越多,處理延遲及其變化范圍越大,反之則越小。因?yàn)镈SP處理器I/O端口數(shù)量有限,當(dāng)串口通道數(shù)量較多時(shí),DSP處理器要通過片上總線訪問異步收發(fā)器、SDRAM,和相當(dāng)數(shù)量的輸入/輸出端口,以便和上位機(jī)、FPGA交換數(shù)據(jù)和信號(hào)。為了及時(shí)傳輸這些信號(hào),DSP處理器還需要以一定的頻率巡檢這些信號(hào)。另外DSP處理器所有處理過程都是順序執(zhí)行的,處理時(shí)間與程序語句數(shù)量成正比關(guān)系。

(3)XC3S2000 FPGA狀態(tài)機(jī)作處理單元時(shí),處理延遲及其變化范圍很小,而且與通道數(shù)量無關(guān)。因?yàn)?FPGA集成片上系統(tǒng)后,其狀態(tài)機(jī)與其它片上邏輯之間的信號(hào)傳輸通過片內(nèi)布線完成,而布線資源幾乎不受限,不僅簡化了處理單元的處理任務(wù),而且保證了信號(hào)的實(shí)時(shí)傳輸,不必巡檢端口。另外FPGA狀態(tài)機(jī)不僅能夠通過狀態(tài)轉(zhuǎn)移完成時(shí)序功能,而且能夠通過并行處理完成算法功能,所以全部處理時(shí)間基本由訪問總線端口的程序語句數(shù)量決定,與算法和通道數(shù)量幾乎無關(guān)。

(4) FPGA狀態(tài)機(jī)對外部總線或端口的訪問管理性能大幅超越了TMS320C6416 DSP處理器,片上邏輯之間的信號(hào)實(shí)時(shí)傳輸能力也大幅超越了后者。而高性能DSP處理器僅在內(nèi)存中運(yùn)行程序時(shí)速度快,但在管理外部總線存儲(chǔ)器或端口時(shí),其優(yōu)勢無法發(fā)揮。

4 建議

建議同行在研制“具有高時(shí)序性能的、多外設(shè)接口的、功能單一的設(shè)備”時(shí),參考上述基于FPGA狀態(tài)機(jī)和片上總線的設(shè)計(jì)方案。

參考文獻(xiàn):

[1]詹必勝,吳斌方,楊光友.多路同步串口的FPGA傳輸實(shí)現(xiàn)[J].電子產(chǎn)品世界,2009(5):38-40

[2]Xilinx, Inc. Spartan-3 FPGA Family: Complete Datasheet[M].2004

[3]Opencores.WISHBONE System-on-Chip (SoC) Interconnection Architecture for Portable IP Cores[M]. Revision:B.3.2002

[4]Gorban J.UART IP Core[M].Revision: 0.6.2002

[5]孫進(jìn)平,王俊,李偉,等.DSP/FPGA嵌入式實(shí)時(shí)處理技術(shù)及應(yīng)用[M].北京:航空航天大學(xué)出版社,2011

主站蜘蛛池模板: 日韩av无码精品专区| 国产情侣一区二区三区| 高潮毛片免费观看| 波多野结衣视频一区二区| 99精品高清在线播放| 极品私人尤物在线精品首页| 国产浮力第一页永久地址| 91麻豆精品国产高清在线| 亚洲精品男人天堂| 欧美特黄一免在线观看| 国产男女免费视频| 九九久久精品免费观看| 伊人久久精品亚洲午夜| 99999久久久久久亚洲| 日韩精品免费一线在线观看| 毛片大全免费观看| 2021无码专区人妻系列日韩| 91福利免费| 亚洲天堂日本| a级毛片在线免费观看| 人人妻人人澡人人爽欧美一区| 中文字幕亚洲精品2页| 人人妻人人澡人人爽欧美一区| 国产亚洲精品在天天在线麻豆| 午夜欧美理论2019理论| 四虎成人精品| 欧美一区二区三区不卡免费| 欧美不卡视频在线| 九九香蕉视频| 亚洲熟女偷拍| 欧美激情第一欧美在线| 99精品影院| 亚洲日本中文综合在线| 精品三级在线| 日本欧美成人免费| 欧美啪啪一区| 亚洲中文字幕在线观看| 国产在线一区视频| 欧美色视频网站| 国产午夜无码片在线观看网站| 国产a网站| 欧美精品在线看| 欧美成人午夜影院| 日韩高清中文字幕| 无码在线激情片| 午夜视频日本| 亚洲AⅤ综合在线欧美一区| 无码中文AⅤ在线观看| 无码网站免费观看| 91亚洲免费| 国产美女精品一区二区| 粉嫩国产白浆在线观看| 色屁屁一区二区三区视频国产| 欧美a在线视频| 精品乱码久久久久久久| 玖玖精品在线| 91系列在线观看| 人妻一区二区三区无码精品一区| 91福利一区二区三区| 欧美在线视频a| 青草午夜精品视频在线观看| 久久久久免费看成人影片| 免费无码AV片在线观看国产| 在线a网站| 伊人无码视屏| 真人免费一级毛片一区二区| 99精品视频在线观看免费播放| 国语少妇高潮| 五月天综合婷婷| 制服丝袜国产精品| 欧美色综合久久| 亚洲一区二区在线无码| 国产超薄肉色丝袜网站| 国产成人综合亚洲欧美在| 久久国产成人精品国产成人亚洲| 欧美日韩一区二区三区在线视频| 欧洲一区二区三区无码| 性欧美久久| 精品国产网| 国产经典免费播放视频| 国产精品久久久久无码网站| 免费无码网站|