Organización del Computador
Parcial 3

B. Gonzalez Kriegel - N. Wolovick

20 de Junio de 2000

  1. Para el siguiente datapath obtenga la secuencia de control para realizar la operación $r_{0} \leftarrow r_{0}\oplus r_{1}$.
    \includegraphics[keepaspectratio=true, height=37mm]{p3e1.eps}
    $F_{1}$ $F_{0}$ Función
    0 0 ADD(A,B)
    0 1 OR(A,B)
    1 0 A
    1 1 NOT(A)
    La secuencia de palabras de control deberá ser dada en formato nemotécnico $ r_{escr} \leftarrow op(r_{busA},r_{busB}) $ y en formato binario como se muestra a continuación:
    BusA BusB BusC ALU
    1 0 1 0 1 0 $F_{1}$ $F_{0}$

  2. Se quiere implementar las funciones booleanas $A,B,C,D:{\bf B^{3}}\rightarrow {\bf B}$ (X$\rightarrow$lsb) usando una tabla de búsqueda (lookup-table) en memoria de sólo lectura utilizando ROMs de 4 palabras y 4 bits por palabra ($4\times 4$).

    \begin{eqnarray*}
A(X,Y,Z) & = & {\textstyle \sum} m(1,2,4,6) \\
B(X,Y,Z) & =...
...\sum} m(2,6) \\
D(X,Y,Z) & = & {\textstyle \sum} m(1,2,3,5,7)
\end{eqnarray*}



        \includegraphics[keepaspectratio=true, height=25mm]{p3e2.eps}
    1. Diseñe una ROM de $8\times 4$ con entradas $A_{2\cdots 0}$, $CS$ y salidas $D_{3\cdots 0}$ utilizando ROMs de $4\times 4$ como la que se muestra arriba más un decodificador externo.
    2. Conecte las entradas y salidas de las funciones que se quieren implementar a la ROM construída en el punto anterior y muestre en formato de tabla binaria locación/valor $(A_{1}A_{0},D_{3}D_{2}D_{1}D_{0})$ el contenido de las ROMs de $4\times 4$ que harían que el circuito implemente las funciones $A,B,C,D$.

  3. El subsistema de memoria cache de nivel 1 para datos del microprocesador Alpha 21064 divide la dirección de memoria de 34 bits en campos tag, set y word de la siguiente manera:
    Tag<21> Set<8> Word<5>

    Tomando en cuenta que la asociatividad es 1, o sea mapeo directo, calcule:

    (a) Cantidad de ranuras (b) Cantidad de bytes por ranura que almacena, teniendo en cuenta que cada palabra es de un byte (c) Tamaño total de almacenamiento de la caché en kBytes (d) Tamaño total en bits de cada línea, teniendo en cuenta los campos valid y tag asociados a cada ranura (el campo dirty no es necesario porque esta cache implementa la política write-through).





nicolas@turing.fis.uncor.edu