From a1278abd5f3e06f4fc8b38843cfefda11a51cb33 Mon Sep 17 00:00:00 2001 From: Shri Vishakh Devanand <78346797+LOuLOu-THEKing@users.noreply.github.com> Date: Tue, 30 Jul 2024 16:43:17 +0530 Subject: [PATCH] RISCVCORE Blog updated (#58) * Adding ApexCore Blog * Modified ApexCore blog * Adding ApexCore Project Blog * Adding ApexCore blog --- _posts/2024-07-30-RISCVCORE.md | 42 +++++++++++++++++++++++++++ assets/posts/ApexCore/Simulation.png | Bin 0 -> 43712 bytes assets/posts/ApexCore/flowchart.png | Bin 0 -> 39919 bytes 3 files changed, 42 insertions(+) create mode 100644 _posts/2024-07-30-RISCVCORE.md create mode 100644 assets/posts/ApexCore/Simulation.png create mode 100644 assets/posts/ApexCore/flowchart.png diff --git a/_posts/2024-07-30-RISCVCORE.md b/_posts/2024-07-30-RISCVCORE.md new file mode 100644 index 0000000..481bb5a --- /dev/null +++ b/_posts/2024-07-30-RISCVCORE.md @@ -0,0 +1,42 @@ +--- +layout: post +title: ApexCore A RISC-V based CPU +tags : electronics microprocessor fpga embedded_systems computer_architecture +description : Designing RISC-V Single Core with IMAF extensions +--- + +--[Shri Vishakh Devanand](https://github.com/LOuLOu-THEKing) +--[Aditya Mahajan](https://github.com/aditya200523) +--[Shaurya Rane]() + +## Understanding the Basics + +The ApexCore project is an immersive journey into the world of computer architecture and organization (COA). Although the subject is vast and intricate, we, Shri Vishakh Devanand, Aditya Mahajan, and Shaurya Rane, began our exploration by understanding the core components of a CPU. We started with an edX course that, despite being taught in TLVerilog (a newer and less common programming language), provided us with the foundational knowledge necessary to progress. + +## A simple breakdown of the CPU +![CPU_FLOWCHART](/assets/posts/ApexCore/flowchart.png "The Image shows a simple flowchart of CPU") +To understand the logic of how it works, let's go through the diagram with the flow. + +1. Imagine a 32-bit instruction is going through to the CPU. +2. Instructions are stored in Instruction Memory and they are accessed via addresses stored in Program Counter. The instruction received by the decoder to decode the instruction into what generally occurs into 3 or 4 different things. +The instruction type is defined by the operation code. +* The source values are given as the address of its place in the register, rather than the value itself, or for some instructions there comes something called immediate values, where you don't want to store the value but just use the value for another calculation and lose it. +* Then the destination register, where the calculated value is going to be stored until it is stored in memory or discarded. +* Then, it goes into the control unit, where it decides what type of calculation is required for this particular instruction and sends it to the ALU to calculate it. +3. Once the final result is received by the control unit, it is then stored in the destination register as instructed. + +## What have we done so far +We have completed testing RV32-IM extensions under simulation, which introduces new instructions for multiplication and division. Here's a detailed breakdown of our progress: + +1. Code Optimization: We revisited the M extension to refine the code, focusing on enhancing efficiency and ensuring proper functionality. +2. Simulation: Using Vivado, we simulated the RV32-IM extensions. The simulation verified that the new instructions for multiplication and division were correctly implemented and functioning as expected. +3. Debugging and Validation: During simulation, we meticulously debugged the code to identify and fix any issues. This process was crucial for validating the correctness of our implementation. +4. Documentation: Alongside coding and simulation, we documented our process and findings. This documentation will serve as a valuable reference for future development and troubleshooting. +5. Preparation for Hardware Testing: We have prepared the code for the upcoming hardware testing phase. This includes ensuring compatibility with our target FPGA platform and setting up the necessary testing environment. + +![Simulation](/assets/posts/ApexCore/Simulation.png) + +## Plans for the coming days +1. We are about to test the current code on hardware and ensure it works with high confidence. +2. Keep adding more extensions like Atomic and Floating-point extensions to further increase the general usage of the core. +3. Further End Goal of the project to create a soft-core that can be used for other projects, who don't need to build a cpu from scratch in order to do so. diff --git a/assets/posts/ApexCore/Simulation.png b/assets/posts/ApexCore/Simulation.png new file mode 100644 index 0000000000000000000000000000000000000000..fb619aaa6691a0ded9fa89d11c47ee79f9cc7a90 GIT binary patch literal 43712 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 literal 0 HcmV?d00001 diff --git a/assets/posts/ApexCore/flowchart.png b/assets/posts/ApexCore/flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..39a14b2a94862e837e2f22b1caa07bebda8562fb GIT binary patch literal 39919 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

e`EdXOX>SF*X`k4R^HXv^geh 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 Zwzf`cN@b1X1PTA!t*NJROMQRn{{t>BtkeJi literal 0 HcmV?d00001