• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種使用存儲(chǔ)介質(zhì)驅(qū)動(dòng)的方式

    2017-07-25 09:24:51蔡楓福州瑞芯微電子股份有限公司
    數(shù)碼世界 2017年7期
    關(guān)鍵詞:存儲(chǔ)介質(zhì)固件驅(qū)動(dòng)程序

    蔡楓 福州瑞芯微電子股份有限公司

    一種使用存儲(chǔ)介質(zhì)驅(qū)動(dòng)的方式

    蔡楓 福州瑞芯微電子股份有限公司

    現(xiàn)代SoC(System on chip,系統(tǒng)芯片)的設(shè)計(jì)越來(lái)越復(fù)雜。Boot rom的功能也越來(lái)越強(qiáng)大。傳統(tǒng)的boot rom只在啟動(dòng)的時(shí)候使用一次。之后就再也不會(huì)用到了。本文介紹了一種利用boot rom中的驅(qū)動(dòng)程序來(lái)驅(qū)動(dòng)存儲(chǔ)介質(zhì)的方法。

    Boot rom 驅(qū)動(dòng)程序 存儲(chǔ)介質(zhì) 函數(shù) 固件 靜態(tài)隨機(jī)存儲(chǔ)器 內(nèi)存

    1 SoC介紹

    系統(tǒng)芯片(英語(yǔ):System on Chip,縮寫:SoC)是一個(gè)將電腦或其他電子系統(tǒng)集成到單一芯片的集成電路。系統(tǒng)芯片可以處理數(shù)字信號(hào)、模擬信號(hào)、混合信號(hào)甚至更高頻率的信號(hào)。系統(tǒng)芯片常常應(yīng)用在嵌入式系統(tǒng)中。系統(tǒng)芯片的集成規(guī)模很大,一般達(dá)到幾百萬(wàn)門到幾千萬(wàn)門。

    盡管微控制器通常只有不到100 kB的隨機(jī)存取存儲(chǔ)器,但是事實(shí)上它是一種簡(jiǎn)易的、功能弱化的單芯片系統(tǒng),而“系統(tǒng)芯片”這個(gè)術(shù)語(yǔ)常被用來(lái)指功能更加強(qiáng)大的處理器,這些處理器可以運(yùn)行Windows和Linux的某些版本。系統(tǒng)芯片更強(qiáng)的功能要求它具備外部存儲(chǔ)芯片,例如有的系統(tǒng)芯片配備了閃存。系統(tǒng)芯片往往可以連接額外的外部設(shè)備。系統(tǒng)芯片對(duì)半導(dǎo)體器件的集成規(guī)模提出了更高的要求。為了更好地執(zhí)行更復(fù)雜的任務(wù),一些系統(tǒng)芯片采用了多個(gè)處理器核心。

    2 Boot Rom介紹

    SoC生產(chǎn)的時(shí)候會(huì)把一段程序固化在芯片的rom中,芯片上電的時(shí)候會(huì)從rom中的某個(gè)特定地址開(kāi)始運(yùn)行。這個(gè)rom就叫做Boot Rom。

    3 現(xiàn)有技術(shù)的現(xiàn)狀、缺陷和不足

    現(xiàn)代SoC的固件一般包含Bootloader,kernel等。SoC中固化有boot rom。如下表:隨著SoC功能越來(lái)越強(qiáng)大,設(shè)計(jì)越來(lái)越復(fù)雜,Boot rom的功能也越來(lái)越強(qiáng)大。由于boot rom中的啟動(dòng)代碼需要從不同的存儲(chǔ)介質(zhì)中加載下一級(jí)的bootloader。所以boot rom中必然包含不同存儲(chǔ)介質(zhì)的驅(qū)動(dòng)程序。

    由于bootloader也需要從不同的存儲(chǔ)介質(zhì)中加載下一級(jí)的固件。所以bootloader中也必然包含不同存儲(chǔ)介質(zhì)的驅(qū)動(dòng)程序。

    由于在kernel中也可能有需要訪問(wèn)不通的存儲(chǔ)介質(zhì)。所以kernel中也可能包含不通存儲(chǔ)介質(zhì)的驅(qū)動(dòng)程序。

    這樣,在固件的不同部分包含了多份存儲(chǔ)介質(zhì)的驅(qū)動(dòng)。這造成bootloader,kernel的固件大小變大,從而造成了存儲(chǔ)介質(zhì)空間的浪費(fèi),同時(shí)由于bootloader和kernel是在靜態(tài)隨機(jī)存儲(chǔ)器或者內(nèi)存中中運(yùn)行的。這也造成了靜態(tài)隨機(jī)存儲(chǔ)器和內(nèi)存的空間的浪費(fèi)。

    本文提出了一種方法,讓固件的不同部分使用boot rom中的存儲(chǔ)介質(zhì)的驅(qū)動(dòng)。從而降低了固件大小,減小了對(duì)存儲(chǔ)介質(zhì)空間需求,對(duì)靜態(tài)隨機(jī)存儲(chǔ)器大小的需求,對(duì)內(nèi)存大小的需求。

    4 總體思路

    SoC啟動(dòng)后會(huì)將boot rom中的代碼加載到靜態(tài)隨機(jī)存儲(chǔ)器中運(yùn)行。由于boot rom是在芯片生產(chǎn)時(shí)固化在芯片中的。所以只能讓bootloader,kernel等調(diào)用boot rom中的存儲(chǔ)介質(zhì)的驅(qū)動(dòng)。

    要保證這部分代碼不被后面的固件覆蓋。然后申明一個(gè)函數(shù)指針。把函數(shù)指針指向?qū)?yīng)需要調(diào)用的函數(shù)在靜態(tài)隨機(jī)存儲(chǔ)器中的地址。如下,func為申明的函數(shù)指針,para1~3為傳入所調(diào)用的函數(shù)的參數(shù)。這里只是舉例,實(shí)際使用時(shí)需要根據(jù)所調(diào)用的boot rom的函數(shù)所需的參數(shù)個(gè)數(shù)以及類型來(lái)修改。0xabcdefgh為對(duì)應(yīng)的函數(shù)在靜態(tài)隨機(jī)存儲(chǔ)器中的地址。

    5 流程圖

    6 采用該方案后得到的效果

    ①Bootloader可以使用bootrom的存儲(chǔ)介質(zhì)的驅(qū)動(dòng)

    ②Kernel使用可以bootrom的存儲(chǔ)介質(zhì)的驅(qū)動(dòng)

    ③固件大小變小

    ④存儲(chǔ)固件的存儲(chǔ)介質(zhì)空間需求變小

    ⑤靜態(tài)隨機(jī)存儲(chǔ)器大小需求變小

    ⑥內(nèi)存大小需求變小

    [1]Integrated Circuit Test Engineering: Modern Techniques

    猜你喜歡
    存儲(chǔ)介質(zhì)固件驅(qū)動(dòng)程序
    HDFS數(shù)據(jù)動(dòng)態(tài)分布設(shè)計(jì)與實(shí)現(xiàn)
    綠色科技(2020年6期)2020-06-15 07:18:38
    檔案館移動(dòng)存儲(chǔ)介質(zhì)管理方法探討
    基于固件的遠(yuǎn)程身份認(rèn)證
    提取ROM固件中的APP
    硬盤
    CHIP新電腦(2015年3期)2015-04-02 11:28:15
    一種通過(guò)USB接口的可靠固件升級(jí)技術(shù)
    奧林巴斯XZ—2新固件升級(jí)
    醫(yī)院環(huán)境下移動(dòng)存儲(chǔ)介質(zhì)的信息安全管理
    驅(qū)動(dòng)程序更新與推薦
    驅(qū)動(dòng)程序更新與推薦
    泉州市| 柳河县| 永善县| 延边| 神木县| 大城县| 靖安县| 阜阳市| 灵川县| 道孚县| 五指山市| 成武县| 蛟河市| 正定县| 山丹县| 县级市| 买车| 玉树县| 柳州市| 边坝县| 翁源县| 肇州县| 大悟县| 阿拉尔市| 岑溪市| 永济市| 遂川县| 漾濞| 清徐县| 崇信县| 赤水市| 恩平市| 秦皇岛市| 通州市| 巨鹿县| 丘北县| 蓝田县| 固始县| 柞水县| 无为县| 同仁县|