差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
binary_multiplication [2021/09/28 10:24]
gongyu
binary_multiplication [2021/09/28 11:09] (当前版本)
gongyu [2. 原理]
行 1: 行 1:
 ## 乘法器 ## 乘法器
  
-### 1. 目的 +### 1. 设计
- +
-### 2. 原理 +
- +
-### 3. CircuitJS仿真 +
- +
-### 4. FPGA实现 +
- +
-### 5. 参考资料 +
- +
-  * [[https://​www.electronicshub.org/​binary-multiplication/​|二进制乘法器]] +
- +
-### 1. 硬件平台 +
- +
-  - [[STEP-MXO2第一代]] +
-  - [[STEP-Baseboard]] +
- +
-### 2. 设计 +
   - 掌握乘法器的工作原理   - 掌握乘法器的工作原理
   - 掌握组合逻辑的设计   - 掌握组合逻辑的设计
   - 基于小脚丫STEP FPGA Base Board开发平台实现乘法器的设计   - 基于小脚丫STEP FPGA Base Board开发平台实现乘法器的设计
  
-### 3工作原理+### 2. 原理
  
 FPGA实现乘法器的设计可以有多种方法,可以设计为串行的和并行的: FPGA实现乘法器的设计可以有多种方法,可以设计为串行的和并行的:
行 31: 行 13:
  
 串行乘法器需要一个寄存器,每次时钟触发完成乘数中的一位与被乘数之间的运算,同时加入寄存器中,如此乘数的位宽是多少就需要至少多少个时钟的时延完成乘法器的运算。并行乘法器为了降低时延,需要乘数位宽中的每一位同时完成与被乘数之间的运算,这样就需要乘数位宽数个寄存器,然后将所有寄存器的值相加得到乘法结果。 串行乘法器需要一个寄存器,每次时钟触发完成乘数中的一位与被乘数之间的运算,同时加入寄存器中,如此乘数的位宽是多少就需要至少多少个时钟的时延完成乘法器的运算。并行乘法器为了降低时延,需要乘数位宽中的每一位同时完成与被乘数之间的运算,这样就需要乘数位宽数个寄存器,然后将所有寄存器的值相加得到乘法结果。
 +0 x 0 = 0
 +1 x 0 = 0
 +0 x 1 = 0
 +1 x 1 = 1
  
 +{{ :​binary-multiplication.jpeg |}}
 +{{ :​2-bit-multiplication-new.jpeg |}}
 +{{ :​4-bit-binary-multiplier.jpeg |}}
 +{{ :​4-bit-multiplication-by-shift-method.jpeg |}}
  
- +### 4. FPGA实现 
- +{{drawio>​multiplication_show_block.png}}
-### 4. 硬件连接+
  
 结合实验平台[[STEP-Baseboard]]的硬件配置,我们使用4路拨码开关表示乘数,4路按键开关表示被乘数,8个LED灯作为乘法器的输出 结合实验平台[[STEP-Baseboard]]的硬件配置,我们使用4路拨码开关表示乘数,4路按键开关表示被乘数,8个LED灯作为乘法器的输出
行 44: 行 33:
  
 {{:​图9.按键模块电路连接.png?​500|按键模块电路连接}} {{:​图9.按键模块电路连接.png?​500|按键模块电路连接}}
- 
- 
  
  
行 152: 行 139:
 ^ **[[Water_led.v]]** | **流水灯** | ^ **[[Water_led.v]]** | **流水灯** |
 ^ **[[Water_led_test.v]]** | **测试文件** | ^ **[[Water_led_test.v]]** | **测试文件** |
 +
 +### 5. 参考资料
 +
 +  * [[https://​www.electronicshub.org/​binary-multiplication/​|二进制乘法器]]