Registradores Risc-V
Post

Registradores Risc-V

RISCuinho

Um Risc-V possui 32 registradores que podem ser usados livremente, por são chamados de registradores de proposito geral, porém existe uma padronização atráves do ABI (Application Binary Interface) onde cada registrador recebe um nome e um uso, assim facilita uma maior integração no desenvolvimento de aplicações. Esta padronização facilita em muito o desenvolvimento em C.

Registradores de Uso Geral

Na Tabela abaixo apresento os registradores de uso geral e seu nome padrão, o nome ABI, e sua descrição

RegistradorNome ABIDescriçãoQuem Grava
x0zeroFisicamente conectado a zero 
x1raEndereço de RetornoOrigem chamada
x2spstack pointerDestino chamada
x3gpPonteiro Global-
x4tpPonteiro Thread-
x5-7t0-2Registradores TemporáriosOrigem Chamada
x8s0 / fpRegistradore Preservado/Ponteiro de FrameDestino Chamada
x9s1Resitrador PreservadoDestino Chamada
x10-11a0-1Argumentos de Função/Valores de RetornoOrigem Chamada
x12-17a2-7Argumentos de FunçãoOrigem Chamada
x18-27s2-11Registradores PreservadosDestino Chamada
x28-31t3-6Registradores TemporariosOrigem Chamada

Registradores Especificos

Na extenção padrão RV32I além dos 32 registradores de proposito geral, há mais um registrador de uso especifico para uso do Programa Counter, ele é de uso interno e contem o valor do Program Counter, para ter acesso ao seu valor veja instruções AUIPC, JAL, JALR e detalhes nos artigos de exemplos.

Registradores e Extensões

As extenções que alteram os comprimentos de bits do processador RISC-V de 32bits para 64 e 128, não alteram o número de registradores, apenas seu comprimento, portando o número de registradores neste tipo de extenção não alteara. Sendo assim os registradores sendo todos de 32bits, passam respectivamente a ser de 64 bits e 128 bits.

No caso da extenção RV32E que é para Embarcados, o número de registradores é reduzido para 16, mas o comprimento dos mesmo é mantido em 32 bits.

Algumas extensões podem adicionar novos registradores, não irei tratar aqui estes registradores, veja artigos relativos na tag registradores.

This post is licensed under CC BY 4.0 by the author.