0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

英創(chuàng)信息技術(shù)工控主板的掉電數(shù)據(jù)保護(hù)功能介紹

英創(chuàng)信息技術(shù) ? 來(lái)源:英創(chuàng)信息技術(shù) ? 作者:英創(chuàng)信息技術(shù) ? 2019-11-14 09:54 ? 次閱讀

在大多數(shù)工控應(yīng)用中,由于各種復(fù)雜的環(huán)境因素,使工控設(shè)備不可避免的會(huì)面臨供電突然斷掉的情況。在許多應(yīng)用場(chǎng)合,需要保存一部分現(xiàn)場(chǎng)數(shù)據(jù),以保證工控設(shè)備在供電回復(fù)后能繼續(xù)正常運(yùn)行。為了保證保存數(shù)據(jù)的實(shí)時(shí)性,除了已保存的數(shù)據(jù)不受掉電影響的基本特性外,現(xiàn)場(chǎng)數(shù)據(jù)的存儲(chǔ)頻率還會(huì)非常高,因此還要求數(shù)據(jù)保存的速度應(yīng)足夠快,從而不影響應(yīng)用程序的正常運(yùn)行。本文的主要目的是分析現(xiàn)場(chǎng)數(shù)據(jù)保護(hù)的若干手段,并重點(diǎn)介紹英創(chuàng)工控主板特有的小數(shù)據(jù)高速存儲(chǔ)方案,以支持關(guān)鍵現(xiàn)場(chǎng)數(shù)據(jù)的備份。

本文所指的英創(chuàng)工控主板包括EM9160、EM9260、EM9360以及EM9161這4個(gè)產(chǎn)品線的所有型號(hào)的產(chǎn)品。這些主板均帶有大容量的NandFlash存儲(chǔ)器,作為非易失性存儲(chǔ)器,NandFlash主要用于存儲(chǔ)應(yīng)用程序、歷史數(shù)據(jù)備份等內(nèi)容。盡管NandFlash也可以作為現(xiàn)場(chǎng)數(shù)據(jù)保護(hù)的存儲(chǔ)介質(zhì),但考慮到NandFlash介質(zhì)有一定的擦寫壽命限制,且數(shù)據(jù)是按扇區(qū)(512字節(jié)或2K字節(jié))為單位寫入,因此還存在寫入效率較低的問(wèn)題,因此基于NandFlash的文件系統(tǒng)存儲(chǔ)不是作為現(xiàn)場(chǎng)數(shù)據(jù)保護(hù)的最佳方案。

對(duì)幾十到幾百個(gè)字節(jié)的現(xiàn)場(chǎng)數(shù)據(jù)的保存,一個(gè)比較好的辦法是外擴(kuò)一片NVRAM,典型的芯片可以考慮鐵電存儲(chǔ)器。有關(guān)鐵電存儲(chǔ)器的具體應(yīng)用,客戶可以參考《工控主板支持鐵電存儲(chǔ)器的簡(jiǎn)易方案》一文。在英創(chuàng)工控主板,鐵電存儲(chǔ)器的寫入速度為56KB/s,即寫入一個(gè)字節(jié)的時(shí)間在18us的水平。采用鐵電存儲(chǔ)器或其它NVRAM的優(yōu)點(diǎn)是存儲(chǔ)的數(shù)據(jù)量沒(méi)有限制,但前提是需要增加一定的硬件成本,這可能成為一些大批量應(yīng)用,對(duì)成本極其敏感的設(shè)備的障礙。

針對(duì)需要保存的現(xiàn)場(chǎng)數(shù)據(jù)通常很少這一特點(diǎn),同時(shí)又能避免客戶設(shè)備為了現(xiàn)場(chǎng)數(shù)據(jù)保存功能而增加額外的成本開(kāi)銷,我們通過(guò)優(yōu)化工控主板的內(nèi)核,為應(yīng)用程序提供了最大6個(gè)字節(jié)、帶掉電保護(hù)功能的高速存儲(chǔ)空間,用于對(duì)關(guān)鍵現(xiàn)場(chǎng)數(shù)據(jù)的備份。由于這6個(gè)字節(jié)在系統(tǒng)內(nèi)部,其寫入速度高達(dá)1.5MB/s以上,即寫入一個(gè)字節(jié)的時(shí)間在0.6us水平,6個(gè)字節(jié)的寫入時(shí)間為3.6us。幾微秒的存儲(chǔ)時(shí)間可完全保證系統(tǒng)應(yīng)用線程的正常運(yùn)行。應(yīng)用程序可通過(guò)3個(gè)系統(tǒng)調(diào)用來(lái)實(shí)現(xiàn)現(xiàn)場(chǎng)數(shù)據(jù)的讀寫,它們是:

1、檢查當(dāng)前存儲(chǔ)的數(shù)據(jù)是否有效

//

// return = TRUE: data stored in NVRAM is valid

// = FALSE: data stored in NVRAM is corrupted or data is unavailable

//

BOOL NVRAMQuery()

{

BOOL bGoodData;

DWORD dwOutBufSize;

DWORD dwReturnBytes = 0;

BOOL bRet;

bGoodData = FALSE;

dwOutBufSize = sizeof(BOOL);

bRet = KernelIoControl(IOCTL_EM9X60_NVRAM_BYTE_QUERY, NULL, 0, (LPVOID)&bGoodData, dwOutBufSize, &dwReturnBytes);

if(bRet)

{

if(!bGoodData)

{

bRet = FALSE;

}

}

return bRet;

}

2、從系統(tǒng)讀出1-6個(gè)字節(jié)

//

// input dwMaxLength: buffer length in byte

// output pOutBuffer: output data buffer

// return 》= 0: number of byte read from NVRAM 《= dwmaxLength

// 《 0: read failed

int NVRAMRead(LPVOID pOutBuffer, DWORD dwMaxLength)

{

DWORD dwReturnBytes = 0;

BOOL bRet;

bRet = KernelIoControl(IOCTL_EM9X60_NVRAM_BYTE_READ, NULL, 0, (LPVOID)pOutBuffer, dwMaxLength, &dwReturnBytes);

if(!bRet)

{

return -1;

}

return (int)dwReturnBytes;

}

3、向系統(tǒng)寫入1-6個(gè)字節(jié)

//

// input pInBuffer: input data buffer

// dwDataLength: number of byte need to write 《= 6

// return 》= 0: number of byte written into NVRAM

// 《 0: write failed

//

int NVRAMWrite(LPVOID pInBuffer, DWORD dwDataLength)

{

DWORD dwReturnBytes = 0;

BOOL bRet;

bRet = KernelIoControl(IOCTL_EM9X60_NVRAM_BYTE_WRITE, (LPVOID)pInBuffer, dwDataLength, NULL, 0, &dwReturnBytes);

if(!bRet)

{

return -1;

}

return dwReturnBytes;

}

在后續(xù)出貨的相關(guān)工控主板中,都將加上6字節(jié)掉電保護(hù)高速存儲(chǔ)功能。對(duì)已購(gòu)買英創(chuàng)公司的主板產(chǎn)品,若需要進(jìn)行關(guān)鍵現(xiàn)場(chǎng)數(shù)據(jù)保存功能的客戶,可將主板寄回英創(chuàng)公司進(jìn)行免費(fèi)更新并索取相關(guān)操作的完整源代碼。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6083

    瀏覽量

    35097
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    創(chuàng)支持Linux高級(jí)客戶自行移植內(nèi)核

    上市)  該項(xiàng)服務(wù)具體說(shuō)明和實(shí)施流程參見(jiàn):支持客戶進(jìn)行Linux移植  需要該服務(wù)的客戶需與創(chuàng)簽訂技術(shù)保密協(xié)議,并承諾嚴(yán)格履行協(xié)議:創(chuàng)
    發(fā)表于 01-18 13:52

    創(chuàng)工控主板產(chǎn)品選型指南

      成都創(chuàng)信息技術(shù)有限公司是一家專注于嵌入式工控主板研發(fā)、銷售與服務(wù)的高科技公司,在嵌入式領(lǐng)域已有超16年的從業(yè)經(jīng)歷。
    發(fā)表于 02-28 11:28

    創(chuàng)工控主板掉電數(shù)據(jù)保護(hù)功能

    本文所指的創(chuàng)工控主板包括EM9160、EM9260、EM9360 以及EM9161 這4 個(gè)產(chǎn)品線的所有型號(hào)的產(chǎn)品。這些主板均帶有大容量的
    發(fā)表于 06-09 16:20 ?29次下載

    創(chuàng)信息技術(shù)ARM9工控板遠(yuǎn)程抓拍圖像應(yīng)用介紹

    創(chuàng)ARM9工控主板功能齊全、體積小巧、性能穩(wěn)定、超低價(jià)格的嵌入式主板產(chǎn)品。
    的頭像 發(fā)表于 11-13 09:41 ?1903次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b>ARM9<b class='flag-5'>工控</b>板遠(yuǎn)程抓拍圖像應(yīng)用<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)工控主板EM9360的GPIO介紹

    創(chuàng)公司的ARM9工控主板產(chǎn)品 EM9360是一款預(yù)裝WinCE操作系統(tǒng),以多種通訊接口、支持各種擴(kuò)展為其技術(shù)特色。EM9360的板載的3路
    的頭像 發(fā)表于 11-14 09:34 ?2332次閱讀

    創(chuàng)信息技術(shù)工控主板的復(fù)位管理介紹

     創(chuàng)公司的工控主板是基于ARM9 CPU、預(yù)裝正版WinCE的嵌入式主板產(chǎn)品。作為嵌入式應(yīng)用,系統(tǒng)的可靠啟動(dòng)是其可靠性的重要組成部分。本文
    的頭像 發(fā)表于 11-14 10:03 ?1582次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>的復(fù)位管理<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)創(chuàng)工控主板支持電力終端標(biāo)準(zhǔn)顯示介紹

     創(chuàng)公司EM9X60系列工控主板廣泛應(yīng)用于電力行業(yè),在最新的國(guó)家電網(wǎng)公司技術(shù)標(biāo)準(zhǔn)《電力用戶用電信息
    的頭像 發(fā)表于 11-15 09:59 ?1633次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>支持電力終端標(biāo)準(zhǔn)顯示<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)WinCE工控主板數(shù)據(jù)庫(kù)配置簡(jiǎn)介

    。由于創(chuàng)公司的產(chǎn)品處于不斷發(fā)展之中,WinCE也在不斷的發(fā)展之中,導(dǎo)致在不同型號(hào)的產(chǎn)品中存在配置的數(shù)據(jù)庫(kù)的情況有所不同,本文的主要目的是詳細(xì)介紹
    的頭像 發(fā)表于 01-14 11:35 ?1404次閱讀

    創(chuàng)信息技術(shù)ARM9工控主板的SMS短信息應(yīng)用介紹

    傳輸?shù)膽?yīng)用越來(lái)越廣泛,其中主要以GPRS數(shù)據(jù)通訊及SMS短信息方式為主。GPRS數(shù)據(jù)通訊是以TCP/IP方式進(jìn)行通訊,GPRS模塊發(fā)送SMS短信,是通過(guò)串口發(fā)送AT指令來(lái)實(shí)現(xiàn)。
    的頭像 發(fā)表于 01-14 11:45 ?1292次閱讀

    創(chuàng)信息技術(shù)工控主板網(wǎng)絡(luò)變壓器連接方法

    在上一篇介紹創(chuàng)主板網(wǎng)絡(luò)變壓器連接方法的文章中(《創(chuàng)工控
    的頭像 發(fā)表于 01-14 14:09 ?3542次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>網(wǎng)絡(luò)變壓器連接方法

    創(chuàng)信息技術(shù)工控主板USB通信方案介紹

    創(chuàng)AMR9系列工控主板可以使用USB與PC連接并進(jìn)行通信。在主板上,我們將USB引到了COM1,使得我們可以通過(guò)操作串口的方式來(lái)操作USB
    的頭像 發(fā)表于 01-15 14:44 ?1700次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b><b class='flag-5'>工控</b><b class='flag-5'>主板</b>USB通信方案<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)Linux工控主板支持3G網(wǎng)卡介紹

    (3rd-generation,第三代移動(dòng)通訊技術(shù))運(yùn)用的普及,創(chuàng)公司的工控主板同樣對(duì)3G無(wú)線通訊做了完備的支持。本文就以目前很常用的華為
    的頭像 發(fā)表于 01-17 09:49 ?2146次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b>Linux<b class='flag-5'>工控</b><b class='flag-5'>主板</b>支持3G網(wǎng)卡<b class='flag-5'>介紹</b>

    創(chuàng)信息技術(shù)WinCE主板與STM32多功能模塊通訊介紹

    ,STM32F103RCT6通過(guò)其USB Device接口與創(chuàng)工控主板連接通訊,STM32在WinCE系統(tǒng)中被當(dāng)做一個(gè)串口設(shè)備,
    的頭像 發(fā)表于 02-06 11:12 ?1994次閱讀

    創(chuàng)信息技術(shù)工控主板產(chǎn)品選型指南介紹

    成都創(chuàng)信息技術(shù)有限公司是一家專注于嵌入式工控主板研發(fā)、銷售與服務(wù)的高科技公司,在嵌入式領(lǐng)域已有18年的從業(yè)經(jīng)歷。
    的頭像 發(fā)表于 02-06 11:31 ?1630次閱讀

    創(chuàng)信息技術(shù)ESMARC工控主板升級(jí)簡(jiǎn)介

    規(guī)范定義了主板基本的機(jī)械指標(biāo),管腳功能。創(chuàng)以ESM命名開(kāi)頭的工控主板都符合ESMARC規(guī)范,這
    的頭像 發(fā)表于 02-07 10:35 ?1537次閱讀
    <b class='flag-5'>英</b><b class='flag-5'>創(chuàng)</b><b class='flag-5'>信息技術(shù)</b>ESMARC<b class='flag-5'>工控</b><b class='flag-5'>主板</b>升級(jí)簡(jiǎn)介