Download as:
Rating : ⭐⭐⭐⭐⭐
Price: $10.99
Language:EN
Pages: 13

The canvas assignment upload page final exam take home

25% Waived (1 additional project category):

Do not grade part _________

Part I:
1. (20 points) Answer the following questions:
a. (3 points) What is data dependency? What can a data dependency cause to a pipelined CPU?

b. (2 points) How does the master of an I2C signal know if the intended receiver was able to read the data sent?

f. (3 points) Find the contents of r3 after executing the following code:

b. Using the following link: choose three (3) peripheral modules that you would use for your design. Please choose at least two (2) peripheral modules for this question which were not part of your final project.

c. Based on your peripheral module selections in 2b, choose valid ports to connect your choices.

c. (2 points) What are the limitations of storing an immediate value directly to an ARM register?

d. (2 points) Which of the following operations do not exist for the ADD instruction in RISC?

5. (15 points) 01011001 01101111 01110101 00100000 01100110 01101111 01110101 01101110 01100100 00100000 01110100 01101000 01100101 00100000 01100001 01101110 01110011 01110111 01100101 01110010 00101110 00100000 01010011 01101000 01101111 01110111 00100000 01111001 01101111 01110101 01110010 00100000 01110111 01101111 01110010 01101011 00100000 01100110 01101111 01110010 00100000 01100110 01110101 01101100 01101100 00100000 01100011 01110010 01100101 01100100 01101001 01110100 00100001.

6. (15 points) Discuss when it is appropriate to write code in C (or any other higher-level language) and when to write code in assembly. Be explicit in your reasoning and provide examples! (Full page open-ended questions require sufficiently detailed answers).

e. (6 points) Draw a 9ms PWM signal with 33.3% duty cycle. Although your drawing may not be to scale, please label distances in cycles to clarify your answer. How would you configure a triple-timer counter to produce this signal?

f. (3 points) Define the 2 stages of an ADC.

9. (15 points) The ARM microcontroller defaults to little endian memory organization. You know that you have a peripheral module that sends data as 32-bit big endian integers. Please write an assembly sub-routine that takes an input word in big endian (r1 == big endian word) and outputs it in little endian (r0 == little endian word). This is a take-home final; hence, I expect well written code (preserve registers appropriately, comments, etc…)

Part IV:
10. (20 points) Answer the following questions:
a. (3 points) For ‘3’ and ‘2’ the ASCII equivalent is 0x33 and 0x32 respectively. Write a program to convert 0x33 and 0x32 to packed BCD (3210) and store the result in r2.

f. (2 points) What is the maximum number of bytes that the ARM Cortex-A9 can access in memory?

g. (5 points) Based on the pin names in the picture below, which serial protocol is most likely used to communicate with the PmodSF? Define each of the labeled pins.

a. (7 points) Identify and label the parts of the UART frame sent above. Please label the figure above!

b. (4 points) What is the approximate baud rate of this UART frame based on the information from the figure?

Copyright © 2009-2023 UrgentHomework.com, All right reserved.