Skip to content

Dispositivo de Tempo Real

Diogo Valadares Reis dos Santos edited this page Aug 26, 2025 · 1 revision

[English]

[← Página Anterior | Próxima Página →]

O Dispositivo de Tempo Real

O Dispositivo de Tempo Real (RTD, do inglês Real-Time Device) é um componente mapeado em memória responsável por armazenar o valor do registrador CSR time e por gerar o sinal de interrupção por temporizador (Timer Interrupt).

image

O RTD contém dois registradores de 64 bits. Um deles, chamado mtime, acompanha o tempo atual, enquanto o outro, mcmptime, define o limite de tempo que dispara o sinal de interrupção por temporizador.

Cada registrador de 64 bits é dividido em dois segmentos de 32 bits. Esses segmentos podem ser escritos usando instruções de armazenamento (store) nos endereços apropriados, e lidos da mesma forma com instruções de leitura (load). No entanto, quando uma instrução de leitura CSR é executada para acessar os registradores time ou timeh, uma instrução de leitura do sistema é automaticamente utilizada para recuperar o valor desses registradores.

Por Dentro do Dispositivo de Tempo Real

Devido a limitações na simulação do Logisim, o registrador RTD não pode ser atualizado mais rápido que o clock do processador. Para contornar essa limitação, foi criado um gerador de pulsos conectado à entrada de clock do contador mtime, permitindo que ele seja atualizado duas vezes por ciclo de clock.

Embora o valor completo seja de 64 bits, cada registrador é dividido em dois segmentos de 32 bits. Esse design simplifica o circuito necessário para a troca de dados.

image

Este componente foi criado com base na Especificação Avançada de Interrupções Locais do Núcleo RISC-V

Clone this wiki locally