當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于NiosⅡ的嵌入式高速邏輯分析儀

1 引言
由于數(shù)字信號(hào)只有高電平和低電平兩種情況,因此,用單片機(jī) (MCU)就可直接實(shí)現(xiàn)多路數(shù)字信號(hào)進(jìn)行采集和邏輯分析。但由于單片機(jī)的時(shí)鐘頻率較低,完成一次采樣的時(shí)間受程序執(zhí)行指令速度的限制,采樣速率通常不超過 1MHz。因此,用單片機(jī)只能實(shí)現(xiàn)對(duì)低速率數(shù)字信號(hào)進(jìn)行邏輯分析。FPGA的工作時(shí)鐘速率通常可達(dá) 200MHz以上,可對(duì)高速數(shù)字信號(hào)進(jìn)行采樣,但普通的 FPGA在與外部設(shè)備進(jìn)行數(shù)據(jù)交換時(shí)顯得不靈活。為了解決上述問題,通常是將 MCU與 FPGA結(jié)合起來,用 FPGA對(duì)高速數(shù)字信號(hào)進(jìn)行采樣,用 MCU負(fù)責(zé)與外部設(shè)備進(jìn)行數(shù)據(jù)交換,從而實(shí)現(xiàn)對(duì)高速數(shù)字信號(hào)進(jìn)行邏輯分析,如圖 1所示。

500)this.style.width=500;" border="0" />
 隨著可編程邏輯器件的發(fā)展,Altera公司研發(fā)了可以嵌入軟 CPU核的 Cyclone系列和 Stratix系列的 FPGA芯片。嵌入式軟核與普通硬核的昀大差別在于它的可裁減性,設(shè)計(jì)者可根據(jù)設(shè)計(jì)需求定制出不同結(jié)構(gòu)的軟核處理器。軟 CPU核的嵌入實(shí)現(xiàn)了 CPU與 FPGA的無縫連接,使芯片既能處理高速數(shù)字信號(hào),又能方便靈活地與芯片外部設(shè)備進(jìn)行數(shù)據(jù)交換,還增加了系統(tǒng)的集成度和可靠性。
2 定制軟 CPU核
軟核的定制要利用 Altera公司提供的 SOPC Builder軟件。
2.1定制 NiosⅡ處理器早期的軟核處理器是 Nios,但其穩(wěn)定性不夠好,現(xiàn)已被 NiosⅡ所替代。 NiosⅡ處理器有三種類型: e(經(jīng)濟(jì)型 )、s(標(biāo)準(zhǔn)型)和 f(增強(qiáng)型)。選擇不同類型的處理器所占用的邏輯資源和存儲(chǔ)器資源大小不同,處理器的運(yùn)算速度處理能力也有所差別。
2.2定制片內(nèi) RAM
片內(nèi) RAM作為軟核程序的運(yùn)行空間,對(duì)于沒有擴(kuò)展外部存儲(chǔ)器的設(shè)計(jì),片內(nèi) RAM是必須的部分。通過軟件設(shè)計(jì)向?qū)?,可以設(shè)置片內(nèi)存儲(chǔ)器的類型,大小,以及初始化文件。 Cyclone系列芯片有 13~64個(gè)片內(nèi) RAM塊,每個(gè) RAM塊的大小是 4K(128字×36位),用戶可根據(jù)需要設(shè)置存儲(chǔ)器的字?jǐn)?shù)和字長(zhǎng)。當(dāng)定義的字?jǐn)?shù)超過 128時(shí),多個(gè) RAM塊可組成在一起,構(gòu)成更大容量的存儲(chǔ)器,滿足設(shè)計(jì)要求。
2.3定制 UART接口
UART接口是軟核與計(jì)算機(jī)通信的主要接口,通過設(shè)計(jì)向?qū)Э啥ㄖ?UART接口。在定制 UART接口時(shí),可以設(shè)置其波特率,校驗(yàn)位,是否允許 DMA控制。通過此基本設(shè)置,軟核可以與 PC機(jī)之間實(shí)現(xiàn)串口通信的功能。
2.4定制 LCD控制端口和鍵盤控制端口此類端口是普通 I/O端口,設(shè)置比較簡(jiǎn)單。需要注意的是 LCD的數(shù)據(jù)端口是 8位的雙向端口。當(dāng)定制了以上 4部分后,即可生成軟 CPU核。
3 最小系統(tǒng)形成
完成定制軟核后,需要對(duì)軟核編程,形成基于軟核的昀小系統(tǒng)。
對(duì)軟核的編程在 Nios ⅡIDE環(huán)境下進(jìn)行。首先利用軟件生成針對(duì)某軟核的模版程序,用戶程序都可以從模版開始。在生成模版程序的同時(shí),也形成了 system.h文件,此文件中包含了對(duì)用戶編程有用的許多信息,包括所有端口的地址空間分配,中斷號(hào)等。在文件 altera_avalon_pio_regs.h中包含了對(duì)普通 I/O端口進(jìn)行讀寫操作的函數(shù),通過對(duì)函數(shù)的調(diào)用可實(shí)現(xiàn)對(duì)端口的操作。在文件 altera_avalon_uart_regs.h中包含了對(duì) UART操作的基礎(chǔ)函數(shù),對(duì)串口的所有操作,都可通過對(duì)此中函數(shù)的調(diào)用來完成。

500)this.style.width=500;" border="0" />

 

在昀小系統(tǒng)中,實(shí)現(xiàn)軟核對(duì) LCD的數(shù)據(jù)交換,讀取鍵盤值,以及與計(jì)算機(jī)之間的通信。本設(shè)計(jì)鍵盤使用 4*4鍵盤,顯示器采用 240*128點(diǎn)陣 LCD顯示模塊。主要子程序流程圖如圖 2所示。[!--empirenews.page--]
4 基于軟核的邏輯分析儀設(shè)計(jì)
4.1總體結(jié)構(gòu)
基于 NiosⅡ的邏輯分析儀,采用 FPGA硬件對(duì)數(shù)據(jù)采集和存儲(chǔ),NiosⅡ軟核進(jìn)行交互、控制和通信,并且可以通過 LCD顯示所采集數(shù)據(jù)的邏輯狀態(tài)或通過 RS-232接口與 PC機(jī)通信,在 PC上顯示數(shù)據(jù)的波形并對(duì)數(shù)據(jù)長(zhǎng)期存儲(chǔ)。另外,通過鍵盤可對(duì)邏輯分析儀的采樣頻率、觸發(fā)方式等參數(shù)進(jìn)行設(shè)置,這些設(shè)置也都可以通過 PC機(jī)進(jìn)行。邏輯分析儀的整體結(jié)構(gòu)如圖 3所示。
 

500)this.style.width=500;" border="0" />

4.2嵌入模塊
4.2.1觸發(fā)核模塊
觸發(fā)核主要決定什么時(shí)候采集數(shù)據(jù),什么時(shí)候完成對(duì)數(shù)據(jù)的采集。在本設(shè)計(jì)中,觸發(fā)條件分上升沿觸發(fā)、下降沿觸發(fā)、高電平觸發(fā)和低電平觸發(fā)四種。區(qū)分這 4種觸發(fā)信息至少要用到連續(xù)兩個(gè)時(shí)鐘的數(shù)據(jù),因此每級(jí)觸發(fā)條件有兩個(gè)條件判斷字,觸發(fā)核通過兩次比較判斷是否觸發(fā)。觸發(fā)核是硬件核,由組合電路和觸發(fā)器組成。
4.2.2 PLL模塊
在對(duì)數(shù)字信號(hào)進(jìn)行采樣時(shí),需要的時(shí)鐘頻率至少應(yīng)是數(shù)字信號(hào)波特率的 5倍。Cyclone器件的嵌入式數(shù)字 PLL要求外部輸入 CLK信號(hào)昀低頻率不能低于 20MHz,可通過分頻的方式得到低頻 CLK,通過倍頻的方式得到高頻 CLK,也可通過倍頻和分頻組合得到特殊的輸出頻率,本設(shè)計(jì)采用 25倍頻和 2分頻,使昀高時(shí)鐘頻率達(dá) 250MHz。
4.2.3數(shù)據(jù)存儲(chǔ)模塊

由于軟核在工作時(shí)也是在執(zhí)行指令,運(yùn)行速度不快,不能完成對(duì)高速數(shù)字信號(hào)的采集。為此,本設(shè)計(jì)在 FPGA芯片中嵌入了 FIFO,作為數(shù)據(jù)的緩存。所采集的數(shù)據(jù),首先存入 FIFO存儲(chǔ)器中,這個(gè)過程全部通過硬件完成,每個(gè)采樣時(shí)鐘周期可完成一次數(shù)據(jù)的寫入操作。當(dāng) FIFO中數(shù)據(jù)寫滿時(shí),存儲(chǔ)器將通知軟核讀取數(shù)據(jù),軟核完成數(shù)據(jù)的處理、顯示和傳輸?shù)炔僮鳌?br />由于 Cyclone器件中 FIFO的容量不大,若采用固定的采用時(shí)鐘,當(dāng)輸入數(shù)字信號(hào)的波特率較低時(shí),F(xiàn)IFO存儲(chǔ)的數(shù)據(jù)可能還不到一個(gè)碼元寬度的數(shù)據(jù),從而無法在 LCD上顯示其波形。因此,本設(shè)計(jì)采用了程控調(diào)整采樣速率,從而保證了無論是低波特率信號(hào)還是高波特率信號(hào),系統(tǒng)都能正確采樣和顯示波形。
4.3軟核設(shè)計(jì)軟核作為設(shè)計(jì)的控制核心具有重要作用,為了完成對(duì) 8路數(shù)據(jù)觸發(fā)模式的設(shè)置,以及與
PC機(jī)通信,在用 SOPC Builder軟件定制軟核時(shí),為其加入了 UART接口和若干位輸入輸出端口,這些端口也實(shí)現(xiàn)了通過鍵盤對(duì)各路數(shù)據(jù)觸發(fā)方式和其它各參數(shù)的設(shè)置。
4.4軟件設(shè)計(jì)

本設(shè)計(jì)編程語言采用的是 C++,軟件流程包括參數(shù)設(shè)置、觸發(fā)判斷、數(shù)據(jù)采集、分析與通信、圖形顯示五個(gè)方面,主程序流程如圖 5所示。

500)this.style.width=500;" border="0" />

[!--empirenews.page--]
5 結(jié)束語
本設(shè)計(jì)通過在 Cyclone芯片中嵌入軟 CPU、數(shù)字 PLL、FIFO和 UART,實(shí)現(xiàn)了單片式 8路高速數(shù)字信號(hào)分析儀。可用鍵盤改變采樣速率,滿足對(duì)不同速率的數(shù)字信號(hào)進(jìn)行采樣;用點(diǎn)陣式 LCD顯示所采集的 8路數(shù)字信號(hào);也可通過串口將采集的數(shù)據(jù)傳輸?shù)?PC機(jī)進(jìn)行存儲(chǔ)、處理和顯示。本設(shè)計(jì)的時(shí)鐘頻率昀高可 250MHz(CycloneⅡ芯片所支持的昀高工作頻率),從而可以對(duì) 8路波特率為 50Mbs的數(shù)字信號(hào)進(jìn)行采集與顯示。
圖 5是通過嵌入式邏輯分析儀采集后,通過串行通信口送到 PC機(jī),在 PC機(jī)屏幕上顯示的 8路數(shù)字信號(hào)實(shí)拍照片。
 500)this.style.width=500;" border="0" />


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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

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

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(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)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

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

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

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

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