RISCV – Course Content Unveiled

RISCV – Course Content Unveiled

Hey There,

So here’s what you have been waiting for a very long time. The wait is about to over in few days’ time. On that eve, I thought to unveil the course structure. And it will be a quite elaborated journey…

First I introduce you to RISCV-ISA for integer and floating-point computation, and then I will walk you through different categories of instructions – the first one being ‘Pseudo Instructions’ as highlighted below

Next, I will go over through below base integer instruction set which is the most basic ISA and needs to be present in any RISC-V implementation. This is named as RV64I – with ‘I’ being integer

But you know what, that’s not enough to build an app as simple as a calculator. You would need below multiplication and division commands, generally referred to ‘multiply extension’ and named as RV64M – with ‘M’ being multiply

Now you need all of above for floating point numbers as well. I mean, 2.5 x 3.3 should give you 8.25 and not just ‘8’ (don’t worry if you don’t get it now. I will anyways cover signed and unsigned integer and floating point numbers basics). So, we need additional floating point commands like one’s shown below, generally called as single and double precision floating point extension, named as RV64D and RV64F

There are some more, which we will cover later. Once you have all instructions, the programmer needs some calling convention for functions i.e. which register to pass arguments to as well as return address. This is important for software interoperability. This is referred to as “Application Binary Interface (ABI)”. GCC accepts ABI names and register names as shown below:

Finally, the most important of all – stack pointer and memory allocation concepts i.e. when you run a program, what is the location of program, location of data, where to put results and many more. This will be in explained in every program example we have used for RISCV demonstration – like below:

Sounds interesting – Isn’t it?

Just imagine how incredible it would be, if, after you finish this course 100%, you implement or write RTL for atleast one instruction and do PNR. Its equivalent to you implementing the next ARM or x86 or MIPS. That will be learning the entire microprocessor design from scratch to layout….

Just as Benjamin Franklin said, “An investment in knowledge pays the best interest” – Believe me, that’s so true

Stay tuned to below link for further updates

https://www.udemy.com/user/anagha/

要查看或添加评论,请登录

kunal ghosh (vlsisystemdesign.com)的更多文章

社区洞察

其他会员也浏览了