RAID卡简介

参考资料:

https://blog.csdn.net/cymm_liu/article/details/8656154?spm=a2c4e.10696291.0.0.406119a4YLoXPK

 

0RAID卡简介

RAID 卡有自己的CPU、Cache Memory,通过集成或借用主板上的 SCSI 控制器来管理硬盘,可以称之为一个智能化的设备。

 

RAID 卡的分类:

一般根据集成的 SCSI 控制器来划分。如果没有集成 SCSI 控制器,而是借用主板上的 SCSI 控制器来管理硬盘,则为零通道 RAID 卡。根据 RAID 卡集成的 SCSI 控制器的通道数量,可以分为单通道、双通道、三通道 RAID 卡。还可以按照 SCSI 控制器的标准来划分 RAID 卡的种类,如 Ultra Wide 、 Ultra2 Wide 、 Ultra160 Wide 。

RAID 处理器:

是一个PCI从设备,接受并执行来自系统的命令。 同时占用 PCI 中断,代表 SCSI 磁盘子系统向系统 提出中断请求,请求占用 PCI 总线,返回对系统命令的响应,如输送 SCSI 硬盘上的数据。

作为 RAID 卡的 CPU ,通过执行闪存中的 Firmware ,控制 SCSI 控制器、 Cache Memory 以及指示报警电路,来实现 RAID 卡的功能,运作流程如下:

• 初始化 RAID 卡寄存器

• 读取 NVRAM 的上次 RAID 参数,与硬盘实际信息进行比较,显示结果

• 发送配置提示、响应 HOST 命令进入配置界面

• 提供配置菜单、将用户提供的 RAID 卡参数、 RAID 参数存入 NVRAM

• 根据 RAID 参数,通过 SCSI 控制器对硬盘进行初始化写操作

• 完成配置

• 等待 Host 发出读写操作命令

 

RAID 卡提高磁盘读写性能的另一手段是:磁盘CACHE。

 

1、RAID卡结构:

 

实现了raid功能的板卡(SCSI卡或者IDE扩展卡)就叫做RAID卡。同样,在主板南桥芯片(又称之为输出/输入控制器中心(Input/Output Controller Hub,ICH),负责I/O总线之间的通信,如PCI总线、USB、LAN、ATA、SATA、音频控制器、键盘控制器、实时时钟控制器、高级电源管理等,这些技术相对来说比较稳定,所以不同芯片组中南桥芯片可能是一样的,不一样的只是北桥芯片。)上也可实现RAID功能,由于南桥中的芯片不能靠CPU来完成他们的功能,所以这些芯片完全靠电路逻辑来自己运算,尽管速度很快,但是功能相对插卡式的RAID卡要弱。从某些主板的宣传广告中就可以看到,所谓板载raid芯片就是指南桥中有实现raid功能的芯片

 

这样操作系统不需要作任何改动,除了RAID卡驱动程序之外不用安装任何额外的软件,就可以直接识别到已经过raid处理而生产的虚拟磁盘。

 

对于硬件的raid卡,操作系统无法感知底层物理磁盘,OS只能通过厂家提供的raid卡的管理软件来查看卡上所连接的物理磁盘。而且,配置raid卡的时候,也不能在操作系统下完成,而必须进入这个硬件来完成(或者在操作系统下通过raid卡配置工具来设置)。一般的raid卡都是在开机自检的时候,进入他的ROM配置程序来配置各种RAID功能。

RAID卡的结构图:

  • SCSI RAID卡上一定要包含SCSI控制器,因为其后端连接的依然是SCSI物理磁盘
  • 其前端连接到主机的PCI总线上,所以一定要有一个PCI总线控制器来维护PCI总线仲裁、数据发送接收等功能
  • 还需要一个ROM,一般都是用flsh芯片作为ROM,其中存放着初始化RAID卡必须的代码以及实现RAID功能所需的代码
  • RAM的作用,首先是作为数据缓存OS要写入硬盘的数据以及OS要读取的硬盘的数据),提高性能;其次作为RAID卡上的CPU执行RAID运算所需要的内存空间
  • XOR芯片是准们用来做RAID3,5,6,等这类校验型RAID的校验数据计算用的。如果让cpu来做校验运算,需要执行代码,将耗费很多周期。而如果直接使用专用的数字电路,一进一出就立即得到结果。所以为了解脱CPU,增加了这块专门用于XOR运算的电路模块,大大增加了数据校验计算的速度。

RAID卡与 SCSI卡SCSI控制器 不是同一个东西SCSI和RAID这两板卡功能是完全不同的,RAID卡的价格通常会比SCSI卡的价格高许多,原因是它们的用途不一样,SCSI卡仅用于连接SCSI硬盘或外设,而RAID卡的主要用途是通过相应的RAID技术实现磁盘读写性能的提高和数据备份以便当一个磁盘发生故障时,通过RAID技术可以从阵列中其它磁盘中恢复损坏磁盘中的数据,以最大限度地确保企业服务器数据的完整性,减少因单个磁盘损坏而造成的损失。 且RAID卡不仅可支持SCSI接口,还可支持如IDE和SATA这样常用的磁盘接口,所以不仅RAID卡的作用要远大于SCSI卡,而且适用范围也更广,它们唯一相似的一点就是两者都可以连接多个硬盘。,RAID卡有raid功能,而SCSI卡上没有raid功能的,如果RAID卡上有多个SCSI通道,那么就成为多通道RAID卡。目前scsi RAID 卡最高有4通道,其后端可以接入4条SCSI总线,所以最多连接64个SCSI设备。有了RAID卡之后,SCSI控制器(SCSI卡)就了RAID程序代码的傀儡,raid让它干啥,他就干啥,SCSI控制器对它下面掌管的磁盘情况完全明了,它和RAID程序代码之间进行通信。RAID程序代码知道SCSI控制器SCSI卡)掌管的磁盘情况之后,就按照ROM中所设置的选项,比如RAID类型,条带大小等,对RAID程序代码做相应的调整,操控它的傀儡SCSI控制器向主机报告“虚拟”的逻辑盘,而不是物理磁盘了。

RAID卡会向每个磁盘写入一些RAID信息(这也是做过raid的磁盘与普通磁盘唯一的区别,raid磁盘里不会又条带化的信息,因为条带化信息在raid卡内),这样即使将这些磁盘拿下来,放到同型号的另一块RAID卡上,也能无误地认出以前做好的raid信息。

条带化之后,raid程序代码就操控SCSI控制器向OS层驱动程序代码提交一个虚拟化之后的所谓的“虚拟盘”或者称“逻辑盘” 也有人干脆称为LUN

RAID卡

posted @ 2019-09-10 11:59  文州小生  阅读(5259)  评论(0编辑  收藏  举报