基于SOPC的分布式干擾系統(tǒng)嵌入式網(wǎng)關(guān)設(shè)計(jì)
2.2 SoPC的片上總線設(shè)計(jì)
受分布式干擾系統(tǒng)體積和電源能量的限制,其網(wǎng)絡(luò)通信必須采用猝發(fā)通信的方式,這就對嵌入式網(wǎng)關(guān)微處理器的處理能力提出了更高的要求。MicroBlaze微處理器的總線是其優(yōu)于其他同類CPU的重要部分,每種總線都有鮮明的特點(diǎn)和明確的外設(shè)。只有合理使用不同的總線來訪問不同的外設(shè),且正確地協(xié)調(diào)這些總線的工作,才能最大限度地發(fā)揮MicroBlaze的優(yōu)勢。因此,SoPC的片上總線設(shè)計(jì)是該系統(tǒng)設(shè)計(jì)的重點(diǎn)。
Xilinx以IBM CoreConnect總線通信鏈為嵌入式處理器的設(shè)計(jì)基礎(chǔ),提供了豐富的接口資源,主要有處理器本地總線(Processor Local Bus,PLB)接口、高速的本地存儲器總線(LMB,Local Memory Bus)接口、快速單連接(Fast Simplex Link,F(xiàn)SL)主從設(shè)備接口、緩存鏈路(Xilinx Cache Link,Xilinx,XCL)接口。PLB總線可將外設(shè)IP核連接到Microblaze系統(tǒng)中,常用在速度要求不高的場合;LMB專門用于實(shí)現(xiàn)對片上的塊RAM的高速訪問;XCL則用于實(shí)現(xiàn)對片外存儲器的高速訪問。FSL是Microblaze處理器特有的一個(gè)基于FIFO的單向鏈路,可實(shí)現(xiàn)用戶自定義IP核與MicroBlaze內(nèi)部通用寄存器的直接相連,一般用在傳輸速度要求較高的場合。
在本文設(shè)計(jì)的分布式干擾系統(tǒng)的嵌入式網(wǎng)關(guān)中,SysACE CF卡、中斷控制INTC、GPIO和串口UART與MieroBlaze處理器之間只進(jìn)行參數(shù)傳遞,對速度要求不高,因此使用PLB總線與MieroBlaze處理器和多端口內(nèi)存控制器(Multi Port Memory Controller,MPMC)相連;MPMC與Mic-roBlaze處理器之間使用XCL相連。自定義IP核FFT輸出信號的頻譜數(shù)據(jù),對傳輸速度要求很高,因此使用FSL總線與MicroBlaze內(nèi)部通用寄存器直接相連。DDC輸出信號的時(shí)域數(shù)據(jù),對傳輸速度要求最高;為滿足傳輸速度要求,本文參照以太網(wǎng)控制器Soft TEMAC開發(fā)了XPS_LL_Exam-ple IP核,通過該IP核的LocalLink接口將信號的時(shí)域數(shù)據(jù)傳輸?shù)組PMC中進(jìn)行處理。分布式干擾系統(tǒng)的嵌入式網(wǎng)關(guān)片上總線設(shè)計(jì)如圖2所示。本文引用地址:http://butianyuan.cn/article/150809.htm
2.3 SoPC的實(shí)現(xiàn)
本文設(shè)計(jì)的SoPC是利用Xilinx公司的嵌入式開發(fā)套件(Embedded Development Kit,EDK)實(shí)現(xiàn)的。EDK集成了硬件平臺產(chǎn)生器、軟件平臺產(chǎn)生器、仿真模型生成器、軟件編譯器和軟件調(diào)試等工具。用戶使用EDK可以對硬件平臺進(jìn)行任意的添加和裁減,同時(shí)可以方便地添加自定義的IP核,極大地方便了開發(fā)過程,提高設(shè)計(jì)效率。本文利用EDK實(shí)現(xiàn)圖2所示的各功能部件IP核的添加,并實(shí)現(xiàn)了IP核的地址分配和總線架構(gòu)、外設(shè)接口的連接。
3 分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的軟件設(shè)計(jì)
分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的軟件包括嵌入式操作系統(tǒng)和網(wǎng)絡(luò)應(yīng)用程序。EDK集成了軟件平臺產(chǎn)生器、軟件編譯器和軟件調(diào)試等工具,因此,軟件設(shè)計(jì)也在EDK進(jìn)行。
3.1 嵌入式操作系統(tǒng)的選用
嵌入式操作系統(tǒng)是嵌入式軟件技術(shù)的核心,介于嵌入式系統(tǒng)硬件和應(yīng)用程序之間,負(fù)責(zé)調(diào)度并管理應(yīng)用程序,完成對嵌入式系統(tǒng)硬件的控制和操作。嵌入式操作系統(tǒng)的選用主要考慮實(shí)時(shí)、高可靠、低功耗、可抑制性和兼容性、軟件開發(fā)難易等因素。本文主要是對分布式干擾系統(tǒng)的網(wǎng)絡(luò)通信進(jìn)行技術(shù)驗(yàn)證,因此選擇較為簡單的Xilkernel操作系統(tǒng)。
Xilkernel是Xilinx公司提供的用于EDK系統(tǒng)的小型、模塊化的嵌入式操作系統(tǒng)。Xilkernel的內(nèi)核完整,且占用CPU資源較少,運(yùn)行速度快,是中小型設(shè)計(jì)的理想操作系統(tǒng)。Xilkernel本身不帶有文件處理系統(tǒng)和TCP/IP協(xié)議棧,但與LwIP庫和Treck協(xié)議棧具有良好的接口,加上文件系統(tǒng)支持庫LibXil MFS,可形成較為復(fù)雜的嵌入式操作系統(tǒng)。
首先,在EDK的軟件平臺設(shè)置中選擇Xilkernel,并選擇相應(yīng)的文件系統(tǒng)和TCP/IP協(xié)議棧,本文選擇xilfatfs文件系統(tǒng)和lwip130協(xié)議棧。然后在操作系統(tǒng)和庫函數(shù)界面對操作系統(tǒng)進(jìn)行配置,主要進(jìn)行輸入/輸出、線程和計(jì)時(shí)器的設(shè)置。最后執(zhí)行產(chǎn)生庫函數(shù)和BSPs文件,即可生成與嵌入式系統(tǒng)硬件平臺相匹配的嵌入式操作系統(tǒng)環(huán)境。
評論