我的板子是基于powerpc的,现在用的是2片X16的flash进行32位扩展,我看了一下原理图是:数据线并联,地址线串连。
我的问题是:
VALUE(FLASH_BASE+(0x0555 << 2)) = 0x00AA00AA;
这条语句的意思应该是向2片flash的0x555处写入0xAA,对么?
如果是这样的话,为何要左移2位?地址线并没有扩展啊只是数据线扩展了而已,左移2位的目的是因为扩展后变成了32位对齐的原因么?越想越不明白啊!左移2位后地址偏移就不再是0x555了,这样再往里面写0xAA不符合flash的datasheet啊?
我要赚赏金
