|
谁能帮忙看一下 以下代码的意思,以前这哥们写的程序没有任何注释。其它的模块程序都看懂了,就是这个
小模块没有明白是怎么一回事。
程序是前面的人用AHDL语言开发的,就是这个地方看不明白。
主要是以前没有怎么用过FPGA,而这个代码又是AHDL语言写的,
开发的人也不在旁边,离开公司了。
而lpm_mux这人模块的说明也很少,没有一个具体的例子。主要是后面还有一句话
IF !USED(result) GENERATE
result[] = GND;
END GENERATE;
这个更是不明白是什么意思了。
源代码如下,麻烦懂AHDL的给帮忙说一下,谢谢。
INCLUDE "lpm_mux.inc";
PARAMETERS
(
WIDTH---这里是一个宽度变量
);
SUBDESIGN busmux
(
dataa[WIDTH-1..0] : INPUT;
datab[WIDTH-1..0] : INPUT;
sel : INPUT;
result[WIDTH-1..0] : OUTPUT;
)
BEGIN
result[] = lpm_mux(.data[][]=(datab[], dataa[]), .sel[]=sel)
WITH (LPM_WIDTH = WIDTH, LPM_SIZE = 2, LPM_WIDTHS = 1);
IF !USED(result) GENERATE
result[] = GND;
END GENERATE;
END;
看起来好像是两个数组(输入)进行一个什么运算的样子。
也可以QQ联系我 谢谢。 402619389。
|
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|