我正在尝试构建自定义IP外设(my_perph)。我使用CIP工具生成基本perph,现在想要添加我的自定义外部端口(my_port)。
基本上我遵循了本教程http://www.programmableplanet.com/author.asp?section_id=2142&doc_id=264841。
我已将外部端口定义添加到顶级源vhdl my_perph.vhdl。 即
Port(
---Add user defined ports here----
MY_PORT : out std_logic;
然后我将端口添加到MPD文件中,语法为:
PORT MY_PORT = "", DIR = O, IO_IF = MY_PORT_0, IO_IS = MY_PORT
这不起作用,所以我尝试丢失0以匹配VHDL声明端口的名称,所以:
PORT MY_PORT = "", DIR = O, IO_IF = MY_PORT, IO_IS = MY_PORT
问题是,一旦我重新扫描了IP库,我就会收到错误消息,说明有
NO IO_INTERFACE MATCHING MY_PORT
似乎我的自定义外部端口MY_PORT在IP设计中未被识别,尽管它存在于所包含的IP实体的HDL中。
即使我去添加perph,我发现这个端口没有显示在信息中。我完全迷失了,因为我遵循了所有的教程,并且厌倦了我能想到的每件事!
答案 0 :(得分:1)
阅读平台规范格式指南。在复制和粘贴其中的行之前,您需要了解所有MPD文件。您需要具有匹配的IO_INTERFACE部分的行(如错误消息所示)
如果您的IO不是“标准”IO端口的一部分(请参阅PSF的IO_INTERFACE部分),您应该可以使用:
PORT MY_PORT = "", DIR = O