Fundamentos de Computação - I/O
Perito Criminal Polícia Civil/PE 2006 - Banca: IPAD)
3. Considere um sistema computacional contendo processador, memória e barramento com as seguintes características:
1. Sistema de memória e barramento suportando acesso a blocos de 4 palavras de 32 bits.
2. Um barramento de 64 bits, síncrono, com clock de 200MHz, sendo que cada transferência de 64 bits gasta 1 ciclo de clock e, adicionalmente, 1 ciclo de clock para envio de um endereço à memória.
3. São necessários 2 ciclos de clock entre duas operações sucessivas no barramento. (Suponha que o barramento está livre antes de um acesso).
4. O tempo de acesso à memória é de 100 ns.
A latência e a banda passante para leitura de 256 palavras são, respectivamente:
a) 8.000 ns e 128 MB/s
b) 2.880 ns e 71 MB/s
c) 8.200 ns e 128 MB/s
d) 14.400 ns e 71 MB/s
e) 2.880 ns e 128 MB/s
O gabarito é a letra A....
Primeiramente, foi dado que o clock do barramento é de 200MHz, o que equivale a 5ns por ciclo. Em seguida, temos que o sistema de memória e barramento suportam acesso a blocos de 4 palavras de 32 bits. Além disso, são necessários 2 ciclos de clock entre duas operações sucessivas no barramento (não sei por que razão isso, mas tudo bem...). Portanto, para fazer a leitura de um bloco de 4 palavras da memória, será necessário:
2 ciclos (um p/ envio do endereço e outro p/ transferência dos primeiros 64 bits) + 2 ciclos de ociosidade (conforme descrito no enunciado) + 1 ciclo p/ transferência dos últimos 64 bits (note que, no caso das 2 últimas palavras de cada bloco, não é necessário enviar o endereço novamente).
Assim, temos 5 ciclos de barramento p/ cada bloco de 4 palavras lido + 100 ns de latência da mamória p/ leitura desse bloco.
Assim, para um total de 64 blocos de 4 palavras (ou seja, 256 palavras), teremos:
1 bloco -> 5 ciclos + 100 ns
64 blocos -> 64x5 ciclos + 64x100 ns
64 blocos -> 320 ciclos + 6400 ns.
Como cada ciclo equivale a 5ns, teremos:
64 blocos -> 320x5 ns + 6400 ns = 8000ns
Como a quantidade de dados transferida nesse intervalo de tempo foi igual a 256 palavras de 32 bits cada, a banda passante será:
= (256 x 32) / 8000 [bits/ns]
= (256 x 32 / 8) / 8000 [bytes/ns]
= 128 x 10^6 [bytes/s]
= 128 MB/s
Portanto, a resposta é letra A mesmo...
3. Considere um sistema computacional contendo processador, memória e barramento com as seguintes características:
1. Sistema de memória e barramento suportando acesso a blocos de 4 palavras de 32 bits.
2. Um barramento de 64 bits, síncrono, com clock de 200MHz, sendo que cada transferência de 64 bits gasta 1 ciclo de clock e, adicionalmente, 1 ciclo de clock para envio de um endereço à memória.
3. São necessários 2 ciclos de clock entre duas operações sucessivas no barramento. (Suponha que o barramento está livre antes de um acesso).
4. O tempo de acesso à memória é de 100 ns.
A latência e a banda passante para leitura de 256 palavras são, respectivamente:
a) 8.000 ns e 128 MB/s
b) 2.880 ns e 71 MB/s
c) 8.200 ns e 128 MB/s
d) 14.400 ns e 71 MB/s
e) 2.880 ns e 128 MB/s
O gabarito é a letra A....
Primeiramente, foi dado que o clock do barramento é de 200MHz, o que equivale a 5ns por ciclo. Em seguida, temos que o sistema de memória e barramento suportam acesso a blocos de 4 palavras de 32 bits. Além disso, são necessários 2 ciclos de clock entre duas operações sucessivas no barramento (não sei por que razão isso, mas tudo bem...). Portanto, para fazer a leitura de um bloco de 4 palavras da memória, será necessário:
2 ciclos (um p/ envio do endereço e outro p/ transferência dos primeiros 64 bits) + 2 ciclos de ociosidade (conforme descrito no enunciado) + 1 ciclo p/ transferência dos últimos 64 bits (note que, no caso das 2 últimas palavras de cada bloco, não é necessário enviar o endereço novamente).
Assim, temos 5 ciclos de barramento p/ cada bloco de 4 palavras lido + 100 ns de latência da mamória p/ leitura desse bloco.
Assim, para um total de 64 blocos de 4 palavras (ou seja, 256 palavras), teremos:
1 bloco -> 5 ciclos + 100 ns
64 blocos -> 64x5 ciclos + 64x100 ns
64 blocos -> 320 ciclos + 6400 ns.
Como cada ciclo equivale a 5ns, teremos:
64 blocos -> 320x5 ns + 6400 ns = 8000ns
Como a quantidade de dados transferida nesse intervalo de tempo foi igual a 256 palavras de 32 bits cada, a banda passante será:
= (256 x 32) / 8000 [bits/ns]
= (256 x 32 / 8) / 8000 [bytes/ns]
= 128 x 10^6 [bytes/s]
= 128 MB/s
Portanto, a resposta é letra A mesmo...
Comentários