Функция Bus Master

Функция Bus Master введена в контроллеры EIDE с приходом процессоров Pentium. Что это такое? Классический способ приема данных от какого-либо устройства следующий - процессор выполняет команду чтения порта, считывает байт или слово данных в свой регистр, после чего переписывает этот байт или слово в память, затем повторяет эту процедуру до тех пор, пока вся необходимая информация не будет считана из устройства в память. Если бы процессору больше нечего было делать, то этот способ всех бы устраивал. Но с появлением многозадачных операционных систем стало слишком накладно использовать процессор для операций ввода/вывода. Поэтому контроллеры внешних устройств (EIDE в частности) стали оборудоваться как бы собственными процессорами ввода/вывода.

Тик, процессор программирует контроллер EIDE на шине PCI, указывая ему, откуда он должен взять данные и куда в память их положить. После получения этих указаний контроллер захватывает управление шиной PCI, а драйвер Bus Master управляет шиной доступа к памяти и совместно с контроллером выполняет операции по считыванию данных с жесткого диска или CD-ROM непосредственно в память с помощью контроллера прямого доступа в память (DMA - Direct Memory Access). При таком способе обмена данных процессор свободен после выдачи команд контроллеру EIDE и может заниматься любыми другими делами.

Проблемы аппаратного характера возникали с CDROM, зависания.

Часть 2. Интерфейсы. ATA (IDE), SATA, SCSI

Интерфейс ATA - AT Attachment for Disk Drives - разрабатывался в 1986-1990гг. как средство подключения накопителей на жестких магнитных дисках к компьютерам IBM PC/AT с шиной ISA-Bus. Этот стандарт определяет набор регистров и назначение сигналов 40-контактного интерфейсного разъема. Интерфейс появился в результате переноса контроллера жесткого диска поближе к самому накопителю, то есть создания устройств со встроенным контроллером - IDE (Integrated Device Electronic). Фактически стандартный для PC/AT контроллер жесткого диска был перенесен на плату электроники накопителя с сохранением своей регистровой модели.

Подключать эти 40контактов к шине – неразумно, поэтому поставили небольшой контроллер-плату, которая из шины выбирала минимум необходимых сигналов и направляла их на эти 40 пинов.

Принятая система команд и регистров, являющаяся частью спецификации ATA, ориентирована на поблочный обмен данными с устройствами прямого доступа. Для иных устройств существует спецификация ATAPI, основанная на тех же аппаратных средствах, но позволяющая обмениваться пакетами управляющей информации (PI - Package Interface). Пакетный интерфейс позволяет расширить границы применения шины ATA.

Понятие Ведущее устройство (Master) и ведомое. Правила.

Программный доступ PIO (Programmed Input/Output) выполняется в виде следующих друг за другом операций чтения или записи в пространстве ввода/ вывода по адресу регистра данных. [В отличие от программно-управляемого ввода/вывода, применяемого, например, для общения с LPT-портом, ] передача блока данных в режиме PIO производится без программного опроса какого-либо бита готовности для передачи каждого слова. Готовность устройства проверяется только перед началом передачи блока, после чего хост имеет право произвести серию операций в определенном темпе. Этот темп определяется выбранным режимом PIO Mode, для каждого из которых определены допустимые границы всех параметров временной диаграммы цикла обмена.

Обмен по каналу DMA в отличие от PIO занимает только шины ввода/вывода и памяти. Процессору требуется выполнить только процедуру инициализации канала, после чего до прерывания от устройства, полученному в конце передачи блока, он свободен (этой свободой могут воспользоваться только многозадачные системы). Режимы обмена по каналу DMA могут быть одиночными и множественными.

При множественном режиме (Multiword DMA) на сигнал запроса хост отвечает потоком циклов DMA. Если устройство не справляется с этим потоком, оно может приостановить поток, а по готовности к продолжению снова его установить. Множественный режим позволяет развивать более высокую скорость передачи.
Новейшее достижение в повышении скорости обмена - режимы Ultra DMA, позволяющие достигнуть скорости передачи по шине ATA 33 Мбайт/с и обеспечить контроль достоверности передач, чего не делалось ни в PIO, ни в стандартных режимах DMA

ATA позволяет подключать устройства различных категорий,отличающихся "уровнем интеллекта" встроенного контроллера. Первые дисковые накопители IDE представляли собой просто аналог пары диск-контроллер ST-506/412, выполненной в едином конструктиве. Эти устройства с современной точки зрения были примитивными, за что и были впоследствии причислены к категории неинтеллектуальных устройств со встроенным контроллером –

  • Non-Intelligent IDE. Эти устройства не выполняли трансляцию нумерации секторов - их логические параметры всегда совпадали с физическими. Команды идентификации устройства и установки параметров ими не выполнялись. Дефектные блоки, отмеченные в заводском списке и появляющиеся в процессе эксплуатации, были видны пользователю.
  • Intelligent ATA IDE могут выполнять расширенные ATA-команды - идентификации устройства и установки параметров. Поддерживают возможность трансляции физических параметров в логические. Дефектные секторы они могут и прятать от пользователя (до исчерпания резерва).
  • Intelligent Zoned Recording IDE. Поскольку они имеют различное количество секторов на разных треках (для повышения плотности хранения), режим трансляции геометрии является для них обязательным

Устройства IDE отличаются также и по другим признакам, определяемым интеллектуальностью контроллера: это и автоматический мониторинг внутренних параметров (например, SMART), и температурная коррекция системы позиционирования, и поддержка управления энергопотреблением, и различные усовершенствования, направленные на повышение производительности.

Аппаратно-программный интерфейс ATAPI (ATA Package Interface - пакетный интерфейс ATA). При подаче команды Packet регистр свойств содержит признаки команды - использование для обмена данными канала DMA, возможность перекрывающегося выполнения. Структура командного пакета позаимствована из SCSI.

ATA4 & SCSI

Недостаток ATA: при применении в многозадачных системах является то, что когда одно устройство на шине исполняет команду, другое устройство использоваться не может. В этом интерфейс ATA существенно уступает SCSI, где устройства на время выполнения длительной внутренней операции может освобождать шину, и, кроме того, имеется эффективный механизм организации очередей процессов ввода/вывода.

ATA-4 определяет возможности параллельного выполнения команд обоими устройствами и создания очередей. Возможность перекрытия команд - Overlaped Feature - позволяет устройству, занятому длительной внутренней операцией освободить шину для того, чтобы ее было можно использовать для обмена с другим устройством шины. Принятый механизм продолжения менее эффективен, чем в SCSI - он требует привлечения ресурсов хоста для обнаружения готовности устройства. Перекрытие допускается только для нескольких новых команд интерфейса ATA-4.

SCSI

Системный интерфейс малых компьютеров SCSI (Small Computer System Interface) стандартизован ANSI еще в 1986 году. Предназначен для соединения устройств различных классов - памяти прямого и последовательного доступа, CD-ROM, оптических дисков однократной и многократной записи, устройств автоматической смены носителей информации, принтеров, сканеров, коммуникационных устройств и процессоров.

Физически интерфейс является 8-битной параллельной шиной с тактовой частотой 5 МГц, состоящую из 25 сигнальных цепей. Шина допускает подключение до 8 устройств, скорость передачи данных в первоначальной версии достигала 5 Мбайт/с. Впоследствии (1991 г.) появилась новая спецификация - SCSI-2, расширяющая возможности шины как в количественных, так и в качественных показателях. Тактовая частота шины Fast SCSI-2 достигает 10 МГц, а Ultra SCSI-2 - 20 МГц.

Поддержка устройствами возможности исполнения цепочек команд, очередей (до 256 команд) и независимости их работы друг от друга обуславливают высокую эффективность применения SCSI в многозадачных системах.

SCSI-3 - дальнейшее развитие стандарта, направленное на увеличение количества подключаемых устройств, спецификацию дополнительных команд, поддержку Plug and Play.

Ultra160 SCSI

Ultra 320 SCSI

Ultra4 SCSI тоже поддерживает CRC (cyclic redundancy code) и проверку максимальной поддерживаемой скорости (domain validation) для обеспечения совместимости со старыми устройствами, имеющими низкую производительность

Serial Attached SCSI

Теоретически и практически, в реализации очередной версии – SCSI Ultra 640 – нет ничего невозможного. Производители вполне могли бы выпустить соответствующие продукты и еще какое-то время откладывать смену интерфейсов. Но есть один маленький нюанс – большинство пользователей до сих пор уверены, что Ultra 640 физически нереализуем, на самом же деле по ряду объективных причин он был бы просто несовместим с предыдущими версиями SCSI. По сути, мы бы получили хоть и параллельный, но все же новый интерфейс, требующий замены всего существующего парка оборудования в системах хранения данных. Получается, что так или иначе, а кардинальные изменения все же были бы. Поэтому поскольку перемены неизбежны, нужно постараться извлечь из них максимальную пользу.

Кроме проблем с перекрестными наводками при передаче данных на высоких скоростях, Parallel SCSI имел еще некоторые ограничения, осложнявшие работу с ним: максимальное число подключаемых устройств (16 в одной цепочке) и длину кабеля (суммарно не более 12 м), необходимость терминирования и ручной установки ID накопителей, разделение полосы пропускания между всеми подключенными приводами.

это устранено в SAS – соединение «точка-точка» дает вделенную полосу пропускания для каждого диска, предельная длина кабеля составляет до 8 м на один порт (увеличивается с помощью SAS-расширителей), количество адресуемых устройств в одном домене возросло до 16 256, вместо ручной установки ID используются уникальные номера (WWN – World Wide Number), присваиваемые каждому из них еще на этапе производства. Пропускная способность нового интерфейса на сегодняшний день равна 3 Gbps, в следующих версиях она возрастет сначала до 6, а затем до 12 Gbps. Разъемы для внешних SAS-устройств рассчитаны на подключение до четырех накопителей и обеспечивают полосу пропускания 1,2 Gbps в одном направлении.

+ полная поддержка горячего подключения и сортировка очереди команд.

Также сохраняется полная механическая и электрическая совместимость с SATA, т. е. SAS-контроллер одновременно работает как c SATA-, так и с SAS-дисками (но не наоборот) – гетерогенные архитектуры.

Что такое IDE & ATA.

Первые стандарты для винчестеров IDE были разработаны компаниями Western Digital и Compaq Computer в 1986 г

Единственным различием между IDE и ATA является то, что IDE определяет спецификацию на электронику винчестеров, а ATA – на интерфейсное соединение между HDD и ПК; тем не менее данные термины используются как слова-синонимы.

Поколений ATA было много. Сейчас используется ATA-4. Каждое новое поколение отличалось от предыдущего расширенным набором поддерживаемых протоколов и, как следствие, повышенной скоростью.

Чтобы получить конкурентное преимущество, компания Quantum с Intel разработала новую версию интерфейса для настольных жестких дисков – спецификацию Ultra ATA, также известную под названиями Ultra ATA/33, Ultra DMA33, ATA/ATAPI-4, Ultra DMA 2. Благодаря использованию обоих фронтов передаваемого сигнала эффективная рабочая частота возросла в два раза, соответственно и скорость передачи данных по интерфейсу увеличилась с 16,6 до 33,3 MBps. Кроме того, для повышения надежности в Ultra ATA был введен циклический контрольный код (CRC). Этот стандарт определял следующие режимы: Ultra DMA Mode 0, 1 и 2 (скорости 16,6; 25,0 и 33,3 MBps). Параллельно разрабатывался стандарт PIO Mode 5, но он обеспечивал скорость передачи всего 22,2 MBps и не имел режима прямого доступа к памяти, а потому так и не был реализован.

Увеличение пропускной способности оказалось очень кстати ввиду возрастания скорости чтения с пластин. Уже в 1998 г. была разработана следующая версия – Ultra ATA/66 (ATA/ATAPI-5). Стандарт предусматривал очередное увеличение скорости (до 66,6 MBps), а также смену кабеля с 40- на 80-жильный.

Компании же ориентировались на другой стандарт – Serial ATA, поскольку недостатки обычного АТА (параллельного АТА) проявились еще при разработке Ultra ATA/100. Дальнейшее наращивание пропускной способности ограничивалось физически многожильным IDE-кабелем.

Два основных интерфейса: IDE (Enhanced IDE) и SCSI.

На любой материнской плате, выпущенной после 1996 года, можно обнаружить контроллер EIDE. Это, а также существенно более низкая стоимость IDE дисков по сравнению со SCSI объясняет значительное превосходство IDE дисков в количественном выражении над SCSI.

EIDE имеет два канала (primary - первичный и secondary - вторичный), к каждому из которых можно подключить до двух устройств (всего четыре). С интерфейсом IDE в настоящее время, кроме жестких дисков, выпускаются также приводы CD-ROM, накопители Iomega Zip, накопители на магнитной ленте.

Пока очень незначительное количество материнских плат выпускаются с контроллером SCSI. Сканеры, магнитооптические накопители, устройства записи для CD и т.п. выпускаются как с интерфейсом SCSI, так и с IDE.

Если машина не будет получать существенных нагрузок, SCSI диск НЕ ДАСТ НИКАКИХ ОЩУТИМЫХ ПРЕИМУЩЕСТВ по сравнению с EIDE диском при прочих равных. Выигрыш будет только в снижении нагрузки на центральный процессор за счет использования процессора SCSI контроллера. Интерфейс SCSI позволяет подключать до 7 устройств, а Wide SCSI до 14 устройств. Существуют также многоканальные SCSI контроллеры, позволяющие подключить и большее количество устройств.

Основной недостаток интерфейса EIDE - отсутствие "интеллекта". Если на одном канале подключены жесткий диск и накопитель CD-ROM, то в случае обращения к CD-ROM процессор будет ожидать завершения операций с CD-ROM, прежде чем сможет обратиться к жесткому диску. Каналы EIDE в современных контроллерах EIDE, как правило, достаточно независимы друг от друга. Для повышения производительности EIDE были разработаны и стандартизованы режимы:

  • PIO (Programming Input Output - программируемый ввод/вывод)
  • single word DMA (обмен одиночными словами в режиме DMA - Direct Memory Access - прямого доступа к памяти)
  • multi word DMA (обмен несколькими словами в режиме DMA)

SCSI интерфейс имеет несколько разновидностей, которые совместимы друг с другом (достаточно иметь пассивные переходники). 8 бит (50-ти контактный разъем) или 16 бит (68-и контактный разъем для Wide SCSI). Частота шины может быть 5 MHz (SCSI 1), 10 MHz (Fast SCSI), 20 MHz (Fast-20 or Ultra SCSI) or 40 MHz (Ultra-2 SCSI). Активно внедрялся стандарт Ultra2 SCSI LVD, являющийся разновидностью Ultra2 SCSI.

Теперь более популярен стандарт Ultra160 SCSI

В EIDE сейчас также используется механизм обнаружения ошибок с помощью CRC (циклический контрольный код). Это позволяет избежать ошибок при приеме/передаче данных, так как при получении данных с ошибкой пересылка данных повторяется снова.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: