我的问题
我想为一个名为“confirmer”的块建模。规范是输出将简单地是基于边缘(上升/下降)的输入的延迟版本。为了澄清,我将尝试将时序图放在下面:
___________________________
| |
Input _______| |____________________________
(Tdelay) _____________________
| |
Output ______________| |____________________________
和
____________________________
| |
Input _______________| |____________________________
(Tdelay)
______________________________________
| |
Output _______________| |_____________________
正如我试图在上面画的那样,上升沿意味着我的输出将简单地跟随 Tdelay 之后的变化输入。但是当它从 1 变回 0 时,就没有延迟了。这是上升沿触发的确认器块的示意图。
对于下降沿触发的确认器,情况正好相反。当有下降沿时,输出将在 Tdelay 秒后跟随输入的变化,即保持最后一个输入为 Tdelay。
我的目标平台
SIMULINK 和 MATLAB。
我最初的解决方案
我知道有办法通过使用触发子系统块来触发某些动作。但我正在努力使用 SIMULINK 中的延迟/单位延迟块来实现触发器的延迟。我设法使用了另一个称为可重置延迟器的块,但是当它是上升沿重置时它不能正常工作;它只是根据边缘重置。
有没有人尝试过这种问题?
自@PhilGoddard 的回答以来更新
我认为这应该有效,因为我设法重现了问题中的时序图。
我是如何设计的:
1)使用重复序列楼梯作为我的输入。
2) 配置单元延迟块,以便在上升沿或下降沿启用复位。这将允许以下任一“
i)输入(下降沿)=输出(下降沿)[上升沿延迟Tdelay ii)输入(上升沿)=输出(上升沿)[下降沿延迟Tdelay]
除非我失去理智,否则我认为这个解决方案可以吗?