• Labs

Lab 6: ULA

Descritivo
Data limite para entrega: Final da aula (07/03)
Pointos: 2 HW / 0 SW
Entregue resposta pelo google forms

Info

Faca a atividade em dupla, so que cada um submete a sua resposta no forms.

O objetivo desse laboratório é o de trabalharmos com o controle dos sinais da ULA para entendermos as operações da unidade de processamento do nosso computador. Para isso iremos:

  1. Programar a ULA na FPGA
  2. Responder o google forms usando a FPGA para validar as operações

Executando na FPGA

Podemos executar a ULA na FPGA, para isso iremos disponibilizar o binário da FPGA com a ULA já implementada, o arquivo está dentro da pasta do lab da ula e é chamado de Z011-ULA.rbf`.

Exercise

Use o programa fpgaLoader para carregar esse projeto na FPGA

Agora basta controlar as chaves da FPGA e ver o resultado da ULA nos LEDS. Note que as entradas X e Y da ula são fixas em:

  • X: 01110011
  • Y: 01011111

Repita algumas operações realizados no simulador.

Controlando ULA

Com o simulador podemos testar a ULA modificando seus sinais de controle. A seguir uma proposta de operações lógicas que devem ser realizadas na ULA, seus sinais de controle e resultados devem ser anotados nas tabelas.

Para cada exercício, anote a operação no papel e entenda o que está acontecendo, use o simulador para validar e testar as operações.

Simulador

Quer testar em casa? Use simulador da ULA feito em python + Qt. Siga os passos a seguir (execute no seu computador Linux):

git clone https://github.com/eduardomarossi/z01.1-ula
cd z01.1-ula
pip3 install -r requirements.txt
python3 main.py
!!! Dica - Caso o programa não abrir, tente instalar esses pacotes a seguir:
    sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

Você deve obter a seguinte interface: