PS/2 против USB-клавиатур: производительность и энергопотребление
Насколько я знаю, клавиатуры PS/2 управляются прерываниями, а USB опрашиваются. Обычно клавиатуре PS/2 назначается IRQ_1 в Windows.
Я не специалист по аппаратному обеспечению, но на первый взгляд кажется, что клавиатура PS/2 более эффективна. Итак, вот мои вопросы:
- На современных компьютерах клавиатура PS/2 лучше (или быстрее), и если да, то будет ли это заметно? (например: в играх)
- Поскольку клавиатура PS/2 не требует опроса, экономит ли она энергию по сравнению с USB? (обратите внимание, я говорю не только о периферийных устройствах здесь, но об общем энергопотреблении компьютера).
- Если бы у PS/2 было какое-либо преимущество перед USB, добавит ли адаптер PS/2 к моей клавиатуре USB устройство так же хорошо, как настоящая клавиатура PS/2? И наоборот, добавление USB-адаптера к PS/2 сделает его таким же плохим, как USB-КБ?
Заранее спасибо.
Изменить: я объясню # 2:
USB нуждается в активном опросе. Поэтому ЦП должен выделять некоторые циклы для сканирования нажатий клавиш, а это означает, что число циклов, доступных для других задач, меньше. Это может привести к увеличению частоты процессора, следовательно, потребление энергии будет выше. Интересный случай. Допустим, мы поставили два одинаковых компьютера бок о бок, один с клавиатурой PS/2, а другой с USB-клавиатурой той же модели, и мы держим их включенными в течение целого дня. Если мы нажмем только одну клавишу в течение дня, то количество процессорного времени, необходимое для клавиатуры PS/2, будет намного меньше, чем у USB-аналога. Таким образом, в процессоре с экстремальным динамическим масштабированием частоты USB-КБ потребовалось бы больше энергии в целом. Кроме того, протокол USB должен управлять несколькими устройствами, я полагаю, что это управление делает вычислительную обработку нажатия клавиши USB в вычислительном отношении более дорогой, чем выделенный IRQ для клавиатур PS/2. Это те соображения, о которых я спрашивал в #2, принимая во внимание ПК в целом, а не только то, сколько КБ высасывает из входа 5В.
редактировать
Похоже, что опрос только до USB 2.0, и, согласно Википедии, USB 3.0 избавляется от опроса:
улучшенное использование шины - добавлена новая функция (с использованием пакетов NRDY и ERDY), позволяющая устройству асинхронно уведомлять хост о своей готовности (нет необходимости опроса)
(На сегодняшний день клавиатуры USB 3.0 встречаются редко. Я знаю только о гигабайтах КБ, представленных в этом году на Computex, и я сомневаюсь, что он использует USB 3.0 для избавления от опроса, но вместо этого предоставляет концентратор USB 3.0 прямо на клавиатуре).
Я также пытаюсь найти достоверные данные о том, какова скорость опроса для USB-КБ. Некоторые люди говорят 125 Гц, и есть некоторые настройки до 1 кГц. Для сравнения, консоли вроде PS3 опрашивают при 100 Гц, а XBox - при 125 Гц. Даже если бы использовалась частота 1 кГц, она кажется незначительной на процессоре с тактовой частотой ГГц (0,000001 % тактов процессора в секунду). Эти цифры приводят к другому вопросу: как лучше (если таковые имеются) для PS/2 КБ генерировать 1k прерываний в секунду?
2 ответа
Время отклика PS/2 против USB-клавиатур:
Есть ряд интересных результатов, но вопрос, относящийся к этому вопросу, заключается в том, что между клавиатурами было довольно значительное различие, и все протестированные USB-клавиатуры имели более длительный эффективный интервал сканирования (18,77 мс - 32,75 мс), чем PS/2. клавиатуры (2,83 мс - 10,88 мс).
Более подробная информация о самой теме Superuser: быстрее ли реагируют клавиатуры USB или PS/2?
Энергопотребление между двумя устройствами и общее энергопотребление: ( ссылка на HP Doc)
USB
Рабочее напряжение: + 5 В постоянного тока ± 5%
Потребляемая мощность: максимум 50 мА (при трех включенных светодиодах)PS/2,
Рабочее напряжение: + 5 В постоянного тока ± 5%
Потребляемая мощность: максимум 50 мА (при трех включенных светодиодах)
Мой взгляд на это:
Таким образом, максимально возможное энергопотребление составит + 5 В, и материнская плата должна была учитывать эту мощность для порта PS/2 независимо от его фактического потребления. И мы знаем, что USB дает нам + 5 В на выходе. Фактическая потребляемая мощность немного варьируется от бренда к бренду. Некоторые говорят, что он потребляет 50 мА, некоторые говорят, что это 70 мА с крышей 100 мА. Ничто из того, что я читал до сих пор, не говорит и не показывает фактического потребления более 100 мА. Фактически, окна также сообщают о фактической потребляемой мощности 70 мА. Но мой Macbook показывает требование 100 мА на USB. Таким образом, фактическое энергопотребление клавиатуры USB может быть немного выше, чем у клавиатуры PS/2. Прикрепив пару картинок ниже.
На винде
На MacBook
Объяснение обновленного вопроса в #2:
Ну, есть только 1 контроллер USB, но каждый порт USB имеет индивидуальный интерфейс. Таким образом, протокол делает устройство эксклюзивным для каждого порта.
Таким образом, каждое USB-устройство, подключенное к порту, имеет индивидуальный интерфейс. Поэтому, когда устройство подключено к порту, порт сообщает нам, какое устройство подключено. Так что это похоже на выделенный порт на устройство, а контроллер имеет возможности шины для одновременной отправки нескольких запросов процессору.
Так что, на мой взгляд, количество энергии / процессорного времени, затрачиваемое клавиатурой PS/2 или USB, будет одинаковым. И если бы клавиатура USB была слишком тяжелой для обработки и питания, люди бы не использовали их взаимозаменяемо. И мы бы также прочитали о них больше технических статей!
Мой личный аргумент по этому поводу: Apple просто дает вам USB-порты на Mac Minis и iMac, так что Apple сделает это, если это будет настолько мощным и интенсивным процессом? Даже на большинстве новых компьютеров Dell нет портов PS/2. (Оставьте все собранное и нестандартное оборудование в стороне)
- Это личное мнение, но я бы не ожидал заметной разницы. Это было бы в большей степени зависеть от конструкции / качества аппаратного обеспечения клавиатуры (например, от того, насколько быстро она обрабатывает нажатия клавиш, как быстро она реагирует на нажатие клавиши и т. Д.). Прерывание остановит другие обрабатываемые объекты, но программы или игры все равно должны будут сначала отреагировать на него. Это не так, как вся логика игры находится в обработчике прерываний.
- Я не имею в виду спецификацию PS / 2, но учитывая, что USB обычно составляет что-то вроде 5 В 500 мА, что приводит к 2,5 Вт. Теперь рассмотрим процессоры и графические процессоры, которые могут (особенно на игровом ПК) потребовать больше чем 250 Вт, это ОЧЕНЬ пренебрежимо.
- Точно нет! Даже если есть преимущество, вы добавляете еще один шаг / этап, который убил бы все преимущество, связав обе технологии одну за другой. Давайте предположим, что время реакции USB будет 0,1 секунды, а время реакции PS / 2 будет 0,05 секунды. С адаптером вы, скорее всего, будете где-то около 0,15 секунды или даже выше.
Изменить после редактирования:
Я предполагаю, что вы хотели бы улучшить время реакции или что-то еще. Если ваш вопрос действительно только теоретический, игнорируйте это. Если вы хотите "оптимизировать" свои игровые возможности, просто возьмите USB-клавиатуру, созданную для игр. Они обычно предлагают более последовательное поведение нажатия клавиш и могут иметь другие функции (например, определение того, насколько глубоко или долго вы нажимаете, а не просто нажимаете / не нажимаете). Я бы даже не стал беспокоиться о PS / 2, особенно из-за того, насколько ограничены порты PS / 2 на современном оборудовании. Вы, вероятно, не хотите выиграть несколько миллисекунд при обработке ввода, теряя при этом больше времени из-за меньшей пропускной способности памяти или по другим причинам.
Кроме того, следует учитывать и другие особенности игр: типичная частота обновления на современных настольных ПК составляет 60 Гц. Это означает, что 60 кадров в секунду или ок. 16,67 мс на кадр. Это приводит к тому, что даже если вы опрашиваете 1000 раз в секунду, вы не заметите никакой реакции быстрее (по сравнению, скажем, со 100 раз в секунду). Конечно, вычисления могут быть быстрее (например, имитировать игровой мир со скоростью 100, 500 или даже 1000 кадров в секунду), но я все равно скажу, что вы не заметите никакой реальной разницы вообще.