可重構技術(shù)及基于FPGA的可重構智能儀器設計
3.2 基于HAL 的可重構智能儀器軟件開(kāi)發(fā)
硬件抽象層(HAL, Hardware Abstraction Layer),是指在應用程序和系統硬件之間的一 個(gè)系統庫(System Library),為嵌入式系統與硬件通信的程序提供簡(jiǎn)單的設備驅動(dòng)接口。 SOPC Builder 是一個(gè)自動(dòng)化的SOPC 硬件系統工具?;贖AL 的軟件系統由兩個(gè)Nios II 工 程所構建,用戶(hù)的程序包含在一個(gè)工程中(用戶(hù)應用工程),該工程依賴(lài)一個(gè)獨立的系統庫 工程(HAL 系統庫工程)。用戶(hù)應用工程包含開(kāi)發(fā)的所有代碼,編譯該工程可以產(chǎn)生可執行 文件。HAL 系統庫工程包含涉及處理器硬件接口的所有信息。系統庫工程依賴(lài)于由SOPC Builder 產(chǎn)生的擴展名為.ptf 的Nios II 處理器系統。
由于該工程的依賴(lài)結構,如果 SOPC Builder 生成的系統改變(即.ptf 文件已修改),則 Nios II IDE 管理HAL 系統庫并且修改驅動(dòng)配置來(lái)正確的反應系統硬件。HAL 系統庫將用戶(hù) 程序與底層硬件變化分離開(kāi)來(lái),這樣,用戶(hù)可以不用考慮自己的程序是否與目標硬件匹配來(lái) 開(kāi)發(fā)和調試代碼,簡(jiǎn)而言之,基于HAL 系統庫的程序和目標硬件是同步的。
由于 HAL 系統庫中包含有各種不同的硬件驅動(dòng),用戶(hù)可以根據特定的設計需要調用 HAL 系統庫中的相應硬件驅動(dòng),從而實(shí)現對不同硬件系統的控制,來(lái)達到可重構設計的目的。本文所設計的基于HAL 系統庫的可重構智能儀器軟件系統如6 示。在系統軟件控制界 面中選擇了某一功能后,該功能就會(huì )調用HAL 程序庫中相應的一些硬件驅動(dòng),從而實(shí)現對 硬件設備的控制。
4 系統分析
基于 FPGA 的可重構智能儀器主要是針對目前測試儀器生產(chǎn)出來(lái)后功能不能改變、維護 費費用過(guò)高、資源浪費嚴重等問(wèn)題。提出基于FPGA 的可重構智能儀器的硬件結構和軟件結 構,實(shí)現了八種不同的功能,借鑒虛擬儀器的思想,開(kāi)發(fā)了基于FPGA 的可重構智能儀器演 示系統,該系統具有A/D 采集、D/A 輸出和開(kāi)關(guān)量控制三種功能。
本文作者創(chuàng )新點(diǎn):基于SOPC技術(shù)進(jìn)行可重構設計;采用了FPGA增強型配置芯片EPC16; 軟件重構采用了應用框架的復用技術(shù)。
評論