文档库 最新最全的文档下载
当前位置:文档库 › 基于龙芯3A的低功耗存储控制器的研发

基于龙芯3A的低功耗存储控制器的研发

基于龙芯3A 的低功耗存储控制器的研发

The Research of Low -power Storage Controller Based on Loogson 3A

来卫国*

于治楼

LAI Wei -Guo

YU Zhi -lou

doi :10.3969/j.issn.1672-9528.2012.01.10

Abstract

An important characteristic of Cloud computing and Internet of Things is information data quanti-

ty explosive growth.Turing Award winner Jim Gray presents an empirical law ,every 18months ,the amount of data that is the history of data amount ,the storage controller is the management of these large data center.The storage controller on the performance of the main processor request is very high ,especially for I /O throughput performance ,now high -end storage controller uses the large power consumption ,complicated interfaces a host processor ,resulting in large power consumption of the complete machine ,system of complicated circuit brings PCB plate complex.Loogson 3A processor solved PCB cloth edition area and power consumption ,for high per-formance and low power storage controller R &D may be provided.This paper studies based on Godson 3A structure low power storage controller hardware design ,algorithm based on read write cache performance im-provement.

Keywords

Storage controller

Cache

Cloud computing

Internet of things

RAID

*浪潮集团有限公司

济南250101

1前言

云计算和物联网时代的一个重要特点是信息数

据量爆炸性增长。图灵奖获得者Jim Gray 提出了一个经验定律:网络环境下每18个月的数据量是有史以来数据量的总和。目前存储控制器采用的主处理器主要分为X86架构处理器与ARM 、

MIPS 、Power-PC 等RISC 架构处理器。X86架构处理器在计算能力,多核扩展能力,内存管理能力,总线扩展能力较

强,但是功耗较大,PCB 板占用面积大,RISC 架构处理器具有功耗低等优势,龙芯推出64位4核高端处

理器-龙芯3A 处理器,较好的解决了PCB 布版面积与功耗问题,为高性能存储控制器的研发提供了

可能。本文研究基于龙芯3A 构架的低功耗存储控制器硬件设计实现。

出于成本的考虑,目前存储主要采用机械硬盘,其具有3-10个毫秒的寻道时间,并且短期内无法解决。如何设计好缓存管理算法,尽可能的减少机械硬盘的访问次数,是存储产品的关键。大多数存储产品采用最小临近使用(LRU )缓存替换策略,该策略简单有效。本文拟采用创新性的缓存管理算法:将缓存分为顺序访问区与随机访问区。对顺序访问区,采用一种类似TCP 协议慢启动的机制来进行硬盘数据预取。2

硬件设计实现

龙芯3A 处理器基于64位MIPS 指令集,集成4

个1GHz CPU 核心,是龙芯针对高性能服务器器和存储市场于2010年推出的一款高性能处理器,集成DDR 存储控制器和一些外围模块,具有较高集成度,

降低了功耗。龙芯3A 的互联结构设计采用了一种基于二维Mesh 的可伸缩分布式多核结构,可为芯片级、主板级和系统级的互联提供统一的拓扑结构和逻辑设计。每个结点通过交叉开关连接处理器核、共享二级缓存以及4个方向的其他结点,交叉开关不区分功能模块端口和方向互联端口,系统的逻辑拓扑和路由对二级缓存透明,从而简化了系统的路由实现和缓存协议管理。龙芯3A 的对外接口采用扩展的HyperTransport 协议,既可以用于连接IO ,又可以实现多芯片的互联。龙芯3A 结构如图1所示。

图1龙芯3A 结构

龙芯3A 的主要配置如下:片内集成四个64位

的四发射超标量GS464高性能处理器核;每个处理器核包括2个全流水的64位双精度浮点乘加部件;每个处理器核包含64KB 数据Cache 和64KB 的指令Cache ;片内集成四核共享的4MB 二级Cache ,通过目录维护多核Cache 的一致性;片内集成2个64位400MHz 的DDR2/3控制器;片内集成2个16位800MHz 的HyperTransport 控制器;片内集成32位100MHz PCIX /66MHz PCI 。

龙芯3A 具有DDR3、PCI 和LPC 接口,分别连

接DDR3插槽、BMC 控制芯片和BOOT ROM ,另外

通过HT 总线与AMD 780E 北桥芯片连接,AMD780E 扩展出2路PCI -E ?8总线和4路PCI -E ?1总线,其中2路PCI -E ?8总线分别连接88SX6081,拓展出16路SAS 通道,4路PCI -E ?1总线分别连接82574网络芯片,拓展出4路千兆网络接口;AMD 780E 芯片通过A -Link 总线连接SB710南桥芯片,SB710芯片扩展出PCI 和USB 等接口。硬件结构框如图2所示:

3缓存管理算法的研究

存储控制器的核心是主处理器在满足RAID 各

种冗余机制的前提下如何快速读写硬盘,由于机械式硬盘存在磁头响应速度慢等问题,

存在随机读写硬盘小块数据的速度难以提升的行业性技术难题,本文重点研究基于缓存的高效硬盘读写管理算法,以解决缓存管理算法将有效减少硬盘访问次数及避

免缓存污染的问题,

从而提升小块随机读写速度。为提高缓存效率,采用分离缓存模式,即读、写

缓存位于控制器主内存中的不同区域。采用缓存预取机制,

对读缓存采用同步预取与异步预取机制。定义Track 为预取的最小单位,每个track 包含8个LBA 。使用LBA 描述符来定位与描述缓存中的某

个特定LBA ,其数据结构如下:LBAID

LBA 计数LBA 指针预取度PD 命中标志位HSB 访问频率HF

其中,

LBA 计数为每个顺序访问过程分别进行计数,

计数从1开始。LBA 指针指向缓存中所描述LBA 的存储地址。预取度PD 代表了每次预取时从磁盘中读入的track 数量。命中标志位HSB 用来在

缓存中设置预取触发条件,

当HSB 为1的LBA 被访问时,触发一次数据预取。HSB 缺省值为0。

首次磁盘访问时,存储控制器从磁盘读入一个track 数据(8个LBA ),并对其中的每个LBA 设置对

应的LBA 描述符。令count 从1开始递增,pointer 指向对应的LBA 在缓存中的地址,

PD =2,HSB =0。然后,将第四个LBA 描述符的HSB 设置为1。随后,如果第六个LBA 被访问,则说明当前的磁盘访问为顺序访问,因此需要启动预取进程。预取的具体步骤是:1)从磁盘中读取PD 个track 的数据,并写入磁盘缓存。2)对读入的每个LBA ,配置相应的LBA 描述符。如果当前PD 值<16,则令PD =PD*2,否则PD 值不变。将位于本次预取中间位置的LBA 的HSB 设置为1。随后,如果

该LBA 被访问,

则启动下一次预取过程。缓存一致性维护:由于读写缓存分离,同一数据

块可能同时存在于读、写缓存区内。为此,在处理器读取磁盘数据时,首先检查写缓存,如果写缓存命中,则直接将写缓存中的内容发送给客户,否则检查读缓存是否命中。

缓存镜像机制:当存储控制器收到来自存储客户机的写入数据后,其在将数据写入本地缓存的同时,向非透明桥设备写入,该写操作经过专用的

图2硬件结构框图

通道传输。在非透明桥对端,写入地址被翻译为对

端缓存中的某个地址。待写入完成,非透明桥通过DoorBell 寄存器中断机制来通知本端存储控制器。本端存储控制器再向存储客户机发送写入确认信号。该机制保证了双控制器写缓存互为镜像。异常掉电时间大量数据因未能及时写到硬盘中而出现数据丢失的技术难题,本项目研究掉电保护机制,实现异常掉电的数据保护及续写功能,从而解决此技术难题。4

故障检测和切换机制的的研究

主从控制器通过NTB 的DOORBELL 寄存器来

传递心跳信号,

进行故障检测。以下图为例,图中主机A 向主机B 发送心跳信号,故障检测的框图如图

3所示:

主机A 硬件觉察Doorbell 置位,产生PMW 信号并经过链路发送到主机B 的NTB 。上述信号经

过SB01BASE 窗口到达主机B NTB 的副侧。主机B NTB 解码PMW 信号,并置位主Doorbell 寄存器。硬件觉察主Doorbell 置位,生成上行中断信号。实现了资源的启动和停止、监测群集中系统的可用性、在群集中的节点间转移共享IP 地址的所有者等。双控制器主机侧以太网端口配置有不同的IP 地址,而存储系统向外提供一个虚拟IP 地址。当从控制器连续若干次无法收到主控制器心跳信号后,即认为主控制器宕机,并进行故障切换。将虚拟IP 地址映射到本机的以太网端口IP 地址,使所有对虚拟IP 地址的访问转移到本控制器上,实现故障切换。5

结束语

本文初步研究了基于龙芯3A 的存储控制器的硬件设计实现、基于缓存管理算法的RAID 性能提升机制以及两个控制器之间的实时侦测、互为镜像及接管机制,并进行详细的数据测试对比,与之前未

采用缓存管理的模式相比,读写性能平均提升80%以上,但与理论优化性能还有一些差距,算法优化还需要继续改进,同时在故障检测的实时性方面需继续研究。

图3

故障检测的框图

参考文献:[1]

IEEE.IEEE 802.3-2008SECTION 4(Clause44-Clause55).IEEE Std 802.3,December 2008.

[2]IEEE.IEEE 802.3-2008SECTION 5(Clause56-Clause74).IEEE Std 802.3,December 2008.

[3]ANSI NCITS.Information technology -SCSI Architecture Model -2(SAM -2).July 2001.

[4]ANSI NCITS.Information Technology -SCSI

Block Commands -2(SBC -2).July 2001.

[5]

ANSI NCITS.Information technology -SCSI Primary Commands -3(SPC -3).Novem-ber 2002.

[6]ANSI.Serial Attached SCSI -2.1(SAS -2.

1).January 2009.

[7]ANSI.Information technology -AT Attachment

8-ATA /ATAPI Command Set (ATA8-ACS ).December 2006.

[8]

Serial ATA International Organization.Serial ATA Revision 2.6.February 2007.

[9]PCI -SIG.PCI Express Base Specification Re-vision 2.0.December 2006.

[10]J.Satran ,K.Meth.Internet Small Computer

Systems Interface (iSCSI ).RFC3720,April

2004.

[11]Intel.Intel 8259910GbE Controller Datashe-et.Intel Document Number :322169-003,January 2010.

[12]Mellanox Technologies.ConnectX Family Pro-grammer ’

s Reference Manual (PRM )Rev 0.50.Mellanox Technologies Confidential ,No-vember 2009.

[13]Mellanox Technologies.Dual Port ConnectX -

2VPI Hardware Reference Manual (HRM )Rev 0.40.Mellanox Technologies Confiden-tial ,November 2009.

[14]王焕东,高翔,陈云霁,胡伟武.龙芯3号互

联系统的设计与实现.计算机研究与发展,

2008第12期.

(收稿日期:2011-10-20檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪檪

(上接第46页)参考文献:[1]

Walter Willinger ,Murad S.Self -Similairy Through Hige -Variability :Statistical Analysis of Ethernet LAN Traffic at the Source Level.IEEE /ACM Transactions on Networking ,Vol.5,No.1,2002.

[2]Will E.Leland Daniel V.Wilson.High Time -

Resolution Measurement and Analysis of LAN Traffic :Implications for LAN Interconnection.

july ,2004.[3]邬源杨,董玮文.基于主成分分析的网络流相关性研究.计算机工程2007.12:16-17.[4]李立.高突发性自相似网络业务流量理论及

建模分析研究.华中科技大学博士论文

2008.

[作者简介]王晓燕(1979-),女,山东诸城人,讲师,在读博士生,主要研究方向网络服务质量与网络协议优化。

(收稿日期:2012-12-12)

相关文档