Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (19) - 系统代理

System Agent

在Sandy Bridge微架构中实现的系统代理包括了如下的组件:

  • 一个总裁器,用于管理所有的访问请求,并将这些请求路由(即转发)到正确的位置上。访问请求可能来自于环域(ring domain)和I/O(PCIe* 和DMI)。
  • PCIe控制器,用于连接外部PCIe设备。PCIe控制器根据产品的分割规范(product segment specifics)可能具有不同的配置方式:x16+x4,x8+x8+x4,x8+x4+x4+x4。
  • DMI控制器连接PCH芯片组。
  • 集成的显示引擎,Flexible Display Interconnect(FDI),和Display Port (DP口),服务于内部图形操作
  • 内存控制器

所有的访存流量都会从仲裁器路由到内存控制器。第二代的Intel Core 2xxx处理器中的内存控制器支持双通道的DDR内存,支持的数据速率1066MHz,1333MHz和1600MHz,以及每周期8字节的带宽(依赖于单元类型,系统配置和DRAM类型)。使用一个本地的哈希函数,内存地址被分布在两个内存通道上,目的是尝试平衡通道间的负载均衡,从而获得最大的带宽和最小的热点冲突。

为了最佳性能,在两个通道上安装相等容量的内存,最好是同类型的DIMM。而且,同样容量的内存如果具有更多的rank,在某种程度上可以获得更好的内存带宽,因为更多的DRAM页面可以被同时打开。高度推荐安装受支持的最高速度DRAM(例如1333MHz或1600MHz)以及配置成DRAM的最佳时序。

两个通道各自有独立的资源,可以独立的处理访存请求。内存控制器有一个高性能的乱序调度器(注:不要与处理器核中流水线的乱序调度器混淆),从而获得最大的访存带宽与最小的访存时延。每个内存通道有一个可以容纳32个缓存行的写存数据缓冲区。当写存操作的数据被写入到缓冲区之后,即认为写操作完成了。随后某个时间,写存数据缓冲区会被冲刷到(flush out)到内存中,并不影响写操作时延。

内存控制器不能高效地处理局部写存(partial writes)操作,这里局部写存表示没有完整的写入一个缓存行(64字节)。在这种情况下,可能引发DDR通道的读-改-写操作,导致访存性能降低。只要有可能,软件应该避免创建局部写存事务(即操作),替代地,应该考虑先将局部写存数据缓存,直到形成一个完整的缓存行写操作。

内存控制器也支持高优先级的同步请求(例如USB同步或显示同步请求)。来自于显示引擎的巨量访存请求可能占据部分访存带宽,在某种程度上可能会影响处理器核的访存时。延。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值