Интерфейс дисководов

398

Часто говорят, что интерфейс дисковода является узким местом в передаче данных. Например. в случае жестких дисков данные передаются из буфера жесткого диска в модуль памяти жесткого диска. А поскольку буфер жесткого диска является кеш-памятью, почему интерфейс является узким местом? Я имею в виду, кеш это тип срам. Так что скорость передачи должна быть высокой. Почему не так?

0
Согласно Википедии, скорость SATA между буфером и компьютером составляет 3 миллиарда бит в секунду. Статья продолжает: «Это по-прежнему намного выше, чем у современных дисков». 5 лет назад 1
Кроме того, многие жесткие диски (и даже твердотельные накопители!) Используют DRAM для своих больших кешей, а не SRAM. Richard the Spacecat 5 лет назад 0
Несмотря на это, зачем нужен особый интерфейс, такой как Sata, pata или scsi? почему мы не можем просто прочитать буфер в регистре процессора? 5 лет назад 0
сериал быстр и меньше проводов Tony EE rocketscientist 5 лет назад 0
Как бы вы «просто прочитали буфер в регистре процессора» без какого-либо способа на самом деле подключить буфер к процессору (через один из этих интерфейсов)? brhans 5 лет назад 0
@brhans - это не так уж и далеко ... Вопрос IDE был простым расширением шины AT, его диски практически не отличались от встроенных периферийных устройств на материнской плате - процессор мог напрямую обращаться к своим регистрам, просто обращаясь к ним. Jules 5 лет назад 0
@Jules - да, 20 лет назад, и даже тогда кэш диска не отображался в памяти в адресное пространство, которое процессор мог просто прочитать - для этого требовался DMA или потоковая передача на основе прерываний из кэша диска через интерфейс (ATA / IDE) или что угодно) и в ОЗУ процессора. brhans 5 лет назад 0
«Интерфейс жесткого диска является узким местом в передаче данных». - совершенно неправильно. Узкое место заключается либо в доступе магнитной головки к вращающимся пластинам, либо во время доступа к флэш-памяти в твердотельных накопителях Ale..chenski 5 лет назад 0

2 ответа на вопрос

0
Jules

В наши дни жесткие диски и твердотельные накопители чаще всего используют последовательное соединение, но исторически использовался интерфейс IDE. IDE был в основном упрощенной версией шины ISA, которую использовали ранние ПК. На таких компьютерах вы можете просто получить прямой доступ к регистрам устройства, как вы предлагаете. Но когда появился PCI, он был быстрее, поэтому старые диски IDE были слишком медленными для прямого доступа. Более поздние версии IDE (точнее, ATA в том виде, как он был переименован) увеличили скорость (хотя и не ширину: PCI был 32-битным, но ATA остался на 16 битах), но скорость процессора продолжала расти, и ни PCI, ни ATA не могли идти в ногу.

В конце концов мы переключились с параллельного интерфейса ATA на последовательный интерфейс. Это делает подключение к процессору менее прямым, но последовательные интерфейсы могут работать намного быстрее, поэтому они намного ближе к работе на полной скорости, но все же это создает задержку и медленнее, чем быстрая оперативная память.

Старые высокоскоростные диски ATA часто использовали память 70 или 80 нс, которая работала с такой же скоростью, что и шина. Современная память быстрее, но далеко не так быстро, как шина. Я полагаю, что современные накопители переключились с 16-разрядных процессоров, которые они использовали, на более широкие размеры шин для увеличения пропускной способности.

0
laptop2d

А поскольку буфер жесткого диска является кеш-памятью, почему интерфейс является узким местом?

Буферы добавляют задержку (больше времени на запрос), потому что содержимое буфера / кэша должно быть проверено. Так почему они у нас есть? Поскольку данные обычно линейны, поэтому при следующей проверке буфера вероятность того, что он будет в буфере, уже будет, и диск не должен быть проверен.

Другая проблема

Я имею в виду, кеш это тип срам. Так что скорость передачи должна быть высокой. Почему не так?

Если данные загружаются из буфера / кэша, то это быстро. Это происходит только в том случае, если данные уже есть. Если данные не находятся в кеше, они отправляются на диск, и это происходит медленнее. Если данные читаются непрерывно, то, скорее всего, их нет в кеше, так как кеши меньше по сравнению с диском.