Dissertação

Development Environment for a RISC-V Processor: Cache EVALUATED

Apesar do recente advento do hardware de código aberto, as caches disponiveís em código aberto têm baixa configurabilidade, falta de suporte para ciclo único acessos de memória em pipeline e usam interfaces e Linguagens de Descrição de Hardware não-padrão. Neste trabalho IOb-Cache, uma cache configurável de alto desempenho em Verilog de código aberto é proposta e desenvolvida. A cache tem design modular e é composto por 3 módulos. O módulo Cache-Memory contém as memórias e o controlador principal. Os módulos Front-End e Back-End isolam o design do cache do processador e da memória interfaces, respectivamente, o que permite a adoção rápida para novos processadores ou controladores de memória. Atualmente o módulo Front-End suporta a interface nativa e o módulo Back-end oferece suporte às interfaces nativa e AXI. A cache pode ser configurado para definir o número de vias, o número de linhas e palavras por linha, a política de substituição, etc. A política de escrita é atualmente a política Write-Through Not Allocate com um buffer interno, limitando ao tamanho da palavra durante acessos de escrita. O back-end pode ser configurado para ler de várias palavras por transferência para aproveitar a memória disponível largura de banda. Tanto quanto é do nosso conhecimento, IOb-Cache é a única cache Verilog configurável que suporta interfaces de CPU em pipeline e a popular interface de barramento de memória AXI4. IOb-Cache está integrado no repositório IOb-SoC Github, que tem 16 estrelas, e está sendo usado em 38 projetos (bifurcações).
Código aberto, cache, altamente configurável, pipeline, AXI Nativa.

janeiro 15, 2021, 15:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

José João Henriques Teixeira de Sousa

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar