`timescale 1ns /10ps

module prbs_31_10bit_quad (
    Reset_n           ,
    Tclk             ,
    Rclk_0             ,
    Rclk_1             ,
    Rclk_2             ,
    Rclk_3             ,
    Enable            ,
    D_In_0              ,
    D_In_1              ,
    D_In_2              ,
    D_In_3              ,
    Err_Inj           ,
    D_Out             ,
    Error_0             ,
    Error_1             ,
    Error_2             ,
    Error_3             ,
    ErrorCnt_0          ,
    ErrorCnt_1          ,
    ErrorCnt_2          ,
    ErrorCnt_3          ,
    ClearErrorCnt          
);

input Reset_n;
input Tclk;
input Rclk_0;
input Rclk_1;
input Rclk_2;
input Rclk_3;
input Enable;
input Err_Inj;
input ClearErrorCnt;

//DATA IN 
input [9:0]  D_In_0;
input [9:0]  D_In_1;
input [9:0]  D_In_2;
input [9:0]  D_In_3;

//DATA OUT 
output [9:0]  D_Out;



//Error 
output [7:0]  ErrorCnt_0;
output [7:0]  ErrorCnt_1;
output [7:0]  ErrorCnt_2;
output [7:0]  ErrorCnt_3;

//Error 
output  Error_0;
output  Error_1;
output  Error_2;
output  Error_3;



prbs_31_10bit prbs_31_10bit_gen (

    .Reset_n(Reset_n),
    .Clock(Tclk),
    .Enable(Enable),
    .D_In(10'd0),
    .Lock(1'b1),
    .Err_Inj(Err_Inj),
    .D_Out(D_Out),
    .ErrorCnt(),
    .ClearErrorCnt(1'b0),
    .Error()
    );



prbs_31_10bit prbs_31_10bit_chk_0 (

    .Reset_n(Reset_n),
    .Clock(Rclk_0),
    .Enable(Enable),
    .D_In(D_In_0),
    .Lock(1'b0),
    .Err_Inj(1'b0),
    .D_Out(),
    .Error(Error_0),
    .ClearErrorCnt(ClearErrorCnt),
    .ErrorCnt(ErrorCnt_0)
    );


prbs_31_10bit prbs_31_10bit_chk_1 (

    .Reset_n(Reset_n),
    .Clock(Rclk_1),
    .Enable(Enable),
    .D_In(D_In_1),
    .Lock(1'b0),
    .Err_Inj(1'b0),
    .D_Out(),
    .Error(Error_1),
    .ClearErrorCnt(ClearErrorCnt),
    .ErrorCnt(ErrorCnt_1)
    );



prbs_31_10bit prbs_31_10bit_chk_2 (

    .Reset_n(Reset_n),
    .Clock(Rclk_2),
    .Enable(Enable),
    .D_In(D_In_2),
    .Lock(1'b0),
    .Err_Inj(1'b0),
    .D_Out(),
    .Error(Error_2),
    .ClearErrorCnt(ClearErrorCnt),
    .ErrorCnt(ErrorCnt_2)
    );



prbs_31_10bit prbs_31_10bit_chk_3 (

    .Reset_n(Reset_n),
    .Clock(Rclk_3),
    .Enable(Enable),
    .D_In(D_In_3),
    .Lock(1'b0),
    .Err_Inj(1'b0),
    .D_Out(),
    .Error(Error_3),
    .ClearErrorCnt(ClearErrorCnt),
    .ErrorCnt(ErrorCnt_3)
    );

endmodule
