110 likes | 323 Views
DSP Module 1. Open Exam. Module 1 Exam. You have 20 minutes to complete the exam. Exam is open mind, open book, open eyes. Sharing answers, cheating, asking the instructor questions, anything to get the highest possible grade is completely acceptable, encouraged, and expected. Good luck!.
E N D
DSP Module 1 Open Exam
Module 1 Exam • You have 20 minutes to complete the exam. • Exam is open mind, open book, open eyes. Sharing answers, cheating, asking the instructor questions, anything to get the highest possible grade is completely acceptable, encouraged, and expected. • Good luck!
Module 1 Exam 1. Functional Units (5 pts) a. How many can perform an ADD? Name them. (5 pts) b. Which support memory loads/stores? .M .S .P .D .L six; .L1, .L2, .D1, .D2, .S1, .S2 X 2. C6000 Peripherals (5 pts) a. What does EMIF stand for? (5 pts) b. What do we call the C6000’s audio serial port? (5 pts) c. Which 'C6000 devices have Ethernet support? External Memory Interface (how you connect to memory) McASP C6412, C6455, DM64x, DM643x, DM644x
3. Conditional Code (10 pts) a. Which registers can be used as cond’l registers? (10 pts) b. Which instructions can be conditional? 4. Performance (5 pts) a. What is the 'C6201 instruction cycle time? (10 pts) b. How can the 'C6201 execute 1600 MIPs? How many MIPs can the ‘C6416 execute? A1, A2, B0, B1, B2 (‘C64x allows A0, too) All of them 5 ns (C6201 can run up to 200 MHz) 1600 MIPs = 8 instructions (units) x 200 MHz 8000 MIPs*(8 instructions x 1 GHz) * not counting the affect of Packed Data Processing (like ADD4)
4c. Performance (10 pts) c. How many 16-bit MMACs (millions of MACs) can the 'C6201 perform? How about the 'C64x+ devices? 400 MMACs (two .M units x 200 MHz) 8000 MMACs 2 .M units x 4 16-bit MACs (per .M unit per cycle) x 1 GHz ---------------- 8000 MMACs If interested in 8-bit MACs, then the total would be: 8000 MMACs
5a - 5b. Coding Problems (5 pts)a. Move contents of A0 A1 (5 pts)b. Clear register A5 MV A0, A1 or ADD A0, 0, A1 or AND A0, -1, A1 or OR A0, 0, A1 ZERO A5 or SUB A5, A5, A5 or MPY A5, 0, A5 or CLR A5, 0, 31, A5 or MVK 0, A5 or XOR A5,A5,A5 or AND A5, 0, A5
5c - 5e. Coding Problems (5 pts)c. A2 = A02 + A1 (10 pts)d. If (B1 0) then B2 = B5 * B6 (5 pts)e.Load an unsigned constant (0x19ABC) into register A6. MPY.M1 A0, A0, A2 ADD.L1 A2, A1, A2 [B1] MPY.M2 B5, B6, B2 see next two slides
F F F F F F F F 0 0 0 0 9 A B C 9 A B C 9 A B C mvk 0x9abc, a6 A6 mvkl 0x9abc, a6mvkh 1, a6 mvkl 0x00009abc, a6mvkh00000001 , a6 mvkl mvkl mvkh 5e. Solutions that Don’t Work mvk 0x19abc, a6
F F F F 0 0 0 1 0 0 0 1 F F F F 9 A B C 9 A B C 9 A B C 9 A B C mvkl 0x9abc, a6mvklh 1, a6 mvkl 0x00009abc, a6mvkh 0x00019abc, a6 mvkl 0x00009abc, a6mvklh 00000001, a6 mvkl mvklh mvkl mvkh mvkl mvkl 5e. Solutions that Work mvkl 0x00019abc, a6mvkh 0x00019abc, a6
x16 mem A7 0x10 mem1 5f. Coding problems (10 pts)f. Load A7 with contents of mem1 and post-increment the selected pointer. load_mem1:MVKL .S1 mem1, A6 MVKH .S1 mem1, A6 LDH .D1 *A6++, A7
Chapter 1 Exam Scoring Points Earned (Questions #1-5): ______/100 Grade (circle one): 90-100 A 80-89 B 0-79 C (no one likes Ds or Fs!)