From f9e5214e87a935e1311b886e44bdfe1f8bfbdf56 Mon Sep 17 00:00:00 2001 From: Siddarth-Suresh <65844402+Siddarth-Suresh@users.noreply.github.com> Date: Tue, 15 Apr 2025 11:59:27 -0400 Subject: Added pipeline to GUI --- gui/gui.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) (limited to 'gui/gui.h') diff --git a/gui/gui.h b/gui/gui.h index 77a8867..b845124 100644 --- a/gui/gui.h +++ b/gui/gui.h @@ -7,6 +7,7 @@ #include #include #include +#include #include "worker.h" QT_BEGIN_NAMESPACE @@ -33,6 +34,16 @@ signals: private slots: void onWorkerClockCycles(int value, int pc); + void onWorkerFetchInfo(const std::vector info); + + void onWorkerDecodeInfo(const std::vector info); + + void onWorkerExecuteInfo(const std::vector info); + + void onWorkerMemoryInfo(const std::vector info); + + void onWorkerWriteBackInfo(const std::vector info); + void onWorkerShowDram(const std::vector> data); void onWorkerShowCache(const std::vector> data); @@ -65,5 +76,48 @@ private: Ui::GUI *ui; QThread workerThread; Worker *worker; + const std::map mnemonicNameMap = { + {Mnemonic::ADD, "ADD"}, + {Mnemonic::SUB, "SUB"}, + {Mnemonic::MUL, "MUL"}, + {Mnemonic::QUOT, "QUOT"}, + {Mnemonic::SFTR, "SFTR"}, + {Mnemonic::SFTL, "SFTL"}, + {Mnemonic::AND, "AND"}, + {Mnemonic::OR, "OR"}, + {Mnemonic::NOT, "NOT"}, + {Mnemonic::XOR, "XOR"}, + {Mnemonic::ADDV, "ADDV"}, + {Mnemonic::SUBV, "SUBV"}, + {Mnemonic::MULV, "MULV"}, + {Mnemonic::DIVV, "DIVV"}, + {Mnemonic::CMP, "CMP"}, + {Mnemonic::CEV, "CEV"}, + {Mnemonic::LOAD, "LOAD"}, + {Mnemonic::LOADV, "LOADV"}, + {Mnemonic::ADDI, "ADDI"}, + {Mnemonic::SUBI, "SUBI"}, + {Mnemonic::SFTRI, "SFTRI"}, + {Mnemonic::SFTLI, "SFTLI"}, + {Mnemonic::ANDI, "ANDI"}, + {Mnemonic::ORI, "ORI"}, + {Mnemonic::XORI, "XORI"}, + {Mnemonic::STORE, "STORE"}, + {Mnemonic::STOREV, "STOREV"}, + {Mnemonic::JMP, "JMP"}, + {Mnemonic::JRL, "JRL"}, + {Mnemonic::JAL, "JAL"}, + {Mnemonic::BEQ, "BEQ"}, + {Mnemonic::BGT, "BGT"}, + {Mnemonic::BUF, "BUF"}, + {Mnemonic::BOF, "BOF"}, + {Mnemonic::PUSH, "PUSH"}, + {Mnemonic::POP, "POP"}, + {Mnemonic::NOP, "NOP"}, + }; + QString mnemonicToString(Mnemonic mnemonic) { + auto it = mnemonicNameMap.find(mnemonic); + return (it != mnemonicNameMap.end()) ? it->second : "Unknown"; + } }; #endif // GUI_H -- cgit v1.2.3