blob: 19cdb52793db3f2def02ab96e19467dd3cc4e6f8 [file] [log] [blame]
.model adder_test
.inputs top^a~0 top^a~1 top^a~2 top^a~3 top^a~4 top^a~5 top^a~6 top^a~7 top^a~8 \
top^a~9 top^a~10 top^a~11 top^a~12 top^a~13 top^a~14 top^a~15 top^b~0 top^b~1 \
top^b~2 top^b~3 top^b~4 top^b~5 top^b~6 top^b~7 top^b~8 top^b~9 top^b~10 \
top^b~11 top^b~12 top^b~13 top^b~14 top^b~15
.outputs top^c~0 top^c~1 top^c~2 top^c~3 top^c~4 top^c~5 top^c~6 top^c~7\
top^c~8 top^c~9 top^c~10 top^c~11 top^c~12 top^c~13 top^c~14 top^c~15 top^d~0\
top^d~1 top^d~2 top^d~3 top^d~4 top^d~5 top^d~6 top^d~7 top^d~8 top^d~9\
top^d~10 top^d~11 top^d~12 top^d~13 top^d~14 top^d~15
.names unconn
.subckt adder a[0]=top^a~0 a[1]=top^a~1 a[2]=top^a~2 a[3]=top^a~3 b[0]=top^b~0\
b[1]=top^b~1 b[2]=top^b~2 b[3]=top^b~3 cin[0]=unconn sumout[0]=top^ADD~0-0[0]\
sumout[1]=top^ADD~0-0[1] sumout[2]=top^ADD~0-0[2] sumout[3]=top^ADD~0-0[3]\
cout[0]=top^ADD~0-0[4]
.subckt adder a[0]=top^ADD~0-0[0] a[1]=top^ADD~0-0[1] a[2]=top^ADD~0-0[2]\
a[3]=top^ADD~0-0[3] b[0]=top^b~0 b[1]=top^b~1 b[2]=top^b~2 b[3]=top^b~3\
cin[0]=unconn sumout[0]=top^ADD~17-0[0] sumout[1]=top^ADD~17-0[1]\
sumout[2]=top^ADD~17-0[2] sumout[3]=top^ADD~17-0[3] cout[0]=top^ADD~17-0[4]
.subckt adder a[0]=top^ADD~0-1[0] a[1]=top^ADD~0-1[1] a[2]=top^ADD~0-1[2]\
a[3]=top^ADD~0-1[3] b[0]=top^b~4 b[1]=top^b~5 b[2]=top^b~6 b[3]=top^b~7\
cin[0]=top^ADD~17-0[4] sumout[0]=top^ADD~17-1[0] sumout[1]=top^ADD~17-1[1]\
sumout[2]=top^ADD~17-1[2] sumout[3]=top^ADD~17-1[3] cout[0]=top^ADD~17-1[4]
.subckt adder a[0]=top^ADD~0-2[0] a[1]=top^ADD~0-2[1] a[2]=top^ADD~0-2[2]\
a[3]=top^ADD~0-2[3] b[0]=top^b~8 b[1]=top^b~9 b[2]=top^b~10 b[3]=top^b~11\
cin[0]=top^ADD~17-1[4] sumout[0]=top^ADD~17-2[0] sumout[1]=top^ADD~17-2[1]\
sumout[2]=top^ADD~17-2[2] sumout[3]=top^ADD~17-2[3] cout[0]=top^ADD~17-2[4]
.subckt adder a[0]=top^ADD~0-3[0] a[1]=top^ADD~0-3[1] a[2]=top^ADD~0-3[2]\
a[3]=top^ADD~0-3[3] b[0]=top^b~12 b[1]=top^b~13 b[2]=top^b~14 b[3]=top^b~15\
cin[0]=top^ADD~17-2[4] sumout[0]=top^ADD~17-3[0] sumout[1]=top^ADD~17-3[1]\
sumout[2]=top^ADD~17-3[2] sumout[3]=top^ADD~17-3[3] cout[0]=top^ADD~17-3[4]
.subckt adder a[0]=top^a~4 a[1]=top^a~5 a[2]=top^a~6 a[3]=top^a~7 b[0]=top^b~4\
b[1]=top^b~5 b[2]=top^b~6 b[3]=top^b~7 cin[0]=top^ADD~0-0[4]\
sumout[0]=top^ADD~0-1[0] sumout[1]=top^ADD~0-1[1] sumout[2]=top^ADD~0-1[2]\
sumout[3]=top^ADD~0-1[3] cout[0]=top^ADD~0-1[4]
.subckt adder a[0]=top^a~8 a[1]=top^a~9 a[2]=top^a~10 a[3]=top^a~11\
b[0]=top^b~8 b[1]=top^b~9 b[2]=top^b~10 b[3]=top^b~11 cin[0]=top^ADD~0-1[4]\
sumout[0]=top^ADD~0-2[0] sumout[1]=top^ADD~0-2[1] sumout[2]=top^ADD~0-2[2]\
sumout[3]=top^ADD~0-2[3] cout[0]=top^ADD~0-2[4]
.subckt adder a[0]=top^a~12 a[1]=top^a~13 a[2]=top^a~14 a[3]=top^a~15\
b[0]=top^b~12 b[1]=top^b~13 b[2]=top^b~14 b[3]=top^b~15 cin[0]=top^ADD~0-2[4]\
sumout[0]=top^ADD~0-3[0] sumout[1]=top^ADD~0-3[1] sumout[2]=top^ADD~0-3[2]\
sumout[3]=top^ADD~0-3[3] cout[0]=top^ADD~0-3[4]
.names top^ADD~0-0[0] top^c~0
1 1
.names top^ADD~0-0[1] top^c~1
1 1
.names top^ADD~0-0[2] top^c~2
1 1
.names top^ADD~0-0[3] top^c~3
1 1
.names top^ADD~0-1[0] top^c~4
1 1
.names top^ADD~0-1[1] top^c~5
1 1
.names top^ADD~0-1[2] top^c~6
1 1
.names top^ADD~0-1[3] top^c~7
1 1
.names top^ADD~0-2[0] top^c~8
1 1
.names top^ADD~0-2[1] top^c~9
1 1
.names top^ADD~0-2[2] top^c~10
1 1
.names top^ADD~0-2[3] top^c~11
1 1
.names top^ADD~0-3[0] top^c~12
1 1
.names top^ADD~0-3[1] top^c~13
1 1
.names top^ADD~0-3[2] top^c~14
1 1
.names top^ADD~0-3[3] top^c~15
1 1
.names top^ADD~17-0[0] top^d~0
1 1
.names top^ADD~17-0[1] top^d~1
1 1
.names top^ADD~17-0[2] top^d~2
1 1
.names top^ADD~17-0[3] top^d~3
1 1
.names top^ADD~17-1[0] top^d~4
1 1
.names top^ADD~17-1[1] top^d~5
1 1
.names top^ADD~17-1[2] top^d~6
1 1
.names top^ADD~17-1[3] top^d~7
1 1
.names top^ADD~17-2[0] top^d~8
1 1
.names top^ADD~17-2[1] top^d~9
1 1
.names top^ADD~17-2[2] top^d~10
1 1
.names top^ADD~17-2[3] top^d~11
1 1
.names top^ADD~17-3[0] top^d~12
1 1
.names top^ADD~17-3[1] top^d~13
1 1
.names top^ADD~17-3[2] top^d~14
1 1
.names top^ADD~17-3[3] top^d~15
1 1
.end
.model adder
.inputs a[0] a[1] a[2] a[3] b[0] b[1] b[2] b[3] cin[0]
.outputs sumout[0] sumout[1] sumout[2] sumout[3] cout[0]
.blackbox
.end