0

QuartusBoardのLEDからヘビを書きたいと思っています。KITT-Ledsのようなものですが、プログラムを実行しようとするとエラーが発生します。

module ukol3(KEY,LEDR);
input[1:0]KEY;
output[14:0] LEDR;

counter counter(KEY[0], KEY[1], LEDR[14:0]);

endmodule

module counter(C,CLR,Q);
input C, CLR;
output [14:0] Q;
reg [14:0] tmp;
integer i;

always @(posedge C or posedge CLR)      
    begin

        if (CLR)
            tmp = 15'b000000000000000;

        if (tmp == 15'b111111111111111)
            i = 0;

        if (tmp == 15'b000000000000000)
            i = 1;

        if (i == 1)
            tmp = tmp + 1'b1;

        if (i == 0)
            tmp = tmp - 1'b1;
        end 
    assign Q = tmp;


endmodule

これは私にエラーを与えます:

エラー:ユーザー階層「counter:counter」を詳しく説明できません

何が起こっているのか本当にわかりません。

4

1 に答える 1

0

この質問は、vhdl ではなく Verilog に関するものです。いくつか質問したいのですが、あなたのコードは合成可能ですか? 合成モジュールカウンターの後に何が得られますか?

counterあなたの質問については、最初にコンパイルしてからコンパイルする必要があると思いますukol3。最初に行っていない場合、EDA ツールはカウンターを見つけません。2 つの分離可能なファイルに分割し、最初にカウンターを実行する必要があります。

counter counter (.C(KEY[0]),.CLR (KEY[1]),.Q (LEDR[14:0]));PS:より明確なコードなど、より適切なマッピング ポート メソッドを使用する必要があります。

于 2012-10-23T18:10:20.447 に答える