caching - PCIE中的 'Cache line size'相当于什么?

标签 caching pci pci-e pci-bus

在PCI配置空间中,Cache line size表示系统缓存行大小,以DWORD为单位。该寄存器必须由可以生成内存写入和无效命令的主设备实现。

此寄存器中的值也被主设备用来确定是否使用读取、读取行或读取多个命令来访问内存。

想要使用高速缓存行回绕寻址模式允许内存突发的从设备必须实现此寄存器以了解突发序列何时回绕到高速缓存行的开头。

但此字段由 PCI Express 设备实现为传统兼容性目的的读写字段,但对任何 PCI Express 设备行为没有影响。

那么PCIe系统是如何实现memory-write-invalidate特性的呢?

最佳答案

PCIe有一个补充协议(protocol),称为地址转换服务(ATS),在这个协议(protocol)中,有对失效的描述(第3章)。底线是一个名为 Invalidate 的 MsgD Transaction Layer Packet (TLP),它可以做到这一点。 请注意,一般来说,它与 MWr TLP 完全分开(在协议(protocol)方面)。

关于caching - PCIE中的 'Cache line size'相当于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44541262/

相关文章:

pdf - 如何强制浏览器获取从 SSRS 报告生成的更新 PDF 文件?

python - 使用 mmap 对象写入物理地址

cpu-architecture - PCIe Gen 5.0规范寄存器图-虚线Vs实线

c# - 确定哪些(如果有的话)PCI 设备插入了主板 PCI(e) 插槽

linux - 是否可以写入在同一个 PCIe 插槽上使用不同 PCIe channel 的多个设备?

cuda - 映射固定主机内存 : to do or not to do? 上 CUDA 内核中的原子操作

silverlight - DateTime.UtcNow 在 Silverlight 应用程序中的可靠性如何?

c++ - 如何搭建应用层预取系统

java - 在android中实现应用程序范围的缓存

c - ioread32 和 pci_bus_read_config_word 包装函数有什么区别?在 pci 设备驱动程序中使用哪一个更安全?