⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 8x8multiplier.lis

📁 用spice描述的8x8改进Booth码加wallance压缩的乘法器
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 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 + -