vstest.ant

来自「利用VERILOG编写的基于XILINX的SPARTAN板的VGA接口显示程序」· ANT 代码 · 共 122 行

ANT
122
字号
////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 1995-2003 Xilinx, Inc.
// All Right Reserved.
////////////////////////////////////////////////////////////////////////////////
//   ____  ____ 
//  /   /\/   / 
// /___/  \  /    Vendor: Xilinx 
// \   \   \/     Version : 8.2i
//  \   \         Application : ISE
//  /   /         Filename : vstest.ant
// /___/   /\     Timestamp : Wed Nov 14 18:11:11 2007
// \   \  /  \ 
//  \___\/\___\ 
//
//Command: 
//Design Name: vstest
//Device: Xilinx
//
`timescale 1ns/1ps

module vstest;
    reg clk = 1'b0;
    reg rst = 1'b0;
    wire hs;
    wire vs;
    wire [9:0] counths;
    wire [9:0] countvs;

    parameter PERIOD = 40;
    parameter real DUTY_CYCLE = 0.5;
    parameter OFFSET = 0;

    initial    // Clock process for clk
    begin
        #OFFSET;
        forever
        begin
            clk = 1'b0;
            #(PERIOD-(PERIOD*DUTY_CYCLE)) clk = 1'b1;
            #(PERIOD*DUTY_CYCLE);
        end
    end

    vs_hs UUT (
        .clk(clk),
        .rst(rst),
        .hs(hs),
        .vs(vs),
        .counths(counths),
        .countvs(countvs));

    integer TX_FILE = 0;
    integer TX_ERROR = 0;
    
    initial begin    // Annotation process for clock clk
        #0;
        ANNOTATE_hs;
        ANNOTATE_vs;
        ANNOTATE_counths;
        ANNOTATE_countvs;
        #OFFSET;
        forever begin
            #20;
            ANNOTATE_hs;
            ANNOTATE_vs;
            ANNOTATE_counths;
            ANNOTATE_countvs;
            #20;
        end
    end

    initial begin  // Open the annotations file...
        TX_FILE = $fopen("D:\\Xilinx\\basys\\VGAVGA\\vstest.ano");
        #1.00004e+006 // Final time:  1.00004e+006 ns
        $display("Success! Annotation Simulation Complete.");
        $fdisplay(TX_FILE, "Total[%d]", TX_ERROR);
        $fclose(TX_FILE);
        $finish;
    end

    initial begin
        // -------------  Current Time:  20ns
        #20;
        rst = 1'b1;
        // -------------------------------------
    end

    task ANNOTATE_hs;
        #0 begin
            $fdisplay(TX_FILE, "Annotate[%d,hs,%b]", $time, hs);
            $fflush(TX_FILE);
            TX_ERROR = TX_ERROR + 1;
        end
    endtask

    task ANNOTATE_vs;
        #0 begin
            $fdisplay(TX_FILE, "Annotate[%d,vs,%b]", $time, vs);
            $fflush(TX_FILE);
            TX_ERROR = TX_ERROR + 1;
        end
    endtask

    task ANNOTATE_counths;
        #0 begin
            $fdisplay(TX_FILE, "Annotate[%d,counths,%b]", $time, counths);
            $fflush(TX_FILE);
            TX_ERROR = TX_ERROR + 1;
        end
    endtask

    task ANNOTATE_countvs;
        #0 begin
            $fdisplay(TX_FILE, "Annotate[%d,countvs,%b]", $time, countvs);
            $fflush(TX_FILE);
            TX_ERROR = TX_ERROR + 1;
        end
    endtask

endmodule

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?