Pentru fiecare dintre exerciții va trebui să faceți atât implementarea cât și simularea cu seturi de date relevante. (minim 3 cazuri de test)

Task 01 (3p) Implementați un sumator carry-lookahead pe 4 biți.

Task 02 (1p) Implementați un scăzător carry-lookahead pe 4 biți, pornind de la punctul precedent.

Task 03 (2p) Implementați un sumator pe 16 de biți folosind modulul carry-lookahead deja implementat și logica sumatorului ripple-carry.

Task 04 (4p) Implementați un sumator/scăzător carry-lookahead pe 4 biti cu ajutorul plăcii de laborator. Interacțiunea cu modulul se va face astfel:

  • Intrări:
    • operandul A → 4 switch-uri
    • operandul B → 4 switch-uri
    • buton1 → buton pentru validarea operanzilor
    • buton2 → buton pentru operația de adunare
    • buton3 → buton pentru operația de scădere
    • buton reset
  • Ieșiri:
    • cele 8 leduri → pentru afisarea progresului (o_r_leds)
    • afisajul cu 7 segmente → pentru afișarea rezultatului (l_r_message)
  • Mod de operare:
    • STATE_INITIAL:
      • se introduc valorile celor doi operanzi folosind switch-urile
      • pe cele 8 leduri se va afișa valoarea PROGRESS_NONE
      • pe afișajul cu 7 segmente se va afișa valoarea unuia dintre operanzi
    • la apăsarea lui buton1:
      • se salvează în memorie valoarea operanzilor
      • se trece în starea STATE_OP_READ
    • STATE_OP_READ:
      • pe cele 8 leduri se va afișa valoarea PROGRESS_BOTH_OPERANDS
      • pe afișajul cu 7 segmente se va afișa mesajul APAS (PRESS_MESSAGE)
    • la apăsarea lui buton2 sau buton3:
      • se trece în starea STATE_RESULT_SELECT
    • STATE_RESULT_SELECT
      • pe cele 8 leduri se va afișa valoarea PROGRESS_RESULT
      • pe afișajul cu 7 segmente se va afișa:
        • mesajul APAS (PRESS_MESSAGE), dacă nu este apăsat nici buton2, nici buton3
        • suma celor doi operanzi din memorie, dacă este apăsat buton2
        • diferența celor doi operanzi din memorie, dacă este apăsat buton3
      • suma și diferența vor fi afișate în zecimal
    • pentru introducerea altor valori pentru operanzi se va apăsa butonul de reset
    • pentru a realiza operațiile veți folosi modulele create la exercițiile anterioare

Puteți porni de la soluția voastră pentru exercițiul 4 de la laboratorul precedent (chiar dacă nu este completă).

soc/laboratoare/07/todo.txt · Last modified: 2024/04/18 11:14 by stefan.maruntis
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0