Design a 16-bit ISA for processor containing the following components • 8 General Purpose Registers (GPR) • ALU supporting ADD, SUB, INC, DEC, OR, XOR, AND, NAND • LOAD, STORE with two addressing modes Direct and Indirect. • NOP instruction
Popular question. It's the fourth or fifth time I've seen this one. @udit93 @ankurrai143 @mridula You have the same question, but to save some time, I'll try to answer it here. One part of the ISA is the binary encoding of instructions. I guess that's what you want, right? So you have a 16-bit ISA, which means you have 16 bits to encode all instructions. Some bits you will need to use to store the opcode in (identifying the operation (NOP, LOAD, etc.)). The remaining bits, you will need to store all other information of the instruction in, like an immediate value, destination register, source register and so on. You'll need to determine if you want operations to work with two or three register, how many bits you need to encode a register and so on. I hope this helps you on your way, if not, just ask your specific questions here. (see for example this website: https://www.student.cs.uwaterloo.ca/~isg/res/mips/opcodes )
Join our real-time social learning platform and learn together with your friends!