IP调用问题
我在把PLL模块嵌入数字SOC的过程中,做了这几个步骤1.先将模拟的版图,在Milkway中做出了一个mw库
2.我用Verilog描述了对这个模块做了一个只有输入输出的描述。
3.我在顶层设计中加入和数字模块的连接关系
然后,我把顶层设计放在DC中做综合,但是综合后的网表调入ICC中并不能实现调用pll物理库。我想了想是不是在DC综合的时候应该按照存储器的调用方法,给pll写一个lib文件,然后生成db文件加载进去。而不是用Verilog描述一个黑盒子后,在顶层定义一个连接关系后进行综合。
综合和pr不要搞混了,pll就像一个ram一样,调用就行了
pr需要pll的milkyway reference library, 做为参考库,
有lib最好,做为logic db , 否则总是报unresolved reference xxxx
谢谢小编指点,可是我按照存储器模式调用思路,在顶层写了一个模块将plltop调入。可是在DC中读入时,每次elaborate后都直接提示一个Information:Buliding the design "plltop".和其他功能模块一样,被映射成了一个只有输入输出的module。这样根本就没有像RAM调用一样,也不会报出没有db文件导致的那个unresolved referrence xxx。是顶层的文件定义有问题?还是DC的设定有问题?这是我自己写的顶层调用的部分。
IMAGE IMAGE(
//----------Inputs-------------
.RST(RST),
.CLK_DSP(CLK_DSP),
.CLK_IMAGE(CLK_IMAGE),
.CLK_100M(CLK_100M),
.imgdata_valid(imgdata_valid),
.img_fval(img_fval),
.imgdata(imgdata),
.DSP_ACEn(DSP_ACEn),
.DSP_DATA(DSP_DATA),
//----------Outputs------------
.msk_flag(msk_flag),
.RsultData(RsultData),
.RsultData_fval(RsultData_fval),
.RsultData_valid(RsultData_valid),
.Rsult_CLK(Rsult_CLK)
);
plltop plltop_inst (
//-------------Inputs--------------------
.PLLREFCLK(PLLREFCLK),
.pllenb(pllenb),
.stupsel0(),
.stupsel1(),
.plushalf(),
.minushalf(),
.obselbit0(),
.obselbit1(),
.obselbit2(),
.plldiv34bsel(),
.hblclktocore(),
.fixedpstup(),
//--------------Output--------------------
.clkcore(CLK_100M),
.PADN(PADN),
.PADP(PADP)
);
第一个plltop改成 pll本身的名字即可, 然后用上pll的db,
谢谢小编
我理解得不太清楚,请问是这样吗:
在rtl_top里例化一个pll,同时把pll.db加到DC的library里,不需要写一个只有端口的空的pll.v
谢谢