¿Tenemos circuitos binarios divididos en una computadora cisc? [duplicar]

-3

Al igual que tenemos un circuito bipolar múltiple en una computadora cisc, ¿tenemos un circuito divisor binario en una computadora cisc? ¿O es como usamos algothrims en lugar de tener un circuito divisor real? (Al igual que risc no tiene un circuito multiplicador, utiliza un circuito sumador en lugar de un circuito multiplicador).

    
pregunta AlphaBetA

2 respuestas

3

Estás confundiendo las cosas:

CISC o RISC dice algo sobre el conjunto de instrucciones.

Nada acerca de cómo se implementan las instrucciones. Puede tener un RISC con cambiadores de barril, multiplicadores y divisores de punto flotante de un solo reloj, y puede tener un sistema CISC que implemente un cambio rotacional bajo la cubierta en múltiples cambios de un solo bit con un registro de acarreo, y no puede hacer cualquier punto flotante en el hardware, pero lo hace todo en microcódigo de punto fijo lento.

CISC y RISC no están relacionados con la cuestión de cómo (y con qué rapidez) funcionan las cosas.

En general, los divisores de hardware son raros:

  1. porque la división es sorprendentemente rara vez útil y
  2. porque un divisor de hardware es enorme para implementar. Lo invitaré a mirar las imágenes "pequeñas" en esta respuesta mía sobre por qué la división es más lenta que la multiplicación en hardware.
respondido por el Marcus Müller
2

RISC versus CISC no tiene nada que ver con las capacidades de máquina sin procesar incluidas, como si hay un multiplicador, un divisor, un cambiador de barriles, etc. los multiplicadores más simples e incluso sumadores más simples.

La distinción es más sobre los modos de direccionamiento y entre qué partes de los datos del procesador se pueden mover durante las instrucciones individuales. Esta distinción siempre fue algo borrosa y, por supuesto, con el marketing involucrado, se volvió aún más confusa. Por un tiempo, todo se etiquetó como RISC porque los vendedores pensaron que sonaba más fresco y moderno. Tampoco es cierto, pero algo de eso ha dejado la impresión de que RISC es de alguna manera más avanzado. Eso tampoco es cierto.

En mi opinión, el impulso hacia RISC o CISC tuvo más que ver con la velocidad relativa de la memoria principal en comparación con la lógica combinatoria para implementar la decodificación de instrucciones y la manipulación de datos. Tenga en cuenta que la memoria principal y las puertas lógicas se implementan con diferentes tecnologías. No debería sorprender que la velocidad relativa de cada uno cambie, por lo tanto, a medida que diferentes tecnologías avanzan y surgen nuevas.

Cuando la memoria principal era el núcleo y la lógica eran los chips TTL, la memoria principal era relativamente más lenta de lo que generalmente es hoy. Por lo tanto, tenía sentido codificar las instrucciones, luego realizar una gran cantidad de operaciones lógicas como resultado de cada una, ya que, de todos modos, estarías esperando un rato la próxima instrucción. Cuando la memoria principal es relativamente más rápida, entonces puede obtener instrucciones con más frecuencia o, en otras palabras, tiene menos retrasos en la compuerta para hacer algo con una instrucción antes de que necesite procesar la siguiente sin detener la tubería.

En la década de 1980, cuando la memoria central como memoria principal se estaba eliminando gradualmente en favor de las RAM dinámicas, surgieron varias arquitecturas de nuevas máquinas basadas en la filosofía "RISC". Esto fue exagerado para hacer que el RISC suene como un gran avance, como se relaciona con la evolución lógica de la memoria principal más rápida en relación con las puertas. Las velocidades relativas de la memoria y la lógica continúan moviéndose de un lado a otro, por lo que hay máquinas con compensaciones a lo largo del espectro CISC / RISC.

En realidad, partes de las computadoras comunes de los años sesenta y setenta estaban muy alejadas del final del espectro de RISC, porque el microcódigo es, en cierto modo, la arquitectura RISC definitiva. Las máquinas CISC de la época tenían tantos retrasos lógicos disponibles según la instrucción de la memoria principal, que las instrucciones complicadas en realidad las realizaba una máquina RISC interna rápida que se ejecutaba desde una pequeña (y mucho más costosa) memoria tipo gate. Estas micro-instrucciones fueron típicamente muy amplias, con bits individuales que controlan directamente el búfer permite controlar la fuente de datos en los buses internos, las funciones ALU y similares.

Como resultado de todo esto, los conjuntos de instrucciones CISC generalmente tienen muchos modos de direccionamiento posibles para las fuentes y destinos de los operandos. Los conjuntos de instrucciones RISC son más simples ("reducidos") al realizar operaciones en general solo entre un conjunto limitado de registros de hardware especiales. Los valores de origen deben trasladarse a los registros de la memoria y los resultados deben volver a escribirse en la memoria (cuando sean necesarios) mediante instrucciones separadas de los que realizan los cálculos.

Sin embargo, volviendo a su pregunta, nada de esto dice si una máquina tiene hardware de división nativa, o si las divisiones deben realizarse en software.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas