打破延迟极限的 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 通信,该项目实现了目前已知最低的输入延迟,为硬件爱好者和开发者提供了一个值得探索和学习的开源平台。

相关推荐
嵌入式-老费11 小时前
Linux Camera驱动开发(fpga + csi rx/csi tx)
fpga开发
ALINX技术博客1 天前
【202601芯动态】全球 FPGA 异构热潮,ALINX 高性能异构新品预告
人工智能·fpga开发·gpu算力·fpga
JJRainbow1 天前
SN75176 芯片设计RS-232 转 RS-485 通信模块设计原理图
stm32·单片机·嵌入式硬件·fpga开发·硬件工程
s9123601011 天前
FPGA眼图
fpga开发
北京青翼科技1 天前
【PCIe732】青翼PCIe采集卡-优质光纤卡- PCIe接口-万兆光纤卡
图像处理·人工智能·fpga开发·智能硬件·嵌入式实时数据库
minglie11 天前
verilog信号命名规范
fpga开发
企鹅侠客1 天前
鼠标键盘按键统计工具
计算机外设·键盘·鼠标
XINVRY-FPGA1 天前
中阶FPGA效能红线重新划定! AMD第2代Kintex UltraScale+登场,记忆体频宽跃升5倍
嵌入式硬件·fpga开发·硬件工程·dsp开发·fpga
南檐巷上学2 天前
基于FPGA的音频信号监测识别系统
fpga开发·音频·verilog·fpga·傅立叶分析·fft·快速傅里叶变换
Aaron15882 天前
基于RFSOC的数字射频存储技术应用分析
c语言·人工智能·驱动开发·算法·fpga开发·硬件工程·信号处理