¿Cómo calcular el tiempo de acceso para una simulación de caché?

0

Estamos simulando un caché MIPS con un programa llamado MipsIT . Hemos llegado a un punto en el que deberíamos establecer el tiempo de acceso para la memoria.

Peronoentiendocómocalcularestaconfiguración.Diceenla spec

  

Reinicie el simulador y asegúrese de que I-cache y D-cache estén habilitados. Establecer un tiempo de acceso razonable para la memoria primaria. Deje que los otros parámetros tengan los valores estándar.

Pero no entiendo cómo calcular un tiempo de acceso "razonable".

Dice en la especificación:

  

Para obtener valores reales en la simulación, debe calcular el promedio de la falta de penalización. Ese promedio se establece como tiempo de acceso en el simulador.

¿Pero cómo hacer una fórmula y un cálculo a partir de ella?

    

1 respuesta

1

Debe tener alguna idea de cuánto tarda la memoria principal en transferir un bloque de datos correspondiente a una "línea" en el caché. El número que necesita ingresar en este cuadro de diálogo es el número de períodos de reloj de la CPU correspondientes a esa cantidad de tiempo, para operaciones de lectura y escritura, respectivamente.

Por ejemplo, digamos que el bus de memoria funciona a 100 MHz y se necesitan tres relojes para leer (30 ns) y dos relojes para escribir (20 ns). Si el tamaño de su bloque de caché es de 2 palabras, entonces el tiempo total para leer o escribir un bloque sería 60 ns y 40 ns, respectivamente. Si su CPU se está ejecutando a, digamos, 200 MHz (5 ns periodo de reloj), ingresaría 12 y 8 en estos campos.

Si su memoria principal es más compleja, como la SDRAM DDR que admite transferencias en ráfaga y varios bancos, el cálculo se vuelve un poco más complejo, pero para los fines de esta simulación, una cifra "promedio" para cada tipo de transferencia debería ser adecuado.

    
respondido por el Dave Tweed

Lea otras preguntas en las etiquetas