• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > eMMC燒錄時需注意的寄存器配置

    eMMC燒錄時需注意的寄存器配置

    作者:周立功致遠電子 時間:2016-06-15 來源:電子產品世界 收藏

      芯片由NandFlash、控制器和標準接口組成,在應用上,和NandFlash比較,由于控制器的存在,不必考慮ECC和壞塊管理策略,所以的應用比較簡單。但是,燒寫只需要把數據燒進去就可以了嗎?為什么數據寫進去了,系統還是跑不起來?

    本文引用地址:http://www.czjhyjcfj.com/article/201606/292666.htm

      

     

      eMMC自誕生以來,就受到各行各業的追棒,如今,已成為存儲行業的主流,特別是手機和平板。美國的IHS iSuppli預測到2018年全球的eMMC出貨量達到2200Milion。

      

     

      圖1 eMMC的市場前景

      在給智能手機、智能電視、平板電腦等,使用大容量eMMC芯片客戶服務的過程中,遇到很多燒錄異常的投訴,統計下來,有90%的投訴是說的同樣一個事情:燒錄過程正常,但貼到PCB上不能正常運行,重新通過在線的工具燒錄,又能正常運行,這是為什么呢?

      大多數工程師認為,既然eMMC內部有控制器,不用考慮ECC和壞塊管理策略,那么全當成普通的Flash那樣燒寫。事實上,這樣做法是“想當然”的照搬了之前Flash的使用方法。那么,有些人就納悶了,既然燒寫檢驗沒問題,為什么會跑不起來,進而第一步就懷疑是不是燒錄器的問題。

      那就要從eMMC芯片的結構進行剖析:

      eMMC芯片中有三個分區,分別是Boot1、Boot2和User Area區。

      

     

      圖2

      eMMC燒寫,與其他任何Flash的燒錄都不一樣,Boot區是單獨有尋址地址的,因此,必須注意如下兩個關鍵步驟:

      一、燒寫數據:包括Boot1、Boot2和User Area區的數據。

      二、設置:主要設置EXT_CSD,設置Boot加載規則,這需要根據實際的方案來設置。

      下面來主要闡述eMMC的設置的關鍵之處:

      通常,Boot1、Boot2和User Area區的數據都沒問題,主要是EXT_CSD寄存器的設置。這里涉及到程序Boot主要有三個寄存器,分別是BOOT_BUS_WIDTH[177]、BOOT_CONFIG_PROT[178]、PARTITION_CONFIG[179],這三個寄存器常常相互配合。

      下面我們簡要介紹下這個寄存器:

      一、BOOT總線位寬寄存器BOOT_BUS_WIDTH[177]:設置Boot總線寬度和單雙邊沿。

      

     

      圖3

      二、BOOT配置保護寄存器BOOT_CONFIG_PROT[178]:Boot設置位的保護使能。

      

     

      圖4

      三、分區寄存器PARTITION_CONFIG[179]:分區配置。

      

     

      圖5

      技術的細節就不再詳述,從上面的介紹得知,Boot三個寄存器各負責的關鍵內容。

      1.BOOT_BUS_WIDTH[177]設置位寬+單雙邊沿;

      2.PARTITION_CONFIG[179]選擇哪個分區用于Boot;

      3.BOOT_CONFIG_PROT[178]算是它們的雙保險。

      如果客戶僅僅燒錄了User區的程序,而忽視了Boot區配置,會導致主控CPU找不到Boot文件,無法正常啟動整個系統的情況發生。

      當然,不同場合可能需要設置不同的值,但是一般情況下,90%的用戶還是選擇Boot1區+8位寬高速時序。即同時設置分區寄存器

      PARTITION_CONFIG[179]=0x8/0x48和總線位寬寄存器

      BOOT_BUS_WIDTH[177]=0xA/0x2。而Boot配置保護寄存器

      BOOT_CONFIG_PROT[178]默認不設置。

      進過EXT_CSD的擴展寄存器設置,CPU找到了啟動Boot,正常引導并啟動了整個被燒錄的eMMC芯片,這時,eMMC就和CPU愉快的配合,流暢的跑起來了。



    關鍵詞: eMMC 寄存器

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 黄冈市| 威海市| 宁河县| 正阳县| 钦州市| 襄城县| 吉木乃县| 砚山县| 彰武县| 丘北县| 贵州省| 运城市| 虹口区| 江源县| 平乐县| 东乌珠穆沁旗| 上犹县| 米林县| 清原| 上栗县| 乌审旗| 潮州市| 古交市| 丰台区| 陆川县| 湟源县| 柘荣县| 游戏| 新余市| 会昌县| 徐水县| 东城区| 资源县| 德庆县| 新邵县| 赤城县| 梁平县| 闻喜县| 庆城县| 莱西市| 县级市|