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

📄 multiplier_top_bak.v

📁 8*8乘法器及其测试:采用booth编码的乘法器:1. ultipler_quick_add_4 即4位的并行全加器
💻 V
📖 第 1 页 / 共 3 页
字号:

multiplier_unit         multiplier_unit_2_1(
   .y                        (Y2),
   .x                        (ONE),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_2[1]),
   .sumin                    (sumout_1[1]),
   .sumout                   (sumout_2[1]),
   .cin1                     (cout1_2[0]),
   .cin2                     (ZERO),
   .cin3                     (c_2[0]),
   .cout1                    (cout1_2[1]),
   .cout2                    (cout2_2[1]),
   .c                        (c_2[1])
   );      

multiplier_unit         multiplier_unit_2_2(
   .y                        (Y2),
   .x                        (ONE),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_2[2]),
   .sumin                    (sumout_1[2]),
   .sumout                   (sumout_2[2]),
   .cin1                     (cout1_2[1]),
   .cin2                     (cout2_2[0]),
   .cin3                     (c_2[1]),
   .cout1                    (cout1_2[2]),
   .cout2                    (cout2_2[2]),
   .c                        (c_2[2])
   );      

multiplier_unit         multiplier_unit_2_3(
   .y                        (p[6:3]),
   .x                        (x[0]),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_2[3]),
   .sumin                    (sumout_1[3]),
   .sumout                   (sumout_2[3]),
   .cin1                     (cout1_2[2]),
   .cin2                     (cout2_2[1]),
   .cin3                     (c_2[2]),
   .cout1                    (cout1_2[3]),
   .cout2                    (cout2_2[3]),
   .c                        (c_2[3])
   );      


multiplier_unit         multiplier_unit_2_4(
   .y                        (p[6:3]),
   .x                        (x[1]),
   .shiftin1                 (shiftout_2[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_2[4]),
   .sumin                    (sumout_1[4]),
   .sumout                   (sumout_2[4]),
   .cin1                     (cout1_2[3]),
   .cin2                     (cout2_2[2]),
   .cin3                     (c_2[3]),
   .cout1                    (cout1_2[4]),
   .cout2                    (cout2_2[4]),
   .c                        (c_2[4])
   );      
   
   
multiplier_unit         multiplier_unit_2_5(
   .y                        (p[6:3]),
   .x                        (x[2]),
   .shiftin1                 (shiftout_2[4]),
   .shiftin2                 (shiftout_2[3]),
   .shiftout                 (shiftout_2[5]),
   .sumin                    (sumout_1[5]),
   .sumout                   (sumout_2[5]),
   .cin1                     (cout1_2[4]),
   .cin2                     (cout2_2[3]),
   .cin3                     (c_2[4]),
   .cout1                    (cout1_2[5]),
   .cout2                    (cout2_2[5]),
   .c                        (c_2[5])
   );         
   

multiplier_unit         multiplier_unit_2_6(
   .y                        (p[6:3]),
   .x                        (x[3]),
   .shiftin1                 (shiftout_2[5]),
   .shiftin2                 (shiftout_2[4]),
   .shiftout                 (shiftout_2[6]),
   .sumin                    (sumout_1[6]),
   .sumout                   (sumout_2[6]),
   .cin1                     (cout1_2[5]),
   .cin2                     (cout2_2[4]),
   .cin3                     (c_2[5]),
   .cout1                    (cout1_2[6]),
   .cout2                    (cout2_2[6]),
   .c                        (c_2[6])
   );         
   
   
multiplier_unit         multiplier_unit_2_7(
   .y                        (p[6:3]),
   .x                        (x[4]),
   .shiftin1                 (shiftout_2[6]),
   .shiftin2                 (shiftout_2[5]),
   .shiftout                 (shiftout_2[7]),
   .sumin                    (sumout_1[7]),
   .sumout                   (sumout_2[7]),
   .cin1                     (cout1_2[6]),
   .cin2                     (cout2_2[5]),
   .cin3                     (c_2[6]),
   .cout1                    (cout1_2[7]),
   .cout2                    (cout2_2[7]),
   .c                        (c_2[7])
   );         
   
   
multiplier_unit         multiplier_unit_2_8(
   .y                        (p[6:3]),
   .x                        (x[5]),
   .shiftin1                 (shiftout_2[7]),
   .shiftin2                 (shiftout_2[6]),
   .shiftout                 (shiftout_2[8]),
   .sumin                    (sumout_1[8]),
   .sumout                   (sumout_2[8]),
   .cin1                     (cout1_2[7]),
   .cin2                     (cout2_2[6]),
   .cin3                     (c_2[7]),
   .cout1                    (cout1_2[8]),
   .cout2                    (cout2_2[8]),
   .c                        (c_2[8])
   );            
   

multiplier_unit         multiplier_unit_2_9(
   .y                        (p[6:3]),
   .x                        (x[6]),
   .shiftin1                 (shiftout_2[8]),
   .shiftin2                 (shiftout_2[7]),
   .shiftout                 (shiftout_2[9]),
   .sumin                    (sumout_1[9]),
   .sumout                   (sumout_2[9]),
   .cin1                     (cout1_2[8]),
   .cin2                     (cout2_2[7]),
   .cin3                     (c_2[8]),
   .cout1                    (cout1_2[9]),
   .cout2                    (cout2_2[9]),
   .c                        (c_2[9])
   );         
   
   
multiplier_unit         multiplier_unit_2_10(
   .y                        (p[6:3]),
   .x                        (x[7]),
   .shiftin1                 (shiftout_2[9]),
   .shiftin2                 (shiftout_2[8]),
   .shiftout                 (shiftout_2[10]),
   .sumin                    (sumout_1[10]),
   .sumout                   (sumout_2[10]),
   .cin1                     (cout1_2[9]),
   .cin2                     (cout2_2[8]),
   .cin3                     (c_2[9]),
   .cout1                    (cout1_2[10]),
   .cout2                    (cout2_2[10]),
   .c                        (c_2[10])
   );           
   
   
multiplier_unit         multiplier_unit_2_11(
   .y                        (p[6:3]),
   .x                        (ZERO),
   .shiftin1                 (shiftout_2[10]),
   .shiftin2                 (shiftout_2[9]),
   .shiftout                 (shiftout_2[11]),
   .sumin                    (sumout_1[11]),
   .sumout                   (sumout_2[11]),
   .cin1                     (cout1_2[10]),
   .cin2                     (cout2_2[9]),
   .cin3                     (c_2[10]),
   .cout1                    (cout1_2[11]),
   .cout2                    (cout2_2[11]),
   .c                        (c_2[11])
   );         
   

multiplier_unit         multiplier_unit_2_12(
   .y                        (p[6:3]),
   .x                        (ZERO),
   .shiftin1                 (shiftout_2[11]),
   .shiftin2                 (shiftout_2[10]),
   .shiftout                 (shiftout_2[12]),
   .sumin                    (sumout_1[12]),
   .sumout                   (sumout_2[12]),
   .cin1                     (cout1_2[11]),
   .cin2                     (cout2_2[10]),
   .cin3                     (c_2[11]),
   .cout1                    (cout1_2[12]),
   .cout2                    (cout2_2[12]),
   .c                        (c_2[12])
   );         


multiplier_unit         multiplier_unit_2_13(
   .y                        (p[6:3]),
   .x                        (ZERO),
   .shiftin1                 (shiftout_2[12]),
   .shiftin2                 (shiftout_2[11]),
   .shiftout                 (shiftout_2[13]),
   .sumin                    (sumout_1[13]),
   .sumout                   (sumout_2[13]),
   .cin1                     (cout1_2[12]),
   .cin2                     (cout2_2[11]),
   .cin3                     (c_2[12]),
   .cout1                    (cout1_2[13]),
   .cout2                    (cout2_2[13]),
   .c                        (c_2[13])
   );         
   

multiplier_unit         multiplier_unit_2_14(
   .y                        (p[6:3]),
   .x                        (ZERO),
   .shiftin1                 (shiftout_2[13]),
   .shiftin2                 (shiftout_2[12]),
   .shiftout                 (shiftout_2[14]),
   .sumin                    (sumout_1[14]),
   .sumout                   (sumout_2[14]),
   .cin1                     (cout1_2[13]),
   .cin2                     (cout2_2[12]),
   .cin3                     (c_2[13]),
   .cout1                    (cout1_2[14]),
   .cout2                    (cout2_2[14]),
   .c                        (c_2[14])
   );            
   

multiplier_unit         multiplier_unit_2_15(
   .y                        (p[6:3]),
   .x                        (ZERO),
   .shiftin1                 (shiftout_2[14]),
   .shiftin2                 (shiftout_2[13]),
   .shiftout                 (shiftout_2[15]),
   .sumin                    (sumout_1[15]),
   .sumout                   (sumout_2[15]),
   .cin1                     (cout1_2[14]),
   .cin2                     (cout2_2[13]),
   .cin3                     (c_2[14]),
   .cout1                    (cout1_2[15]),
   .cout2                    (cout2_2[15]),
   .c                        (c_2[15])
   );     
   

multiplier_unit         multiplier_unit_3_1(
   .y                        (Y2),
   .x                        (ONE),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_3[1]),
   .sumin                    (sumout_1[1]),
   .sumout                   (sumout_3[1]),
   .cin1                     (cout1_2[0]),
   .cin2                     (ZERO),
   .cin3                     (ZERO),
   .cout1                    (cout1_3[1]),
   .cout2                    (cout2_3[1]),
   .c                        (c_3[1])
   );               


multiplier_unit         multiplier_unit_3_2(
   .y                        (Y2),
   .x                        (ONE),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_3[2]),
   .sumin                    (sumout_2[2]),
   .sumout                   (sumout_3[2]),
   .cin1                     (cout1_3[1]),
   .cin2                     (ZERO),
   .cin3                     (c_3[1]),
   .cout1                    (cout1_3[2]),
   .cout2                    (cout2_3[2]),
   .c                        (c_3[2])
   );      


multiplier_unit         multiplier_unit_3_3(
   .y                        (Y1),
   .x                        (y[5]),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_3[3]),
   .sumin                    (sumout_2[3]),
   .sumout                   (sumout_3[3]),
   .cin1                     (cout1_3[2]),
   .cin2                     (cout2_3[1]),
   .cin3                     (c_3[2]),
   .cout1                    (cout1_3[3]),
   .cout2                    (cout2_3[3]),
   .c                        (c_3[3])
   );            
   

multiplier_unit         multiplier_unit_3_4(
   .y                        (Y2),
   .x                        (ONE),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_3[4]),
   .sumin                    (sumout_2[4]),
   .sumout                   (sumout_3[4]),
   .cin1                     (cout1_3[3]),
   .cin2                     (cout2_3[2]),
   .cin3                     (c_3[3]),
   .cout1                    (cout1_3[4]),
   .cout2                    (cout2_3[4]),
   .c                        (c_3[4])
   );      
   

multiplier_unit         multiplier_unit_3_5(
   .y                        (Y2),
   .x                        (ONE),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_3[5]),
   .sumin                    (sumout_2[5]),
   .sumout                   (sumout_3[5]),
   .cin1                     (cout1_3[4]),
   .cin2                     (cout2_3[3]),
   .cin3                     (c_3[4]),
   .cout1                    (cout1_3[5]),
   .cout2                    (cout2_3[5]),
   .c                        (c_3[5])
   );      


multiplier_unit         multiplier_unit_3_6(
   .y                        (p[9:6]),
   .x                        (x[0]),
   .shiftin1                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftin2                 (ONE & ~p[3] | ZERO & p[3]),
   .shiftout                 (shiftout_3[6]),
   .sumin                    (sumout_2[6]),
   .sumout                   (sumout_3[6]),
   .cin1                     (cout1_3[5]),
   .cin2                     (cout2_3[4]),
   .cin3                     (c_3[5]),
   .cout1                    (cout1_3[6]),
   .cout2                    (cout2_3[6]),
   .c                        (c_3[6])
   );   
   
   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -