日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

辨析NOR FLASH地址左右移的问题

發布時間:2023/12/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 辨析NOR FLASH地址左右移的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

norflash芯片手冊command如下:

下面是2240對norflash的 一些操作:

擦除:

燒錄:

讀取:

問1:同樣是操作norflash,為什么cpu發出norflash芯片手冊中解鎖等命令時,傳參時addr不需要右移,cpu燒錄起始地址或發送要擦除扇區地時就得右移呢

注意:nor_cmd函數里已經左移一位了

答1:

我們通過NOR FLASH的芯片手冊得知,要實現解鎖功能:要往地址0X555寫入0XAA等等幾個操作,因為我們是通過NOR的手冊查看到的,那么這里肯定是從NOR角度看到的地址,也就是說我們要往第0X555個16位的地址里寫入0XAA,因為地址線是錯開的緣故,我們CPU必須把地址左移一位后再發生給NOR,這樣才能真正地把0XAA寫到NOR的第0X555地址里去。

而發送扇區地址的時候,因為我們人操縱的是CPU,所以我們的角度和CPU是一樣的,我們也認為NOR是2M * 8bit,而不是1M * 16bit,比如我們要清除地址為0X001F0000時,0X001F0000代表的是第0X001F0000個8bit的地址,因為地址線是錯開的原因,我們直接發送CPU角度的地址出去就好,但又因為nor_cmd函數里已經左移一位了,所以我們要提前右移一位以抵消左移的操作。(為什么把NOR看成是2M * 8bit的時候就直接把地址發送出去而不用左移一位呢,這就和cpu內存控制器有關了)

總結就是角度不同,發送扇區地址的時候,我們是站在cpu內存控制器位篩選后的角度,即此時我們將norflash看做2M * 8bit,而NOR FLASH的芯片手冊中的解鎖功能是站在norflash自己的角度來要求CPU地址總線發出地址的,它自認為自己是1M * 16bit

問2:(addr >> 1) << 1 可能會丟位

提前右移一位以抵消左移的操作,即(addr >> 1) << 1 ,舉個例子:
假如我們想把0x11作為起始燒錄地址
addr = 0x11 , 則 ((addr >> 1) << 1) = 0x10
細心點會發現,哎?右移一位導致丟位了啊!!
再看
addr = 0x10 , 則 ((addr >> 1) << 1) = 0x10
也就是說,輸入addr=2或3(CPU角度的 norflash 為 2M * 8bit),起始燒錄地址都對應 1M * 16bit 的 norflash的1(本來是 1 0 ,但 norflash 的 A0 接了CPU的 A1)
為什么要限制?

答2:(注意:為方便說明,我們將起始內存單元稱之為第零個內存單元)

之所以這樣,是因為我們操作的norflash 是16bit 寬度的,連接如下,可以發現是錯位連接的


這是一種好的燒錄習慣,作此限制可以保證我們的起始燒錄地址或起始擦除地址是16bit 對齊的

問3:為什么把NOR看成是2M * 8bit進行讀取訪問的時候就直接把地址發送出去而不用左移一位呢

答3:

針對問題3,**內存控制器**絕對是勞苦功高: 示意圖如下:

addr = 0x11 由于norflash的A1接CPU的A0,所以norflash看到的實際上是它1M *16bit的第1個16bit單元,在數據經內存控制器返回CPU時,內存控制器用A0=1,去挑出nor第一個16bit的低8位(注意:這里的示意圖為低位在前,僅為了方便觀察;實際也有可能是高位在前,如果是高位在前,則內存控制器用A0=1,去挑出nor第一個16bit的高8位)
我們將16bit位寬的norflash看做2M * 8bit, addr = 0x11 ,我們也的確訪問到了norflash第3個8bit單元
同理,假如addr = 0x10,我們也的確訪問到了2M * 8bit的norflash的第2個8bit單元
所以,這種錯位連接實際上保留了內存控制器選擇內存單元的權利,即:內存控制器利用被錯開的A0去選擇內存單元的高低位。

本文參考了韋東山老師的講解已及關于NOR FLASH地址左右移的問題,特此感謝
如有問題,歡迎評論區指出批評。

總結

以上是生活随笔為你收集整理的辨析NOR FLASH地址左右移的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。