當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]一種基于FPGA核系統(tǒng)的智能429-422信號轉(zhuǎn)換模塊的設(shè)計(jì)

摘要:介紹了一種智能信號轉(zhuǎn)換模塊的設(shè)計(jì)方法。這種智能模塊采用了基于FPGA嵌入式軟核系統(tǒng),是基于NiosII軟核處理器的架構(gòu),可以在模塊上完全實(shí)現(xiàn)外部總線信號之間相互轉(zhuǎn)換,無需驅(qū)動程序或操作系統(tǒng)的干預(yù)。同時對用戶邏輯設(shè)計(jì)、用戶邏輯集成、固件設(shè)計(jì)技術(shù)等內(nèi)容進(jìn)行了詳細(xì)的介紹。
關(guān)鍵詞:現(xiàn)場可編程門陣列;軟核;智能

0 引言
    在工業(yè)控制等領(lǐng)域的計(jì)算機(jī)系統(tǒng)中廣泛涉及到信號轉(zhuǎn)換等,信號轉(zhuǎn)換模塊在系統(tǒng)中承擔(dān)著在多種信號之間進(jìn)行翻譯轉(zhuǎn)換的任務(wù)。隨著應(yīng)用環(huán)境復(fù)雜性、計(jì)算機(jī)系統(tǒng)集成度的提高,信號轉(zhuǎn)換模塊上需容納的信號通道的種類與數(shù)量也越來越多。頻繁、大量的信號轉(zhuǎn)換必然會占用較多的系統(tǒng)資源。隨著微電子技術(shù)的發(fā)展,國外的一些生產(chǎn)廠商如Altera已推出在FPGA上以軟核(soft core)方式實(shí)現(xiàn)的嵌入式系統(tǒng)。這種嵌入式系統(tǒng)基于NIOS II嵌入式軟核處理器,其外設(shè)可以靈活選擇增刪,并允許自定制外設(shè)。本文介紹了一種基于NIOSⅡ軟核系統(tǒng)的智能429-422信號轉(zhuǎn)換模塊的設(shè)計(jì)。

1 設(shè)計(jì)原理
    傳統(tǒng)的非智能設(shè)計(jì)的轉(zhuǎn)換模塊,在工作時需要有驅(qū)動程序的控制,通過與操作系統(tǒng)或用戶軟件的交互,來實(shí)現(xiàn)信號轉(zhuǎn)換的功能,亦即需要接入PCI Bus等系統(tǒng)總線,通過中斷提請等方式工作,在轉(zhuǎn)換通道數(shù)量多時,必然會影響系統(tǒng)的性能。采用智能設(shè)計(jì)的信號轉(zhuǎn)換模塊一般不需要操作系統(tǒng)的干預(yù),接收到的外部總線信號經(jīng)過本模塊上NIOS II軟核系統(tǒng)轉(zhuǎn)換后,即可將數(shù)據(jù)信號輸出。信號轉(zhuǎn)換的工作全部由模塊的硬件完成,因而可以實(shí)現(xiàn)對整個計(jì)算機(jī)系統(tǒng)資源的零占用。采用非智能設(shè)計(jì)與智能設(shè)計(jì)模塊的結(jié)構(gòu)示意框圖如圖1所示。



2 硬件設(shè)計(jì)
    429或422總線適配電路已有大量成熟的設(shè)計(jì),本文不再贅述,僅重點(diǎn)介紹FPGA內(nèi)部總線控制邏輯設(shè)計(jì)以及NiosⅡ軟核系統(tǒng)的配置。

2.1 FPGA控制邏輯設(shè)計(jì)
    集成于FAPGA內(nèi)部的Nios II CPU需要通過外部總線控制邏輯才能與外部總線進(jìn)行通信,而Avalon總線是Nios II CPU與外部總線控制邏輯、片外FLASH、SRAM之間交換數(shù)據(jù)信號的樞紐。Avalon總線是一種協(xié)議較為簡單的片內(nèi)總線,在NiosⅡ系統(tǒng)中,外設(shè)都是通過Avalon總線與Nios II CPU相接的。Avalon總線接口可以分成兩類:Slave和Master,Slave和Master主要區(qū)別是對于Avalon總線控制權(quán)的掌握。Master接口具有與之相接的Avalon總線的控制權(quán),而Slave接口是被動的。Avalon總線支持自定制外設(shè),用戶可將自己的邏輯設(shè)計(jì)掛接到Avalon總線上。基于NIOSⅡ軟核系統(tǒng)的智能429-422信號轉(zhuǎn)換模塊設(shè)計(jì)的詳細(xì)系統(tǒng)結(jié)構(gòu)框圖如圖2所示。

[!--empirenews.page--]
2.1.1 串行總線控制邏輯設(shè)計(jì)
    為了將用戶自定制的串行總線控制邏輯接入NiosⅡ系統(tǒng),必須將其掛入Avalon總線。串行總線控制邏輯在設(shè)計(jì)上必須實(shí)現(xiàn)兩類端口:一類為Avalon總線端口,Avalon總線時序由NiosⅡ系統(tǒng)實(shí)現(xiàn),用戶在邏輯設(shè)計(jì)時可暫不作考慮;另一類為串行總線控制端口。串行總線讀操作時序如圖3所示,圖中給出了操作時各信號的時序保持關(guān)系。

    讀時序在設(shè)計(jì)上可以抽象為一個有限狀態(tài)機(jī),如圖4所示。其工作流程為:無數(shù)據(jù)傳輸時,狀態(tài)機(jī)停留在空閑狀態(tài);若有數(shù)據(jù)操作請求時,進(jìn)入“地址有效”的狀態(tài);再進(jìn)入“讀信號有效”狀態(tài),依次完成“數(shù)據(jù)讀取”、“操作安全間隔”狀態(tài)(FPGA片外器件要求的兩次操作之間的最小間隔)??紤]到異常產(chǎn)生后狀態(tài)機(jī)的穩(wěn)定性,每個狀態(tài)都可以在異常產(chǎn)生時返回到默認(rèn)的“空閑”狀態(tài)。同時,有些狀態(tài)作了些等待延時,是為了讓控制邏輯與FPGA外部較慢速的器件進(jìn)行時序匹配。串行總線寫操作時序與讀操作時序相類似。


2.1.2 429總線控制邏輯設(shè)計(jì)
    429總線控制邏輯設(shè)計(jì)和串行總線控制邏輯設(shè)計(jì)方法與上文所述類似,這里不再重復(fù)。

[!--empirenews.page--]

2.2 NiosIICPU的配置
    需要將自定制外設(shè)集成進(jìn)嵌入式系統(tǒng)。本設(shè)計(jì)所使用的FPGA是Altera公司的EP2C35,可在Altera公司推出的開發(fā)軟件Quartus II里對NiosⅡCPU進(jìn)行配置。操作步驟為:在System contents中新建一個組件,在彈出的Component Editor窗口中的HDL Files欄中導(dǎo)入用戶設(shè)計(jì)好的422接口控制邏輯設(shè)計(jì)的verilog文件;Signals一欄中,Component Editor已自動解析出導(dǎo)入的verilog文件所包含的端口Name,但用戶還需對端口的類型進(jìn)行指定,串行總線方向的端口須指定為export(相對于Avalon Slave端口而言)類型,Avalon總線方向的端口分別指定為標(biāo)準(zhǔn)的address、write、read、writedata、readdata等信號,如圖5所示。


    設(shè)置完成后的自定制器件出現(xiàn)在Custom Devices中,可以將自定制的器件加入到Nios Ⅱ系統(tǒng)中,由Nios Ⅱ系統(tǒng)為其自動批定內(nèi)存地址等資源。編譯無誤后即可完成NiosII CPU的設(shè)置。

3 軟件設(shè)計(jì)
    Nios II嵌入式系統(tǒng)使用Altera公司提供的開發(fā)環(huán)境Nios Ⅱ IDE,Nios II IDE使用標(biāo)準(zhǔn)的C/C++語言作為編程語言,因此開發(fā)入門門檻不高。軟件設(shè)計(jì)時,除了包含指定的system.h,alt_main.h等頭文件,用戶應(yīng)針對被集成進(jìn)入系統(tǒng)的自定制器件編寫相應(yīng)的頭件,即將Al-tera提供的基本命令重新封裝成用戶自定義的軟件命令,以使用戶的程序更加直觀、更具有可讀性。


    軟件流程圖如圖6示。在每次上電復(fù)位后,智能模塊應(yīng)對整個系統(tǒng)進(jìn)行重新初始化,包括外設(shè)控制字的配置以及緩存初始化等工作。初始化完成后,應(yīng)首先檢查有無接收請求,如有請求,則開始接收、轉(zhuǎn)換數(shù)據(jù),并寫入發(fā)送緩存,然后再判斷一次有無接收請求,如無,才轉(zhuǎn)入發(fā)送流程。發(fā)送完一次數(shù)據(jù)后,再次檢查接收請求。這種做法提高了數(shù)據(jù)接收事件的優(yōu)先權(quán),可以保證接收數(shù)據(jù)不丟失。

4 結(jié)束語
    基于NIOSⅡ軟核系統(tǒng)的智能429-422信號轉(zhuǎn)換模塊采用了智能化的設(shè)計(jì)技術(shù),對比于非智能信號轉(zhuǎn)換模塊,具有零系統(tǒng)資源占用、可配置性強(qiáng)、轉(zhuǎn)換速度快等特點(diǎn),同時由于無須開發(fā)驅(qū)動軟件,因而明顯縮短了研發(fā)周期,在工業(yè)控制等計(jì)算機(jī)系統(tǒng)中將會有廣泛的應(yīng)用。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(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)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

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

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

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

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(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 手機(jī) 衛(wèi)星通信

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

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

北京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ù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

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