首页 > 解决方案 > 如何在 Verilog 运行时捕获键盘输入?

问题描述

我一直在尝试找到一种在 Verilog 代码的运行时模拟期间捕获键盘输入的方法。这甚至可能吗?

我查看了在 Google 上找到的 asic-world 和 Verilog 快速参考等资源,但没有发现任何关于获取键盘输入的方法。

标签: verilogsystem-verilog

解决方案


在用于模拟设计的硬件描述语言与使用相同的描述在实际硬件中实现设计之间的区别似乎存在根本性的误解。这就像画一张风车的照片,在这张照片上吹气,然后期待风车开始转动。

您当然可以构建该风车的 3-D 模型,模拟该模型上的风力并观察其转动,然后将该模型发送到 3-D 打印机以获取您的风车。我想您可以将风传感器放在监视器前面,然后编写一个程序,将传感器的值转换为模拟中使用的值。关键是,模拟器不知道该值来自有人在监视器上吹气,它只是看到参数值的变化。

除非您自己设计键盘硬件并对其进行仿真,否则从计算机获取键盘输入并使用它来模拟您的设计并没有多大意义。操作系统已经抽象出了键盘硬件,并为您提供了一串字符代码。您首先进行仿真的原因是为了验证您的设计的功能。如果您发现问题,您将希望重播完全相同的刺激,直到您解决问题。

就像风车的例子一样,我知道有人可以设置一个程序来读取键盘输入并将其作为模拟的刺激。但这涉及到进程间通信(IPC)和设置它的特定工具知识。


推荐阅读