赛灵思
直播中

王林

7年用户 192经验值
私信 关注
[问答]

难以重命名PicoBlaze程序的解决办法?

我正在使用Vivado 2017.1。
这是@ chapman和其他人的另一个问题。
我有一个工作的PicoBlaze示例,它使用了kc705_kcpsm6_spi_flash.vhd和n25q128_spi_uart_bridge.psm。
当我将它闪存到KC705时,它可以工作。
当我在模拟中运行它时(如果没有UART或FLASH CHIP,它不会让我很远),模拟在1000ns时启动,kcpsm6_opcode等于“CALL 5A4”。
当我在波形中向后退时,此“CALL 5A4”值在10.1ns时开始。
在此之前并且在0.100ns时开始,它是“LOAD s0,s0”。
然后在0ns时,它是“无效指令”。
我将这一系列操作码作为“工作基线”。
我试图除了将“n25q128_spi_uart_bridge”重命名为“MY_PROGRAM”之外什么都不做。
我正在使用模拟语法和检查我的编辑,因为它需要几分钟而不是一个需要将近一个小时的完整实现。
(这是一个更大项目的一部分。我可以将其删除,但我也可以使用模拟,这就是我正在做的事情。)
但是,在进行重命名后,模拟在1000ns时启动,kcpsm6_opcode等于“无效指令”。
事实上,从0到1000年,它一直是“无效指令”。
因此,我认为我做错了什么。
我无法弄清楚我做错了什么。
这是我改变的:
Editedkc705_kcpsm6_spi_flash.vhd并将两次出现的“n25q128_spi_uart_bridge”更改为“MY_PROGRAM”。
Deletedn25q128_spi_uart_bridge.fmt,.hex,.log和.vhd。
将“n25q128_spi_uart_bridge.psm”重命名为“MY_PROGRAM.psm”。
将药物“MY_PROGRAM.psm”置于kcpsm6.exe之上,然后生成MY_PROGRAM.fmt,.hex,.log和.vhd。
我没有发现任何其他出现的“n25q128_spi_uart_bridge”。
请注意,当我显式重命名并重新拖动编译时,它再次起作用。
所以我可以“绕过街区”从工作到失败工作,所以我不认为我错过了任何步骤。
那么我做错了什么?
否则,我很好奇。
“LOADs0,s0”和“CALL 5A4”似乎不是来自“n25q128_spi_uart_bridge.psm”。
在一次独立测试中,我在“cold_start”标签处向“n25q128_spi_uart_bridge.psm”添加了一些不同的可识别指令,我没有在模拟波形中看到它们。
是否有一些内置的前导代码?

回帖(2)

邝计嘉

2020-8-26 15:22:49
解决了。
虽然我不确定为什么这会导致症状以及为什么它没有[编译]进行模拟,但错误是文件位置错误。
我有两个兄弟文件夹,一个有旧的PicoBlaze东西,另一个有新的。
重命名主.vhd中的程序名称引用并在新文件夹中重命名,并在新文件夹中重命名该程序时,项目中的程序引用继续指向旧文件夹,而不是新文件夹。
因此,旧程序[链接]仍然是项目的情况。
结果,主.vhd引用了一个不存在的程序。
当我修复项目以使用正确的文件夹时,问题就消失了。
我习惯于对下级文件和它们所在的位置进行双重检查 - 对于其他情况,但对于PicoBlaze来说却不是。
在原帖中查看解决方案
举报

邝计嘉

2020-8-26 15:39:31
解决了。
虽然我不确定为什么这会导致症状以及为什么它没有[编译]进行模拟,但错误是文件位置错误。
我有两个兄弟文件夹,一个有旧的PicoBlaze东西,另一个有新的。
重命名主.vhd中的程序名称引用并在新文件夹中重命名,并在新文件夹中重命名该程序时,项目中的程序引用继续指向旧文件夹,而不是新文件夹。
因此,旧程序[链接]仍然是项目的情况。
结果,主.vhd引用了一个不存在的程序。
当我修复项目以使用正确的文件夹时,问题就消失了。
我习惯于对下级文件和它们所在的位置进行双重检查 - 对于其他情况,但对于PicoBlaze来说却不是。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分