D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
tattooscyy
/
api
/
vendor
/
scrivo
/
highlight.php
/
test
/
detect
/
verilog
/
Filename :
default.txt
back
Copy
`timescale 1ns / 1ps /** * counter: a generic clearable up-counter */ module counter #(parameter WIDTH=64, NAME="world") ( input clk, input ce, input arst_n, output reg [WIDTH-1:0] q ); string name = "counter"; localparam val0 = 12'ha1f; localparam val1 = 12'h1fa; localparam val2 = 12'hfa1; // some child clock_buffer #(WIDTH) buffer_inst ( .clk(clk), .ce(ce), .reset(arst_n) ); // Simple gated up-counter with async clear always @(posedge clk or negedge arst_n) begin if (arst_n == 1'b0) begin q <= {WIDTH {1'b0}}; end else begin q <= q; if (ce == 1'b1) begin q <= q + 1; end end end function int add_one(int x); return x + 1; endfunction : add_one `ifdef SIMULATION initial $display("Hello %s", NAME); `endif endmodule : counter class my_data extends uvm_data; int x, y; function add_one(); x++; y++; endfunction : add_one endclass : my_data