Question: Write an assembly language program for ARM Cortex M 3 / 4 to handle Supervisor Call ( SVC ) exception. The program should meet the

Write an assembly language program for ARM Cortex M3/4 to handle Supervisor
Call (SVC) exception. The program should meet the following requirements: 1. The SVC should be called from an application task running at Thread unprivileged mode. [SVC number must be your BITS ID either last 3 digits or last 2 digits, depending on whether it's less than (or equal) or greater than to 255(number must be given in decimal number format)]2. Two parameters [each parameter is last 5 digits of your BITS ID (number must be given in decimal number format)] should be passed to the SVC handler. 3. The SVC number should be determined dynamically by examining the actual SVC instruction in memory. 4. The SVC exception handler should set up a stack pointer in SVC mode before handling the exception. 5. If the SVC number matches your BITS ID (either last 3 digits or last 2 digits, depending on whether it's less than or equal to 255), the handler should perform addition of the two passed parameters. 6. If the SVC number does not match your BITS ID, the handler should perform subtraction of the two passed parameters. Ensure that the program properly handles stack usage and resumes the application task after performing the required operation. Give suitable screen shots of the KEIL IDE-in debug mode to demonstrate the desired outputs. Ensure that the screenshot captures system date and time.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!