亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        MPC8641處理器內(nèi)中斷控制器的自檢測技術(shù)

        2014-09-10 01:18:14李向東趙根學(xué)杜杏虎
        關(guān)鍵詞:服務(wù)程序內(nèi)核寄存器

        李向東,趙根學(xué),杜杏虎

        (1.中國航空計(jì)算技術(shù)研究所,陜西 西安710119;2.北京理工大學(xué) 計(jì)算機(jī)學(xué)院,北京100081)

        0 引 言

        文章以實(shí)踐的方式分析中斷控制器的基本工作原理及配置方式,并且簡要介紹全局時(shí)鐘產(chǎn)生中斷的原理,進(jìn)而提供一套簡便、可靠的以全局時(shí)鐘中斷檢測中斷控制器是否正常響應(yīng)中斷的方法。

        MPC8641處理器集成一個(gè)PowerPC系列e600內(nèi)核,一個(gè)可編程中斷控制器 (programmable interrupt controller,PIC)及一組全局時(shí)鐘 (global timers,GT)[1-3]。在基于 PowerPC架構(gòu)的處理器平臺(tái)中,中斷控制器對系統(tǒng)平臺(tái)的實(shí)時(shí)性、安全性有至關(guān)重要的作用。尤其在機(jī)載、軍用嵌入式計(jì)算平臺(tái)上,高度集成的體系結(jié)構(gòu)在性能得到很大提升的同時(shí),其復(fù)雜性必然提高很多。因此,縱觀嵌入式系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì),能否實(shí)時(shí)響應(yīng)中斷是衡量系統(tǒng)好壞判斷任務(wù)成敗的關(guān)鍵[4]。

        目前,針對硬件的自檢測技術(shù)依賴操作系統(tǒng)平臺(tái),需要在系統(tǒng)啟動(dòng)后進(jìn)行各類測試,此類測試方式無法保證系統(tǒng)啟動(dòng)安全[5,6]。文章所述算法不依賴操作系統(tǒng),在操作系統(tǒng)啟動(dòng)前完成各類檢測,具有實(shí)時(shí)性的特點(diǎn)。

        1 系統(tǒng)軟件啟動(dòng)概述

        系統(tǒng)級(jí)軟件啟動(dòng)流程如圖1所示。圖1中標(biāo)示為虛線的進(jìn)程框 “啟動(dòng)自檢測”為本文章所討論技術(shù)點(diǎn)。目前,大部分的自檢測技術(shù)將對系統(tǒng)硬件的檢測放置于應(yīng)用程序之中,這依賴于操作系統(tǒng)及應(yīng)用程序,增加諸多不確定性[7]。而圖中所示的 “啟動(dòng)自檢測”是在啟動(dòng)操作系統(tǒng)之前完成對中斷控制器的自檢測。具有檢測效率高、發(fā)現(xiàn)問題及時(shí)的優(yōu)點(diǎn)。

        2 MPC8641處理器中斷控制器及全局時(shí)鐘功能解析

        圖1 系統(tǒng)級(jí)軟件啟動(dòng)流程

        MPC8641處理器內(nèi)部集成PIC。PIC是處理器與外設(shè)之間的中斷處理橋梁,由外設(shè)發(fā)出的中斷請求由PIC進(jìn)行處理并通知內(nèi)核執(zhí)行異常服務(wù)程序[8,9]。MPC8641內(nèi)部中斷源及其傳遞方式如圖2所示。其中,虛線所示為本文章所分析全局時(shí)鐘中斷。

        圖2 中斷源方塊

        MPC8641處理器繼承PowerPC系列處理器體系結(jié)構(gòu),當(dāng)中斷到達(dá)內(nèi)核,內(nèi)核確認(rèn)產(chǎn)生異常后,首先執(zhí)行異常服務(wù)程序,然后執(zhí)行中斷服務(wù)程序。部分異常定義見表1。對于異常的具體描述,請參考MPC8641手冊[8]。

        表1 異常定義

        表中所述的 “向量偏移”即發(fā)生異常后,CPU指令指針將要跳轉(zhuǎn)到的物理地址。全局時(shí)鐘所產(chǎn)生的異常為500號(hào)異常,相對于e600內(nèi)核而言,屬外部異常[10,11]。因此,對異常服務(wù)程序的初始化也就是對CPU地址域0x00000500處的初始化,即將特定的異常服務(wù)程序?qū)懭?x00000500處。異常服務(wù)程序?qū)⒆x取當(dāng)前中斷的中斷向量值,并根據(jù)此值調(diào)用之前掛接的中斷服務(wù)程序。

        2.1 相關(guān)通用寄存器功能解析

        MPC8641處理器內(nèi)部包含一系列與中斷相關(guān)的寄存器,正確地配置這些寄存器,使中斷的產(chǎn)生、響應(yīng)、處理及清除按照一定的時(shí)序關(guān)系進(jìn)行。此類寄存器主要包含“全局配置寄存器” (global configuration register,GCR)、“處理器核心中斷響應(yīng)寄存器”(processor core interrupt acknowledge register,IACK)及 “機(jī)器狀態(tài)寄存器” (machine state register,MSR)。

        上述寄存器的功能原理如下:

        GCR

        GCR[M]為中斷控制模式位,GCR [M]=1時(shí),中斷經(jīng)由PIC傳遞給內(nèi)核,GCR [M]=0時(shí),IRQ [0]將直接傳遞給內(nèi)核而不經(jīng)過PIC,并且全局時(shí)鐘禁止產(chǎn)生中斷。GCR [RST]為PIC復(fù)位標(biāo)識(shí),GCR [RST]=1時(shí),PIC將被復(fù)位,復(fù)位操作結(jié)束后,此位將清零。

        IACK

        IACK[VECTOR]存儲(chǔ)當(dāng)前所有未處理的中斷中優(yōu)先級(jí)最高的中斷向量號(hào)。如果沒有未處理中斷,此值為0xffff。

        MSR

        MSR[EE]=0時(shí),內(nèi)核將不處理500號(hào)異常;MSR[EE]=1時(shí),內(nèi)核將對500號(hào)異常進(jìn)行處理。

        2.2 全局時(shí)鐘寄存器解析

        MPC8641處理器內(nèi)部集成兩組獨(dú)立的全局時(shí)鐘組,稱為A組和B組,如圖2所示。每組包含4個(gè)獨(dú)立的時(shí)鐘,每個(gè)時(shí)鐘具有4個(gè)獨(dú)立的可配置寄存器,分別為 “全局時(shí)鐘當(dāng)前計(jì)數(shù) 寄 存 器”(global timer current count register,GTCCR)、 “全局時(shí)鐘基值計(jì)數(shù)寄存器”(global timer base count register,GTBCR)、 “全局時(shí)鐘中斷向量/優(yōu)先級(jí)寄存器”(global timer vector/priority register,GTVPR)及 “全局時(shí)鐘中斷接收寄存器”(global timer destination register,GTDR)。

        上述寄存器功能描述如下:

        GTCCR

        GTCCR[COUNT]包含時(shí)鐘當(dāng)前計(jì)數(shù)值,計(jì)數(shù)方式為遞減;CTCCR[TOG]為計(jì)時(shí)翻轉(zhuǎn)位,當(dāng) GTCCR[COUNT]遞減到0后,CTCCR [TOG]發(fā)生翻轉(zhuǎn)。

        GTBCR

        GTBCR[CI]=0時(shí),計(jì)數(shù)使能,否則,計(jì)數(shù)將被禁止;當(dāng)此位由1變?yōu)?時(shí),CTCCR [TOG]位清0。

        GTBCR[BASE_CNT]包含計(jì)數(shù)基值,當(dāng)GTCCR[COUNT]計(jì)數(shù)遞減至0后,系統(tǒng)自動(dòng)將GTBCR中的計(jì)數(shù)基值重載到GTCCR中,并且開始遞減計(jì)數(shù);

        GTVPR

        GTVPR[MSK]=0時(shí),全局時(shí)鐘中斷使能,否則中斷禁止;

        GTVPR[PRIORITY]定義全局時(shí)鐘中斷優(yōu)先級(jí);

        GTVPR[VECTOR]包含全局時(shí)鐘中斷向量號(hào)。本文章中,示例程序只使用時(shí)鐘中斷,在時(shí)鐘中斷發(fā)生后,此值將被賦給IACK [VECTOR]。

        GTDR

        GTDR寄存器控制中斷目的地,即中斷發(fā)生后,處理器將根據(jù)此寄存器選擇處理器進(jìn)行處理,為雙核處理器所用,本文討論MPC8641單核處理器,GTDR[P0]=1。

        3 檢測實(shí)現(xiàn)

        完整的檢測流程如圖3所示。

        3.1 異常初始化

        初始化500號(hào)異常外其它異常

        初始化500號(hào)異常服務(wù)程序

        示例代碼如下:

        異常服務(wù)程序示例如下:

        3.2 中斷測試初始化

        3.3 中斷測試

        當(dāng)GTBCR [CI]=0時(shí),CTCCR [TOG]清零,并開始計(jì)時(shí)。當(dāng)計(jì)時(shí)到0后,CTCCR [TOG]位發(fā)生翻轉(zhuǎn),即CTCCR [TOG]=1。

        最終的計(jì)時(shí)測試判斷代碼如下示例:

        4 功能演示及延伸

        本文詳述 “中斷控制器中斷響應(yīng)”的測試方法,讀者在工程實(shí)踐及開發(fā)過程中可參考本文對中斷控制器及全局時(shí)鐘各類寄存器介紹,對 “中斷控制器中斷優(yōu)先級(jí)判斷”、“中斷控制器中斷屏蔽”等功能進(jìn)行測試。

        “中斷控制器中斷優(yōu)先級(jí)判斷”檢測當(dāng)不同優(yōu)先級(jí)的中斷同時(shí)發(fā)生時(shí),PIC是否能夠優(yōu)先處理優(yōu)先級(jí)較高的中斷??蓞⒖急疚乃鰴z測方式及設(shè)置兩個(gè)定時(shí)器不同的GTVPR[PRIORITY]值實(shí)現(xiàn)。

        “中斷控制器中斷屏蔽”檢測在中斷被屏蔽的狀態(tài)下,PIC是否能屏蔽中斷。可參考本文所述檢測方式及設(shè)置MSR[EE]位禁止的方式實(shí)現(xiàn),示例如下:

        在操作系統(tǒng)及應(yīng)用啟動(dòng)后,文章所介紹的測試方式仍可被應(yīng)用,需注意對硬件資源及寄存器的更改是否影響系統(tǒng)正常運(yùn)行。

        5 結(jié)束語

        自檢測技術(shù)是軍工類產(chǎn)品提高維修性、縮短平均維修時(shí)間的一種有效手段,能夠有效、及時(shí)地檢測嵌入式平臺(tái)錯(cuò)誤。

        可編程中斷控制器與時(shí)鐘屬于嵌入式平臺(tái)基本資源,在系統(tǒng)運(yùn)行過程中發(fā)揮著重要的作用,其精確度及有效性對系統(tǒng)性能至關(guān)重要。

        本文通過對MPC8641處理器中中斷控制器及全局時(shí)鐘的功能描述,并以工程實(shí)例為依據(jù)提出一種方法,介紹了在操作系統(tǒng)啟動(dòng)前對各類相關(guān)寄存器的初始化方式,從而判斷中斷控制器是否能正常響應(yīng)中斷請求。

        [1]CAO Guiping.Detailed explanation of device driver development [M].Beijing:Publishing House of Electronics Industry,2011(in Chinese). [曹桂平.VxWorks設(shè)備驅(qū)動(dòng)開發(fā)詳解[M].北京:電子工業(yè)出版社,2011.]

        [2]ZHANG Binfeng,CAO Xinggang,WANG Bin.Design of general processor module based on MPC8245 [J].Aeronautical Computing Technique,2011,41 (5):102-105 (in Chinese).[張斌峰,曹興岡,王斌.基于MPC8245的通用處理器模塊的設(shè)計(jì) [J].航空計(jì)算技術(shù),2011,41 (5):102-105.]

        [3]WANG Pinggang,LV Zunming,WAN Liujin.Design and realization of VxWorks BSP [J].Computer System & Applications,2011,20 (12):91-94 (in Chinese).[王平剛,呂遵明,萬留進(jìn).VxWorks系統(tǒng)的BSP設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2011,20 (12):91-94.]

        [4]YANG Fang,QI Xuan,DONG Li,et al.Research of interrupt system resource conflict detection technology for embedded software [J].Computer Engineering & Design,2010,31(23):5036-5038 (in Chinese). [楊芳,齊璇,董麗,等.嵌入式軟件中斷系統(tǒng)資源沖突檢測技術(shù)研究 [J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31 (23):5036-5038.]

        [5]WANG Changqing,CEN Fan,CAI Yuzhi.The hardware design of embedded system for multi-core processor based on PowerPC architecture [J].Control and Automation Publication Group,2010,27 (17):6-7 (in Chinese). [王長清,岑凡,蔡禹智.基于PowerPC架構(gòu)多核處理器嵌入式系統(tǒng)硬件設(shè)計(jì)[J].微計(jì)算機(jī)信息,2010,27 (17):6-7.]

        [6]SUO Wenping,AN Jianfeng,F(xiàn)AN Xiaoya.Reliability of interrupt mechanism in SoC [J].China Integrated Circuit,2007,16 (7):63-66 (in Chinese). [索文平,安建峰,樊曉椏.片上系統(tǒng)中斷機(jī)制的可靠性設(shè)計(jì) [J].中國集成電路,2007,16 (7):63-66.]

        [7]DING Yi,HU Fenglin,LI Guokuan.Research on advanced programmable interrupt controller systems [J].Computer Engineering & Science,2005,27 (12):97-100 (in Chinese).[丁一,胡封林,李國寬.高級(jí)可編程中斷控制器系統(tǒng)的研究[J].計(jì)算機(jī)工程與科學(xué),2005,27 (12):97-100.]

        [8]Freescale Semiconductor,Inc.MPC8641Dintegrated host processor family reference manual [R].USA:Freescale Semiconductor,Inc.Rev.0,2006.

        [9]WANG Fan,HU Xiaoji,WANG Youwei,et al.BIT design of motherboard based on CPCI and LPC bus [J].Computer Engineering & Design,2011,32 (8):2905-2908 (in Chinese).[王凡,胡曉吉,王有為,等.基于CPCI與LPC總線的主板BIT設(shè)計(jì) [J].計(jì)算機(jī)工程與設(shè)計(jì),2011,32 (8):2905-2908.]

        [10]ZHENG Wenrong,YAN Dong,LI Wenlei.Study on the application of BIT to ship borne gun weaponry system [J].Foreign E-lectronic Measurement Technology,2011,30 (11):33-35 (in Chinese).[鄭文榮,嚴(yán)東,李文雷.BIT在艦炮武器系統(tǒng)的應(yīng)用淺析 [J].國外電子測量技術(shù),2011,30 (11):33-35.]

        [11]Lv Xuezhi,Yu Yongli,Zhang Liu,et al. Modeling and simu-lation for complex repairable system with build-in test equipment [J].Journal of China Ordnance,2011,7 (2):119-120.

        猜你喜歡
        服務(wù)程序內(nèi)核寄存器
        萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
        基于移動(dòng)終端的人事信息員工自助服務(wù)系統(tǒng)設(shè)計(jì)
        強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
        基于C#的進(jìn)程守護(hù)程序的設(shè)計(jì)
        視聽(2020年3期)2020-06-11 14:28:18
        Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
        基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
        Linux內(nèi)核mmap保護(hù)機(jī)制研究
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        水利工程施工監(jiān)理服務(wù)程序及質(zhì)量控制
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
        亚洲人妖女同在线播放| 越猛烈欧美xx00动态图| 欧洲色综合| 蜜桃在线观看免费高清完整版| 国产亚洲综合另类色专区| 亚洲国产一区二区三区视频在线 | 亚洲AV无码一区二区三区ba| 亚洲一区二区不卡日韩| 国产一品二品精品在线| 亚洲精品乱码8久久久久久日本| 人人妻人人澡人人爽精品欧美 | 日本高清视频在线一区二区三区| 涩涩鲁精品亚洲一区二区| 国内精品人妻无码久久久影院| 国产AV无码专区亚洲AⅤ| 成人午夜视频在线观看高清| 日韩人妻中文字幕专区| 亚洲欧美日韩国产精品一区二区| 欧美理论在线| 丝袜美腿av免费在线观看| 日本在线观看一区二区三| 精品九九人人做人人爱 | 国产自产精品露脸刺激91在线| 热门精品一区二区三区| 国产成人精品一区二区不卡| 精品乱人伦一区二区三区| 女人做爰高潮呻吟17分钟| 无码伊人久久大蕉中文无码| 中文字幕人妻久久久中出| 蜜桃一区二区三区| 国产成人精品日本亚洲11| 美女超薄透明丝袜美腿| 亚洲三级香港三级久久| 午夜免费视频| 五月天久久国产你懂的| 精品国产一区二区三广区| 久久久久久久久无码精品亚洲日韩| 三年片免费观看大全国语| 日本不卡在线一区二区三区视频| 国产人妖在线视频网站| 青春草在线视频免费观看|