昨天,当我在考虑Why can’t OS use entire 64-bits for addressing?时,我发现了另一个有趣的事情。以英特尔酷睿2双核处理器为例。需要更多关于处理器地址行的说明
从Intel Core 2 Duo Processor E8000 and E7000 Series - Datasheet的“4.2 Alphabetical Signals Reference”我知道它有36条地址线& 64条数据线。数据表将地址线称为A [35:3],数据线称为D [63:0]。
这意味着什么?这是我从上面的理解(很少有没有回答的问题):
- 因为有36条地址线。总寻址内存为2^36 = 64GB,每个物理内存位置(字节)以36位数寻址。
- 因为,没有提到A [2:0]。这意味着在将虚拟地址转换为物理地址之后(在地址表的帮助下),MMU(寻呼单元更具体)只将33个最高有效位放在地址线A [35:3]上。 RAM发送全部8个可能的字节(3个LSB,A [2:0])即对于这8个字节范围内的任何请求。 RAM发送相同的8字节数据。对?我想这是为了提高效率。
- 接下来会发生什么?我的意思是MMU需要1个字节的数据,但RAM发送8个字节。它将如何处理它?
- 自启用英特尔PAE后,此地址总线宽度是36位吗?
- 我在新的处理器数据表(Intel® Core™ i7 Processor Extreme Edition)中找不到地址总线和数据总线宽度。 :(帮帮我!
想一想 - 数据总线是64位(8字节)宽。这不是一个真正的编程问题,所以你可能想把它带到superuser.com。 – 2010-07-11 20:26:50
@Paul R:思考不是问题。问题是我的思想有多准确。这就是为什么而不是直接问我的问题。我写了我认为的 – claws 2010-07-11 21:53:42