Компьютеры
30 марта 2003, 00:33

Контроллер Silicon Image SiI3112A: интерфейс Serial ATA от законодателя мод

Первый на рынке и пока самый популярный контроллер Serial ATA, который исходно спроектирован без использования промежуточного UltraATA-интерфейса, позволяет, например, корректно сравнить диски с интерфейсами SerialATA и UltraATA.

Несмотря на мощный промоушн и активную поддержку со стороны многих ведущих IT-компаний интерфейс Serial ATA не слишком спешит проникнуть в нашу повседневную жизнь. И причины в этом не столько технические, сколько экономические.

Действительно, хост-контроллеры для Serial ATA в большом ассортименте для разных сегментов рынка (от встраиваемых в материнские платы до профессиональных RAID) представили практически все ведущие игроки; образцы винчестеров с этим интерфейсом от всех основных «винчестеростроителей» еще осенью прошлого года были продемонстрированы в работе (см. www.ferra.ru/online/storage/20092). А далее произошло следующее: осенью 2002 года производители системных плат стали наперебой оснащать свои изделия контроллерами Serial ATA (www.ferra.ru/online/storage/19510 и www.ferra.ru/online/system/23586) в надежде, что производители винчестеров скоро завалят прилавки соответствующими дисками, а платы получат дополнительную «фичу» как запас на будущее и как новый маркетинговый ход. Некоторые производители отдельных PCI-карт хост-контроллеров также поспешили выпустить на рынок свои изделия для Serial ATA (например, HighPoint Technologies со своим RocketRAID 1520, см. www.ferra.ru/online/storage/22858, появившимся в продаже в начале осени), хотя, с другой стороны, скажем, Promise, показав еще в сентябре широкий спектр своих PCI-контроллеров для Serial ATA, не спешила начинать их продажи - первые партии стали отгружаться лишь в феврале-марте.

То есть при наличии собственно хост-контроллеров Serial ATA задержка была за малым - доступностью винчестеров с таким интерфейсом. А они явно запаздывали. Первыми в начале зимы появились Seagate Barracuda Serial ATA V (см. www.ferra.ru/online/storage/22028), которые до сих пор (а прошло уже более 3 месяцев) не часто можно найти в магазинах. Причем преимущества, которые имели эти диски по сравнению со своими аналогами с параллельным интерфейсом (Seagate Barracuda ATA V, см. www.ferra.ru/online/storage/20795), сводились не к новому интерфейсу (теоретически чуть более скоростному, хотя при реальной скорости чтения/записи пластин в 2-3 раза меньшей столь высокие скорости интерфейса в большинстве задач просто бессмысленны), но к большему объему кэш-памяти, расположенной на винчестере (8 Мбайт взамен 2). Учитывая, что многие компании и так начали выпуск UltraATA-дисков с 8-мегабайтным буфером, преимущества от использования Serial ATA вместо UltraATA 133/100 сводились к более компактному кабелю и устранению конкуренции двух дисков на одном кабеле (Master-Slave для UltraATA), поскольку на каждый порт Serial ATA пока можно «повесить» лишь один диск. Оба эти достоинства не настолько внушительны, чтобы оправдать разницу в 30-40 долларов между однотипными моделями дисков, различающимися только интерфейсом.

Тем более неохотно SerialATA-диски берут крупные OEM-сборщики, когда каждый доллар конечной себестоимости компьютера на счету. Какой смысл закладывать дополнительно 5-10 долларов на контроллер Serial ATA и 20-40 долларов на диск Serial ATA, если для конечного пользователя это ничего, кроме «псевдогордости», не сулит? Именно поэтому, в частности, компания Maxtor не спешит отгружать свои SerialATA-диски потребителям. Как сказал недавно на московской пресс-конференции один из руководителей этой крупнейшей сейчас винчестерной компании, еще осенью они поставили большую партию SerialATA-дисков одному ОЕМ-партнеру, так тот до сих пор не смог «пристроить» большую часть из них! Теперь становится понятно, почему, например, компания Samsung, винчестеры которой нацелены преимущественно на сегмент дешевых ПК (хотя это отнюдь не делает их хуже, чем у конкурентов), до сих пор не выпустила SerialATA-моделей (хотя серия SpinPoint P80, где будут присутствовать модели Serial ATA, недавно уже была объявлена). Еще интереснее поступает компания Western Digital, которая давно готова к выпуску потребительских SerialATA-дисков, но упорно не желает этого делать, поскольку продавать потребительские винчестеры с интерфейсом SerialATA сейчас, по их словам, очень невыгодно. Другое дело - рынок профессиональных высокооборотистых накопителей, где использование SerialATA вместо SCSI способно не только на 30% снизить стоимость, но и удобно при использовании массивов дисков. Специально для этого Western Digital, не отягощенная бизнесом накопителей SCSI, создала свою новейшую серию Raptor - SerialATA-диски со скоростью вращения 10000 об./мин. и пластинами по 36,7 Гбайт, которые будут дешевле своих SCSI-конкурентов примерно на треть при сравнимой производительности. Остальным же игрокам этого рынка так поступать не выгодно - у них полно собственных SCSI-моделей, которые надо продавать.

Однако, от прогресса не уйти. И как не сопротивляются производители винчестеров новому интерфейсу (шутка), выпускать и продавать диски с ним все равно придется. Правда, популярность и массовость к ним придет лишь только тогда, когда «накрутка» цены диска за собственно новый интерфейс Serial ATA упадет до ничтожных 1-5 долларов, а контроллеры Serial ATA станут встраиваться непосредственно в южные мосты чипсетов. И если последнее должно произойти достаточно скоро - с появлением у Intel моста ICH5 (в чипсетах Springdale/Centerwood), а у SiS - моста SiS964 предположительно в конце весны или начале лета, то вот с ценами на SerialATA-диски пока не все так просто.

Между тем, отдельные PCI-карты контроллеров нового интерфейса тоже могут иметь достаточно большой спрос. Во-первых, при апгрейде огромного парка старых ПК при помощи новых емких и быстрых SerialATA-дисков такие карты неминуемо потребуются. Дополнительным плюсом тут является то, что старые материнские платы не поддерживают винчестеры объемом более 127 Гбайт, тогда как контроллеры Serial ATA изначально лишены этого недостатка, причем с запасом на десятилетия вперед. Во-вторых, даже многие современные системные платы до сих пор не имеют в своем составе контроллера Serial ATA. Поэтому для использования совместно и ними таких дисков (как и при будущем их апгрейде) придется ставить дополнительный PCI-контроллер Serial ATA. В третьих, для более профессиональных и многодисковых решений хост-контроллеры Serial ATA RAID в виде PCI-карт являются наиболее предпочтительным решением, даже если на плате уже установлен простейший SerialATA-чип.

Два основных и наиболее часто используемых в настоящее время в составе системных плат контроллера Serial ATA мы недавно рассмотрели (см. www.ferra.ru/online/storage/22858). Там же присутствовала и первая на рынке PCI-карта контроллер Serial ATA - RocketRAID 1520 от HighPoint Technologies. К сожалению, в последнем было применено устаревшее ныне решение, когда известный ранее микроконтроллер интерфейса UltraATA/133 (HPT372A в случае RocketRAID 1520) оснащался небольшими чипами-трансляторами параллельного интерфейса в последовательный. Такое решение в силу ряда причин нельзя назвать наилучшим. С другой стороны, микроконтроллеры, исходно спроектированные для Serial ATA (то есть «нэйтив», без промежуточного Ultra ATA внутри) уже существуют. И PCI-карту на одном из них - Silicon Image SiI3112A - мы и рассмотрим в настоящей статье.

Controller

Референс PCI хост-контроллер Serial ATA от Silicon Image.

Первой PCI-картой с «нэйтив»-контроллером Serial ATA, поступившей в нашу лабораторию, стала референс-плата от Silicon Image на чипе SiI3112A (на фото выше). И поскольку этот дешевый контроллер будет продаваться не только самой Silicon Image, но в гораздо больших объемах - многочисленными тайваньскими и китайскими компаниями, многие из которых, по моим недавним наблюдениям на CeBIT 2003, просто используют тот же самый референс-дизайн PCI-платы от Silicon Image, нам имеет смысл остановиться на этой плате поподробнее. К тому же она представит нам чип SiI3112A, который на долгое время стал эталоном (и законодателем мод) среди микроконтроллеров нового интерфейса, обогнав конкурентов по ряду параметров и функций. Ведь именно его корпорация Intel, которая давно и активно двигает интерфейс Serial ATA на рынок, использует в своих исследовательских лабораториях и для демонстрации новых возможностей и функций, пока недоступных у конкурирующих продуктов, а также именно на нем построен первый профессиональный RAID контроллер корпорации (см. www.ferra.ru/online/storage/20092).

Chip

Микроконтроллер SiI3112A - Serial ATA от Silicon Image.

Кристалл микроконтроллера SiI3112A рассчитан на использование с 32-битной шиной PCI 2.2 - «бытовой» 33-мегагерцовой (133 Мбайт/с) или профессиональной 66-мегагерцовой (266 Мбайт/с). Он обеспечивает на выходе два независимых канала Serial ATA спецификации 1.0 с пропускной способностью до 1,5 Гбит/с каждый и возможностью организации простейших RAID-массивов из двух дисков. Заметим, что при одновременной работе двух каналов (до 150 Мбайт/с каждый) пропускной способности 32-битной шины PCI 2.2 (266 Мбайт/с) может оказаться недостаточно для совсем уж полноценного функционирования. К счастью, ситуация, когда оба винчестера потребуют одновременно по 150 Мбайт/с для заполнения (или опустошения) своих буферов, не столь часта и критична, поскольку реальная скорость чтения/записи пластин нынешних дисков - не более 60 Мбайт/с. То есть 66-мегагерцовой шины на два таких диска должно хватать с запасом, тогда как бытовая 33-мегагерцовая шина в такой ситуации уже может урезать скоростные возможности контроллера Serial ATA. Но это уже немного другая история.

SiI-PB-00231

Блок-схема использования микроконтроллера SiI3112A.

Блок-схема чипа показана на диаграмме ниже. Видно, что данные с шины PCI через интерфейс шины и независимые для каждого канала 256-байтные буферы FIFO передаются непосредственно на интерфейс Serial ATA (минуя промежуточное преобразование в параллельный UltraATA-интерфейс). Разумеется, контроллер поддерживает использование режима DMA при доступе к системной памяти через шину PCI. 48-битная LBA-адресация секторов обеспечивает поддержку дисков объемом более 127 Гбайт (вплоть до 144 Петабайт). Есть буферизация команд и полная совместимость по регистрам с параллельным ATA-интерфейсом, включая legacy-поддержку различных мод PIO и DMA, а также bus master DMA для пиковой скорости передачи 1,5 Гбит/с. Ядро кристалла питается от напряжения 1,8 вольт, а шина ввода-вывода - от 3,3 В (стандарт PCI) с допуском до 5 В.

SiI-PB-00232

Блок-схема кристалла микроконтроллера SiI3112A.

Кристалл SiI3112A принадлежит к серии продуктов «SATALink» от Silicon Image, является первым в индустрии одночиповым контроллером нового интерфейса и может использоваться как в составе материнских плат или отдельных PCI-карт, так и в специальных системах хранения данных и встроенных (embedded) системах. К контроллеру SiI3112A (заметим - не к интерфейсу Serial ATA как таковому, поскольку он должен быть полностью совместим с UltraATA, а именно к контроллеру) уже есть драйвера для операционных систем MS Windows 98, ME, 2000, XP и Linux. Для разновидности этого контроллера с поддержкой простейших RAID 0 (Striping) и 1 (Mirroring) также есть специальное программное обеспечение от Silicon Image.

Попутно отметим, что Silicon Image уже анонсировала новый кристалл SiI3512, который в начале лета должен прийти на смену SiI3112. Он отличается меньшими размерами корпуса, поддержкой шины PCI 2.3, ряда новых серверно-ориентированных команд интерфейса Serial ATA и позволяет совмещать несколько таких же чипов на одной плате (для поддержки более 2 дисков), а также поддерживает непосредственно приводы ATAPI (CD и DVD) и функцию горячего подключения накопителей.

Bios

Контроллер SiI3112A на экране начальной загрузки компьютера (POST).

Исследуемая нами референс-плата Silicon Image с чипом SiI3112A имеет перепрошиваемый Flash-BIOS, для который есть два варианта микрокода - с поддержкой RAID и без оной. Работу контроллера в режиме RAID мы рассмотрим позже в отдельной статье, а сейчас остановимся подробнее на независимой работе дисков. К сожалению в «фирменном» силиконовском BIOS этого контроллера нет меню для выбора параметров его работы с дисками (в этом смысле BIOS «наплатных» контроллеров SiI3112A от, например, компании ASUSTeK более удобно, см. www.ferra.ru/online/storage/22858).

DevMan

Контроллер SiI3112A и подключенный к нему винчестер Seagate Barracuda Serial ATA V (ST380023AS) в Device Manager Windows XP.

DevMan_Driver

Драйвер контроллера SiI3112A, используемый для тестов под Windows XP.

В Device Manager Windows XP контроллер возникает как самостоятельный SCSI-элемент и видны подключенные к нему диски, причем в свойствах контроллера можно посмотреть дополнительную информацию о диске, включая работу режимов кэширования чтения и записи, а также текущий интерфейс. Последний «нарисовался» в виде Ultra DMA mode 6 (это фактически UltraATA/133), хотя сами винчестеры Seagate Barracuda ATA V поддерживают лишь Ultra ATA/100 (UDMA mode 5), а сериальные модели барракуд отличаются от «параллельных» лишь присутствием на плате чипа-транслятора из параллельного в последовательный интерфейс (подробности см. на www.ferra.ru/online/storage/22028).

DevMan_DevInfo

Свойства контроллера SiI3112A и подключенного к нему винчестера Seagate Barracuda Serial ATA V (ST380023AS) в Device Manager Windows XP.

Для практических испытаний нового PCI-контроллера мы использовали нашу стандартную тестовую систему для винчестеров (напомню, что в прошлый раз мы были вынуждены вместо нее взять другую систему на базе «наплатных» контроллеров Serial ATA с Pentium 4) в составе: материанская плата ABIT BX-133 на чипсете i440BX с наплатным контроллером UltraATA/100 на чипе HPT372A, процессор Pentium III 800EB на шине 133 МГц и 256 Мбайт памяти PC133 (2-2-2) соответственно, базовый винчестер Seagate Barracuda ATA IV. Таким образом, с использованием платы-контроллера Serial ATA на «нэйтив»-чипе SiI3112A мы получили возможность, наконец, более корректно сравнить производительность дисков Seagate Barracuda Serial ATA V с ранее накопленной базой данных по остальным винчестерам с параллельным интерфейсом, чтобы понять, что сулит нам использование Serial ATA в дисках Seagate.

Disk&Cable

Винчестер Seagate Barracuda Serial ATA V (ST380023AS) и кабель-переходник питания Serial ATA.

В дополнение к ранее уже описанной модели Seagate Barracuda Serial ATA V объемом 120 Гбайт (см. www.ferra.ru/online/storage/22028), мы здесь также использовали другую сериальную Барракуду объемом 80 Гбайт (на фото выше). Она базируется на тех же 60-гигабайтных пластинах, что и старшая, но пластины эти слегка укорочены с «медленной» внутренней стороны, что подтвердили наши непосредственные измерения (см. графики): пластина у 80-гигабайтника укорочена примерно на 11%, а в остальном графики чтения (приведенные к одной пластине) у обоих дисков совпадают (правда, у 80-гигабайтника он оказался совсем чуточку выше).

Bsata5

Скорость линейного чтения для винчестеров Seagate Barracuda Serial ATA V объемом 120 Гбайт и 80 Гбайт.

Укороченная пластина неминуемо скажется на среднем времени доступа - оно действительно у 80-гигабайтной пятой Барракуды несколько меньше, хотя и не намного - около 0,5 мс.

Access

Среднее время доступа для дисков.

Скорсть работы интерфейса Serial ATA у контроллера SiI3112A с дисками Seagate оказалась не столь уж высокой - около 77 Мбайт/с (почти вдвое ниже предельной 150 Мбайт/с). Однако тут есть два оправдания: во-первых, ATA-диски Seagate всегда отличались некоторым недобором скорости интерфейса, то есть в данном случае его можно списать на UATA-контроллер на самих дисках. Во-вторых, ограничивающим эту скорость фактором может быть медленная (теоретические 133 Мбайт/с, в реальности ниже) шина PCI. На профессиональной 66-мегагерцовой шине PCI результаты могут быть лучше.

CacheRead

Скорость работы протоколов Serial ATA и UltraATA/100 для дисков.

Наличие 8-мегабайтного буфера в дисках Seagate привело к достаточно необычным результатам для скорости записи в тесте HD Tach 2.61: обычно график скорости записи проходит примерно вдвое ниже. Очевидно, эффективные алгоритмы отложенной записи у диска вкупе с большим буфером повлияли на результаты работы специфического алгоритма работы HD Tach при измерении скорости записи. Большого значения этому результату придавать не стоит. А тест HD Tach фактически расписался в собственной неадекватности при измерении реальной скорости записи.

hdtach80_

Винчестер Seagate Barracuda Serial ATA V (ST380023AS) с буфером 8 Мбайт в тесте HD Tach 2.61.

В программе ATTO Disk Benchmark большой размер буфера себя не проявил: если у некоторых других винчестеров с буфером 8 Мбайт в этом тесте наблюдалась сильная зависимость результатов от размера тестового файла в диапазоне от 2 до 16 Мбайт (скорость записи для файлов размером 2 и 4 Мбайт возрастала почти до 100 Мбайт/с), то у барракуды этого не было. Это может говорить о том, что алгоритмы использования большого буфера у Seagate пока не настолько эффективны, чтобы опреационная система, которая в этом тесте по умолчанию не использует собственное кэширование, воспринимала диск как единое целое -  в данном случае четко видно ограничение скорости записи самой физической пластиной. Попутно отмечу провал скорости записи для 8-килобайтных блоков для PCI-контроллера Silicon Image. Напомню, что для контроллера SiI3112A на плате ASUS (см. www.ferra.ru/online/storage/22858) этого провала не наблюдалось. Возможно, «виноват» тут родной BIOS от SI (для наплатного контроллера использовался BIOS, адаптированный в ASUS).

Atto

Винчестер Seagate Barracuda Serial ATA V (ST380023AS) с буфером 8 Мбайт в тесте ATTO Disk Benchmark 2.02.

Перекликаются с этим и результаты тестов многопотоковой записи на FAT32 под Windows XP  в программе Nbench 2.4. Многопотоковая отложенная запись у Barracuda SATA V откровенно порадовала - здесь наши герои с запасом обогнали всех конкурентов, включая более быстрый по скорости пластины WD1200JB с 8-мегабайтным буфером и заслуженный IBM. Зато многопотоковое упреждающее четние у сериальных барракуд откровенно разочаровывает, уступая даже параллельным моделям с меньшим буфером (явно неоптимизоровано упреждающее чтение под 8-мегабайтный буфер). Посмотрим, как это отразится на тестах в приложениях.

Arrows-left
Arrows-right
Reload
1 / 2

NBXPread100

В тестах Winbench 99 буферастые сериальные Барракуды показали себя весьма достойно, уступив лишь не менее буферастой модели WD1200JB и оказавшись на одном уровне с IBM 120GXP в профессиональной работе при использовании файловой системы FAT32.

Arrows-left
Arrows-right
Reload
1 / 2

BusinessWxp

На NTFS ситуация была похожа: лидерство WD1200JB пока неоспоримо, зато IBM 120GXP отстал то сериальных барракуд ощутимо, причем 80-гигабайтная модель Барракуды с более быстрым доступом порой чуть быстрее 120-гигабайтной.

Arrows-left
Arrows-right
Reload
1 / 2

Business99ntfs

В наших традиционных тестах копирования файлов великолепная отложенная запись не смогла в полной мере проявиться, и сериальные барракуды уступили наиболее быстрым дискам конкурентов, хотя при копировании больших файлов на FAT32 они почти самые быстрые. В целом, тем не менее, именно на NTFS буферастые рыбки чувствовали себя более уверенно, чем на FAT32.

Arrows-left
Arrows-right
Reload
1 / 2

Copy1

В тестах архивирования и разархивирования обнаружились интересные вещи: при архивировании (сборке 10000 мелких файлов в один крупный без компрессии) на NTFS новые барракуды оторвались от всех преследователей более чем уверенно, хотя на FAT32 - сильно проиграли. А на обратной операции наблюдался почти полный проигрыш сериальных рыб конкурентам, невзирая на манящие буфера. Видимо, здесь напрямую сказываются те достоинства отложенной записи и недостатки упреждающего чтения, которые мы отметили у них выше. То есть при архивированиия хорошая работа отложенной записи приобретает важное значение, тогда как упреждающее чтение важнее при разборке архива (например, при инсталляции приложения из дистрибутива). Кроме того, настораживает большая разница между дисками SATA V на этих операциях на FAT32, хотя оба сериальных диска использовали одинаковую (если судить по номеру) версию firmware - 3.01.

Arrows-left
Arrows-right
Reload
1 / 2

Arc

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

Photoshop

Скорость работы с временным файлом Photoshop для дисков под Windows XP для файловых систем FAT32 и NTFS.

В заключение рассмотрим тесты в программе Intel IOmeter. В паттернах имитации серверов и рабочей станции наиболее важным является малое время доступа, а также "серверная" оптимизация микропрограммы дисков, где ATA-модели IBM всегда выделялись на многих потоках, а Maxtor - на малом числе потоков. В обоих случаях сериальные барракуды оказались не на высоте - в нижней части диаграмм. Хотя 80-гигабайтная модель всегда смотрелать чуть получше 120-гигабайтной за счет более быстрого поиска.

Arrows-left
Arrows-right
Reload
1 / 3

IoFileServer

Зато в потоковом паттерне, имитирующем работу диска с мультимедиа-данными при одновременном чтении и записи крупными блоками, все барракуды выглядели не так уж плохо, хотя никакого влияния размера буфера не чувствовалось, и буферастые сериальные рыбки не обгоняли параллельных с буфером 2 Мбайт.

Io64kRWStreaming

Тесты в программе Intel Iometer: имитация обработки потоковых данных крупными блоками (streaming).

Таким образом, тесты Serial ATA-контроллера Silicon Image SiI3112A с соответствующими винчестерами показывают, что непосредственного преимущества в скорости при работе одиночных дисков новый интерфейс пока не дает. Если нет острой необходимости минимизировать место, занимаемое кабелями (или иные экзотические причины), то в однодисковых системах сейчас нет смысла тратить дополнительные деньги на Serial ATA. Более того, 8-мегабайтный буфер вовсе не обязательно обеспечит прирост производительности во всех приложениях, и многое зависит от тщательной оптимизации firmware дисков под наиболее эффективное использование большего кэша. Будем ждать продолжения этой истории в виде новых контроллеров и более быстрых дисков, где, возможно, ситуация с полезностью Serial ATA изменится к лучшему.