Loop Unrolling in RISC-V

Loop unrolling significantly enhances performance in embedded systems, particularly in RISC-V architectures. By reducing loop overhead and increasing instruction-level parallelism, it minimizes control operations. However, this technique increases code size, necessitating careful consideration for systems with memory constraints.

Read More Loop Unrolling in RISC-V

Cache Replacement Policies

At the heart of every high-performing embedded system lies a well-oiled cache memory mechanism, silently dictating the efficiency and responsiveness of the technology we rely on daily. Cache replacement policies, often overlooked, are the unsung heroes in this scenario, subtly but significantly influencing system performance. From wearables to aerospace, these policies are the architects of […]

Read More Cache Replacement Policies

From IT to Embedded

Transitioning from IT to Embedded Systems isn’t a total reset. While new knowledge like hardware platforms and real-time operating systems is needed, your IT foundation still applies. Think of it as moving from novels to short stories. Online resources like “The Art of Electronics” are available for learning electronics basics. Embrace C language, microcontrollers, communication protocols, and possibly an RTOS. Specialize based on your interests.

Read More From IT to Embedded

Few GDB Debugging Commands

This guide introduces essential GDB debugger commands: break (set breakpoint), run (start execution), next (execute next line), step (execute and stop in function), continue (resume execution), print (print variable value), backtrace (display call stack), watch (set watchpoint), info (display program info), quit (exit debugger), and more.

Read More Few GDB Debugging Commands

𝐖𝐡𝐚𝐭 𝐝𝐨 𝐲𝐨𝐮 𝐦𝐞𝐚𝐧 𝐛𝐲 𝐕𝐞𝐫𝐢𝐟𝐢𝐜𝐚𝐭𝐢𝐨𝐧 𝐚𝐧𝐝 𝐕𝐚𝐥𝐢𝐝𝐚𝐭𝐢𝐨𝐧?

Verification and Validation (V&V) are critical activities in development. Verification ensures design compliance with requirements, while validation ensures the right system is built. These processes occur at different stages, with validation focusing on early development and verification on post-design production. Understanding these fundamental concepts is essential before exploring the involved techniques.

Read More 𝐖𝐡𝐚𝐭 𝐝𝐨 𝐲𝐨𝐮 𝐦𝐞𝐚𝐧 𝐛𝐲 𝐕𝐞𝐫𝐢𝐟𝐢𝐜𝐚𝐭𝐢𝐨𝐧 𝐚𝐧𝐝 𝐕𝐚𝐥𝐢𝐝𝐚𝐭𝐢𝐨𝐧?

Memory weaved by hand – THe LVDC

The Launch Vehicle Digital Computer a.k.a LVDC is one of the critical components of the Saturn V launch. LVDC is the computer that provided the autopilot for Saturn V from launch to Earth Orbit Insertion. LVDC is designed and manufactured by IBM’s Electronics System Center. It is considered as one of the technologically advanced memory […]

Read More Memory weaved by hand – THe LVDC

FUN WITH POINTERS

Pointers!A confusing yet curious topic. What is a POINTER?Well, it’s a variable that stores the address of another variable. We often get confused by the dual operation performed by the pointer.‘&‘ Operator is an address operator that gives the address of a particular variable.‘*‘ Operator is an indirection operator, that refers to the value pointed […]

Read More FUN WITH POINTERS

Peeking Into The Assembly

Assembly is tough. How does the processing of c code takes place in assembly? What are the kinds of instructions that we could see? What is actually happening in this gigantic mesh of lines? This is my small step to look into the assembly code of a small program/ replicating a small segment of code […]

Read More Peeking Into The Assembly

THE SIMPLICITY OF STACK

Stack, the most frequently used data structure. Stack, as the name suggests, keeps on stacking up the data one above the other. Consider an example of stacking up books in a box. The implementation of stack in your program is similar to that. Stack is often referred to as Last In First Out (LIFO). Why?  […]

Read More THE SIMPLICITY OF STACK