Giter Club home page Giter Club logo

mips-like's Introduction

MIPS-Like Processor

Relatorio: Mips-Like-Classic

O processador monociclo de multiplicação de matrizes 4x4 feito no Logisim é um sistema que executa a multiplicação de matrizes 4x4 de forma sequencial e controlada. Aqui está um breve resumo das principais componentes desse sistema:

  1. Banco de Registradores: Esta é uma memória de acesso rápido usada para armazenar dados temporários, como os elementos das matrizes, assim como os resultados intermediários e finais da multiplicação.
  2. Unidade de Controle: Responsável por coordenar e controlar as operações realizadas pelo processador. Ela emite sinais de controle para os diversos componentes do processador, como a Unidade Lógica Aritmética (ULA), a Controle da ULA e o Banco de Registradores, para garantir que as instruções sejam executadas corretamente.
  3. Controle da ULA: Esta unidade recebe sinais de controle da Unidade de Controle e os traduz em sinais específicos para controlar a ULA. Ela determina a operação aritmética a ser realizada pela ULA, com base na instrução sendo executada.
  4. ULA (Unidade Lógica Aritmética): Responsável por realizar operações aritméticas e lógicas, como adição e multiplicação.
  5. Memória: Armazena os dados, incluindo as matrizes que serão multiplicadas e os resultados da multiplicação. Neste caso, a memória pode ser utilizada para armazenar as matrizes de entrada e a matriz resultante.

image

Relatorio: Mips-Like-Deluxe

A transição do processador monociclo para o pipeline é uma estratégia comum para melhorar o desempenho e a eficiência do processador, permitindo a execução de múltiplas instruções simultaneamente:

  1. IF/ID (Instruction Fetch/Instruction Decode): Após a busca (IF) de uma instrução na memória de instruções, o registrador IF/ID armazena essa instrução enquanto a próxima instrução é buscada. Isso permite que a próxima instrução comece a ser decodificada enquanto a atual ainda está sendo executada.

  2. ID/EX (Instruction Decode/Execution): Nesta etapa, a instrução é decodificada e os operandos são lidos dos registradores. Além disso, os sinais de controle são gerados para a próxima etapa de execução (EX). Isso permite que a unidade de execução (ULA) comece a processar a instrução enquanto a próxima instrução é decodificada.

  3. EX/MEM (Execution/Memory Access): Aqui, a ULA executa a operação especificada pela instrução. Além disso, nesta etapa, são calculados os endereços de memória, e as operações de acesso à memória são realizadas (leitura ou escrita).

  4. MEM/WB (Memory Access/Write Back): Esta etapa envolve a finalização da operação de acesso à memória, incluindo a leitura ou escrita de dados na memória. Além disso, os resultados finais são escritos de volta nos registradores ou nos registradores intermediários.

image image

A adição dos registradores intermediários (buffers de pipeline) entre cada estágio do pipeline ajuda a evitar condições de corrida e garantir que as instruções sejam executadas corretamente em cada estágio. Além disso, a introdução de três registradores antes de escrever no banco de registradores permite que a escrita no banco de registradores seja retardada, evitando bolhas no pipeline após instruções como sw (store word).

image

mips-like's People

Contributors

isaaclvf avatar leopsdev avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.