-
Notifications
You must be signed in to change notification settings - Fork 0
Dispositivo de Tempo Real
[English]
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).
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.
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.
Este componente foi criado com base na Especificação Avançada de Interrupções Locais do Núcleo RISC-V
-
- 1.1 Introduction
- 1.2 RISC-V Implementation
- 1.2.1 Available Instruction Set
- 1.2.2 Available Non-ISA Features
-
- 2.1 ALU
- 2.2 Register File
- 2.3 Program Counter
- 2.4 Input Buffer
- 2.5 RAM
- 2.6 Operation Controller
- 2.7 CSR Controller
-
- 3.1 Input Devices
- 3.1.1 Keyboard
- 3.1.2 Switches and Joystick
- 3.1.3 Random Number Generator
- 3.1.4 Real-Time Device
- 3.2 Output Devices
- 3.2.1 Screen
- 3.2.2 Terminal
- 3.2.3 Software Interrupt Register
- 3.1 Input Devices