Board logo

标题: 请帮忙找下verilog写的一个简单测试程序的错误. [打印本页]

作者: qgyqiao    时间: 2006-3-3 09:54     标题: 请帮忙找下verilog写的一个简单测试程序的错误.

新手,请大家帮帮找下什么原因的错误.谢谢了!
我在F:\exam文件夹下有2个文件:compare_test.v和compare_one.v  
用modelsim编译时就只能compare_one.v通过,而test的那个通不过.
compare_one.v的程序:
module compare_one(f,a,b);
    input [3:0] a,b;
    output f;
   assign f= com(a,b);
   function com;
       input [3:0] a,b;
       if(a>b)
       com=1;
       else
       com=0;
   endfunction
endmodule

test的那程序:
`timescale 1ns/1ns
`include "./compare_one.v"

module compare_test();
     reg [3:0] ta,tb;
     wire tf;
     parameter step=100;
     initial begin
         ta=0;tb=0;
         #step  ta=4'd5;
         #step  tb=4'd6;
         #step  ta=4'd6;
         #step  ta=4'd7;
         #step  tb=4'd8;
         #step  $stop;
      compare_one  cm(tf,ta,tb);
endmodule
编译时的错误:# -- Compiling module compare_test
# ** Error: F:/exam/compare_test.v(18): Undefined variable: compare_one.
# ** Error: F:/exam/compare_test.v(18): near "cm": syntax error

作者: qgyqiao    时间: 2006-3-3 10:34

新手刚学,大家指导下,我在编功能模块的时候都是可以通过,就是在写它的测试程序的时候,在include了原模块,但编译测试程序就会出错,就象上面的错误一样.
作者: fenglouto    时间: 2006-3-3 11:14

熟悉verilog的大侠帮忙看下吧。
作者: qgyqiao    时间: 2006-3-3 11:57

我在begin后少了end 但加上后每次都有下面的错误,
# ** Error: F:/aaa/compare_test.v(2): Cannot open `include file "./compare_one.v".
我不是已经把2个文件放在一个文件夹里了啊,用`include "./compare_one.v"就出现上面的错误, 如果我是几个模块放在一起调用也出现cannot open file "./*.v".,我不是已经`include "./*.v"某文件了吗?请指教,
作者: zhengyibin85    时间: 2006-3-4 23:41

你的compare_one.v经过综合了吗?我记得以前遇到过类似问题最后是先综合才能include
还有,我在写测试模块时都没用到`include
作者: 陈石亮    时间: 2006-3-10 21:40

`timescale 1ns/1ns

module compare_test();
reg [3:0] ta,tb;
wire tf;

compare_one cm(tf,ta,tb);

parameter step=100;

initial
begin
ta=0;tb=0;
#step ta=4'd5;
#step tb=4'd6;
#step ta=4'd6;
#step ta=4'd7;
#step tb=4'd8;
#step $stop;
end
endmodule
作者: stone133    时间: 2006-3-10 22:33

我试了,加上了end没有什么问题啊,都能编译过。
建议你使用开发工具中的测试文件自动生成功能,他会给你生成一个框架,你只需要改动你需要的就可以。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0