3
`timescale 1ns / 1ps ////////////////////////////////////////////////////////////////////////////////// // Company: // Engineer: // // Create Date: 09:19:03 02/12/2015 // Design Name: // Module Name: hamm // Project Name: // Target Devices: // Tool versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // ////////////////////////////////////////////////////////////////////////////////// module hamm(out,in,reset ); parameter n=11,k=7; output[n-1:0] out; input[k-1:0] in;

Timescale 1ns

Embed Size (px)

DESCRIPTION

veilog code for hamming encoder

Citation preview

  • `timescale 1ns / 1ps

    //////////////////////////////////////////////////////////////////////////////////

    // Company:

    // Engineer:

    //

    // Create Date: 09:19:03 02/12/2015

    // Design Name:

    // Module Name: hamm

    // Project Name:

    // Target Devices:

    // Tool versions:

    // Description:

    //

    // Dependencies:

    //

    // Revision:

    // Revision 0.01 - File Created

    // Additional Comments:

    //

    //////////////////////////////////////////////////////////////////////////////////

    module hamm(out,in,reset

    );

    parameter n=11,k=7;

    output[n-1:0] out;

    input[k-1:0] in;

  • input reset;

    reg [n-1:0] out;

    integer i,j;

    always@(in or reset)

    begin

    if(reset)

    out=0;

    else

    begin i=0;j=0;

    while((i

  • out[3]=~out[3];

    if(^(out&11'b111_1000_0000))

    out[7]=~out[7];

    end

    end

    endmodule