存储控制器是按照一定的时序规则对存储器的访问进行必要控制的设备,包括地址信号、数据信号以及各种命令
信号的控制,使主设备(访问存储器的设备)能够根据自己的要求使用存储器上的存储资源。
存储控制器,多作为可在
微处理器中排列
二极管的
只读存储器随机存储器,这使得IBM可以轻松修改微程序中的程序错误。尽管当时默认的存储控制器为ROM,但由于可随意读写的RAM的面世,使得用户可以自己更改计算机的微程序。
存储控制器配有能够使下一指令顺利输出的
寄存器。定序器则负责依据微程序的运行结果来决定下一条指令的运行地址,防止各指令经由寄存器时发生冲突。在大多数设计中,其他指令也会从
寄存器中通过。因为通过将下一指令的运行延缓一个周期,可以提高机器的运行速度。这种寄存器被称作管道寄存器。下一命令的运行通常要依据上一命令的运行结果,在当前的微程序循环未完成之前无法实施。总之,存储控制器的输出结果都会被输入到寄存器当中。寄存器和EPROM过去常被组装于同一块芯片。由决定系统循环时间的时钟信号负责驱动寄存器。
内存控制器(英语:Memory Controller)是一个用于管理与规划从内存到
CPU间传输速度的总线电路控制器,它可以是一个单独的芯片或集成到相关的大型芯片里;如微处理器与北桥内置的内存控制器
内存控制器控制着必要的逻辑读取和写入
DRAM,并每隔一段时间刷新
动态随机存取存储器(DRAM)里的内容。如果没有不断刷新DRAM将会丢失已写入的数据,因为DRAM的储存单元其实是
电容器的一种,电容器会不断泄漏它储存的电荷,根据JEDEC标准只要泄漏速度不小于64毫秒内存就可以正常工作。进行读取和写入动作时,内存控制器会根据数据地址到DRAM中选择行和列,通过一个
多路转换器将数据合并以减少操作所需的总线宽度,由DRAM输入端的多路转换器电路承接转换操作,其中经由DRAM的多路分解器为转换后的输入数据选择正确的存储器位置并返回数据,总线宽度是允许同时进行通信的存储单元数目。内存控制器的总线宽度范围从在早期的系统中的8位,演变成在更复杂的系统和显卡中的512位,这通常被实现为数个64位内存控制器同时并行运行,这称为“团体模式”。一些内存控制器,例如集成QUICC内存控制器的Power QUICC II处理器,可在同一时间连接到各种不同类型的设备,如:
SDRAM、
SRAM、
ROM和内存映射的I/O。一些内存控制器会集成ECC错误检测和校正的功能。现在实验中的内存控制器除了包含执行存储器管理单元地址转换中的第一级,也包含第二级别的地址转换,进一步减少带宽占用率。
硬盘控制器即
磁盘驱动器适配器。是计算机与磁盘驱动器的接口设备。它接收并解释计算机来的命令,向磁盘驱动器发出各种
控制信号。检测磁盘驱动器状态,按照规定的磁盘数据格式,把数据写入磁盘和从磁盘读出数据。磁盘控制器类型很多,但它的基本组成和工作原理大体上是相同的,它主要由与计算机系统总线相连的控制逻辑电路,
微处理器,完成读出数据分离和写入数据补偿的读写数据
解码和
编码电路,数据检错和纠错电路,根据计算机发来的命令对数据传递,
串并转换以及格式化等进行控制的逻辑电路,存放磁盘基本输入输出程序的只读存储器和用以数据交换的缓冲区等部分组成。
IDE控制器经常制作在主板中,最多能够支持4个硬盘,每秒传输数据最多可达66Megabytes(MB),但是许多IDE控制器仅能达到33Megabytes。IDE控制器有几种变体,常见的就是
ATA:AdvancedTechnologyAttachment(附加高级技术),ATA是
IBM发明的装在硬盘里的第二个控制器,能够大大加快数据的传输速度。当前进一步提高了性能的
ATA-3和
ATA-4正被音频工作站广泛使用。
SCSI是非常先进的
硬盘控制器,但是通常它的价格高于IDE因此难于普及。SCSI能够支持多件硬盘和
CD-ROM、扫描仪等设备,可以用
菊花链的方式联接多达30件设备和外围,最适合需要巨大容量的录音棚采用。
SCSI控制器传统上就比IDE快,更能够达到每秒160MB的速度,正在开发的新控制器甚至可以达到每秒320MB。就象IDE,SCSI也有一些不同的版本,如果你的DAW需要最好的性能,使用24bit/96Khz或24bit/192KHz规格的标准,存储大量的数据,应当首先考虑SCSI。
阵列控制器用于磁盘阵列,是磁盘阵列的大脑,硬件组成包括
CPU,高速缓存(Cache)以及光纤通道(FC),主要用来实现数据的存储转发以及整个阵列的管理,是系统主机与存储器件(磁盘柜)之间的“桥梁”。
随着对存储性能要求的不断提高,存储器的容量越来越大、速度越来越快,新的存储器访问技术也应运而生,存储控制器也在不断的改进与发展。例如,由传统的单一通道控制器到双通道技术,再到处理器内部整合封装存储控制器,其发展相当迅速,未来肯定会有更新的技术出现,到那时,可能就没有存储控制器的概念了。