Crossover bajo / alto del sistema paralelo de varios cuerpos

Reimpreso: Paralelo de varios cuerpos: Direccionamiento cruzado alto / bajo
Inserte la descripción de la imagen aquí
(1) La figura es un diagrama de estructura de memoria de múltiples bancos con direccionamiento cruzado de orden superior adecuado para trabajo en paralelo. El programa en la figura se almacena en orden de direcciones internas (después de que un banco está lleno, luego Almacenado en el siguiente cuerpo), por lo que también se denomina almacenamiento secuencial. La dirección superior puede indicar el número del cuerpo y la dirección inferior es la dirección del cuerpo . De acuerdo con este método de direccionamiento, siempre que se movilice razonablemente para que diferentes fuentes de solicitud accedan a diferentes entidades al mismo tiempo, se puede realizar un trabajo paralelo.

Por ejemplo, cuando un cuerpo está intercambiando información con la CPU, el otro cuerpo puede realizar acceso directo a la memoria con un dispositivo externo al mismo tiempo, de modo que los dos cuerpos trabajen en paralelo. Este tipo de direccionamiento favorece la expansión de la memoria porque las direcciones de un cuerpo son continuas.

Inserte la descripción de la imagen aquí

(2) La figura es un diagrama esquemático de la estructura del módulo de múltiples cuerpos con direcciones cruzadas de bajo nivel. Debido a que el programa se almacena continuamente en cuerpos adyacentes, también se denomina almacenamiento cruzado . La dirección inferior se utiliza para indicar el número del cuerpo y la dirección más alta es la dirección del cuerpo . Este método de direccionamiento también se denomina direccionamiento módulo M (M es igual al número de módulos). Generalmente, el número de módulos es una potencia de 2, lo que hace que el circuito de hardware sea relativamente simple. Para reducir los conflictos de memoria, algunas máquinas adoptan un número primo de módulos.

Tomando los datos reales como ejemplo, es más fácil de entender. Por ejemplo, hay dos chips de memoria en un banco de memoria y el período de almacenamiento de cada chip es 100ns. Si lee datos, si sus datos se colocan de esta manera, primero Coloque el primer chip y luego coloque el segundo chip después de que esté lleno (método secuencial). Entonces, el proceso de lectura de datos es así: lea los datos en la posición 0, espere 100ns, lea los datos en la posición 1 y espere 100ns para leer los datos en la posición 2. Es fácil de entender.

Pero si lo pones de otra manera, por ejemplo, la posición 0 es el comienzo de la ficha 1, la posición 1 es el comienzo de la ficha 2, la posición 2 es la segunda unidad de la ficha 1 y la posición 3 es la segunda de la ficha 2. Las unidades se abordan de esta manera. Recuerde el concepto de ciclo de almacenamiento: de hecho, los datos se leen del chip al búfer, y luego del búfer a la CPU. Este proceso de lectura es muy corto y se puede resolver con solo un pulso. Sin embargo, debido a las propiedades físicas del chip, usted Después de leer un chip, debe haber un período de tiempo antes de que se pueda leer. Con el direccionamiento cruzado, su proceso de lectura es así:

Lea en el búfer los datos en la posición 0. Después de 40ns, la CPU toma los datos. En este momento, el ciclo de 100ns del chip 1 aún no ha pasado y no podemos leerlo, pero afortunadamente no estamos leyendo el chip 1 sino el chip 2. De esta manera, leemos los datos del chip 2 en el búfer. Después de 40ns, la CPU recupera los datos. En este momento, han pasado 80ns. Solo necesitamos esperar otros 20ns para continuar leyendo los datos de posición del No. 3, que es mucho más rápido que antes.

El direccionamiento cruzado de bits bajos también se denomina direccionamiento horizontal Las direcciones consecutivas se distribuyen en bancos de memoria adyacentes, mientras que las direcciones en el mismo banco de memoria no son continuas. La parte inferior del registro de direcciones de memoria se decodifica para seleccionar diferentes bancos de memoria, y la parte superior apunta a la palabra de memoria en el banco de memoria. Si se adopta el método de inicio de tiempo compartido, la velocidad de toda la memoria principal se puede aumentar sin cambiar cada ciclo de acceso al banco de memoria .

  • 1. Una memoria intercalada de bits bajos en paralelo de 4 bancos, la capacidad de cada módulo es de 64 K × 32 bits y el ciclo de acceso es de 200 n. En la siguiente declaración, () es correcta.
    A. Dentro de 200 ns, la memoria puede proporcionar información binaria de 256 bits a la CPU
    . B. Dentro de 200 ns, la memoria puede proporcionar información binaria de 128 bits a la CPU
    . C. Dentro de 50 ns, cada módulo puede proporcionar información binaria de 32 bits a la CPU
    . D. Ambos
    Solución incorrecta : para la CPU, puede acceder a 4 módulos de forma continua en un ciclo de acceso, 32 bits × 4 = 128 bits. La respuesta a esta pregunta es B.

  • 2. Cuál de las siguientes afirmaciones es correcta es ().
    Ⅰ. La memoria de doble puerto puede acceder a la misma área y a la misma unidad al mismo tiempo
    . Ⅱ. Cuando los códigos de dirección de los dos puertos son iguales, la memoria de doble puerto inevitablemente entrará en conflicto
    . Ⅲ. La base del diseño de la memoria intercalada de varios cuerpos de alto nivel es el principio de la localidad del programa
    Ⅳ. La memoria cuádruple intercalada de alto nivel puede acceder a 4 módulos de forma continua en un ciclo de almacenamiento.
    A. Solo Ⅰ, Only B. Solo Ⅱ, Only C. Solo Ⅰ, Only D. Solo
    : solución: la memoria de doble puerto tiene dos conjuntos de direcciones independientes entre sí Línea, línea de datos y línea de control de lectura y escritura, por lo que se puede acceder al mismo intervalo al mismo tiempo. Cuando los códigos de dirección de los dos puertos son los mismos, la operación de lectura de la memoria de dos puertos no entrará en conflicto y la operación de escritura entrará en conflicto. Debido a que las palabras en una sola memoria en la memoria intercalada de varios cuerpos de alto orden se almacenan continuamente, el principio de localidad del programa no se puede garantizar, y debido a que la memoria intercalada de varios cuerpos de bajo orden está intercalada, se cumple el principio de localidad del programa. La memoria intercalada de cuatro bancos de orden superior aún puede leer 4 palabras cuyas direcciones difieren entre sí en un banco a la vez, pero la probabilidad de leer de esta manera es pequeña. La respuesta a esta pregunta es C.

  • 3. Adopta memoria intercalada de bits bajos en paralelo de 4 bancos, la capacidad de cada módulo es de 32 K × 16 bits y el ciclo de acceso es de 400 ns. En la siguiente declaración, es correcto.
    A. Dentro de 0,1 µs, la memoria puede proporcionar 26 bits de información binaria a la CPU
    B. Dentro de 0,1 µs, la memoria puede proporcionar 16 bits de información binaria a la CPU
    C. Dentro de 0,4 µs, la memoria puede proporcionar 26 bits de información binaria a la CPU
    D.
    Nada está bien Solución: 400ns = 0.4µs, 16 bits × 4 = 64 bits = 26 bits. La respuesta a esta pregunta es C.

  • 4. Hay dos modos de varios cuerpos paralelos. Entre ellos, el programa   ① se  almacena en el alto orden cruz con su dirección de memoria multi-banco , y el bajo-orden cruzada dirigida memoria multi-banco se almacena en el programa   ②  .
    Solución: La respuesta a esta pregunta es: ①Según el orden de las direcciones en el cuerpo ②Almacenada secuencialmente en cuerpos adyacentes.

Cuando se utiliza memoria intercalada de varios bancos, cada banco de memoria se selecciona principalmente por la parte inferior de la dirección. Se puede obtener una mayor velocidad de acceso cuando las celdas de memoria a las que se accede continuamente están ubicadas en diferentes bancos de memoria. Una memoria multibanco con M memoria de direccionamiento cruzado de bit bajo utiliza direccionamiento módulo M

Supongo que te gusta

Origin blog.csdn.net/qq1350975694/article/details/107317631
Recomendado
Clasificación