|  |  | 
|  | module ctech_mux2x1 ( | 
|  | input  logic A0, | 
|  | input  logic A1, | 
|  | input  logic S , | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = (S) ? A1 : A0; | 
|  | `else | 
|  | sky130_fd_sc_hd__mux2_8 u_mux (.A0 (A0), .A1 (A1), .S  (S), .X (X)); | 
|  | `endif | 
|  |  | 
|  | endmodule | 
|  |  | 
|  | module ctech_mux2x1_2 ( | 
|  | input  logic A0, | 
|  | input  logic A1, | 
|  | input  logic S , | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = (S) ? A1 : A0; | 
|  | `else | 
|  | sky130_fd_sc_hd__mux2_2 u_mux (.A0 (A0), .A1 (A1), .S  (S), .X (X)); | 
|  | `endif | 
|  |  | 
|  | endmodule | 
|  |  | 
|  | module ctech_mux2x1_4 ( | 
|  | input  logic A0, | 
|  | input  logic A1, | 
|  | input  logic S , | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = (S) ? A1 : A0; | 
|  | `else | 
|  | sky130_fd_sc_hd__mux2_4 u_mux (.A0 (A0), .A1 (A1), .S  (S), .X (X)); | 
|  | `endif | 
|  |  | 
|  | endmodule | 
|  |  | 
|  | module ctech_buf ( | 
|  | input  logic A, | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = A; | 
|  | `else | 
|  | sky130_fd_sc_hd__bufbuf_8 u_buf  (.A(A),.X(X)); | 
|  | `endif | 
|  |  | 
|  | endmodule | 
|  |  | 
|  | module ctech_clk_buf ( | 
|  | input  logic A, | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = A; | 
|  | `else | 
|  | sky130_fd_sc_hd__clkbuf_8 u_buf  (.A(A),.X(X)); | 
|  | `endif | 
|  |  | 
|  | endmodule | 
|  |  | 
|  | module ctech_delay_buf ( | 
|  | input  logic A, | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = A; | 
|  | `else | 
|  | sky130_fd_sc_hd__dlygate4sd3_1 u_dly (.X(X),.A(A)); | 
|  | `endif | 
|  |  | 
|  | endmodule | 
|  |  | 
|  | module ctech_delay_clkbuf ( | 
|  | input  logic A, | 
|  | output logic X); | 
|  |  | 
|  | `ifndef SYNTHESIS | 
|  | assign X = A; | 
|  | `else | 
|  | sky130_fd_sc_hd__clkdlybuf4s15_2 u_dly (.X(X),.A(A)); | 
|  | `endif | 
|  |  | 
|  | endmodule |