2008年4月9日 星期三

usb 2.0擷取問題 (回答網友問題)

網友來信問題:

---------------------------------------

因為公司想做usb擷取功能的box,
所以有幾個問題想請教版主,
以下幾點都必須支援usb2.0 HighSpeed(480Mb)
,不知是否有可行的方法。

1.請問usb分析儀式如何設計的呢?

2.我可以設計一個BOX,這個BOX有兩個並接的usb頭,一端接device,一端接host,BOX裡則並接一顆usb的phy,
以不干擾device與host間的通訊,去擷取資料嗎?

3.我看到cypress的CY7C67300可以規劃成一個device+一個host,請問這顆IC是否也可以達到我想擷取資料的想法呢?
雖然他不支援HighSpeed,但如果只是Full Speed,是否可行?

-----------------------------------------------------------------------------
我想:您們應該不是真的想作一台USB 2.0 的分析儀吧?!

只是想想人家的作法....

您也可以參考一下另文:

http://chamberplus.blogspot.com/2007/06/usb-bus.html#yartcmt

...

首先您就要考慮一下您的零件用料品質與硬體設計功力了(包括PCB Layout !)

因為您要抓到這麼高速訊號的...我想前級就得花點心思了...可能還要作幾次實驗!

當然啊... 或許您不是這種想法,而只是很單純的:看到USB 2.0 的規格...

然後,想想自己的需求,就有點心動或衝動想用USB 2.0 了...

----但是還是版主常掛在嘴邊的一句話:您到底能發揮您手上USB  Controller 的多少頻寬?!

,其實,在電子世界裡,不管是寫程式或是作硬體...動不動就是一路 除以二下來的...

您知道意思嗎?!...韌體裡:一個簡單的JNB/JB 判斷式就是以兩個指令完成一個動作...

就是除以二...更不用說...接下來的Branch 跳躍指令了...而硬體呢?!每經過一個邏輯閘,

就有Latency 產生...當然啊,硬體設計比軟體設計上有一個先天上的優勢:

就是同一個Clock 可以驅動不同的系統回路同步進行...----您可別說我以前搞過的多核心FPPA...

他基本上還是屬於一般MCU 的軟體架構...他也作不到這件事的!!...

但對一個Clock Source 來說 :您還得考慮這個Clock 的驅動能力(電流啊...)...

所以....對於規格上一個很漂亮的數據:480 Mb ....

一路處理下來,您覺得您真的抓到規格與您系統應用需求之間的規格落差嗎?!

------

2. 我不知道您所說的 :並接接頭...是不是像RS485 的接法?!....基本上,USB 還是有主從觀念的..

您還要得考慮:您電路上第一個USB Token 是由誰發出的...

不要說以後誰干擾誰?!我想您第一個USB Token 訊號就會讓您頭大了...

3. 關於這個問題,我想這是再也清楚不過的...誠如我上述的解說,

我想這些做通俗泛用型USB Controller 廠商,大概都還是只會推出所謂USB 2.0 Full Speed 的...

誰會拿石頭砸自己的腳呢?!只不過是通俗泛用型USB Controller而已...

為何要搞個很難的調480Mb 頻寬性能的IC... 來讓客戶抱怨您的產品呢?!....

真到要做到USB High Speed 就留給那些做ASSP 的IC廠商就好了(像隨身碟或是MP3/MP4等...)。

至於,是不是適用於您的系統應用,那就得考驗您的系統設計能力了...

和我上述所謂您的系統分析能力...這種泛用型USB Controller 也都只不過一個輔助角色而已...

-------

我想這應該是您要的答案!!

--------------其實,很多人來信問許多問題,又不好意思把問題講得很清楚?

(可能是公司機密或是也不知道該如何把問題描述得很清楚...)

要把人家問題解答的很切中答案,也是很難的啊....

然後,大家還會反過來怪人家回答的不夠誠懇或是敷衍了事...

唉....大家就姑且參考參考了囉!...

 

 

1 則留言:

  1. 旅遊達人--大米2008年4月10日 下午2:23

    我想 他的方法應該可以
    他只是要抓host 和device 溝通的訊號 並不介入溝通
    理論上 只要插上線  host 就會發第一個token

    他的模型應該會長的這樣子

                   box
                     ||
    host ======= device


    不過如果用phy 抓         sync 訊號應該是抓不到的
     

    回覆刪除