FIR Filter
This lab is designed to familiarize the reader with how Labview handles arrays. It turns out that the way Labview handles arrays is particularly suited to implementing a FIR filter in software. Labview also contains a specific VI for this purpose, but that will not be used in the interest of learning about array handling in Labview. The front panel and block diagram for the VI you will be constructing follows.

Construct the VI using the provided front panel and block diagram. The VI does not need to have the exact appearance of the one shown, but it does need to have the same functionality and it should be neat and relatively organized. After you verify the functionality of the VI answer the following questions.
1) What does the term 'indexing' mean when used in this context?
2) What are the three locations in this VI where indexing is enabled?
3) There is a sub VI named 'index array' used in this VI. Where is it and what does it do?
4) How does a shift register work? What do they do in this VI?
5) Suppose one wanted to change this VI to implement a FIR that went 0,1,2..N-1. How would this be done?
6) In a short essay (A typed page or less) explain the basic operation of this VI. Do not attempt to explain the operation of the "FIR Windowed Coefficients.vi" or the "Sine Pattern.vi". Assume simply that their outputs are what they say they are.
Extra Credit
1) It is possible to determine the magnitude response of this system by using the VI you created as a sub VI. Build a VI that does this and explain how it works. (Hint: The RMS VI may be useful.)