Folosiți manualul setului de instrucțiuni AVR pentru a implementa codificările și decodificările comenzilor. Căutați în meniu capitolele aferente fiecărei instrucțiuni.

În scheletul de laborator sunt câteva fișiere de interes:

Cheatsheet schelet laborator

Dacă implementați complet instrucțiunile necesare, în urma simulării checker_view.v toate semnalele vor fi verzi. Codul se află într-o memorie ROM, așadar pentru orice schimbare în cod tot designul trebuie resimulat.

Task 00 Descărcați scheletul de laborator.

Următoarele task-uri necesită modificări în mai multe fișiere din arhivă. Căutați TODO-urile din fișierele decode_unit.v (pentru etapa de ID), alu.v (pentru etapa de EXEC), control_unit.v (pentru etapa de WB).

Task 01 (1p) Implementați instrucțiunea NOP.

Task 02 (1p) Implementați instrucțiunea NEG.

Task 03 (2p) Implementați instrucțiunea ADD.

Task 04 (2p) Implementați instrucțiunea SUB.

Task 05 (2p) Implementați instrucțiunea AND.

Task 06 (2p) Implementați instrucțiunea OR.

Pentru instrucțiunile care nu modifică în mod explicit valoarea unui bit din registrul SREG, acel bit trebuie setat pe 0!

Mai exact: