module  NCO(
                    clk,
                    rstn,
                    phase_manual_clr,
                    phase_auto_clr,
                    fcw,
                    pha,

                    cos,
                    
                    sin
                );

input               clk;
input               rstn;
input               phase_manual_clr;
input               phase_auto_clr;
input   [47:0]      fcw;
input   [15:0]      pha;

output   [15:0]     cos;         
output   [15:0]     sin;


wire	      clr_acc;
wire	      clr_fix;
assign        clr_acc = phase_auto_clr | phase_manual_clr;    
assign        clr_fix = phase_manual_clr;

wire		[15:0]	    s1_i_o;
wire		[15:0]	    s2_i_o;
wire		[15:0]	    s3_i_o;

P_NCO		inst_p_nco(
                 			.clk		(clk	        ),
                 			.rstn		(rstn	        ),
                 			.clr		(clr_fix        ),
                 			.clr_acc	(clr_acc        ),
                 			.pha		(pha	        ),
		 			.s1		(s1_i_o	        ),
		 			.s2		(s2_i_o	        ),
		 			.s3		(s3_i_o	        ),
		 			.s1_o		(s1_i_o	        ),
		 			.s2_o		(s2_i_o	        ),
		 			.s3_o		(s3_i_o	        ),
     		 			.fcw		(fcw	        ),
                 			.cos		(cos	        ),
                 			.sin		(sin	        )                                      

				);
endmodule                   
