跳到主要内容

SLG46880V上的F(1)宏电池模拟问题

2个月前

SLG46880V上的F(1)宏电池模拟问题

张贴了马修H.0分 6回复
0旋转

我正在使用SLG46880V设备上的F(1)计算宏。当使用来自专用模拟比较器引脚的输入上的电池执行计算时,它会对F(1)块的输出路由到FSM转换输入,状态在模拟中不会正确转换。

当从常规连接矩阵路由输入时,它似乎正常工作。请参阅链接到图像和exaple文件:

https://imgur.com/a/liav0zg.

https://imgur.com/a/pko0lus.

https://www.dropbox.com/s/l8loe30ldw3pf7g/f%281%29%20Error%20example.gp6?dl=0.

2个月前

Ssaravan.

嗨马修,

谢谢你伸出援手。F(1)计算宏小区将开始执行指令的唯一时间是当ASM Macrocell首次进入新状态时。(您还可以在数据表的F(1)宏单元部分中找到一些更有用的信息)

因此,当输入电压小于ACMP的参考volatge时,ACMP变为低电平,F(1)块停止和ASM保持状态为0.因此,您可以看到过渡。除了OUT0之外,您能否在命令序列中使用延迟命令尝试使用循环命令?因此,每次迭代都通过循环时,监测阈值,并且存在过渡。

请让我知道这可不可以帮你

亲切的问候,

夏天

2个月前

马修H. 0分

好的希凡我看到你的意思。我会尝试添加循环,看看它是否更改了任何内容,谢谢。

1个月前

马修H. 0分

嗨,希纳里再次。我仍然没有任何运气完成我正在尝试的事情,它是在Gven状态中连续监视模拟输入,使用F(1)宏电池执行运行计算,并且当a时触发状态转换满足某些计算条件。一个示例是通过与F(1)单元输入相关联的四个模拟比较器,使用堆栈机器的三位格雷码连持一个例子,然后在三位中的特定位时触发状态转换F(1)输出设置。对于f(1)代码,我有类似的东西:

LOAD4 //将LOAD4输入位推到堆栈OUT2 //复制到OUT2的顶部位,MSB LOAD2 //将LOAD2输入位推到堆栈OUT1 //复制到OUT1中的顶部位,中间位LOAD1 LOAD3 INV //反转顶部堆栈,load3和//上的堆栈上的顶部两个位,将结果返回到顶部OUT0 //复制到OUT0 PUSH0 //顶部位必须为0触发循环指令循环W Delay //返回开始

如你所说,没有循环声明,F(1)计算只在进入状态时执行一次。对于循环和延迟,它看起来像仿真时堆栈机器进入无限循环,F(1)的输出连续更改,但是控制从未返回到ASM,过渡从未发生过渡。是否有可能做到这一点?如果是这样,你有一个工作的例子吗?谢谢

1个月前

Ssaravan.

嗨马修,

请查找附加了f(1)宏小区的工作示例。命令序列有点与您的不同

亲切的问候

夏天

附件 尺寸
ACMPS F(1).zip 8.47 KB.

1个月前

马修H. 0分

感谢您的榜样Shivani和Sory在我的回复中延迟,不幸的是,我遇到的问题仍然存在。F(1)单元格进入循环并连续计算4输入和ACMP输入,而不是您示例中的问题。但是,如果我要说f(1)单元的OUT0并将其连接到ASM上的状态转换,它看起来永远不会触发,则循环仍然不确定,控制从未返回到ASM,在那种情况下,在那里状态转换输入仅来自F(1)的输出。

如果我将F(1)的OUT0连接到F(1)上的ASM转换输入和“中断”引脚,则在OUT0变高时触发转换,我假设返回控制并循环中断同时使用ASM接收过渡信号,但这似乎是竞争危险,而不是Partiumarly有用的配置,无论如何,该连接然后持续到所有状态和所有四种可能的F(1)配置。我假设这是正确的行为,但是,一旦F(1)以特定状态进入无限循环,就会通过外部输入到ASM或使用中断引脚来强制返回控制亚马逊?

1个月前

Ssaravan.

嗨马修,

我明白你的意思了。你可以尝试使用延迟块将OUT0连接到ASM吗?也许像一个拍摄的延迟甚至更好的dff,所以你的捐款进入竞赛条件

亲切的问候

夏天