2022年2月17日 星期四

老工程師的技術生活(二) --- 新玩具:USB 分析儀

 紀錄一下我的新玩具: USB 分析儀。

上一篇文章中我有交代說:過年前新購入的新玩具,新一代的USB 分析儀。

其實當初要買的原因除了因為原先第一代USB 分析儀,只支援 USB 1.1 ,而且記憶體深度

只有 1 MB 而已。但對我許多USB 系統開發都已經幫助很大了。但主要的問題還是在於:

PC 端的系統需求為硬體介面為並列埠,而且只能跑在 Windows XP 作業系統,

真的是稀有產品環境了。要維護這樣子的系統環境風險還是有一定的程度。

另外就是:現在許多系統支援的USB 都是至少USB 2.0 ,雖然也還是向前兼容 USB 1.1 。

但還是會碰到許多第一代USB 1.1 無法支援的條件。所以沒辦法就得要提早因應對策。

以下這是第一代的分析儀的硬體內容:


詳細的內部說明在我十幾年前有撰文寫過:USB Bus 分析儀

但這些畢竟都是時代的眼淚,尤其在這個風起雲湧、日新月異的科技界裡。

這也沒甚麼好說的。


但我新買的這一台分析儀,我就懶得拆了,反正這種東西最難的不是硬體,

反而就是軟體功能的支援,至於為什麼我還是只買目前Lecroy 所出的 USB 分析儀的

最基本入門款:Mercuy T2 而已?很簡單,第一:絕對是價格最便宜。

第二:以我們在做USB 系統開發而言, 往往協助我們除錯的,大概大部分還是屬於

基本的USB 傳輸內容的 Tracking 。至於其他那些比較高階功能,甚至USB 3.0 的。

我個人認為應該還是屬於 IC 設計公司的需求比較適合。你去看看目前 MCU 所支援

 USB 介面,還全部只到 USB 2.0 。個人認為要支援 USB  3.0 這樣的系統應用,

應該都是會由USB ASIC(功能專屬IC ) 所主導。 對我們一些基本的系統開發應用而言:

USB 2.0 真的綽綽有餘了,而且我相信硬體上的  IP (矽智權)也相對便宜多了。

(當然啊,也因為支援USB 3.0 的IO  要比較多,所以在對於斤斤計較的MCU 應用包裝

來說:太不切實際了,所以在一般MCU系統應用來說:就大概是USB 2.0 就夠了。)
---
但上一篇文章中所提到的開箱文中所Show 分析儀的軟體畫面:

跟我傳統第一代USB 分析儀的畫面內容好像不太一樣,一開始還真的不習慣。


上圖示第一代USB 分析儀的軟體畫面。那時公司還稱為 CATC ,後來被 Lecroy 所合併,

後來又被 Teledyne 所併,一般我們習慣中認為:經過這樣子兩輪的合併,工程師們應該

所剩不多了,你說還要維持軟體開發團隊來說:應該都蠻難的。但是看來,人家不只還能

維持原來的軟體開發架構,還可以繼續發揚光大,光這一點我真的有點佩服他們的,

經歷了這麼多年的工程開發歷練:我還是認為人家老美真的在技術開發中,許多技術文件

紀錄或是資料留存真的都做得很到位。我是用我自己的經驗法則猜想的,因為我們在老中

的工程團隊技術的交接或傳承,都很少可以做到如此,不管我離職爽不爽,工作留下的

東西,不管是軟體原始碼或是相關文件資料真的會讓後面承接者欲哭無淚啊。

但我的推論還是:畢竟程式碼或技術文件,對那些從小就習慣英文打字訓練的老外來說,

真的駕輕就熟,不像我們,還要搞個中文輸入的註解,萬一有一部分還是在對岸開發的

還會再碰到簡繁體轉換問題。更何況你要老中工程師們來做這些鳥事,肯定是比登天

還難啊。搞技術開發或是程式撰寫都沒時間了,哪來多的時間搞這些文書工作,而且

做這種事:十個老闆有九個九不願意付這一種薪水啊。
---
好吧。

利用過年完這段時間,還是趕快把新一代的軟體介面搞清楚再說吧:

第一個畫面至少也要向前兼容到我所習慣的畫面吧:


不錯,真的搞了一陣子才知道怎麼弄出這個設定畫面,因為這個應用軟體平台,是該公司

在所有USB 分析儀所共用的應用軟體,所以功能一定是擴充到很完整,反而要變成簡單一點

還不一定容易搞出來。最主要還是右上角那幾項顯示選項可以讓你設定:

還可以適度地把一些USB 協定裡的標準欄位定義內容給標示出來。

(像是 bRequest 、wValue、wIndex 或 wLength 等) 真的不錯。

至於下方那個 PING 的 PID ,那是因為我USB 裝置是掛在一台USB Hub 之後,

USB Host 也是會對 USB Hub 固定時間發出 PING 的這樣子的訊號的。


另外還可以標示出USB 介面的標準命令內容:Get Descriptor 、Get String 或 Set Configuration。

當然它還可以進一步的解析到你的傳輸內容是符合 USB 中 MSDC 的這一類的裝置。

就是一般 USB 隨身碟裝置的應用。這對許多想學習USB 入門的人來說:真的友善多了。

另外還可以進一步的分析訊號狀況:


但我想這一部分我應該只是參考而已啦,這一種問題應該是搞 USB IP 的IC  工程師比較

有興趣吧。

至於在分析儀的紀錄觸發條件設定方面,我想也不用太花心思研究了,因為他的記憶體

深度是 256 MB 耶。怎麼抓都綽綽有餘吧,哪怕我用一般手動觸發或停止,應該也都不會

遺漏的,尤其是只有 USB 2.0 的傳輸速率來說。

----
結語:整個來說新一代的USB 分析儀功能可以做到怎樣?我真的也不太在意,

至少目前這樣子的功能對我來說:真的夠用了。

至於要不要用軟體方式(像是 Bus Hound 之類的),我真的從來沒有想過要用,雖然我自己

也會搞PC 端的USB 應用APP 軟體。畢竟分析儀所針對的還是比較傾向USB 裝置的硬體或

韌體支援方面,而我呢:也是要完整支援USB 裝置韌體開發工作的。所以乾脆就讓事情

簡單容易一點吧,尤其對我們這一種老人家來說:就是如此吧。

下回見囉。

1 則留言:

  1. 幾年前回收場買了一台,但是不會用!! 外觀很漂亮!! USB 協定分析儀!!

    回覆刪除