對S29GL032N的16位操作方式驅動調試總結

    公司原本使用的norflash是使用8位模式的。後來公司新的項目中使用了16位模式。原來的驅動需要移植到新的模式下。折騰了一下,終於搞定。發現8位的寫命令操作到了16位時,需要將操作的地址左移1位。總結如下:

    在8位模式下,地址可以分爲奇地址和偶地址。如0x00,0x01,0x02,我們可以看到地址A0是0、1交替出現。

在16位模式下,由於每一次訪問都是16位數據,相當於只有偶數地址出現,如0x00,0x02,0x04,0x08,我們可以看到A0位一直爲低。
  
    在16位模式時,我們發現A0一直爲低,是多餘的。在硬件設計中,可以直接把這個地址線接地,從而節省了一個引腳。這時cpu的A0腳接flash的A1腳。

 

    這裏看來是要右移一位纔對的啊?爲什麼這裏還要左移呢?

 

    原來在硬件上會直接對訪問flash的地址進行右移來簡化上述接線方式的地址訪問。但是公司的機器是把flash和cpu的所有地址線一一對應的,a0-a0,a1-a1...。所有軟件需要左移一位來抵消硬件的右移操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章