Você está na página 1de 8

INSTITUTO DE ESTUDOS SUPERIORES DA AMAZNIA ENGENHARIA DE CONTROLE E AUTOMAO

Estratgias de I/O
DMA Direct Memory Access

MARCELO MIRANDA DAMASCENO

BELM 2012
1

INSTITUTO DE ESTUDOS SUPERIORES DA AMAZNIA ENGENHARIA DE CONTROLE E AUTOMAO

Estratgias de I/O
DMA Direct Memory Access

Trabalho apresentado disciplina Organizao e Arquitetura de Computadores, como requisito parcial para obteno de nota da 4. Avaliao Bimestral do 4 Semestre. Prof. Kleiber Tenrio.

MARCELO MIRNDA DAMASCENO Matr.: 1141057 P2NB11

BELM Novembro/2012
2

SUMRIO

1. INTRODUO ............................................................................................................ 4 2. DMA Direct Memory Access..................................................................................... 4 3. CANAIS E PROCESSADORES DE E/S...................................................................... 6 3.1 CARACTERSTICAS DOS CANAIS DE E/S.......................................................... 7 4. REFERNCIAS BIBLIOGRFICAS................................................................... 8

1. INTRODUO A arquitetura de E/S do sistema computacional a sua interface com o mundo exterior. Essa arquitetura oferece um meio sistemtico de controlar a interao com o mundo exterior e fornece ao sistema operacional as informaes de que precisa para gerenciar a atividade de E/S de modo eficaz. Existem trs tcnicas principais de E/S que so: E/s controlada por interrupo, em que um programa emite um comando de E/S para finalizar o final da operao de E/S; E/S controlada por interrupo, em que um programa emite um comando de E/S e depois continua a executar, at que seja interrompido pelo hardware de E/S para sinalizar o final da operao de E/S; E por ltimo, o assunto do qual trata este trabalho, que o acesso direto memria (DMA), em que um processador de E/S especializado assume o controle de uma operao de E/S para mover um grande bloco de dados. 2. DMA Direct Memory Access A tcnica de acesso direto memria envolve um mdulo adicional no barramento do sistema. Esse mdulo ou controlador de DMA capaz de imitar o processador e, de fato controlar o sistema do processador. Isso necessrio para que o mdulo de DMA possa transferir dados diretamente de e para a memria por meio do barramento do sistema. Para esse propsito, um mdulo de DMA pode tanto usar o barramento apenas quando este no sendo usado pelo processador quando forar o processador a suspender a sua operao temporariamente. Esta ltima tcnica a mais comum, sendo conhecida como roubo de ciclo, porque o mdulo de DMA de fato rouba um ciclo de barramento do processador. Quando o processador deseja ler ou escrever um bloco de dados, ele envia um comando ao mdulo de DMA com as seguintes informaes: Indicao de operao de leitura ou de escrita, enviada pela linha de controle de leitura ou de escrita entre o processador e o mdulo DMA. O endereo do dispositivo de E/S envolvido, enviado nas linhas de dados. O endereo de memria para incio de leitura ou escrita de dados, enviados pelas linhas de dados e armazenamento pelo mdulo DMA no seu registrador de endereos. Nmeros de palavras a serem lidos ou escritos, tambm enviados pelas linhas de dados e armazenamento no registrador contador de dados. 4

Depois de enviar o comando, o processador pode continuar executando outras instrues. A execuo da operao de E/S delegada ao mdulo DMA. Ele transfere diretamente todo o bloco de dados, uma palavra de cada vez, diretamente de ou para a memria, sem a interveno do processador. Quando a transferncia concluda, o mdulo de DMA envia um sinal de interrupo para o processador. Dessa maneira, o processador envolvido apenas no incio e no fim da transferncia do bloco de dados. O mdulo DMA ento transfere uma palavra e retorna o controle para o processador. Note que isso no uma interrupo; O processador no tem que salvar o contexto e executar qualquer outra ao. Ele apenas efetua uma pausa, com durao de um ciclo de barramento. O efeito global tornar a execuo de instrues um pouco mais lenta. Entretanto, no caso de transferncia de um bloco de palavras, a tcnica de DMA bem mais eficiente que a E/S dirigida por interrupo ou a E/S programada. O mecanismo de DMA pode ser configurado de diversas formas. Algumas possibilidades, por exemplo, todos os mdulos de E/S compartilham o uso de um mesmo barramento de sistema. O mdulo DMA atua como um processador substituto, usando E/S programada para transferir dados diretamente entre a memria e os mdulos E/S. Essa configurao, embora barata, claramente ineficiente. Assim como no caso da E/S programada controlada por processador, a transferncia de cada palavra consome dois ciclos de barramento. O nmero de ciclo de barramentos requeridos pode ser diminudo substancialmente com a integrao das funes de acesso direto memria e de E/S. Isso significa que deve existir um caminho entre o mdulo DMA e um ou mais mdulos de E/S, independentemente do barramento do sistema. A lgica de controle de DMA pode ser parte de um mdulo de E/S ou ser um mdulo separado que controla um ou mais mdulos de E/S. Essa idia pode ser aprimorada, com o uso de um barramento exclusivo de E/S, que conecta os mdulos de E/S ao mdulo de DMA. Isso reduz para apenas um mdulo de interfaces de E/S ao mdulo de DMA e possibilita uma configurao que pode ser facilmente expandida. Nesses dois casos, o barramento do sistema, compartilhado entre o mdulo DMA, o processador e a memria, usada pelo mdulo de DMA apenas para trocar dados com a memria. A transferncia de dados entre o mdulo de DMA e os mdulos de E/S feita fora do barramento do sistema.

3. CANAIS E PROCESSADORES DE E/S A evoluo da funo de E/S medida que os sistemas de computadores evoluram, seus componentes individuais tornaram-se mais complexos e sofisticados, principalmente aqueles voltados para funes de E/S. Parte dessa evoluo foi descrita anteriormente, e suas principais etapas podem ser resumidas como a seguir: 1. A CPU controla diretamente cada dispositivo perifrico. Isso pode ser visto no caso de dispositivos simples controlados por microprocessadores. 2. Um controlador ou mdulo de E/S adicionado. A CPU usa E/S programada sem interrupes. Nessa etapa, detalhes relativos a interfaces externas de dispositivos de E/S so isolados da CPU. 3. A configurao a mesma da etapa 2, mas agora so utilizadas interrupes. A CPU passa a no mais perder tempo aguardando o trmino de uma operao de E/S, o que contribui para aumentar a eficincia. 4. O mdulo de E/S efetua acesso direto memria pro meio de um mdulo de DMA. Um bloco de dados pode ser transferido diretamente de ou para a memria sem envolver a CPU, exceto no incio e no fim da transferncia. 5. O mdulo de E/S aprimorado, tornando-se um processador com um conjunto especializado de instrues de E/S. A CPU envia um comando para o processador de E/S, que executa um programa de E/S carregado na memria. O processador de E/S busca e executa instrues sem interveno da CPU. Isso possibilita CPU especificar uma sequncia de atividades de E/S a serem executadas e apenas ser interrompida quando toda a sequncia completada. 6. O mdulo de E/S inclui uma memria local prpria e , portanto, ele prprio, um computador. Essa arquitetura possibilita controlar grande nmero de dispositivos de E/S, com o mnimo envolvimento da CPU. Ela normalmente usada para controlar a comunicao com terminais interativos. O processador de E/S cuida da maior parte das tarefas envolvidas dos terminais. Ao longo desse caminho evolutivo, mais e mais funes de E/S so desempenhadas sem envolvimento da CPU. A CPU , cada vez mais, liberada de tarefas relacionadas a E/S, o que contribui para melhorar o desempenho global do sistema. Nas etapas 5 e 6 ocorre uma mudana importante com a introduo de um mdulo de E/S capaz de executar um programa. O mdulo de E/S da etapa 5 frequentemente denominado canal de E/S. Para o mdulo da 6

etapa 6, mais usado o termo de processador de E/S. Entretanto, esse dois termos so ocasionalmente utilizados em ambos os casos. Na descrio a seguir, usaremos o termo canal de E/S. 3.1 CARACTERSTICAS DOS CANAIS DE E/S Um canal de E/S representa uma extenso do conceito de DMA. capaz de executar instrues de E/S, oque lhe d total controle sobre as operaes de E/S. Em um sistema de computao que emprega esse dispositivo, a CPU no executa instrues de E/S. Essas instrues so armazenadas na memria principal, sendo executadas por um processador especializado no prprio canal de E/S. Dessa maneira, a CPU inicia uma transferncia de E/S instruindo o canal de E/S para executar um determinado programa armazenado na memria. Esse programa especfica o dispositivo ou conjunto de dispositivos, a rea ou as reas da memria para armazenamento ou leitura de dados, a prioridade e as aes a serem tomadas no caso de determinadas situaes de erro. O canal de E/S executa essas instrues e controla a transferncia de dados. Dois tipos canais de E/S so comuns, um canal seletor controla vrios dispositivos de entrada e sada de alta velocidade e, a cada instante, fica dedicado para a transferncia de dados de um desses dispositivos. Assim, o canal de E/S seleciona um dispositivo e efetua a transferncia de dados. Cada dispositivos ou grupo de poucos dispositivos conectado a um controlador de E/S, bastante semelhante aos mdulos de E/S discutidos at agora. Dessa maneira, o canal de E/S controla esses controladores de E/S no lugar da CPU. Um canal multiplexador pode transmitir dados para vrios dispositivos ao mesmo tempo. Para dispositivos de E/S de baixa velocidade, usado um multiplexador de bytes, que recebe ou transmite caracteres, o mais rpido possvel, para diversos dispositivos. Por exemplo, caso trs dispositivos estejam conectados, com taxas de transferncia de dados diferentes, e cujo fluxos individuais de caracteres so A1 A2 A3 A4..., B1 B2 B3 B4... e C1 C2 C3 C4..., o fluxo de caracteres resultante pode ser A1 B1 C1 A2 B2 C2 A3 B3 C3 A4, e assim por diante. Para dispositivos de alta velocidade, usado um multiplexador de blocos, que intercala a transferncia de blocos de dados para os dispositivos.

4. REFERNCIAS BIBLIOGRFICAS Stallings, William. Arquitetura e Organizao de Computadores: projeto para o desempenho 8 edio Pearson. Stallings, William. Arquitetura e Organizao de Computadores 5 edio Pearson.

Você também pode gostar