Assuming 4 Bytes per value transmitted, that's 2,000 values x 4 Bytes x 33 Channels = 264kb per 20 ms. Multiplying by 50 to give the data rate per second gives 264,000 x 50 = 13,200,000. So there are around 13 Megabytes per second which you want to process and display in real-time. Seeing as the PCI bus can handle 133 MB/sec, the PCI bus is definitely not a problem.
The problem is most likely going to lie with the displaying of the processed values, and to an extent the processing itself. 13.2 MB is quite a lot of data to ship around per second. If you don't have a display to actually show 2000 pixels wide (or high, depending on how the image is generated), then you can scale the data down to a smaller size which will still look good on the monitor, but will significantly speed up the display. I'm assuming that each value read corresponds in some way to a unique pixel of the final image.
My feeling (having no experience in processing ultrasound signals) is that it's probably do-able, but it's probably better to go the LabVIEW real-time route to make sure the processing isn't interrupted too much by OS activity. A 10 second interruption by the OS results in a whopping 130 MB backlog in memory.
Hope this helps.
Shane.
Using LV 6.1 and 8.2.1 on W2k (SP4) and WXP (SP2)