为什么PCI总线上有这个内存范围?


2

为什么PCI总线上有以下内存地址范围?

enter image description here

图像来自我的上网本,它使用没有专用视频内存的共享视频内存,因此我不确定为什么VGA内存范围会出现在PCI总线上。这个范围不需要转到PCI设备读取的系统内存吗?

这不是一个问题,而只是好奇心的原因。

任何帮助,将不胜感激。

谢谢。


因为特定的GPU连接到PCI总线。
Ramhound

@Ramhound谢谢,我明白了,但GPU没有专用的VRAM,所以我不知道为什么那个地址会在PCI总线上。
RJSmith92

1
注意它是128k,很可能是PCI设备配置寄存器。
Brian

对我来说很有意义
Ramhound

1
提问者Brian和Ramhound实际上在问题中说过,并在评论中再次说明了记忆范围是什么。它不是设备配置寄存器。 Xe知道 什么 记忆是。 Xe想知道 为什么 设备管理器显示Windows已将其与PCI总线相关联。
JdeBP

Answers:


2

您的图形适配器根本没有专用内存。如果确实如此,它怎么会知道它在做什么?例如,如果它是从主存储器的特定区域进行操作,它将如何知道主存储器的哪个区域或者它用于什么?这是用于GPU和CPU之间的控制信息交换的非常小的映射。它在GPU上实现为非常少量的特殊功能存储器,通过PCI存储器映射使CPU可见。

这基本上与GPU确实具有专用内存的方式相同,不同之处在于映射通常会更大。虽然,通常它不包括所有的视频内存 - 但没有必要。进入视频内存的小窗口就足够了。


谢谢你的回答。你是对的,我应该在我的问题中说控制器没有专门的VRAM。我知道它有少量内存用于配置,但我仍然不明白为什么这个VGA内存范围在PCI总线上?
RJSmith92

1
仅仅因为它更容易这样做而不是为它创造一个新的界面。
David Schwartz

再次感谢,最初的混乱是因为我知道0xA000到0xBFFFF在系统内存中,但Windows显示它在PCI总线上。因此,即使Windows将此地址范围显示在PCI总线上,当任何写入此地址的内容时,芯片组会将其写入系统内存,然后PCI卡将从中读取? ...而Windows显示PCI总线上的地址的唯一原因是因为它是PCI设备?
RJSmith92

我上面的帖子是否正确?谢谢。
RJSmith92
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.