社区导航

 

搜索
查看: 3867|回复: 12

[求助] FPGA多个component,out端连接同样的I/o口出错,这样不能实现吗?

[复制链接]

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2012-6-26 17:01 | 显示全部楼层 |阅读模式
FPGA多个component,out端连接同样的I/o口出错,这样不能实现吗?其实那些component的out输出的时序是不一样的,因而I/O口不会干涉吧。
提示这个:ERROR:Xst:528 - Multi-source in Unit on signal
此帖出自FPGA/CPLD论坛

点评

出现该问题,我觉得楼主对数字电路理解上可能还是有些偏颇。 一旦被分配到某一个IO口,实现工具就在物理上将该信号与相应的IO口锁定;多个信号分配到同一IO口,哪怕这些信号来自于不同的component,哪怕在产生时隙  详情 回复 发表于 2012-7-25 17:48


回复

使用道具 举报

3056

TA的帖子

0

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

发表于 2012-6-26 18:09 | 显示全部楼层
1、这等于把多个输出脚并到一起,会引起冲突,综合当然不会让你过。
2、建议楼主尽量多写信息在标题上,以便让版面一目了然。

点评

好的,可是时序不一样,也不行吗?不能像总线那样子吗  详情 回复 发表于 2012-6-27 09:02


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2012-6-27 09:02 | 显示全部楼层

回复 沙发 仙猫 的帖子

好的,可是时序不一样,也不行吗?不能像总线那样子吗

点评

出现该问题,我觉得楼主对数字电路理解上可能还是有些偏颇。 一旦被分配到某一个IO口,实现工具就在物理上将该信号与相应的IO口锁定;多个信号分配到同一IO口,哪怕这些信号来自于不同的component,哪怕在产生时隙  详情 回复 发表于 2012-7-25 17:46
不管还是什么线,把两个推挽输出接到一起,如果1个要出0另1个要出1,不就冲突了吗?弄不好还会烧器件。 电路图上的“总线”是并排着的多根线的简单画法,其实每根线都是独立的,并非被接在一起。  详情 回复 发表于 2012-6-27 09:45


回复

使用道具 举报

3056

TA的帖子

0

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

发表于 2012-6-27 09:45 | 显示全部楼层

原帖由 museum 于 2012-6-27 09:02 发表

 ...可是时序不一样,也不行吗?不能像总线那样子吗

不管还是什么线,把两个推挽输出接到一起,如果1个要出0另1个要出1,不就冲突了吗?弄不好还会烧器件。

电路图上的“总线”是并排着的多根线的简单画法,其实每根线都是独立的,并非被接在一起。

点评

再问一下,这个总线是可以共用的啊,比如先写命令,再写数据,只是时序不一样的。  详情 回复 发表于 2012-6-28 11:44


回复

使用道具 举报

8910

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2012-6-27 19:19 | 显示全部楼层

支持,回复太精彩!

一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2012-6-28 11:44 | 显示全部楼层

回复 4楼 仙猫 的帖子

再问一下,这个总线是可以共用的啊,比如先写命令,再写数据,只是时序不一样的。

点评

既如此,就不能描述成输出,应描述成双向口,自己不输出的时候切换成高阻。 在源程序里能否把两个模块的双向口并在一起,可能跟FPGA系列还有关,记得以前ISE里对Spartan-3编程可以这么做,但Spartan-3E就不行。保  详情 回复 发表于 2012-6-28 13:09


回复

使用道具 举报

3056

TA的帖子

0

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

发表于 2012-6-28 13:09 | 显示全部楼层

回复 6楼 museum 的帖子

既如此,就不能描述成输出,应描述成双向口,自己不输出的时候切换成高阻。

在源程序里能否把两个模块的双向口并在一起,可能跟FPGA系列还有关,记得以前ISE里对Spartan-3编程可以这么做,但Spartan-3E就不行。保险起见的话最好写模块时将双向口分开成入/出两个口写,在调用该模块的层切换。

点评

哈,谢谢呀,我已经解决了。又有一个问题,Xilinx的Ip不能implement Design吗?麻烦了 啊  详情 回复 发表于 2012-7-5 17:14


回复

使用道具 举报

14

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2012-7-5 17:14 | 显示全部楼层

回复 7楼 仙猫 的帖子

哈,谢谢呀,我已经解决了。又有一个问题,Xilinx的Ip不能implement Design吗?麻烦了 啊

点评

能说得具体些吗?  详情 回复 发表于 2012-7-6 08:38


回复

使用道具 举报

3056

TA的帖子

0

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

发表于 2012-7-6 08:38 | 显示全部楼层

原帖由 museum 于 2012-7-5 17:14 发表

 又有一个问题,Xilinx的Ip不能implement Design吗?麻烦了啊

能说得具体些吗?



回复

使用道具 举报

8910

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2012-7-16 21:18 | 显示全部楼层

具体啥问题?

一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

61

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2012-7-25 17:46 | 显示全部楼层

回复 板凳 museum 的帖子

出现该问题,我觉得楼主对数字电路理解上可能还是有些偏颇。
一旦被分配到某一个IO口,实现工具就在物理上将该信号与相应的IO口锁定;多个信号分配到同一IO口,哪怕这些信号来自于不同的component,哪怕在产生时隙上市错开的,实现工具和FPGA无法像“软件”那样实现物理上的切换。

多个信号要从同一IO口输出,只能有两种思路:
1. 用总线形式,将IO口定义为inout型(三态门),可输入,也可输出。
2. 用多路选择器来实现,这个时候严格来讲已经输出端已经是同一信号了。


回复

使用道具 举报

61

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2012-7-25 17:48 | 显示全部楼层

回复 楼主 museum 的帖子

出现该问题,我觉得楼主对数字电路理解上可能还是有些偏颇。
一旦被分配到某一个IO口,实现工具就在物理上将该信号与相应的IO口锁定;多个信号分配到同一IO口,哪怕这些信号来自于不同的component,哪怕在产生时隙上市错开的,实现工具和FPGA无法像“软件”那样实现物理上的切换。

多个信号要从同一IO口输出,只能有两种思路:
1. 用总线形式,将IO口定义为inout型(三态门)。
2. 用多路选择器来实现,这个时候严格来讲已经输出端已经是同一信号了。


回复

使用道具 举报

8910

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2012-7-26 13:13 | 显示全部楼层
顶,支持11楼和12楼精彩论断!
一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 /5 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-2-22 23:11 , Processed in 0.358965 second(s), 19 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表