當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]嵌入式操作系統(tǒng)在高速實(shí)時(shí)信號(hào)處理系統(tǒng)中的應(yīng)用

  現(xiàn)今的信號(hào)處理設(shè)備越來(lái)越復(fù)雜,不僅要求高速的處理能力,而且要求功能多樣化,僅僅追求速度已經(jīng)不能滿(mǎn)足需求。尤其在復(fù)雜多變的環(huán)境中,要求信號(hào)處理機(jī)能夠完成多種處理功能,并能方便靈活地切換工作模式。因此有必要發(fā)展一種可重構(gòu)和可擴(kuò)展的通用信號(hào)處理系統(tǒng),能將信號(hào)處理機(jī)多功能化、模塊化、標(biāo)準(zhǔn)化和通用化。將嵌入式操作系統(tǒng)與高速實(shí)時(shí)信號(hào)處理機(jī)結(jié)合,可以很好地實(shí)現(xiàn)這些要求。在雷達(dá)火控系統(tǒng)中,信號(hào)處理不僅需要很高的處理速度,而且要滿(mǎn)足控制顯示多方面的需求,如果沒(méi)有操作系統(tǒng),實(shí)現(xiàn)起來(lái)不僅復(fù)雜而且不便于系統(tǒng)的模塊化和標(biāo)準(zhǔn)化。因此,采用實(shí)時(shí)操作系統(tǒng)VxWorks實(shí)現(xiàn)雷達(dá)系統(tǒng)的控制和顯示功能。VxWorks是一種類(lèi)UNIX的高性能嵌入式實(shí)時(shí)操作系統(tǒng),其中斷響應(yīng)速度是微秒級(jí)的。它是專(zhuān)門(mén)為實(shí)時(shí)嵌入式系統(tǒng)開(kāi)發(fā)的操作系統(tǒng),提供了高效的實(shí)時(shí)任務(wù)調(diào)度、中斷管理、實(shí)時(shí)系統(tǒng)資源及實(shí)時(shí)任務(wù)通信。VxWorks可以為各種CPU硬件平臺(tái)提供統(tǒng)一的接口和一致的運(yùn)行特征,這便于以后的系統(tǒng)移植和升級(jí)。基于以上優(yōu)點(diǎn),VxWorks廣泛應(yīng)用于航空、航天、醫(yī)療、通信、雷達(dá)和聲納等領(lǐng)域。

1 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)

  本系統(tǒng)硬件基于6U的VME總線(xiàn)設(shè)計(jì),由多個(gè)子模塊組成,包括A/D采樣板、信號(hào)處理板、定時(shí)接口板、嵌入式計(jì)算機(jī)VG4。

  A/D采樣板作為前端采集雷達(dá)的回波信號(hào)。它采用AD10242,采樣率為32MHz,包含2個(gè)A/D變換器,可以對(duì)兩路模擬信號(hào)作模數(shù)變換,輸出2個(gè)12位的數(shù)據(jù)。由于采樣的數(shù)據(jù)率遠(yuǎn)低于DSP的處理能力,所以通過(guò)大容量的FIFO對(duì)A/D采樣的數(shù)據(jù)緩存,再以DMA的方式發(fā)送給DSP處理。為了滿(mǎn)足要求,信號(hào)處理系統(tǒng)以流水的方式處理數(shù)據(jù)。通過(guò)鏈路口和總線(xiàn)使多片DSP進(jìn)行數(shù)據(jù)傳輸,最后,由VG4顯示目標(biāo)檢測(cè)結(jié)果。

  VG4是SBS公司的一款專(zhuān)門(mén)針對(duì)工業(yè)控制設(shè)計(jì)的嵌入式計(jì)算機(jī)。VG4的處理器采用Motorola PowerPC 755,主頻400MHz,擁有64MB SDRAM,16MB Flash用來(lái)固化操作系統(tǒng)和應(yīng)用程序,而且提供了豐富的接口。VxWorks操作系統(tǒng)及其應(yīng)用程序在VG4上運(yùn)行。由于目標(biāo)機(jī)VG4的資源有限,程序的開(kāi)發(fā)由主機(jī)的交叉開(kāi)發(fā)平臺(tái)Tornado完成,通過(guò)串口和以太網(wǎng)下載目標(biāo)代碼并調(diào)試。程序開(kāi)發(fā)完成后可以固化在目標(biāo)機(jī)VG4的Flash上,這樣系統(tǒng)每次啟動(dòng)就從Flash加載程序。操作系統(tǒng)應(yīng)用程序的開(kāi)發(fā)主要采用C語(yǔ)言。系統(tǒng)的數(shù)據(jù)流如圖1所示。


1.1 定時(shí)接口板的設(shè)計(jì)

  定時(shí)接口板對(duì)于整個(gè)系統(tǒng)實(shí)時(shí)穩(wěn)定的工作起了關(guān)鍵作用。它產(chǎn)生的定時(shí)脈沖信號(hào)控制著發(fā)射接收機(jī)、A/D采樣板、信號(hào)處理板和VG4。

  定時(shí)接口板通過(guò)VME總線(xiàn)與VG4進(jìn)行數(shù)據(jù)傳輸。VME總線(xiàn)是一種高性能的背板總線(xiàn),由于采用高電流總線(xiàn)信號(hào)、嚴(yán)密的邏輯仲裁,所以具有極強(qiáng)的總線(xiàn)驅(qū)動(dòng)能力及較長(zhǎng)的信號(hào)線(xiàn)傳輸路徑,可支持21個(gè)VME板卡的直接相連,信號(hào)可靠性非常高。VME總線(xiàn)由于其信號(hào)的高穩(wěn)定性、并行性和高可靠性,被廣泛應(yīng)用于多DSP系統(tǒng)中。

  接口板上的FPGA實(shí)現(xiàn)VME橋接功能,使雙口RAM連到VME總線(xiàn)和TS101的總線(xiàn)上,以進(jìn)行數(shù)據(jù)傳輸。通過(guò)軟件操作VG4控制定時(shí)接口板啟動(dòng)波駐起始脈沖串T0,在每個(gè)波駐起始脈沖產(chǎn)生的同時(shí)產(chǎn)生定時(shí)中斷脈沖,作為每幀定時(shí)信號(hào)組的時(shí)間基準(zhǔn)。中斷信號(hào)通過(guò)VME總線(xiàn)中斷VG4,并作為其中斷請(qǐng)求信號(hào)。VG4響應(yīng)定時(shí)中斷脈沖,向定時(shí)接口板傳送控制參數(shù)。定時(shí)接口板據(jù)此參數(shù)控制信處、AD、收發(fā)設(shè)備,并接收信處回傳的檢測(cè)結(jié)果,傳給VG4進(jìn)行處理和顯示。數(shù)據(jù)是由外部中斷驅(qū)動(dòng)的,所以能滿(mǎn)足實(shí)時(shí)性要求。定時(shí)接口板結(jié)構(gòu)如圖2所示。


1.2 信號(hào)處理板的設(shè)計(jì)

  雷達(dá)信號(hào)處理的實(shí)時(shí)性和連續(xù)性要求處理系統(tǒng)應(yīng)具有較高的數(shù)據(jù)處理能力。本系統(tǒng)設(shè)計(jì)時(shí)采用多片DSP構(gòu)成并行處理系統(tǒng),以提高系統(tǒng)的數(shù)據(jù)處理能力。信號(hào)處理系統(tǒng)核心單元是美國(guó)Analog Devices Inc公司生產(chǎn)的ADSP-TS101,其峰值運(yùn)算能力可達(dá)18億次/秒。它采用了改進(jìn)的靜態(tài)超標(biāo)量流水結(jié)構(gòu),可以構(gòu)成各種不同的并行多處理器系統(tǒng),較好地滿(mǎn)足了雷達(dá)信號(hào)處理的要求。

  為了保證系統(tǒng)的數(shù)據(jù)吞吐能力,采用數(shù)據(jù)入口與出口分開(kāi)的方法,系統(tǒng)中各DSP分別接收處理位于不同時(shí)間段的雷達(dá)回波信號(hào)。為了使各DSP協(xié)調(diào)工作,DSP間的通信必不可少。本系統(tǒng)采用共享總線(xiàn)的分布式結(jié)構(gòu),使得各DSP之間的通信有多種途徑。為了信號(hào)處理板的通用性和靈活性,設(shè)計(jì)由四片DSP組成的共享總線(xiàn)結(jié)構(gòu)子板,各DSP間用鏈路口點(diǎn)對(duì)點(diǎn)環(huán)形相連,將各信號(hào)線(xiàn)通過(guò)PMC插槽引出,與母板通信。信號(hào)處理板結(jié)構(gòu)如圖3所示。


2 嵌入式實(shí)時(shí)操作系統(tǒng)VxWorks

  VxWorks是實(shí)時(shí)多任務(wù)操作系統(tǒng),它能在確定的時(shí)間內(nèi)執(zhí)行其功能,并對(duì)外部異步事件作出響應(yīng)。多任務(wù)環(huán)境允許一個(gè)實(shí)時(shí)應(yīng)用劃分為多個(gè)獨(dú)立任務(wù)運(yùn)行,各任務(wù)有各自的線(xiàn)程和系統(tǒng)資源。VxWorks實(shí)時(shí)操作系統(tǒng)由多個(gè)相對(duì)獨(dú)立的目標(biāo)模塊組成,用戶(hù)可根據(jù)需要選擇適當(dāng)模塊來(lái)裁剪及配置系統(tǒng),從而有效地保證系統(tǒng)的安全性和可靠性。這樣,通過(guò)目標(biāo)模塊之間的按需組合,可得到許多滿(mǎn)足功能需求的應(yīng)用。

  下面介紹VxWorks的技術(shù)特征。

  (1)任務(wù)
  在VxWorks中,最小的程序運(yùn)行單位稱(chēng)為任務(wù)(Task)。建立任務(wù)時(shí),要對(duì)其分配一段固定的代碼和數(shù)據(jù)空間。操作系統(tǒng)內(nèi)核通過(guò)任務(wù)控制塊對(duì)它的執(zhí)行、通信、資源等情況進(jìn)行控制。任務(wù)具有就緒、阻塞、掛起和延遲等狀態(tài)。與大多數(shù)嵌入式系統(tǒng)一樣,在VxWorks中,所有任務(wù)存在于統(tǒng)一的線(xiàn)性空間中共享物理內(nèi)存,每個(gè)任務(wù)沒(méi)有自己獨(dú)立的代碼段和堆,只有獨(dú)立的動(dòng)態(tài)棧,任務(wù)中的地址即是真正的物理地址。由于不需要進(jìn)行地址空間映射,所以任務(wù)切換時(shí)的上下文切換(Context Switch)時(shí)間大為減少,從而符合實(shí)時(shí)操作系統(tǒng)快速響應(yīng)的原則。VxWorks的代碼段與堆共享減少了上下文切換時(shí)間,卻帶來(lái)了共享代碼的可重入性問(wèn)題。如一個(gè)函數(shù)被兩個(gè)任務(wù)調(diào)用,當(dāng)其中包含對(duì)全局、靜態(tài)變量等從堆中分配空間的數(shù)據(jù)進(jìn)行訪(fǎng)問(wèn)時(shí),就有可能產(chǎn)生沖突,從而引發(fā)錯(cuò)誤。這個(gè)問(wèn)題在應(yīng)用軟件開(kāi)發(fā)時(shí)要加以注意,其解決方法是使用局部變量(從棧中分配空間)或使用互斥信號(hào)量對(duì)臨界代碼進(jìn)行保護(hù)。

  (2)任務(wù)調(diào)度
  VxWorks有優(yōu)先級(jí)搶占調(diào)度和時(shí)間片輪轉(zhuǎn)調(diào)度兩種任務(wù)調(diào)度策略。系統(tǒng)共有256 個(gè)優(yōu)先級(jí)。優(yōu)先級(jí)搶占調(diào)度指一個(gè)優(yōu)先級(jí)較低的任務(wù)正在執(zhí)行中,另一個(gè)優(yōu)先級(jí)高的任務(wù)進(jìn)入就緒狀態(tài),則馬上搶占處理器資源,執(zhí)行高優(yōu)先級(jí)任務(wù),直到高優(yōu)先級(jí)任務(wù)釋放處理器(完成、掛起、阻塞等)才繼續(xù)執(zhí)行被中斷的低優(yōu)先級(jí)任務(wù)。優(yōu)先級(jí)搶占調(diào)度可以保證實(shí)時(shí)系統(tǒng)的迅速響應(yīng)特性,但也存在問(wèn)題。當(dāng)系統(tǒng)中存在幾個(gè)相同優(yōu)先級(jí)的任務(wù)時(shí),就會(huì)使單一任務(wù)獨(dú)占處理器直至完成。如果這個(gè)任務(wù)占用太多時(shí)間,則會(huì)影響其他同優(yōu)先級(jí)任務(wù)的運(yùn)行。當(dāng)加入時(shí)間片輪轉(zhuǎn)調(diào)度時(shí),系統(tǒng)給相同優(yōu)先級(jí)的任務(wù)分配相同的一段時(shí)間片,以輪轉(zhuǎn)方式占用CPU。加入了基于優(yōu)先級(jí)的時(shí)間片輪轉(zhuǎn)調(diào)度方式,使不同優(yōu)先級(jí)的任務(wù)間以搶占方式調(diào)度,相同優(yōu)先級(jí)的任務(wù)以時(shí)間片進(jìn)行輪轉(zhuǎn)。

  (3)存儲(chǔ)管理
  在基本的內(nèi)核中,任務(wù)直接操作線(xiàn)性物理內(nèi)存,不存在虛擬存儲(chǔ)等復(fù)雜的存儲(chǔ)管理策略,這主要是針對(duì)實(shí)時(shí)性考慮的。對(duì)于存在MMU的處理器中,VxWorks也提供支持標(biāo)準(zhǔn)的虛擬存儲(chǔ)區(qū)和共享內(nèi)存(多處理器間共享)組件。這樣任務(wù)是操作虛擬存儲(chǔ),代碼更加安全。

  (4)任務(wù)間通信
  任務(wù)間存在多種通信形式,內(nèi)核支持各種UNIX的通用手段:信號(hào)量(Semaphore)、消息隊(duì)列(Message Queue)、管道(Pipe)、信號(hào)(Signal)、套接字(Socket)。信號(hào)量主要用于對(duì)臨界資源進(jìn)行互斥保護(hù)及任務(wù)間或中斷與任務(wù)間的同步;消息隊(duì)列多用于消息驅(qū)動(dòng)機(jī)制;管道是基于文件系統(tǒng)實(shí)現(xiàn)的任務(wù)間按先進(jìn)先出方式傳送數(shù)據(jù)的通信方式;信號(hào)相當(dāng)于軟中斷,用于顯示錯(cuò)誤信息;套接字機(jī)制主要用于網(wǎng)絡(luò)通信。當(dāng)任務(wù)間需要大量交換數(shù)據(jù)時(shí),由于VxWorks直接操作物理內(nèi)存,可以直接訪(fǎng)問(wèn)全局存儲(chǔ)區(qū),不需要特別的手段。這與Linux下的共享存儲(chǔ)段申請(qǐng)和Windows中的存儲(chǔ)映射文件方式不同。

  (5)中斷
  在VxWorks中,所有中斷服務(wù)程序都不屬于任何一個(gè)任務(wù),并且使用同一個(gè)棧進(jìn)行數(shù)據(jù)存儲(chǔ),中斷將不會(huì)引起上下文切換,以實(shí)現(xiàn)高效的中斷響應(yīng)。中斷與各任務(wù)之間可以通過(guò)前面所述的各種手段通信,但是對(duì)中斷服務(wù)程序有一些限制。因?yàn)橹袛嗖淮嬖谏舷挛那袚Q,所以不能調(diào)用可能導(dǎo)致阻塞的資源。例如動(dòng)態(tài)分配內(nèi)存(malloc)、獲取信號(hào)量(semTake)和打印程序(printf)等。中斷資源寶貴,所以中斷服務(wù)程序應(yīng)盡量短小,把運(yùn)算量大和耗時(shí)的工作放在服務(wù)程序外處理。

  (6)文件系統(tǒng)
  VxWorks支持網(wǎng)絡(luò)文件系統(tǒng)NFS及多種本地文件系統(tǒng),如MS_DosFS、RawFS和RT-11FS,用戶(hù)可根據(jù)具體配置選擇。

  (7)網(wǎng)絡(luò)支持
  Vxworks支持多種物理介質(zhì)的TCP/IP協(xié)議族和幾乎所有常用的基于TCP/IP協(xié)議的應(yīng)用層協(xié)議,如ARP、BOOTP、SLIP和FTP,甚至其啟動(dòng)就是通過(guò)BOOTP或FTP方式取得系統(tǒng)映象文件。

  以上簡(jiǎn)單介紹了VxWorks的一些技術(shù)特征,充分反映了實(shí)時(shí)性與嵌入式的密切相關(guān)性。

3 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)


  VG4軟件開(kāi)發(fā)主要分為操作系統(tǒng)的配置生成和應(yīng)用程序的開(kāi)發(fā)兩部分。操作系統(tǒng)的生成主要是對(duì)BSP的配置和對(duì)VxWorks組件進(jìn)行裁剪。在應(yīng)用程序的開(kāi)發(fā)中,為了滿(mǎn)足實(shí)時(shí)性要求,應(yīng)對(duì)任務(wù)進(jìn)行合理劃分,使程序達(dá)到多任務(wù)并行操作。

  任務(wù)劃分需要遵循以下原則:
  (1)功能內(nèi)聚性。對(duì)于功能聯(lián)系比較緊密的各工作可以用一個(gè)任務(wù)來(lái)運(yùn)行。如果用多個(gè)任務(wù)進(jìn)行相互之間的消息通信,將會(huì)影響系統(tǒng)效率。
  (2)時(shí)間緊迫性。對(duì)于實(shí)時(shí)性要求比較高的任務(wù),以高優(yōu)先級(jí)運(yùn)行,以保證事件的實(shí)時(shí)響應(yīng)。
  (3)周期執(zhí)行原則。對(duì)于一個(gè)需要周期性執(zhí)行的工作,應(yīng)作為一個(gè)獨(dú)立的模塊完成。

3.1 操作系統(tǒng)的配置

  在嵌入式操作系統(tǒng)上進(jìn)行開(kāi)發(fā)要滿(mǎn)足實(shí)時(shí)性和資源有限性的要求,因此與通用操作系統(tǒng)存在差異。在生成操作系統(tǒng)時(shí)剪裁不需要的組件,添加需要的組件,使系統(tǒng)盡量精簡(jiǎn)。操作系統(tǒng)及其應(yīng)用程序主要運(yùn)行在內(nèi)存中,操作系統(tǒng)太大會(huì)占用很多的內(nèi)存空間。應(yīng)用程序運(yùn)行時(shí)要對(duì)每個(gè)任務(wù)分配合適的內(nèi)存。為了滿(mǎn)足實(shí)時(shí)性,內(nèi)存分配要盡可能快,因此不采用通用操作系統(tǒng)中復(fù)雜而完善的內(nèi)存分配策略,而采用簡(jiǎn)單、快速的內(nèi)存分配方案。如果系統(tǒng)對(duì)于實(shí)時(shí)性和可靠性的要求極高,不能容忍一點(diǎn)延時(shí)或者一次分配失敗,最好采用靜態(tài)分配方案,也就是在程序編譯時(shí)所需要的內(nèi)存都已經(jīng)分配好了。例如,火星探測(cè)器上的嵌入式系統(tǒng)就必須采用靜態(tài)分配方案。

  雷達(dá)系統(tǒng)對(duì)實(shí)時(shí)性要求很高,所以本系統(tǒng)盡量采用靜態(tài)分配方案。但是VG4內(nèi)存有限,在一些子任務(wù)中也采用動(dòng)態(tài)分配方案。這里VxWorks采用First Fit的內(nèi)存動(dòng)態(tài)分配方式,當(dāng)系統(tǒng)需要?jiǎng)討B(tài)分配內(nèi)存時(shí),可以保證在很短的時(shí)間內(nèi)分配。但是采用這種方式容易產(chǎn)生大量的內(nèi)存碎片,而VxWorks沒(méi)有清除碎片的功能,因此對(duì)系統(tǒng)動(dòng)態(tài)分配內(nèi)存要非常小心。

  根據(jù)本系統(tǒng)的實(shí)際情況,接口板傳給VG4的信處檢測(cè)結(jié)果數(shù)據(jù)量基本不變,對(duì)于這批數(shù)據(jù)可以以另一種方式存儲(chǔ)。通過(guò)修改BSP的配置,從RAM中分配一塊用戶(hù)保留的存儲(chǔ)區(qū)域。這塊存儲(chǔ)區(qū)是用戶(hù)專(zhuān)用的,不會(huì)被系統(tǒng)覆蓋。用戶(hù)可以通過(guò)絕對(duì)地址對(duì)其進(jìn)行讀寫(xiě)。具體方法是設(shè)置RAM布局中User reserved區(qū)域,系統(tǒng)默認(rèn)為0,設(shè)置這塊RAM使之滿(mǎn)足原始數(shù)據(jù)的大小。

3.2 應(yīng)用程序的設(shè)計(jì)

  應(yīng)用程序運(yùn)行在VxWorks操作系統(tǒng)上,其功能包括對(duì)系統(tǒng)初始化、根據(jù)輸入命令對(duì)各模塊進(jìn)行控制及實(shí)時(shí)顯示信號(hào)處理結(jié)果。存在著如下幾類(lèi)數(shù)據(jù)通信:VG4向定時(shí)接口板傳送控制參數(shù),讀取定時(shí)接口板中存儲(chǔ)的信處檢測(cè)結(jié)果數(shù)據(jù),響應(yīng)外部中斷,顯示目標(biāo)信息以及獲得外部輸入的控制信息??紤]到C語(yǔ)言的平臺(tái)無(wú)關(guān)性和代碼簡(jiǎn)介高效性,應(yīng)用程序采用C語(yǔ)言編寫(xiě)。

  系統(tǒng)劃分為6個(gè)任務(wù):(1)系統(tǒng)監(jiān)控:?jiǎn)?dòng)和監(jiān)控其他任務(wù)。(2)數(shù)據(jù)傳輸:響應(yīng)VME中斷,與定時(shí)接口板進(jìn)行數(shù)據(jù)通信。(3)數(shù)據(jù)處理:對(duì)信處檢測(cè)結(jié)果數(shù)據(jù)進(jìn)行處理,扣除虛假目標(biāo)并轉(zhuǎn)換格式以方便顯示。(4)終端顯示:顯示檢測(cè)目標(biāo)結(jié)果和系統(tǒng)狀態(tài)信息到屏幕。(5)指令控制:響應(yīng)控制開(kāi)關(guān)的命令和獲取慣導(dǎo)數(shù)據(jù)。(6)錯(cuò)誤處理:對(duì)出現(xiàn)錯(cuò)誤的任務(wù)做出響應(yīng)的處理,并在終端顯示。

  中斷服務(wù)程序響應(yīng)定時(shí)VME7號(hào)中斷,程序如下:
  if(intConnect( (VOIDFUNCPTR*)0xf0,intHdlr,0)==ERROR)
  { puts(″intInit:Error in connecting to the ISR″);
  return(ERROR);}
  if(sysIntEnable(7)==ERROR)/*響應(yīng)7號(hào)VME中斷*/
  { puts(″intInit:Error in Enable ISR 7″);
   return(ERROR);}
  圖4顯示了各任務(wù)的優(yōu)先級(jí)。從中可以看到中斷服務(wù)程序的優(yōu)先級(jí)最高,因?yàn)閷?shí)時(shí)系統(tǒng)要及時(shí)響應(yīng)外部中斷信號(hào)。


  指令控制任務(wù)首先獲取外部開(kāi)關(guān)命令和慣導(dǎo)數(shù)據(jù),以消息的形式發(fā)送給數(shù)據(jù)傳輸任務(wù)。當(dāng)中斷來(lái)臨時(shí),中斷服務(wù)程序馬上釋放同步信號(hào)量syncSemId。數(shù)據(jù)傳輸任務(wù)一直等待這個(gè)信號(hào)量,當(dāng)獲取到這個(gè)信號(hào)量時(shí),立即把從指令控制任務(wù)收到的消息轉(zhuǎn)換成模式字寫(xiě)到接口板的雙口RAM中,接著讀取信處檢測(cè)結(jié)果數(shù)據(jù)。數(shù)據(jù)處理子任務(wù)獲取同步信號(hào)量syncSemId2后對(duì)收到的信處檢測(cè)結(jié)果數(shù)據(jù)進(jìn)行處理,這一任務(wù)最耗時(shí)。終端顯示任務(wù)以消息的形式接收上一任務(wù)的處理結(jié)果,并顯示處理結(jié)果及系統(tǒng)目前的運(yùn)行狀態(tài)信息。信號(hào)量廣泛應(yīng)用于同步和對(duì)臨界資源的保護(hù),信號(hào)量的建立如下:
  if((syncSemId=semBCreate(SEM_Q_FIFO,SEM_EMPTY))==NULL) /*建立同步信號(hào)量*/
  { puts(″nintInit:semBCreate failed″);
  return(ERROR);}
  if((inputGuardSemId=semMCreate(SEM_Q_PRIORITY|SEM_
  INVERSION_SAFE|SEM_DELETE_SAFE))==NULL)
  /*建立互斥信號(hào)量*/
  { puts(″nintInit:semMCreate failed″);
  return(ERROR);}

  系統(tǒng)監(jiān)控任務(wù)包括初始化各任務(wù)及實(shí)時(shí)監(jiān)控各任務(wù)運(yùn)行是否正常。當(dāng)檢測(cè)到某任務(wù)運(yùn)行不正常時(shí),啟動(dòng)錯(cuò)誤處理任務(wù)。錯(cuò)誤處理任務(wù)根據(jù)情況給予相應(yīng)處理,并在終端顯示。當(dāng)系統(tǒng)發(fā)生嚴(yán)重錯(cuò)誤時(shí),系統(tǒng)會(huì)自動(dòng)重啟。

  本文設(shè)計(jì)的信號(hào)處理機(jī)主要應(yīng)用于直升機(jī)火控系統(tǒng),現(xiàn)已經(jīng)過(guò)驗(yàn)收,各項(xiàng)指標(biāo)符合要求。隨著設(shè)計(jì)的改進(jìn),系統(tǒng)功能將進(jìn)一步完善,結(jié)構(gòu)會(huì)更加通用模塊化,從而實(shí)現(xiàn)不改變整個(gè)硬件系統(tǒng)平臺(tái),只對(duì)程序進(jìn)行相應(yīng)的修改,便可應(yīng)用于其他領(lǐng)域的信號(hào)處理系統(tǒng)中。

參考文獻(xiàn)
1 趙樹(shù)杰,史 林.數(shù)字信號(hào)處理.西安:西安電子科技大學(xué)出版社,1997
2 WindRiver.VxWorks Programmer′s Guide 5.5.2002
3 WindRiver.VxWorks API Reference.2002
4 WindRiver.Tornado User′s Guide(Windows Version).2002
5 蘇 濤,蔡建隆,何學(xué)輝.DSP接口電路設(shè)計(jì)與編程.西安:西安電子科技大學(xué)出版社,2003

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

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

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

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

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

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(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ì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

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

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(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)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

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