赛灵思
直播中

王淑兰

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

请问如何将DONE信号连接到CPLD?

受到警告
提示: 作者被禁止或删除 内容自动屏蔽

回帖(6)

杨玲

2020-7-20 10:59:56
我不确定您是否在FPGA上留下了备用IO引脚。
在我看来,这是处理LED以及FPGA启动和运行的CPLD传感的最佳方式。
使用一个IO引脚,您可以将该引脚编程为始终驱动为低电平。
然后,您可以使用两个电阻和一个LED在配置完成之前将引脚上拉(与LED并联的大电阻)和电流限制LED(与LED串联的小电阻)。
由于当FPGA未通电或未配置时,引脚的行为相同(三态,上拉),因此您还没有关于FPGA是否真正配置的附加问题。
如果没有备用IO,当DONE为低电平时,您仍然可以使用相同的布置驱动LED - 即使用红色LED指示FPGA未加载。
但是,您仍然需要CPLD中的其他逻辑才能知道DONE很高,因为配置已完成,而不是因为FPGA未通电。
如果电源排序由CPLD完成,您应该有足够的信息来执行此操作,尽管您可能需要使用一些资源来创建额外的时间延迟或边缘检测,以便在首次接通电源时不会出现故障(
如果在打开FPGA电源后DONE需要时间变低,那么简单的AND无法防止出现故障。
- Gabor
在原帖中查看解决方案
举报

杨玲

2020-7-20 11:08:07
首先,使用DONE信号直接驱动LED通常是一个坏主意(是的,我知道一些参考设计可以做到这一点)。
如果您的电路板不会被用作开发板,那么无论如何,我建议完成LED是浪费钱。
将LED放在I / O引脚上,它可以用于更多的调试,而不仅仅是知道FPGA的配置。
其次,我看到DONE通过一个3.3V的电阻上拉。
这也是0号银行的Vcco吗?
如果是这样,那么1.8V LED将无法在DONE引脚上提供良好的逻辑1。
您可以增加R1341的值,或切换到具有更高Vf的LED,如蓝色或白色。
但我的投票仍然是完全摆脱LED DS2。
至于如果DONE在开机时短暂上升怎么办,我真的不知道你在CPLD中使用它的是什么。
所以我唯一的想法是你可以在CPLD中添加一些逻辑来寻找DONE的上升沿,而不仅仅是一个高级别。
据推测,当DONE在上电时变为高电平时,CPLD不会启动并运行,并且只有在FPGA完成配置后才能看到上升沿。
如果CPLD不是由与Vcco 0相同的电源供电,则情况可能并非如此。
也许如果您告诉我们您使用CPLD的原因,您可以获得更多建议。
- Gabor
举报

阮盛婧

2020-7-20 11:27:47
受到警告
提示: 作者被禁止或删除 内容自动屏蔽
举报

杨玲

2020-7-20 11:44:59
我不确定您是否在FPGA上留下了备用IO引脚。
在我看来,这是处理LED以及FPGA启动和运行的CPLD传感的最佳方式。
使用一个IO引脚,您可以将该引脚编程为始终驱动为低电平。
然后,您可以使用两个电阻和一个LED在配置完成之前将引脚上拉(与LED并联的大电阻)和电流限制LED(与LED串联的小电阻)。
由于当FPGA未通电或未配置时,引脚的行为相同(三态,上拉),因此您还没有关于FPGA是否真正配置的附加问题。
如果没有备用IO,当DONE为低电平时,您仍然可以使用相同的布置驱动LED - 即使用红色LED指示FPGA未加载。
但是,您仍然需要CPLD中的其他逻辑才能知道DONE很高,因为配置已完成,而不是因为FPGA未通电。
如果电源排序由CPLD完成,您应该有足够的信息来执行此操作,尽管您可能需要使用一些资源来创建额外的时间延迟或边缘检测,以便在首次接通电源时不会出现故障(
如果在打开FPGA电源后DONE需要时间变低,那么简单的AND无法防止出现故障。
- Gabor
举报

更多回帖

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