ARM與8、16、32位寬存儲(chǔ)器的地址線連接若干問(wèn)題
FLASH一般是8位或16位,當(dāng)它接到32位的ARM上時(shí),地址位就會(huì)錯(cuò)位。對(duì)于16位FLASH,F(xiàn)LASH的A0要接ARM的A1。對(duì)于8位FLASH,F(xiàn)LASH的A0要接ARM的A0。ARM的A0對(duì)應(yīng)8位,ARM的A1對(duì)應(yīng)16位,ARM的A2對(duì)應(yīng)32位,如果FLASH是32位,那么FLASH的A0接ARM的A2
本文引用地址:http://www.biyoush.com/article/201611/316826.htm32位的FLASH,F(xiàn)LASH的A0要接ARM的A2,因?yàn)?2位寬數(shù)據(jù)線表示最小的讀寫(xiě)單位為4個(gè)字節(jié),每次要跳4個(gè)字節(jié)的話,那么就是從A2開(kāi)始才變化,A1 A0不變化
16位的FLASH,F(xiàn)LASH的A0要接ARM的A1,因?yàn)?6位數(shù)據(jù)線寬表示最小讀寫(xiě)單位為2個(gè)字節(jié),每次要跳2個(gè)字節(jié)的話,那么就是從A1開(kāi)始才變化,A0不變化
8位的FLASH,F(xiàn)LASH的A0要接ARM的A0,因?yàn)?位數(shù)據(jù)線寬表示最小的數(shù)據(jù)讀寫(xiě)單位為1個(gè)字節(jié),每次要跳1個(gè)字節(jié)的話,那么就是從A0開(kāi)始才變化。
LPC2200,S3C2410A,S3C2440等都是上述這樣的,當(dāng)然也有不同的。IMX27和BF537這兩款CPU都是不管存儲(chǔ)器是多少位的的,都是直接A0-B0,沒(méi)有任何考慮錯(cuò)位的情況,是因?yàn)樗麄兊拇鎯?chǔ)控制器已經(jīng)內(nèi)部作了處理了,三星的如S3C2443S3C2450S3C6410等后續(xù)的也都是這樣子了。
評(píng)論