專(zhuān)利名稱(chēng):Jtag設(shè)備及隔離電路實(shí)現(xiàn)jtag數(shù)據(jù)下載的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通過(guò)JTAG ( Joint Test Action Group,聯(lián)合測(cè)試行動(dòng)小組)接 口對(duì)可編程器件進(jìn)行遠(yuǎn)程在線下載技術(shù),特別是指一種帶隔離的JTAG設(shè)備及 隔離電路實(shí)現(xiàn)JTAG數(shù)據(jù)下載的方法。
背景技術(shù):
隨著電路技術(shù)的發(fā)展,可編程器件應(yīng)用得越來(lái)越廣泛,可編程器件如同一 張白紙或是一堆積木,工程師可以通過(guò)傳統(tǒng)的原理圖輸入法或是硬件描述語(yǔ)言 自由的設(shè)計(jì)一個(gè)數(shù)字系統(tǒng)。通過(guò)軟件仿真,可以事先驗(yàn)證設(shè)計(jì)的正確性。在 PCB (印刷電路板)完成以后,還可以利用可編程器件的在線修改能力,隨時(shí) 修改設(shè)計(jì)而不必改動(dòng)硬件電路。使用可編程器件來(lái)開(kāi)發(fā)數(shù)字電路,可以大大縮 短設(shè)計(jì)時(shí)間,減少PCB面積,提高系統(tǒng)的可靠性。設(shè)計(jì)者將要實(shí)現(xiàn)的功能轉(zhuǎn)換成原理圖或者硬件描述語(yǔ)言的形式,通過(guò)編譯 軟件進(jìn)行編譯,將編譯以后的程序通過(guò)JTAG接口下載到可編程器件里去,可 編程器件就會(huì)按照設(shè)計(jì)者的意圖進(jìn)行運(yùn)行。JTAG ( Joint Test Action Group,聯(lián)合測(cè)試行動(dòng)小組)是一種國(guó)際標(biāo)準(zhǔn)協(xié)議, 主要用于芯片內(nèi)部測(cè)試和程序下載,現(xiàn)在幾乎所有的可編程器件都支持JTAG 接口,將具有JTAG接口的可編程邏輯器件稱(chēng)為JTAG可編程邏輯器件,標(biāo)準(zhǔn) 的JTAG接口有以下幾根線JTAG一TMS:模式選擇引腳;JTAG_TCK:時(shí)鐘引腳;JTAG—TDI:數(shù)據(jù)輸入引腳;JTAG-TDO:數(shù)據(jù)輸出引腳;JTAG—RST—N: JTAG復(fù)位引腳;目前來(lái)說(shuō),通過(guò)JTAG對(duì)可編程器件進(jìn)行編程的最常見(jiàn)的方法是使用JTAG下載線將計(jì)算機(jī)的串口和可編程器件的JTAG 口連接起來(lái),在 PC機(jī)上運(yùn)行JTAG下載軟件,將編譯好后的可編程器件編譯文件通過(guò)下栽線 下載到可編程器件里。這種常用的JTAG下栽方法主要有以下弊端
A. 升級(jí)方式比較麻煩,如果是已經(jīng)投放市場(chǎng),賣(mài)給用戶(hù)的設(shè)備需要進(jìn)行 可編程器件升級(jí),需要相關(guān)的工作人員拿著JTAG下載線到用戶(hù)的被測(cè)試的設(shè) 備現(xiàn)場(chǎng),將被測(cè)試的設(shè)備打開(kāi),然后鏈接JTAG連接器到PC機(jī)上,實(shí)現(xiàn)手動(dòng) 下載升級(jí)程序,這樣容易影響客戶(hù)的設(shè)備的正常運(yùn)行,費(fèi)時(shí)費(fèi)力,極不方便。
B. 由于JTAG接口不支持熱插拔,下載完以后,如果直接將可編程器件 的JTAG下載線直接從可編程器件的JTAG連接器上拔掉,很容易損壞JTAG 接口,導(dǎo)致器件無(wú)法進(jìn)行后續(xù)的程序升級(jí)功能。
C. JTAG下載需要將PC的串口和可編程器件的JTAG 口通過(guò)JTAG下載 線來(lái)直接連接;由于JTAG所在的設(shè)備很有可能沒(méi)有接地或者設(shè)備接地不良, 導(dǎo)致設(shè)備上聚集了大量的靜電,而當(dāng)PC機(jī)通過(guò)JTAG下載線進(jìn)行下栽的時(shí)候, 設(shè)備上積聚的大量的靜電會(huì)通過(guò)JTAG 口傳到PC機(jī)的串口上,最終將PC的 串口燒壞,導(dǎo)致下載無(wú)法進(jìn)行。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種JTAG設(shè)備及隔離電路實(shí)現(xiàn)JTAG數(shù) 據(jù)下載的方法,通過(guò)對(duì)JTAG接口進(jìn)行隔離,實(shí)現(xiàn)對(duì)JTAG接口或者與該JTAG 設(shè)備連接的串口的保護(hù),使JTAG接口或者串口不被破壞。
為解決上述技術(shù)問(wèn)題,本發(fā)明的實(shí)施例提供一種JTAG設(shè)備,包括
處理器;
JTAG可編程邏輯器件;
隔離電路,與所述處理器連接,并與所述JTAG可編程邏輯器件的引腳連 接,所述隔離電路具有與所述JTAG可編程邏輯器件的? I腳對(duì)應(yīng)的寄存器;
所述隔離電路根據(jù)所述處理器對(duì)所述隔離電路中的所述寄存器的讀/寫(xiě)電 平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器件的引腳,將JTAG數(shù)據(jù)從所述處理器 傳輸?shù)剿鯦TAG可編程邏輯器件中。
其中,所述JTAG可編程邏輯器件具有數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、復(fù)位引腳和數(shù)據(jù)輸出引腳;
所述隔離電路中具有與所述數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、 復(fù)位51腳或數(shù)據(jù)輸出51腳對(duì)應(yīng)的寄存器。
其中,所述隔離電路包括
隔離可編程邏輯器件,具有分別與所述數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí) 鐘引腳、復(fù)位引腳或者數(shù)據(jù)輸出? I腳對(duì)應(yīng)的寄存器;
光耦合器,與所述隔離可編程邏輯器件連接,并分別與所述JTAG可編程 邏輯器件的數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、復(fù)位引腳和數(shù)據(jù)輸出引 腳連接。
其中,所述光耦合器包括
CATHODE引腳、ANODE引腳、VO引腳、GND引腳、VCC引腳和VE 引腳;其中,所述VCC引腳和所述VE引腳連接,所述VE引腳和所述VO 引腳之間連接有一上拉電阻;
所述CATHODE引腳與所述數(shù)據(jù)輸入引腳對(duì)應(yīng)的寄存器連接且所述VO 引腳與所述數(shù)據(jù)輸入引腳連接,或者
所述CATHODE引腳與所述模式選擇引腳對(duì)應(yīng)的寄存器連接且所述VO 引腳與所述模式選擇引腳連接,或者
所述時(shí)鐘引腳連接,或者
所述CATHODE引腳與所述復(fù)位引腳對(duì)應(yīng)的寄存器連接且所述VO引腳與 所述復(fù)位引腳連接,或者
輸出引腳對(duì)應(yīng)的寄存器連接時(shí),
所述CATHODE引腳輸入為高電平信號(hào)時(shí),所述ANODE腳和CATHODE 腳之間的二極管和所述VO引腳和GND引腳之間二極管均截至,所述數(shù)據(jù)輸 入引腳、模式選擇引腳、時(shí)鐘引腳或復(fù)位引腳通過(guò)所述上拉電阻被拉到所述 VCC引腳,將所述高電平信號(hào)傳輸至所述JTAG可編程邏輯器件,或者所述 數(shù)據(jù)輸出引腳對(duì)應(yīng)的寄存器通過(guò)所述上拉電阻被拉到所述VCC引腳,將所述 高電平信號(hào)存儲(chǔ)在所述數(shù)據(jù)輸出SI腳對(duì)應(yīng)的寄存器中;所述CATHODE引腳輸入為低電平信號(hào)時(shí),所述ANODE腳和CATHODE 腳之間的二極管和所述VO引腳和GND引腳之間二極管均導(dǎo)通,所述數(shù)據(jù)輸 入引腳、模式選擇引腳、時(shí)鐘引腳或復(fù)位引腳通過(guò)所述上拉電阻被拉到GND 引腳,將所述低電平信號(hào)傳輸至所述JTAG可編程邏輯器件,或者所述數(shù)據(jù)輸 出引腳對(duì)應(yīng)的寄存器通過(guò)所述上拉電阻被拉到所述GND引腳,將所述低電平 信號(hào)存儲(chǔ)在所述數(shù)據(jù)輸出f 1腳對(duì)應(yīng)的寄存器中。
其中,所述JTAG可編程邏輯器件的引腳對(duì)應(yīng)的寄存器為一個(gè)寄存器,所 述JTAG可編程邏輯器件的各引腳分別對(duì)應(yīng)該寄存器中的一位;或者所述JTAG 可編程邏輯器件的各引腳分別對(duì)應(yīng) 一個(gè)寄存器。
件的下載頻率。
其中,所述隔離可編程邏輯器件具體為通用輸入/輸出GPIO擴(kuò)展器或 者復(fù)雜可編程邏輯器件CPLD。
其中,所述隔離電路具體為利用電容實(shí)現(xiàn)隔離的數(shù)字隔離電路。
其中,上述JTAG設(shè)備還包括具有以太網(wǎng)口的以太網(wǎng)芯片,所述以太網(wǎng) 芯片與所述處理器連接,用于將所述以太網(wǎng)口接收到的JTAG數(shù)據(jù)傳輸至所述 處理器,并由所述處理器將所述JTAG數(shù)據(jù)通過(guò)所述隔離電路下載到所述JTAG 可編程邏輯器件中。
本發(fā)明的實(shí)施例還提供一種隔離電路實(shí)現(xiàn)JTAG數(shù)據(jù)下載的方法,應(yīng)用于 包含有JTAG可編程邏輯器件和處理器的JTAG設(shè)備中,該方法包括
隔離電路獲取處理器對(duì)所述隔離電路中的與所述JTAG可編程邏輯器件 的虧I腳對(duì)應(yīng)的寄存器進(jìn)行的讀/寫(xiě)電平信號(hào);
所述隔離電路根據(jù)所述電平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器件的引
本發(fā)明的上述技術(shù)方案的有益效果如下
上述方案中,使用隔離電路對(duì)JATG可編程邏輯器件的引腳進(jìn)行隔離,可 以防止JTAG設(shè)備沒(méi)有接地或者接地不良,導(dǎo)致設(shè)備聚集的靜電傳到PC串口 而燒毀串口的問(wèn)題;而且,使用隔離電路對(duì)JTAG可編程邏輯器件進(jìn)行隔離以 后,即使熱插拔JTAG下載線,由于光藕合器的保護(hù),也不會(huì)對(duì)PC的串口產(chǎn)生破壞。
圖1為本發(fā)明的實(shí)施例JTAG設(shè)備的具體結(jié)構(gòu)示意圖2為圖1所示JTAG設(shè)備中隔離電路實(shí)現(xiàn)JTAG可編程邏輯器件的數(shù)據(jù) 輸入引腳的隔離工作原理示意圖3為圖1所示JTAG設(shè)備中隔離電路實(shí)現(xiàn)JTAG可編程邏輯器件的模式 選擇引腳的隔離工作原理示意圖4為圖1所示JTAG設(shè)備中隔離電路實(shí)現(xiàn)JTAG可編程邏輯器件的時(shí)鐘 引腳的隔離工作原理示意圖5為圖1所示JTAG設(shè)備中隔離電路實(shí)現(xiàn)JTAG可編程邏輯器件的復(fù)位 引腳的隔離工作原理示意圖6為圖1所示JTAG設(shè)備中隔離電路實(shí)現(xiàn)JTAG可編程邏輯器件的數(shù)據(jù) 輸出引腳的隔離工作原理示意圖。
具體實(shí)施例方式
為使本發(fā)明要解決的技術(shù)問(wèn)題、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附 圖及具體實(shí)施例進(jìn)行詳細(xì)描述。
本發(fā)明針對(duì)現(xiàn)有JTAG設(shè)備中JTAG可編程邏輯器件的JTAG接口或者與 該JTAG設(shè)備連接的PC的串口 ,由于JTAG設(shè)備聚集大量的靜電,使用時(shí)容 易被燒毀的問(wèn)題,提供一種對(duì)JTAG接口進(jìn)行隔離,實(shí)現(xiàn)對(duì)JTAG接口或者與 該JTAG設(shè)備連接的串口的保護(hù),使JTAG接口或者串口不被破壞的JTAG設(shè) 備及隔離電路實(shí)現(xiàn)JTAG數(shù)據(jù)下載的方法。
如圖l所示,本發(fā)明的實(shí)施例JTAG設(shè)備,包括
處理器,該處理器可以是JTAG設(shè)備的CPU;
JTAG可編程邏輯器件,用于實(shí)現(xiàn)對(duì)JTAG設(shè)備的軟件升級(jí)或者擴(kuò)充功能 的實(shí)現(xiàn);
隔離電路,與所述處理器連接,并與所述JTAG可編程邏輯器件的引腳連 接,所述隔離電路具有與所述JTAG可編程邏輯器件的引腳對(duì)應(yīng)的寄存器;所述隔離電路根據(jù)所述處理器對(duì)所述隔離電路中的所述寄存器的讀/寫(xiě)電
平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器件的引腳,將JTAG數(shù)據(jù)從所述處理器 傳輸?shù)剿鯦TAG可編程邏輯器件中。
該實(shí)施例中,通過(guò)在JTAG設(shè)備中增加隔離電路,處理器根據(jù)其模擬的 JTAG總線時(shí)序功能將對(duì)JTAG可編程邏輯器件的讀/寫(xiě)電平信號(hào),首先寫(xiě)入該 隔離電路的寄存器中,再驅(qū)動(dòng)JTAG的引腳,最后將電平信號(hào)傳輸?shù)絁TAG可 編程邏輯器件中,實(shí)現(xiàn)對(duì)JTAG可編程邏輯器件接口的保護(hù),使JTAG接口或 者與該JTAG設(shè)備連接的PC的串口不被破壞。
其中,上述JTAG可編程邏輯器件具有數(shù)據(jù)輸入引腳JTAG_TDI、模式 選擇引腳JTAG—TMS、時(shí)鐘引腳JTAG—TCK、復(fù)位引腳JTAG_RST—N和數(shù)據(jù) 輸出引腳JTAG—TDO;
所述隔離電路中具有與所述數(shù)據(jù)輸入引腳JTAG—TDI、模式選擇引腳 JTAG—TMS、時(shí)鐘引腳JTAG—TCK、復(fù)位引腳JTAG—RST—N或數(shù)據(jù)輸出引腳 JTAG—TDO對(duì)應(yīng)的寄存器。該寄存器可以為一個(gè)寄存器,JTAG可編程邏輯器 件的各引腳分別對(duì)應(yīng)該寄存器中的一位;如, 一個(gè)8位寄存器(不限于8位寄 存器,16位寄存器也可以),JTAG可編程邏輯器件的這5個(gè)引腳分別對(duì)應(yīng)該 8位寄存器的l位,只需要操作這5位中的任何1位就可以實(shí)現(xiàn)JTAG的任何 一個(gè)腳進(jìn)行操作;當(dāng)然,也可以是一個(gè)引腳對(duì)應(yīng)一個(gè)寄存器,如數(shù)據(jù)輸入引腳 JTAG—TDI對(duì)應(yīng)的寄存器為T(mén)DI—UPDATE;模式選擇引腳JTAG—TMS對(duì)應(yīng)的 寄存器為T(mén)MSJJPDATE ;時(shí)鐘引腳JTAG—TCK對(duì)應(yīng)的寄存器為 TCK—UPDATE;復(fù)位引腳JTAG—RST_N對(duì)應(yīng)的寄存器為RST—UPDATE;數(shù) 據(jù)輸出引腳JTAG—TDO對(duì)應(yīng)的寄存器為T(mén)DO_UPDATD。
其中,上述隔離電路包括
隔離可編程邏輯器件,具有分別與所述數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí) 鐘引腳、復(fù)位引腳或者數(shù)據(jù)輸出卩I腳對(duì)應(yīng)的寄存器;
光耦合器(optical coupler, OC ),與所述隔離可編程邏輯器件連接,并分 別與所述JTAG可編程邏輯器件的數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、 復(fù)位引腳和數(shù)據(jù)輸出引腳連接。
該光藕合器為高速光藕,允許通過(guò)的信號(hào)的頻率應(yīng)大于JTAG可編程邏輯器件的下載頻率,以滿足JTAG可編程邏輯器件的下載需要,如該光藕合器的 最大頻率為1MHZ。
另外,上述隔離可編程邏輯器件具體可以采用CPU通用輸入/輸出GPIO 擴(kuò)展器進(jìn)行模擬,也可以是一個(gè)復(fù)雜可編程邏輯器件CPLD( Complex Programmable Logic Device )。
光耦合器以光為媒介傳輸電信號(hào)。它對(duì)輸入、輸出電信號(hào)有良好的隔離作 用,主要原理是將輸入的電信號(hào)轉(zhuǎn)換為光信號(hào),再將光信號(hào)轉(zhuǎn)換為電信號(hào), 從而起到輸入、輸出隔離的作用。由于光耦合器輸入輸出間互相隔離,電信號(hào) 傳輸具有單向性等特點(diǎn),因而具有良好的電絕緣能力和抗干擾能力。
該光耦合器包括
CATHODE引扭卩、ANODE引扭卩、VO引扭卩、GND引扭卩、VCC引扭卩和VE 引腳;其中,所述VCC引腳和所述VE引腳連接,所述VE引腳和所述VO 引腳之間連接有一上拉電阻;
所述CATHODE引腳與所述數(shù)據(jù)輸入引腳對(duì)應(yīng)的寄存器連接且所述VO 引腳與所述數(shù)據(jù)輸入引腳連接,或者
所述CATHODE引腳與所述模式選擇引腳對(duì)應(yīng)的寄存器連接且所述VO 引腳與所述模式選擇引腳連接,或者
所述時(shí)鐘引腳連接,或者
所述CATHODE引腳與所述復(fù)位引腳對(duì)應(yīng)的寄存器連接且所述VO引腳與 所述復(fù)位引腳連接,或者
所述CATHODE引腳與所述數(shù)據(jù)輸出引腳連接且所述VO引腳與所述數(shù)據(jù) 輸出引腳對(duì)應(yīng)的寄存器連接時(shí),
所述CATHODE引腳輸入為高電平信號(hào)時(shí),所述ANODE腳和CATHODE 腳之間的二極管和所述VO引腳和GND引腳之間二極管均截至,所述數(shù)據(jù)輸 入引腳、模式選擇引腳、時(shí)鐘引腳或復(fù)位引腳通過(guò)所述上拉電阻被拉到所述 VCC引腳,將所述高電平信號(hào)傳輸至所述JTAG可編程邏輯器件,或者所述 數(shù)據(jù)輸出引腳對(duì)應(yīng)的寄存器通過(guò)所述上拉電阻被拉到所述VCC引腳,將所述 高電平信號(hào)存儲(chǔ)在所述數(shù)據(jù)輸出引腳對(duì)應(yīng)的寄存器中;所述CATHODE引腳輸入為低電平信號(hào)時(shí),所述ANODE腳和CATHODE 腳之間的二極管和所述VO引腳和GND引腳之間二極管均導(dǎo)通,所述數(shù)據(jù)輸 入引腳、模式選4奪引腳、時(shí)鐘引腳或復(fù)位引腳通過(guò)所述上拉電阻被拉到GND 引腳,將所述低電平信號(hào)傳輸至所述JTAG可編程邏輯器件,或者所述數(shù)據(jù)輸 出引腳對(duì)應(yīng)的寄存器通過(guò)所述上拉電阻被拉到所述GND引腳,將所述低電平 信號(hào)存儲(chǔ)在所述數(shù)據(jù)輸出?I腳對(duì)應(yīng)的寄存器中。
下面結(jié)合具體
上述光耦合器的各引腳與JTAG可編程邏輯器件 的各引腳以及隔離可編程邏輯器件中的寄存器之間的工作關(guān)系
如圖2所示,為數(shù)據(jù)輸入引腳JTAG一TDI的光電隔離圖,工作原理如下
JTAG—TDI是可編程器件JTAG接口的數(shù)據(jù)輸入引腳,TDI_UPDATE由 CPLD驅(qū)動(dòng),TDI—UPDATE的高低電平實(shí)現(xiàn)是由CPU寫(xiě)入CPLD里和 TDIJJPDATE相關(guān)的寄存器位的值為T(mén)和'0,來(lái)實(shí)現(xiàn)的。當(dāng)TDIJJPDATE 為高電平時(shí),光藕合器的ANODE腳和CATHODE腳之間的二極管截至,光 藕合器的VO腳和GND腳之間也截至,導(dǎo)致JTAG—TDI被上拉電阻R2拉到 JTAG_VCC,也為高電平,這樣高電平就通過(guò)光藕合器傳到了可編程邏輯器件 的JTAG—TDI腳。當(dāng)TDI—UPDATE為低電平時(shí),光藕合器的ANODE腳和 CATHODE腳之間的二極管導(dǎo)通,導(dǎo)致VO腳和GND腳之間也導(dǎo)通,JTAG—TDI 被連接到JTAG—GND腳,JTAG—TDI的電平就為低電平,這樣低電平就通過(guò) 光藕合器傳到了可編程器件的JTAG—TDI引腳,實(shí)現(xiàn)了對(duì)JTAG引腳的下載數(shù) 據(jù)輸入。
如圖3所示,為模式選擇引腳JTAG一TMS的光電隔離圖,工作原理如下 光藕合器為高速光藕,允許通過(guò)的信號(hào)的最大頻率為1MHZ,完全滿足 JTAG的下載頻率;JTAG—TMS是JTAG可編程邏輯器件的引腳,TMS_UPDATE 由CPLD驅(qū)動(dòng),TMS—UPDATE的高低電平實(shí)現(xiàn)是由CPU寫(xiě)入CPLD里和 TMSJJPDATE相關(guān)的寄存器的值為'1,和'0,來(lái)實(shí)現(xiàn)的。當(dāng)TMS_UPDATE 為高電平時(shí),光藕合器的ANODE腳和CATHODE腳之間的二極管截至,光 藕合器的VO腳和GND腳之間也截至,導(dǎo)致JTAG—TMS被上拉電阻R2拉到 JTAG一VCC,也為高電平,這樣高電平就通過(guò)光藕合器傳到了可編程邏輯器件 的JTAG—TMS腳。當(dāng)TMS—UPDATE為低電平時(shí),光藕合器的ANODE腳和CATHODE腳之間的二才及管導(dǎo)通,導(dǎo)致VO腳和GND腳之間也導(dǎo)通, JTAG—TMS被連接到JTAG—GND腳,JTAG—TMS的電平就為低電平,這樣低 電平就通過(guò)光藕合器傳到了可編程器件的JTAG一TMS引腳,實(shí)現(xiàn)了對(duì)可編程 器件的JTAG接口的模式選擇。
如圖4所示,為時(shí)鐘引腳JTAG一TCK的光電隔離圖,工作原理如下 光藕合器為高速光藕,允許通過(guò)的信號(hào)的最大頻率為1MHZ,完全滿足 JTAG的下載頻率;JTAG—TCK是JTAG可編程邏輯器件的引腳,TCK—UPDATE 由CPLD驅(qū)動(dòng),TCK—UPDATE的高低電平實(shí)現(xiàn)是由CPU寫(xiě)入CPLD里和 TCK—UPDATE相關(guān)的寄存器的值為T(mén)和'0,來(lái)實(shí)現(xiàn)的。當(dāng)TCK—UPDATE 為高電平時(shí),光藕合器的ANODE腳和CATHODE腳之間的二極管截至,光 藕合器的VO腳和GND腳之間也截至,導(dǎo)致JTAG一TDI被拉到JTAG_VCC, 也為高電平,這樣高電平就通過(guò)光藕合器傳到了可編程邏輯器件的JTAG_TCK 腳。當(dāng)TCK—UPDATE為低電平時(shí),光藕合器的ANODE腳和CATHODE腳之 間的二極管導(dǎo)通,導(dǎo)致VO腳和GND腳之間也導(dǎo)通,JTAG—TCK被連接到 JTAG—GND腳,JTAG一TCK的電平就為低電平,這樣低電平就通過(guò)光藕合器 傳到了可編程器件的JTAG—TCK引腳,從而實(shí)現(xiàn)了對(duì)JTAG引腳的時(shí)鐘輸入。 如圖5所示,為復(fù)位引腳JTAG一RST一N的光電隔離圖,工作原理如下 光藕合器為高速光藕,允許通過(guò)的信號(hào)的最大頻率為1MHZ,完全滿足 JTAG的下載頻率;JTAG—RST一N是JTAG可編程邏輯器件的引腳, RST—UPDATE由CPLD驅(qū)動(dòng),RST—UPDATE的高低電平實(shí)現(xiàn)是由CPU寫(xiě)入 CPLD里和RST—UPDATE相關(guān)的寄存器的值為'1,和'0,來(lái)實(shí)現(xiàn)的。當(dāng) RST—UPDATE為高電平時(shí),光藕合器的ANODE腳和CATHODE腳之間的二 極管截至,光藕合器的VO腳和GND腳之間也截至,導(dǎo)致JTAG_RST—N被拉 到JTAG—VCC,也為高電平,這樣高電平就通過(guò)光藕合器傳到了可編程邏輯 器件的JTAG—RST—N腳。當(dāng)RST—UPDATE為低電平時(shí),光藕合器的ANODE 腳和CATHODE腳之間的二極管導(dǎo)通,導(dǎo)致VO腳和GND腳之間也導(dǎo)通, JTAG_RST—N被連接到JTAG—GND腳,JTAG—RST_N的電平就為低電平,這 樣低電平就通過(guò)光藕合器傳到了可編程器件的JTAG—RST—N引腳,實(shí)現(xiàn)了對(duì) JTAG接口的復(fù)位搡作。如圖6所示,為數(shù)據(jù)輸出引腳JTAG—TDO的光電隔離圖,工作原理如下
JTAG—TDO是JTAG可編程邏輯器件的輸出引腳,當(dāng)JTAG一TDO輸出高 電平以后,光藕合器的ANODE腳和CATHODE腳之間的電平為低電平, ANODE腳和CATHODE腳之間的二極管截至,導(dǎo)致VO腳和GND腳截至, TDO—UPDATE就被連接到VCC3V3 ,從而是高電平,輸入到CPLD里 TDO—UPDATE相關(guān)的寄存器,等待CPU讀?。划?dāng)JTAG—TDO輸出低電平時(shí), 光藕合器的ANODE腳和CATHODE腳之間的二極管導(dǎo)通,從而導(dǎo)致光藕合 器的VO腳和GND腳導(dǎo)通,TDO—UPDATE被連接到GND,從而時(shí)低電平, 輸入到CPLD里TDO—UPDATE相關(guān)的寄存器,等待CPU讀取。
以上電路組成了 JTAG設(shè)備的整個(gè)結(jié)構(gòu)。目前采用的JTAG下載方法基本 上都是通過(guò)使用JTAG下載線從PC機(jī)上對(duì)可編程器件進(jìn)行程序下載,存在技 術(shù)背景中描述的三種弊端,本發(fā)明使用高速光藕合器對(duì)JATG可編程邏輯器件 的5個(gè)引腳分別進(jìn)行光藕隔離,可以防止可編程器件所在的設(shè)備沒(méi)有接地或者 接地不良,導(dǎo)致設(shè)備聚集的靜電傳到PC串口而燒毀串口的問(wèn)題;而且,使用 光藕合器對(duì)JTAG進(jìn)行隔離以后,即使熱插拔JTAG下載線,由于光藕合器的 保護(hù),也不會(huì)對(duì)PC的串口產(chǎn)生破壞。
另外,再如圖l所示,本發(fā)明的JTAG設(shè)備還可具有以太網(wǎng)口的以太網(wǎng)芯 片,所述以太網(wǎng)芯片與所述處理器連接,用于將所述以太網(wǎng)口接收到的JTAG 數(shù)據(jù)傳輸至所述處理器,并由所述處理器將所述JTAG數(shù)據(jù)通過(guò)所述隔離電路 下載到所述JTAG可編程邏輯器件中。這樣可以在線升級(jí)JTAG可編程邏輯器 件中的程序,可以通過(guò)網(wǎng)絡(luò)(如以太網(wǎng)口 RJ45 口 )將需要升級(jí)的可編程器件 程序發(fā)到設(shè)備里的CPU的ROM里保存起來(lái),CPU在合適的時(shí)候通過(guò)讀寫(xiě) CPLD的寄存器來(lái)模擬JTAG時(shí)序,將可編程器件的程序通過(guò)CPLD下下到可 編程器件的JTAG里去,這樣可以實(shí)現(xiàn)遠(yuǎn)程下載,實(shí)時(shí)下載,不用到客戶(hù)現(xiàn)場(chǎng) 打開(kāi)設(shè)備進(jìn)行手動(dòng)下載,安全可靠。
最后,本發(fā)明的上述實(shí)施例中,隔離電路也可以利用數(shù)字隔離電路實(shí)現(xiàn), 該數(shù)字隔離電路是使用電容進(jìn)行隔離,如ADI和TI公司生產(chǎn)的數(shù)字隔離電路。
本發(fā)明的實(shí)施例還提供一種隔離電路實(shí)現(xiàn)JTAG數(shù)據(jù)下載的方法,應(yīng)用于 包含有JTAG可編程邏輯器件和處理器的JTAG設(shè)備中,該方法包括步驟一,隔離電路獲取處理器對(duì)所述隔離電路中的與所述JTAG可編程邏 輯器件的引腳對(duì)應(yīng)的寄存器進(jìn)行讀/寫(xiě)電平信號(hào);
步驟二,所述隔離電路根據(jù)所述電平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器 件的引腳,將JTAG數(shù)據(jù)從所述處理器下載到所述JTAG可編程邏輯器件。
該方法中具體實(shí)現(xiàn)對(duì)JTAG可編程邏輯器件進(jìn)行隔離保護(hù),并實(shí)現(xiàn)遠(yuǎn)程下 載的方法如上述各附圖中的介紹,在此不再贅述。
綜上,本發(fā)明的實(shí)施例JTAG可編程器件的JTAG引腳通過(guò)光藕隔離以后 送到CPLD, CPU模擬JTAG總線的時(shí)序功能。CPU按照模擬好以后的時(shí)序和 功能通過(guò)Loca舊us對(duì)CPLD的相關(guān)寄存器(TMS—UPDATE, TCK—UPDATE, TDO—UPDATD,RST—UPDATE , TDI—UPDATE )進(jìn)行讀寫(xiě),從而馬區(qū)動(dòng) TMS—UPDATE, TCK—UPDATE, TDO一UPDATD,RST—UPDATE, TDI—UPDAT 這5個(gè)引腳,然后通過(guò)光藕隔離以后送到可編程器件的JTAG引腳上,完成 JTAG程序下載。也可以通過(guò)RJ45網(wǎng)口將要下載的文件由網(wǎng)絡(luò)遠(yuǎn)程傳送到CPU 里存儲(chǔ)起來(lái),再下載到可編程器件里,從而實(shí)現(xiàn)遠(yuǎn)程下載,不用到客戶(hù)現(xiàn)場(chǎng)打
開(kāi)設(shè)備進(jìn)行手動(dòng)下載,安全可靠。
以上所述是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技
術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾,
這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
1權(quán)利要求
1.一種JTAG設(shè)備,包括處理器;JTAG可編程邏輯器件;其特征在于,所述JTAG設(shè)備還包括隔離電路,與所述處理器連接,并與所述JTAG可編程邏輯器件的引腳連接,所述隔離電路具有與所述JTAG可編程邏輯器件的引腳對(duì)應(yīng)的寄存器;所述隔離電路根據(jù)所述處理器對(duì)所述隔離電路中的所述寄存器的讀/寫(xiě)電平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器件的引腳,將JTAG數(shù)據(jù)從所述處理器傳輸?shù)剿鯦TAG可編程邏輯器件中。
2. 根據(jù)權(quán)利要求1所述的JTAG設(shè)備,其特征在于,所述JTAG可編程 邏輯器件具有數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、復(fù)位引腳和數(shù)據(jù)輸 出引腳;所述隔離電路中具有與所述數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、 復(fù)位?I腳或數(shù)據(jù)輸出S1腳對(duì)應(yīng)的寄存器。
3. 根據(jù)權(quán)利要求2所述的JTAG設(shè)備,其特征在于,所述隔離電路包括 隔離可編程邏輯器件,具有分別與所述數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、復(fù)位引腳或者數(shù)據(jù)輸出引腳對(duì)應(yīng)的寄存器;光耦合器,與所述隔離可編程邏輯器件連接,并分別與所述JTAG可編程 邏輯器件的數(shù)據(jù)輸入引腳、模式選擇引腳、時(shí)鐘引腳、復(fù)位引腳和數(shù)據(jù)輸出引 腳連接。
4. 根據(jù)權(quán)利要求3所述的JTAG設(shè)備,其特征在于,所述光耦合器包括 CATHODE引腳、ANODE引腳、VO引腳、GND引腳、VCC引腳和VE引腳;其中,所述VCC引腳和所述VE引腳連接,所述VE引腳和所述VO 引腳之間連接有 一上拉電阻;所述CATHODE引腳與所述數(shù)據(jù)輸入引腳對(duì)應(yīng)的寄存器連接且所述VO 引腳與所述數(shù)據(jù)輸入引腳連接,或者所述CATHODE引腳與所述模式選擇引腳對(duì)應(yīng)的寄存器連接且所述VO 引腳與所述模式選擇引腳連接,或者所述CATHODE引腳與所述時(shí)鐘51腳對(duì)應(yīng)的寄存器連接且所述VO引腳與 所述時(shí)鐘引腳連接,或者所述CATHODE引腳與所述復(fù)位引腳對(duì)應(yīng)的寄存器連接且所述VO引腳與 所述復(fù)位引腳連接,或者所述CATHODE引腳與所述數(shù)據(jù)輸出引腳連接且所述VO引腳與所述數(shù)據(jù) 輸出引腳對(duì)應(yīng)的寄存器連接時(shí),所述CATHODE引腳輸入為高電平信號(hào)時(shí),所述ANODE腳和CATHODE 腳之間的二極管和所述VO引腳和GND引腳之間二極管均截至,所述數(shù)據(jù)輸 入引腳、模式選擇引腳、時(shí)鐘引腳或復(fù)位引腳通過(guò)所述上拉電阻被拉到所述 VCC引腳,將所述高電平信號(hào)傳輸至所述JTAG可編程邏輯器件,或者所述 數(shù)據(jù)輸出引腳對(duì)應(yīng)的寄存器通過(guò)所述上拉電阻被拉到所述VCC引腳,將所述 高電平信號(hào)存儲(chǔ)在所述數(shù)據(jù)輸出?I腳對(duì)應(yīng)的寄存器中;所述CATHODE引腳輸入為低電平信號(hào)時(shí),所述ANODE腳和CATHODE 腳之間的二極管和所述VO引腳和GND引腳之間二極管均導(dǎo)通,所述數(shù)據(jù)輸 入引腳、模式選擇引腳、時(shí)鐘引腳或復(fù)位引腳通過(guò)所述上拉電阻被拉到GND 引腳,將所述低電平信號(hào)傳輸至所述JTAG可編程邏輯器件,或者所述數(shù)據(jù)輸 出引腳對(duì)應(yīng)的寄存器通過(guò)所述上拉電阻被拉到所述GND引腳,將所述低電平 信號(hào)存儲(chǔ)在所述數(shù)據(jù)輸出《1腳對(duì)應(yīng)的寄存器中。
5. 根據(jù)權(quán)利要求1 - 4任一項(xiàng)所述的JTAG設(shè)備,其特征在于,所述JTAG 可編程邏輯器件的引腳對(duì)應(yīng)的寄存器為一個(gè)寄存器,所述JTAG可編程邏輯器 件的各引腳分別對(duì)應(yīng)該寄存器中的一位;或者所述JTAG可編程邏輯器件的各 引腳分別對(duì)應(yīng)一個(gè)寄存器。
6. 根據(jù)權(quán)利要求5所述的JTAG設(shè)備,其特征在于,所述光藕合器允許
7. 根據(jù)權(quán)利要求3所述的JTAG設(shè)備,其特征在于,所述隔離可編程邏 輯器件具體為通用輸入/輸出GPIO擴(kuò)展器或者復(fù)雜可編程邏輯器件CPLD。
8. 根據(jù)權(quán)利要求1所述的JTAG設(shè)備,其特征在于,所述隔離電路具體 為利用電容實(shí)現(xiàn)隔離的數(shù)字隔離電路。
9. 根據(jù)權(quán)利要求1所述的JTAG設(shè)備,其特征在于,還包括具有以太網(wǎng)口的以太網(wǎng)芯片,所述以太網(wǎng)芯片與所述處理器連接,用于將所述以太網(wǎng)口接收到的JTAG數(shù)據(jù)傳輸至所述處理器,并由所述處理器將所述JTAG數(shù)據(jù)通 過(guò)所述隔離電路下載到所述JTAG可編程邏輯器件中。
10. —種隔離電路實(shí)現(xiàn)JTAG數(shù)據(jù)下載的方法,應(yīng)用于包含有JTAG可編 程邏輯器件和處理器的JTAG設(shè)備中,其特征在于,該方法包括隔離電路獲取處理器對(duì)所述隔離電路中的與所述JTAG可編程邏輯器件 的引腳對(duì)應(yīng)的寄存器進(jìn)行的讀/寫(xiě)電平信號(hào);所述隔離電路根據(jù)所述電平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器件的引 腳,將JTAG數(shù)據(jù)從所述處理器下載到所述JTAG可編程邏輯器件。
全文摘要
本發(fā)明提供一種JTAG設(shè)備及隔離電路實(shí)現(xiàn)JTAG數(shù)據(jù)下載的方法,其中,JTAG設(shè)備包括處理器;JTAG可編程邏輯器件;隔離電路,與所述處理器連接,并與所述JTAG可編程邏輯器件的引腳連接,所述隔離電路具有與所述JTAG可編程邏輯器件的引腳對(duì)應(yīng)的寄存器;所述隔離電路根據(jù)所述處理器對(duì)所述隔離電路中的所述寄存器的讀/寫(xiě)電平信號(hào),驅(qū)動(dòng)所述JTAG可編程邏輯器件的引腳,將JTAG數(shù)據(jù)從所述處理器傳輸?shù)剿鯦TAG可編程邏輯器件中。本發(fā)明實(shí)現(xiàn)對(duì)JTAG接口或者與該JTAG設(shè)備連接的串口的保護(hù)。
文檔編號(hào)H03K19/003GK101621293SQ200910089620
公開(kāi)日2010年1月6日 申請(qǐng)日期2009年7月23日 優(yōu)先權(quán)日2009年7月23日
發(fā)明者華 許 申請(qǐng)人:中興通訊股份有限公司