[matlab] ISE11.3 'define 问题

[复制链接]
4345|14
 楼主| jiyiche 发表于 2011-7-12 10:43 | 显示全部楼层 |阅读模式
ISE11.3里,在顶层文件中预定义:
`define NEWINTERRUPT 1
`define PFC_CISCO_DEBUG 1

然后在某个模块里
      `ifdef NEWINTERRUPT
       input              cfg_interrupt_assert_n,
       input        [7:0] cfg_interrupt_di,
       output       [2:0] cfg_interrupt_mmenable,
       output             cfg_interrupt_msienable,
       output       [7:0] cfg_interrupt_do,
       input              msi_8bit_en,
`else
`endif
综合的时候却提示未定义端口,是不是ISE里哪里的设置搞错了?
却提示端口未定义,这是为什么?
SuperX-man 发表于 2011-7-12 11:57 | 显示全部楼层
LZ, 我这没有11.3 ,所以用的是13.2 做了下试验.完全能通过,并且在RTL也能看到端口.
请您看把您的出错信息贴出来,让我们看下.可能是别的原因造成的.
另外您这些端口有没有在module中说明?
SuperX-man 发表于 2011-7-12 12:26 | 显示全部楼层
在module中声明一样可以使用'define

例如:
`define pk 1

module test(
            `ifdef pk
                      counter,
            `else
            `endif
              test_in,
);

            `ifdef pk
               output [7:0]   counter;
            `else
            `endif
             input [7:0] test_in;
            ............
GoldSunMonkey 发表于 2011-7-12 14:55 | 显示全部楼层
贴点错误信息吧:)
teet 发表于 2011-7-12 21:30 | 显示全部楼层
teet 发表于 2011-7-12 21:30 | 显示全部楼层
我也等着看看呢
AutoESL 发表于 2011-7-13 13:59 | 显示全部楼层
给点具体的错误信息,要不大家没法帮你.
另外,这个用法也不算怪异,应该没问题.是不是其他的设置造成错误了
lopopo 发表于 2011-7-13 17:43 | 显示全部楼层
超版好专业呀
lopopo 发表于 2011-7-13 17:43 | 显示全部楼层
 楼主| jiyiche 发表于 2011-7-14 11:21 | 显示全部楼层
谢谢大家,问题已解决。
ISE11.3的工程里,每个文件的'define,只在该文件中有效,如果要将该'define用于其他.v文件中,则必须将该文件作为全局文件,让其他每个文件都隐含的包含该文件。
cbas 发表于 2011-7-14 14:18 | 显示全部楼层
解决就好拉
GoldSunMonkey 发表于 2011-7-14 14:55 | 显示全部楼层
解决就好:)
wwde 发表于 2011-7-14 20:58 | 显示全部楼层
wwde 发表于 2011-7-14 21:00 | 显示全部楼层
注重下细节
GoldSunMonkey 发表于 2011-7-14 21:40 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

176

主题

484

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部