+ All Categories
Home > Documents > Fundamentos de Diseno Logico y de Computadoras

Fundamentos de Diseno Logico y de Computadoras

Date post: 04-Jun-2018
Category:
Upload: myriam-gabriela-aguilera-zertuche
View: 218 times
Download: 0 times
Share this document with a friend

of 646

Transcript
  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    1/644

    M. Morris Mano

    Charles R. Kime

    3 edic

    www.librosite.net/m

    Fundamentos de diseo lgicoy de computadoras

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    2/644

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    3/644

    Fundamentos de diseo lgicoy de computadoras

    Tercera Edicin

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    4/644

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    5/644

    Fundamentos de diseo lgico

    y de computadorasTercera Edicin

    M. MORRIS MANOCalifornia State University,Los ngeles

    CHARLES R. KIMEUniversity of Wisconsin,Madison

    TraduccinJos Antonio Herrera CamachoProfesor Titular de Escuela Universitaria

    Universidad Politcnica de Madrid

    Martina EckertDra. Ingeniera en TelecomunicacinUniversidad Politcnica de Madrid

    Beatriz Valcuende LozanoIngeniera Tcnica en Telefona y Transmisin de Datos

    Universidad Politcnica de Madrid

    Revisin tcnica

    Jos Antonio Herrera CamachoProfesor Titular de Escuela UniversitariaUniversidad Politcnica de Madrid

    Madrid Mxico Santafde Bogot Buenos Aires Caracas Lima MontevideoSan Juan San Jos Santiago Sao Paulo White Plains

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    6/644

    Datos de catalogacin bibliogrfica

    FUNDAMENTOS DE DISEO LGICO

    Y DE COMPUTADORAS

    Mano, M. Morris; Kime, Charles

    PEARSON EDUCACIN, S.A., Madrid, 2005

    ISBN: 978-84-832-2688-9

    Materia: Electrnica 621,3

    Formato 195#250 mm Pginas: 648

    Todos los derechos reservados.Queda prohibida, salvo excepcin prevista en la Ley, cualquier forma de reproduccin, distribucin,omunicacin pblica y transformacin de esta obra sin contar con autorizacin de los titularese propiedad intelectual. La infraccin de los derechos mencionados puede ser constitutivae delito contra la propiedad intelectual (arts. 270 y sgts. Cdigo Penal).

    DERECHOS RESERVADOS5 2005 por PEARSON EDUCACIN, S.A.Ribera del Loira, 28

    8042 Madrid (Espaa)

    FUNDAMENTOS DE DISEO LGICO Y DE COMPUTADORESMano, M. Morris; Kime, Charles

    SBN: 84-205-4399-3Depsito legal: M.

    PEARSON PRENTICE HALL es un sello editorial autorizado de PEARSON EDUCACIN, S.A.

    Authorized translation from the English language edition, entitled LOGIC AND COMPUTER DESIGNFUNDAMENTALS, 3rd Edition by Mano, M. Morris; Kime, Charkes, published by Pearson Education, Inc,

    ublishing as Prentice Hall, Copyright 5 2004.SBN 0-13-140539-X

    All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,lectronic or mechanical, including photocopying, recording or by any information storage retrieval system,

    without permission form Pearson Education, Inc.

    Equipo editorial:

    Editor: Miguel Martn-RomoTcnico editorial: Marta Caicoya

    Equipo de produccin:Director: JosAntonio ClaresTcnico: Diego Marn

    Diseo de cubierta:Equipo de diseo de Pearson Educacin, S.A.

    Composicin:COPIBOOK, S.L.

    mpreso por:

    MPRESO EN ESPAA - PRINTED IN SPAIN

    Este libro ha sido impreso con papel y tintas eco

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    7/644

    CONTENIDO

    Prefacio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 1 3

    ORDENADORES DIGITALES E INFORMACIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-1 Computadoras digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Representacin de la informacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Estructura de una computadora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Ms en relacin con la computadora genrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -2 Sistemas numricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Nmeros binarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Nmeros octales y hexadecimales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Rangos de los nmeros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Operaciones aritmticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Conversin de decimal a otras bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Cdigos decimales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Suma en BCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Bit de paridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Cdigos Gray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -6 Cdigos alfanumricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7 Sumario del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 2 27

    CIRCUITOS LGICOS COMBINACIONALES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-1 Lgica binaria y puertas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Lgica binaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Puertas lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    8/644

    -2 lgebra de Boole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Identidades bsicas del lgebra de Boole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Manipulacin algebraica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .El complemento de una funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Formas cannicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Minitrminos y maxitrminos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Suma de productos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Producto de sumas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Optimizacin de circuitos de dos niveles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Criterios de coste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Mapa de dos variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Mapa de tres variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Mapa de cuatro variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Manipulacin del mapa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Implicantes primos esenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Implicantes primos no esenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Optimizacin de producto de sumas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Condiciones de indiferencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6 Optimizacin de circuitos multinivel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7 Otros tipos de puertas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -8 Operador y puertas OR exclusiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Funcin impar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-9 Salidas en altas impedancia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -10 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 3 81

    DISEO LGICO COMBINACIONAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 Conceptos de diseo y automatizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Diseo jerrquico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Diseo top-down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Diseo asistido por computadora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Lenguaje de descripcin hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Sntesis lgica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -2 El espacio de diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Propiedades de las puertas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Niveles de integracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Tecnologas de circuitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Parmetros tecnolgicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Lgica positiva y negativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Compromisos de diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Ciclo de diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-4 Mapeado tecnolgico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Especificaciones de las clulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Libreras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Tcnicas de mapeado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    vi CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    9/644

    -5 Verificacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Anlisis lgico manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .La simulacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -6 Tecnologas de implementacin programables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Memorias de slo lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Array lgico programable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Arrays de lgica programables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -7 Sumario del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 4 133

    FUNCIONES Y CIRCUITOS COMBINACIONALES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 Circuitos combinacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -2 Funciones lgicas bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Asignacin, transferencia y complemento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Funciones de varios bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Habilitacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Decodificacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Extensin de decodificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Decodificadores con seal de habilitacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Codificacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Codificador con prioridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Expansin de codificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-5 Seleccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Multiplexores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Expansin de multiplexores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Implementaciones alternativas de selectores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -6 Implementacin de funciones combinacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Empleando decodificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Empleando multiplexores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Empleando memorias de slo lectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Usando arrays lgicos programables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Usando arrays de lgica programable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Empleando tablas de bsqueda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -7 HDL representacin para circuitos combinacionales-VHDL . . . . . . . . . . . . . . . . . . . . . . .-8 Representacin HDL de circuitos combinacionales-Verilog . . . . . . . . . . . . . . . . . . . . . . .-9 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 5 189

    FUNCIONES Y CIRCUITOS ARITMTICOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 Circuitos combinacionales iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -2 Sumadores binarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Semi-sumador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    10/644

    Sumador completo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Sumador binario con acarreo serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Sumador con acarreo anticipado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Resta binaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Complementos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Resta con complementos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Sumador-restador binario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Nmeros binarios con signo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Suma y resta binaria con signo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Overflow o desbordamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Multiplicacin binaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6 Otras funciones aritmticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Contraccin o reduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Incremento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Decremento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Multiplicacin por constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Divisin por constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Relleno a ceros y extensin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7 Representacin HDL-VHDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Descripcin de comportamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-8 Representaiones HDL-Verilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Descripcin de comportamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-9 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 6 227CIRCUITOS SECUENCIALES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 Definicin de circuito secuencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-2 Latches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Latches RS y R1S1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Latch D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Flip-flops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Flip-flop maestro-esclavo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Flip-flop disparados por flanco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Smbolos grficos estndar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Entradas asncronas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Tiempos de los flip-flops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Anlisis de circuitos secuenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Ecuaciones de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Tabla de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Diagrama de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Temporizacin del circuito secuencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Simulacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Diseo de circuitos secuenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Procedimiento del diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Localizacin de los diagramas de estados y las tablas de estados . . . . . . . . . . . . . . . . .

    viii CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    11/644

    Asignacin de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Diseando con flip-flops D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Diseando con estados no usados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Verificacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -6 Otros tipos de flip-flops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Flip-flops JKy T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -7 Representacin HDL para circuitos secuenciales-VHDL . . . . . . . . . . . . . . . . . . . . . . . . . .-8 Representacin de HDL para circuitos secuenciales-Verilog . . . . . . . . . . . . . . . . . . . . . .-9 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 7 291

    REGISTROS Y TRANSFERENCIA DE REGISTROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 Registros y habilitacin de carga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Registro con carga en paralelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-2 Transferencia de registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Operaciones de transferencia de registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Nota para usuarios de VHDL y Verilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Microoperaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Microoperaciones aritmticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Microoperaciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Microoperaciones de desplazamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -6 Microoperaciones en un registro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Transferencias basadas en multiplexores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Registros de desplazamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Contador asncrono . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Contadores binarios sncronos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Otros contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -7 Diseo de clulas bsicas de un registro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-8 Transferencia de mltiples registros basada en buses y multiplexores . . . . . . . . . . . . .

    Bus triestado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -9 Transferencia serie y microoperaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Suma en serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -10 Modelado en HDL de registros de desplazamiento y contadores-VHDL . . . . . . . . . . .

    -11 Modelado en HDL de registros de desplazamiento y contadores-Verilog . . . . . . . . . .-12 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 8 343

    ECUENCIAMIENTO Y CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 La unidad de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -2 Algoritmo de mquinas de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Diagrama ASM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-3 Ejemplos de diagramas ASM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    12/644

    Multiplicador binario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -4 Control cableado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Registro de secuencia y descodificador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Un flip-flop por estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Representacin HDL del multiplicador binario-VHDL . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6 Representacin HDL del multiplicador binario-Verilog . . . . . . . . . . . . . . . . . . . . . . . . . . .-7 Control microprogramado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -8 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 9 377

    MEMORIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -1 Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -2 Memoria de acceso aleatorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Operaciones de lectura y escritura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Temporizacin de las formas de onda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Caractersticas de las memorias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -3 Memorias integradas SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Seleccin combinada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-4 Array de circuitos integrados de memoria SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -5 Circuitos integrados de memoria DRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Celda DRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Tira de un bit de memoria DRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -6 Tipos de memoria DRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Memoria sncrona DRAM (SDRAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Memoria SDRAM de doble tasa de transferencia de datos (DDR SDRAM) . . . . . . . Memoria RAMBUS555 DRAM (RDRAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    -7 Arrays de circuitos integrados de memorias dinmicas RAM . . . . . . . . . . . . . . . . . . . . .-8 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 10 407

    FUNDAMENTOS DEL DISEO DE PROCESADORES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0-1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0-2 Rutas de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    0-3 Unidad aritmtico-lgica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Circuito aritmtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Circuito lgico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Unidad lgico-aritmtica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    0-4 El desplazador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Barrel Shifter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    0-5 Representacin de rutas de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    0-6 La palabra de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0-7 Arquitectura de un sencillo procesador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    x CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    13/644

    Arquitectura de conjunto de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Recursos de almacenamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Formatos de la instruccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Especificacin de las instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    0-8 Control cableado de un solo ciclo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Decodificador de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Ejemplo de instrucciones y programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas del procesador de un solo ciclo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    0-9 Control cableado multiciclo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Diseo del control secuencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0-10 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 11 459

    ARQUITECTURA DE CONJUNTO DE INSTRUCCIONES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-1 Conceptos de la arquitectura de procesadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Ciclo de operacin bsico de un procesador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Conjunto de registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-2 Direccionamiento de los operandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Instrucciones de tres direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Instrucciones de dos direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Instrucciones de una direccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Instrucciones con cero direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Arquitecturas de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-3 Modos de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Modo implcito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Modo inmediato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modos registro y registro indirecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modo de direccionamiento directo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modo de direccionamiento indirecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modo de direccionamiento relativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modo de direccionamiento indexado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Resumen de modos de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-4 Arquitecturas de conjunto de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-5 Instrucciones de transferencia de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Instrucciones de manejo de pila . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    E/S independiente versus E/S ubicada en memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-6 Instrucciones de manipulacin de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Instrucciones aritmticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Instrucciones lgicas y de manipulacin de bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Instrucciones de desplazamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-7 Clculos en punto flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Operaciones aritmticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Exponente sesgado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Formato estndar de los operandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-8 Instrucciones de control de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    14/644

    Instrucciones de bifurcacin condicional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Instrucciones de llamada y retorno de subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-9 Interrupciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Tipos de interrupciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Procesamiento de interrupciones externas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    1-10 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 12 503

    UNIDADES CENTRALES DE PROCESAMIENTO RISC Y CISC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    2-1 Ruta de datos segtmentada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Ejecucin de microoperaciones de pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2 Control de la ruta de datos segmentada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Rendimiento y realizacin de un pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    2-3 Procesador de conjunto reducido de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Arquitectura de conjunto de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modos de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Organizacin de la ruta de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Organizacin del control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Conflictos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Control de conflictos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    2-4 Procesadores de conjunto de instrucciones complejo . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modificaciones de la ISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modificaciones en la ruta de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Modificaciones de la unidad de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Control microprogramado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Microprograma para instrucciones complejas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    2-5 Ms sobre diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Conceptos de CPU de alto rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Recientes innovaciones arquitecturales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Sistemas digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    2-6 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 13 551

    ENTRADA/SALIDA Y COMUNICACIONES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1 Procesadores de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-2 Ejemplo de perif ricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Teclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Disco duro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Monitores grficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Tasas de transferencia de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    3-3 Interfaces de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Unidad interfaz y bus de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    xii CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    15/644

    Ejemplo de interfaz de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Strobing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Handshaking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    3-4 Comunicacin serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Transmisin asncrona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Transmisin sncrona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .De vuelta al teclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Un bus de E/S serie basado en paquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5 Modos de transferencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Ejemplo de una transferencia controlada por programa . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Transferencia iniciada por interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6- Prioridad en las interrupciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Prioridad Daisy Chain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Hardware de prioridad paralela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    3-7 Acceso directo a memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    El controlador de DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Transferencia de DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-8 Procesadores de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-9 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Captulo 14 587

    ISTEMAS DE MEMORIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    4-1 Jerarqua de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    4-2 Localidad de referencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-3 Memoria cach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Mapeado de la cach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Tamao d e lnea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Carga de la cach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Mtodos de escritura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Integracin de conceptos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Cachs de instrucciones y datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Cachs de mltiples niveles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    4-4 Memoria virtual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Tablas de pginas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Translation Lookaside Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Memoria virtual y cach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    4-5 Resumen del captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    ndice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    CONTENIDO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    16/644

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    17/644

    PREFACIO

    El objeto de este texto es proporcionar una compresin de los fundamentos del diseo lg

    de los procesadores para una amplia audiencia de lectores. Muchos de los fundamentos q

    presentan no han cambiado en dcadas. Por otro lado, los avances que la tecnologa subya

    han tenido un gran efecto en la aplicacin de estos fundamentos y se ha hecho nfasis en

    El proceso de diseo se ha automatizado utilizando lenguajes de descripcin hardware y s

    lgica, y la bsqueda de alta velocidad y de bajo consumo han cambiado los fundamento

    diseo de los procesadores.

    El contenido de esta tercera edicin contina su enfoque en los fundamentos mientras q

    mismo tiempo refleja la importancia relativa de los conceptos bsicos como la tecnolog

    evolucin del proceso de diseo. Como ejemplo, la microprogramacin, cuyo uso ha decl

    como principal mtodo de diseo de unidades de control, se trata slo como tcnica de d

    de unidades de control para realizar procesadores con instrucciones complejas. Adems, c

    tiempo, la terminologa fundamental evoluciona y, junto con ella, nuestra perspectiva d

    conceptos asociados. Por ejemplo, en esta edicin, las secciones sobre circuitos NAND y

    aparecen en el contexto ms amplio de la materializacin tecnolgica.

    El texto continua proporcionando la opcin a los instructores de cubrir de forma bsica

    VHDL como Verilog4 u omitir los lenguajes de descripcin hardware (HDL, del ingls H

    ware Description Language). La perspectiva de cubrir aqu, en forma de introduccin, es lrrespondencia de los HDLs con el hardware real que representa. Esta perspectiva vital, q

    crtica al escribir los HDLs para sntesis lgica, se puede perder en un tratamiento ms de

    do, enfocado en el lenguaje y la facilidad de su uso.

    En resumen, esta edicin ofrece un fuerte nfasis en los fundamentos que subyacen al

    o lgico actual utilizando lenguajes de descripcin hardware, sntesis y verificacin as

    los cambios en el nfasis en el uso de los fundamentos del diseo de procesadores. El enf

    de los conceptos bsicos y los ejercicios manuales permanece para reforzar la compre

    completa de estos conceptos como soporte principal.

    Para apoyar la perspectiva de la evolucin y tratar los problemas estructurales acrecent

    notablemente la longitud del captulo, esta edicin ofrece una importante reorganizacin dcaptulos. Los Captulos 1 al 6 del libro tratan el diseo lgico, y los Captulos 7 al 9 tra

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    18/644

    diseo de sistemas digitales. Los Captulos 10 al 14 se enfocan directamente en el dise

    procesadores. Esta organizacin proporciona unos fundamentos slidos del diseo de

    mas digitales mientras que lleva a cabo un desarrollo gradual de abajo a arriba (bottom

    de los fundamentos para utilizarlos en el diseo de los procesadores desde arriba hasta

    (top-down) en los ltimos captulos. Once de los 14 captulos contienen nuevo material q

    se incluy en la segunda edicin, y aproximadamente, el 50% de los problemas se han m

    cado o son nuevos. Hay en torno a una docena de textos complementarios disponibles

    pgina web del libro, que representan tanto material nuevo como material eliminado de las

    riores ediciones. A continuacin siguen los resmenes de los temas tratados en cada cap

    Captulo 1Ordenadores digitales e informacin, presenta los sistemas con procesala representacin de la informacin, incluyendo una nueva seccin sobre los Cdigos Gra

    Captulo 2Circuitos lgicos combinacionales, trata la teora bsica y los concepto

    diseo y optimizacin de los circuitos con puertas. Aparece una nueva seccin sobre optim

    cin de lgica multinivel. Adems del nmero de literales bsicos, se introduce el nme

    entradas por puerta como un criterio de coste ms preciso en el uso de circuitos multiniv

    Captulo 3Diseo Lgico combinacional, ofrece una visin del proceso de diseo l

    actual y trata con las caractersticas de las puertas y retardos, el uso tecnolgico de pucomo la NAND, NOR, AOI, OAI, XOR y XNOR. Se tratan los detalles de los pasos en el

    ceso de diseo de la lgica combinacional, incluyendo el problema de formulacin, opti

    cin lgica, materializacin tecnolgica y la verificacin. Como parte de la materializaci

    nolgica, este captulo cubre bsicamente las memorias ROM, PLAs y PALs. Se propor

    una introduccin a los FPGAs (Field Programmable Gate Arrays), enfocndose en las p

    utilizadas por los estudiantes en el laboratorio, como un suplemento en la pgina del texto

    permite actualizar estos cambios tecnolgicos durante el tiempo de vida de esta edicin.

    Captulo 4Circuitos y funciones combinacionales, cubre el diseo de subsistemasbinacionales. Se han eliminado los remanentes de la lgica MSI, segn el cambio de enf

    por 1) los fundamentos de funciones combinacionales y su realizacin, y 2) las tcnicas dezacin y modificacin de estas funciones y sus realizaciones asociadas. Este enfoque propo

    na los fundamentos para tener una visin ms clara del diseo de lgica estructurada y p

    visualizacin de la lgica resultante de la sntesis de los HDLs. Adems de presentar la de

    ficacin, codificacin, conversin de cdigos, seleccin y distribucin, se han presentado

    vas funciones como la habilitacin y la entrada fija. Se incluyen secciones introductorias

    Verilog, VHDL para los diversos tipos de funciones.

    Captulo 5Funciones y circuitos aritmticos, trata de las funciones aritmticas y su

    lizacin. Adems de la representacin de nmeros, la suma, la resta y la multiplicacin s

    presentado las funciones de incremento, decremento, rellenado, extensin y desplazam

    y su realizacin. Se han incluido descripciones en Verilog y en VHDL de las funcionesmticas.

    Captulo 6Circuitos secuenciales, presenta el anlisis y el diseo de circuitos digi

    Se tratan los latches, los flip-flops maestro-esclavo, los flip-flops disparados por flanco, co

    pecialnfasis en los de tipo D. Tambin se tratan otros tipos de flip-flops (S-R, J-K y T), u

    con menor frecuencia en los diseos modernos, pero con menos nfasis, presentndose con

    profundidad en un suplemento de la pgina web. Tambin se proporcionan las descripcion

    VHDL y en Verilog de los flip-flops y de circuitos secuenciales.

    Captulo 7Registros y transferencia de registros, se relacionan juntos y muy cer

    al diseo de los registros y sus aplicaciones. El diseo de registro de desplazamiento y los

    tadores se basa en la combinacin de registros con funciones y su realizacin, presentadasCaptulo 4 y 5. Solamente se presenta el contador, llamado ripple counter, como un con

    vi PREFACIO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    19/644

    totalmente nuevo. Este enfoque concuerda con la reduccin del enfoque en los circuitos ori

    les como los MSI. Una seccin nueva se enfoca en el diseo de clulas bsicas para con

    registros que realizan varias operaciones. Se presentan las descripciones en Verilog y VHD

    los diversos tipos de registros.

    Captulo 8Secuenciamiento y control, trata el diseo de la unidad de control. Unracterstica adicional de la representacin del Algoritmo de Mquinas de Estados (ASM,

    rithmic State Machine) es la bifurcacin en varios caminos, anloga al case de Veri

    VHDL. Se enfatiza el control hardware y se reduce este nfasis en el control microprogram

    Captulo 9Memorias, presenta las memorias SRAM, DRAM y las bases de las mem

    como sistemas. En una nueva seccin se trata las memorias sncronas DRAM y las bases d

    tecnologas actuales. En la pgina web del texto se proporcionen modelos de las memori

    Verilog y VHDL.

    Captulo 10 Fundamentos del diseo de procesadores, trata los bancos de registro

    unidades funcionales, las rutas de datos y dos procesadores sencillos. Se disea con algo d

    talle un procesador de un solo ciclo de reloj y un nuevo procesador de varios ciclos de

    empleando en ambos control cableado.

    Captulo 11 Arquitecturas de conjunto de instrucciones, presenta varias facetasarquitectura de conjunto de instrucciones. Se trata la cuenta de direcciones, los modos de dcionamiento, las arquitecturas y los tipos de instrucciones. Los modos de direccionamie

    otros aspectos se ilustran con breves conjuntos de cdigos de instrucciones.

    Captulo 12Unidades centrales de procesamiento RISC y CISC, presenta rutas dtos segmentadas (pipeline) y el control. Se da un procesador de conjunto de instrucciones

    cido (RISC, Reduced Instruction Set Computer). Tambin se presenta un nuevo procesad

    conjunto de instrucciones complejo (CISC, Complex Instruction Set Computer). Este dise

    liza una unidad de control microprogramado junto con un RISC de base para realizar instru

    nes complejas.

    Captulo 13 Entrada/Salida y comunicaciones, trata la transferencia de datos enCPU, interfaces de entrada/salida y dispositivos perifricos. Se estudia un teclado, un moCRT y un disco duro como perifricos, y se ilustra la interfaz de un teclado. Adems se t

    las comunicaciones va serie, incluyendo el Bus Serie Universal (USB, Universal Serial

    hasta los procesadores E/S.Captulo 14 Sistemas de memoria, tiene un particular enfoque sobre las jerarqu

    memorias. Se presenta e ilustra el concepto de localidad de referencia, considerando la rel

    memoria cach/principal y memoria principal/disco duro. Se proporciona una visin de lormetros de diseo de las memorias cachs. El tratamiento de la memoria se enfoca en la

    nacin y en translation lookaside buffer que da soporte a la memoria virtual.

    Adems del propio texto, hay un importante material de apoyo, que se comenta a contcin.

    La pgina web del texto (http://www.librosite.net/mano) se incluye el siguiente mate

    1) Doce suplementos que incluyen material nuevo y el material eliminado de las ante

    ediciones.

    2) Los ficheros fuentes en VHDL y Verilog de todos los ejemplos.

    3) Soluciones de aproximadamente un tercio de los problemas de todos los captulo

    texto y del material suplementario.

    4) Fe de erratas.

    5) Transparencias en PowerPoint4

    de los Captulos 1 al 9.6) Coleccin de las figuras y tablas ms complejas del texto.

    PREFACIO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    20/644

    El paquete de herramientas de diseoutilizado en las impresiones locales e internaciodel texto consisten en el software ISE Student Edition de Xilinx4, que cortsmente ha pr

    cionado sin cargo Xilinx Inc. Est tambin disponible, mediante descarga a travs de Xili

    versin de demostracin del simulador lgico XE de ModelSim4 de Model Technology I

    porated. Estas herramientas se pueden utilizar para realizar esquemticos y mquinas de

    dos, compilar y simular cdigo VHDL, Verilog o esquemticos, y sintetizar diseos en CP

    FPGA, y simular el resultado de los diseos. Con la compra de hardware de bajo coste pa

    experimentos, estas herramientas proporcionan a los estudiantes todo lo necesario para lle

    cabo sus experimentos en CPLDs o FPGAs.

    Debido a su amplio tratamiento tanto en diseo lgico y de procesadores, este libro p

    servir a diferentes objetivos, desde estudiantes de cursos bsicos hasta cursos de nivel sup

    Los Captulos 1 al 11, omitiendo algunas secciones, proporcionan una visin general del

    ware para estudiantes de ingeniera de telecomunicacin, informtica, industriales o ingen

    en general, en un curso semestral. Los Captulos del 1 al 8 dan una introduccin bsica al

    o lgico, que se lleva a cabo en un semestre para estudiantes de las ingenier as mencion

    Impartir los Captulos del 1 al 10 en un semestre proporciona un tratamiento ms fuerte y a

    del diseo lgico. El libro completo, impartido en dos semestres, proporciona las bases delo lgico y de procesadores para estos estudiantes de ingeniera. Impartir el libro completo

    el apropiado material complementario o un laboratorio podra efectuarse en una secuenc

    dos semestres de un curso de diseo lgico y de procesadores. Para terminar, debido a su m

    rado tratamiento por pasos de un amplio espectro de temas, el libro es ideal para el autoapr

    zaje de ingenieros.

    Entre las diferentes contribuciones de este libro, Richard E. Haskell, Oakland Unive

    Eugene Henry, University of Notre Dame; Sung Hu, San Francisco State University; and W

    Hubbi, New Jersey Institute of Technology proporcionaron excelentes comentarios y sug

    cias sobre los dibujos de los Captulo del 1 al 8. Su contribucin a las mejoras del tex

    agredeci muy sinceramente. Tambin contribuyeron en este libro los profesores y estudide la Universidad de Wisconsin. La direccin que tom el Captulo 12 sobre diseo de CI

    motiv por una sugerencia del Profesor Jim Smith, y el Profesor Leon Shohet sugiri me

    especficas basadas en el uso de la 2a edicin del libro. Un agradecimiento especial para

    Weglarz por su profunda revisin del nuevo material tanto en su contenido como en su clar

    Agradecer tambin a Eric y Jim Liu por la preparacin de las soluciones a los problemas nu

    y a los modificados del manual del instructor. Un agradecimiento especial al equipo de Pre

    Hall por sus esfuerzos en esta edicin. Hay que destacar a Tom Robbins y Alice Dworkin p

    direccin y apoyo, a Eric Frank por su contribucin en las primeras etapas de esta edicin

    Daniel Sandin por su muy eficiente y til manejo en la produccin de esta edicin.

    Para terminar, un agradecimiento especial a Val Kime por su paciencia y compresin a lo del desarrollo de esta tercera edicin.

    M. MORRIS M

    CHARLES R.

    xviii PREFACIO

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    21/644

    FUNDAMENTOS DE DISEO

    LGICO Y DE COMPUTADORAS

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    22/644

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    23/644

    1COMPUTADORAS DIGITALESE INFORMACIN

    C A P T U L O

    Los fundamentos del diseo lgico y los fundamentos del diseo de computadoras

    son los temas a tratar en este libro. El diseo lgico trata los conceptos bsicos y

    las herramientas usadas en el diseo de hardwaredigital, formado por circuitos

    lgicos. El diseo de computadoras trata los conceptos y las herramientas adicio-

    nales usadas en el diseo de computadoras y otro tipo de hardware complejo. A las

    computadoras y alhardwaredigital se les llama, en general, sistemas digitales. As, es-

    te libro trata del entendimiento y diseo de sistemas digitales. Debido a su generalidad

    y complejidad, la computadora proporciona un vehculo ideal para aprender los concep-

    tos y las herramientas para el diseo de sistemas digitales. Adems, gracias a su uso

    corriente, la propia computadora merece ser estudiada. Por eso, el enfoque en este li-

    bro est en las computadoras y su diseo.

    La computadora no va a ser solamente un vehculo, sino tambin un motivo de es-

    tudio. Para ese fin, usamos el diagrama detallado de un ordenador del tipo que, normal-

    mente, se denomina como PC (personal computer), de la pgina anterior. Usamos esa

    computadora genrica para destacar la importancia del material cubierto y su relacin

    con el sistema total. Ms adelante en el captulo, discutiremos los diversos componen-

    tes principales de una computadora genrica y veremos como se relacionan con un

    diagrama de bloques, comnmente usado, para describir una computadora.

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    24/644

    1-1 COMPUTADORAS DIGITALES

    Hoy en da, las computadoras digitales tienen un papel tan prominente y creciente en la sdad moderna, que muchas veces decimos que estamos en la era de la informacin. Las putadoras estn involucradas en nuestras transacciones de negocios, comunicaciones, transptratamiento mdico y entretenimiento. Monitorizan nuestro tiempo y medio ambiente.

    mundo industrial estn fuertemente empleados en diseo, produccin, distribucin, y veHan contribuido a muchos descubrimientos cientficos y desarrollos ingenieriles que, demanera, hubieran sido inalcanzables. Notablemente, el diseo de un procesador para una putadora moderna no se podra hacer sin usar muchas computadoras.

    La propiedad ms llamativa de una computadora digital es su generalidad. Puede seguiserie de instrucciones, llamada programa, que opera con los datos dados. El usuario puede cificar y cambiar el programa o los datos dependiendo de necesidades concretas. Como resdo de su flexibilidad, las computadoras digitales de propsito general pueden ejecutar una vdad de tareas de procesamiento de informacin en un espectro muy amplio de aplicacionecomputadora de propsito general es el ejemplo ms conocido de un sistema digital. La car

    rstica de un sistema digital es la manipulacin de elementos discretos de informacin. quier conjunto que se restrinja a un nmero finito de elementos contiene informacin disEjemplos de conjuntos discretos son los 10 dgitos decimales, las 27 letras del alfabeto, lcartas de una baraja, y los 64 cuadrados de una tabla de ajedrez. Las primeras computadigitales se usaron principalmente para clculos numricos. En este caso, los elementos dtos usados fueron los dgitos. De una aplicacin comosta saliel trminocomputadora di

    Los elementos discretos de informacin se representan en un sistema digital por cantidfsicas llamadas seales. Seales elctricas como voltajes y corrientes son las ms conocLos dispositivos electrnicos llamados transistores predominan en los circuitos que manejatas seales. Las seales en la mayora de los sistemas digitales de hoy usan justamente dos

    res discretos y por eso se denominan seales binarias.Tpicamente representamos los dos valores discretos por rangos de valores de voltajemados ALTO (del trmino ingls HIGH) y BAJO (del trmino ingls LOW). Los rangvoltios de salida y de entrada se ilustran en la Figura 1-1. El valor del voltaje de salida Aoscila entre 4.0 y 5.5 voltios, y el voltaje de salida BAJO entre .0.5 y 1.0 voltios. El ranentrada mayor permite que entre 3.0 y 5.5 voltios se reconozca como ALTO, y el rango dtrada menor permite que entre .0.5 y 2.0 voltios se reconozca como BAJO. El hecho dlos rangos de entrada sean ms grandes que los de salida, permite que los circuitos funccorrectamente a pesar de variaciones en su comportamiento e indeseados voltajes de rque podran ser aadidos o restados de las salidas.

    5,0

    4,0

    3,0

    2,0

    1,0

    0,0

    Voltios

    ALTO

    BAJO

    ALTO

    BAJO

    SALIDA ENTRADA

    FIGURA 1-1Ejemplo de rangos de voltaje para seales binarias

    FUNDAMENTOS DEL DISEO LGICO Y DE COMPUTADORAS

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    25/644

    Damos a los rangos de voltios de entrada y de salida diferentes nombres. Entre ellos ALTO (HIGH, H) y BAJO (LOW, L), VERDAD (TRUE, T) y FALSO (FALSE, F), y Estclaro que los rangos de voltaje ms altos estn asociados con ALTO o H, y los rangobajos con BAJO o L. Encontramos, sin embargo, que para TRUE y 1 y FALSE y 0, haeleccin. TRUE y 1 se puede asociar o con rangos altos o bajos de voltaje y FALSE y 0 cootros rangos. Si no se indica otra cosa, asumimos que TRUE y 1 est n asociados con los rams altos de voltaje, H, y que FALSE y 0 estn asociados con los rangos bajos, L.

    Por qu se usa binario? En contraposicin a la situacin en la Figura 1-1, considesistema con 10 valores, que representan a los dgitos decimales. En un sistema semejantvoltajes disponibleses decir entre 0 y 5.0 voltios se podran dividir en 10 rangos, caddel tamao de 0.5 voltios. Un circuito proporcionara un voltaje de salida dentro de estrangos. Una entrada de un circuito necesitara determinar en cual de estos 10 rangos estsiun voltaje aplicado. Si queremos permitir ruido en los voltajes, los voltajes de salida pooscilar en menos de 0.25 voltios para una representacin de un digito dado, y los mrgenetre entradas podran variar solamente en menos de 0.25 voltios. Esto requerira circuitos elenicos complejos y costosos y todava podran ser perturbados por pequeos voltajes der

    o pequeas variaciones en los circuitos debidas a la fabricacin o el uso. Como consecuencuso de estos circuitos multivalores es muy limitado. En cambio, se usan circuitos binarios dse pueden lograr operaciones correctas de los circuitos con variaciones significativas tanlos dos voltajes de entrada como de salida. El circuito resultante con transistores con una sALTA o BAJA es sencillo, fcil de disear y extremadamente fiable.

    Representacin de la informacin

    Ya que 0 y 1 estn asociados con el sistema de numeracin binario, son los nombres prefepara el rango de las seales. A un dgito binario se le llama bit. La informacin est represda en computadoras digitales por grupos de bits. Usando diferentes tcnicas de codificacipueden construir grupos de bits no solamente para representar nmeros binarios sino tamotros grupos de smbolos discretos. Los grupos de bits, adecuadamente ordenados, pueden cificar incluso instrucciones para la computadora y datos para procesar.

    Las cantidades discretas de informacin surgen de la naturaleza de los datos a procepodran ser cuantificados intencionadamente en valores continuos. Por ejemplo, un plan dede nminas tiene inherentemente datos discretos que contiene nombres de empleados, nmde seguridad social, salarios semanales, tasas de ingreso, etc. Un cheque de pago de un emdo est procesado usando valores de datos discretos como las letras del alfabeto (para los bres de los empleados), dgitos (para el sueldo) y smbolos especiales como $. En cambiingeniero podra medir la velocidad de rotacin de una rueda de un coche, que vara contmente en el tiempo, pero podra grabar solamente valores especficos en forma tabular. Dmodo, el ingeniero cuantifica los datos continuos, convirtiendo cada nmero de la tabla ecantidad discreta de informacin. En un caso comoste, si la medicin puede ser convertiuna seal electrnica, la cuantificacin de la seal, tanto en valor y tiempo, puede ser realautomticamente con un dispositivo de conversin analgico-digital.

    Estructura de una computadora

    En la Figura 1-2 se muestra un diagrama de bloques de una computadora digital. La memguarda tanto programas como datos de entrada, salida e intermedios. La ruta de datos ej

    COMPUTADORAS DIGITALES E INFORMACIN

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    26/644

    Memoria

    Unidadde control

    Rutade datos

    Entrada/Salida

    CPU

    FIGURA 1-2

    operaciones aritmticas y de otro tipo como se especifica en el programa. La unidad de cosupervisa el flujo de informacin entre las diferentes unidades. Una ruta de datos, cuandocombinada con una unidad de control, forma un componente llamado CPU (unidad centr

    proceso, en ingls central processing unit).El programa y los datos preparados por el usuario se transfieren a la memoria mediandispositivo de entrada como es el teclado. Un dispositivo de salida, como es un monitor(tubo de rayos catdicos, en ingls cathode-ray tube) visualiza los resultados de los clculos presenta al usuario. Una computadora digital puede alojar muchos dispositivos de entrsalida diferentes, como un disco duro, floppy, CD-ROM y escner. stos dispositivos talguna lgica digital, pero muchas veces incluyen circuitos electrnicos analgicos, senpticos, CRTs o LCDs (liquid crystal displays), y componentes electromecnicos.

    La unidad de control de la CPU recupera las instrucciones, de una en una, del progguardado en la memoria. En cada instruccin, la unidad de control manipula la ruta de

    para ejecutar la operacin especificada por la instruccin. Ambos, programa y datos, estn dados en la memoria. Una computadora digital es un sistema muy potente. Puede realizar clos aritmticos, manipular cadenas de caracteres alfabticos y ser programado para tomar siones basadas en condiciones internas y externas.

    Ms en relacin con la computadora genrica

    En este punto, vamos a presentar brevemente la computadora genrica y a relacionar sus pcon el diagrama de bloques de la Figura 1-2. En la parte inferior izquierda del diagram

    principio de este captulo, est el corazn de la computadora, un circuito integrado llamaprocesador. Los procesadores modernos como este son bastante complejos y se componmillones de transistores. El procesador contiene cuatro mdulos funcionales: la CPU, la FPMMU, y la cache interna.

    Ya hemos presentado la CPU. La FPU (unidad de punto flotante, en ingls floating-unit) es parecida a la CPU, excepto que su ruta de datos y unidad de control estn especmente diseados para realizar operaciones en punto flotante. En esencia, esas operaciones psan informacin representada en forma de notacin cientfica (por ejemplo 1.234#107), ptiendo a la computadora genrica manejar nmeros muy grandes y muy pequeos. La CPUFPU, en relacin con la Figura 1-2, contienen cada una, una ruta de datos y una unidad de co

    La MMU es la unidad de administracin de la memoria. La MMU ms la cache intelos otros bloques, en la parte baja de la figura, etiquetados como Cache Externa y R

    FUNDAMENTOS DEL DISEO LGICO Y DE COMPUTADORAS

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    27/644

    (random access memory) son todas partes de la memoria de la Figura 1-2. Las dos cacheun tipo especial de memoria que permite a la CPU y FPU acceder a los datos a procesarpidamente que slo con la RAM. La RAM es la que se refiere generalmente como memComo funcin principal, la MMU hace que la memoria que parece estar disponible es mmucho ms grande que el tamao actual de la RAM. Esto se logra mediante traslados de entre la RAM y el disco duro, mostrado en la parte superior de la imagen de la computagenrica. As el disco duro, que estudiaremos ms tarde como dispositivo de entrada/saparece conceptualmente como una parte de la memoria y de entrada/salida.

    Las rutas de conexin mostradas entre el procesador, la memoria y cache externa, socaminos entre circuitos integrados. Tpicamente se realizan con finos conductores de cobuna placa de circuito impreso. A los caminos de conexin debajo de la interfaz del busllama bus del procesador. A las conexiones encima de la interfaz del bus se le llama buentrada/salida (E/S). El bus del procesador y el bus E/S ligados al interfaz de buses llevan con diferentes nmeros de bits y tienen diferentes maneras de controlar el movimiento ddatos. Tambin pueden operar a diferentes velocidades. El hardware del interfaz de buseneja esas diferencias de manera que los datos pueden comunicarse entre los dos buses.

    El resto de estructuras de la computadora genrica se consideran parte de la E/S de la F1-2. En trminos de volumen, estas estructuras son las que ms ocupan. Para introducir infocin en la computadora, se proporciona un teclado. Para ver la salida en forma de texto o gcos, se utiliza una tarjeta con un adaptador grfico y un monitor CRT. El disco duro, presepreviamente, es un dispositivo de almacenaje magntico electromecnico. Guarda grandestidades de informacin en forma de flujo magntico en discos giratorios cubiertos de unade materiales magnticos. Para controlar el disco duro y transferir informacin hacia y desse usa un controlador de disco. El teclado, la tarjeta de adaptador grfico y la tarjeta de colador de disco estn todos vinculados con el bus E/S. Esto permite a estos dispositivos comcarse mediante la interfaz de bus con la CPU y otros circuitos conectados a los buses del p

    sador. La computadora genrica est formada bsicamente por una interconexin de mdigitales. Para entender la operacin de cada mdulo, es necesario tener un conocimiento bde los sistemas digitales y su comportamiento general. Los Captulos 1 a 6 de este libro tradiseo lgico de circuitos digitales en general.

    En los Captulos 7 y 8 se presentan los componentes bsicos de un sistema digital, susraciones y su diseo. Las caractersticas operacionales de la memoria RAM se explicanCaptulo 9. La ruta de datos y el control de computadoras sencillas se presentan en el Cap10. En los Captulos 11 al 14 se presentan las bases del diseo de computadoras. Las instrunes tpicas empleadas en arquitecturas de conjunto de instrucciones se presentan en CaptuLa arquitectura y el diseo de CPUs se examinan en el Captulo 12. Los dispositivos de en

    y salida y los diferentes caminos con que la CPU puede comunicarse con ellos se discutenCaptulo 13. Finalmente, los conceptos de jerarqua de memoria relacionados con cacMMU se presentan en el Captulo 14.

    Para guiar el lector por este material y para tener en mente este bosque examinamonuciosamente muchos de susrboles, las discusiones que acompaan aparecen en las cazules al principio de cada captulo para relacionar los temas de cada captulo con los conentes asociados en el diagrama genrico de computadoras al principio de este captulo. Alde nuestro viaje habremos cubierto la mayora de los diferentes mdulos de una computadtendremos un entendimiento de los fundamentos, que son la base del funcionamiento comdiseo.

    Antes mencionamos que una computadora digital manipula elementos discretos de infocin y que toda la informacin dentro de la computadora est representada en forma bin

    COMPUTADORAS DIGITALES E INFORMACIN

  • 8/13/2019 Fundamentos de Diseno Logico y de Computadoras

    28/644

    Los operandos usados en los clculos se pueden expresar en el sistema de nmeros binarioel sistema decimal por medio de un cdigo binario. Las letras del alfabeto tambin se conten a cdigo binario. El propsito del resto de este captulo es la introduccin al sistemnumeracin binario, a la aritmtica binaria y de cdigos binarios seleccionados como baseel estudio en los siguientes captulos. En relacin con la computadora genrica, este matermuy importante y alcanza a todos los componentes excepto algunos de E/S que involucranraciones mecnicas y de electrnica analgica (en contraste a la digital).

    1-2 SISTEMAS NUMRICOS

    El sistema numrico decimal se emplea en la aritmtica cotidiana para representar nmerodiante cadenas de dgitos. Dependiente de su posicin en la cadena, cada dgito tiene un asociado a un entero como potencia en base 10. Por ejemplo, el nmero decimal 724.5 se preta de manera que representa 7 centenas, ms 2 decenas, ms 4 unidades y ms 5 dcLas centenas, decenas, unidades y dcimas son potencias de 10, dependiendo de la posicilos dgitos. El valor del nmero se calcula de la forma siguiente:

    724.5% 7# 102! 2# 101! 4# 100! 5# 10.1

    La convencin es escribir solamente los dgitos y deducir las potencias de 10 segn su posEn general, un nmero decimal con n dgitos a la izquierda del punto decimal y m dgitoderecha del punto decimal es representado por una cadena de coeficientes:

    An.1An.2...A1A0.A.1A.2...A.m!1A.m

    Cada coeficiente Aies uno de los 10 dgitos (0, 1, 2, 3, 4, 5, 6, 7, 8 y 9). El valor de subndetermina la posicin del coeficiente y, asimismo el peso 10i con que hay que multiplicoeficiente.

    Al sistema numrico decimal se llama base 10, porque se multiplican los coeficientepotencias de 10 y el sistema usa 10 dgitos diferentes. En general, un nmero en base rconrdgitos, 0, 1, 2, ..., r. 1, y se expresa como una potencia de rsegn la frmula genera

    An.1rn.1!An.2r

    n.2! ...!A1r

    1!A0r

    0

    !A.1r

    .1!A

    .2r.2! ...!A

    .m!1r.m!1

    !A.mr

    .m

    Cuando un nmero se expresa en notacin posicional, se escriben solamente los coeficienel punto de la base:

    An.1An.2...A1A0 .A.1A.2 ...A.m!1A.m

    En general, se llama al.punto de base. A An.1se le llama dgito ms significativo (msingls most significant digit) y a A

    .mse le llama dgito menos significativo (lsd, del inglsignificant digit) del nmero. Note que si m% 0, el lsd es A

    .0%A0. Para distinguir entrmeros con bases diferentes, habitualmente se encierran los coeficientes en parntesis y se cen el parntesis derecho un subndice para indicar la base del nmero. Sin embargo, si laestclara por el contexto, no es necesario usar parntesis. A continuacin se muestra un nen base 5 con n% 3 y m% 1, y


Recommended