Контроллер диска

Контроллер диска — это управляющая электронная схема, которая позволяет центральному процессору взаимодействовать с приводом жёсткого диска, приводом дискеты или другим дисковым запоминающим устройством. Он также обеспечивает интерфейс между дисководом и шиной, соединяющей его с остальной частью системы[1][2].

Ранние дисковые контроллеры определялись способами хранения данных и их кодированием. Обычно они устанавливались на отдельной плате контроллера. Контроллеры с модифицированной частотной модуляцией (Modified frequency modulation, MFM) были наиболее распространены в небольших компьютерах и использовались как для дискет, так и для жёстких дисков. Контроллеры с кодированием с ограничением длины поля записи (RLL) применяли сжатие данных для увеличения ёмкости хранения примерно на 50%. Priam разработала собственный алгоритм хранения, который мог удвоить дисковую ёмкость. Интерфейс Shugart Associates Systems Interface (SASI) был предшественником SCSI.

Современные контроллеры дисков встроены в сами накопители как периферийные устройства. Например, диски SCSI имеют встроенные SCSI контроллеры.Раньше, когда большая часть функциональности SCSI-контроллеров не была реализована в одной микросхеме, отдельные SCSI-контроллеры подключали диски к шине SCSI.

Эти встроенные контроллеры периферийных устройств обмениваются данными с хост-адаптером шины в хост-системе через стандартизированный высокоуровневый интерфейс шины хранения данных. Наиболее распространенными типами интерфейсов, предоставляемых сегодня хост-контроллерами, являются PATA (IDE) и Serial ATA для домашнего использования. Диски высокого класса используют Parallel SCSI, Fibre Channel или Serial Attached SCSI. Периферийный контроллер, интегрированный в жёсткий диск PATA (IDE), Serial ATA, Parallel SCSI или Serial Attached SCSI , обычно представляет собой микроконтроллер или ASIC.

Дисковые контроллеры также могут управлять временными параметрами доступа к флеш-памяти, которая не является механической (то есть не имеет вращающегося диска).

Контроллер диска против адаптера хоста

Компонент, позволяющий компьютеру взаимодействовать с периферийной шиной, называется хост-адаптером или адаптером хост-шины (HBA, например, Advanced Host Controller Interface или AHDC). Контроллер диска позволяет диску взаимодействовать с той же шиной. Сигналы, считываемые головкой чтения-записи, преобразуются контроллером диска, затем передаются по периферийной шине, после чего снова преобразуются хост-адаптером в формат, подходящий для шины материнской платы, а затем считываются центральным процессором в память (ОЗУ).

Иногда между хост-адаптером и контроллером диска может находиться ещё один контроллер — контроллер дискового массива, позволяющий формировать аппаратный RAID. Иногда он может быть даже физически интегрирован с HBA.

Примечания

  1. Эта статья основана на материале, взятом из Disk controller с сайта Free On-line Dictionary of Computing до 1 ноября 2008 года в соответствии с условиями «перелицензирования» GFDL версии 1.3 или более поздней.
  2. Jeppesen J., Allen W., Anderson S., Pilsl M. Hard disk controller: The disk drive's brain and body // Proceedings 2001 IEEE International Conference on Computer Design: VLSI in Computers and Processors. ICCD 2001 (амер. англ.). — 2001. — С. 262–267. — ISBN 0-7695-1200-3. — doi:10.1109/ICCD.2001.955038.

См. Также