【发布时间】:2020-01-13 22:56:54
【问题描述】:
我的项目是使用 CPDL,我正在用 verilog 编程来对 BLDC 电机进行换向。该过程的一部分是读取霍尔传感器 A、B、C。
我想计算 A、B 或 C 上的正边沿数量。我有一个 3 位变量 [2:0] hallIn 来存储这些输入。下面的代码适用于 modelsim 仿真,但不适用于实际芯片。怎么会?这样做的正确方法是什么?我得到的错误信息是:73:12:73:55|Can't mix posedge/negedge use with plain signal references
always @ (posedge hallIn[2] or hallIn[1] or hallIn[0])
【问题讨论】:
-
这不是 Verilog 编程问题,而是如何进行硬件设计 问题。尝试在electronics.stackexchange.com 上提问。
-
您的块仅由位 [2] 的上升沿触发,实际上由位 [1] 和 [0] 的两个沿(更改)触发。我怀疑它在modelsim中是否正确工作。你可能没有做足够的测试。
标签: verilog