Welcome to the Linux Foundation Forum!

Hello World!

Posts: 1
edited November 2023 in LFD210 Class Forum

Hi! I'm just checking out the course and getting the lay of the land.
It was looking a little empty so I decided to post an icebreaker.

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Comments

  • Hi!

    Just started the course here!

    How's it going?

  • Oh hi. Same. Nice Hackers meme :D . Haven't started yet... so maybe it is addressed in the course but do you or anyone have a good recommendation of a nice/cheap/capable risc-v dev board?

  • @solidgriever - I don't know how good it is yet, but I bought the StarFive VisionFive 2 to do the course work on. It's not out of the box yet so nothing to report so far.

  • I got ESP32-C3-DevKitM-1 this is also connected with a book RISC-V Assembly Language Programming using ESP32-C3 and QEMU (+ FREE ESP32 RISC-V Board) will report if it was worth it.

  • Hello, I'm following the Cw in LFD210 encoding of opcodes content can someone verify this

    _ Major Opcode and Funct3 (Minor Opcode) Using Correct Bit Ranges_

    Quadrant Selection and Length Recognition Using Correct Bit Ranges

    Quadrant Selection (inst[1:0]):

    The quadrant selection is represented by the first two bits of the instruction (inst[1:0]).
    Quadrants 00, 01, and 10 typically represent 16-bit Compressed Instructions, while quadrant 11 is used for 32-bit (or higher) instructions.

    Length Recognition:

    The length of the instruction can be recognized by examining the first few bits, particularly the first two bits (inst[1:0]).
    If the instruction begins with 00, 01, or 10, it's identified as a 16-bit instruction. If it begins with 11, it's identified as a 32-bit (or higher) instruction
    If it begins with 11 and the next three bits are not all 1s (111), it's identified as a 32-bit instruction. (11111)11011-00000.

    Major Opcode (inst[6:0]):

    The major opcode is represented by bits 6 to 0 of the instruction (inst[6:0]).
    For example, inst[6:0] = 0000000 might indicate Arithmetic Instructions, while other values would represent different major opcodes.

    inst[4:2] for Base Major Opcode

    inst[4:2] is used to differentiate between different functional categories or groups within the instruction set.
    It helps identify the broad category or family of operations that the instruction belongs to.

    inst[5:6] for Base Major Opcode

    inst[5:6] is used to further refine the categorization of instructions within the same broad functional category identified by inst[4:2].
    It helps provide additional granularity or differentiation within the major opcode group.

    Funct3 (inst[14:12]):

    The funct3 field, or minor opcode, is represented by bits 14 to 12 of the instruction (inst[14:12]).
    Within certain major opcode categories, different values of inst[14:12] specify specific variants or sub operations of the same major opcode.

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training