在使用MyHDL用户定义的代码时,是否有一种指定库使用子句的方法?
考虑以下示例,它对Xilinx库中可用的差异缓冲区进行了建模:
from myhdl import *
def ibufds(I, IB, O):
""" Xilinx Differential Signaling Input Buffer"""
@always_comb
def output():
O.next = I
return instances()
ibufds.vhdl_code = """
IBUFDS_inst : IBUFDS
generic map (
DIFF_TERM => FALSE,
IBUF_LOW_PWR => TRUE,referenced I/O standards
IOSTANDARD => "DEFAULT")
port map (
O => O,
I => I,
IB => IB
);"""将此模块转换为VHDL代码很好,但缺少的是VHDL文件头中的以下use子句:
library unisim;
use unisim.vcomponents.all;我怎么才能解决呢?
发布于 2014-05-02 13:13:16
是的,toVHDL()支持use_clauses属性。这可以保存一个(可能是多行)字符串,该字符串将被插入到适当的位置。这是刚刚插入的,所以您也可以添加库声明。
这是支持的,但我注意到我忘了将它添加到文档中-需要修复。
目前,在使用该属性时,省略了pck_myhdl* use声明--在需要该包的另一个名称的项目中,我使用了use_clauses。这看起来有点混乱,也许最好使用不同的参数将该功能分开。
https://stackoverflow.com/questions/23423971
复制相似问题