新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MicroBlaze嵌入式Web服務(wù)器設(shè)計

基于MicroBlaze嵌入式Web服務(wù)器設(shè)計

作者: 時間:2015-01-09 來源:網(wǎng)絡(luò) 收藏

  1 引言

本文引用地址:http://www.butianyuan.cn/article/267947.htm

  由于Internet技術(shù)的滲透,嵌入式系統(tǒng)正變得越來越智能化并具有越來越多的網(wǎng)絡(luò)友好特性。Web技術(shù)的飛速發(fā)展,給嵌入式系統(tǒng)進(jìn)入Internet提供絕佳的途徑。在現(xiàn)場儀表和企業(yè)設(shè)備層應(yīng)用嵌入式技術(shù)是企業(yè)監(jiān)控系統(tǒng)的發(fā)展趨勢。與現(xiàn)場總線技術(shù)相比,嵌入式技術(shù)不僅為開發(fā)者提供了大量的工具和函數(shù)庫,而且減少了傳統(tǒng)的客戶端,減少了二次開發(fā)的工作量;而把嵌入式技術(shù)和Internet技術(shù)結(jié)合起來,使得整個工控網(wǎng)絡(luò)易于和Internet實(shí)現(xiàn)無縫連接;現(xiàn)在多數(shù)企業(yè)控制網(wǎng)絡(luò)是通過專用線路進(jìn)行數(shù)據(jù)通信,其通信介質(zhì)、通信協(xié)議都是專用的,而Internet技術(shù)的滲透使嵌入式設(shè)備的遠(yuǎn)程控制和管理方式都有了改變,不再需要專用的通信線路,傳輸?shù)男畔⒁膊辉倬窒抻跀?shù)據(jù)信息。Web技術(shù)的發(fā)展、通信協(xié)議的公開、HTML語言的標(biāo)準(zhǔn)統(tǒng)一性,使得只要在嵌入式設(shè)備中有一個微型服務(wù)器,通過用任意一種Web瀏覽器,用戶就可以監(jiān)控現(xiàn)場數(shù)據(jù)和設(shè)備。

  2 嵌入式軟核處理器

  是基于公司的微處理器IP核,和其他外設(shè)IP核一起,可以完成可編程系統(tǒng)芯片(SoPc)的設(shè)計。 32位軟處理芯核運(yùn)行速度為150 MHz,性能達(dá)100 D-MIPS。采用RISC架構(gòu)和哈佛結(jié)構(gòu)的獨(dú)立32位指令和數(shù)據(jù)總線,可以全速度執(zhí)行存儲在片上存儲器和外部存儲器中的程序并訪問其中的數(shù)據(jù)。支持CoreConnect總線的標(biāo)準(zhǔn)外設(shè)集合為MicroBlaze設(shè)計人員提供了兼容性和重利用能力。MicroBlaze內(nèi)部有32個32位通用寄存器和2個32位特殊寄存器PC指針和MSR狀態(tài)標(biāo)志寄存器。為了提高性能,MicroBlaze還具有指令和數(shù)據(jù)緩存。所有的指令字長都是32位,有3個操作數(shù)和2種尋址模式。指令按功能劃分有邏輯運(yùn)算、算術(shù)運(yùn)算、分支、存儲器讀/寫和特殊指令等。指令執(zhí)行的流水線是并行流水線,他分為3級流水:取指、譯碼和執(zhí)行。

  MicroBlaze軟處理器可為您提供不同方法的靈活性。首先可以從處理器內(nèi)核開始,構(gòu)建能夠準(zhǔn)確滿足設(shè)計需要的外設(shè)集合。由于只需要實(shí)現(xiàn)自己所需要的部分,因此避免了芯片資源浪費(fèi)。因?yàn)椴恍枰帉懘a關(guān)閉/禁止不需要的處理器功能,因此降低了軟件設(shè)計復(fù)雜性。創(chuàng)建專用處理器配置的工作也成為一項(xiàng)簡單的任務(wù),而為了滿足技術(shù)規(guī)格的變化專用處理器配置隨時可能需要改變。即使在實(shí)際應(yīng)用5~6年后,連硬件本身可能也已經(jīng)接近其生命期的終點(diǎn)時,只需要簡單的利用同樣的C代碼將軟處理器內(nèi)核移植到新的硬件中就可以。硬件平臺或許需要一定的PCB修改,但遺留下的代碼仍然是可用的,不需要修改。

  3 系統(tǒng)結(jié)構(gòu)

  在系統(tǒng)結(jié)構(gòu)設(shè)計上,考慮現(xiàn)有的各種嵌入式網(wǎng)絡(luò)實(shí)現(xiàn)方案,絕大多數(shù)嵌入式Internet都使用微控制器和相應(yīng)的軟件來實(shí)現(xiàn)。本文介紹的嵌入式Web服務(wù)器的設(shè)計則是采用基于FPGA的MicroBlaze軟核處理器,其靈活性大大提高,而成本則可以大大降低,充分體現(xiàn)了可編程片上系統(tǒng)(SoPc)的優(yōu)勢。系統(tǒng)主要支持CoreConnect總線的標(biāo)準(zhǔn)外設(shè)集合,DDR SDRAM主要用來存放軟件代碼以及一些需要保存的參數(shù),BRAM用來在系統(tǒng)運(yùn)行時的代碼和數(shù)據(jù)存儲;網(wǎng)絡(luò)接口芯片采用SMSC公司的IAN91C111芯片作為網(wǎng)絡(luò)接口。該器件是一個以太網(wǎng)控制器,實(shí)現(xiàn)了網(wǎng)絡(luò)7層協(xié)議棧中的物理層和MAC層的功能。他具有10 M/100 M自適應(yīng)、雙工/半工自適應(yīng)等功能,非常適合嵌入式網(wǎng)絡(luò)開發(fā)。LCD用來指示系統(tǒng)運(yùn)行狀態(tài)。整個系統(tǒng)的結(jié)構(gòu)如圖1所示。

  4 硬件設(shè)計

  本文在進(jìn)行硬件設(shè)計的時候采用基于IP核的設(shè)計方法,并將大部分功能在單個FPGA芯片上予以實(shí)現(xiàn)。設(shè)計電路原理圖之前,必須根據(jù)系統(tǒng)需求選擇合適的IP核。所謂IP核,是指那些以硬件形式(硅片版圖)或者軟件形式(用Verilog、VHDL描述的RTL或者門級模型)存在的、具有特定功能的硬件電路。IP核通常分為硬核、固核與軟核3種。根據(jù)系統(tǒng)的硬件開發(fā)環(huán)境以及性能需求,本文選擇公司開發(fā)的一系列軟核產(chǎn)品,他們是用VHDL語言所描述的硬件模塊,允許用戶根據(jù)需要對各種參數(shù)進(jìn)行配置,如數(shù)據(jù)通路帶寬、優(yōu)先進(jìn)行速度優(yōu)化還是資源優(yōu)化等,因而應(yīng)用非常靈活。系統(tǒng)所用到的軟IP核產(chǎn)品有MicroBlaze,BRAM、定時器、通用異步收發(fā)器UART,以及用于外部功能擴(kuò)展的OPB總線模塊。

  硬件設(shè)計使用的是ISE可編程邏輯器件集成開發(fā)環(huán)境。提供從設(shè)計輸入到器件編程的全部功能。采用公司的EDK開發(fā)工具可大大提高系統(tǒng)設(shè)計效率,他能夠在圖形化界面內(nèi)定制一個從硬件到軟件的完整系統(tǒng)。在EDK中包含了外設(shè)與MicroBlaze的接口,所以只需定義CPU與外設(shè)的接口即可。設(shè)計采用的CPU為MicroBlaze僅占用900個邏輯單元。在EDK下添加對應(yīng)接口模塊。然后生成對應(yīng)的VHDL文件。同時,EDK還根據(jù)定制的結(jié)果,自動的生成針對特定硬件環(huán)境的C語言的頭文件以及函數(shù)庫,這在軟件設(shè)計中會極大地減少軟件開發(fā)人員的工作量。

  本文采用的是Xilinx公司Virtex4系列FPGA芯片,最多能提供200 000個邏輯單元和多達(dá)64 kB的BRAM存儲空間。由于FPGA芯片具有可反復(fù)更改的特性,因此有助于硬件系統(tǒng)的改進(jìn)和不斷升級。

  由于在FPGA芯片上構(gòu)造以太網(wǎng)物理層、MAC層電路較困難,本文將這些功能放到FPGA芯片的外面,使用LAN91C111芯片來實(shí)現(xiàn)以太網(wǎng)硬件接口功能。SMSC公司的LAN91C111是為了方便嵌入式應(yīng)用系統(tǒng)連接到快速以太網(wǎng)而專門設(shè)計的,他實(shí)現(xiàn)CSMA/CD協(xié)議的物理層和媒體訪問控制層(MAC)兩個部分,并可以很方便地與許多嵌入式處理器進(jìn)行數(shù)據(jù)交換。

c語言相關(guān)文章:c語言教程



上一頁 1 2 下一頁

關(guān)鍵詞: MicroBlaze Xilinx FPGA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉