Micro y Nano Memoria, Calcular Bits Reductores?

Me encontré con una pregunta:

en sistema digital con circuito de control microprogramado, total de 32 distinct pattern operation signales 450. si micro-programmed memorycontiene 1Kmicroinstrucciones, al usar Nano memory, ¿cuántos bits se reducen?

1) 22 Kbits

2) 23 Kbits

3) 450 Kbits

4) 450*32 Kbits

Leí en mis notas, eso (1)es cierto, pero no podía entender cómo conseguimos esto.

Las microinstrucciones se almacenan en la micromemoria (memoria de control). Existe la posibilidad de que un grupo de microinstrucciones aparezca varias veces en un microprograma. Como resultado, se necesita más espacio de memoria. Haciendo uso de la memoria nano podemos tener un ahorro significativo en la memoria cuando un grupo de operaciones micro ocurren varias veces en un programa micro. Consulte la referencia de la técnica nano :

Editar:

Micromemoria La micromemoria solo se refiere a cómo organizamos lo que hay en la memoria de control. Sin embargo, cuando tenemos grandes conjuntos de instrucciones, podemos hacerlo mejor que simplemente almacenar todas las instrucciones. Podemos subdividir la memoria de control en "memoria de control" y "memoria nano" (ya que nano es más pequeño que micro, ¿no?)) Esto es bueno ya que no desperdiciamos mucho espacio valioso (área de chip) en microcódigo.

El concepto de nanomemoria se deriva de una combinación de instrucciones verticales y horizontales, pero también proporciona compensaciones entre ellas.

La microcomputadora motorola M68k es una de las µcomputadoras anteriores y populares con este diseño de control de memoria nano. Aquí se demostró que se puede lograr un ahorro significativo de memoria cuando un grupo de microinstrucciones aparecen a menudo en un microprograma.

Aquí se demostró que al estructurar la memoria correctamente, se podrían usar unos pocos bits para direccionar las instrucciones, sin un costo significativo para la velocidad. La reducción fue tal que solo se requieren los bits log_2(n) superiores para especificar la nanodirección, en comparación con la microdirección.

¿"nano memoria" significa "caché"?
@brhans okey ahora parece estar bien
Problema de traducción aquí? Hay mucho más "micro" de lo que esperaría y no tengo idea de qué significa "nano memoria".

Respuestas (1)

En última instancia, creo que la pregunta es errónea. Y NO me acerco a ninguna respuesta. Es difícil obtener 22k guardados de 32K, cuando el nanocódigo ocupa 14,4K.

de 1 .

En algunos casos, como el Motorola 68000, también hay un motor de nanocódigo. El 68000 usa 544 palabras de 17 bits en su micromotor y 336 palabras de 68 bits en su motor de nanocódigo. Por lo tanto, tiene 32.096 bits de ROM. Si todo hubiera sido algo con palabras de 68 bits, habría requerido 36.992 bits.

La memoria era costosa con las computadoras con conjunto de instrucciones complejas, por lo que el microcódigo ejecutaba múltiples instrucciones [memoria inc.] (memoria de lectura, registro inc., memoria de almacenamiento). Para disminuir el microcódigo, Motorola implementó el nanocódigo, al que llamó microcódigo.

544 palabras × palabras de microcódigo de 17 bits + 336 palabras × palabras de nanocódigo de 68 bits = 32 096 bits de ROM.

544 palabras × palabras de microcódigo de 68 bits = 36 992 bits de ROM.

36.992 - 32.096 = 4.896 bits guardados.

yo o gramo 2 336 = 6.63

Para representar las 336 palabras de nanocódigo, se requieren 7 bits. En realidad, tiene 17. Esto tiene sentido, ya que un microcódigo o nanocódigo similar puede usar estados de indiferencia para seleccionar diferentes operaciones.

De 2 diapositivas 11 notas.

Hay n = 2048 palabras de 41 bits de ancho cada una, lo que da una complejidad de área de 2048 × 41 = 83 968 bits.

Las micropalabras únicas (100 para este caso) forman un nanoprograma, que se almacena en una ROM que tiene solo 100 palabras de profundidad por 41 bits de ancho.

yo o gramo 2 100 = 6.64

Se necesitan 7 bits como mínimo en el microcódigo para acceder al nanocódigo.

El microprograma ahora se indexa en el nanostore. El microprograma tiene el mismo número de micropalabras independientemente de si se usa o no un nanostore, pero cuando se usa un nanostore, los punteros al nanostore se almacenan en el microstore en lugar de las palabras más anchas de 41 bits. Para este caso, la microtienda ahora tiene 2048 palabras de profundidad por bits de ancho. La complejidad del área usando un nanostore es entonces 100 × 41 + 2048 × 7 = 18 436 bits, lo que representa un ahorro considerable en el área con respecto al enfoque microcodificado original.

18.436 bits frente a 83.968 bits. Ahorros significativos.

microcódigo a nanocódigo

Misma metodología. Índices de microcódigo en nanocódigo. Se guarda el microcódigo, pero se debe agregar la ROM de nanocódigo para determinar los ahorros reales. Ahorro real = 9152 bits.

9.1k es significativamente menor que 22k. Pero 450 palabras × 32 bits = 14.400. Es difícil obtener 22k guardados de 32K, cuando el nanocódigo ocupa 14,4K. Ninguna respuesta es correcta. De ahí mi afirmación de que la pregunta es defectuosa de alguna manera.

Según los comentarios de Maryam Ghizhi a continuación:

1024 × 32 bits - 1024 × 9 bits = 23 552 bits o 23 kbits (guardado).

Los ahorros son microcódigo. Entonces, 32 bits - 9 bits = 23 bits × 1024 palabras = 23 kbits.

Esta es una de las respuestas de la lista. Se guarda desde microcódigo (ignorando nanocódigo). Respuesta definitiva: 2.

Dentro de los parámetros de la pregunta, dado que se requieren 9 bits para abordar 450 ubicaciones de nanocódigo, no hay forma de llegar a 22 Kbits de microcódigo guardados.


Editar...

Desde 3 , donde parece que ya has preguntado esta ecuación antes (junto con una recompensa):

en un sistema digital con circuito de control microprogramado, el total de patrones de operación distintos de 32 señales es 450. si la memoria microprogramada contiene microinstrucciones de 1K, mediante el uso de memoria Nano, ¿cuántos bits se reducen de la memoria microprogramada ?

La memoria microprogramada es un componente muy importante de la pregunta, que hace que la respuesta correcta sea "2".

Me centraría en por qué la respuesta correcta no es 2. No por qué sus notas dicen que la respuesta correcta es 1. Como dije, pregunta defectuosa.

Tal vez mi árbitro esté equivocado, pero la última respuesta que mencioné está bien y es correcta.
He leído su referencia en los comentarios, pero no entra en detalles de cálculo. Acabo de añadir una segunda referencia. Ningún experto, pero la metodología sigue las referencias. Buena pregunta, mal redactada. Es difícil obtener 22k guardados de 32K, cuando el nanocódigo ocupa 14,4K. 8)
(1024*32)-(1024*9)=23K guardados pero la respuesta dice 22K.
con memoria nano - memoria micro = memoria guardada.
Entonces, ¿es posible llegar a 22K?
No. 32K iniciales de microcódigo. Reemplazado por 9K de microcódigo y 14K de nanocódigo. Eso es 23K usados, no guardados. Además, 9 bits de microcódigo son el mínimo teórico para seleccionar 450 ubicaciones de nanocódigo. En realidad, más de 9 (como 68000), con bits redundantes para seleccionar diferentes operaciones. Gracias por esto, la falta de respuesta me molestó.