diff --git a/sky130/Makefile.in b/sky130/Makefile.in
index 334d040..32feebe 100644
--- a/sky130/Makefile.in
+++ b/sky130/Makefile.in
@@ -449,6 +449,8 @@
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/latch_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hd/latch_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/mux2_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hd/mux2_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/mux4_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hd/mux4_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/fa_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hd/fa_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/rca_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hd/rca_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/config.tcl > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/config.tcl
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/tracks.info > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/tracks.info
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/no_synth.cells > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/no_synth.cells
@@ -456,6 +458,8 @@
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/latch_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/latch_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/mux2_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/mux2_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/mux4_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/mux4_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/fa_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/fa_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/rca_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hs/rca_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/config.tcl > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/config.tcl
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/tracks.info > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/tracks.info
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/no_synth.cells > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/no_synth.cells
@@ -463,6 +467,8 @@
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/latch_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/latch_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/mux2_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/mux2_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/mux4_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/mux4_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/fa_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/fa_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/rca_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ms/rca_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/config.tcl > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/config.tcl
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/tracks.info > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/tracks.info
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/no_synth.cells > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/no_synth.cells
@@ -470,12 +476,16 @@
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/latch_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/latch_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/mux2_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/mux2_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/mux4_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/mux4_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/fa_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/fa_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/rca_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_ls/rca_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/config.tcl > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/config.tcl
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/tracks.info > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/tracks.info
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/no_synth.cells > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/no_synth.cells
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/tribuff_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/tribuff_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/latch_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/latch_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/mux2_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/mux2_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/fa_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/fa_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/rca_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/rca_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/config.tcl > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/config.tcl
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/tracks.info > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/tracks.info
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/no_synth.cells > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/no_synth.cells	
@@ -483,6 +493,8 @@
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/latch_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/latch_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/mux2_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/mux2_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/mux4_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/mux4_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/fa_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/fa_map.v
+	${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/rca_map.v > ${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/rca_map.v
 	${CPP} ${SKY130A_DEFS} openlane/sky130_osu_sc_t18/config.tcl > ${OPENLANE_STAGING_A}/sky130_osu_sc_t18/config.tcl
 	${CPP} ${SKY130A_DEFS} openlane/sky130_osu_sc_t18/tracks.info > ${OPENLANE_STAGING_A}/sky130_osu_sc_t18/tracks.info
 
diff --git a/sky130/openlane/config.tcl b/sky130/openlane/config.tcl
index e5be7e7..78548de 100755
--- a/sky130/openlane/config.tcl
+++ b/sky130/openlane/config.tcl
@@ -78,6 +78,12 @@
 # Tri-state buffer mapping
 set ::env(TRISTATE_BUFFER_MAP) "$::env(PDK_ROOT)/$::env(PDK)/libs.tech/openlane/$::env(STD_CELL_LIBRARY)/tribuff_map.v"
 
+# Full adder mapping
+set ::env(FULL_ADDER_MAP) "$::env(PDK_ROOT)/$::env(PDK)/libs.tech/openlane/$::env(STD_CELL_LIBRARY)/fa_map.v"
+
+# Ripple carry adder mapping
+set ::env(RIPPLE_CARRY_ADDER_MAP) "$::env(PDK_ROOT)/$::env(PDK)/libs.tech/openlane/$::env(STD_CELL_LIBRARY)/rca_map.v"
+
 set ::env(GLB_RT_L1_ADJUSTMENT) 0.99
 
 # Extra PDN configs
diff --git a/sky130/openlane/sky130_fd_sc_hd/fa_map.v b/sky130/openlane/sky130_fd_sc_hd/fa_map.v
new file mode 100644
index 0000000..f040b34
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hd/fa_map.v
@@ -0,0 +1,19 @@
+`define FA_CELL         sky130_fd_sc_hd__fa_1 
+
+(* techmap_celltype = "$fa" *)
+module _90_fa (A, B, C, X, Y);
+	parameter WIDTH = 1;
+
+	(* force_downto *)
+	input [WIDTH-1:0] A, B, C;
+	(* force_downto *)
+	output [WIDTH-1:0] X, Y;
+
+	(* force_downto *)
+	wire [WIDTH-1:0] t1, t2, t3;
+
+    wire _TECHMAP_FAIL_ = WIDTH > 1;
+
+    `FA_CELL FA ( .COUT(X), .CIN(C), .A(A), .B(B), .SUM(Y) );
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hd/rca_map.v b/sky130/openlane/sky130_fd_sc_hd/rca_map.v
new file mode 100644
index 0000000..54807be
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hd/rca_map.v
@@ -0,0 +1,84 @@
+`define FA_CELL         sky130_fd_sc_hd__fa_1 
+
+(* techmap_celltype = "$add" *)
+module sky130_rca (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = B_buf; 
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b0};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
+
+(* techmap_celltype = "$sub" *)
+module sky130_rca_sub (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	//input CI, BI;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = ~B_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b1};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hdll/fa_map.v b/sky130/openlane/sky130_fd_sc_hdll/fa_map.v
new file mode 100644
index 0000000..4236d91
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hdll/fa_map.v
@@ -0,0 +1,19 @@
+`define FA_CELL         sky130_fd_sc_hdll__fa_1 
+
+(* techmap_celltype = "$fa" *)
+module _90_fa (A, B, C, X, Y);
+	parameter WIDTH = 1;
+
+	(* force_downto *)
+	input [WIDTH-1:0] A, B, C;
+	(* force_downto *)
+	output [WIDTH-1:0] X, Y;
+
+	(* force_downto *)
+	wire [WIDTH-1:0] t1, t2, t3;
+
+    wire _TECHMAP_FAIL_ = WIDTH > 1;
+
+    `FA_CELL FA ( .COUT(X), .CIN(C), .A(A), .B(B), .SUM(Y) );
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hdll/rca_map.v b/sky130/openlane/sky130_fd_sc_hdll/rca_map.v
new file mode 100644
index 0000000..cf6dfba
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hdll/rca_map.v
@@ -0,0 +1,84 @@
+`define FA_CELL         sky130_fd_sc_hdll__fa_1 
+
+(* techmap_celltype = "$add" *)
+module sky130_rca (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = B_buf; 
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b0};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
+
+(* techmap_celltype = "$sub" *)
+module sky130_rca_sub (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	//input CI, BI;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = ~B_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b1};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hs/fa_map.v b/sky130/openlane/sky130_fd_sc_hs/fa_map.v
new file mode 100644
index 0000000..0102b63
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hs/fa_map.v
@@ -0,0 +1,19 @@
+`define FA_CELL         sky130_fd_sc_hs__fa_1 
+
+(* techmap_celltype = "$fa" *)
+module _90_fa (A, B, C, X, Y);
+	parameter WIDTH = 1;
+
+	(* force_downto *)
+	input [WIDTH-1:0] A, B, C;
+	(* force_downto *)
+	output [WIDTH-1:0] X, Y;
+
+	(* force_downto *)
+	wire [WIDTH-1:0] t1, t2, t3;
+
+    wire _TECHMAP_FAIL_ = WIDTH > 1;
+
+    `FA_CELL FA ( .COUT(X), .CIN(C), .A(A), .B(B), .SUM(Y) );
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hs/rca_map.v b/sky130/openlane/sky130_fd_sc_hs/rca_map.v
new file mode 100644
index 0000000..d1e9e58
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hs/rca_map.v
@@ -0,0 +1,84 @@
+`define FA_CELL         sky130_fd_sc_hs__fa_1 
+
+(* techmap_celltype = "$add" *)
+module sky130_rca (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = B_buf; 
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b0};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
+
+(* techmap_celltype = "$sub" *)
+module sky130_rca_sub (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	//input CI, BI;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = ~B_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b1};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hvl/fa_map.v b/sky130/openlane/sky130_fd_sc_hvl/fa_map.v
new file mode 100644
index 0000000..a24a928
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hvl/fa_map.v
@@ -0,0 +1,19 @@
+`define FA_CELL         sky130_fd_sc_hvl__fa_1 
+
+(* techmap_celltype = "$fa" *)
+module _90_fa (A, B, C, X, Y);
+	parameter WIDTH = 1;
+
+	(* force_downto *)
+	input [WIDTH-1:0] A, B, C;
+	(* force_downto *)
+	output [WIDTH-1:0] X, Y;
+
+	(* force_downto *)
+	wire [WIDTH-1:0] t1, t2, t3;
+
+    wire _TECHMAP_FAIL_ = WIDTH > 1;
+
+    `FA_CELL FA ( .COUT(X), .CIN(C), .A(A), .B(B), .SUM(Y) );
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_hvl/rca_map.v b/sky130/openlane/sky130_fd_sc_hvl/rca_map.v
new file mode 100644
index 0000000..47a8e82
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_hvl/rca_map.v
@@ -0,0 +1,84 @@
+`define FA_CELL         sky130_fd_sc_hvl__fa_1 
+
+(* techmap_celltype = "$add" *)
+module sky130_rca (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = B_buf; 
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b0};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
+
+(* techmap_celltype = "$sub" *)
+module sky130_rca_sub (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	//input CI, BI;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = ~B_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b1};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_ls/fa_map.v b/sky130/openlane/sky130_fd_sc_ls/fa_map.v
new file mode 100644
index 0000000..e9f70e0
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_ls/fa_map.v
@@ -0,0 +1,19 @@
+`define FA_CELL         sky130_fd_sc_ls__fa_1 
+
+(* techmap_celltype = "$fa" *)
+module _90_fa (A, B, C, X, Y);
+	parameter WIDTH = 1;
+
+	(* force_downto *)
+	input [WIDTH-1:0] A, B, C;
+	(* force_downto *)
+	output [WIDTH-1:0] X, Y;
+
+	(* force_downto *)
+	wire [WIDTH-1:0] t1, t2, t3;
+
+    wire _TECHMAP_FAIL_ = WIDTH > 1;
+
+    `FA_CELL FA ( .COUT(X), .CIN(C), .A(A), .B(B), .SUM(Y) );
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_ls/rca_map.v b/sky130/openlane/sky130_fd_sc_ls/rca_map.v
new file mode 100644
index 0000000..878c7a1
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_ls/rca_map.v
@@ -0,0 +1,84 @@
+`define FA_CELL         sky130_fd_sc_ls__fa_1 
+
+(* techmap_celltype = "$add" *)
+module sky130_rca (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = B_buf; 
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b0};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
+
+(* techmap_celltype = "$sub" *)
+module sky130_rca_sub (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	//input CI, BI;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = ~B_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b1};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_ms/fa_map.v b/sky130/openlane/sky130_fd_sc_ms/fa_map.v
new file mode 100644
index 0000000..a847f37
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_ms/fa_map.v
@@ -0,0 +1,19 @@
+`define FA_CELL         sky130_fd_sc_ms__fa_1 
+
+(* techmap_celltype = "$fa" *)
+module _90_fa (A, B, C, X, Y);
+	parameter WIDTH = 1;
+
+	(* force_downto *)
+	input [WIDTH-1:0] A, B, C;
+	(* force_downto *)
+	output [WIDTH-1:0] X, Y;
+
+	(* force_downto *)
+	wire [WIDTH-1:0] t1, t2, t3;
+
+    wire _TECHMAP_FAIL_ = WIDTH > 1;
+
+    `FA_CELL FA ( .COUT(X), .CIN(C), .A(A), .B(B), .SUM(Y) );
+
+endmodule
diff --git a/sky130/openlane/sky130_fd_sc_ms/rca_map.v b/sky130/openlane/sky130_fd_sc_ms/rca_map.v
new file mode 100644
index 0000000..cf6dfba
--- /dev/null
+++ b/sky130/openlane/sky130_fd_sc_ms/rca_map.v
@@ -0,0 +1,84 @@
+`define FA_CELL         sky130_fd_sc_hdll__fa_1 
+
+(* techmap_celltype = "$add" *)
+module sky130_rca (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = B_buf; 
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b0};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
+
+(* techmap_celltype = "$sub" *)
+module sky130_rca_sub (A, B, Y);
+	parameter A_SIGNED = 0;
+	parameter B_SIGNED = 0;
+	parameter A_WIDTH = 1;
+	parameter B_WIDTH = 1;
+	parameter Y_WIDTH = 1;
+
+	(* force_downto *)
+	input [A_WIDTH-1:0] A;
+	(* force_downto *)
+	input [B_WIDTH-1:0] B;
+	(* force_downto *)
+	output [Y_WIDTH-1:0] Y;
+
+	//input CI, BI;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] CO;
+
+	wire _TECHMAP_FAIL_ = Y_WIDTH <= 2;
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] A_buf, B_buf;
+	\$pos #(.A_SIGNED(A_SIGNED), .A_WIDTH(A_WIDTH), .Y_WIDTH(Y_WIDTH)) A_conv (.A(A), .Y(A_buf));
+	\$pos #(.A_SIGNED(B_SIGNED), .A_WIDTH(B_WIDTH), .Y_WIDTH(Y_WIDTH)) B_conv (.A(B), .Y(B_buf));
+
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] AA = A_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] BB = ~B_buf;
+	(* force_downto *)
+	wire [Y_WIDTH-1:0] C = {CO, 1'b1};
+
+    
+    generate 
+		genvar i;
+		for(i=0; i<Y_WIDTH; i=i+1) begin: stage
+			`FA_CELL FA ( .COUT(CO[i]), .CIN(C[i]), .A(AA[i]), .B(BB[i]), .SUM(Y[i]) );
+        end endgenerate
+
+endmodule
