a pseudonoise code teaching loop measures the difference in energy between a smart antenna array output that is despread using an early pseudonoise code and a late pseudonoise code and contains a chip time shifting current based on this difference . using multiple elements of the array significantly improves performance .