Estoy practicando en el diseño de unidades vhdl con algún algoritmo aritmético de computadora "complejo". Acabo de implementar la siguiente unidad CLA a continuación.
Estoyleyendo
Con referencia a la notación del libro, básicamente la idea es calcular en lugar de $$ \ begin {array} {l} c_ {i + j} = \ sum_ {k = 0} ^ {j} g_ {i + k} \ prod_ {l = k + 1} ^ {j} p_l + c_i \ prod_ {l = 0} ^ {j } p_j \\ p _ {[i, i + j]} = \ prod_ {k = 0} ^ {j} p_ {i + j} \\ g _ {[i, i + j]} = \ sum_ {k = 0} ^ {j} g_ {i + k} \ prod_ {l = k + 1} ^ {j} p_l \ end {array} $$
Necesito implementar como bloque básico uno que calcule las cantidades
$$ h_i = c_i + c_ {i-1}, t _ {[i, i + j]}, g _ {[i, i + j]} $$
y en lugar de "xoring" la propagación con los acarreos que tendría que calcular una función un poco más compleja, ¿es esta la única diferencia en términos de implementación? Supongo que podría aplicarse un diseño jerárquico similar.