2012-05-29 91 views
0

我使用的是Broadcom CFE(通用框架環境)引導加載程序... SOC來自Broadcom ...並使用Serial NOR閃存N25Q032作爲引導設備。要從閃存中讀取,它使用的是存儲器映射技術,而使用SPI接口(IO映射)來寫入。在Flash中寫入IO映射,同時從閃存讀取內存映射...可能是什麼原因

這樣的設計背後的原因,在我看來是因爲:

  1. IO映射讀/所以在閱讀時保持CPU的自由,它是使用內存映射執行寫入阻塞調用。

  2. 它沒有一個實現來檢查...現在在RAM中映射區域被修改,因此相應地改變閃存(意味着未能實現存儲器映射寫入),並且其相對容易使用的SPI接口(IO映射)實現來寫入閃存。

....請解釋這可能是後面這種設計的原因....

+0

什麼代碼?如何映射? – blueshift

+0

@blueshift:我已經更新了問題plz找到上面的細節。 – rspr

+0

我和幾乎所有其他閱讀您的問題的人都不知道Broadcom代碼是什麼,或者它如何映射內存或IO。我們應該如何幫助你? – blueshift

回答

1

根據定義的串行存儲器自身不能是內存映射。在這種情況下,我想(沒有看過數據表)NOR閃存控制器將數據讀入微控制器中的專用存儲器映射頁面,因此它將數據塊串行讀入隨機存取存儲器。

寫入時,數據已經在隨機存取存儲器中,NOR閃存控制器將其直接串行化到存儲器件。將它從一個內存映射區域複製到另一個內存區域,然後將其序列化是沒有意義的。

+0

增加一個點,使讀取操作內存映射在提高閱讀速度方面具有優勢....從內存讀取比從閃存讀取快。 – rspr