How to Design an ISA. - Chisnall, David (Communications of the ACM, 2024)