какой отклик у мембранных клавиатур
Разновидности типов клавиатур. Что выбрать?
Содержание
Содержание
В наше время сложно представить работу и развлечения за компьютером без наличия клавиатуры. Экранное устройство ввода к сожалению не способно полноценно её заменить. Для того чтобы выбрать нужный девайс нужно ориентироваться в плюсах и минусах различных разновидностей клавиатур. В этой статье я постараюсь раскрыть эту тему поподробнее, дабы облегчить процесс выбора.
Мембранные
Плюсы:
Минусы:
Ножничные
Проблемы мембранных клавиатур частично решаются в ножничном типе клавиатур. В основе клавиш лежит пластиковый механизм по строению напоминающий ножницы. При нажатии кнопки механизм сокращается и происходит контакт с резиновой прокладкой, которая замыкает контакт. Благодаря ножничный механизму площадь контакта, в отличии от мембранных клавиатур, выходит равномерной. Компактная конструкция ножничного механизма сильно уменьшила толщину клавиш и их ход, что несомненно является плюсом.
Плюсы:
хорошая восприимчивость к нажатиям клавиш
долгий срок службы
Минусы:
Механические
Механический тип клавиатур является одним из самых популярных среди любителей компьютерных игр. Выделяются они тем что под каждой клавишей имеется собственная механическая кнопка-переключатель которая региструет нажатия. Конструкция состоит из основания, пружины и скобы фиксирующей движение кнопки. Уже на середине хода клавиши фиксируется нажатие, что делает механический тип клавиатур идеальным для быстрой печати.
Плюсы:
Минусы:
Проекционные
Проекционные они же лазерные клавиатуры кардинально отличаются от других типов устройств для ввода своим концептуальным принципом работы. Он состоит в том, что на плоскую поверхность при помощи инфракрасного лазера проецируется сетка с изображением символов для набора текста. При прикосновении к виртуальным клавишам лазер считывает местоположение контакта и сопоставляет с соответствующими символами. Но несмотря на их инновационность проекционные клавиатуры не пользуются популярностью у пользователей из-за своей непрактичности и большего количества случайных нажатий. Проще говоря это больше необычный гаджет чем рабочий инструмент.
Плюсы:
Минусы:
Какой тип клавиатур выбрать?
У каждого пользователя ПК свои индивидуальные предпочтения, но несмотря на это существуют общеприменимые правила, которые смогут облегчить вам выбор. Итак, если вы активный ПК геймер или работаете с большим количество текста то вам непременно стоит обратить внимание на механические клавиатуры. Ножничные устройства ввода выбирают люди ставящие комфорт и компактность на первое место. Когда важна бюджетность и долговечность, подойдут к попуке мембранные клавиатуры. Что же касается проекционного варианта, то он больше предназначен для любителей неообычных гаджетов чем для постоянной работы. Надеюсь что эта статья поможет вам облегчить выбор вашей идеальной клавиатуры.
Какой тип игровой клавиатуры выбрать в 2021 году и не ошибиться
Мир компьютерной периферии весьма обширен особенно если мы говорим о таком важном девайсе для компьютера, как клавиатура, ибо с развитием технологий, многие ранее котируемые фишки ушли в прошлое, а на замену им пришли новые. В этом материале вы узнаете все подводные камни при выборе игровой клавиатуры в 2021 г. и почему новое это не всегда лучшее.
Внимание!
Мнение автора не является истиной в последней инстанции и может быть ошибочным в некоторых аспектах, потому как автор тоже человек. Прислушивайтесь, но и думайте своей головой!
Содержание
Прежде чем начать
Прежде чем переходить к существующим типам игровых клавиатур, необходимо затронуть особенности подключения их к компьютеру, потому как на рынке всё ещё существуют не только клавиатуры, оснащённые универсальным USB-коннектором, но и призраки прошлого со стандартом PS/2.
Правда, если вы спросите у увлечённого геймера — «какой тип лучше?», то в лучшем случае он засмеётся при упоминании PS/2, а в худшем назовёт вас динозавром, потому как многие считают, что PS/2-клавиатура хуже, чем USB, ибо является устаревшей. Но так ли это на самом деле? Давайте разбираться.
Как работают PS/2-клавиатуры
При подключении устройства в порт PS/2 не требуются драйверы, потому как данные порты изначально созданы только для мыши и клавиатуры, что позволяет системе ещё на раннем этапе инициализации видеть наше устройство и не отваливаться в BIOS. Мы получаем устройство с высшим приоритетом исполнения, которое в отличие от USB-клавиатур не стоит в очереди приоритетов на выполнение и не грузит наш процессор опросами, а заставляет процессор сразу обработать наш сигнал ввода. То есть мы не вынуждены ждать, пока процессор спросит, а сами на прямую говорим процессору бросить всё и обработать наш ввод. Такие особенности позволяют не только добиться минимальных задержек ввода, но и выполнить сколько угодно одновременных нажатий клавиш, что для большинства USB-клавиатур всё ещё весьма затруднительно.
Как работают USB-клавиатуры
В работе с USB-клавиатурами балом правит универсальная последовательная шина, которая создана для подключения любых устройств. Подключая USB-клавиатуру, мы получаем устройство, которое вынужденно находиться в очереди приоритетов исполнения и постоянно опрашиваться процессором на вопрос, что оно делает. То есть при подключении USB-устройства наш процессор получает дополнительную нагрузку в виде постоянно опроса, что в совокупности с множеством системных приоритетов может выставить наш ввод в самый низ иерархии исполнения и тем самым ухудшить отзывчивость, вне зависимости от мощности CPU или дороговизны устройства.
Так почему же, несмотря на все навороченные плюсы для геймеров в плане задержек, большинство устройств оснащается медленным и проблемным USB-коннектором? Чтобы разобраться в этом вопросе и нужно затронуть все актуальные типы игровых клавиатур на рынке.
Мембранная клавиатура
С уверенностью можно назвать классикой современного мира, потому как мембранные клавиатуры весьма распространены и, приобретая клавиатуру с бюджетом до 2 тыс. рублей, вы с высокой вероятностью наткнётесь на мембранную клавиатуру. Работают такие клавиатуры по принципу полного нажатия, где требуется пройти определённый путь для индексирования ввода, так как контактная плата расположенная под силиконовой прокладкой и является конечным триггером для понимания ввода.
Нажимая клавишу, мы замыкаем контакты для гарантированного срабатывания, что может быть весьма утомительно при длительной печати, а у игроков вызывать дополнительные задержки из-за времени хода само́й клавиши. Про долговечность же такого изделия и говорить не стоит, ибо из-за конструктивных особенностей, мембаранки имеют весьма низкий запас нажатий в 1 миллион (в редких случаях — 10 миллионов). Также достаточно быстро твердеет силиконовая подложка, что в конечном счёте тоже влияет на задержки. Ну, и наконец, опрокинув случайно на мембранную клавиатуру стакан воды, вы с вероятностью в 100% получите кирпич. Всё дело в контактной сетке — единый элемент системы и если повредить хотя бы небольшую часть единой системы, то накроется вся клавиатура.
Но почему же тогда некоторые люди продолжают покупать мембранные клавиатуры? Как было сказано ранее, они весьма дешёвые и если убрать желание сэкономить USB-порт, то это неплохой вариант получить игровое устройство за малые деньги, где коннектор PS/2 может дать жару бюджетным usb-клавиатурам не справляющимися с высокочастотным режимом опроса.
Это всё, что нужно знать перед покупкой и использованием мембранной клавиатуры. Конечно, существуют механическо-мембранные клавиатуры и мембранки с укороченной длинной хода, но такие клавиатуры не сильно распространены и обычно стоят как начальная механика
Механические клавиатуры
Самые известный тип клавиатур среди киберспортсменов и увлечённых геймеров.
Отличаются механические клавиатуры более сложным и качественным устройством ввода, где вместо общей силиконовой подкладки у каждой клавиши имеется собственный переключающий механизм, который не требует полного нажима, что и позволяет добиваться существенного сокращения времени на ввод по сравнению с мембранными клавиатурами.
Также сто́ит отметить, что такой тип клавиатур сильно зависит от модели свичей (стержня), который присутствует в клавиатуре и является главным определяющем фактором не только долговечности или удобства, а всей функциональности клавиатуры. В общем, не хочется вдаваться в подробности свичей, ибо просто знайте, что не сто́ит покупать самые бюджетные модели механики, так как они выполнены на свичах не лучшего качества. Самые лучшие свичи для геймера это MX Red и MX Speed, а также их бюджетные копии Kailh.
Из плюсов механических клавиатур сто́ит ещё отметить надёжную защиту от влаги, большой запас долговечности в 50 миллионов нажатий (правда, как по мне, то всё это бред, ибо сложная конструкция и упор на подвижный объект) и возможность горячей замены поломанного свича, что и вправду выгодно отличает механику от классической мембранки.
Оптико-механические клавиатуры
Тёмная лошадка в мире девайсов, так как применяется совершенно новый принцип работы индексирования ввода, если механические клавиатуры построены по классическому принципу «мембранки», то оптико-механические клавиатуры — это новый тип реализации с совершенно другим принципом обеспечения работы ввода.
На печатной плате переключателя установлен специальный сенсор, который не только считывает само нажатие, но учитывает ещё и силу нажатия. Для подачи сигнала на переключатель, вместо физического триггера, используется световой луч. Таким образом, при нажатии на клавишу, луч света проходит через переключатель и посылает сигнал на специальный сенсор в печатной плате переключателя, что обеспечивает ещё более быстрый ввод и сохранность, даже если сравнивать с самыми дорогими механическими клавиатурами.
С технической стороны надёжность таких клавиатур составляет более 100 миллионов нажатий и требует ещё меньше усилий для срабатывания чем у механики (45 грамм), а также имеют очень низкую задержку ввода от 0,03 до 0.2 мс в зависимости от производителя.
Оптико-механические клавиатуры взяли лучшие наработки у механических собратьев и способны обеспечивать мягкую тактильную отдачу (щелчок), защиту от влаги, сменяемость свичей и другие фишки. По итогу, такие клавиатуры лучше и совершеннее, чем «чистая» механика, а их принцип работы и преимущества над механическими, выводят игровые клавиатуры на новый уровень. Конечно, задержка ввода от 0,03 до 0.2 мс это маркетинг, а реально мы упрёмся в частоту опроса USB, но и такой результат ставит крест на будущем механики. Разница в скоростях сносит крышу и вне зависимости от типа коннектора, всегда будет нивелирована со стороны совершенства системы ввода, доказательством чего сейчас и являются оптико-механические клавиатуры.
К сожалению, как и в случае с механически-мембранными клавиатурами, оптико-механические распространены не так сильно на рынке, но такие преимущества не могут долго оставаться в тени и, возможно, скоро мы увидим настоящий ажиотаж, какой был у геймеров при переходе с HHD на SSD носители.
Схема выбора клавиатуры
Заключение
Конечно, существует множество иных типов клавиатур, но целью этого материала была идея донести, что при выборе клавиатуры не сто́ит ориентироваться только на цену или привычный бренд, а всё же сто́ит уделить частичку своего времени и залезть под капот. Современные клавиатуры — это давно не обычная печатная плата с кнопками, а продуманный высокотехнологичный девайс, от которого будет зависеть не только сможете ли вы набирать текст, но и комфорт работы за PC в целом.
Видеоверсия
Сравнение отклика клавиатур
Несмотря на все эти заявления, я нашёл только одного человека, который публично протестировал время отклика клавиатуры — и он проверил только две клавиатуры. Вообще, по моему глубокому убеждению, если кто-то делает заявления о производительности без бенчмарков, то вероятно эти заявления не являются правдой, как непротестированный (или иным образом проверенный) программный код следует по умолчанию считать нерабочим.
Ситуация с игровыми клавиатурами во многом напоминает разговор с продавцом машин:
Продавец: Эта машина супербезопасна! У неё двенадцать подушек безопасности!
Я: Это хорошо, но как она выглядит в краш-тестах?
Продавец: Двенадцать подушек безопасности!
Конечно, у игровых клавиатур частота опроса 1000 Гц, и что из этого?
Возникает два очевидных вопроса:
Какое значение имеет отклик клавиатуры?
Если бы вы спросили год назад, собираюсь ли я соорудить специальную установку для измерения отклика клавиатур, я бы ответил, что это глупо — и вот теперь я сижу с логическим анализатором и измеряю отклик клавиатур.
Всё это началось, потому что меня не покидало ощущение, что старые компьютеры как будто быстрее реагируют на нажатия клавиш, чем современные машины. Например, iMac G4 под macOS 9 или Apple 2 кажутся быстрее, чем моя система Kaby Lake на 4,2 ГГц. Я никогда не доверял подобным ощущениям, потому что десятилетия исследований показали, что у пользователей часто возникают ощущения, прямо противоположные реальности, так что я взял высокоскоростную камеру — и начал измерять реальную задержку между нажатием клавиши и появлением символа на экране, а также задержку в скорости реагирования курсора на движение мышкой. Как выяснилось, казавшиеся быстрыми старые компьютеры действительно оказались быстрыми, намного быстрее моего современного компьютера — у компьютеров 70-х и 80-х годов задержка между нажатием клавиши и появлением символа на экране часто находится в пределах от 30 до 50 мс без каких-либо модификаций, в то время как у современных компьютеров она часто в диапазоне от 100 до 200 мс при нажатии кнопки в консоли. Можно снизить отклик до 50 мс в хорошо оптимизированных играх с вычурной игровой конфигурацией, и есть одно необыкновенное потребительское устройство, которое легко бьёт результат 5 мкс, но у большинства других работа гораздо медленнее. У современных компьютеров сильно увеличилась пропускная способность, но время отклика выглядит не так прекрасно.
В любом случае, во время измерений у моего Kaby Lake на 4,2 ГГц была самая высокая однопоточная производительность среди всех компьютеров, которые можно купить, но время отклика хуже, чем у быстрой машины 70-х годов (примерно в 6 раз медленнее, чем Apple 2), что немного странно. Чтобы выяснить, где возникает задержка, я начал измерять время отклика клавиатуры, потому что это первая часть конвейера ввода-вывода. Я планировал оценить задержки от начала и до конца, начав с первого звена и исключив клавиатуру как реальный источник задержки. Но оказалось, что у клавиатур очень значительная задержка! Я был очень удивлён, что средняя по медиане задержка у протестированных клавиатур превышает время отклика всего конвейера Apple 2. Если вы сразу не понимаете глубину этого абсурда, учтите, что в процессоре Apple 2 всего 3500 транзисторов на частоте 1 МГц, а по оценке Atmel в современных топовых клавиатурах около 80 тыс. транзисторов на 16 МГц. Это в 20 раз больше транзисторов, которые работают на 16-кратной тактовой частоте — клавиатуры сегодня более мощные, чем сами компьютеры 70-х и 80-х годов! И всё равно средняя медианная клавиатура сегодня добавляет такую же задержку, как весь конвейер ввода-вывода, вплоть до дисплея, на быстрой машине 70-х.
Посмотрим на характеристики времени отклика некоторых клавиатур:
Клавиатура | Отклик (мс) | Интерфейс | Игровая |
---|---|---|---|
Apple Magic (USB) | 15 | USB FS | |
HHKB Lite 2 | 20 | USB FS | |
MS Natural 4000 | 20 | USB | |
Das 3 | 25 | USB | |
Logitech K120 | 30 | USB | |
Unicomp Model M | 30 | USB FS | |
Pok3r Vortex | 30 | USB FS | |
Filco Majestouch | 30 | USB | |
Dell OEM | 30 | USB | |
Powerspec OEM | 30 | USB | |
Kinesis Freestyle 2 | 30 | USB FS | |
Chinfai Silicone | 35 | USB FS | |
Razer Ornata Chroma | 35 | USB FS | Да |
OLKB Planck rev 4 | 40 | USB FS | |
Ergodox | 40 | USB FS | |
MS Comfort 5000 | 40 | беспроводная | |
Easterntimes i500 | 50 | USB FS | Да |
Kinesis Advantage | 50 | USB FS | |
Genius Luxemate i200 | 55 | USB | |
Topre Type Heaven | 55 | USB FS | |
Logitech K360 | 60 | “унифицированный” |
Время отклика — это время от начала перемещения нажимаемой клавиши до поступления соответствующего USB-пакета в шину USB. Числа округлены до 5 мс, чтобы избежать ложного ощущения точности. Модель Easterntimes i500 также продаётся под названием Tomoko MMC023.
В колонке «Интерфейс» указан тип соединения: USB FS соответствует протоколу USB Full-Speed, который поддерживает опрос до 1000 Гц — эта функция часто рекламируется в топовых клавиатурах. USB соответствует протоколу USB Low-Speed, который используется в большинстве клавиатур. Колонка «Игровая» указывает на то, позиционируется ли данная модель как игровая клавиатура. «Беспроводная» означает наличие какого-либо специального приёмника, а «унифицированный» — это беспроводной стандарт Logitech.
Как можно убедиться, даже на таком ограниченном наборе клавиатур разница во времени отклика составляет 45 мс. Таким образом, современный компьютер с одной из самых медленных клавиатур никак не может настолько же быстро реагировать на нажатия клавиш, как быстрая машина 70-80-х годов, потому что одна только клавиатура медленнее, чем весь конвейер ввода-вывода на тех старых компьютерах.
Так мы установили факт, что современные клавиатуры являются значимым фактором в увеличении задержки, которая произошла за последние 40 лет. Другой вопрос — действительно ли задержка современной клавиатуры значима для пользователей? Из таблицы мы видим разницу в задержке около 40 мс. Заметна ли такая разница? Давайте сравним время отклика клавиатуры и изучим некоторые эмпирические исследования по восприятию человеком.
Есть существенное количество исследований, которые говорят о том, что на очень простых задачах люди способны воспринимать задержку в 2 мс и меньше. Более того, увеличение задержки не только заметно пользователям, но и является причиной менее точного выполнения простых задач. Если хотите наглядной демонстрации, как выглядит задержка, а у вас нет старого компьютера под рукой, вот демо MSR по задержке тачскрина.
Действительно ли игровые клавиатуры быстрее обычных?
Я действительно хотел бы протестировать больше клавиатур, прежде чем делать смелые заявления, но из предварительных тестов выходит, что игровые клавиатуры ничуть не быстрее обычных клавиатур.
Для игровых клавиатур часто рекламируются функции, которые снижают время отклика, вроде подключения по USB FS и опроса 1000 Гц. Спецификации USB Low-Speed устанавливают минимальное время между пакетами 10 мс, то есть 100 Гц. Однако USB-устройства часто округляют это значение до ближайшей степени двойки и работают на 8 мс, то есть 125 Гц. С промежутком 8 мс между пакетами средняя задержка из-за необходимости ожидать следующего раунда опроса составляет 4 мс. С интервалом опроса 1 мс средняя задержка от USB-опроса составляет 0,5 мс, что даёт нам разницу в 3,5 мс. Хотя это может быть заметным увеличением задержки для быстрых клавиатур вроде Apple Magic, но ясно, что время отклика клавиатуры больше зависит от других факторов, а игровые клавиатуры из нашего теста настолько медленные, что их не спасает экономия 3,5 мс.
Заключение
Большинство клавиатур добавляют задержку, достаточно заметную, чтобы ухудшить впечатления пользователя от работы за компьютером, а рекламируемые как «быстрые» клавиатуры не обязательно быстрее остальных. Две протестированные нами игровые клавиатуры оказались не быстрее других, а самая быстрая клавиатура в тесте — минималистическая клавиатура Apple, которая рекламируется больше как образец дизайна, а не скорости.
Ранее мы видели, что консоли добавляют значительную задержку до 100 мс в относительно пессимистических условиях, если вы выбрали «правильный» терминал. В следующей статье показано время отклика всего конвейера от начала до конца — там рассказывается, какие ещё источники задержки вносят свою лепту и как некоторые современные устройства ускоряют общее время отклика.
Приложение: откуда берётся задержка
Основной источник задержки — время перемещения клавиши. Неслучайно у самых быстрых клавиатур в тесте гораздо меньше ход клавиш. Измерения производились на камеру 240 FPS, с промежутком между кадрами 4 мс. При съёмке «нормальных» нажатий клавиши и печати полное отжатие занимает 4-8 кадров. Большинство переключателей срабатывает до того, как клавиша вернулась в исходное положение, но всё равно длина хода клавиши имеет значение и может легко добавить 10 дополнительных миллисекунд задержки (или больше, в зависимости от механизма переключателей). Сравните это с клавиатурой Apple Magic, где ход клавиш настолько мал, что вообще не регистрируется камерой 240 FPS, то есть занимает менее 4 мс.
Обратите внимание, что в отличие от других измерений, которые мне удалось найти в интернете, здесь замеряется время от начала нажатия клавиши, а не от активации переключателя. Потому что как человек вы не активируете переключатель, вы нажимаете клавишу. Если начинать измерения с активации переключателя, то теряется большая часть задержки. Например, если вы играете в игру и переключаетесь между движением вперёд и назад, то чтобы изменить движение на экране, нужно потратить время на нажатие клавиши, которое отличается на разных клавиатурах. Здесь часто возражают, что «реальные» геймеры держат клавиши в полунажатом состоянии и не тратят столько времени на нажатия. Но если вы возьмёте высокоскоростную камеру и снимете, как в реальности люди работают на клавиатуре, то увидите, что такой приём практически никто не применяет даже среди геймеров. Возможно, профессиональные топовые геймеры и применяют его, но даже в этом случае при использовании стандартной раскладки WASD или ESDF клавиши «вперёд» и «назад» обычно не будут в полунажатом состоянии. Также абсурдна сама идея, что значительная задержка на бесполезный ход клавиши — это нормально, потому что вы можете держать клавишу в полунажатом состоянии. Это как говорить, что большое время отклика на современных компьютерах — это нормально, потому что вы можете собрать игровую конфигурацию, которая в исключительно оптимизированных программах показывает время отклика 50 мс. Обычные, не хардкорные геймеры просто не заморачиваются этим. Поскольку они составляют абсолютное большинство, то поведение «серьёзных» геймеров можно принять за статистическую ошибку.
Другой важный источник задержки — сканирование матрицы клавиатуры и задержка на устранение ложных повторных нажатий. Ни одна из этих задержек не является обязательной — в клавиатуры устанавливается матрица вместо подключения каждой клавиши по отдельности, потому что это экономит пару долларов, а большинство клавиатур сканирует матрицу так медленно, что задержка становится заметна пользователю, с целью сэкономить ещё пару долларов. Но производители готовы немного повысить себестоимость ради того, чтобы снизить задержку до уровня гораздо ниже порога человеческого восприятия. См. ниже о задержке на повторное нажатие.
Хотя мы здесь не обсуждали вопросы производительности, при измерении своей скорости набора я заметил, что она выше на клавиатуре Apple с низким ходом клавиш, чем на любой другой. Здесь невозможно провести слепой эксперимент, но Гэри Бернхардт и другие подтверждают эти выводы. Некоторые говорят, что ход клавиш не влияет на скорость набора, потому что они используют минимально возможный ход, так что это не имеет значения. Но как и в случае с преднажатыми клавишами, если походить и поснимать высокоскоростной камерой, как в реальности люди набирают текст, трудно найти кого-нибудь, кто в реальности так делает.
Приложение: контраргументы против того, что задержка имеет значение
Перед написанием этой статьи я прочитал все материалы о времени отклика, какие смог найти — и трудно было встретить статью, где в комментариях отсутствовал хотя бы один аргумент из перечисленных ниже:
Компьютеры и устройства быстры
Основной контраргумент против измерения времени отклика состоит в том, что задержка на ввод практически нулевая, так что её можно не учитывать. Например, два топовых комментария к этой записи на Slashdot. Один из них даже говорит:
Ни у одной современной клавиатуры нет задержки 50 мс. Это у вас (людей) такая задержка.
Что касается времени отклика, то нужно всего лишь увеличить скорость опроса в USB-стеке.
Как мы видели, некоторые устройства всё-таки вписываются во время отклика 50 мс. Эта цитата, как и другие комментарии в той ветке, служит иллюстрацией другого распространённого заблуждения — что время отклика устройств ввода ограничено скоростью опроса USB. Хотя технически такое возможно, но сейчас большинство устройств даже близко не приблизились к такой скорости, чтобы ограничением стала задержка опроса USB.
Люди не различают задержку в 100 или 200 мс
Вот «когнитивный нейробиолог, который изучает зрительное восприятие и когнитивные способности». Он ссылается на факт, что скорость реакции у человека составляет 200 мс, и говорит кучу научной чепухи в доказательство того, что никто не способен заметить задержку менее 100 мс. Здесь немного необычно, что комментатор заявляет о своей особой авторитетности и обильно использует научную терминологию, но вообще часто люди заявляют, что задержку в 50 или 100 мс невозможно заметить, потому что скорость реакции человека 200 мс. Такой аргумент не имеет смысла, потому что это независимые величины. Это как сказать, что вы не заметили опоздания самолёта на час, потому что время полёта составляет шесть часов.
Другая проблема с такого рода аргументацией заключается в следующем. Если её принять, то ничего не мешает вам добавить по 10 мс задержки на каждом этапе конвейера ввода-вывода — в итоге общее время сильно раздуется и мы получим ситуацию как сейчас, когда вы покупаете компьютер с самым быстрым процессором на рынке, а время отклика у него в шесть раз хуже, чем у машины 70-х годов.
Это неважно, потому что игра обновляется на 60 FPS
Фундаментально это такое же заблуждение, как и предыдущее. Если у вас задержка в половину такта, то с вероятностью 50% она перенесёт событие на следующий шаг обработки. Это лучше, чем вероятность 100%, но мне непонятно, почему люди думают, что задержка должна быть настолько же большой, как частота обновления экрана, чтобы она имела значение. И для справки, дельта в 45 мс между самой медленной и самой быстрой из измеренных нами клавиатур соответствует 2,7 кадрам на 60 FPS.
Клавиатуры не могут быть быстрее 5/10/20 мс из-за устранения ложных повторных нажатий
Даже без усилий по оптимизации механизма переключателей, если вам нужно добавить в систему задержку, нет никакой причины, почему клавиатура не может засчитывать нажатие (или высвобождение) клавиши в момент контакта. Так повсеместно делается в других типах систем и, насколько я могу сказать, клавиатурам никто не мешает поступать аналогичным образом (и надеюсь, какие-то из них так поступают). Время на устранение ложных повторных нажатий может ограничить скорость повторного ввода символа, но нет обязательной причины, почему оно должно влиять на время отклика. И если взять скорость повторного ввода символа, то представим ограничение в 5 мс на время изменения состояния клавиши из-за введения задержки. Это означает, что полный цикл (нажатие и освобождение) занимает 10 мс, то есть 100 нажатий клавиши в секунду, что намного превышает возможности любого человека. Вы можете возразить, что так появляется определённая неточность, которая может негативно повлиять на некоторые приложения (музыка, игры с ритмом), но она ограничивается механизмом переключателя. Использование механизма устранения ложных повторных нажатий с запаздыванием не делает ситуацию хуже, чем она была раньше.
Дополнительная проблема с задержкой на устранение ложных повторных нажатий заключается в том, что большинство производителей клавиатур как будто путают скорость опроса и задержку на устранение ложных повторных нажатий. Часто можно встретить клавиатуры с частотой опроса от 100 до 200 Гц. Это оправдывается заявлениями вроде «Нет причин увеличивать скорость опроса, потому что задержка на устранение ложных повторных нажатий составляет 5 мс» — здесь совмещаются оба заблуждения, описанные выше. Если вы вытащите схемы из клавиатуры Apple 2e, то увидите, что там частота опроса примерно 50 кГц. Задержка на устранение ложных повторных нажатий составляет примерно 6 мс, что соответствует частоте 167 Гц. Зачем же опрашивать клавиатуру так часто? Благодаря быстрому сканированию контроллер клавиатуры немедленно начинает отсчёт времени на задержку для устранения ложных повторных нажатий (максимум через 20 микросекунд), в отличие от современных клавиатур, которые опрашиваются на 167 Гц. Из-за этого отсчёт времени на повторное срабатывание может начаться через 6 мс, то есть пауза занимает в 300 раз больше времени.
Прошу прощения за отсутствие разъяснений по терминологии, но я думаю, что каждый, кто приводит такой аргумент, должен понять и объяснение :-).
Приложение: экспериментальная установка
Измерения USB проводились на кабеле USB. Вскрытие кабеля нарушает целостность сигнала, и я обнаружил, что с длинным кабелем некоторые клавиатуры со слабым сигналом не обеспечивают достаточный уровень для регистрации моим дешёвым логическим анализатором.
Начало измерения инициировалось одновременным нажатием двух клавиш — одной на клавиатуре, а второй подключённой к логическому анализатору. Здесь появляется определённая погрешность, потому что невозможно нажать две клавиши абсолютно одновременно. Для калибрации установки мы использовали две одинаковые клавиши, подключённые к логическому анализатору. Средняя по медиане погрешность составила менее 1 мс, а 90% погрешностей вписываются в пределы 5 мс. Для действительно быстрых клавиатур погрешности такого размера делают невозможными измерения на этой установке, но в нашем случае измерения средней задержки можно считать приемлемыми. Вероятно, погрешность при одновременном нажатии кнопок можно уменьшить на ничтожно малую величину, если сконструировать устройство, которое будет одновременно нажимать кнопку и включать логический анализатор. С такой установкой улучшится и точность измерения средних значений (потому что проще будет проводить большое количество тестов).
Если хотите знать точную конфигурацию установки, то использовался переключатель E-switch LL1105AF065Q. Питание и заземление обеспечивается платой Arduino. Нет определённой причины использовать конкретно такую конфигурацию. На самом деле немного абсурдно использовать целую Arduino для питания, но мы всё сделали из подручных запчастей, а именно эти детали оказались в лаборатории нашего коворкинг-центра, за исключением переключателей. Не нашлось двух одинаковых экземпляров хоть какого-то переключателя, так что нам пришлось купить несколько для калибровки на одинаковом оборудовании. Конкретная модель здесь не имеет значения; подойдёт любой переключатель с низким омическим сопротивлением.
Во время тестов нажималась клавиша z — проверялся байт 29 в шине USB, а затем регистрировалось время первого пакета с соответствующей информацией. Но как и в вышеупомянутой ситуации, подойдёт любая клавиша.
В реальности я не очень доверяю такой конфигурации и для тестирования большого количества клавиатур хотел бы построить полностью автоматическую установку. Хотя наши результаты соответствуют результатам одного другого теста, который удалось найти в интернете, у такой установки погрешность, вероятно, находится в диапазоне от 1 до 10 мс. Хотя усреднение результатов многочисленных прогонов теста теоретически уменьшает погрешность, но поскольку измерения проводятся человеком, то необязательно и даже маловероятно, что ошибки будут независимы и исчезнут после усреднения.
Я пытаюсь найти больше моделей телефонов и компьютеров для проведения измерений и был бы рад провести быстрое тестирование на вашей системе или устройстве, если её/его нет в списке! Если вы живёте далеко и хотите пожертвовать устройство для тестов, можете высылать на мой адрес:
Dan Luu
Recurse Center
455 Broadway, 2nd Floor
New York, NY 10013