salto de feh, vc tem que assistir mais indiana jones! eh que eu tenho preguica de usar acentuacao qdo estou em "modo descanso"

mas entao, tem varios sabores de RISC-V!
o meu eh um pouco mais complexo pq eu queria primar pela performance, com CPI ~ 1 (clocks per instruction) e ele chega a 1.15, o que eh bem bom, mas ao custo de um certo nivel de complexidade (pipeline de 3 estagios, memorias sincronas, arquitetura de harvard, duplicacao de banco de registros, suporta threading, etc). o meu ficou popular entre estudantes por ser em verilog, visto que no comeco a maioria dos cores era montada em linguagens de alto nivel, como o vexriscv, que eh um core com pipeline de 5 estagios e CPI ~ 1, mas escrito em chisel (parente de escala) e que usa um tool de conversao para gerar um verilog ininteligivel hehehe
tem o core de um amigo meu fez o desenvolvimento de um core do zero que eh mais simples (maquina de estado, arquitetura von neumann, bem estruturado, etc) e gravou tudo:
https://www.youtube.com/playlist?list=PLEP_M2UAh9q52a-w3ZUEChEoG_ROeMa88outra opcao legal eh o SERV, que eh um RISC-V bit-serial, ou seja, ele ocupa bem pouco espaco as custas da performance (CPI >= 32). comparativamente, em uma FPGA onde se coloca 100 vexriscv rodando em 100MHz, eh possivel colocar 1024 cores SERV rodando em 128MHz e que permite muita pesquisa relacionada a HPC com poucos recursos. com o meu core, darkriscv, eu fiz um experimento na mesma placa com um unico core e 128 threads, bem louco!
sobre o SERV, ele tipicamente ocupa 1/4 do tamanho dos menores RISC-V e tem ateh um concurso para ver quem coloca mais cores, as duas entradas de 1024 cores (5a e 6a) sao minhas:
https://corescore.storeno mais, o santo graal ainda eh o GRVI do Jan Gray:
https://forums.xilinx.com/t5/Xcell-Daily-Blog-Archived/Shazam-Jan-Gray-gets-1680-RISC-V-processors-to-dance-on-the-head/ba-p/789549todo mundo fica tentando entender como ele conseguiu chegar a apenas 320LUTs e 375MHz nesse core:

ao que parece a chave eh construir algumas unidades que sao menos usadas, mas consome mais area de forma compartilhada, como shift e tal. outra tecnica eh que ele meio que roteia e otimiza tudo na mao.
enfim, o bom do RISC-V eh que a spec minima RV32E com apenas 37 instrucoes eh perfeitamente suportada pelo GCC, o que significa zero esforco na parte de software!
