SUMADOR DE PUNTO FLOTANTE EN VHDL: DISEÑO Y ANÁLISIS DE ALTERNATIVAS DE OPTIMIZACIÓN

Tamaño: px
Comenzar la demostración a partir de la página:

Download "SUMADOR DE PUNTO FLOTANTE EN VHDL: DISEÑO Y ANÁLISIS DE ALTERNATIVAS DE OPTIMIZACIÓN"

Transcripción

1 SUMADOR DE PUNTO FLOTANTE EN VHDL: DISEÑO Y ANÁLISIS DE ALTERNATIVAS DE OPTIMIZACIÓN Ignacio E. Sardi, Bruno L. Uberti, Fernando G. Tinetti, Antonio A. Quijano Centro de Investigación y Desarrollo en Microelectrónica (CIDEM) Instituto Tecnológico de Buenos Aires (ITBA) Buenos Aires Argentina ftinetti@itba.edu.ar RESUMEN En este trabajo se presenta el diseño de un sumador de números representados en punto flotante siguiendo la norma IEEE. Además de definir una solución de hardware aplicando los principios de paralelización de operaciones establecidos por los pipelines, se analizan las alternativas de optimización de tiempo de operación utilizando herramientas de síntesis de hardware a partir del lenguaje VHDL. Las alternativas se evalúan en función de la optimización de tiempo de operación y de las variaciones de área de silicio estimadas por las herramientas de síntesis. Finalmente, se presenta una posible evolución hacia el cambio del diseño a nivel de VHDL del circuito y su impacto en la optimización de tiempo. 1. INTRODUCCION La utilización del lenguaje VHDL [1] es aceptada desde hace mucho tiempo para la utilización en el diseño, simulación e implementación de hardware [2]. Sin embargo, sigue siendo un problema a resolver la optimización de distintos aspectos de los circuitos diseñados a la hora de su implementación real. En este contexto las herramientas de CAD (Computer Aided Design) como Alliance [3] [4] [5] [6] [7] y Cadence [8] son de gran utilidad no solamente para el ciclo completo de desarrollo y verificación de hardware sino también para el análisis de alternativas de optimización. En este artículo se presenta un ejemplo completo de la utilización combinada de VHDL y herramientas de CAD para el diseño, verificación y optimización de un circuito en particular. Más específicamente, se propone resolver en hardware la suma de números reales cuya representación sigue los lineamientos de la norma IEEE para números de precisión simple [9] [1] [11] [12]. El proceso de diseño comenzará por la descripción de comportamiento del sistema para luego detallar cada uno de los bloques que componen el diseño final. Desde el inicio mismo, el énfasis está puesto en la reducción de tiempo de operación para el circuito (sumador). El trabajo que aquí se presenta tiende al diseño de un ASIC, pero no llega hasta la obtención del prototipo físico. Para una primera aproximación de la síntesis y optimización mediante las herramientas de CAD, se ha adoptado provisoriamente una tecnología CMOS (SXLIB [13]) y la librería y kit de diseño incluidos en Alliance. Pero será parte de una etapa futura elegir una tecnología definitiva. Más que proveer un nuevo sumador de punto flotante se muestra un diseño que es fácil y rápido gracias a VHDL y mediante las herramientas de síntesis también es fácil y rápida la optimización. El sumador se toma más como ejemplo que como aplicación final y la idea no es proveer el mejor o más rápido sino algunas alternativas de optimización de tiempo. En el presente artículo no sería tampoco posible agregar más detalles del uso de Alliance debido a las limitaciones de extensión establecidas. En principio, tanto Alliance como otros entornos de CAD tales como Cadence se componen de múltiples herramientas usualmente independientes, cada una de ellas enfocada a realizar una tarea específica dentro del ciclo/proceso de diseño. En la siguiente sección, se describe la arquitectura completa del circuito. En la sección 3 se detallan algunos aspectos relevantes de los bloques que componen el sumador en punto flotante. La sección 4 muestra la síntesis preliminar o sin optimizar del diseño en función de tiempo de operación y área de silicio necesaria. Luego, en la sección 5 se dan los detalles relevantes de la optimización utilizando las herramientas de CAD. La sección 6 comenta las alternativas de optimización de tiempo a nivel de rediseño en VHDL. Finalmente, la sección 7 detalla las conclusiones y las alternativas de trabajo futuro. 1

2 2. DESCRIPCION DE LA ARQUITECTURA Dado que el énfasis está puesto en la velocidad de operación del circuito, se propuso realizar el mismo en una serie de etapas (pipelined architecture) [14] aunque en principio implica la utilización de mayor área de silicio para su fabricación. Esto a su vez incrementa el costo total del circuito a expensas de su mejor rendimiento. Los números de entrada del sumador se consideran representados siguiendo los lineamientos de la norma IEEE 754 de precisión simple. Aunque el sumador opera con el cero, no se consideran, sin embargo, las definiciones de NaN (Not a Number), y el resto de los números con representación no normalizada. Resumiendo, se manejan todos los números normalizados más el cero de la definición de la norma IEEE. Si se consideran las entradas al sumador A y B como A = (-1) X 1.a 2 P y B = (-1) Y 1.b 2 Q, donde X e Y son los signos (1 bit), a y b son las fracciones (23 bits), y P y Q los exponentes (8 bits), se puede calcular la suma C = A + B = c 2 R en los pasos: 1. Agregar el bit implícito de la fracción junto con los bits de guarda a las mantisas a y b, obteniendo las fracciones con las que se operará a y b. 2. Calcular R = máx(p, Q), determinar la diferencia T = P - Q, y determinar el mayor de los números de entrada: Z (= si A < B; =1 en caso contrario). 3. Determinar el signo del resultado y la operación binaria a realizar. El signo del resultado está determinado por Z (el signo de la suma de los dos números será el signo del número mayor). Para determinar la operación binaria (suma o resta) bastará con comparar los signos de los respectivos números: X e Y. 4. Detectar los casos especiales en que debe manejarse el cero: ambos números de entrada son cero o son iguales y la operación a realizar es la resta. 5. Seleccionar la fracción (a o b ) que corresponde al número menor. 6. Desplazar a la derecha la fracción asociada con el número menor T lugares (bits) para igualar los exponentes antes de sumar las fracciones. 7. Sumar las fracciones para producir la fracción de la suma no normalizada c. La operación puede dar un bit de acarreo que se traduce en un incremento del exponente del resultado, resultado conocido como desborde de mantisa. 8. Determinar la cantidad u de ceros iniciales en la fracción c. 9. Desplazar c a la izquierda u lugares para producir la fracción normalizada c. 1. Modificar el exponente resultado restando los u lugares que se desplazó la fracción para normalizarla y luego se le suma el eventual acarreo producido en el punto Redondear el número según lo indicado en la norma IEEE 754. Cada uno de estos pasos puede realizarse de distintas maneras y la Figura 1 muestra esquemáticamente los bloques funcionales que resuelven cada una de estas tareas. Además, también se muestra cómo se agrupan los bloques funcionales en un pipeline de cuatro etapas. A = (-1) X 1.a 2 P ; B = (-1) Y 1.b 2 Q X Y P Q a' b' SIGNO AddC SignOut SignOut SignOut SignOut COMPARADOR R R Clear R T all_zero RESTADOR Z flip-flop Exponente DETECTOR DE CERO all_zero Carry X Y CONTADOR DE CEROS Otra Fracción SUMADOR DESPLAZADOR A IZQUIERDA REDONDEO DE FRACCION ETAPA 1 PASOS 1 a 6 SELECTOR DE FRACCION DESPLAZADOR A DERECHA c c c" Fracción Figura 1: Sumador en Cuatro Etapas 3. DESCRIPCION DE LOS BLOQUES Fracción mín(a, B) ETAPA 2 PASO 7 ETAPA 3 PASOS 8 y 9 ETAPA 4 PASOS 1 y 11 En esta sección se describe el pipeline completo, con todos los bloques funcionales que aparecen en la Figura 1. Esta descripción se lleva a cabo con las partes de código más importante de VDHL y en algunos casos se 2

3 agregan esquemas gráficos para aclarar la descripción en VHDL. De hecho, se puede notar que hacer la descripción en VHDL provee una manera casi inmediata de implementación, dado que se pueden utilizar sobre este código las herramientas de síntesis que proveen los entornos de CAD para circuitos integrados Etapa 1 Quizás esta es la etapa que contiene mayor cantidad de bloques funcionales y por lo tanto su descripción será la más extensa de las cuatro propuestas Bloque de Comparación Este bloque es el encargado de ubicar en el rango adecuado los dos operandos, para poder realizar la suma dentro del mismo rango, es decir bajo el mismo exponente. Recibe como entradas a los exponentes y fracciones de los correspondientes números a ser sumados y tiene como salidas a R=máx(P,Q), T= P-Q y Z. La Figura 2 muestra el comportamiento del bloque en VHDL. -- ## Celda Comparador ## architecture ARCH_comparador of comparador is signal dif_exp_aux: std_logic_vector(7 downto ); (SignOut). En la Figura 3 se puede observar la simplicidad de la descripción de este bloque en VHDL. La salida SignOut se propaga a través de todo el pipeline hasta llegar a la última etapa, estableciendo de esta manera el signo de la operación. La salida AddC se utiliza en la siguiente etapa para saber si se suman o restan las fracciones Bloque Detector de Cero Este bloque se encarga de detectar si el resultado puede architecture ARCH_sign_comp of sign_comp is SignOut <= x when sel = '1' else y; AddC <= '1' when x = y else ''; end ARCH_sign_comp; Figura 3: Bloque Signo. dar cero. Para ello verifica que las entradas sean ambas cero o iguales y de signo contrario. Las entradas de este bloque son los dos operandos: A y B. En la Figura 4 se muestra el diagrama esquemático de este bloque. A = (- 1) X 1.a 2 P ; B = (- 1) Y 1.b 2 Q a ' P b' Q X Y a b P Q Z <= '' when p < q else '1' when p > q else '' when a < b else '1'; =? out = 1 si a & P = =? out = 1 si b & Q = X Y? out = 1 si X Y a=b? out = 1 si a=b P=Q? ou t = 1 si P=Q dif_exp_aux <= (p q) when z = '1' else (q - p); R <= p when z = '1' else q; T <= dif_exp_aux when (dif_exp_aux<32) else X"FF"; end ARCH_comparador; Figura 2: Bloque Comparador. La señal R contiene el exponente en el cual se realizará la operación, la señal T indica al bloque de desplazamiento cuánto tiene que mover al dato para poner en el rango adecuado una de las dos fracciones. La señal Z se utiliza en el selector para indicar cuál de los exponentes de los operandos se debe seleccionar, y en caso de igualdad de exponentes selecciona la fracción mayor. Esta última señal se utiliza además en dos bloques externos, el bloque que se encarga de computar el signo y el bloque selector de fracciones Bloque de Signo Las entradas que posee este bloque son los signos de los operandos X e Y, y la señal Z que indica cuál de los dos números (A o B) es el mayor (Z = 1 si A > B). Tiene como salidas el tipo de operación a realizar con las fracciones (AddC) y el signo de la operación de suma AND AND =1 si A=B= =1 si A=( - B) OR all_zero = si A=( - B) o A = B = Figura 4: Esquema del Detector de Cero. En la Figura 5 se muestra la implementación en VHDL, donde se puede notar también la versatilidad del lenguaje en cuanto a la creación y utilización de señales intermedias o auxiliares. Estas señales intermedias son utilizadas en este caso para la generación del valor correcto para la señal de salida de este bloque, que es única: all_zero Bloque Selector de Fracción Este bloque funciona como si fuesen dos multiplexores 3

4 que se encargan de dirigir el flujo de datos de cada una de las fracciones. Se utiliza la información que está Architecture ARCH_zero_verif of zero_verification is Signal a_info : std_logic_vector(3 downto ); signal b_info : std_logic_vector(3 downto ); signal zero_a : std_logic; signal zero_b : std_logic; signal eq_inputs : std_logic; signal all_inputs_zero : std_logic; -- creación de un solo vector para facilitar la comp. a_info (22 downto ) <= a; a_info (3 downto 23) <= p; b_info (22 downto ) <= b; b_info (3 downto 23) <= q; pipeline. Dentro de los circuitos combinacionales se tienen dos tipos distintos de desplazadores, uno lineal [15] y otro logarítmico [16]. El primero es más lento que el logarítmico debido a la cantidad de compuertas en paralelo que tiene conectadas pero su diseño y ruteo en layout es más sencillo. Un posible esquema de implementación del desplazador logarítmico se muestra en la Figura 7, donde cada bloque representa un multiplexor que es manejado por un bit de selección. Shift a a a a zero_a <= '1' when a_info=(""&x"") else ''; zero_b <= '1' when b_info=(""&x"") else ''; eq_inputs <= '1' when ((x/=y)and(a=b)and(q=p))else ''; all_inputs_zero <= '1' when (zero_a='1' and zero_b='1') else ''; all_zero <= '' when (all_inputs_zero or eq_inputs) else '1'; Shift end ARCH_zero_verif; Figura 5: Bloque Detector de Cero. contenida en la señal sel que, de hecho, es la señal Z producida en el bloque Comparador. Por la salida denominada mux_out1 saldrá la fracción que corresponda al menor de los dos números. Por la otra salida, mux_out2 saldrá la fracción que corresponda al número mayor. En la Figura 6 se muestra el código VHDL que describe este bloque, donde además se puede notar una vez más el poder de descripción de este lenguaje. -- ## Celda Multiplexor ## architecture ARCH_multiplexor of multiplexor is mux_out1 <= a when sel = '' else b; mux_out2 <= b when sel = '' else a; end ARCH_multiplexor; Figura 6: Bloque Selector de Fracción Bloque Desplazador a Derecha Este bloque debe ser rápido para no retrasar al pipeline, es por ello que se optó por realizarlo en forma combinacional y no con registros. Al utilizar registros se necesitarían, en el peor de los casos, 31 pulsos de reloj para poder desplazar a la fracción e igualar los exponentes (debido a los bits de guarda junto con los restantes bits de la fracción). Se tendría, por consiguiente, una demora sustancial en esta etapa del Shift Figura 7: Esquema del Desplazador. La Figura 8 muestra de manera reducida (no están las líneas de código que son similares a las architecture ARCH_sft_der of sft_der is signal stg1_a : std_logic_vector (3 downto ); signal stg1_b : std_logic_vector (3 downto );... signal stg5_a : std_logic_vector (3 downto ); signal stg5_b : std_logic_vector (3 downto ); -- etapa 1 del desplazador logarítmico stg1_a <= fraction; stg1_b(3) <= ''; stg1_b(29 downto ) <= fraction(3 downto 1); stg2_a <= stg1_a when shft() = '' else stg1_b; -- etapa2 2 a 4 del desplazador logarítmico -- son similares etapa 5 del desplazador logarítmico stg5_b(3 downto 15) <= X""; stg5_b(14 downto ) <= stg5_a(3 downto 16); fr_out <= stg5_a when shft(4) = '' else stg5_b; end ARCH_sft_der; Figura 8: Bloque Desplazador a Derecha. 4

5 incluidas) la descripción en VHDL del bloque de desplazamiento. Nuevamente se dio prioridad al aumento en la velocidad de operación (reducción de tiempo), por lo que el desplazador implementado fue el logarítmico. Este circuito combinacional consta de una serie de etapas (5 en total) para poder desplazar a la entrada en 32 veces (25 ya que es logarítmico en base 2). La primera etapa desplaza en 1, las segunda en 2, la tercera en 4, la cuarta en 8 y la quinta en 16. Tomando combinaciones de éstas se puede desplazar al dato de a Etapa 2: Bloque de Suma o Resta de Fracciones En esta etapa se resuelve efectivamente la operación binaria a realizar. De hecho, además de la operación binaria (que puede ser de suma o resta) se debe calcular/generar la señal de carry o borrow de la operación. Este bloque es de vital importancia ya que es uno de los que más puede demorar al pipeline dado que la propagación del carry es notoria para la suma o resta de dos números de 31 bits. Por este motivo se eligió un sumador (o restador) con carry look-ahead para acelerar el cálculo del carry. Como contrapartida, lo que se pierde es área de silicio ya que este tipo de sumador ocupa más espacio. En el código de VHDL que se observa en la Figura 9 no se puede determinar la manera en que está implementado. architecture ARCH_frac_adder of frac_adder is signal adder1 : std_logic_vector (31 downto ); signal adder2 : std_logic_vector (31 downto ); signal res_add : std_logic_vector (31 downto ); adder1(31) <= ''; adder1(3 downto ) <= a; adder2(31) <= ''; adder2(3 downto ) <= b; res_add <= (adder1 + adder2) when AddC = '1' else (adder1 - adder2); carry <= res_add(31); c <= res_add(3 downto ) when carry = '' else res_add(31 downto 1); end ARCH_frac_adder; Figura 9: Bloque Sumador. El entorno de diseño Alliance provee la facilidad de especificar esto como una opción de una de las herramientas de compilación/síntesis de código. En el caso de trabajar con otro entorno de diseño, se podría especificar directamente en VHDL el circuito combinacional que corresponde. Este bloque opera con una señal externa que se calcula en la unidad que computa el signo de la operación, AddC, que le indica si debe realizar una operación de suma o resta. El gráfico de la Figura 1 muestra de manera esquemática la operación de este bloque e indica cómo es tenido en cuenta el caso de desborde de mantisa, operando con una señal interna de carry para indicar el desborde y poniendo el resultado de la operación en el rango correcto. En el caso de ocurrir desborde, una señal es enviada al restador de exponentes, ubicada en la última etapa del pipeline, para indicarle que tiene que ajustar el exponente por el desborde producido en la operación parcial. AddC Bit extra F_1 Bit extra F_2 de carry de carry carry 3.3. Etapa 3 Frac_1 SUMA Frac_1 + Frac_2 Frac_1+Frac_2 si AddC=1 SELECTOR A1 A2 Frac_2 RESTA Frac_1 - Frac_2 Frac_1-Frac_2 si AddC= SELECTOR c' = A2 si carry = c = A1 si carry = 1 Figura 1: Esquema del Sumador. Dentro de esta etapa, se tienen dos alternativas en cuanto al resultado de la operación: se debe producir un cero a la salida o se debe trabajar sobre el resultado binario de la operación para producir el formato de punto flotante tal como lo establece la norma. Producir un cero es sencillo, pero para dar formato a la salida distinta de cero se deben realizar varias operaciones que se describen en los bloques a continuación Bloque Contador de Ceros Se basa en un circuito combinacional que determina la cantidad u de ceros que hay al principio de la fracción. Esta salida (u) es utilizada luego para desplazar la fracción a izquierda. Su implementación es similar a la 5

6 de un priority encoder [17], o sea que este bloque recibe como entrada un conjunto de 31 bits dentro de los cuales se encuentra la fracción junto con los bits de guarda y se fija en donde aparece el primer 1 lógico desde el bit más significativo hasta el menos significativo codificando dicha posición en forma binaria y dando este valor como resultado del bloque. La Figura 11 muestra de manera reducida (para no repetir líneas de código similares) la descripción en VHDL del bloque que cuenta los ceros al principio de la fracción de entrada Bloque Desplazador a Izquierda Este bloque fue implementado igual que el desplazador a derecha (en cuanto a la cantidad logarítmica de pasos de desplazamiento). La única diferencia reside en que este desplazamiento del dato de entrada a izquierda agrega, además, ceros a la derecha. architecture Arch_ZeroCounter of ZeroCounter is signal zerovector : bit_vector(3 downto ) := "" & X""; u <= X"1F" when (Mantisa(3 downto ) = zerovector(3 downto )) else X"1E" when (Mantisa(3 downto 1) = zerovector(3 downto 1)) else X"2" when (Mantisa(3 downto 29) = zerovector(3 downto 29)) else X"1" when Mantisa(3) = zerovector(3) else X""; end Arch_ZeroCounter; 3.4. Etapa 4 Figura 11: Bloque Contador de Ceros. En esta etapa se realizan los últimos ajustes para producir la salida correcta de la operación realizada en el formato correcto. Dado que ya se han producido los datos necesarios en los pasos anteriores, se opera por separado sobre el exponente y sobre la mantisa del resultado Bloque de Recálculo de Exponente Este bloque realiza el ajuste del exponente una vez que la fracción ya está normalizada. Recibe las señales R, U y carry, y entrega como salida el exponente normalizado del resultado. La señal R proviene del comparador de la etapa 1, y la señal u del bloque que se encarga de contar los ceros al principio del resultado de la suma, las dos señales se restan para dar el exponente correcto. Además, si ocurrió desborde de mantisa, la señal carry indica que se debe ajustar nuevamente el exponente. La Figura 12 muestra el código VHDL correspondiente. Este bloque puede ser implementado con carry look-ahead si se quiere ganar en velocidad, pero esto va a depender de cómo sean las velocidades de las otras etapas del pipeline, ya que usualmente más velocidad produce un gasto mayor en área de silicio. architecture ARCH_exp_sub of exp_sub is signal carry_vector : std_logic_vector (7 downto ) := X""; carry_vector() <= carry; exponente <= r - u + carry_vector; end ARCH_exp_sub; Figura 12: Bloque de Recálculo de Exponente Bloque de Redondeo de Fracción Este bloque lleva a cabo la operación de redondeo según indica la norma IEEE 754 [18]. Básicamente trabaja sobre los los bits adicionales llamados bits de guarda. Para realizar el redondeo se debe tomar la decisión de sumar un bit al bit menos significativo de la mantisa del resultado en caso que corresponda. La Figura 13 muestra el código VHDL que describe este bloque. -- round_block architecture Arch_round_block of round_block is fraccion <= (c + X"8") when (c (6 downto ) > "1") else c when (c (6 downto ) < "1") else c when (fraction_n(7) = '') else c + X"8"; end Arch_round_block; Figura 13: Bloque de Redondeo de Fracción. También en este bloque se puede apreciar la potencia de expresión del lenguaje VHDL, en particular con la posibilidad de dar distintas alternativas para la asignación de los valores posibles de una señal. 4. SÍNTESIS DEL CIRCUITO Una vez finalizada la descripción del sumador, se verifica su correcto funcionamiento vía simulación lógica; luego, se sintetiza cada uno de los bloques que lo componen para su posterior optimización. Aquí normalmente surgen dos posturas bien definidas que definen la relación costo beneficio: el consumo de área de silicio y tiempo de propagación (ejecución) de cada bloque. Para la etapa de síntesis se utilizan las herramientas de CAD, en este caso las provistas por Alliance. Para la optimización, este entorno utiliza un algoritmo que construye una red lógica equivalente, minimizando las expresiones (ecuaciones) en cada nodo de la red. El resultado arrojado da una menor 6

7 profundidad de la red lógica. Luego para la función lógica de cada nodo de la red, trata de encontrar en la biblioteca que contiene la tecnología utilizada, un conjunto de celdas que produce la misma ecuación lógica de dicho nodo. Este proceso habitualmente es llamado standard cell mapping. Por último, realiza el cálculo del camino crítico, el reconexionado de las compuertas para disminuir el delay y la capacidad, agregando buffers entre ellas si fuere necesario. También realiza el cálculo del área. Dentro de los diferentes etapas para minimizar el tiempo de propagación o el área de silicio, el algoritmo permite ajustar en forma porcentual cuál de estos dos parámetros se requiere optimizar en mayor medida. En la Tabla 1 se muestra un resumen de los tiempos de propagación de cada bloque con el área de silicio ocupada. Etapa Bloque Tipo Tiempo (ps) Area (λ 2 ) Etapa 1 Signo Comparador* CLA Comparador RCA Detector de Cero Selector de Frac.* Desplazador a Der.* Registros* Total E1 CLA Etapa 2 Sumador* CLA Sumador RCA Registros* Total E2 CLA Etapa 3 Contador de Ceros* Desplazador a Izq.* Flip Flop Neg Registros* Total E Etapa 4 Restador* CLA Restador RCA Redondeo de Frac. RCA Registros* Total E4 CLA ps: picosegundo (1-12 seg). * Camino Crítico CLA: Carry LookAhead. RCA: Ripple Carry Adder. Tabla 1: Tiempo y Area sin Optimizaciones de Síntesis. La optimización realizada en este caso fue un 5% en área y un 5% en delay de todo el cirtuito. Esto significa que las herramientas de optimización intentan el mejor balance entre el área ocupada y el tiempo de propagación de las señales en todo el pipeline. Este es el modo de operación estándar (o default) a menos que se indique explícitamente lo contrario. Se debe notar que las herramientas de síntesis de los entornos de CAD para circuitos integrados proporcionan toda la información que aparece en la Tabla 1 en cuanto a los bloques: el tiempo de propagación de cada bloque, área de silicio estimada y bloques que pertenecen al camino crítico de propagación de las señales. Sin embargo, la asociación de los bloques de hardware a cada etapa de un pipeline no necesariamente puede ser hecha por las herramientas de síntesis, dado que en este caso, debería ser posible especificar que se trata de un pipeline (algo que no es posible, por ejemplo, en VHDL de manera explícita). De alguna manera, la información de más alto nivel que proporcionan las herramientas de síntesis es la identificación de los bloques de hardware que pertenecen al camino crítico de propagación de las señales. Esta información de camino crítico se utiliza en la Tabla 1 para calcular el tiempo total de operación de cada etapa. Específicamente, el tiempo de cada etapa estará dado por la suma de los tiempos de propagación de los bloques del camino crítico dentro de la etapa. Esto se diferencia del área necesaria para implementar cada etapa, que será la suma de las áreas de todos los bloques que pertenecen a la etapa. Una vez que se tiene la información de síntesis agrupada por etapas y con los tiempos de cada etapa dados por los bloques del camino crítico, se puede calcular el tiempo de operación del pipeline. En el caso de la información de la Tabla 1, el tiempo está determinado por la Etapa 2, que es la de mayor tiempo de propagación: ps. En vez de sintetizar y optimizar todo el circuito, que es modo default de operación, también es posible realizar síntesis y optimización local, manteniendo la estructura de la descripción inicial (se mantienen la mayoría de las señales intermedias). Esta forma de optimización local es ideal para circuitos grandes como pueden ser los sumadores y comparadores en este caso. En la tabla anterior los resultados mostrados no tuvieron en cuenta esta opción ya que el default del CAD es la optimización global en la que se remueven la mayoría de las señales intermedias de manera que las salidas se expresan en términos de las entradas o de registros internos. 5. OPTIMIZACION DE SÍNTESIS En una implementación del estilo pipeline es necesario, en lo posible, que los tiempos de cada una de las etapas sean similares. Analizando los datos de la Tabla 1, sería necesario mejorar las Etapas 1 y 2 para acercarlas a los tiempos de las Etapas 3 y 4. Para esto se puede hacer uso de las herramientas de optimización y síntesis que se mencionaron anteriormente, con la utilización de los parámetros del algoritmo en forma local a estas etapas (1 y 2), variando el costo de optimización entre área y delay (en forma porcentual). En el caso de la Etapa 1, se tienen varios bloques a optimizar. Para evitar una cantidad muy grande de posibilidades de optimización y de tiempo de ejecución de las herramientas, se decidió optimizar el 7

8 bloque dentro de esta etapa que tiene más de la mitad del tiempo de operación total: el comparador. En el caso de la Etapa 2 no hay posibilidades de elección, se debe mejorar el sumador. Se analizará primero el sumador de la Etapa 2 por ser el bloque de mayor tiempo absoluto de todo el pipeline. La Figura 14 muestra gráficamente los resultados de varias alternativas de optimización para el bloque Sumador. Estas alternativas son paramétricas para las herramientas de Alliance utilizadas para la síntesis. Sobre el eje x se muestra el tiempo de operación de cada alternativa, comenzando por el tiempo inicial de la Tabla 1, es decir 1799 ps. Además, para cada una de las alternativas de optimización se da una estimación de la variación (aumento) del área de silicio ocupada en forma porcentual respecto del total sobre el eje y. En el caso del tiempo inicial no se tiene ninguna variación, pero el mejor tiempo de operación del circuito obtenido por optimización, 581 ps, implica un aumento aproximado de 16% del total del área del pipeline. Aumento de Area Total (%) Sumador Tiempo (ps) Figura 14: Optimización en Síntesis: Sumador. En general, se puede observar que a mayor optimización de tiempo se tiene mayor área ocupada. La excepción está dada en los dos últimos valores de optimización: aunque el tiempo de operación se reduce de 664 ps a 581 ps el área ocupada también se reduce. Esto da una idea de las características heurísticas de los algoritmos de optimización y su combinación con los algoritmos (también heurísticos) de ubicación de celdas y ruteo de señales. Por otro lado, aunque el área total del circuito aumenta, la ganancia en tiempo total de operación del pipeline puede ser de casi 5 ps ( = 4988 ps). Evidentemente en este bloque en particular la ganancia de tiempo es cercana al 5% (utilizando solamente 16% más de área), pero no se conoce aún la ganancia exacta de todo el pipeline porque se deben tener en cuenta todas las etapas y su relación de tiempos. En particular, optimizando solamente al bloque sumador, la Etapa 1 pasaría a ser la de mayor tiempo de todo el pipeline. Dado que se ha obtenido una mejora más que significativa para la Etapa 2 se aplicarán las opciones de optimización al bloque Comparador de la Etapa 1 para mejorar su tiempo de operación. La Figura 15 muestra gráficamente los resultados de varias alternativas de optimización para el bloque Comparador. A diferencia de lo que sucede en el bloque Sumador, las opciones de optimización sobre el bloque Comparador no son muy consistentes en cuanto a la relación tiempo-área. Sin embargo, de notarse que las variaciones de área son muy pequeñas: en el rango de -.2% a +.3%. Esto significa que se puede optimizar el tiempo de propagación casi con la misma área de silicio (se debe recordar una vez más el carácter heurístico de los algoritmos utilizados para la síntesis). Aumento de Area Total (%) Comparador Tiempo (ps) Figura 15: Optimización en Síntesis: Comparador. Otra de las características del bloque Comparador que es esencialmente distinta del bloque Sumador es que la optimización de tiempo es mucho menor: poco más de 1 ps, que representa una ganancia de aproximadamente 17%. Sin embargo, desde el punto de vista del área ocupada, esta ganancia del 17% se obtiene casi al mismo costo que el pipeline original, dado que solamente se necesita poco más de.1% más de área total. En resumen, aplicando las optimizaciones a los dos bloques, Sumador y Comparador, se estaría en la situación que describe la Tabla 2 en cuanto a tiempos de operación de cada etapa. La mejora de los tiempos de propagación de las etapas más lentas lleva a mejorar significativamente el tiempo de operación del pipeline. Una vez aplicadas las optimizaciones que se han detallado y con los tiempos de las etapas que se muestran en la Tabla 2, el tiempo de operación de todo el pipeline está determinado por la Etapa 1: 8855 ps. En 8

9 términos de mejora porcentual, la ganancia ha sido significativa: de ps a 8855 ps, es decir un poco más del 24% de mejora. Y esto utilizando poco más de 16% de área para todo el circuito. Etapa Tiempo (ps) Area (λ 2 ) Etapa Etapa Etapa Etapa Tabla 2: Tiempo y Área Con Optimizaciones de Síntesis. Otro resultado de interés que está relacionado con el área de silicio utilizada es la cantidad de transistores que posee el core. El CAD de diseño posee herramientas para extraer el mapa de transistores del circuito total y de cada bloque por separado. La cantidad utilizada fue alrededor de 24 y en la Figura 16 se muestra el ASIC del sumador de punto flotante. Figura 16: ASIC del Sumador. 6. OPTIMIZACION POR REDISEÑO Aunque la mejora obtenida en cuanto a optimización desde los resultados de síntesis de la Tabla 1 ha sido significativa, aún quedan posibilidades de optimización. Lo inmediato sería seguir aplicando alternativas de optimización disponibles en las herramientas de síntesis como se ha mostrado en la sección anterior. Sin embargo, es de esperar que estas optimizaciones no aporten muchas mejoras significativas porque: La Etapa 1 es la que ahora (Tabla 2) determina el tiempo de operación del pipeline. La Etapa 1 ya ha sido parcialmente optimizada. En particular, el bloque de la Etapa 1 que tiene más del 5% del tiempo de propagación no puede ser optimizado más de manera significativa. Sin embargo, es de esperar que haya alguna forma de mejorar los tiempos de operación del pipeline dado que la Etapa 1 tiene un tiempo bastante mayor de operación que el resto de las etapas. Una posible solución, que es bastante inmediata en el contexto de los pipelines: subdividir la etapa mayor para obtener dos etapas nuevas, ambas de menor tiempo. En este caso, la información de la Tabla 1 respecto de los bloques que pertenecen al camino crítico puede ser de gran ayuda: el bloque de comparación se incluye en la nueva Etapa 1 y el resto de los bloques se consideran parte de la nueva Etapa 2. Las demás etapas solamente se renumeran. El rediseño del pipeline, aunque elegante, tiene costos asociados. Como mínimo en términos de área, se deben agregar los registros intermedios entre las nuevas Etapas 1 y 2. Sin embargo, la ganancia en tiempo por el rediseño es importante: la nueva Etapa 1 tendría tiempo de operación de 4964 ps (Comparador con su correspondiente optimización en síntesis) más 882 ps de los nuevos flip flops. En total: 5886 ps, valor muy similar al de las últimas dos etapas. La nueva Etapa 2 no tendría un impacto significativo en los tiempos de propagación, ya que sumaría: 643 ps (Selector de Fracción) más 2366 ps (Desplazador a Derecha) más 882 ps (Registros) lo cual implica, en total, 3891 ps. Ahora el tiempo de operación del pipeline estaría determinado por la nueva Etapa 3 (que contiene el Sumador) y sería de 6683 ps (Tabla 2). Se debe notar que la mayoría del trabajo realizado en la optimización de síntesis sigue siendo útil: los tiempos que se obtuvieron antes (los detallados en la sección anterior, en este caso) se reutilizan y no es necesario recalcular nuevos. Es de esperar que esto se mantenga siempre y cuando el rediseño mantenga la mayoría de los bloques funcionales como en este caso. Otro de los costos asociados al rediseño (subdividiendo una etapa en dos nuevas) que no es tan inmediato: ahora el tiempo de llenado y de vaciado del pipeline no es el mismo, dado que se tiene una etapa más. Por lo tanto sería mayor, por ejemplo, el costo de que el pipeline entre en régimen y se obtengan los primeros resultados. Es importante que a nivel de rediseño en VHDL, el costo es mínimo por la potencia misma del lenguaje de descripción. 7. CONCLUSIONES Y TRABAJO FUTURO Se ha presentado un sumador de números representados en punto flotante siguiendo la norma definida por IEEE. La potencia de VHDL permite una rápida especificación y simulación del circuito, con lo cual se puede pensar más rápidamente en la optimización del mismo. Las optimizaciones hechas a nivel de las herramientas de 9

10 síntesis pueden ser muy útiles. En el caso de este artículo se obtiene una mejora de más de 24% de tiempo de operación con poco más de 16% más de área de silicio necesaria para la implementación. Aunque son útiles y necesarias, las herramientas de síntesis y optimización tienen un límite. En el caso presentado, si se necesita optimizar mucho más del 24% de tiempo de operación se debe recurrir necesariamente al rediseño del circuito o de partes del mismo. Nuevamente la potencia de VHDL simplifica en gran medida esta tarea. Por otro lado, las herramientas incluidas en los CAD para circuitos integrados no necesariamente proveen los resultados en la forma necesaria para una correcta evaluación. En el caso del sumador, el entorno de CAD no identifica más que bloques de hardware y por lo tanto debe reorganizarse la salida de las herramientas para identificar claramente las etapas del pipeline en cuanto a bloques que contienen y cuáles bloques dentro de cada etapa son importantes en cuanto a su pertenencia al camino crítico de propagación de las señales. En términos de la continuidad de las tareas de diseño, el paso inmediato sería la definición de un sumador que cumple la norma IEEE de punto flotante de simple y doble precisión. Esto implica, por ejemplo, incluir el manejo de NaN y números no normalizados. En cuanto a la implementación se debería elegir una tecnología definitiva, y esto puede significar un posible cambio a otra herramienta de CAD como Cadence. Desde el punto de vista de las alternativas de mejorar los tiempos de diseño, es importante considerar la paralelización de la simulación de código VHDL. Esto permitiría definir un conjunto de casos de pruebas mayor y por lo tanto aumentaría también la confiabilidad del diseño en VHDL. Otra de las tareas que ha demostrado que consume mucho tiempo es la de optimización vía las herramientas de síntesis. En particular, las heurísticas consumen mucho tiempo de ejecución, principalmente sobre los bloques de hardware más complejos. Sin embargo, en este caso se estarían modificando las herramientas mismas del CAD. 8. REFERENCIAS [1] IEEE Standard VHDL Language Reference Manual, Std , IEEE, NY, [2] J. Bhasker, A VHDL Primer, Prentice Hall PTR, Upper Saddle River NJ 7458, [3] Kai-shing Lam, Frederic Ak, Alliance Tutorial, Part 1 VHDL Modeling and Simulation, Pierre & Marie Curie University, France, pp. 2-16, 24. Alliance distribution: [4] Kai-shing Lam, Frederic Ak, Alliance Tutorial, Part 2 Logic Synthesis, Pierre & Marie Curie University, France, pp , 24. Included in the Alliance distribution available at: [5] Kai-shing Lam, Frederic Ak, Alliance Tutorial, Part 3 Place and Route, Pierre & Marie Curie University, France, pp. 2-7, 24. Included in the Alliance distribution available at: [6] Greiner A., F. Pêcheux, ALLIANCE. A Complete Set of CAD Tools for Teaching VLSI Design, Proceedings of the Third Eurochip Workshop on VLSI Design Training, pp , Grenoble, France, Sept [7] Équipe Architecture des Systèmes et Micro-Électronique, Alliance: A Complete CAD System for VLSI Design, LIP 6, Université Pierre et Marie Courie, France. [8] Virginia Polytechnic Institute and State University, Cadence tutorial for VLSI Design, January 25, [9] ANSI/IEEE Std , IEEE Standard for Binary Floating-Point Arithmetic, The Institute of Electrical and Electrionics Engineers, pp. 3-13, [1] Seidel P-M., Even G., On the Design of Fast IEEE Floating Point Adders, 15th IEEE Symposium on Computer Arithmetic, p. 184, June 11-13, 21, Vail, Colorado. [11] Koren I., Computer Arithmetic Algorithms, 2nd. Edition, A. K. Peters, Natik, MA, 22, ISBN [12] Jain S. A., Low Power Single-Precision IEEE Floating Point Unit, Master of Engineering, MIT, May 23. [13] SXLIB Standard Cell Library Description. [14] Kai Hwang, Advanced Computer Architecture: Parallelism, Scalability, Programmability. McGraw-Hill Science/Engineering/Math, Dec. 1992, ISBN: [15] Neil Weste, Kamran Eshraghian, Principles of CMOS VLSI Design, Addison-Wesley Publishing Company, USA, [16] Jan M. Rabaey, Anantha Chandrakasan, and Borivoje Nikolic, Digital Integrated Circuits - A Design Perspective, Second Edition, Prentice Hall, 23, ISBN [17] John F. Wakerly, Diseño Digital Principios y Practicas, Prentice Hall Hispanoamericana, 535 Naucalpan de Juárez México, [18] William Stallings, Organización y Arquitectura de Computadores, Prentice Hall, Madrid,

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente:

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente: Departamento de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Antioquia Arquitectura de Computadores y Laboratorio ISI355 (2011 2) Práctica No. 1 Diseño e implementación de una unidad aritmético

Más detalles

1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1

1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 5.1.3 Multiplicación de números enteros. El algoritmo de la multiplicación tal y como se realizaría manualmente con operandos positivos de cuatro bits es el siguiente: 1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0

Más detalles

Metodologías de diseño de hardware

Metodologías de diseño de hardware Capítulo 2 Metodologías de diseño de hardware Las metodologías de diseño de hardware denominadas Top-Down, basadas en la utilización de lenguajes de descripción de hardware, han posibilitado la reducción

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

Tema 11: Sistemas combinacionales

Tema 11: Sistemas combinacionales Tema 11: Sistemas combinacionales Objetivo: Introducción Generador Comprobador de paridad Comparadores Semisumador (HA) Sumador Completo (FA) Expansión de sumadores Sumador paralelo con arrastre serie

Más detalles

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto

Más detalles

Generación de funciones lógicas mediante decodificadores binarios con salidas activas a nivel alto

Generación de funciones lógicas mediante decodificadores binarios con salidas activas a nivel alto Generación de funciones lógicas mediante decodificadores binarios con salidas activas a nivel alto Apellidos, nombre Martí Campoy, Antonio (amarti@disca.upv.es) Departamento Centro Informática de Sistemas

Más detalles

Organización del Computador. Prof. Angela Di Serio

Organización del Computador. Prof. Angela Di Serio Punto Flotante Muchas aplicaciones requieren trabajar con números que no son enteros. Existen varias formas de representar números no enteros. Una de ellas es usando un punto o coma fijo. Este tipo de

Más detalles

Centro de Capacitación en Informática

Centro de Capacitación en Informática Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.

Más detalles

18. Camino de datos y unidad de control

18. Camino de datos y unidad de control Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 18. Camino de datos y unidad de control Un La versatilidad una característica deseable los Los

Más detalles

T6. CIRCUITOS ARITMÉTICOS

T6. CIRCUITOS ARITMÉTICOS T6. CIRCUITOS ARITMÉTICOS Circuitos Aritméticos Son dispositivos MSI que pueden realizar operaciones aritméticas (suma, resta, multiplicación y división) con números binarios. De todos los dispositivos,

Más detalles

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ ELECTRÓNICA DIGITAL DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ IES TRINIDAD ARROYO DPTO. DE ELECTRÓNICA ÍNDICE ÍNDICE... 1 1. LIMITACIONES DE LOS CONTADORES ASÍNCRONOS... 2 2. CONTADORES SÍNCRONOS...

Más detalles

Representación de números en binario

Representación de números en binario Representación de números en binario Héctor Antonio Villa Martínez Programa de Ciencias de la Computación Universidad de Sonora El sistema binario es el más utilizado en sistemas digitales porque es más

Más detalles

DE VIDA PARA EL DESARROLLO DE SISTEMAS

DE VIDA PARA EL DESARROLLO DE SISTEMAS MÉTODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS 1. METODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMAS. El desarrollo de Sistemas, un proceso

Más detalles

CODIFICADORES CON PRIORIDAD. Grupo 2

CODIFICADORES CON PRIORIDAD. Grupo 2 CODIFICADORES CON PRIORIDAD Grupo 2 Descripción Los codificadores son circuitos combinacionales generalmente de 2 N entradas y N salidas, donde las salidas son el código binario correspondiente al valor

Más detalles

CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de

CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de cualquier modelo en el software Algor. La preparación de un modelo,

Más detalles

Universidad Autónoma de Baja California Facultad de Ingeniería Mexicali

Universidad Autónoma de Baja California Facultad de Ingeniería Mexicali Sumadores En este documento se describe el funcionamiento del circuito integrado 7483, el cual implementa un sumador binario de 4 bits. Adicionalmente, se muestra la manera de conectarlo con otros dispositivos

Más detalles

Decisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama.

Decisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama. Diagrama de Flujo La presentación gráfica de un sistema es una forma ampliamente utilizada como herramienta de análisis, ya que permite identificar aspectos relevantes de una manera rápida y simple. El

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

Tema IV. Unidad aritmético lógica

Tema IV. Unidad aritmético lógica Tema IV Unidad aritmético lógica 4.1 Sumadores binarios 4.1.1 Semisumador binario (SSB) 4.1.2 Sumador binario completo (SBC) 4.1.3 Sumador binario serie 4.1.4 Sumador binario paralelo con propagación del

Más detalles

Tema 16 ELECTRÓNICA DIGITAL LENGUAJES DE DESCRIPCIÓN DE LOS SISTEMAS DIGITALES (PARTE 1)

Tema 16 ELECTRÓNICA DIGITAL LENGUAJES DE DESCRIPCIÓN DE LOS SISTEMAS DIGITALES (PARTE 1) ELECTRÓNICA DIGITAL Tema 16 LENGUAJES DE DESCRIPCIÓN DE LOS SISTEMAS DIGITALES (PARTE 1) IMPORTANCIA DE LOS ESQUEMAS Los circuitos y sistemas electrónicos digitales cuya complejidad es limitada, se pueden

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

3.8 Construcción de una ALU básica

3.8 Construcción de una ALU básica 3.8 Construcción de una ALU básica En este punto veremos como por medio de compuertas lógicas y multiplexores, se pueden implementar las operaciones aritméticas básicas de una ALU. Esencialmente en este

Más detalles

Aritmética Binaria. Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid

Aritmética Binaria. Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid Aritmética Binaria Luis Entrena, Celia López, Mario García, Enrique San Millán Universidad Carlos III de Madrid 1 Índice Representación de números con signo Sistemas de Signo y Magnitud, Complemento a

Más detalles

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria Oliverio J. Santana Jaria 3. Aritmética tica binaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Para Los La en conocer muchos aritmética comprender otros binaria tipos

Más detalles

Sistemas de numeración y aritmética binaria

Sistemas de numeración y aritmética binaria Sistemas de numeración y aritmética binaria Héctor Antonio Villa Martínez Programa de Ciencias de la Computación Universidad de Sonora Este reporte consta de tres secciones. Primero, la Sección 1 presenta

Más detalles

Práctica 5. Curso 2014-2015

Práctica 5. Curso 2014-2015 Prácticas de Seguridad Informática Práctica 5 Grado Ingeniería Informática Curso 2014-2015 Universidad de Zaragoza Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas

Más detalles

Computación I Representación Interna Curso 2011

Computación I Representación Interna Curso 2011 Computación I Representación Interna Curso 2011 Facultad de Ingeniería Universidad de la República Temario Representación de Números Enteros Representación de Punto Fijo Enteros sin signo Binarios puros

Más detalles

5.1.1 Sumadores con anticipación de Acarreo. g i = a i b i. c i = c i-1 p i + g i s i = p i + c i-1. c 0 = g 0 + c -1 p 0

5.1.1 Sumadores con anticipación de Acarreo. g i = a i b i. c i = c i-1 p i + g i s i = p i + c i-1. c 0 = g 0 + c -1 p 0 5.1.1 Sumadores con anticipación de Acarreo. El sumador paralelo de n bits que se ha mostrado hasta ahora, tiene un nivel de retardo de 2*n puertas, pues necesita 2*n etapas de puertas lógicas para que

Más detalles

Aritmética finita y análisis de error

Aritmética finita y análisis de error Aritmética finita y análisis de error Escuela de Ingeniería Informática de Oviedo (Dpto. de Matemáticas-UniOvi) Computación Numérica Aritmética finita y análisis de error 1 / 47 Contenidos 1 Sistemas decimal

Más detalles

La Unidad Procesadora.

La Unidad Procesadora. La Unidad Procesadora. En un sistema digital complejo, la capa de hardware de la máquina es el nivel más bajo del modelo de capas de un sistema microcomputarizado. La unidad procesadora es una parte del

Más detalles

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS ESTRUCTURA DE COMPUTADORES Pag. 8.1 LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS 1. Circuitos de multiplicación La operación de multiplicar es mas compleja que la suma y por tanto se

Más detalles

SINTESIS Y DESCRIPCIÓN DE CIRCUITOS DIGITALES UTILIZANDO VHDL ANTECEDENTES

SINTESIS Y DESCRIPCIÓN DE CIRCUITOS DIGITALES UTILIZANDO VHDL ANTECEDENTES ANTECEDENTES En los últimos diez años la industria electrónica ha tenido una gran evolución en el desarrollo de sistemas digitales; desde computadoras personales, sistemas de audio y vídeo hasta dispositivos

Más detalles

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:

Más detalles

Sistemas de Numeración Operaciones - Códigos

Sistemas de Numeración Operaciones - Códigos Sistemas de Numeración Operaciones - Códigos Tema 2 1. Sistema decimal 2. Sistema binario 3. Sistema hexadecimal 4. Sistema octal 5. Conversión decimal binario 6. Aritmética binaria 7. Complemento a la

Más detalles

UNIDAD 2 Configuración y operación de un sistema de cómputo Representación de datos Conceptos El concepto de bit (abreviatura de binary digit) es fundamental para el almacenamiento de datos Puede representarse

Más detalles

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES Raúl Palma G. y Guillermo Bustos R. Escuela de Ingeniería Industrial Universidad Católica de Valparaíso Casilla

Más detalles

Curso a distancia: INTRODUCCIÓN AL DISEÑO LÓGICO PROGRAMABLE CON VHDL. Capítulo 3. Codificadores

Curso a distancia: INTRODUCCIÓN AL DISEÑO LÓGICO PROGRAMABLE CON VHDL. Capítulo 3. Codificadores Curso a distancia: INTRODUCCIÓN AL DISEÑO LÓGICO PROGRAMABLE CON VHDL Capítulo 3 Codificadores Codificadores binarios y codificadores de prioridad. Codificadores de 3 a 2 líneas y de 4 a dos líneas. Detector

Más detalles

Representación de números enteros: el convenio signo y magnitud

Representación de números enteros: el convenio signo y magnitud Representación de números enteros: el convenio signo y magnitud Apellidos, nombre Martí Campoy, Antonio (amarti@disca.upv.es) Departamento Centro Informàtica de Sistemes i Computadors Escola Tècnica Superior

Más detalles

CIRCUITOS ARITMÉTICOS

CIRCUITOS ARITMÉTICOS LABORATORIO # 6 Realización: 26-05-2011 CIRCUITOS ARITMÉTICOS 1. OBJETIVOS Comprender los circuitos aritméticos dentro de la lógica binaria Utilizar sumadores totales de cuatro bits dentro de un Circuito

Más detalles

Estructuras de Datos y Algoritmos. Árboles de Expresión

Estructuras de Datos y Algoritmos. Árboles de Expresión Estructuras de Datos y Algoritmos Árboles de Expresión Año 2014 Introducción Los avances tecnológicos producen día a día una gran cantidad de información que debe ser almacenada y procesada en forma eficiente.

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

Gestión de Oportunidades

Gestión de Oportunidades Gestión de Oportunidades Bizagi Suite Gestión de Oportunidades 1 Tabla de Contenido CRM Gestión de Oportunidades de Negocio... 4 Elementos del Proceso... 5 Registrar Oportunidad... 5 Habilitar Alarma y

Más detalles

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL ELECTRÓNICA DIGITAL La electrónica es la rama de la ciencia que se ocupa del estudio de los circuitos y de sus componentes, que permiten modificar la corriente eléctrica amplificándola, atenuándola, rectificándola

Más detalles

Ampliación de Estructuras de Datos

Ampliación de Estructuras de Datos Ampliación de Estructuras de Datos Amalia Duch Barcelona, marzo de 2007 Índice 1. Diccionarios implementados con árboles binarios de búsqueda 1 2. TAD Cola de Prioridad 4 3. Heapsort 8 1. Diccionarios

Más detalles

Circuitos Electrónicos. Primer parcial curso 2006-07

Circuitos Electrónicos. Primer parcial curso 2006-07 Circuitos Electrónicos. Primer parcial curso 2006-07 Ante el creciente interés por las apuestas deportivas, el Departamento Técnico de las Loterías y Apuestas del Estado os ha encargado la actualización

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Medias Móviles: Señales para invertir en la Bolsa

Medias Móviles: Señales para invertir en la Bolsa www.gacetafinanciera.com Medias Móviles: Señales para invertir en la Bolsa Juan P López..www.futuros.com Las medias móviles continúan siendo una herramienta básica en lo que se refiere a determinar tendencias

Más detalles

REGISTROS DE DESPLAZAMIENTO

REGISTROS DE DESPLAZAMIENTO REGISTROS DE DESPLAZAMIENTO Es un circuito digital que acepta datos binarios de una fuente de entrada y luego los desplaza, un bit a la vez, a través de una cadena de flip-flops. Este sistema secuencial

Más detalles

UNIDADES DE ALMACENAMIENTO DE DATOS

UNIDADES DE ALMACENAMIENTO DE DATOS 1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo

Más detalles

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León.

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León. Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León Programa 1. Introducción. 2. Operaciones lógicas. 3. Bases de la aritmética

Más detalles

INTRODUCCION A LA PROGRAMACION DE PLC

INTRODUCCION A LA PROGRAMACION DE PLC INTRODUCCION A LA PROGRAMACION DE PLC Esta guía se utilizará para estudiar la estructura general de programación de um PLC Instrucciones y Programas Una instrucción u orden de trabajo consta de dos partes

Más detalles

Puertas Lógicas. Contenidos. Objetivos

Puertas Lógicas. Contenidos. Objetivos Contenidos Objetivos En esta quincena aprenderás a: Implementar funciones mediante puertas lógicas. Conocer y manejar la simbología de las puertas lógicas. Construir circuitos lógicos en el programa simulador

Más detalles

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE)

Parámetros con la ventana de selección de usuario, reglas, texto y descomposición (IVE) QUÉ SON CONCEPTOS PARAMÉTRICOS? Los conceptos paramétricos de Presto permiten definir de una sola vez una colección de conceptos similares a partir de los cuales se generan variantes o conceptos derivados

Más detalles

ARITMÉTICA EN PUNTO FLOTANTE

ARITMÉTICA EN PUNTO FLOTANTE ARITMÉTICA EN PUNTO FLOTANTE AMPLIACIÓN DE ESTRUCTURA DE COMPUTADORES Daniel Mozos Muñoz Facultad de Informática 1 Aritmética en punto flotante 1. Representación de números en punto flotante 2. IEEE 754

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

Práctica I Modelado y simulación de una máquina expendedora de refrescos

Práctica I Modelado y simulación de una máquina expendedora de refrescos Práctica I Modelado y simulación de una máquina expendedora de refrescos Departamento de Ingeniería Electrónica de Sistemas Informáticos y Automática 2 1.1. Objetivos. En esta práctica vamos a modelar

Más detalles

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 Historia de revisiones Fecha VersiónDescripción Autor 08/10/2009 1.0 Creación del documento.

Más detalles

PERFIL DEL PUESTO POR COMPETENCIAS Sepa cómo construirlo y evitar bajos desempeños posteriores

PERFIL DEL PUESTO POR COMPETENCIAS Sepa cómo construirlo y evitar bajos desempeños posteriores PERFIL DEL PUESTO POR COMPETENCIAS Sepa cómo construirlo y evitar bajos desempeños posteriores Martha Alicia Alles Es contadora pública nacional, doctora por la Universidad de Buenos Aires en la especialidad

Más detalles

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases. BASES Y DIMENSIÓN Definición: Base. Se llama base de un espacio (o subespacio) vectorial a un sistema generador de dicho espacio o subespacio, que sea a la vez linealmente independiente. β Propiedades

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

2) Se ha considerado únicamente la mano de obra, teniéndose en cuenta las horas utilizadas en cada actividad por unidad de página.

2) Se ha considerado únicamente la mano de obra, teniéndose en cuenta las horas utilizadas en cada actividad por unidad de página. APLICACIÓN AL PROCESO PRODUCTIVO DE LA EMPRESA "F. G. / DISEÑO GRÁFICO". AÑO 2004 Rescala, Carmen Según lo explicado en el Informe del presente trabajo, la variación en la producción de páginas web de

Más detalles

4 Pruebas y análisis del software

4 Pruebas y análisis del software 4 Pruebas y análisis del software En este capítulo se presentan una serie de simulaciones donde se analiza el desempeño de ambos sistemas programados en cuanto a exactitud con otros softwares que se encuentran

Más detalles

Consideraciones al precio de un warrant. El precio del warrant: la prima. Factores que afectan al precio de un warrant

Consideraciones al precio de un warrant. El precio del warrant: la prima. Factores que afectan al precio de un warrant Consideraciones al precio de un warrant El precio del warrant: la prima La prima es el precio que se paga por comprar un warrant. El inversor adquiere así el derecho a comprar (warrant Call) o vender (warrant

Más detalles

TEMA 5. ELECTRÓNICA DIGITAL

TEMA 5. ELECTRÓNICA DIGITAL TEMA 5. ELECTRÓNICA DIGITAL 1. INTRODUCCIÓN Los ordenadores están compuestos de elementos electrónicos cuyas señales, en principio, son analógicas. Pero las señales que entiende el ordenador son digitales.

Más detalles

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse. TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.

Más detalles

de la empresa Al finalizar la unidad, el alumno:

de la empresa Al finalizar la unidad, el alumno: de la empresa Al finalizar la unidad, el alumno: Identificará el concepto de rentabilidad. Identificará cómo afecta a una empresa la rentabilidad. Evaluará la rentabilidad de una empresa, mediante la aplicación

Más detalles

Conclusiones. Particionado Consciente de los Datos

Conclusiones. Particionado Consciente de los Datos Capítulo 6 Conclusiones Una de las principales conclusiones que se extraen de esta tesis es que para que un algoritmo de ordenación sea el más rápido para cualquier conjunto de datos a ordenar, debe ser

Más detalles

Sistemas de numeración

Sistemas de numeración Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan

Más detalles

Sistemas Electrónicos Digitales. Práctica 1 Multiplicador de 8 bits secuencial con desplazamiento hacia la derecha

Sistemas Electrónicos Digitales. Práctica 1 Multiplicador de 8 bits secuencial con desplazamiento hacia la derecha Sistemas Electrónicos igitales Práctica de 8 bits secuencial con desplazamiento hacia la derecha Javier Toledo Moreo pto. Electrónica, Tecnología de Computadoras y Proyectos Universidad Politécnica de

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

COMO MEDIR LA EFECTIVIDAD DE LA CONCIENTIZACIÓN

COMO MEDIR LA EFECTIVIDAD DE LA CONCIENTIZACIÓN COMO MEDIR LA EFECTIVIDAD DE LA CONCIENTIZACIÓN Ing. Carlos Ormella Meyer Los planes de concientización especialmente en seguridad de la información han sido muchas veces terreno fértil de opiniones discordantes,

Más detalles

Revista Argentina de Trabajos Estudiantiles

Revista Argentina de Trabajos Estudiantiles Circuito Integrado para Conversión Serie Paralelo 1 S. Sondón, L. Stefanazzi, M. Di Federico, P. Julian, P. S. Mandolesi Universidad Nacional del Sur, Bahía Blanca Resumen Un conversor Serie-Paralelo/Paralelo-Serie

Más detalles

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN I. P. N. ESIME Unidad Culhuacan INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA UNIDAD CULHUACAN INGENIERIA EN COMUNICACIONES Y ELECTRÓNICA ACADEMIA DE COMPUTACIÓN LABORATORIO

Más detalles

Pipelining o Segmentación de Instrucciones

Pipelining o Segmentación de Instrucciones Pipelining o Segmentación de Instrucciones La segmentación de instrucciones es similar al uso de una cadena de montaje en una fábrica de manufacturación. En las cadenas de montaje, el producto pasa a través

Más detalles

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS Tema 5: CIRCUITOS ARITMÉTICOS Contenido: * Aritmética binaria. * Circuito semisumador. Sumador completo. * Operaciones con n bits. Sumador paralelo con arrastre serie. * Circuito sumador-restador. * Sumador

Más detalles

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones Fracciones. Las fracciones y los números Racionales Las fracciones se utilizan cotidianamente en contextos relacionados con la medida, el reparto o como forma de relacionar dos cantidades. Tenemos entonces

Más detalles

1.1 Sistema de numeración binario

1.1 Sistema de numeración binario 1.1 Sistema de numeración binario Un sistema de numeración consta de: Un conjunto ordenado de cifras y un conjunto de operaciones. Llamaremos Base al número de cifras que hay en dicho conjunto. De este

Más detalles

Tema 4: Sistemas de Numeración. Codificación Binaria. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid

Tema 4: Sistemas de Numeración. Codificación Binaria. Escuela Politécnica Superior Ingeniería Informática Universidad Autónoma de Madrid Tema 4: Sistemas de Numeración. Codificación Binaria Ingeniería Informática Universidad Autónoma de Madrid 1 O B J E T I V O S Sistemas de Numeración. Codificación Binaria Conocer los diferentes sistemas

Más detalles

RELACIONES DE RECURRENCIA

RELACIONES DE RECURRENCIA Unidad 3 RELACIONES DE RECURRENCIA 60 Capítulo 5 RECURSIÓN Objetivo general Conocer en forma introductoria los conceptos propios de la recurrencia en relación con matemática discreta. Objetivos específicos

Más detalles

Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios. Dra. Noemí L. Ruiz Limardo 2009

Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios. Dra. Noemí L. Ruiz Limardo 2009 Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios Dra. Noemí L. Ruiz Limardo 2009 Objetivos de la Lección Al finalizar esta lección los estudiantes: Identificarán, de una lista de expresiones

Más detalles

Capítulo 9. Archivos de sintaxis

Capítulo 9. Archivos de sintaxis Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta

Más detalles

Creación de Funciones de Conducción

Creación de Funciones de Conducción Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado

Más detalles

Regulador PID con convertidores de frecuencia DF5, DV5, DF6, DV6. Página 1 de 10 A Regulador PID

Regulador PID con convertidores de frecuencia DF5, DV5, DF6, DV6. Página 1 de 10 A Regulador PID A Página 1 de 10 A Regulador PID INDICE 1. Regulador PID 3 2. Componente proporcional : P 4 3. Componente integral : I 4 4. Componente derivativa : D 4 5. Control PID 4 6. Configuración de parámetros del

Más detalles

Sistemas de Información Geográficos (SIG o GIS)

Sistemas de Información Geográficos (SIG o GIS) Sistemas de Información Geográficos (SIG o GIS) 1) Qué es un SIG GIS? 2) Para qué sirven? 3) Tipos de datos 4) Cómo trabaja? 5) Modelos de datos, Diseño Conceptual 6) GeoDataase (GD) 7) Cómo evaluamos

Más detalles

UTILIZACION DE LOS KPI S Y DE LOS SISTEMAS DE INFORMACION PARA LA TOMA DE DECISIONES

UTILIZACION DE LOS KPI S Y DE LOS SISTEMAS DE INFORMACION PARA LA TOMA DE DECISIONES UTILIZACION DE LOS KPI S Y DE LOS SISTEMAS DE INFORMACION PARA LA TOMA DE DECISIONES El mantenimiento de los activos ha alcanzado elevados niveles de sofisticación que han permitido que la moderna Gerencia

Más detalles

Cursos de Perfeccionamiento

Cursos de Perfeccionamiento www.infoplc.net 1 INDICE Introducción Contadores rápidos Restricciones en el uso de los contadores rápidos HSC0, HSC3, HSC4, HSC5 Utilización de los contadores rápidos Direccionamiento de los contadores

Más detalles

CAPÍTULO II MARCO TEÓRICO ADMNISTRACIÓN DE PROYECTOS CON CPM

CAPÍTULO II MARCO TEÓRICO ADMNISTRACIÓN DE PROYECTOS CON CPM CAPÍTULO II MARCO TEÓRICO ADMNISTRACIÓN DE PROYECTOS CON CPM 10 2.1 Introducción La dirección de un proyecto de gran magnitud no es una tarea fácil. Para los administradores este es uno de los trabajos

Más detalles

Sistema Inteligente de Exploración

Sistema Inteligente de Exploración Observatorio Municipal de Estadística Sistema Inteligente de Exploración Capítulos 1. Consideraciones iniciales y requerimientos... 2 2. Navegación... 3 3. Consulta de indicadores... 5 3.1. Elaboración

Más detalles

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

La ventana de Microsoft Excel

La ventana de Microsoft Excel Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft

Más detalles

Gestión de la Prevención de Riesgos Laborales. 1

Gestión de la Prevención de Riesgos Laborales. 1 UNIDAD Gestión de la Prevención de Riesgos Laborales. 1 FICHA 1. LA GESTIÓN DE LA PREVENCIÓN DE RIESGOS LABORALES. FICHA 2. EL SISTEMA DE GESTIÓN DE LA PREVENCIÓN DE RIESGOS LABORALES. FICHA 3. MODALIDAD

Más detalles

TEMA 11. CIRCUITOS ARITMÉTICOS TICOS DIGITALES

TEMA 11. CIRCUITOS ARITMÉTICOS TICOS DIGITALES TEM. CIRCUITOS RITMÉTICOS TICOS DIGITLES http://www.tech-faq.com/wp-content/uploads/images/integrated-circuit-layout.jpg IEEE 25 niversary: http://www.flickr.com/photos/ieee25/with/2809342254/ TEM. CIRCUITOS

Más detalles

- MANUAL DE USUARIO -

- MANUAL DE USUARIO - - MANUAL DE USUARIO - Aplicación: Kz Precio Hora Instagi Instagi Teléfono: 943424465-943466874 Email: instagi@instagi.com GUIA PROGRAMA CALCULO PRECIO HORA 1. Introducción 2. Datos de la empresa 2.1.Gastos

Más detalles

Cifras significativas e incertidumbre en las mediciones

Cifras significativas e incertidumbre en las mediciones Unidades de medición Cifras significativas e incertidumbre en las mediciones Todas las mediciones constan de una unidad que nos indica lo que fue medido y un número que indica cuántas de esas unidades

Más detalles

PESTAÑA DATOS - TABLAS EN EXCEL

PESTAÑA DATOS - TABLAS EN EXCEL PESTAÑA DATOS - TABLAS EN EXCEL Una tabla en Excel es un conjunto de datos organizados en filas o registros, en la que la primera fila contiene las cabeceras de las columnas (los nombres de los campos),

Más detalles