add resistor jumper to seperate ports
diff --git a/comparator/full_chip_sim.spice b/comparator/full_chip_sim.spice index a84615f..450dfec 100644 --- a/comparator/full_chip_sim.spice +++ b/comparator/full_chip_sim.spice
@@ -7,13 +7,13 @@ * instantiate the comparator X1 gpio_analog[0] gpio_analog[10] gpio_analog[11] + gpio_analog[12] gpio_analog[13] gpio_analog[14] gpio_analog[15] gpio_analog[16] -+ gpio_analog[1] gpio_analog[2] gpio_analog[3] gpio_analog[4] gpio_analog[5] gpio_analog[6] -+ gpio_analog[7] gpio_analog[8] gpio_analog[9] gpio_noesd[0] gpio_noesd[10] gpio_noesd[11] -+ gpio_noesd[12] gpio_noesd[13] gpio_noesd[14] gpio_noesd[15] gpio_noesd[16] gpio_noesd[17] -+ gpio_noesd[1] gpio_noesd[2] gpio_noesd[3] gpio_noesd[4] gpio_noesd[5] gpio_noesd[6] -+ gpio_noesd[7] gpio_noesd[8] gpio_noesd[9] io_analog[0] io_analog[10] io_analog[1] -+ io_analog[2] io_analog[3] io_analog[7] io_analog[8] io_analog[9] io_analog[4] io_analog[5] -+ io_analog[6] io_clamp_high[0] io_clamp_high[1] io_clamp_high[2] io_clamp_low[0] ++ gpio_analog[17] gpio_analog[1] gpio_analog[2] gpio_analog[3] gpio_analog[4] gpio_analog[5] ++ gpio_analog[6] gpio_analog[7] gpio_analog[8] gpio_analog[9] gpio_noesd[0] gpio_noesd[10] ++ gpio_noesd[11] gpio_noesd[12] gpio_noesd[13] gpio_noesd[14] gpio_noesd[15] gpio_noesd[16] ++ gpio_noesd[17] gpio_noesd[1] gpio_noesd[2] gpio_noesd[3] gpio_noesd[4] gpio_noesd[5] ++ gpio_noesd[6] gpio_noesd[7] gpio_noesd[8] gpio_noesd[9] io_analog[0] io_analog[10] ++ io_analog[1] io_analog[2] io_analog[3] io_analog[7] io_analog[8] io_analog[9] io_analog[4] ++ io_analog[5] io_analog[6] io_clamp_high[0] io_clamp_high[1] io_clamp_high[2] io_clamp_low[0] + io_clamp_low[1] io_clamp_low[2] io_in[0] io_in[10] io_in[11] io_in[12] io_in[13] + io_in[14] io_in[15] io_in[16] io_in[17] io_in[18] io_in[19] io_in[1] io_in[20] io_in[21] + io_in[22] io_in[23] io_in[24] io_in[25] io_in[26] io_in[2] io_in[3] io_in[4] io_in[5] @@ -132,7 +132,8 @@ R0 VP gpio_analog[14] 0 R1 VN gpio_analog[15] 0 R2 BIASN gpio_analog[16] 0 -R3 VOUT io_out[24] 0 +R3 VOUT gpio_analog[17] 0 +R4 VOUT_BUFF io_out[24] .tran 10e-12 200e-09 0e-00 *.dc VPin 0 3 0.002 VNin 0 3 0.2 @@ -141,7 +142,7 @@ run set color0 = white set color1 = black -plot VOUT VP VN VDD3v3 +plot VOUT VOUT_BUFF VP VN VDD3v3 *plot VPAMP VNAMP VI *plot VOP VON plot i(Vdd3v3) i(Vdd1v8)
diff --git a/comparator/user_analog_project_wrapper.spice b/comparator/user_analog_project_wrapper.spice index fa1638e..ee08c05 100644 --- a/comparator/user_analog_project_wrapper.spice +++ b/comparator/user_analog_project_wrapper.spice
@@ -2,13 +2,13 @@ .subckt user_analog_project_wrapper gpio_analog[0] gpio_analog[10] gpio_analog[11] + gpio_analog[12] gpio_analog[13] gpio_analog[14] gpio_analog[15] gpio_analog[16] -+ gpio_analog[1] gpio_analog[2] gpio_analog[3] gpio_analog[4] gpio_analog[5] gpio_analog[6] -+ gpio_analog[7] gpio_analog[8] gpio_analog[9] gpio_noesd[0] gpio_noesd[10] gpio_noesd[11] -+ gpio_noesd[12] gpio_noesd[13] gpio_noesd[14] gpio_noesd[15] gpio_noesd[16] gpio_noesd[17] -+ gpio_noesd[1] gpio_noesd[2] gpio_noesd[3] gpio_noesd[4] gpio_noesd[5] gpio_noesd[6] -+ gpio_noesd[7] gpio_noesd[8] gpio_noesd[9] io_analog[0] io_analog[10] io_analog[1] -+ io_analog[2] io_analog[3] io_analog[7] io_analog[8] io_analog[9] io_analog[4] io_analog[5] -+ io_analog[6] io_clamp_high[0] io_clamp_high[1] io_clamp_high[2] io_clamp_low[0] ++ gpio_analog[17] gpio_analog[1] gpio_analog[2] gpio_analog[3] gpio_analog[4] gpio_analog[5] ++ gpio_analog[6] gpio_analog[7] gpio_analog[8] gpio_analog[9] gpio_noesd[0] gpio_noesd[10] ++ gpio_noesd[11] gpio_noesd[12] gpio_noesd[13] gpio_noesd[14] gpio_noesd[15] gpio_noesd[16] ++ gpio_noesd[17] gpio_noesd[1] gpio_noesd[2] gpio_noesd[3] gpio_noesd[4] gpio_noesd[5] ++ gpio_noesd[6] gpio_noesd[7] gpio_noesd[8] gpio_noesd[9] io_analog[0] io_analog[10] ++ io_analog[1] io_analog[2] io_analog[3] io_analog[7] io_analog[8] io_analog[9] io_analog[4] ++ io_analog[5] io_analog[6] io_clamp_high[0] io_clamp_high[1] io_clamp_high[2] io_clamp_low[0] + io_clamp_low[1] io_clamp_low[2] io_in[0] io_in[10] io_in[11] io_in[12] io_in[13] + io_in[14] io_in[15] io_in[16] io_in[17] io_in[18] io_in[19] io_in[1] io_in[20] io_in[21] + io_in[22] io_in[23] io_in[24] io_in[25] io_in[26] io_in[2] io_in[3] io_in[4] io_in[5] @@ -106,10 +106,10 @@ + wbs_dat_o[30] wbs_dat_o[31] wbs_dat_o[3] wbs_dat_o[4] wbs_dat_o[5] wbs_dat_o[6] + wbs_dat_o[7] wbs_dat_o[8] wbs_dat_o[9] wbs_sel_i[0] wbs_sel_i[1] wbs_sel_i[2] wbs_sel_i[3] + wbs_stb_i wbs_we_i -C0 vdda2 vccd2 19.74fF -Xcomparator_0 vssd2 vdda2 vccd2 io_out[24] gpio_analog[16] gpio_analog[15] gpio_analog[14] +R0 io_out[24] gpio_analog[17] sky130_fd_pr__res_generic_m2 w=6e+06u l=6e+06u +C0 vccd2 vdda2 19.74fF +Xcomparator_0 vssd2 vdda2 vccd2 gpio_analog[17] gpio_analog[16] gpio_analog[15] gpio_analog[14] + comparator C1 vssa1 vssd2 2.35fF C2 vccd2 vssd2 20.99fF - .ends
diff --git a/gds/user_analog_project_wrapper.gds b/gds/user_analog_project_wrapper.gds index f87764d..d259b19 100644 --- a/gds/user_analog_project_wrapper.gds +++ b/gds/user_analog_project_wrapper.gds Binary files differ
diff --git a/mag/user_analog_project_wrapper.mag b/mag/user_analog_project_wrapper.mag index b2bd1fd..e7a8495 100644 --- a/mag/user_analog_project_wrapper.mag +++ b/mag/user_analog_project_wrapper.mag
@@ -1,6 +1,6 @@ magic tech sky130A -timestamp 1633704735 +timestamp 1633979100 << locali >> rect 3350 53100 3850 53250 rect 3650 53070 3850 53100 @@ -126,7 +126,8 @@ rect 3500 8700 4100 51000 rect 3500 8300 3600 8700 rect 4000 8300 4100 8700 -rect 3500 6300 4100 8300 +rect 3500 7600 4100 8300 +rect 3500 6300 4100 7000 rect 3500 5900 3600 6300 rect 4000 5900 4100 6300 rect 3500 5800 4100 5900 @@ -624,6 +625,8 @@ rect 290443 -400 290499 240 rect 291034 -400 291090 240 rect 291625 -400 291681 240 +<< rmetal2 >> +rect 3500 7000 4100 7600 << via2 >> rect 5700 317000 6300 319100 rect 4700 102600 5300 104600
diff --git a/netgen/comparator.spice b/netgen/comparator.spice new file mode 100644 index 0000000..4efcf0a --- /dev/null +++ b/netgen/comparator.spice
@@ -0,0 +1,26 @@ +* SPICE3 file created from comparator.ext - technology: sky130A + +.subckt comparator VGND VDD3v3 VDD1v8 VOUT BIASN VN VP +X0 VPAMP VP ISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X1 VGND BIASN ISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X2 VOPAMP VOP DIFFSINK VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=180000u +X3 DECISINK VON VOP VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X4 VON VNAMP VDD3v3 VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u +X5 ISINK VN VNAMP VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X6 DECISINK VOP VON VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X7 VDD1v8 VOPAMP VOUT VDD1v8 sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=2e+06u l=150000u +X8 DIFFSINK VONAMP VGND VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=180000u +X9 VPAMP VPAMP VDD3v3 VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u +X10 ISINK BIASN VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X11 DIFFSINK VON VONAMP VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=180000u +X12 VON VON DECISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X13 VOPAMP VONAMP VDD1v8 VDD1v8 sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=3e+06u l=180000u +X14 VOUT VOPAMP VGND VGND sky130_fd_pr__nfet_01v8 ad=0p pd=0u as=0p ps=0u w=1e+06u l=150000u +X15 VDD3v3 VNAMP VNAMP VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u +X16 VOP VOP DECISINK VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X17 DECISINK DECISINK VGND VGND sky130_fd_pr__nfet_03v3_nvt ad=0p pd=0u as=0p ps=0u w=1e+06u l=600000u +X18 VDD3v3 VPAMP VOP VDD3v3 sky130_fd_pr__pfet_g5v0d10v5 ad=0p pd=0u as=0p ps=0u w=1.5e+06u l=500000u +X19 VDD1v8 VONAMP VONAMP VDD1v8 sky130_fd_pr__pfet_01v8 ad=0p pd=0u as=0p ps=0u w=3e+06u l=180000u +C0 VOPAMP VGND 2.89fF +C1 VON VGND 2.03fF +.ends
diff --git a/netgen/user_analog_project_wrapper.spice b/netgen/user_analog_project_wrapper.spice index fa1638e..de62fdd 100644 --- a/netgen/user_analog_project_wrapper.spice +++ b/netgen/user_analog_project_wrapper.spice
@@ -1,14 +1,14 @@ * SPICE3 file created from user_analog_project_wrapper.ext - technology: sky130A - +.include comparator.spice .subckt user_analog_project_wrapper gpio_analog[0] gpio_analog[10] gpio_analog[11] + gpio_analog[12] gpio_analog[13] gpio_analog[14] gpio_analog[15] gpio_analog[16] -+ gpio_analog[1] gpio_analog[2] gpio_analog[3] gpio_analog[4] gpio_analog[5] gpio_analog[6] -+ gpio_analog[7] gpio_analog[8] gpio_analog[9] gpio_noesd[0] gpio_noesd[10] gpio_noesd[11] -+ gpio_noesd[12] gpio_noesd[13] gpio_noesd[14] gpio_noesd[15] gpio_noesd[16] gpio_noesd[17] -+ gpio_noesd[1] gpio_noesd[2] gpio_noesd[3] gpio_noesd[4] gpio_noesd[5] gpio_noesd[6] -+ gpio_noesd[7] gpio_noesd[8] gpio_noesd[9] io_analog[0] io_analog[10] io_analog[1] -+ io_analog[2] io_analog[3] io_analog[7] io_analog[8] io_analog[9] io_analog[4] io_analog[5] -+ io_analog[6] io_clamp_high[0] io_clamp_high[1] io_clamp_high[2] io_clamp_low[0] ++ gpio_analog[17] gpio_analog[1] gpio_analog[2] gpio_analog[3] gpio_analog[4] gpio_analog[5] ++ gpio_analog[6] gpio_analog[7] gpio_analog[8] gpio_analog[9] gpio_noesd[0] gpio_noesd[10] ++ gpio_noesd[11] gpio_noesd[12] gpio_noesd[13] gpio_noesd[14] gpio_noesd[15] gpio_noesd[16] ++ gpio_noesd[17] gpio_noesd[1] gpio_noesd[2] gpio_noesd[3] gpio_noesd[4] gpio_noesd[5] ++ gpio_noesd[6] gpio_noesd[7] gpio_noesd[8] gpio_noesd[9] io_analog[0] io_analog[10] ++ io_analog[1] io_analog[2] io_analog[3] io_analog[7] io_analog[8] io_analog[9] io_analog[4] ++ io_analog[5] io_analog[6] io_clamp_high[0] io_clamp_high[1] io_clamp_high[2] io_clamp_low[0] + io_clamp_low[1] io_clamp_low[2] io_in[0] io_in[10] io_in[11] io_in[12] io_in[13] + io_in[14] io_in[15] io_in[16] io_in[17] io_in[18] io_in[19] io_in[1] io_in[20] io_in[21] + io_in[22] io_in[23] io_in[24] io_in[25] io_in[26] io_in[2] io_in[3] io_in[4] io_in[5] @@ -106,10 +106,10 @@ + wbs_dat_o[30] wbs_dat_o[31] wbs_dat_o[3] wbs_dat_o[4] wbs_dat_o[5] wbs_dat_o[6] + wbs_dat_o[7] wbs_dat_o[8] wbs_dat_o[9] wbs_sel_i[0] wbs_sel_i[1] wbs_sel_i[2] wbs_sel_i[3] + wbs_stb_i wbs_we_i -C0 vdda2 vccd2 19.74fF -Xcomparator_0 vssd2 vdda2 vccd2 io_out[24] gpio_analog[16] gpio_analog[15] gpio_analog[14] +R0 io_out[24] gpio_analog[17] sky130_fd_pr__res_generic_m2 w=6e+06u l=6e+06u +C0 vccd2 vdda2 19.74fF +Xcomparator_0 vssd2 vdda2 vccd2 gpio_analog[17] gpio_analog[16] gpio_analog[15] gpio_analog[14] + comparator C1 vssa1 vssd2 2.35fF C2 vccd2 vssd2 20.99fF - .ends
diff --git a/verilog/dv/comparator/comparator.hex b/verilog/dv/comparator/comparator.hex deleted file mode 100644 index aee3f38..0000000 --- a/verilog/dv/comparator/comparator.hex +++ /dev/null
@@ -1,31 +0,0 @@ -@00000000 -93 00 00 00 93 01 00 00 13 02 00 00 93 02 00 00 -13 03 00 00 93 03 00 00 13 04 00 00 93 04 00 00 -13 05 00 00 93 05 00 00 13 06 00 00 93 06 00 00 -13 07 00 00 93 07 00 00 13 08 00 00 93 08 00 00 -13 09 00 00 93 09 00 00 13 0A 00 00 93 0A 00 00 -13 0B 00 00 93 0B 00 00 13 0C 00 00 93 0C 00 00 -13 0D 00 00 93 0D 00 00 13 0E 00 00 93 0E 00 00 -13 0F 00 00 93 0F 00 00 17 05 00 00 13 05 85 16 -93 05 00 00 13 06 00 00 63 D8 C5 00 14 41 94 C1 -11 05 91 05 E3 CC C5 FE 13 05 00 00 93 05 00 00 -63 57 B5 00 23 20 05 00 11 05 E3 4D B5 FE 71 28 -01 A0 01 00 B7 02 00 28 13 03 00 12 23 90 62 00 -A3 81 02 00 05 C6 21 4F 93 73 F6 0F 93 DE 73 00 -23 80 D2 01 93 EE 0E 01 23 80 D2 01 86 03 93 F3 -F3 0F 7D 1F E3 14 0F FE 23 80 62 00 A1 C9 13 0F -00 02 83 23 05 00 A1 4F 93 DE F3 01 23 80 D2 01 -93 EE 0E 01 23 80 D2 01 83 CE 02 00 93 FE 2E 00 -93 DE 1E 00 86 03 B3 E3 D3 01 7D 1F 63 17 0F 00 -23 20 75 00 11 05 83 23 05 00 FD 1F E3 96 0F FC -FD 15 F1 F1 63 04 0F 00 23 20 75 00 13 03 00 08 -A3 81 62 00 82 80 01 00 00 00 41 11 22 C6 00 08 -B7 07 00 24 29 67 09 07 98 C3 B7 07 00 26 B1 07 -23 A0 07 00 B7 07 00 26 C1 07 23 A0 07 00 B7 07 -00 26 93 87 07 09 09 67 13 07 87 80 98 C3 B7 07 -00 26 93 87 C7 08 09 67 13 07 87 80 98 C3 B7 07 -00 26 93 87 87 08 29 47 98 C3 B7 07 00 26 93 87 -47 05 09 67 13 07 87 80 98 C3 B7 07 00 26 93 87 -07 05 09 67 13 07 87 80 98 C3 B7 07 00 26 93 87 -C7 04 29 47 98 C3 B7 07 00 26 05 47 98 C3 01 00 -B7 07 00 26 98 43 85 47 E3 0C F7 FE 01 A0 00 00