- [fetch_pc.eq(mtvec),
- output_state.eq(fetch_output_state_trap)]
- )
- fc[fetch_action_default] = fc[fetch_action_ack_trap]
- fc[fetch_action_fence] =
- [ fetch_pc.eq(output_pc + 4),
- output_state.eq(fetch_output_state_empty)]
- fc[fetch_action_jump] =
- [ fetch_pc.eq(target_pc),
- output_state.eq(fetch_output_state_empty)]
- fc[fetch_action_error_trap] =
- [fetch_pc.eq(mtvec),
- output_state.eq(fetch_output_state_empty)]
- fc[fetch_action_noerror_trap] = fc[fetch_action_error_trap]
- fc[fetch_action_wait] =
+ [fetch_pc.eq(self.mtvec),
+ self.output_state.eq(FOS.trap)]
+ ),
+ FA.fence:
+ [ fetch_pc.eq(self.output_pc + 4),
+ self.output_state.eq(FOS.empty)
+ ],
+ FA.jump:
+ [ fetch_pc.eq(self.target_pc),
+ self.output_state.eq(FOS.empty)
+ ],
+ FA.error_trap:
+ [fetch_pc.eq(self.mtvec),
+ self.output_state.eq(FOS.empty)
+ ],
+ FA.wait: