1中关于ARM920T的介绍(因为s3c2410采用的是ARM920T的处理器)。cache,MMU和cache有密切的联系,后面会谈到。:最初,计算机内存很小,而且非常昂贵,大多数都是以KB为单位的。s3c2410的实际内存SDRAM也就64MB,远远小于4GB。比如rom,flash等。VA,比如,假设发生了IRQ中断,那么PC执行0x00000018(如果是高端启动,则指向0xffff0018处。flash的地址范围0x00000000-0x00ffffff,sdram的地址范围0x30000000-0x31ffffff。0x30000018处读取指令。为什么有些使用b,有些使用ldr了。Core发出的地址有两种,IVA和DVA,都是VA。就是说,CPU核心看到的都是32bits的VA。Interface连接到ASB总线上面。英文的datasheet上却并非如此,写的记录数字为64个进程,同样每个进程32M,怎么可能达到4GB?参看下图:我觉得上图中的63应该改为127。因为这个63处不可能对应4GB,而应该对应2GB。判断此处属于datasheet的错误。要把进程号写入procID。translation.写成伪代码,可以参考《s3c2410完全开发》。sram里,响应速度比sdram还要快。所以单纯的PA就满足需求,没有必要用VA。都是在EOS中处理的。所以,这种情况下,可以不使用MMU。buffer则必须开启了MMU功能之后,才能使用。