📄 8x8multiplier.lis
字号:
c16 p16 0 1p
********************************************
********************************************
*** describe here the half_adder ***
********************************************
** input a b
** output s co
********************************************
.subckt half_adder a b s co m=1
mp1 1 a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp1 1 a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp2 1 b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp2 1 b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp3 co 1 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp3 co 1 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp4 4 1 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp4 4 1 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp5 3 a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp5 3 a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp6 4 b 3 vdd pmos l=0.25u w='0.25u*4*m'
mp6 4 b 3 vdd pmos l=0.25u w='0.25u*4*m'
mp7 s 4 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp7 s 4 vdd vdd pmos l=0.25u w='0.25u*4*m'
mn1 1 a 2 0 nmos l=0.25u w='0.25u*2*m'
mn2 2 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn2 2 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn3 co 1 0 0 nmos l=0.25u w='0.25u*2*m'
mn3 co 1 0 0 nmos l=0.25u w='0.25u*2*m'
mn4 4 1 5 0 nmos l=0.25u w='0.25u*2*m'
mn4 4 1 5 0 nmos l=0.25u w='0.25u*2*m'
mn5 5 a 0 0 nmos l=0.25u w='0.25u*2*m'
mn5 5 a 0 0 nmos l=0.25u w='0.25u*2*m'
mn6 5 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn6 5 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn7 s 4 0 0 nmos l=0.25u w='0.25u*2*m'
mn7 s 4 0 0 nmos l=0.25u w='0.25u*2*m'
.ends half_adder
.ends half_adder
********************************************
*** describe here the full_adder ***
********************************************
** input a b ci
** output s co
********************************************
.subckt full_adder a b ci s co m=1
m1 1 a vdd vdd pmos l=0.25u w='0.25u*4*m'
m1 1 a vdd vdd pmos l=0.25u w='0.25u*4*m'
m2 2 b 1 vdd pmos l=0.25u w='0.25u*4*m'
m2 2 b 1 vdd pmos l=0.25u w='0.25u*4*m'
m3 x a 2 vdd pmos l=0.25u w='0.25u*4*m'
m3 x a 2 vdd pmos l=0.25u w='0.25u*4*m'
m4 x ci 3 0 nmos l=0.25u w='0.25u*2*m'
m4 x ci 3 0 nmos l=0.25u w='0.25u*2*m'
m5 3 a 0 0 nmos l=0.25u w='0.25u*2*m'
m5 3 a 0 0 nmos l=0.25u w='0.25u*2*m'
m6 3 b 0 0 nmos l=0.25u w='0.25u*2*m'
m6 3 b 0 0 nmos l=0.25u w='0.25u*2*m'
m7 1 b vdd vdd pmos l=0.25u w='0.25u*4*m'
m7 1 b vdd vdd pmos l=0.25u w='0.25u*4*m'
m8 x ci 1 vdd pmos l=0.25u w='0.25u*4*m'
m8 x ci 1 vdd pmos l=0.25u w='0.25u*4*m'
m9 x a 4 0 nmos l=0.25u w='0.25u*2*m'
m9 x a 4 0 nmos l=0.25u w='0.25u*2*m'
m10 4 b 0 0 nmos l=0.25u w='0.25u*2*m'
m10 4 b 0 0 nmos l=0.25u w='0.25u*2*m'
m11 co x vdd vdd pmos l=0.25u w='0.25u*4*m'
m11 co x vdd vdd pmos l=0.25u w='0.25u*4*m'
m12 co x 0 0 nmos l=0.25u w='0.25u*2*m'
m12 co x 0 0 nmos l=0.25u w='0.25u*2*m'
m13 5 ci vdd vdd pmos l=0.25u w='0.25u*4*m'
m13 5 ci vdd vdd pmos l=0.25u w='0.25u*4*m'
m14 5 a vdd vdd pmos l=0.25u w='0.25u*4*m'
m14 5 a vdd vdd pmos l=0.25u w='0.25u*4*m'
m15 5 b vdd vdd pmos l=0.25u w='0.25u*4*m'
m15 5 b vdd vdd pmos l=0.25u w='0.25u*4*m'
m16 8 x 5 vdd pmos l=0.25u w='0.25u*4*m'
m16 8 x 5 vdd pmos l=0.25u w='0.25u*4*m'
m17 6 a 5 vdd pmos l=0.25u w='0.25u*4*m'
m17 6 a 5 vdd pmos l=0.25u w='0.25u*4*m'
m18 7 b 6 vdd pmos l=0.25u w='0.25u*4*m'
m18 7 b 6 vdd pmos l=0.25u w='0.25u*4*m'
m19 8 ci 7 vdd pmos l=0.25u w='0.25u*4*m'
m19 8 ci 7 vdd pmos l=0.25u w='0.25u*4*m'
m20 8 x 9 0 nmos l=0.25u w='0.25u*2*m'
m20 8 x 9 0 nmos l=0.25u w='0.25u*2*m'
m21 9 a 0 0 nmos l=0.25u w='0.25u*2*m'
m21 9 a 0 0 nmos l=0.25u w='0.25u*2*m'
m22 9 b 0 0 nmos l=0.25u w='0.25u*2*m'
m22 9 b 0 0 nmos l=0.25u w='0.25u*2*m'
m23 9 ci 0 0 nmos l=0.25u w='0.25u*2*m'
m23 9 ci 0 0 nmos l=0.25u w='0.25u*2*m'
m24 8 ci 10 0 nmos l=0.25u w='0.25u*2*m'
m24 8 ci 10 0 nmos l=0.25u w='0.25u*2*m'
m25 10 a 11 0 nmos l=0.25u w='0.25u*2*m'
m25 10 a 11 0 nmos l=0.25u w='0.25u*2*m'
m26 11 b 0 0 nmos l=0.25u w='0.25u*2*m'
m26 11 b 0 0 nmos l=0.25u w='0.25u*2*m'
m27 s 8 vdd vdd pmos l=0.25u w='0.25u*4*m'
m27 s 8 vdd vdd pmos l=0.25u w='0.25u*4*m'
m28 s 8 0 0 nmos l=0.25u w='0.25u*2*m'
m28 s 8 0 0 nmos l=0.25u w='0.25u*2*m'
.ends full_adder
.ends full_adder
********************************************
*** describe here the boothcoing ***
********************************************
** input a b c
** output yi y2i mi
********************************************
.subckt boothcoding a b c mi y2i yi m=4
mp1 1 c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp1 1 c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp2 1 b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp2 1 b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp3 4 1 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp3 4 1 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp4 3 c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp4 3 c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp5 4 b 3 vdd pmos l=0.25u w='0.25u*4*m'
mp5 4 b 3 vdd pmos l=0.25u w='0.25u*4*m'
mp6 yi 4 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp6 yi 4 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp7 c_ c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp7 c_ c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp8 b_ b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp8 b_ b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp9 a_ a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp9 a_ a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp10 6 c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp10 6 c vdd vdd pmos l=0.25u w='0.25u*4*m'
mp11 6 b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp11 6 b vdd vdd pmos l=0.25u w='0.25u*4*m'
mp12 6 a_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp12 6 a_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp13 9 c_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp13 9 c_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp14 9 b_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp14 9 b_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp15 9 a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp15 9 a vdd vdd pmos l=0.25u w='0.25u*4*m'
mp16 y2i 6 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp16 y2i 6 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp17 y2i 9 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp17 y2i 9 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp18 mi a_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mp18 mi a_ vdd vdd pmos l=0.25u w='0.25u*4*m'
mn1 1 c 2 0 nmos l=0.25u w='0.25u*2*m'
mn2 2 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn2 2 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn3 4 1 5 0 nmos l=0.25u w='0.25u*2*m'
mn3 4 1 5 0 nmos l=0.25u w='0.25u*2*m'
mn4 5 c 0 0 nmos l=0.25u w='0.25u*2*m'
mn4 5 c 0 0 nmos l=0.25u w='0.25u*2*m'
mn5 5 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn5 5 b 0 0 nmos l=0.25u w='0.25u*2*m'
mn6 yi 4 0 0 nmos l=0.25u w='0.25u*2*m'
mn6 yi 4 0 0 nmos l=0.25u w='0.25u*2*m'
mn7 c_ c 0 0 nmos l=0.25u w='0.25u*2*m'
mn7 c_ c 0 0 nmos l=0.25u w='0.25u*2*m'
mn8 b_ b 0 0 nmos l=0.25u w='0.25u*2*m'
mn8 b_ b 0 0 nmos l=0.25u w='0.25u*2*m'
mn9 a_ a 0 0 nmos l=0.25u w='0.25u*2*m'
mn9 a_ a 0 0 nmos l=0.25u w='0.25u*2*m'
mn10 8 c 0 0 nmos l=0.25u w='0.25u*2*m'
mn10 8 c 0 0 nmos l=0.25u w='0.25u*2*m'
mn11 7 b 8 0 nmos l=0.25u w='0.25u*2*m'
mn11 7 b 8 0 nmos l=0.25u w='0.25u*2*m'
mn12 6 a_ 7 0 nmos l=0.25u w='0.25u*2*m'
mn12 6 a_ 7 0 nmos l=0.25u w='0.25u*2*m'
mn13 9 c_ 10 0 nmos l=0.25u w='0.25u*2*m'
mn13 9 c_ 10 0 nmos l=0.25u w='0.25u*2*m'
mn14 10 b_ 11 0 nmos l=0.25u w='0.25u*2*m'
mn14 10 b_ 11 0 nmos l=0.25u w='0.25u*2*m'
mn15 11 a 0 0 nmos l=0.25u w='0.25u*2*m'
mn15 11 a 0 0 nmos l=0.25u w='0.25u*2*m'
mn16 y2i 6 12 0 nmos l=0.25u w='0.25u*2*m'
mn16 y2i 6 12 0 nmos l=0.25u w='0.25u*2*m'
mn17 12 9 0 0 nmos l=0.25u w='0.25u*2*m'
mn17 12 9 0 0 nmos l=0.25u w='0.25u*2*m'
mn18 mi a_ 0 0 nmos l=0.25u w='0.25u*2*m'
mn18 mi a_ 0 0 nmos l=0.25u w='0.25u*2*m'
.ends boothcoding
.ends boothcoding
********************************************
*** describe here the boothselector ***
********************************************
*the output is ppij
*the input is yi yj yj-1 y2i mi
*******************************************
.subckt boothselector yj yj-1 yi y2i mi ppij m=2
mp1 1 yi vdd vdd pmos l=0.25u w='0.25u*4*m'
mp1 1 yi vdd vdd pmos l=0.25u w='0.25u*4*m'
mp2 1 yj vdd vdd pmos l=0.25u w='0.25u*4*m'
mp2 1 yj vdd vdd pmos l=0.25u w='0.25u*4*m'
mp3 q yj-1 1 vdd pmos l=0.25u w='0.25u*4*m'
mp3 q yj-1 1 vdd pmos l=0.25u w='0.25u*4*m'
mp4 q y2i 1 vdd pmos l=0.25u w='0.25u*4*m'
mp4 q y2i 1 vdd pmos l=0.25u w='0.25u*4*m'
mp5 6 q vdd vdd pmos l=0.25u w='0.25u*4*m'
mp5 6 q vdd vdd pmos l=0.25u w='0.25u*4*m'
mp6 6 mi vdd vdd pmos l=0.25u w='0.25u*4*m'
mp6 6 mi vdd vdd pmos l=0.25u w='0.25u*4*m'
mp7 ppij 6 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp7 ppij 6 vdd vdd pmos l=0.25u w='0.25u*4*m'
mp8 7 q vdd vdd pmos l=0.25u w='0.25u*4*m'
mp8 7 q vdd vdd pmos l=0.25u w='0.25u*4*m'
mp9 ppij mi 7 vdd pmos l=0.25u w='0.25u*4*m'
mp9 ppij mi 7 vdd pmos l=0.25u w='0.25u*4*m'
mn1 q yi 3 0 nmos l=0.25u w='0.25u*2*m'
mn2 q yj-1 4 0 nmos l=0.25u w='0.25u*2*m'
mn2 q yj-1 4 0 nmos l=0.25u w='0.25u*2*m'
mn3 3 yj 0 0 nmos l=0.25u w='0.25u*2*m'
mn3 3 yj 0 0 nmos l=0.25u w='0.25u*2*m'
mn4 4 y2i 0 0 nmos l=0.25u w='0.25u*2*m'
mn4 4 y2i 0 0 nmos l=0.25u w='0.25u*2*m'
mn5 6 q 5 0 nmos l=0.25u w='0.25u*2*m'
mn5 6 q 5 0 nmos l=0.25u w='0.25u*2*m'
mn6 5 mi 0 0 nmos l=0.25u w='0.25u*2*m'
mn6 5 mi 0 0 nmos l=0.25u w='0.25u*2*m'
mn7 ppij 6 8 0 nmos l=0.25u w='0.25u*2*m'
mn7 ppij 6 8 0 nmos l=0.25u w='0.25u*2*m'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -