You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wonder how compressed instructions are reside inside memory? I know their lengths are 16-bit instead of 32-bit.
A memory can be looked like this:
Each line is an instruction | x is 4-bit
xxxx
xxxxxxxx
xxxx
xxxx
xxxxxxxx
xxxxxxxx
xx
I tried to follow RTL code and understand it but if some of my questions below are answered then I understand it better:
Q1) How to know how many bits to be fetched from instruction memory? If it is a compressed instruction and cpu fetches 4 bytes, then what happened to the next cycle? Maybe the next instruction is 32-bit?
Q2) I saw that inside picorv32.v module the there is COMPRESSED_ISA parameter but couldn't follow what exactly happens if COMPRESSED_ISE is 1?
So after decoding the increment value is determined according to the result of the decode operation ?
Please you can also direct me to the lines inside the modules where these kind of fetch & decode of compressed instructions are handled
The text was updated successfully, but these errors were encountered:
I wonder how compressed instructions are reside inside memory? I know their lengths are 16-bit instead of 32-bit.
A memory can be looked like this:
Each line is an instruction | x is 4-bit
xxxx
xxxxxxxx
xxxx
xxxx
xxxxxxxx
xxxxxxxx
xx
I tried to follow RTL code and understand it but if some of my questions below are answered then I understand it better:
Q1) How to know how many bits to be fetched from instruction memory? If it is a compressed instruction and cpu fetches 4 bytes, then what happened to the next cycle? Maybe the next instruction is 32-bit?
Q2) I saw that inside picorv32.v module the there is COMPRESSED_ISA parameter but couldn't follow what exactly happens if COMPRESSED_ISE is 1?
So after decoding the increment value is determined according to the result of the decode operation ?
Please you can also direct me to the lines inside the modules where these kind of fetch & decode of compressed instructions are handled
The text was updated successfully, but these errors were encountered: