打破延迟极限的 FPGA 机械键盘

在机械键盘爱好者和硬件开发者的世界里,追求极致性能的设计总是令人兴奋。今天,我们要介绍的是一款由 Portland.HODL 开发的开源项目------Nyan Keys,这是一款基于 FPGA 的机械键盘,旨在实现尽可能低的输入延迟。

项目背景与目标

Nyan Keys 的设计目标是构建一款具有超低输入延迟的机械键盘,兼容 Cherry MX 及其兼容轴体(如 Kailh 和 Gateron)。该项目的灵感来源于 Wooting 60HE 和 Pok3r 60% 键盘,结合了前者的高性能特性和后者的开源可定制性。

技术实现

1. FPGA 实现每键独立处理

Nyan Keys 使用 Lattice iCE40HX4K FPGA,为每个按键分配一个独立的处理核心。每个核心包含一个 8 位计数器,用于实现去抖动逻辑。当计数器达到预设值时,按键状态才会改变,从而有效防止按键抖动带来的误触发。

这种设计允许每个按键直接连接到 FPGA 的独立 IO 引脚,省去了传统键盘矩阵设计中所需的二极管等元件,简化了硬件结构。

2. 高速 USB 通信

为了实现高速数据传输,Nyan Keys 采用 STM32F723 微控制器,支持 USB 2.0 High Speed(480Mbps)通信。通过设置 USB 的 bInterval 为 1,实现了 8000Hz 的轮询率,即每 0.125 毫秒进行一次数据传输。

在最坏情况下,从按键按下到数据传输完成的总延迟约为 155 微秒,远低于传统 USB 2.0 Full Speed 键盘的 1 毫秒延迟。

3. 开源硬件与软件

Nyan Keys 的硬件设计和固件均已开源,采用 Apache 2.0 许可证。项目包括 FPGA 比特流、STM32 固件、Web 配置工具等,方便开发者进行定制和扩展。

设计文件

  • 硬件设计文件

https://github.com/russeree/nyan-keys-hardware

  • FGPA比特流

https://github.com/russeree/nyan-keys-ice40hx4k-bitstream

  • Nyan 操作系统 (NOS) - STM32 固件

https://github.com/russeree/nyan-keys-stm32-firmware

  • Nyan DFU(STM32 引导加载程序)

https://github.com/russeree/nyan-keys-dfu-bootloader

  • Nyan OS Web 配置工具

https://russeree.github.io/

  • Nyan OS Web 配置工具 - 源代码

https://github.com/russeree/nyan-keys-gui\]

  • 总体

https://github.com/portlandhodl/russeree

总结

Nyan Keys 项目展示了在机械键盘设计中追求极致性能的可能性。通过 FPGA 的并行处理能力和高速 USB 通信,该项目实现了目前已知最低的输入延迟,为硬件爱好者和开发者提供了一个值得探索和学习的开源平台。

相关推荐
Jwest20216 小时前
工业显示器在地铁电力监控与运维中的应用
运维·计算机外设
搬砖的小码农_Sky9 小时前
常见的显示器接口技术
嵌入式硬件·计算机外设·显示器
9527华安19 小时前
Xilinx系列FPGA实现DP1.4视频收发,支持4K60帧分辨率,提供2套工程源码和技术支持
fpga开发·音视频·dp1.4·4k60帧
cycf21 小时前
高速接口基础
fpga开发
开开心心_Every1 天前
免费语音合成工具:66种音色随心选
人工智能·面试·java-ee·计算机外设·电脑·maven·excel
forgeda1 天前
从Vivado集成Lint功能,看FPGA设计的日益ASIC化趋势
fpga开发·vivado·lint·eco·静态检查功能
hexiaoyan8272 天前
国产化FPGA开发板:2050-基于JFMK50T4(XC7A50T)的核心板
fpga开发·工业图像输出·vc709e板卡·zynq 通用计算平台·模拟型号处理
雨洛lhw2 天前
The Xilinx 7 series FPGAs 设计PCB 该选择绑定哪个bank引脚,约束引脚时如何定义引脚电平标准?
fpga开发·bank·电平标准
红糖果仁沙琪玛2 天前
FPGA ad9248驱动
fpga开发
minglie12 天前
XSCT/Vitis 裸机 JTAG 调试与常用命令
fpga开发