关于S3C2440扩展SDRAM的地址连线
生活随笔
收集整理的這篇文章主要介紹了
关于S3C2440扩展SDRAM的地址连线
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
s3c2440擴展了兩片SDRAM(HY57V561620),開始不明白為什么要用ADDR2接了A0。現在弄明白了,原來用ADDR2接了A0,是為了地址4字節對齊。每個SDRAM位寬16位,兩片合起來就32位。這樣,當對一個4字節對齊的地址進行訪問的時候,得到的數據將為32位。
? 由此想到,在C語言中:
? 對于一個int變量,占4個字節,4字節對齊,可以用LDR/STR訪問
? 對于一個char變量,1個字節,4字節對齊,可以用LDRB/STRB訪問
? 對于如下解構體:
占8個字節,C1和C2共占4個字節,對C1可以用LDRB/STRB訪問,那么對于C2,該怎么訪問得到呢?我想,應該是編譯器為我們作好了這些。比如,對于讀,它可以先LDR操作4個字節,然后對得到的在寄存器中的相應位置的數據進行訪問,對于寫,它可以先對寄存器中相應位置的數據進行寫,然后再執行STR。以上都是推測。。。
? 由此想到,在C語言中:
? 對于一個int變量,占4個字節,4字節對齊,可以用LDR/STR訪問
? 對于一個char變量,1個字節,4字節對齊,可以用LDRB/STRB訪問
? 對于如下解構體:
| struct s{ ????char c1; ????char c2; ????int i; }; |
轉載于:https://blog.51cto.com/ironpeak/91478
總結
以上是生活随笔為你收集整理的关于S3C2440扩展SDRAM的地址连线的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 建模心法(1)——百战不殆是可能的吗?
- 下一篇: 职业生涯:怎么样学好Oracle