求助大神:IIC 模块例化50个出来,有几个例化逻辑执行错误
时间:10-02
整理:3721RD
点击:
项目需求,利用IIC与多个50个模块通信,每个模块用1个IIC总线,综合完成之后,下载到FPGA内部,总有几个例化,逻辑执行错误。看了下综合 最差建立时间 裕度 -9.5ns, 用50MHz时钟跑。
大神求教,问题出在哪里了啊~
大神求教,问题出在哪里了啊~
先明确一下你的连接,是不是1个Master,50个Slave?
可以做如下处理:
1)IIC一般作为低速总线使用,不知道你的IIC的SCL频率是多少。如果是50MHz,可能有点高,因为IIC其实是作为异步信号处理的,50MHz太高了。
2)50MHz的IIC在FPGA内部实现也是有可能的,但是需要做约束,首先是做全局时钟约束,你想跑50MHz的话,可以约束到55MHz试试。
谢谢,帮忙分析。IIC是400kHz的,一个master(FPGA) 和 一个 slave 使用一条IIC总线。
你用FPGA实现的是IIC master,总共例化了50个master?是这个意思吗?看综合报告有setup violation,有时序不满足,功能出错并不奇怪啊。先把时序收敛了再来看功能吧。
是的,例化了 50个 master出来,已经在做时序优化。谢了~
这里是FPGA与50个I2C SLAVE进行通信吗?是否要同时都通信呢?如果不需要的话,应该可以选择一个I2C MASTER+50个IO开关。
50路IIC同时动作呀,相当于一个多路IIC译码芯片。
