This commit is contained in:
2024-08-01 04:13:59 +00:00
parent d6e6498eee
commit 1ff419b22d
9 changed files with 98 additions and 16 deletions

View File

@ -24,7 +24,8 @@ struct ALU : public dark::Module<ALU_Input, ALU_Output> {
}
void work() {
std::cerr << "ALU: cur request_full_id=" << std::hex << std::setw(8) << std::setfill('0') << std::uppercase
<< static_cast<max_size_t>(request_full_id) << std::endl;
<< static_cast<max_size_t>(request_full_id) << " request_ROB_index=" << std::dec
<< static_cast<max_size_t>(request_ROB_index) << std::endl;
switch (static_cast<max_size_t>(request_full_id)) {
case 0: {
alu_status <= 0b01;
@ -66,6 +67,8 @@ struct ALU : public dark::Module<ALU_Input, ALU_Output> {
alu_status <= 0b10;
result_ROB_index <= request_ROB_index;
result <= static_cast<max_size_t>(request_PC) + 4;
std::cerr << "alu: jalr: imm=" << std::hex << static_cast<max_size_t>(imm) << std::endl;
std::cerr << "alu: jalr: operand1=" << std::hex << static_cast<max_size_t>(operand1) << std::endl;
completed_alu_resulting_PC <= ((static_cast<max_size_t>(operand1) + static_cast<max_size_t>(imm)) & 0xfffffffe);
return;
}