Registradores

Em um sistema de computação, a destinação final do conteúdo de qualquer tipo de memória é o processador (a CPU). Isto é, o objetivo final de cada uma das memórias (ou do subsistema de memória) é armazenar informações destinadas a serem, em algum momento, utilizadas pelo processador. Ele é o responsável pela execução das instruções, pela manipulação dos dados e pela produção dos resultados das operações.

As ações operativas do processador são realizadas nas suas unidades funcionais: na unidade aritmética e lógica - ULA (Aritmetic and Logic Unit), na unidade de ponto flutuante - UFP (Float Point Unit - FPU) ou talvez em uma unidade de processamento vetorial. No entanto, antes que a instrução seja interpretada e as unidades da CPU sejam acionadas, o processador necessita buscar a instrução de onde ela estiver armazenada (memória cache ou principal) e armazená-la em seu próprio interior, em um dispositivo de memória denominado registrador de instrução.

Em seguida a este armazenamento da instrução, o processador deverá, na maioria das vezes, buscar dados da memória (cache, principal ou mesmo de unidades de disco em fita) para serem manipulados na ULA. Esses dados também precisam ser armazenados em algum local da CPU até serem efetivamente utilizados. Os resultados de um processamento (de uma soma, subtração, operação lógica, etc.) também precisam, às vezes, ser guardados temporariamente na CPU, ou para serem novamente manipulados na ULA por uma outra instrução, ou para serem transferidos para uma memória externa à CPU. Esses dados são armazenados na CPU em pequenas unidades de memória, denominadas registradores.

Um registrador é, portanto, o elemento superior da pirâmide de memória (ver figura 1), por possuir a maior velocidade de transferência dentro do sistema (menor tempo de acesso), menor capacidade de armazenamento e maior custo.

Analisando os diversos parâmetros que caracterizam as memórias, descritos no item anterior, temos:

Tempo de acesso/ciclo de memória - por serem construídos com a mesma tecnologia da CPU, estes dispositivos possuem o menor tempo de acesso/ciclo de memória do sistema (neste caso, não é aplicável distinguir-se tempo de acesso e ciclo de memória, por serem sempre iguais), algo em torno de l0 a 20 nanossegundos, dependendo de tratar-se de CPU de um supercomputador ou de um microprocessador mais lento.

Capacidade - os registradores são fabricados com capacidade de armazenar um único dado, uma única instrução ou até mesmo um único endereço. Desta forma, a quantidade de bits de cada um é de uns poucos bits (de 8 a 64), dependendo do tipo de processador e, dentro deste, da aplicação dada ao registrador em si. Registradores de dados têm, em geral, o tamanho definido pelo fabricante para a palavra do processador, tamanho diferente dos registradores usados exclusivamente para armazenar endereços (quando há registradores com esta função específica no processador). Por exemplo, o processador Intel 80486, cuja palavra é de 32 bits, tem registradores também de 32 bits, inclusive registradores de endereços (os números que indicam os endereços de célula de memória principal do processador têm 32 bits); o processador Motorola 68000 tem registradores de dados de 32 bits (palavra de 32 bits) e registrador de endereços de 24 bits, enquanto os processadores da família IBM 43xx possuem registradores de dados de 32 bits e endereços de 24 bits.
 

Volatilidade - registradores são memórias de semicondutores e, portanto, necessitam de energia elétrica para funcionarem. Assim, registradores são memórias voláteis. Para a CPU funcionar sem interrupção, mesmo quando eventualmente a energia elétrica para o computador é interrompida, é necessário que o sistema de computação seja ligado a um dispositivo de alimentação elétrica denominado "no-break", o qual é constituído de bateria ou gerador de corrente, conversor AC/DC.

Tecnologia - conforme mencionado no tópico anterior, os registradores são memórias de semicondutores, sendo fabricados com tecnologia igual à dos demais circuitos da CPU, visto que eles se encontram inseridos em seu interior. No entanto, há diversos modelos de tecnologia de fabricação de semicondutores, uns com tempo de acesso maior que outros, custos e capacidade de armazenamento, no mesmo espaço físico, diferentes. Tecnologias bipolar e MOS ("metal oxide semicondutor") são comuns na fabricação de registradores, sendo descritas na disciplina "Circuitos Lógicos".

Temporariedade - os registradores são memórias auxiliares internas à CPU e, portanto, tendem a guardar informação (dados ou instruções) o mais temporariamente possível. Acumuladores ou registradores de dados armazenam os dados apenas o tempo necessário para sua utilização na ULA.

Custo - devido à tecnologia mais avançada de sua fabricação, os registradores encontram-se no topo da pirâmide em termos de custos, sendo os dispositivos de maior custo entre os diversos tipos de memória.