TWI699101B - 基於邊界掃描的在線級聯加載韌體系統及其方法 - Google Patents

基於邊界掃描的在線級聯加載韌體系統及其方法 Download PDF

Info

Publication number
TWI699101B
TWI699101B TW108133804A TW108133804A TWI699101B TW I699101 B TWI699101 B TW I699101B TW 108133804 A TW108133804 A TW 108133804A TW 108133804 A TW108133804 A TW 108133804A TW I699101 B TWI699101 B TW I699101B
Authority
TW
Taiwan
Prior art keywords
loaded
chip
loading
host computer
physical connections
Prior art date
Application number
TW108133804A
Other languages
English (en)
Other versions
TW202114377A (zh
Inventor
楊明
Original Assignee
英業達股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 英業達股份有限公司 filed Critical 英業達股份有限公司
Priority to TW108133804A priority Critical patent/TWI699101B/zh
Application granted granted Critical
Publication of TWI699101B publication Critical patent/TWI699101B/zh
Publication of TW202114377A publication Critical patent/TW202114377A/zh

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

一種基於邊界掃描的在線級聯加載韌體系統及其方法,透過上位機判斷待加載的韌體版本高於該些待加載晶片的韌體版本時,發送加載標記予該些待加載晶片,使該些待加載晶片進入加載模式;上位機重新定義加載模式的每一待加載晶片與其連接的主控制器晶片之間的多個可控物理連線作為加載匯流排;上位機通過加載匯流排發送加載文件與IAP指令予每一待加載晶片,使其依據幀週期與幀計數執行加載程序以完整接收加載文件,並執行IAP指令燒寫其具有的唯讀記憶體;當每一待加載晶片執行完加載程序時,跳轉出加載模式,上位機恢復該些可控物理連線的定義。

Description

基於邊界掃描的在線級聯加載韌體系統及其方法
本發明涉及一種在線級聯加載韌體系統及其方法,特別是基於邊界掃描的在線級聯加載韌體系統及其方法。
目前應用於印刷電路板組裝(Printed Circuit Board Assembly,PCBA)產線產品(包括安裝其上的測試治具)在線加載韌體的方案,主要有兩種方式,分別為聯合測試工作群組(Joint Test Action Group,JTAG)方式和在軟體燒錄(In Application Programming,IAP)方式。
以JTAG方式加載韌體,需要求目標晶片必須具備標準的JTAG電氣介面,即包含4個物理線路:模式選擇線(TMS)、時鐘線(TCK)、數據輸入線(TDI)和數據輸出線(TDO)。只有具備標準JTAG電氣介面的晶片,才能級聯成閉合鏈路。但是一些廠商所提供的待加載晶片的加載介面採用SWD電氣標準,只有SWCLK和SWDIO這2個物理線路,難以與其他標準JTAG電氣介面的晶片直接對接成鏈。另外,SWD電氣標準尚未支援點對多點的傳輸,所以採用SWD電氣介面的待加載晶片之間不可級聯加載。因此,以JTAG方式加載韌體受限於待加載晶片廠商規定的加載電氣介面方式。
當待加載晶片支援以IAP方式加載韌體時,用戶可利用上位機自定義待加載晶片的加載介面的形式,例如:待加載晶片的加載介面為並行或串列,待加載晶片的加載介面為序列外圍裝置介面(Serial Peripheral Interface,SPI)匯流排或內部整合電路(Inter-Integrated Circuit,I 2C)匯流排等,但需要額外的主(Master)控制器晶片的參與。但以IAP方式加載韌體,除了需要開發待加載晶片與上位機的軟體,還增加了開發主控制器晶片的驅動層和應用層的軟體工作,以支援加載功能的數據傳輸,開發成本更高。另外,以級聯方式加載韌體,上位機、各主控制器晶片、各待加載晶片之間需相互通訊,流程上相比JTAG標準化的通訊方式更為複雜,必然會犧牲部分加載速率。
綜上所述,如何在盡可能不改變現有印刷電路板上硬體資源的前提下,結合JTAG方式與IAP方式的優勢,達到高效率加載韌體,一直是相關業者當前重要研發課題之一。
本發明揭露一種基於邊界掃描的在線級聯加載韌體系統及其方法。
首先,本發明揭露一種基於邊界掃描的在線級聯加載韌體系統,其包括:上位機、TAP控制器與N個印刷電路板,其中,每一印刷電路板上設置有通過JTAG介面級聯的一個或多個主控制器晶片以及一個或多個待加載晶片,每一待加載晶片通過多個可控物理連線與該些主控制器晶片其中之一連接,上位機與TAP控制器連接,該些印刷電路板依序相互串接,TAP控制器通過JTAG介面分別與第一個印刷電路板以及第N個印刷電路板連接,N大於或等於二且為正整數。上位機驗證加載文件是否有效且每一印刷電路板的JTAG鏈路是否可用;當上位機驗證該加載文件有效且每一印刷電路板的JTAG鏈路可用時,上位機通過該些可控物理連線收集每一待加載晶片的韌體版本資訊,並分別與待加載的韌體版本比較;當上位機判斷待加載的韌體版本高於至少一待加載晶片的韌體版本時,上位機發送加載標記予其韌體版本低於待加載的韌體版本的該至少一待加載晶片,使該至少一待加載晶片進入加載模式;上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線,使得該些可控物理連線皆作為加載匯流排且統一數據流動方向等待接收加載文件;上位機通過該些加載匯流排發送加載文件與IAP指令予該至少一待加載晶片,使該至少一待加載晶片依據幀週期與幀計數執行加載程序,以完整接收加載文件,並執行IAP指令燒寫其具有的ROM;以及當該至少一待加載晶片執行完加載程序時,該至少一待加載晶片跳轉出加載模式,上位機恢復該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線的定義。
另外,本發明揭露一種基於邊界掃描的在線級聯加載韌體方法,此方法包括以下步驟:提供上位機、TAP控制器與N個印刷電路板,其中,每一印刷電路板上設置有通過JTAG介面級聯的一個或多個主控制器晶片以及一個或多個待加載晶片,每一待加載晶片通過多個可控物理連線與該些主控制器晶片其中之一連接,上位機與TAP控制器連接,該些印刷電路板依序相互串接,TAP控制器通過JTAG介面分別與第一個印刷電路板以及第N個印刷電路板連接,N大於或等於二且為正整數;上位機驗證加載文件是否有效且每一印刷電路板的JTAG鏈路是否可用;當上位機驗證該加載文件有效且每一印刷電路板的JTAG鏈路可用時,上位機通過該些可控物理連線收集每一待加載晶片的韌體版本資訊,並分別與待加載的韌體版本比較;當上位機判斷待加載的韌體版本高於至少一待加載晶片的韌體版本時,上位機發送加載標記予其韌體版本低於待加載的韌體版本的該至少一待加載晶片,使該至少一待加載晶片進入加載模式;上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線,使得該些可控物理連線皆作為加載匯流排且統一數據流動方向等待接收加載文件;上位機通過每一加載匯流排發送加載文件與IAP指令予該至少一待加載晶片,使該至少一待加載晶片依據幀週期與幀計數執行加載程序,以完整接收加載文件,並執行IAP指令燒寫其具有的ROM;以及當該至少一待加載晶片執行完加載程序時,該至少一待加載晶片跳轉出加載模式,上位機恢復該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線的定義。
本發明所揭露之基於邊界掃描的在線級聯加載韌體系統及其方法如上,與先前技術的差異在於本發明是透過上位機判斷待加載的韌體版本高於至少一待加載器晶片的該韌體版本時,發送加載標記予該至少一待加載晶片,使該至少一待加載晶片進入加載模式;上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的多個可控物理連線,使得其作為加載匯流排;上位機通過加載匯流排發送加載文件與IAP指令予該至少一待加載晶片,使該至少一待加載晶片依據幀週期與幀計數執行加載程序以完整接收加載文件,並執行IAP指令燒寫其具有的唯讀記憶體;當該至少一待加載晶片執行完加載程序時,該至少一待加載晶片跳轉出加載模式,上位機恢復該些可控物理連線的定義。
透過上述的技術手段,本發明可不需要開發獨立的加載匯流排,充分利用已有的硬體資源,構建靈活的並行加載匯流排,提高數據輸送量;不必受限於晶片自身具備JTAG標準電氣介面,適用於產線在線級聯加載韌體;不需要印刷電路板上主控制器晶片的相關功能開發,節省開發成本和流程成本;由於加載匯流排對數據傳輸的週期性不敏感,不受上位機的作業系統或TAP控制器延遲的影響,具備更好的應用適應能力。
以下將配合圖式及實施例來詳細說明本發明之實施方式,藉此對本發明如何應用技術手段來解決技術問題並達成技術功效的實現過程能充分理解並據以實施。
請先參閱「第1圖」,「第1圖」為本發明基於邊界掃描的在線級聯加載韌體系統之一實施例的結構示意圖。基於邊界掃描的在線級聯加載韌體系統100可包括:上位機110、TAP控制器120與N個印刷電路板130,其中,每一印刷電路板130上設置有通過JTAG介面級聯的兩個主控制器晶片60以及一個待加載晶片70,每一待加載晶片70通過多個可控物理連線72與一個主控制器晶片60連接,上位機110與TAP控制器120連接,該些印刷電路板130依序相互串接,TAP控制器120通過JTAG介面分別與第一個印刷電路板130(即圖面中最上面的印刷電路板130,以印刷電路板1表示)以及第N個印刷電路板130(即圖面中最下面的印刷電路板130,以印刷電路板N表示,在本實施例中,N為12)連接,N大於或等於二且為正整數。其中,待加載晶片70可為微控制器晶片(MCU)、邏輯晶片,如:複雜可程式邏輯裝置(Complex Programmable Logic Device,CPLD)、電場可程式化邏輯閘陣列(Field Programmable Gate Array, FPGA)、所有通過燒錄韌體工作的半訂製晶片或系統單晶片(System on a Chip, SoC)。
需注意的是,當每一印刷電路板上設置有通過JTAG介面級聯的多個主控制器晶片以及多個待加載晶片時,該些主控制器晶片60可相互串接,每一待加載晶片70可分別連接不同的主控制器晶片60,也可連接於同一主控制器晶片60,每一待加載晶片70與其連接的主控制器晶片60之間的可控物理連線72數量不一定相同,可依據實際需求進行調整。
在本實施例中,基於邊界掃描的在線級聯加載韌體系統100可應用於伺服器主機板邊界掃描測試雙列直插式記憶體模組(Dual In-line Memory Module,DIMM)治具的韌體加載,即印刷電路板130為虛擬DIMM治具,N為12,每一虛擬DIMM治具有2個JTAG鏈路級聯,但本實施例並非用以限定本發明,可依據實際需求進行調整。
其中,每一可控物理連線72可能為局域匯流排(Local Bus,L-Bus)、SPI匯流排、I 2C匯流排或者獨立功能的通用型的輸入輸出(General Purpose Input/Output,GPIO)接腳。在本實施例中,每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72可包括20條局域匯流排、4條SPI匯流排、2條I 2C匯流排與1個GPIO接腳,共27個物理線路,但本實施例並非用以限定本發明,可依據實際需求進行調整。需注意的是,為避免圖式過於複雜,每一待加載晶片70與其連接的主控制器晶片60之間的可控物理連線72僅繪製三條表示。
上位機110可先驗證加載文件是否有效且每一印刷電路板130的JTAG鏈路是否可用,以確認上位機110與TAP控制器120是否建立好通訊關係,確保上位機110能從TAP控制器120獲取到每一主控制器晶片60的晶片ID等信息,進而確認上位機110準備好加載環境。
當上位機110驗證加載文件有效且每一印刷電路板130的JTAG鏈路可用時(即確認上位機110已準備好加載環境),上位機110可通過該些可控物理連線72收集每一待加載晶片70的韌體版本資訊,並分別與待加載待加載的韌體版本比較。當上位機110判斷待加載的韌體版本高於至少一待加載晶片70的韌體版本時,上位機110發送加載標記予該至少一待加載晶片70,使該至少一待加載晶片70自正常模式進入加載模式。
接著,上位機110可重新定義進入加載模式的待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72,使得該些可控物理連線72皆作為加載匯流排且統一數據流動方向等待接收加載文件。其中,在上位機110重新定義進入加載模式的待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72的步驟中包括:上位機110取進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72其中之一用於並行時鐘;上位機110取進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72中位元組的整數倍的該些可控物理連線72用於並行接收加載文件的數據;以及上位機110取進入加載模式的每一待加載晶片70與每其連接的主控制器晶片60之間的該些可控物理連線72中剩餘的該些可控物理連線72用於並行接收幀計數。其中,當上位機110取進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72中M條該可控物理連線72用於並行接收該幀計數時,該幀計數對應的最大值為2 M,上位機110負責自第0個幀開始進行幀計數,當計數次數達到對應的最大值後重新計數(即幀計數係由0至2 M-1)。
在本實施例中,進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72可包括20條局域匯流排、4條SPI匯流排、2條I 2C匯流排與1個GPIO接腳,共27個物理線路,皆可被上位機110重新定義,上位機110取進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72中的1個物理連線用於並行時鐘,24個物理連線用於並行接收加載文件的數據,2個物理連線用於並行接收幀計數,但本實施例並非用以限定本發明,可依據實際需求進行調整。
上位機100需重新定義進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72的原因是因為在加載狀態時,進入加載模式的每一待加載晶片只進行加載任務,該些可控物理連線72原有的功能已經無效,所以盡可以拿來重定義加以利用。
其中,為了獲取更大的傳輸帶寬,更大的數據吞吐量,應盡可能收集更多可重定義的可控物理連線72。依據邊界掃描標準,JTAG介面取得(get)數據和輸入(put)數據由TAP控制器120所發出的兩個指令獨立進行,指令間的切換是由一系列狀態機週期完成,為減少加載傳輸時間在指令切換間的浪費,將數據統一方向接收或發送,不區分發送數據匯流排和接收數據匯流排,這樣收發都達到最大帶寬。
在本實施例中,歸一化(即統一數據流動方向)的加載匯流排構成包括1條連線用於並行時鐘,取位元組的整數倍條連線(即24條連線)用於並行數據,其餘連線(即2條連線)用於並行接收幀計數。其中,並行時鐘規定為雙邊沿觸發,這樣保證前端JTAG鏈路每推送1次就會收到1幀數據,位元(bit)速率達到最優。舉例而言,請參閱「第2圖」,「第2圖」為基於「第1圖」的進入加載模式的每一待加載執行加載程序的一實施例時序圖,上位機110準備好要發送的加載文件,重定義該些可控物理連線72後,由於並行時鐘規定為雙邊沿觸發(即幀週期為半個時鐘週期),故在第一個時鐘週期內,上位機110將準備的加載文件首個24bit數據(0xfa0)、幀計數0和第2個24bit數據(0xfa1)、幀計數1分別在時鐘上升/下降沿推送出去。其中,由於上位機110取進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的2條可控物理連線72用於並行接收該幀計數時,因此,該幀計數對應的最大值為2 2,上位機110負責自第0個幀開始進行幀計數,當計數次數達到對應的最大值後重新計數(即幀計數係由0至3)。
當進入加載模式的每一待加載晶片70接收到該幀週期(即感知到時鐘)時,分別接收加載文件的數據與幀計數,並將接收到的幀計數與其內部計數器的計數值比對,當比對一致時確認接收到的該加載文件的數據有效,將其放入其內部的隨機存取記憶體(Random Access Memory, RAM)中。
因此,上位機110通過該些可控物理連線72發送加載文件與IAP指令予進入加載模式的每一待加載晶片70,使進入加載模式的每一待加載晶片70依據幀週期與幀計數執行加載程序,以完整接收加載文件,並執行IAP指令燒寫其具有的ROM。
當進入加載模式的每一待加載晶片70執行完加載程序時,進入加載模式的每一待加載晶片70跳轉出加載模式(即自加載模式重回正常模式),上位機110恢復進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72的定義。在本實施例中,進入加載模式的每一待加載晶片70與其連接的主控制器晶片60之間的該些可控物理連線72可恢復為20條局域匯流排、4條SPI匯流排、2條I 2C匯流排與1個GPIO接腳。
需注意的是,為維護傳輸數據的可靠性,進入加載模式的每一待加載晶片70在執行加載程序的過程中,還需檢查該幀計數的連續性,當判斷出錯時,則停止接收數據,待應答週期上報狀態請求重傳。此外,在本實施例中,為節省加載韌體的時間,TAP控制器120可透過旁路(Bypass)指令使前級主控制器晶片60(即沒有與待加載晶片70連接的主控制器晶片60)不參與加載韌體的過程。此外,基於邊界掃描的在線級聯加載韌體系統100僅對進入加載模式的待加載晶片70進行韌體的加載(即更新韌體),當部分待加載晶片70不需進行韌體的加載(即該些待加載晶片70的韌體版本高於待加載的韌體版本)時,TAP控制器120可發出旁路(Bypass)指令予該些待加載晶片70,使那些不需進行韌體加載的待加載晶片70不再接收載入資料。
接著,請參閱「第3圖」,「第3圖」為「第1圖」的基於邊界掃描的在線級聯加載韌體系統執行基於邊界掃描的在線級聯加載韌體方法之一實施例的方法流程圖。在本實施例中,基於邊界掃描的在線級聯加載韌體方法可包括以下步驟:提供上位機、TAP控制器與N個印刷電路板,其中,每一印刷電路板上設置有通過JTAG介面級聯的一個或多個主控制器晶片以及一個或多個待加載晶片,每一待加載晶片通過多個可控物理連線與該些主控制器晶片其中之一連接,上位機與TAP控制器連接,該些印刷電路板依序相互串接,TAP控制器通過JTAG介面分別與第一個印刷電路板以及第N個印刷電路板連接,N大於或等於二且為正整數(步驟210);上位機驗證加載文件是否有效且每一印刷電路板的JTAG鏈路是否可用(步驟220);當上位機驗證該加載文件有效且每一印刷電路板的JTAG鏈路可用時,上位機通過該些可控物理連線收集每一待加載晶片的韌體版本資訊,並分別與待加載的韌體版本比較(步驟230);當上位機判斷待加載的韌體版本高於至少一待加載晶片的韌體版本時,上位機發送加載標記予該至少一待加載晶片,使該至少一待加載晶片進入加載模式(步驟240);上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線,使得該些可控物理連線皆作為加載匯流排且統一數據流動方向等待接收加載文件(步驟250);上位機通過每一加載匯流排發送加載文件與IAP指令予該至少一待加載晶片,使該至少一待加載晶片依據幀週期與幀計數執行加載程序,以完整接收加載文件,並執行IAP指令燒寫其具有的ROM(步驟260);以及當該至少一待加載晶片執行完加載程序時,該至少一待加載晶片跳轉出加載模式,上位機恢復該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線的定義(步驟270)。上述各個步驟如果沒有因果關係,本發明並不限定其執行的先後順序。
透過上述步驟,即可不需要開發獨立的加載匯流排,充分利用已有的硬體資源,構建靈活的並行加載匯流排,提高數據輸送量;不必受限於晶片自身具備JTAG標準電氣介面,適用於產線在線級聯加載韌體;不需要印刷電路板上主控制器晶片的相關功能開發,節省開發成本和流程成本;由於加載匯流排對數據傳輸的週期性不敏感,不受上位機的作業系統或TAP控制器延遲的影響,具備更好的應用適應能力。
其中,在該上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線的步驟中包括:上位機取該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線其中之一用於並行時鐘;上位機取該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線中位元組的整數倍的該些可控物理連線用於並行接收加載文件的數據;以及上位機取該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線中剩餘的該些可控物理連線用於並行接收幀計數。詳細描述已於上述段落加以說明,於此不再贅述。
此外,當上位機取該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線中M條該可控物理連線用於並行接收該幀計數時,該幀計數對應的最大值為2 M,上位機負責自第0個幀開始進行幀計數,當計數次數達到對應的最大值後重新計數。詳細描述已於上述段落加以說明,於此不再贅述。
另外,當該至少一待加載晶片接收到該幀週期時,分別接收加載文件的數據與幀計數,並將接收到的該幀計數與其內部計數器的計數值比對,當比對一致時確認接收到的該加載文件的數據有效,將其放入其內部的RAM中。詳細描述已於上述段落加以說明,於此不再贅述。
再者,該至少一待加載晶片在執行加載程序的過程中,還檢查該幀計數的連續性,當判斷出錯時,則停止接收數據,待應答週期上報狀態請求重傳。詳細描述已於上述段落加以說明,於此不再贅述。
綜上所述,可知本發明與先前技術之間的差異在於透過上位機判斷待加載的韌體版本高於至少一待加載晶片的韌體版本時,發送加載標記予該至少一待加載晶片,使該至少一待加載晶片進入加載模式;上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的多個可控物理連線,使得其作為加載匯流排;上位機通過加載匯流排發送加載文件與IAP指令予該至少一待加載晶片,使其依據幀週期與幀計數執行加載程序以完整接收加載文件,並執行IAP指令燒寫其具有的唯讀記憶體;當該至少一待加載晶片執行完加載程序時,跳轉出加載模式,上位機恢復該些可控物理連線的定義,藉由此一技術手段可使本發明不需要開發獨立的加載匯流排,充分利用已有的硬體資源,構建靈活的並行加載匯流排,提高數據輸送量;不必受限於晶片自身具備JTAG標準電氣介面,適用於產線在線級聯加載韌體;不需要印刷電路板上主控制器晶片的相關功能開發,節省開發成本和流程成本;由於加載匯流排對數據傳輸的週期性不敏感,不受上位機的作業系統或TAP控制器延遲的影響,具備更好的應用適應能力。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。
60:主控制器晶片 70:微控制器晶片 72:可控物理連線 100:基於邊界掃描的在線級聯加載韌體系統 110:上位機 120:TAP控制器 130:印刷電路板 步驟210:提供上位機、TAP控制器與N個印刷電路板,其中,每一印刷電路板上設置有通過JTAG介面級聯的一個或多個主控制器晶片以及一個或多個待加載晶片,每一待加載晶片通過多個可控物理連線與該些主控制器晶片之一連接,上位機與TAP控制器連接,該些印刷電路板依序相互串接,TAP控制器通過JTAG介面分別與第一個印刷電路板以及第N個印刷電路板連接,N大於或等於二且為正整數 步驟220:上位機驗證加載文件是否有效且每一印刷電路板的JTAG鏈路是否可用 步驟230:當上位機驗證該加載文件有效且每一印刷電路板的JTAG鏈路可用時,上位機通過該些可控物理連線收集每一待加載晶片的韌體版本資訊,並分別與待加載的韌體版本比較 步驟240:當上位機判斷待加載的韌體版本高於至少一待加載晶片的韌體版本時,上位機發送加載標記予該至少一待加載微控制器晶片,使該至少一待加載微控制器晶片進入加載模式 步驟250:上位機重新定義進入加載模式的該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線,使得該些可控物理連線皆作為加載匯流排且統一數據流動方向等待接收加載文件 步驟260:上位機通過每一加載匯流排發送加載文件與IAP指令予該至少一待加載晶片,使該至少一待加載晶片依據幀週期與幀計數執行加載程序,以完整接收加載文件,並執行IAP指令燒寫其具有的ROM 步驟270:當該至少一待加載晶片執行完加載程序時,該至少一待加載晶片跳轉出加載模式,上位機恢復該至少一待加載晶片與其連接的主控制器晶片之間的該些可控物理連線的定義
第1圖為本發明基於邊界掃描的在線級聯加載韌體系統之一實施例的結構示意圖。 第2圖為進入加載模式的每一待加載晶片執行加載程序的一實施例時序圖。 第3圖為第1圖的基於邊界掃描的在線級聯加載韌體系統執行基於邊界掃描的在線級聯加載韌體方法之一實施例的方法流程圖。
60:主控制器晶片
70:待加載晶片
72:可控物理連線
100:基於邊界掃描的在線級聯加載韌體系統
110:上位機
120:TAP控制器
130:印刷電路板

Claims (10)

  1. 一種基於邊界掃描的在線級聯加載韌體系統,其包括: 一測試存取埠(Test Access Port,TAP)控制器; N個印刷電路板(Printed Circuit Board,PCB),每一該印刷電路板上設置有通過聯合測試工作群組(Joint Test Action Group,JTAG)介面級聯的一個或多個主控制器晶片以及一個或多個待加載晶片,每一該待加載晶片通過多個可控物理連線與該些主控制器晶片其中之一連接,該些印刷電路板依序相互串接,該TAP控制器通過JTAG介面分別與第一個該印刷電路板以及第N個該印刷電路板連接,N大於或等於二且為正整數;以及 一上位機,與該TAP控制器連接,用以驗證一加載文件是否有效且每一該印刷電路板的JTAG鏈路是否可用;當該上位機驗證該加載文件有效且每一該印刷電路板的該JTAG鏈路可用時,該上位機通過該些可控物理連線收集每一該待加載晶片的韌體版本資訊,並分別與一待加載的韌體版本比較;當該上位機判斷該待加載的韌體版本高於至少一該待加載晶片的該韌體版本時,該上位機發送一加載標記予其韌體版本低於該待加載的韌體版本的該至少一該待加載晶片,使該至少一該待加載晶片進入加載模式;該上位機重新定義進入該加載模式的該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線,使得該些可控物理連線皆作為加載匯流排且統一數據流動方向等待接收該加載文件;該上位機通過該些加載匯流排發送該加載文件與一在軟體燒錄(In Application Programming,IAP)指令予該至少一該待加載晶片,使該至少一該待加載晶片依據一幀週期與一幀計數執行一加載程式,以完整接收該加載檔,並執行該IAP指令燒寫其具有的唯讀記憶體(Read-Only Memory,ROM);當該至少一該待加載晶片執行完該加載程序時,該至少一該待加載晶片跳轉出該加載模式,該上位機恢復該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線的定義。
  2. 依據申請專利範圍第1項所述之基於邊界掃描的在線級聯加載韌體系統,其中,在該上位機重新定義進入該加載模式的該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線的步驟中包括: 該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線其中之一用於並行時鐘; 該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線中位元組的整數倍的該些可控物理連線用於並行接收該加載文件的數據;以及 該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線中剩餘的該些可控物理連線用於並行接收該幀計數。
  3. 依據申請專利範圍第2項所述之基於邊界掃描的在線級聯加載韌體系統,其中,當該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線中M條該可控物理連線用於並行接收該幀計數時,該幀計數對應的最大值為2 M,該上位機負責自第0個幀開始進行幀計數,當計數次數達到對應的最大值後重新計數。
  4. 依據申請專利範圍第2項所述之基於邊界掃描的在線級聯加載韌體系統,其中,當該至少一該待加載晶片接收到該幀週期時,分別接收該加載文件的數據與該幀計數,並將接收到的該幀計數與其內部計數器的計數值比對,當比對一致時確認接收到的該加載文件的數據有效,將其放入其內部的隨機存取記憶體(Random Access Memory, RAM)中。
  5. 依據申請專利範圍第1項所述之基於邊界掃描的在線級聯加載韌體系統,其中,該至少一該待加載晶片在執行該加載程序的過程中,還檢查該幀計數的連續性,當判斷出錯時,則停止接收數據,待應答週期上報狀態請求重傳。
  6. 一種基於邊界掃描的在線級聯加載韌體方法,其包括以下步驟: 提供一上位機、一TAP控制器與N個印刷電路板,其中,每一該印刷電路板上設置有通過JTAG介面級聯的一個或多個主控制器晶片以及一個或多個待加載晶片,每一該待加載晶片通過多個可控物理連線與該些主控制器晶片其中之一連接,該上位機與該TAP控制器連接,該些印刷電路板依序相互串接,該TAP控制器通過JTAG介面分別與第一個該印刷電路板以及第N個該印刷電路板連接,N大於或等於二且為正整數; 該上位機驗證一加載文件是否有效且每一該印刷電路板的JTAG鏈路是否可用; 當該上位機驗證該加載文件有效且每一該印刷電路板的該JTAG鏈路可用時,該上位機通過該些可控物理連線收集每一該待加載晶片的韌體版本資訊,並分別與一待加載的韌體版本比較; 當該上位機判斷該待加載的韌體版本高於至少一該待加載晶片的該韌體版本時,該上位機發送一加載標記予其韌體版本低於該待加載的韌體版本的該至少一該待加載晶片,使該至少一該待加載晶片進入加載模式; 該上位機重新定義進入該加載模式的該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線,使得該些可控物理連線皆作為加載匯流排且統一數據流動方向等待接收該加載文件; 該上位機通過該些加載匯流排發送該加載文件與一IAP指令予該至少一該待加載晶片,使該至少一該待加載晶片依據一幀週期與一幀計數執行一加載程式,以完整接收該加載檔,並執行該IAP指令燒寫其具有的ROM;以及 當該至少一該待加載晶片執行完該加載程序時,該至少一該待加載晶片跳轉出該加載模式,該上位機恢復該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線的定義。
  7. 依據申請專利範圍第6項所述之基於邊界掃描的在線級聯加載韌體方法,其中,在該上位機重新定義進入該加載模式的該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線的步驟中包括: 該上位機取該至少一該待加載器晶片與其連接的該主控制器晶片之間的該些可控物理連線其中之一用於並行時鐘; 該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線中位元組的整數倍的該些可控物理連線用於並行接收該加載文件的數據;以及 該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線中剩餘的該些可控物理連線用於並行接收該幀計數。
  8. 依據申請專利範圍第7項所述之基於邊界掃描的在線級聯加載韌體方法,其中,當該上位機取該至少一該待加載晶片與其連接的該主控制器晶片之間的該些可控物理連線中M條該可控物理連線用於並行接收該幀計數時,該幀計數對應的最大值為2 M,該上位機負責自第0個幀開始進行幀計數,當計數次數達到對應的最大值後重新計數。
  9. 依據申請專利範圍第7項所述之基於邊界掃描的在線級聯加載韌體方法,其中,當該至少一該待加載晶片接收到該幀週期時,分別接收該加載文件的數據與該幀計數,並將接收到的該幀計數與其內部計數器的計數值比對,當比對一致時確認接收到的該加載文件的數據有效,將其放入其內部的RAM中。
  10. 依據申請專利範圍第6項所述之基於邊界掃描的在線級聯加載韌體方法,其中,該至少一該待加載晶片在執行該加載程序的過程中,還檢查該幀計數的連續性,當判斷出錯時,則停止接收數據,待應答週期上報狀態請求重傳。
TW108133804A 2019-09-19 2019-09-19 基於邊界掃描的在線級聯加載韌體系統及其方法 TWI699101B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108133804A TWI699101B (zh) 2019-09-19 2019-09-19 基於邊界掃描的在線級聯加載韌體系統及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108133804A TWI699101B (zh) 2019-09-19 2019-09-19 基於邊界掃描的在線級聯加載韌體系統及其方法

Publications (2)

Publication Number Publication Date
TWI699101B true TWI699101B (zh) 2020-07-11
TW202114377A TW202114377A (zh) 2021-04-01

Family

ID=72602120

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108133804A TWI699101B (zh) 2019-09-19 2019-09-19 基於邊界掃描的在線級聯加載韌體系統及其方法

Country Status (1)

Country Link
TW (1) TWI699101B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101894029A (zh) * 2010-06-21 2010-11-24 中兴通讯股份有限公司 一种在线升级复杂可编程逻辑器件的方法及装置
US8621301B2 (en) * 2009-03-04 2013-12-31 Alcatel Lucent Method and apparatus for virtual in-circuit emulation
TWI546692B (zh) * 2011-10-27 2016-08-21 電子戰協會公司 包括與已知電路板資訊有關之電路測試及驗證等特徵的裝置鑑別之系統及方法
CN106647519A (zh) * 2016-12-30 2017-05-10 中国科学技术大学 基于单片机的多功能usb‑jtag接口fpga下载线
CN106775891A (zh) * 2016-12-29 2017-05-31 合肥宏晶微电子科技股份有限公司 一种适用于OTPMemory内实现IAP功能的技术方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8621301B2 (en) * 2009-03-04 2013-12-31 Alcatel Lucent Method and apparatus for virtual in-circuit emulation
CN101894029A (zh) * 2010-06-21 2010-11-24 中兴通讯股份有限公司 一种在线升级复杂可编程逻辑器件的方法及装置
TWI546692B (zh) * 2011-10-27 2016-08-21 電子戰協會公司 包括與已知電路板資訊有關之電路測試及驗證等特徵的裝置鑑別之系統及方法
CN106775891A (zh) * 2016-12-29 2017-05-31 合肥宏晶微电子科技股份有限公司 一种适用于OTPMemory内实现IAP功能的技术方法
CN106647519A (zh) * 2016-12-30 2017-05-10 中国科学技术大学 基于单片机的多功能usb‑jtag接口fpga下载线

Also Published As

Publication number Publication date
TW202114377A (zh) 2021-04-01

Similar Documents

Publication Publication Date Title
CN112463243B (zh) 基于边界扫描的在线级联加载固件系统及其方法
CN107907814B (zh) 一种提高芯片量产测试效率的方法
US8533543B2 (en) System for testing connections between chips
CN110196391B (zh) 基于fpga与dsp架构的数字电路测试装置及方法
WO2012155300A1 (zh) 一种调试龙芯cpu和南北桥芯片的方法和装置
JPH0548494B2 (zh)
CN109710479B (zh) 一种处理方法及第一设备、第二设备
TWI699101B (zh) 基於邊界掃描的在線級聯加載韌體系統及其方法
CN102929651B (zh) 基于芯片阵列的在线加载系统及其方法
CN116243147B (zh) 基于pad功能矩阵的集成控制芯片外设自测试方法及装置
CN111008102B (zh) Fpga加速卡高速接口si测试控制装置、系统及方法
JPS59220821A (ja) コンピユ−タの共有バス制御装置
TW201928386A (zh) 快捷外設互聯標準插槽的檢測系統及其方法
US7610535B2 (en) Boundary scan connector test method capable of fully utilizing test I/O modules
CN200986699Y (zh) 多处理器的开机切换电路
US20230184831A1 (en) Server jtag component adaptive interconnection system and method
CN113849355B (zh) I2c速率自适应调整方法、系统、终端及存储介质
CN104834535A (zh) Soc芯片系统及其开机方法
TWI707355B (zh) 透過記憶體模組內部線路測試記憶體模組之系統及方法
CN201903876U (zh) 支持外部自动测试设备的电路板
CN111459730A (zh) 一种Whitley平台下PCH端参数的调整方法及系统
CN101276285B (zh) 一种电信系统级的烧结方法及系统
CN111813387A (zh) 测试装置及其构建方法以及自动化测试方法
CN116432572A (zh) Fpga原型验证装置及其测试验证方法
CN111723032A (zh) 一种中断管控方法及电子设备