The fact that you intend to call this subVI in 50 msec intervals implies that the 3 tasks are supposed to take place in less than 50 msec.
The important part is whether or not there's any sort of timing requirements between each task. For instance, must the analog generation occur within a certain amount of time after the 2 bits are set high, and must the 2 bits be set low within a certain amount of time after the analog generation is done? If so, you should not rely on software to perform this task. I would look into configuring triggering.
Of course, this ignores the question of whether or not you can call a VI in 50 msec intervals, regardless of what it's doing. Is it possible? Yes. Is it probable? Not likely since you are relying on software to do the timing. If you really have such critical timing requirements you should look into LabVIEW Real Time.