RISC-V · Computer architecture · Digital logic

Learn computer engineering by doing

SmartEng Tools combines explanations, worked examples, checked exercises and interactive simulators so you understand how a RISC-V instruction is encoded, executed and pipelined, and how the circuit that computes it is simplified.

Learning paths

How learning works here

Every topic follows the same sequence: concept → example → exercise → tool → verification. This is how it looks with a real case:

  1. 1. Concept

    In RV32I, the formats that have a destination register (R, I, U and J) place rd in bits 11–7. S and B have no rd: those bits are part of the immediate.

  2. 2. Example

    0x00500513 → bits 11–7 = 01010 = x10 (a0). The instruction is addi a0, zero, 5.

  3. 3. Exercise

    What is the rd of 0x40B50533? Type your answer and check it.

  4. 4. Tool

    The decoder colours the fields of any word you type.

  5. 5. Verification

    Your answer is checked by the decoder’s own code, so it cannot contradict it.

Do this exercise

Interactive tools

Each tool sits inside a lesson that explains what it models, how to read the result and what it does not do.

Concrete problems checked in your browser with the same algorithm as the corresponding tool. For example:

Student tools

About SmartEng Tools

It is a personal, independent educational project, aimed at students of computer architecture and digital electronics courses. The tools run in your browser, are free and need no sign-up. Each one documents which algorithm it uses and what its limitations are.