/* celda_base.c * Clase que implementa la celda básica para el multiplicador * combinacional por sumas y desplazamientos * * Autores: JOSE LUIS BERENGUEL GOMEZ * JORGE BARBERO PEREZ * * Compilación: * c++ -c celda_base.c * * Ultima modificación: 29-1-02 */ #include "gates.h" #include "decods.h" #include "muxs.h" #include "alu32.h" // para el sumador completo de 1 bit #include "celda_base.h" void CELDA_BASE::run(WIRE &mj, //entrada del bit j del multiplicando WIRE &Ppi, //entrada del producto de los bit i,i-1 WIRE &qi, //bit i del multiplicador WIRE &cin, //bit de acarreo de entrada de la celda WIRE &cout, //bit de acarreo de salida de la celda WIRE &Ppsig) //salida del siguiente producto parcial { /* COMIENZO DEL METODO */ saland=0; // inicializamos la variable a0.run(saland,qi,mj); // realizamos la AND de la celda base full_adder.run(Ppi,saland,cin,Ppsig,cout); // ejecutamos el sumador completo (F.A) } // FIN DEL METODO run DE CELDA_BASE