在我们的应用程序设计中,我们遇到了CY7C61001的一些困难,希望能得到您的建议。我们的申请:1。使用USB 2处理主机(PC)与外部主机(DSP板:用于数据计算)之间的CT图形数据
通信。我们使用控制和散装的方式进行通信。而问题的关键是对散装方式采用CY7C68001时。2。数据流的考虑:步骤(1),得到的图形数据(6300×6400,即大量)在同一时间从PC主机传送到DSP板通过USB 2接口;步骤(2)。DSP板开始数据计算步当收到6400号第一批,在这个时候就需要主持人(PC)暂停数据传输等从外部掌握数据计算(DSP);步骤(3)。数据计算时(第一标段6400)已经完成,将计算数据到PC主机,要求主机(PC)开始转移了的图形数据N;步骤(4)。PC主机开始图形数据传输(第二批,6400);同样的过程开始(环:步骤(2)——>;步骤(3)——>;步骤(2)——>;步骤(3)——gt;步骤(2)…)整个过程会在结束时PC转移总数。三。的问题,我们希望得到建议,它位于本体时,PC主机暂停进程(数据传输到外部主机,即DSP板)我的方式:每一次,我把一个令牌包(所有的数字是4)通过EP2、EP4从PC主机的外部材料和然后再决定的TEPS去:(1)继续传输数据,如果接收相同的数据作为令牌包;(2)PC主机暂停发送时,接收不同的数据包通过6,和EP8也,当DSP板要开始步(数据计算),我让它传递一个令牌包(如LL号码是4)通过EP6和EP8主机。当然,它首先获得PC令牌数据(数据包)。4。我自己的问题:是的,整个过程一开始就能顺利的,我可以在PC主机上得到正确的计算结果而过程中止。症状是:PC发送错误数据或中断过程。这些天我已经研究了CY7C69001数据表。如果我知道正确,PC主机将继续发送相同的数据,如果它不能成功地完成它的最后一次。我对我的数据流设计有点困惑。PC只能扮演的角色:(启动数据传输和暂停数据传输)。在正常情况下,如何处理我的申请?我在
论坛中看到说:暂停状态不能被发送到一个使用EZ-USB控制面板/ Cyconsole /控制中心的USB设备。它是由主机启动时,它将进入省电模式或待机。我认为在我们的应用程序的数据流是不正确的?谢谢你的时间和考虑。最好的问候
以上来自于百度翻译
以下为原文
In our applica
tion design, we meet some difficulties about the CY7C68001 and hope to get your suggestions.
Our application:
1. Use the USB 2.0 to deal with the CT graphic data communication between the host (PC) and the external master (DSP board: for data computing). We use the control and the bulk way for the communication. And the key issue is about the bulk way when using the CY7C68001.
2. Data stream consideration:
Step (1).get the graphic data (6300*6400, i.e, large number) at one time from the PC host and transmit to DSP board via USB 2.0 interface;
Step (2).the DSP board begins the step of data computing when receive the first lot of 6400 number, at this time it needs the host (PC) to pause the data transferring and wait for the data computing from external master (in DSP board);
Step (3).when the data computing (for the first lot 6400) has been finished and it will transmit the computed data to the PC host and ask the host (PC) to start the graphic data transferring again;
Step (4).the PC host begins the graphic data transferring (the second lot, also 6400); the same process begins (loop: step(2)-->step(3)-->step(2)-->step(3)-->step(2)...)the whole process will be in the end when the PC transfer the whole number.
3. Issues we hope to get suggestions
It locates in the bulk way when the PC host pause the process (transfer the data to the external master, i.e. the DSP board)
My way: every time, I send a token packet (e.g. all number is 4) via EP2, EP4 from the PC host to the external mater and then decide which steps to go: (1) continues to transmit data if receiving the same data as the token packet; (2) PC host pause the transmit when it receive the different data in a packet via the EP6, and the EP8
Also, when the DSP board wants begins the step (data computing), I let it transmit a token packet (e.g. all number is 4) to host via EP6 and the EP8. Sure it get the PC token data (a packet) firstly.
4. My own question:
Yes, the whole process can run smoothly at the beginning and I can get the correct computed data in the PC host while the process suspending. The symptom is: the PC transmits the error data or it suspends the process. I have studied the CY7C68001 data sheet these days. If I know correctly, the PC host will continues to transmit the same data if it cannot finish it successfully in the last time. And I am little confused about my data stream design. The PC can only play the role: (start the data transmit and pause data transferring). In normal situation, how to deal with my application?
P.S. I see the saying in the forum:Suspend condition cannot be sent to a USB device using EZ-USB Control panel/Cyconsole/Control center. It is initiated by the host when it is going into power saving modes or standby. Can I think the data stream is not proper in our application?
Thanks for your time and consideration.
Best Regards
0