gpt4 book ai didi

computer-architecture - 字长和数据总线

转载 作者:行者123 更新时间:2023-12-04 07:06:41 24 4
gpt4 key购买 nike

我对 字大小的定义感到困惑 。我读到处理器的字长是它的数据总线宽度。就像一个 8 位处理器有一个 8 位宽的数据总线。我最近读到虚拟地址空间的最大大小由字大小决定,即如果字大小为 n 位,则最大虚拟地址空间为 2^n -1。但我一直认为最大虚拟地址空间是由地址总线宽度决定的,即 n 位宽的地址总线最多可以寻址 2^n 个字节。那么, 是什么?

此外,这是否与 指针 相关,因为 n 位数据总线只能承载 n 位地址。因此,最多可以通过指针访问 2^n 个字节。

最佳答案

我首先要说的是,您的一些困惑可能来自于几十年前事情更简单的事实,而您对术语的理解是基于这些更简单的机器。

I am confused about the definition of word size.I read that the word size of a processor is its data bus width. Like an 8 bit processor has an 8 bit wide data bus.



当然不。数据总线与此完全无关。处理器的字长(从来都不是一个精确的术语)最好粗略地定义为算术的最大自然大小,通常是机器中寄存器的大小。这通常是数据路径的宽度(与数据总线明显不同)。数据路径只是 ALU 的宽度。字大小通常与指针大小相同。

I recently read that the maximum size of the virtual address space is determined by word size i.e. if the word size is n bits the max virtual address space is 2^n -1. But i always thought that maximum virtual address space is determined by address bus width i.e. an n bits wide address bus can address maximum 2^n bytes. So, what is true?



不是。虚拟地址空间的大小简单地由页表(和TLB)的虚拟页号中的位数决定。在当前基于 amd64 的机器上,只有 48 位的虚拟地址可用。高位 16 位是第 47 位的符号扩展。在当前的 amd64 机器上,物理地址大小为 52 位。这些物理地址位是在总线上发送的。尽管即使是总线这个词也确实是不正确的。几乎所有的链路都是点对点的(DDRx DRAM 是一个异常(exception)),并使用分组格式( header + 有效载荷)而不是地址线和数据线。

Also, is this related to pointers as an n bit data bus is capable of carrying only an n bit address. So, maximum 2^n bytes can be accessed via pointers.



许多(几乎全部都是)具有单独地址总线的机器使用比地址位数更窄的地址总线。这些位被简单地拆分并使用多个时钟周期通过总线发送。 DDRx DRAM 是另一个例子。

关于computer-architecture - 字长和数据总线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11472484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com