一,内容介绍
加法器是数字电路中的最基础电路之一,也是CPU的核心功能之一。
在这个专栏,我会把所有我知道的数字电路的加法器相关模型都实现一遍并解释其原理。
编程使用的语言为Verilog,代码风格为强迫症系列风格。
加法器系列链接:
上一篇:进位选择加法器设计
目前:koggle-stone加法器设计
下一篇:brent-kung加法器设计
二,koggle-stone加法器设计原理
1973年,KOGGE-P-M和STONE-H-S提出了并行前缀的超前进位加法器,使高位的计算与前一位的进位结果无关,从而大大提高加法器的速度。
2.1 koggle-stone加法器出现的背景
以下码摘自前文:超前进位加法器
carry[0] = p[0] + q[0]*c_i
carry[1] = p[1] + p[0]*q[1] + q[1]*q[0]*c_i
carry[2] = p[2] + p[1]*q[2] + p[0]*q[1]*q[2] + q[2]*q[1]*q[0]*c_i
carry[3] = p[3] + p[2]*q