diff --git a/hw/cpu/lib/instr_decode.v b/hw/cpu/lib/instr_decode.v
index 4d41dc59196a0df3f838e8ce2de195685f189a0f..77787344e6867c80da957df85e07b10c8327ba76 100644
--- a/hw/cpu/lib/instr_decode.v
+++ b/hw/cpu/lib/instr_decode.v
@@ -336,7 +336,16 @@ module instr_decode (input [15:0]      instr,
 	   imm_data = uimm;
 	   imm_enable = 1;
 	end
-	/* Reserved op codes, 1011 1...,  another 4 immediate instructions? */
+	/* Immediate mullo */
+	'b1011_100?_????_????: begin
+	   mul_enable = 1;
+	   mul_op = `OP_MUL_LOW;
+	   dst_write_enable = 1;
+	   src_neg = instr[8];
+	   imm_data = uimm;
+	   imm_enable = 1;
+	end
+	/* Reserved op codes,  another 3 immediate instructions? */
 	/* Immediate tst */
 	'b1100_000?_????_????: begin
 	   alu_enable = 1;