国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于AT89C52處理器的二次版本下載方法

2015-09-25 03:06:04徐勁松湯新柱管燕萍
關(guān)鍵詞:外置存儲空間內(nèi)核

徐勁松,湯新柱,管燕萍

(中興通訊上海研發(fā)中心,上海201203)

引 言

隨著通信技術(shù)的迅速發(fā)展,各種新業(yè)務層出不窮,電信運營商對通信設備的功能需求日益增多。因此,通信設備經(jīng)常需要升級軟件版本。而隨著功能的日趨完善,軟件版本所需的存儲空間越來越大。另一方面,激烈的競爭促使各通信設備制造商盡可能采用物美價廉的器件以降低設備成本。一些高性價比的處理器獲得了廣泛的應用,這類處理器可能內(nèi)置了少量的FLASH存儲空間。為了降低成本,通信設備制造商在制造設備時,可能不再另外添置外置的FLASH,而僅僅是配置一定容量的外置RAM,從外置RAM中劃出一部分空間用于存放設備的應用程序,其余的用作設備運行中的數(shù)據(jù)空間。

以AT89C52[1]處理器為例,它內(nèi)置有8KB大小的FLASH,另外具備64KB外置FLASH以及64KB外置RAM的尋址能力。通信設備制造商在制造設備時,僅僅是配置64KB的外置RAM,用于存儲程序和數(shù)據(jù),例如前32KB用于存放數(shù)據(jù),后32KB用于存放應用程序。一種常用的實現(xiàn)方式是,內(nèi)置FLASH用于存儲很小的內(nèi)核程序,在系統(tǒng)上電時,從服務器下載容量更大的應用程序,存放在外置RAM中;下載結(jié)束后,跳轉(zhuǎn)外置RAM的程序區(qū)執(zhí)行。然而,隨著系統(tǒng)功能的增加,原來用于存放應用程序的32KB空間已經(jīng)不夠存放應用程序,而數(shù)據(jù)區(qū)的使用可能不到32KB,例如只使用了20KB。一種解決辦法是重新制作存儲在內(nèi)置FLASH中的內(nèi)核程序,擴大應用程序區(qū)的存放范圍,使得內(nèi)核程序在下載應用程序時將后44KB的空間都作為應用程序存儲區(qū)。然而,對于現(xiàn)網(wǎng)應用的大量設備而言,要更新內(nèi)核程序的版本,意味著必須把單板斷電、重新燒入內(nèi)置的FLASH內(nèi)核程序,顯然是不現(xiàn)實的。

1 優(yōu)化地址空間的版本下載方法

本文提供一種優(yōu)化地址空間的版本下載方法,應用于通信領(lǐng)域嵌入式系統(tǒng),以解決應用程序的存儲空間不夠,而數(shù)據(jù)的存儲空間富余的問題。所述的版本下載方法,包括如下步驟:

①將應用程序版本制作成主版本和輔助版本,并保存在服務器上,使得主版本的大小不超過設備分配給應用程序的存儲空間大小;

②設備上電后,該設備內(nèi)核程序?qū)贸绦虻闹靼姹緩姆掌魃舷螺d到設備分配給應用程序的存儲空間,下載程序完畢后,跳轉(zhuǎn)到應用程序的主版本運行;

③應用程序的主版本執(zhí)行了設備的初始化以后,與服務器通信,請求下載應用程序的輔助版本;

④應用程序的主版本將輔助版本下載到設備分配給數(shù)據(jù)的存儲空間中的富余空間內(nèi),下載完成后繼續(xù)往下正常執(zhí)行。此時,在輔助版本中的新增功能可以正常使用。

2 基于AT89C52處理器的版本下載實現(xiàn)

下面以AT89C52處理器的設備為例來說明上述版本下載方法的實現(xiàn)。

圖1是采用AT89C52處理器的設備存儲空間的分布圖。這里只是一個示例,實際的空間分布大小不一定與此處的示例相同,但不影響本文所述版本下載方法的實現(xiàn)。AT89C52處理器內(nèi)置的8KB FLASH用于存放內(nèi)核程序;設備另外配置有64KB的外置RAM,其中,前32KB用于存放數(shù)據(jù),后32KB用于存放程序。在系統(tǒng)上電時,內(nèi)核程序負責從服務器下載應用程序,存放在外置RAM的后32 KB應用程序存儲空間中,然后跳轉(zhuǎn)到應用程序執(zhí)行。

圖1 采用AT89C52的設備存儲空間分布圖

圖2是采用本文所述版本下載方法后,采用AT89C52處理器的設備存儲空間的分布圖。假定設備原用于存放數(shù)據(jù)的32KB外置RAM實際只用到20KB,還有12KB的剩余空間。在系統(tǒng)上電時,存儲在內(nèi)置FLASH中的內(nèi)核程序負責從服務器下載應用程序的主版本,存放在外置RAM的后32KB存儲空間中。之后,應用程序的主版本負責將輔助版本下載到外置RAM原來用于存放數(shù)據(jù)的空間中的剩余12KB空間。在制作主版本和輔助版本時,對于主版本和輔助版本之間的功能模塊采用絕對定址的方式相互調(diào)用。

圖2 優(yōu)化地址空間后采用AT89C52的設備存儲空間布圖

圖3是本文實例采用AT89C52處理器的設備版本下載應用方法流程圖,包括如下步驟。

①制作應用程序版本時,根據(jù)其功能的劃分制作主版本和輔助版本并保存在服務器上,使得主版本的大小不超過32KB,輔助版本的大小不超過12KB;在制作主版本和輔助版本時,對于主版本和輔助版本之間的功能模塊采用絕對定址的方式相互調(diào)用。

②設備上電后,存儲在內(nèi)置FLASH中的內(nèi)核程序負責從服務器下載應用程序的主版本,存放在外置RAM的后32 KB存儲空間中,然后跳轉(zhuǎn)到應用程序的主版本運行。

③對設備進行初始化,與服務器通信,請求下載應用程序的輔助版本。

④應用程序的主版本負責將輔助版本下載到外置RAM原來用于存放數(shù)據(jù)的空間中的剩余12KB空間。

⑤下載應用程序的輔助版本成功后,主版本才繼續(xù)往下正常執(zhí)行,此時,應用程序的主版本可以正常調(diào)用輔助版本的功能模塊。

圖3 采用AT89C52處理器的設備版本下載應用方法流程圖

結(jié) 語

本文描述了一種優(yōu)化地址空間的版本下載方法,即二次版本下載的方法,充分利用現(xiàn)有設備分配給數(shù)據(jù)的存儲空間中的剩余空間,擴大了應用程序的存儲空間,避免了必須為現(xiàn)有設備更換內(nèi)核程序才能擴大應用程序存儲空間的弊端。此外,本文所述的方法并不局限于AT89C52處理器。

[1] 8-bit Microcontroller with 8KBytes Flash-AT89C52[EB/OL] .[2014-11] .http://www.atmel.com/images/doc0313.pdf.

猜你喜歡
外置存儲空間內(nèi)核
萬物皆可IP的時代,我們當夯實的IP內(nèi)核是什么?
基于多種群協(xié)同進化算法的數(shù)據(jù)并行聚類算法
強化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
蘋果訂閱捆綁服務Apple One正式上線
綜藝報(2020年21期)2020-11-30 08:36:49
PLC可編程控制器相關(guān)外置的選擇計算研究
電子制作(2019年13期)2020-01-14 03:15:34
用好Windows 10保留的存儲空間
車載GSM-R外置抗干擾設備
基于嵌入式Linux內(nèi)核的自恢復設計
Linux內(nèi)核mmap保護機制研究
電能表用外置斷路器常見失效模式分析
乌兰浩特市| 辽中县| 阿鲁科尔沁旗| 甘泉县| 枣强县| 盐津县| 疏附县| 从江县| 晋江市| 崇礼县| 长宁县| 曲周县| 新蔡县| 体育| 桂林市| 桃园市| 安丘市| 平武县| 疏附县| 长顺县| 师宗县| 江永县| 蒲城县| 赤城县| 都匀市| 定安县| 界首市| 三河市| 富源县| 建瓯市| 尖扎县| 潮安县| 缙云县| 龙陵县| 枣强县| 抚远县| 叙永县| 盐亭县| 定安县| 凯里市| 秀山|