我想建立一个模型来比较特定位模式的输入。例如,如果我必须检查输入模式1110,我建立一个带3个延迟元件的模型,获取输入并将其连接起来,然后使用比较器与14(Hex E)进行比较。在Simulink模式匹配
目前,我需要对128位进行模式匹配。按照前面的例子,我可以理想地构建使用127个延迟元素和比较块的类似模型。
但我想知道是否有一个最佳和“更好”的方式来做到这一点。
期待在这方面提出一些建议。
如果你有兴趣,这里是小模型我建抽取8位:
我想建立一个模型来比较特定位模式的输入。例如,如果我必须检查输入模式1110,我建立一个带3个延迟元件的模型,获取输入并将其连接起来,然后使用比较器与14(Hex E)进行比较。在Simulink模式匹配
目前,我需要对128位进行模式匹配。按照前面的例子,我可以理想地构建使用127个延迟元素和比较块的类似模型。
但我想知道是否有一个最佳和“更好”的方式来做到这一点。
期待在这方面提出一些建议。
如果你有兴趣,这里是小模型我建抽取8位:
你所描述什么是一个很好的通用的方法 - 它假设一下你想要的图案没有检测。
你也许能够做不同的事情,如果方式是(例如)1秒,然后0(创建计数器如果计数器到达正确的价值观来算的长度和标志匹配)
的长字符串我认为如果你创建了一个内部带有z^-1和concat的块,你可以使你的图变得更容易一点(也许)。然后,当你传入输入时,你可以延迟它并将其与前一阶段的输出连接(也传入)。另一方面,这在VHDL中被简单地描述为移位寄存器(一行代码)和匹配器(另一行代码)。
您可以在m代码块(类似的几行代码)中使用persistent
变量来为寄存器创建类似的东西,但是如果要实例化块的多个实例, - 因为persistent
存储在他们之间共享!
谢谢,我会尝试第一种方法,具有延迟元素与连续块的分层块结构。 m代码块是一个美妙的想法。但是我们仍然需要有127个Delay元素吗? VHDL本来就是一个很好的解决方案 – Kiran 2011-05-27 13:40:41
你提到了另一种可能性。我正在寻找一种128位的模式,它实际上是混乱的。所以你基本上用一个预定义的种子内容来加扰所有1的加扰器。所以,我也可以对它进行解扰并使用你在答案中提到的方法(使用计数器计算1的数量)。我也会尝试这种方法。 参考:http://standards.ieee.org/getieee802/download/802.11b-1999.pdf – Kiran 2011-05-27 14:25:25
解扰器 - 是的,如果你不需要识别动态模式,那可以很好地工作。 – 2011-05-27 19:46:05