Desmontagem do microcódigo i386 concluída e criado o CPU aberto z386

Entusiastas conseguiram extrair e desassemblar com sucesso o microcódigo do processador Intel 80386, que, devido à falta de documentação, era considerado uma "caixa-preta". A imagem binária do microcódigo foi recriada com a ajuda de IA a partir de fotografias de alta resolução do cristal, e a lógica operacional foi desvendada através do rastreamento das conexões no cristal. Gradualmente, foram identificadas a estrutura das microinstruções (μ-ops), os campos, a ordem de execução e os marcadores de término das instruções. Os desenvolvimentos do projeto foram publicados no GitHub como domínio público.

Desmontagem do microcódigo i386 concluída e criado o CPU aberto z386

Foi identificado que, no CPU 80386, cada instrução é completamente executada através do microcódigo, enquanto nos 8086 e em processadores modernos, parte das instruções é processada diretamente. Além disso, ao contrário dos processadores 8086, no 80386 o microcódigo não implementa algoritmos diretamente, mas principalmente configura aceleradores de hardware (multiplicador, divisor, deslocamento rápido, PTU (Unidade de Teste de Proteção)).

No decorrer da pesquisa, também foi descoberta uma possível vulnerabilidade de segurança ao processar o bitmap de permissões de entrada/saída (IO permission bitmap): durante uma operação de 4 bytes em portas, os bits de permissões eram verificados apenas para os primeiros 3 bytes, enquanto o acesso ao 4º byte não era verificado, o que teoricamente permitia acesso a registradores de hardware, cujo acesso deveria ser proibido.

Com base no microcódigo publicado, foi desenvolvido um CPU aberto z386, implementado na linguagem SystemVerilog e operando com FPGA. Em vez de implementar cada instrução na forma de um RTL (nível de transferência de registradores) separado, o z386 implementa estruturas de hardware controladas pelo microcódigo original. O desempenho da implementação preparada se aproxima de um rápido PC 386 (~70MHz). Sob a administração do z386, foi possível executar com sucesso o DOS 6/7, DOS/4GW, DOS/32A e jogos como Doom e Cannon Fodder.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster