單線編程及調試接口的制作方法
【專利說明】
[0001] 相關申請案的奪叉參考
[0002] 本申請案主張于2013年3月14日提出申請的第61/780,995號美國臨時申請案 的權益,所述美國臨時申請案以其全文并入本文中。
技術領域
[0003] 本發明涉及具有調試接口的數字系統,特定來說微控制器。
[0004] 隨著嵌入式系統變得較小,越來越需要最小化I/O信號消耗以用于裝置之間的通 信。申請人通過開發所謂的UNI/Ο總線已解決此需要,所述UNI/Ο總線為僅需要單一 I/O信 號用于通信的低成本、易實施的解決方案。UNI/Ο總線兼容裝置可用于增強面臨對可用I/O 的限制的任何應用。此類限制可能起源于連接器、板空間或起源于主裝置自身。
[0005] UNI/Ο總線提供用于通過單一 I/O信號通信的定義。其通過"總線式"的系統支持 多個裝置的使用。圖1展示使用具有單一信號總線線SCIO的此總線的系統的實例。一個 裝置被定義為主裝置(圖1中為微控制器),且負責起始及協調與總線上的從裝置的所有操 作。每一從裝置用作所述主裝置的外圍裝置,且從裝置可出于任何數目個目的經設計。
[0006] 圖1展示具有用作主裝置的微控制器及附接到總線作為從外圍裝置的其它眾多 裝置的實例性系統。然而,應注意,主裝置不限制為微控制器,而可為能夠處理必要I/O信 號的任何裝置。
[0007] 數據通過曼徹斯特(Manchester)編碼嵌入到I/O流中。總線由確定時鐘周期、控 制總線存取且起始所有操作的主裝置控制,而所有其它裝置用作從裝置。主裝置及從裝置 兩者均可作為發射器或接收器操作,但所述主裝置確定哪個模式為作用的。
[0008] UNI/Ο總線支持從IOkbps到IOOkbps (等效于IOkHz到IOOkHz)的操作,且不對電 壓范圍、溫度范圍或制造過程進行限制。
[0009] 然而,此總線通常不適合于為微控制器提供調試接口。因此,需要一種能夠提供調 試接口的經改進的單線總線,特定來說需要低引腳計數微控制器裝置。
【發明內容】
[0010] 根據各種實施例,可提供單線編程與調試接口。根據一實施例,此可實施為外圍裝 置,所述外圍裝置可用于通過單線接口(舉例來說,由申請人開發的所謂的UNI/ο標準)通 信到其它單線接口產品(例如UNI/Ο產品(主或從))以及所述產品的編程與調試接口。 [0011] 根據一實施例,一種微控制器可包括具有外部引腳的外殼及使用僅單一信號引腳 的集成調試接口。
[0012] 根據又一實施例,所述單一信號引腳相對于操作供應電壓可為高電壓容忍的。根 據又一實施例,使用饋送到所述單一信號引腳的高電壓的信號序列可激活裝置的調試或編 程模式。根據又一實施例,當處于所述調試或編程模式中時,所述單一信號引腳可根據UNI/ 0總線協議操作。根據又一實施例,所述微控制器可進一步包括用于提供內部高編程電壓的 內部高電壓產生裝置。根據又一實施例,所述微控制器可經配置以僅經由所述單一信號引 腳與外部調試裝置通信。根據又一實施例,所述外殼可包括少于η個引腳,其中η為所述裝 置的內部數據總線寬度。根據又一實施例,η可為小于八(8)。根據又一實施例,多個不同 信號序列可配置包含所述信號引腳的所述微控制器的通信接口的操作模式。根據又一實施 例,所述通信接口的操作模式可選自由以下各項組成的群組:單線接口、UNI/O、ICSP、I2C、 UART及SPI。根據又一實施例,退出幀可包括高電壓信號,所述退出幀終止所述調試或編程 模式。根據又一實施例,通過所述單一信號引腳提交的命令可開始或終止所述調試或編程 模式。
[0013] 根據另一實施例,一種用于操作具有外部引腳及集成調試接口的微控制器的方法 可包括使用所述外部引腳中的僅單一信號引腳調試或編程所述微控制器的步驟。
[0014] 根據所述方法的又一實施例,所述單一信號引腳相對于操作供應電壓可為高電壓 容忍的。根據所述方法的又一實施例,使用饋送到所述單一信號引腳的高電壓的信號序列 可激活裝置的調試或編程模式。根據所述方法的又一實施例,當處于所述調試或編程模式 中時,所述單一信號引腳可根據UNI/Ο總線協議操作。根據所述方法的又一實施例,所述方 法可進一步包括產生用于編程所述微控制器的非易失性存儲器的內部高電壓。根據所述方 法的又一實施例,所述微控制器可經配置以僅經由所述單一信號引腳與外部編程/調試裝 置通信。根據所述方法的另外實施例,所述微控制器的外殼可包括少于η個引腳,其中η為 所述裝置的內部數據總線寬度。根據所述方法的又一實施例,η可為小于八(8)。根據所述 方法的又一實施例,多個不同信號序列可配置包含所述信號引腳的所述微控制器的通信接 口的操作模式。根據所述方法的又一實施例,所述通信接口的操作模式可選自由以下各項 組成的群組:單線接口、ICSP、UNI/0、I2C、UART及SPI。根據所述方法的又一實施例,退出 幀可包括高電壓信號,所述退出幀終止所述調試或編程模式。根據所述方法的又一實施例, 通過所述單一信號引腳提交的命令可開始或終止所述調試或編程模式。
【附圖說明】
[0015] 圖1展示使用單線總線的系統的框圖。
[0016] 圖2展示具有相關聯復位信號線的單線總線的時序圖。
[0017] 圖3展示根據經改進的單線總線的實施例的時序圖。
[0018] 圖4展示與單線總線線耦合的微控制器的檢測單元。
[0019] 圖5展示與外部調試或編程裝置耦合的微控制器的框圖,所述外部調試或編程裝 置與主機PC耦合。
[0020] 圖6展示根據各種實施例的編程序列的時序圖。
[0021] 圖7展示示范性命令結構的時序圖。
[0022] 圖8到11展不各種不范性有效負載結構的時序圖。
【具體實施方式】
[0023] 真正的單"線接口"僅使用單一引腳用于發信號。然而,當然仍然需要參考電位。 因此,所有真正的單線接口需要通常現有的接地引腳。
[0024] 在低引腳計數裝置上,用于編程、調試或通信協議的引腳可通常占用許多可用引 腳資源或形成電路互連問題。通過提供可用作編程接口、調試接口以及標準通信接口的單 一通信模塊,由裝置使用所需的引腳的數目得以最小化。此通過減少用于此類裝置(尤其 較小裝置,舉例來說具有較少引腳的裝置)的電路內編程所需的引腳計數來大大增加低引 腳微控制器裝置的靈活性及用途。
[0025] 標準微控制器(舉例來說,由申請人制造的微控制器)需要至少三個引腳以用于 編程及電路內調試。第一引腳MCLR用于通過施加編程電壓向裝置指示切換到編程模式中。 因此,此引腳具有檢測所施加的高電壓的相關聯邏輯,其中本申請案中所使用的術語"高電 壓"將被理解為超過裝置的典型操作電壓的任何電壓。另外兩個引腳用于數據及時鐘信號 的同步串行接口。一旦施加高電壓,裝置便可使用所述高電壓來編程其非易失性存儲器且 使用串行接口來與外部編程/調試裝置進行通信。在8引腳裝置(舉例來說,由申請人制 造的PIC12F裝置)上,此接口使用基本上50%的可用輸入/輸出(I/O)引腳,這是因為需 要兩個引腳用于電力供應。這些低引腳裝置在除電力供應引腳之外的基本上所有可用引 腳上均提供通過其外圍裝置可用的多路復用功能。如果在應用的開發期間需要所有可用 引腳,那么必須使用所述裝置的昂貴特殊外合芯片版本來連接到編程器/調試器或仿真裝 置。即使除一個引腳之外的所有引腳均用于應用中,但出于調試的目的仍需要此所謂的標 頭裝置。然而,低引腳計數裝置的許多應用可具有為自由的或換句話說未使用或對于調試 不關鍵的一個引腳。因此,根據各種實施例,此引腳可用于提供編程/調試接口,如將在下 文更詳細解釋。
[0026] 許多現有所謂的"單線"接口實際上需要使用不只是單線引腳來進入到單線模式 中。舉例來說,圖2展示單線接口模塊(SW頂)的常規接口,所述單線接口模塊需要使用芯 片上電路來檢測需要在兩個外部引腳上的兩個單獨信號的輸入序列。
[0027] 根據各種實施例,在僅僅在(舉例來說)主清除(MCLR)引腳上發信號的情況下, 可設計進入1線模式以用于編程及調試的裝置。接著在MCLR線上傳送命令及數據,且可編 程或調試所述裝置。
[0028] 根據各種實施例,在微控制器產品(舉例來說,由申請人制造的微控制器)中利用 高電壓(HV)測試輸入邏輯。通過以一型式施加 HV信號,可建立允許MCLR信號用于命令及 數據輸入的內部狀態。在此情形中,根據一些實施例,所提議型式將在幾微秒時間幀310內 交替HV及GND電平4次,且所述型式將由內部計時器辨識以激活UNIO接口。此在圖1中 圖解說明。也可使用其它型式(舉例來說,5個或5個以上HV脈沖或其間具有預定義暫停 的多個脈沖),且這些脈沖可激活替代編程通道,如UART (RS232)、SPI或I2C。然而,這些類 型的接口中的一些接口可不只是需要用于UNI/Ο的單線且可因此具較少益處。
[0029] 如圖3中所展示,單線接口或其它串行接口可在第η次退出(舉例來說)高電壓 測試模式之后為作用的。圖3展示"正常"操作電壓VDD電平及指示通常高于如上文所討 論的所述"正常"操作電壓的電壓的VHH電平。不同輸入信號可激活不同類型的串行接口。 舉例來說,
[0030] -在第四次之后結束的序列可為針對單線接口
[0031] -在第五次之后結束的序列可為針對I2C編程接口
[0032] -在第六次之后結束的序列可為針對UART編程接口
[0033] -在第七次之后結束的序列可為針對SPI編程接口
[0034] 如圖3中所展示,退出時間幀320進行回到高電壓測試模式中。圖4展示與單線 410耦合的相應單線接口的示范性檢測單元420。出于檢測相異型式的目的,可存在用于定 義將在其期間發射初始型式的輸入時間幀的一或多個計時器430。此計時器430可由第一 傳入高電壓邊緣門控。可實施也通過由計時器430定義的時間窗觸發的計數器440。所述 計數器可接著在一個實施例中簡單地計數在所定義時間幀期間提交的高電壓脈沖的數目。
[0035] 圖5展示具有與外部調試器/編程器520耦合的微控制器510的示范性系統。外 部調試器/編程器520包括USB接口,通過所述USB接口,所述外部調試器/編程器與主機 個人計算機或工作站530耦合。在此實例中,微控制器510為八