|
|
Our Hot Pick: Rising Antivirus 2006 - Certified by TUV & Checkmark! Get 10% discount by entering this coupon code: ONDISCOUNT10
------------------------------------------------------------------------ A poll associated with this post was created, to vote and see the results, please visit http://www.codecomments.com/message1441490.html ------------------------------------------------------------------------ Question: OS Scheduling when USB communication is in progress? - OS Scheduling - USB Communication ------------------------------------------------------------------------
Hi All, I developed one C program which continuosaly doing a loopback from my USB device.
Initially i read 1 bytes from the device and imidiately i am writting 1070 bytes to the device. I am doing this step for 100000 time.
My program uses our USB IP and driver and dll,that are also devloped by us. I ported USB 2.0 IP on ALtera(FPGA) NIOS II 32- bit cpu. In that i wrote C code which does same as HOST. write 1 bytes and read 1070 bytes. As i wrote.
Now in NIOS II i added performance counter which will give me total cycles during one operation. 1 operation means 1 complete read and write. I am repeating this up to 100000 time.
Using Performance counter i am getting cycles for the 1 transaction and i stored it in one memory location. After complition of 100000 times i print all transaction cycle detail. In that i found that every specific interval i am getting spikes of 35-40 ms. So i ran my code in high priority and i get less spikes and spikes are of 10-15ms of size. After that i ran my code in real application mode so i got every transaction below 1 ms. But some time my OS was crashing because of real priority. I changes process priority using Task Manager.
So my question is that why EHCI not firing token very fast. I check my device with USB Analyzer and it is capable of delievering fast token from the host but when i analyze the signals coming from EHCI i found that during spikes host controller does not sending any tokes to device and my device is in wait mode. I need to solve this issue. Why HOST wait for some time even device is completely ready for transaction. IS this the problem of OS scheduling?
I need any how 7 mbps speed on an average during 1 transaction. Below this i will lost my data, If any one having any idea then please let me know as soon as possible.
Regards, slsnios
-- slsnios ------------------------------------------------------------------------ Posted via http://www.codecomments.com ------------------------------------------------------------------------
|
|
|