0. 导言
本文介绍了一种同享高速存储器模块的规划。该高速存储器能够完结多核处理器间的数据交换,一起占用较小的电路面积。比较传统的多核处理器数据交换办法,本规划能够更好地提高体系功能。是一种有市场竞赛力的电路规划结构;
1. 同享缓存结构规划
1.1 整体考虑
在多核 CPU中同享高速缓存首要担任缓存多个处理器核的数据,处理拜访这些数据的缺失恳求并向 DRAM 控制器发送恳求以取得 DRAM 回来的数据。同享高速缓存经过交叉开关总线与各个处理器核互连,经过交叉开关总线转发通讯数据包进行数据通讯。同享高速缓存分为四个缓存组,每个缓存组选用组相联地址映射。每个处理中心都能够发送数据包到恣意一个缓存组,同数据包也能够反方向发送从恣意一个缓存组到恣意一个处理中心。
同享缓存选用四路组相联映射,将缓存分1024 组。缓存块的物理地址分为3部分,包含标签块、索引块以及块内偏移。索引部分用于确认缓存块地点的组。经过比较物理地址的标签块和所选中组内的四路标签,能够确认拜访的射中或许缺失。在射中时,比较的成果作为路挑选向量发往数据阵列。缓存经过路挑选向量和组挑选向量确认
1.2 缓存共同性
对称式同享存储器多处理器体系中多处理器2高速缓存子体系同享同一个物理存储器,经过总线衔接,关于一切的处理器拜访存储器的时间共同,即均匀存储拜访 (UMA)。对称式同享存储器体系支撑同享和私有数据的缓存。私有数据被单个处理器运用,而同享数据则被多个处理器运用,经过读写同享数据完结处理器之间的通讯。同享数据在多个缓存中构成副本,削减了拜访时延、降低了对存储器带宽的要求并削减多个处理器读取同享数据时的竞赛现象。但是,同享数据带来了缓存共同性问题,完结缓存共同性关键在于盯梢一切同享数据块的状况。现在为了完结缓存共同性而广泛选用的有目录式以及监听式这两种协议。该规划选用目录式缓存共同性协议 ,把物理存储器的同享状况放在目录表中,依据目录盯梢哪一个以及缓存具有二级缓存块的副本。一级缓存是写直达的,只要无效信息被要求,同享缓存是写回的,数据总能够从同享缓存中重新得到。为削减目录的开支,将目录放在缓存中而不是存储器中。
当一个块还未被缓存有 2 种或许的目录恳求:
1) 读缺失:同享缓存向宣布恳求的处理器送回所要求的数据,发送恳求的节点成为仅有的同享节点。块的状况设为同享。
2) 写缺失:向宣布恳求的处理器送回数据并使它成为同享节点。数据块设为独占状况,指明这是仅有有用的缓存副本。同享者调会集指明一切者。当数据块处于同享状况时,同享缓存中的值是最新的,有 2 种或许的目录恳求:
1) 读缺失:同享缓存向发送恳求的处理器送回所要求的数据,并将发送恳求的处理器放到同享会集。
2) 写缺失:向发送恳求的处理器送回数据,无效同享调会集的处理器缓存块,保存发送恳求的处理器标识,将数据块设置成独占状况。
当数据块处于独占状况时,块的当时值保存在同享者集所指明的处理器的缓存中,有 3 种或许的目录恳求:
1) 读缺失:向一切者处理器发送数据音讯,将缓存块状况设为同享。由一切者向目录发送数据,将数据写入同享缓存并发送回宣布恳求的处理器。再将宣布恳求的处理器添加到同享者调会集,这时调会集依然会有其他一切者处理器。
2) 数据写回:履行写回操作,更新存储器副本 ,同享者调集为空。
3) 写缺失:数据块有了新的一切者。向旧的一切者发送音讯,使缓存将该数据块设置为无效,并把值发送到目录中,再经过目录把数值发送到宣布恳求的处理器上。宣布恳求的处理器成为新的一切者。同享者调集只保存新一切者的标识,而块依然处于独占状况。
2. 高速同享缓存模块
用户RAM巨细为2MB,挂接在双核之间的AHB总线上,两个内核拜访区域能够恣意装备。其内部是一块 SRAM 和AHB总线从接口电路,如图2-1所示。读拜访有一个周期的推迟,写拜访无推迟。读写拜访时序见图2-2、图2-3。读写都支撑字节(byte)拜访、半字(half-word)拜访或字(word)拜访。
用户RAM地点的地址空间规模为0xA0000000 ~ 0xA01FFFFF。
图 2‑1 用户RAM结构示意图
假定CPU0写数据到用户RAM,接着CPU1从用户RAM读数据。这种情况下,CPU0首先写数据,然后将标志变量置1,表明用户RAM内的数据已更新。标志变量地址坐落用户RAM地址规模内。接着CPU1读标志变量,若变量为1,则从用户RAM内对应地址读取CPU0写入的数据,并将标志变量置0;若标志变量为0,则表明用户RAM内数据已被CPU1读取过。
运用以上办法可完结核间数据交互。因为同一时间AHB总线上只能有一个设备利用总线进行读写,所以能够确保读写操作的原子性,即标志变量不或许被CPU0和CPU1一起拜访。然后确保了标志变量的有用性。
图 2‑2 用户RAM读时序
图 2‑3 用户RAM写时序
参 考 文 献
[1 ]John L . Hennessy , David A. Patterson , Computer Architecture : A Quantitative Approach , Fourth Edition [ M ]. Ap professional ,1990
[2 ] Sun Microsystems Inc. OpenSPARC T1 Microarchitecture Specification[ R]. 2006
[3 ]David A. Patterson , John L . Hennessy , Computer organization and design[ M ]. Morgan Kaufmann ,2004
[4 ] Michael D. Ciletti , Advanced digital design with the Verilog HDL [ M ]. Pearson ,2005
[5 ]周立. 计算机体系结构 [ M ]. 北京 :清华大学出书 社 ,2006