OpenCores
URL https://opencores.org/ocsvn/freq_div/freq_div/trunk

Subversion Repositories freq_div

[/] [freq_div/] [trunk/] [rtl/] [even.v] - Diff between revs 2 and 3

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 2 Rev 3
 
 
`include "defines.v"
`include "defines.v"
 
 
module even(clk, out, P, reset, not_zero);
module even(clk, out, P, reset, not_zero, enable);
 
 
        input clk;
        input clk;
        output out;
        output out;
        input [`SIZE-1:0] P;
        input [`SIZE-1:0] P;
        input reset;
        input reset;
        input not_zero;
        input not_zero;
 
        input enable;
 
 
        reg [`SIZE-1:0] counter;
        reg [`SIZE-1:0] counter;
        reg out_counter;
        reg out_counter;
        wire [`SIZE-1:0] div_2;
        wire [`SIZE-1:0] div_2;
 
 
 
 
        assign out = (clk & !not_zero) | (out_counter & not_zero);
        assign out = (clk & !not_zero) | (out_counter & not_zero);
        assign div_2 = {1'b0, P[`SIZE-1:1]};
        assign div_2 = {1'b0, P[`SIZE-1:1]};
 
 
        always @(posedge reset or posedge clk)
        always @(posedge reset or posedge clk)
        begin
        begin
                if(reset)
                if(reset)
                begin
                begin
                        counter <= 1;
                        counter <= 1;
                        out_counter <= 1;
                        out_counter <= 1;
                end
                end
                else
                else if(enable)
                begin
                begin
                        if(counter == 1)
                        if(counter == 1)
                        begin
                        begin
                                counter <= div_2;
                                counter <= div_2;
                                out_counter <= ~out_counter;
                                out_counter <= ~out_counter;
                        end
                        end
                        else
                        else
                        begin
                        begin
                                counter <= counter-1;
                                counter <= counter-1;
                        end
                        end
                end
                end
        end
        end
 
 
endmodule //even
endmodule //even
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.