日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]針對(duì)嵌入式應(yīng)用系統(tǒng)片外Flash存儲(chǔ)器IAP無現(xiàn)成方案的問題,介紹一種基于代碼重入思想的片外存儲(chǔ)器IAP解決方案。

摘  要:針對(duì)嵌入式應(yīng)用系統(tǒng)片外Flash存儲(chǔ)器IAP無現(xiàn)成方案的問題,介紹一種基于代碼重入思想的片外存儲(chǔ)器IAP解決方案。結(jié)合LPC2210及SST39VFl60芯片,簡(jiǎn)介兩款芯片特點(diǎn),給出應(yīng)用連接框圖;分析IAP實(shí)現(xiàn)要點(diǎn),并給出IAP的實(shí)現(xiàn)代碼。
關(guān)鍵詞:ARM7TDMI 嵌入式應(yīng)用系統(tǒng) 片外Flash IAP


引 言
    以ARM芯片為處理器核的嵌入式應(yīng)用系統(tǒng),以其小體積、低功耗、低成本、高性能、豐富的片內(nèi)資源以及對(duì)操作系統(tǒng)的廣泛支持,得到了人們?cè)絹碓蕉嗟那嗖A。包括工業(yè)控制領(lǐng)域、無線通信領(lǐng)域、網(wǎng)絡(luò)應(yīng)用、消費(fèi)電子、成像和安全產(chǎn)品等,如今,ARM微處理器及嵌入式技術(shù)的應(yīng)用幾乎已經(jīng)滲透到了各個(gè)領(lǐng)域。其中ARM7作為ARM微處理器系列中的一員,是低功耗的32位RISC處理器。Samsung公司的S3C4510B、Philips公司的LPC20XX、LPC21XX、LPC22XX系列等都是ARM7處理器。這些為數(shù)繁多的ARM7處理器,因其片內(nèi)外設(shè)不同而各擅所長(zhǎng),但都應(yīng)用同樣的ARM7TDMI核(或ARM7TDMI—S核,這是ARM7TDMI的綜合版本,這兩種核對(duì)處理器應(yīng)用人員來說沒有區(qū)別)。可以說,ARM7TDMI是目前使用最為廣泛的32位嵌入式RIsc處理器。ARM7TDMI核應(yīng)用馮·諾依曼結(jié)構(gòu),處理器使用的存儲(chǔ)器中數(shù)據(jù)和程序指令不予區(qū)分,PC寄存器指向的存儲(chǔ)器單元,無論是ROM區(qū)還是RAM區(qū),只要符合ARM指令的格式都可以執(zhí)行,這就為系統(tǒng)自修改提供了可能。在應(yīng)用編程IAP(InApplicatAion Program)就是這樣的自修改程序。它先在RAM存儲(chǔ)器中寫人數(shù)據(jù)值,然后使PC指向該存儲(chǔ)段,把該段作為程序段來執(zhí)行。很多ARM7芯片自帶IAP處理器,應(yīng)用其自帶的IAP處理器可以方便地對(duì)其片內(nèi)集成的Flash存儲(chǔ)器進(jìn)行在應(yīng)用編程,但幾乎所有的ARM核芯片均不支持片外IAP處理,因?yàn)槠釬lash存儲(chǔ)器是用戶選型的,芯片生產(chǎn)廠家無法先知先覺,而不同F(xiàn)lash存儲(chǔ)器其編程時(shí)序也不盡相同,導(dǎo)致芯片生產(chǎn)廠家無法提供通用的IAP代碼。那么,如何對(duì)嵌入式系統(tǒng)的片外Flash存儲(chǔ)器進(jìn)行在應(yīng)用編程呢?這里分兩種情況:一是普通代碼存放在片外單獨(dú)1片F(xiàn)lash中,IAP代碼在另一片F(xiàn)lash中完成,此時(shí)只要依據(jù)Flash的操作時(shí)序執(zhí)行IAP代碼,完成擦除或?qū)懭氩僮骷纯伞_@種情況雖然簡(jiǎn)單,但應(yīng)用了2片F(xiàn)lash;而IAP代碼很小,一般完全可以集成到1片中,所以這里對(duì)這種情況不予考慮。另一種情況是1片F(xiàn)lash中既要存儲(chǔ)普通代碼,又要實(shí)現(xiàn)IAP。下面以Phnips公司的LPC2210 和 Silicon storage Technology 公司的SST39VFl60為例,詳細(xì)討論這種情況IAP的解決方案。


1 硬件結(jié)構(gòu)
1.1 LPC2210介紹

    Philips公司的LPC22lO是一款基于支持實(shí)時(shí)仿真和嵌入式跟蹤的16/32位ARM7TDMI-SCPU的微控制器。芯片采用144腳封裝,有16 KB片內(nèi)靜態(tài)RAM,開放外部總線;通過外部存儲(chǔ)器接口可將外部存儲(chǔ)器配置成4組,每組的容量高達(dá)16 Mb,數(shù)據(jù)寬度8/16/32位均可;具有多個(gè)32位定時(shí)器、8路lO位PWM輸出、多個(gè)串行接口(包括2個(gè)16C550工業(yè)標(biāo)準(zhǔn)UART、高速I2C接口和2個(gè)sPI接口)以及9個(gè)外部中斷、多達(dá)76個(gè)可承受5 V電壓的通用I/O口,同時(shí)內(nèi)嵌實(shí)時(shí)時(shí)鐘和看門狗,片內(nèi)外設(shè)功能豐富強(qiáng)大;片內(nèi)晶振頻率范圍l~30 MHz,通過片內(nèi)PLL可實(shí)現(xiàn)最大為60 MHz的CPU工作頻率,具有2種低功耗模式——空閑和掉電,通過外部中斷將處理器從掉電模式中喚醒,并可通過個(gè)別使能/禁止外部功能來優(yōu)化功耗。以上特性,使其特別適用于工業(yè)控制、醫(yī)療系統(tǒng)、訪問控制和POS機(jī),同時(shí)也非常適合于通信網(wǎng)關(guān)協(xié)議轉(zhuǎn)換器,嵌入式軟Modem,以及其他各種類型的應(yīng)用。


1.2 SST39VFl60介紹

    Silicon StoraLge Technology公司的SST39VFl60是一個(gè)lM×16b的CMOS多功能Flash器件,單電壓的讀和寫操作,電壓范圍3.O~3.6 V,提供48腳TSOP和48腳TFBGA兩種封裝形式。

    該器件主要操作包括讀、字編程、扇區(qū)/塊擦除和芯片擦除操作。擦除和字編程必須遵循一定的時(shí)序,表l列出了扇區(qū)擦除和字編程過程及時(shí)序。擦除或編程操作過程中讀取觸發(fā)位DQ6將得到“1”和“O”的循環(huán)跳變;而操作結(jié)束后讀DQ6,得到的是不變的固定值。這是器件提供的寫操作狀態(tài)檢測(cè)軟件方法。


1.3 硬件連接
    SST39VF160作為系統(tǒng)的程序存儲(chǔ)器,以LPC2210的CSO作為Flash的片選信號(hào),處理器配置Boot引腳為16位數(shù)據(jù)總線寬度后,上電可直接執(zhí)行SST39VFl60中代碼。此Flash芯片為16位數(shù)據(jù)寬度,無字節(jié)控制總線,所以應(yīng)用中不使用LPC2210的BLS引腳。系統(tǒng)結(jié)構(gòu)示意圖如圖l所示。

 
2 軟件實(shí)現(xiàn)
2.1 IAP實(shí)現(xiàn)要點(diǎn)分析

    在嵌入式應(yīng)用系統(tǒng)中,通常要求記錄一些現(xiàn)場(chǎng)的傳感、交互輸入數(shù)據(jù),通常把數(shù)據(jù)記錄在Flash存儲(chǔ)器中,以便下次上電能獲取以前的數(shù)據(jù)。如果系統(tǒng)程序和數(shù)據(jù)分開存儲(chǔ),那么只要對(duì)存放數(shù)據(jù)的Flash器件進(jìn)行編程即可。然而大多數(shù)嵌入式系統(tǒng),程序和需保存的數(shù)據(jù)都共存于同一Flash存儲(chǔ)器中,那么是否也如前所述,可對(duì)Flash存儲(chǔ)器直接編程呢?理論和實(shí)踐都表明不可以。先從理論上計(jì)算:LPC22lO允許的芯片核工作頻率(CCLK)范圍是10~60 MHz,存儲(chǔ)器讀訪問長(zhǎng)度由存儲(chǔ)器組配置寄存器BCFG中讀訪問的長(zhǎng)度域控制WSTl控制,其最大可用長(zhǎng)度為35個(gè)CCLK,而SST39VFl60的扇區(qū)擦除典型時(shí)間為18 ms。下面是計(jì)算算式:
TRDmax=RDLenmax/CCLKmin=35/10×10一6=3.5 μs
.TD=18 ms》3.5μs

其中:TRDmax—最大讀訪問時(shí)間;
      RDLenmix——最大讀訪問可用長(zhǎng)度;
      CCLKmin——最小核工作時(shí)鐘頻率;
      Tp——扇區(qū)擦除典型時(shí)間。

    算式得出扇區(qū)擦除典型時(shí)間遠(yuǎn)大于最大讀訪問時(shí)間。這樣一來,如果再給某Flash寫數(shù)據(jù),同時(shí)于其中預(yù)取指,那么因F1ash在執(zhí)行命令期間,對(duì)其他操作不響應(yīng),預(yù)取出的必定是其數(shù)據(jù)引腳上的不確定數(shù)據(jù),預(yù)取指失敗。實(shí)踐也表明,如果在程序執(zhí)行過程中,對(duì)同一Flash進(jìn)行扇區(qū)擦除,必定引起預(yù)取指中斷。

    為了解決在同一Flash芯片存放程序并IAP這一問題,引進(jìn)代碼重映射的思想。所謂重映射就是代碼先自復(fù)制到指定存儲(chǔ)區(qū),然后跳轉(zhuǎn)到指定區(qū)的起點(diǎn)開始執(zhí)行。這里,lAP程序先自復(fù)制到LPC2210片內(nèi)SRAM中,然后跳轉(zhuǎn)到SRAM執(zhí)行l(wèi)AP代碼。前面說過,ARM7為馮·諾依曼結(jié)構(gòu),這就為IAP程序重映射提供了可能。

    編寫可重映射代碼的關(guān)鍵是要解決程序中相對(duì)偏移的問題,ARM7指令系列中涉及相對(duì)偏移的指令主要有LDR/STR以及跳轉(zhuǎn)指令。這里的解決方案是:凡涉及偏移值的指令通通采用基址變址尋址方式,以PC寄存器作基址寄存器,以立即數(shù)為變址,這樣當(dāng)程序塊整塊移動(dòng)時(shí),要加載的數(shù)據(jù)或跳轉(zhuǎn)的地址與當(dāng)前Pc值的偏移值固定,解決了相對(duì)偏移問題。

2.2 扇區(qū)擦除

    事先編程在Flash中的程序先自復(fù)制到SRAM指定的位置,然后,賦PC為SRAM中扇區(qū)編程代碼段的起點(diǎn)ERASEPART。程序于SRAM中的ERASEPART起點(diǎn)開始執(zhí)行,按照SST39VF160扇區(qū)擦除的時(shí)序要求開始擦除。按照ARM公司提出的ATPCS規(guī)定,C語言程序調(diào)用匯編程序時(shí),寄存器R0一R3傳遞參數(shù),返回值由寄存器RO傳遞原則,扇區(qū)擦除程序的一個(gè)參數(shù),要擦除的扇區(qū)號(hào),由RO傳遞;返回參數(shù)置于R0,扇區(qū)擦除成功返回“1”,否則返回“0”。

2.3 字編程

    程序于SRAM中的PROGRAMPART起點(diǎn)開始執(zhí)行,按照SST39VFl60字編程的時(shí)序要求開始編程。入口參數(shù)有三個(gè),依次為編程地址、數(shù)據(jù)起始地址、編程數(shù)據(jù)長(zhǎng)度。字編程成功返回“1”,否則返回“0”。


3 結(jié)論
    在嵌入式應(yīng)用系統(tǒng)中,IAP是極為有效的一種技術(shù)。根據(jù)本文提出的方案,在實(shí)際應(yīng)用中只需針對(duì)選用的Flash,更改特定的擦、寫操作代碼就可實(shí)現(xiàn)系統(tǒng)片外存儲(chǔ)器的在應(yīng)用編程。文中提出的IAP代碼重入到SR—kM執(zhí)行的方法,有效地解決了應(yīng)用無片內(nèi)程序存儲(chǔ)器的32位ARM處理器的嵌入式系統(tǒng)IAP難題,有很大的應(yīng)用價(jià)值。

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

柏林2025年9月9日 /美通社/ -- 2025年9月5日,納斯達(dá)克上市公司優(yōu)克聯(lián)集團(tuán)(NASDAQ: UCL)旗下全球互聯(lián)品牌GlocalMe,正式亮相柏林國際消費(fèi)電子展(IFA 2025),重磅推出融合企...

關(guān)鍵字: LOCAL LM BSP 移動(dòng)網(wǎng)絡(luò)

深圳2025年9月9日 /美通社/ -- PART 01活動(dòng)背景 當(dāng)技術(shù)的鋒芒刺穿行業(yè)壁壘,萬物互聯(lián)的生態(tài)正重塑產(chǎn)業(yè)疆域。2025年,物聯(lián)網(wǎng)產(chǎn)業(yè)邁入?"破界創(chuàng)造"與"共生進(jìn)化"?的裂變時(shí)代——AI大模型消融感知邊界,...

關(guān)鍵字: BSP 模型 微信 AIOT

"出海無界 商機(jī)無限"助力企業(yè)構(gòu)建全球競(jìng)爭(zhēng)力 深圳2025年9月9日 /美通社/ -- 2025年8月28日, 由領(lǐng)先商業(yè)管理媒體世界經(jīng)理人攜手環(huán)球資源聯(lián)合主辦、深圳?前海出海e站通協(xié)辦的...

關(guān)鍵字: 解碼 供應(yīng)鏈 AI BSP

柏林2025年9月9日 /美通社/ -- 柏林當(dāng)?shù)貢r(shí)間9月6日,在2025德國柏林國際電子消費(fèi)品展覽會(huì)(International Funkausstellung...

關(guān)鍵字: 掃地機(jī)器人 耳機(jī) PEN BSP

武漢2025年9月9日 /美通社/ -- 7月24日,2025慧聰跨業(yè)品牌巡展——湖北?武漢站在武漢中南花園酒店隆重舉辦!本次巡展由慧聰安防網(wǎng)、慧聰物聯(lián)網(wǎng)、慧聰音響燈光網(wǎng)、慧聰LED屏網(wǎng)、慧聰教育網(wǎng)聯(lián)合主辦,吸引了安防、...

關(guān)鍵字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移遠(yuǎn)通信宣布,其自研藍(lán)牙協(xié)議棧DynaBlue率先通過藍(lán)牙技術(shù)聯(lián)盟(SIG)BQB 6.1標(biāo)準(zhǔn)認(rèn)證。作為移遠(yuǎn)深耕短距離通信...

關(guān)鍵字: 藍(lán)牙協(xié)議棧 移遠(yuǎn)通信 COM BSP

上海2025年9月9日 /美通社/ -- 為全面落實(shí)黨中央、國務(wù)院和上海市委、市政府關(guān)于加快發(fā)展人力資源服務(wù)業(yè)的決策部署,更好發(fā)揮人力資源服務(wù)業(yè)賦能百業(yè)作用,8月29日,以"AI智領(lǐng) HR智鏈 靜候你來&quo...

關(guān)鍵字: 智能體 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付與一汽出行達(dá)成合作,為其自主研發(fā)的"旗馭車管"車輛運(yùn)營(yíng)管理平臺(tái)提供全流程支付通道及技術(shù)支持。此次合作不僅提升了平臺(tái)對(duì)百余家企業(yè)客戶的運(yùn)營(yíng)管理效率...

關(guān)鍵字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制藥(PharmaEngine, Inc.)發(fā)現(xiàn)的新一代PRMT5抑制劑PEP0...

關(guān)鍵字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市經(jīng)濟(jì)和信息化委員會(huì)、上海市發(fā)展和改革委員會(huì)、上海市商務(wù)委員會(huì)、上海市教育委員會(huì)、上海市科學(xué)技術(shù)委員會(huì)指導(dǎo),東浩蘭生(集團(tuán))有限公司主辦,東浩蘭生會(huì)展集團(tuán)上海工業(yè)商務(wù)展覽有...

關(guān)鍵字: 電子 BSP 芯片 自動(dòng)駕駛
關(guān)閉