Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

How to exceed the speed with pci-6602?

Dears ,
 
I've a problem about the speed of process.
Please read the attachment and help me.
 
Thanks,
0 Kudos
Message 1 of 4
(3,632 Views)

I'm sorry, but I had a difficult time completely understanding your issue. But what I think you are basically trying to do is read a data file into LabView, and then transmit it over the digital ouput line of your board. Now the drawback to doing this on the PCI 6602 board is that the 6602 digital output doesn’t have a buffer at all. It is static as you said, which means to write data to the line you write it directly from LabView to the line itself. Which means that you are going to be completely limited by the speed in which your CPU can execute the while loop, and subsequently how fast your OS will give you CPU cycles. So the only thing you can do really is try to optimize all of the code within in your while loop so that it can execute as quickly as possible. But you will still be limited by when your OS will let LabView have access to the CPU and this can be relatively slow. This is the drawback of anything that is software timed, which is why for speed it is always good to look in to doing things hardware time. So if speed is a serious concern you may want to look into getting a DIO board that supports buffered digital output.

0 Kudos
Message 2 of 4
(3,620 Views)
Hi GDE,
Thanks for care of my problem. I want to transfer data to PCI-6602 as quickly as possible. But with the speed of about 5khz ,it's still slowly. I want to know could I exceed the speed to 1Mhz or above, with the PCI-6602 ? Could I know exactly the highest speed which PCI-6602 support for transfer digital I/O (not counter or timers)? 
I'd do an simple example. Create an pulse generation with digital I/O (not counter). Attached is this example.  The time between to signal is about 280us (about 3.5khz). Could I exceed this speed?
Thanks,
0 Kudos
Message 3 of 4
(3,610 Views)
You can get some improvement by not using the Write to Digital Line function. Do you see the iteration input on the function? With nothing wired to it, it will default to 0 which means that it will call DIO Port Config every time it is called. This slows things down to a large extent. Even when you fix this problem, you will still face the issues that GDE listed. Software timing is highly unpredictable. You will not know the time between frame 0 and 1
or how quickly both will execute. It's not really a question of how fast the 6602 is, it's a question of how fast and deterministic the OS is. Can you exceed 1Mhz? Maybe, but not all of the time and not reliably.
0 Kudos
Message 4 of 4
(3,594 Views)