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

        ?

        嵌入式車(chē)載設(shè)備中存儲(chǔ)系統(tǒng)的抗干擾技術(shù)研究

        2015-07-22 22:13:43魏峰田錦
        現(xiàn)代電子技術(shù) 2015年14期
        關(guān)鍵詞:抗干擾嵌入式系統(tǒng)

        魏峰+田錦

        摘 要: 在此論述了嵌入式車(chē)載終端的存儲(chǔ)系統(tǒng)抗干擾設(shè)計(jì)方法。以車(chē)載終端在現(xiàn)實(shí)工作環(huán)境中所遇故障為例,分析溫度、文件系統(tǒng)、芯片質(zhì)量及存儲(chǔ)電路設(shè)計(jì)等幾種疑似故障原因并列出論證方法,通過(guò)改進(jìn)NANDFLASH的設(shè)計(jì)電路,增加電容以保障存儲(chǔ)系統(tǒng)端口電壓從而達(dá)到穩(wěn)定電路的目的,可以方便地?cái)U(kuò)充到同類(lèi)系統(tǒng)的設(shè)計(jì)方案中。在實(shí)際工作環(huán)境中,實(shí)驗(yàn)證明了方案的有效性。

        關(guān)鍵詞: 嵌入式系統(tǒng); NANDFLASH; U?boot; BootStrap; 抗干擾

        中圖分類(lèi)號(hào): TN911?34; TP368.2 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2015)14?0052?03

        0 引 言

        近年來(lái)隨著嵌入式技術(shù)的發(fā)展,在智能公交行業(yè)隨處可見(jiàn)嵌入式系統(tǒng)產(chǎn)品。常見(jiàn)的嵌入式Linux系統(tǒng)硬件是由微處理器、外圍存儲(chǔ)器、I/O系統(tǒng)以及外設(shè)組成,南京普天研發(fā)生產(chǎn)的CPVD?IV型智能調(diào)度設(shè)備采用AT91SAM9260為主控芯片,以三星公司生產(chǎn)的64 MB的K9F1208UOD作為NANDFLASH,以K4s561632J為SDRAM所組成的一套嵌入式系統(tǒng)方案。

        公交車(chē)載設(shè)備由于工作環(huán)境復(fù)雜,受溫度、車(chē)況、電源和道路等條件影響故障幾率很高。針對(duì)在商業(yè)使用初期出現(xiàn)的問(wèn)題以及造成的干擾,歷經(jīng)各種方案分析和實(shí)驗(yàn)驗(yàn)證,從而確定故障的問(wèn)題所在并進(jìn)行集成電路的改進(jìn)和完善。

        1 嵌入式系統(tǒng)啟動(dòng)過(guò)程分析

        嵌入式設(shè)備開(kāi)機(jī)后BootStrap引導(dǎo)加載NANDFLASH中U?boot程序,然后解壓Linux內(nèi)核,啟動(dòng)文件系統(tǒng)和應(yīng)用程序,從而使終端進(jìn)入工作狀態(tài)[1]。

        1.1 Bootstrap啟動(dòng)過(guò)程

        AT91SAM9260具有片內(nèi)和片外2種引導(dǎo)方式,由于本系統(tǒng)采用外部NANDFLASH引導(dǎo),所以設(shè)置BMS=0;系統(tǒng)上電后,MCU會(huì)自動(dòng)將NANDFLASH的前4 KB代碼(Bootstrap)拷貝到SRAM中運(yùn)行[2]。Bootstrap首先進(jìn)入main()函數(shù)中執(zhí)行hw_init()初始化硬件:關(guān)閉看門(mén)狗器件,避免因?yàn)槌跏蓟布斐蔁o(wú)法喂狗而頻繁重啟,然后配置相關(guān)的PLL頻率,使能I?Cache,配置相關(guān)的PIOS,使管腳輸出合適的電平啟動(dòng)周?chē)庠O(shè),并進(jìn)一步配置Matrix,算法流程圖1所示。

        部分代碼如下:

        /* Disable watchdog */

        writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);

        /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */

        pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);

        /* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */

        pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);

        /* Configure PLLB */

        pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);

        圖1 Bootstrap啟動(dòng)流程圖

        初始化硬件后,調(diào)用load_NANDFLASH(IMG_ADDRESS, IMG_SIZE, JUMP_ADDR)函數(shù)從內(nèi)存空間中調(diào)用U?boot映像到JUMP_ADDR地址中運(yùn)行。函數(shù)參數(shù)定義如下:

        #define IMG_ADDRESS 0x20000

        /* Image Address in NANDFLASH */

        #define IMG_SIZE 0x30000

        /* Image Size in NANDFLASH */

        #define MACH_TYPE 0x44B

        /* AT91SAM9260?EK */

        #define JUMP_ADDR 0x23F00000

        /* Final Jump Address */

        對(duì)于BootStrap的大小,根據(jù)AT91SAM9260芯片內(nèi)存空間設(shè)置的大小,限制在4 KB大小,SRAM空間大小分配[3]如圖2所示。

        圖2 AT91SAM9260內(nèi)存分配圖

        1.2 U?boot啟動(dòng)過(guò)程分析

        U?boot加載后,主要分成兩個(gè)階段來(lái)啟動(dòng):第一段進(jìn)入Start.S用匯編語(yǔ)言實(shí)現(xiàn)MCU體系結(jié)構(gòu)的設(shè)備初始化;第二階段進(jìn)入start_armboot() 用C語(yǔ)言來(lái)實(shí)現(xiàn)外圍所用到的硬件體系,并在do_bootm()中執(zhí)行do_bootm_Linux()來(lái)調(diào)用Linux內(nèi)核。

        2 NANDFLASH系統(tǒng)設(shè)計(jì)方案

        NANDFLASH作為智能調(diào)度設(shè)備的主體部分,存儲(chǔ)大部分?jǐn)?shù)據(jù)信息和引導(dǎo)開(kāi)機(jī)程序鏡像,能否正常工作非常重要。K9F1208為三星公司出產(chǎn)的64 MB的NANDFLASH,在商業(yè)領(lǐng)域和工業(yè)領(lǐng)域應(yīng)用廣泛,為Atmel公司設(shè)計(jì)的標(biāo)配方案選擇芯片。芯片管腳圖如圖3所示,主要數(shù)據(jù)線(xiàn)[4]是:

        [RE]:連接MCU的NANDOE管腳,控制NANDFLASH讀使能;

        [WE]:連接MCU的NANDWE管腳,控制NANDFLASH寫(xiě)使能;

        [RB]:NANDFLASH讀/忙控制管腳,連接MCU的PC13管腳,并通過(guò)10 KΩ上拉電阻接入3.3 V電壓。

        圖3 NANDFLASH管腳圖

        3 故障現(xiàn)象及理論分析

        在產(chǎn)品應(yīng)用初期,現(xiàn)場(chǎng)開(kāi)機(jī)工作時(shí)候出現(xiàn)故障:LCD顯示屏出現(xiàn)“白屏”現(xiàn)象,無(wú)任何顯示信息,且串口無(wú)任何調(diào)試信息;而同一產(chǎn)品在實(shí)驗(yàn)室啟動(dòng)正常,能顯示諸如gprs,gps等圖標(biāo)。此故障占設(shè)備總數(shù)的30%,嚴(yán)重地阻礙了產(chǎn)品的交付使用。從使用環(huán)境、芯片質(zhì)量和電路設(shè)計(jì)等方面分析出現(xiàn)此類(lèi)故障原因有以下幾種:

        3.1 高溫導(dǎo)致系統(tǒng)工作不正常

        由于公交車(chē)工作環(huán)境比較惡劣,顛簸比較厲害,而且夏季太陽(yáng)高溫直曬,很容易造成設(shè)備故障。認(rèn)為高溫是故障的原因之一,理由如下:

        (1) 車(chē)載設(shè)備出現(xiàn)故障高發(fā)原因在6月以后,為夏季高溫時(shí)間,且設(shè)備很容易受太陽(yáng)直射;

        (2) 車(chē)載設(shè)備安裝位置靠近發(fā)動(dòng)機(jī)位置,發(fā)動(dòng)機(jī)工作致使車(chē)蓋位置溫度燙手;

        (3) 由于防水的原因,設(shè)備外殼采用鋁制外殼,結(jié)實(shí)且密不透風(fēng),很容易將外面高溫導(dǎo)入設(shè)備內(nèi)部;

        (4) 經(jīng)測(cè)試高溫時(shí)設(shè)備內(nèi)部達(dá)到60 ℃左右,有可能造成MCU無(wú)法正常工作。

        針對(duì)高溫問(wèn)題,分別采取以下措施和方法驗(yàn)證:

        (1) 修改設(shè)備安裝位置,遠(yuǎn)離發(fā)動(dòng)機(jī)、水箱和光照強(qiáng)的地方,避免高溫傳導(dǎo)造成設(shè)備內(nèi)問(wèn)題提升;

        (2) 進(jìn)行高溫實(shí)驗(yàn),隨機(jī)抽取10~20臺(tái)設(shè)備連續(xù)高溫24 h以上驗(yàn)證超高溫后能否正常工作。

        經(jīng)連續(xù)3個(gè)批次高溫驗(yàn)證,實(shí)驗(yàn)數(shù)據(jù)如表1所示。

        表1 高溫老化測(cè)試數(shù)據(jù)

        經(jīng)實(shí)驗(yàn)數(shù)據(jù)可以得出結(jié)論,過(guò)高溫可以出現(xiàn)部分延遲啟動(dòng)但不是出現(xiàn)此類(lèi)故障原因的主要問(wèn)題,此原因排除。

        3.2 YAFFS2文件系統(tǒng)存在BUG

        YAFFS2文件系統(tǒng)具有可讀/寫(xiě)、能夠識(shí)別并標(biāo)識(shí) NANDFLASH壞塊的功能,如果判別存儲(chǔ)器為壞的情況下工作不會(huì)正常。針對(duì)此類(lèi)問(wèn)題專(zhuān)門(mén)撰寫(xiě)一個(gè)針對(duì)數(shù)據(jù)的循環(huán)打開(kāi)讀/寫(xiě)的程序來(lái)驗(yàn)證設(shè)備,發(fā)現(xiàn)經(jīng)過(guò)3 h以上的不斷循環(huán)讀/寫(xiě)后,在串口終端會(huì)發(fā)出NANDFLASH出現(xiàn)大量“bad block…”等信息,并使系統(tǒng)無(wú)法正常啟動(dòng)。由于啟動(dòng)信息會(huì)出現(xiàn),不是需要解決的故障原因。通過(guò)破壞性測(cè)試檢測(cè)出YAFFS2文件系統(tǒng)的脆弱性,此版本軟件無(wú)法長(zhǎng)時(shí)間進(jìn)行讀/寫(xiě),此后修改為可讀/寫(xiě)的JFFS2文件系統(tǒng)[5],避免了因?yàn)榇罅繅膲K信息導(dǎo)致無(wú)法對(duì)NANDFLASH進(jìn)行讀/寫(xiě)的YAFFS2的BUG。

        3.3 NANDFLASH質(zhì)量不過(guò)關(guān)

        針對(duì)此類(lèi)問(wèn)題,對(duì)出現(xiàn)故障設(shè)備采取更換NANDFLASH措施,實(shí)驗(yàn)效果如舊,經(jīng)同類(lèi)比較此原因排除。

        3.4 電路抗干擾能力不強(qiáng)

        針對(duì)上述原因排除,將注意力轉(zhuǎn)到集成電路本身,由于電路屬于Atmel經(jīng)典設(shè)計(jì)方案,經(jīng)過(guò)全世界無(wú)數(shù)生產(chǎn)廠(chǎng)家使用驗(yàn)證不存在設(shè)計(jì)方案錯(cuò)誤問(wèn)題,只能根據(jù)代碼走向流程來(lái)進(jìn)行大膽假設(shè),認(rèn)為NANDFLASH根本工作。針對(duì)這種問(wèn)題,輸入不同電源電壓,比較不同結(jié)果,數(shù)據(jù)如表2所示。

        表2 嵌入式系統(tǒng)電源供給效果顯示

        根據(jù)不同電壓數(shù)據(jù)可以得出,提升電源電壓后嵌入式系統(tǒng)穩(wěn)定工作,與設(shè)備工作現(xiàn)場(chǎng)故障現(xiàn)象相似。根據(jù)公交公司反饋情況最后得出由于公交車(chē)蓄電池老化,導(dǎo)致電池供電不穩(wěn),為故障的主要原因。在于蓄電池從逐漸啟動(dòng)到正常供電過(guò)程中,由于過(guò)程漫長(zhǎng)而NANDFLASH由于已經(jīng)處在故障狀態(tài),導(dǎo)致嵌入式系統(tǒng)無(wú)法正常工作。

        4 FLASH電路改進(jìn)及測(cè)試結(jié)果分析

        由上述理論研究和實(shí)驗(yàn)結(jié)果可以證明,改變NANDFLASH供給電源成為主要的解決問(wèn)題的關(guān)鍵。分析AT91SAM9260與NANDFLASH連接的管腳,當(dāng)[RB]輸入的電平為高時(shí)可以從NANDFLASH讀數(shù)據(jù),為低則存儲(chǔ)器處于忙狀態(tài),系統(tǒng)無(wú)法讀取數(shù)據(jù),處于錯(cuò)誤狀態(tài),此為問(wèn)題所在。解決問(wèn)題關(guān)鍵在于解決[RB]電平干擾,采取外接100 pF電容方案能夠解決電壓故障,并通過(guò)電容充電可以使系統(tǒng)啟動(dòng)正常[6],電路如圖4所示。

        圖4 NANDFLASH保護(hù)電路圖

        保護(hù)電路修改后,模擬現(xiàn)場(chǎng)電池環(huán)境供給,串口輸出:

        Start AT91Bootstrap...

        顯示已經(jīng)MCU已經(jīng)從NANDFLASH讀出數(shù)據(jù)并串口輸出,電路修改正常。

        5 創(chuàng)新點(diǎn)

        通過(guò)MCU的控制端口直接與NANDFLASH外圍管腳相連是通用標(biāo)準(zhǔn)電路,本方案通過(guò)修改NANDFLASH的外圍控制電路,增加[RB]管腳電壓控制保護(hù),從而達(dá)到消除系統(tǒng)電源不穩(wěn)定狀態(tài)下的干擾問(wèn)題。

        6 結(jié) 語(yǔ)

        本文以智能車(chē)載產(chǎn)品為基礎(chǔ),討論并解決在實(shí)際工作中嵌入式系統(tǒng)設(shè)備所出現(xiàn)的穩(wěn)定性問(wèn)題。為了進(jìn)行更深入的研究和開(kāi)發(fā),還需要對(duì)嵌入式系統(tǒng)的底層驅(qū)動(dòng)和功能進(jìn)行開(kāi)發(fā),以便實(shí)現(xiàn)更多的功能。隨著信息技術(shù)的快速發(fā)展,嵌入式系統(tǒng)中存儲(chǔ)技術(shù)應(yīng)用必將更穩(wěn)定,并在智能交通領(lǐng)域得到廣泛應(yīng)用。

        參考文獻(xiàn)

        [1] 孫紀(jì)坤,張小全.嵌入式Linux系統(tǒng)開(kāi)發(fā)技術(shù)詳解:基于ARM[M].北京:人民郵電出版社,2006.

        [2] 程前,陳思泰.基于AT91SAM9260的嵌入式系統(tǒng)的Bootloader啟動(dòng)流程[EB/OL].[2015?02?15].http://www.docin.com.

        [3] 劉淼.嵌入式系統(tǒng)接口設(shè)計(jì)與Linux驅(qū)動(dòng)程序開(kāi)發(fā)[M].北京:北京航空航天大學(xué)出版社,2006.

        [4] Anon.ARM的啟動(dòng)代碼(2):AT91SAM9260啟動(dòng)詳解 [EB/OL].[2011?08?23].http://blog.csdn.net/coolbacon/article.

        [5] 宋寶華.Linux設(shè)備驅(qū)動(dòng)開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2008.

        [6] 安毅,蔡伯根.基于ARM的嵌入式大容量存儲(chǔ)設(shè)備的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2008(17):146?148.

        [7] 楊忻愷,張為公,于兵,等.基于DSP的車(chē)載視頻監(jiān)控存儲(chǔ)系統(tǒng)的設(shè)計(jì)[J].電子器件,2009(4):805?808.

        猜你喜歡
        抗干擾嵌入式系統(tǒng)
        試論如何確保PLC控制系統(tǒng)的可靠性
        水浴溫控系統(tǒng)模糊自適應(yīng)PID研究與應(yīng)用
        辦公自動(dòng)化系統(tǒng)的設(shè)計(jì)
        反艦導(dǎo)彈雷達(dá)導(dǎo)引頭試驗(yàn)數(shù)據(jù)動(dòng)態(tài)處理模型設(shè)計(jì)
        嵌入式系統(tǒng)在醫(yī)療器械中的應(yīng)用分析
        基于物聯(lián)網(wǎng)項(xiàng)目驅(qū)動(dòng)的嵌入式系統(tǒng)教學(xué)改革的研究與實(shí)踐
        嵌入式系統(tǒng)課程“中斷、異常與事件”教學(xué)實(shí)踐及啟示
        面向?qū)嵺`創(chuàng)新人才培養(yǎng)的嵌入式系統(tǒng)教學(xué)研究
        艦載雷達(dá)面臨的電子對(duì)抗威脅及防范措施分析
        科技視界(2016年18期)2016-11-03 22:40:24
        變頻器控制回路抗干擾措施及調(diào)試故障處理
        国产亚洲一区二区在线观看| 青青草一级视频在线观看| 精品专区一区二区三区| 美女扒开内裤让我捅的视频| 欧美精品一区二区精品久久| 啦啦啦www播放日本观看| 美女自卫慰黄网站| АⅤ天堂中文在线网| 麻豆国产成人av高清在线| 99久久99久久久精品蜜桃| 亚洲日韩国产av无码无码精品| 欧美粗大猛烈老熟妇| 久久久久亚洲av成人网址| 日本精品极品视频在线| 久久少妇高潮免费观看| 偷拍综合在线视频二区| 亚洲妇女无套内射精| 香蕉人妻av久久久久天天| 久久AⅤ无码精品色午麻豆| 日本一区二区三区在线视频播放| 天堂视频在线观看一二区| 国产av无码专区亚洲av蜜芽| 免费无码成人av在线播放不卡| 2020最新国产激情| 日本一区二区三区清视频| 深夜放纵内射少妇| 免费精品一区二区三区第35| 欧美精品aaa久久久影院| 青春草在线观看免费视频| 一区二区三区日韩精品视频| 国产尤物精品视频| 亚洲va中文字幕无码久久不卡 | 国产精品一区一区三区| 丁香婷婷在线成人播放视频| 狠狠躁天天躁中文字幕 | 中文字幕中乱码一区无线精品 | 99热久久这里只精品国产www| 中文字幕乱码人妻无码久久久1| 亚洲成人av在线播放不卡 | 中文人妻AV高清一区二区| 日韩精品一区二区三区av|