TWI280502B - In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array - Google Patents

In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array Download PDF

Info

Publication number
TWI280502B
TWI280502B TW93133842A TW93133842A TWI280502B TW I280502 B TWI280502 B TW I280502B TW 93133842 A TW93133842 A TW 93133842A TW 93133842 A TW93133842 A TW 93133842A TW I280502 B TWI280502 B TW I280502B
Authority
TW
Taiwan
Prior art keywords
memory
configuration
integrated circuit
configurable logic
array
Prior art date
Application number
TW93133842A
Other languages
English (en)
Other versions
TW200615847A (en
Inventor
Albert Sun
Eric Sheu
Shih-Liang Chen
Original Assignee
Macronix Int Co Ltd
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 Macronix Int Co Ltd filed Critical Macronix Int Co Ltd
Priority to TW93133842A priority Critical patent/TWI280502B/zh
Publication of TW200615847A publication Critical patent/TW200615847A/zh
Application granted granted Critical
Publication of TWI280502B publication Critical patent/TWI280502B/zh

Links

Description

1280502 九、發明說明: 【發明所屬之技術領域】 本發明係有關於一種系統單晶片積體電路與其他包 括嵌入式可配置邏輯陣列作為特定用途或客戶晶片邏輯 的處理器裝置。 【先前技術】 包括例如已知的可程式化邏輯裝置(PLD)及場可程式 化閘極陣列(FPGA)的可配置邏輯陣列,以及更廣為熟知的 可程式化邏輯陣列(PLA),具有愈來愈高密度的設計,配 置此類高密度裝置的技術通常需要特定的邏輯在晶片上 或在與可配置邏輯陣列經系統匯流排溝通的主機處理器 上執行。可配置邏輯陣列核心的配置資料管理需要複雜的 邏輯,參見頒給Lawman的美國專利第6, 049, 222號,配 置裝置用的特定技術限制該技術可應用的環境。 可配置邏輯陣列可經由使用者載入一配置資料以設 定在裝置上的可程式化元件的指定配置,並將配置資料交 付於其中的可程式化配置點以完成使用者指定的功能,例 如場可程式化閘極陣列包括一邏輯元件的陣列及大量可 使用配置資料加以程式化的連線。在晶片中配置資料儲存 於以記憶元件所構成的配置點中,通常以靜態隨機存取記 憶體(SRAM)之類的記憶胞實現,其他可配置邏輯陣列包括 非揮發性配置記憶體,使用唯讀記憶體(ROM)、快閃記憶 體(f lash)或可抹除可程式化唯讀記憶體(EPROM)之類的 1280502 記憶胞實現。 可電荷程式化、非揮發性記憶元件已經被用來作為可 程式化的開關及可配置邏輯陣列中的其他配置點。參見美 國專利第 5, 247, 478 號、第 5, 764, 096 號及第 6, 122, 209 有關可配置邏輯陣列的一個問題係將配置資料載入 安裝在印刷電路板上的晶片或以其他方式結合到功能系 統中。參見美國專利第4, 879, 688號「系統中可程式化的 邏輯裝置」、第5, 995, 744號「可程式化電路的網路裝置」、 弟6,028,445 5虎「場可程式化閘極陣列結構的解碼器構造 與方法」、第6,049,222號「使用嵌入式記憶體配置場可 程式化閘極陣列」以及第6, 102, 963號「具有在系統中程 式化及確認功能之電氣式可抹除及可程式化的非揮發性 整合儲存裝置以支援可程式化邏輯裝置在系統中的在配 置」。 系統單晶片(system-on-a-chip ; SOC)裝置增加了系 統的複雜度,因此S0C系統不易設計且改變費用昂貴。藉 由在處理器核心增加一可配置邏輯陣列與該處理器核心 連接可使得改變及設計較為容易,因此,可配置邏輯陣列 中的邏輯可利用工業上的工具結合可程式化邏輯的使用 而進行配置,同時處理器核心可使用習知的軟體程式技術 而程式化,但是可配置邏輯陣列模組的配置資料管理的問 題依舊存在。系統單晶片技術在複雜系統上遇到的典型問 題即係不易設計且改變費用昂貴,將可配置邏輯陣列與處 1280502 理裔核心結合在一起,邏輯的組合可隨著處理器核心的改 • 良而改變,亦即經由可程式化邏輯陣列的配置工具可達成 、 邏輯的配置。 使系統單晶片在設計上更具彈性以及改良可配置邏 ^ 輯中管理配置的技術有所需求。 : 本發明提供使用嵌入式可配置邏輯的系統單晶片的 設計更大的彈性以及提供可配置邏輯的配置載入。 *【發明内容】 本發明提供一種系統單晶片積體電路,包括一可配置 邏輯陣列、一處理器核心以及一記憶體用以儲存系統單晶 片的任務功能指令與用於經由積體電路上的輸入埠從外 部源載入配置資料到積體電路中的配置載入功能指令,處 理器核心從記憶體中呼叫並執行指令。 在一些實施例中,記憶體亦儲存了配置功能指令以載 Φ 入配置資料到可配置邏輯陣列中的電氣式可程式化配置 點’在另一些實施例中,使用與可配置邏輯陣列結合的專 用邏輯執yf亍配置功能’ 一介面介於處理器核心與晶片中可 配置邏輯陣列或配置邏輯之間以支援配置功能。 — 記憶體包括一記憶陣列以儲存配置載入功能指令,在 * 一實施例中該記憶體為非揮發性記憶體,如唯讀記憶體、 浮動閘極記憶體及氮化金屬氧化半導體(nitride M0S)記 憶體等’同樣地’配置功能指令亦可儲存於該記憶陣列 中,較佳者,配置載入功能指令儲存在可程式化記憶體 1280502 =、使得在電路中可以改變配置載入功能以適應不同配置 - 資料的遠端源以及與遠端源建立溝通管道的協定。 、、經由在晶片上提供配置功能及/或配置載入功能指令 並由處理器核心執行,本發明的系統單晶片積體電路可以 輕易地應用於廣泛的各種希冀可配置邏輯陣列的配置载 : 入的環境中。 任務功能包括達成系統使用任務的特定使用者及/或 _ 特疋用途指令。在使用非揮發性記憶體的實施例中,如高 速靜悲機存取記憶體(high—speed SRAM)或動態隨機存 取記憶體(DRAM),該記憶體包括一記憶陣列以儲存任務功 能指令。在其他的實施例中,儲存任務功能指令的記憶體 包括非揮發性記憶體,如唯讀記憶體、浮動間極記憶體、 • 氮化金屬氧化半導體記憶體或類似的記憶體。在一些實施 . 例中,儲存任務功能指令的記憶體可能包括揮發性與非揮 發性記憶體的組合。 ' 馨 、在另外的實_巾,純巾配置載人及任務功能的配 置載入的指令均儲存於晶片中的非揮發性記憶體,如此, 可配置邏輯陣列的配置資料與任務功能指令二者的載入 可以被寫入位於電路板或其他系統中的系統單晶片裡。 在些實施例中,配置載入功能及/或配置功能包括 使用看門狗計時器的程序,且積體電路中包括與處理器核 心結合在一起的看門狗計時器電路。 可配置邏輯陣列具有一由儲存於可配置邏輯陣列内 的電氣式可程式化配置點中的配置資料所定義的可程式 1280502 =己f,❹電氣式可程式化配置點包括浮動閉極記憶胞 可電荷私式化、非揮發性記憶胞,在可配置邏輯陣 列的配置程序中配置資料會轉移到配置點中。 電路ί::ΐ:Γ” ’可程式化配置記憶體被包含在積體 括從配t/ΐΐι置資料’根據這些實施例’配置功能包 可中轉移配置資料到可配置邏輯陣列中的 地’配置載入功能包括經㈣ 早日日片積體電路中的輪入迨外二欠必、丨f
,1 ^^ T, I 體使用非塏恭f4 二只轭例中,可程式化配置記憶 或並他可I式化記憶胞,例如浮動閘極記憶體 L、他可電何程式化非揮發性記憶體。在—些實施 使,高速靜雜機存取記憶體作為可程式化配置記憶體 以支援可配置邏輯陣列的快速配置改變。同樣地,一; 施例包括非揮發性記憶體與高速揮發性記憶體 j支 援配置資料在晶片上的儲存與處理。 支 在其他的實施例中,處理器核心回應一初始化事件, 例如重置讀彳m置載从配置魏。_ 單晶片積體電路的一個實施例包括一看門狗計時器, 該看門狗計時器的時間間隔引發一初始化事件,該配置載 入功能包括設定看門狗計時器的時間間隔使其適用於從 遠端源接收配置資料的程序,以及若到達時間間隔時則執 行包括重試配置載入功能的初始化功能。 在另外的實施例中,記憶體儲存配置載入功能、任務 功能及配置功能的指令。在諸如此類的實施例中,第一配 置載入功能儲存於免於受配置載人魏而覆寫或修改的 1280502 文保護記憶體中,第一配置載入功能提供一通道以供配置 資料從—預設位置嵌入受保護的記憶體中。第二配置載入 功能儲存於未受保護的記憶體中,用來和配置資料遠端源 溝通’該配置資料可以不在預設位置。假如初始化事件發 生於配置载入操作到改變第二配置載入功能的執行期 間’則第一配置載入功能可以用來回復配置載入操作。
【實施方式】 本發明實施例的詳細說明參考圖1—8。一基本的系統 單晶片積體電路10如圖1所示,包括處理器核心11,例 如已知標準的8051或先進精簡指令集運算器(ARM)模組, 或者’處理器核心11亦可由其他資料處理器核心例如數 位號處理裔核心、南效率精簡指令华運算 (high-performance RISC)處理器核心或其他微處理器或 數位訊號處理器模組所取代或補充,受保護記憶體及 可程式化記憶體14包括在積體電路1〇中,典型的受保護 記憶體13儲存啟動功能及其類似功能的^ 二; 或修改,典型的可程式化記憶體14儲存積體電路^任 務功能指令,輸出/輸入蟑12亦包括在積體 以支援輸入與輸出積體電路1〇的串聯資 料通道其中-個或二者。 "、道及並聯資 时在積體電路10令包括可配置邏輯陣歹" 器核心11,可配置邏輯陣列15使用場可 处 或其他形式的可配置邏輯模組實現 工化閘極陣列 J ®己置邏輯陣列15 1280502 匕括斗夕配置點用以儲存可配置邏輯陣列15的配置資料 • 並定義其功能,典型地,可配置邏輯陣列ι5包含在一系 i 統單晶片積體電路中以支援任務功能及執行特定的邏 輯。根據本發明,受保護記憶體13與可程式化記憶體14 • 其中之一所儲存的指令經由處理器核心11執行,該指令 • 包括邏輯以完成轉移配置資料到可配置邏輯陣列15中的 配置點的配置功能,該指令亦包含邏輯以完成配置載入以 鲁 確疋‘由輸入/輸出埠12從遠端源載入配置資料到積體電 路中的溝通管道。 、 圖2係系統單晶片積體電路1 〇替代實施例之簡化方 塊圖,根據圖2的實施例,在晶片上的處理器核心經由可 配置邏輯陣歹,J 15 &程式段15A實現,程式段15A的配置 貧料儲存在程式段15A中非揮發性配置點或積體電路中受 保護記憶體13内,在本實施例中,根據積體電路的初始 化,配置資料從受保護記憶體13轉移到程式段15A中, • 處理器核心經由可配置邏輯陣列的程式段15A實現,其執 行才曰令類似於習知微處理器核心或其他處理器核心。 圖3係根據本發明的系統單晶片積體電路1〇另一替 代實施例之簡化方塊圖,在圖3的實施例中,一配置記情 ' 體16被包括在晶片中,配置記憶體16儲存可配置邏輯陣 ; 列15的配置資料且該配置資料根據初始化或在處理器核 心11的控制下或其他在晶片上的配置邏輯轉移到可配置 邏輯陣列中,配置記憶體16可使用唯讀記憶體實現,以 確定可配置邏輯陣列在製造過程中具有最小集合的配置 12 1280502 貪料。在另-系統中,配置記憶體16是可程式化的且在 '控制指令經由處理器核心η執行下可利用配置載入功能 、=遠端源载人。在另-系統中,配置記憶體16可結合唯 項記憶體與可程式化記憶體。 • 圖4係根據本發明的系統單晶片積體電路實施例之詳 、、、田功此圖,根據本發明的較佳實施例,所有在單一積體電 路中實施的構成要素如圖4所示,該晶片包括一處理器核 Φ ^ 利用一特定目的的電路或如圖2中所述的可配置邏 ,陣列中的一程式段所實現,處理器核心100包括啟動向 · 里101及計時器102以支援看門狗計時器1〇3,處理器核 心100支援輸入/輸出埠104、至少一中斷線1〇5及其他訊 號輸入與輸出106,在積體電路上的記憶體用以儲存指令 並經由處理器核心100執行,該記憶體包括記憶陣列丨 用以儲存配置操作裝置的指令,其包括配置載入功能及配 置功此以支援在積體電路上的可配置邏輯陣列1 。在一 馨些實轭例中,配置操作裝置包括一初始化功能的執行以回 應一初始化事件,像是經由一中斷訊號或看門狗計時器鲁 103重置所引發的重置。該記憶體尚包括記憶陣列1〇8用 以儲存系統單晶片積體電路的任務功能指令,以及記憶陣 列109用以儲存受保護的功能,包括啟動功能、内電路程 : 式化功能及可配置邏輯陣列配置載入備份功能。記憶陣列 109被保護免於經由一内電路程式化(ICP)功能而覆寫或 修改,並在例如重置事件及内電路程式化程序或配置載入 程序失敗時的初始化功能期間回復系統。 13 1280502 该圮憶體可使用變化多樣的記憶胞技術,包括遮罩式 唯讀記憶體(mask ROM)、快閃記憶體、靜態隨機存取記憶 體以及類似的適合特定實施裝置來實現,典型的受保護記 憶陣列109經由非揮發性記憶體例如遮罩式唯讀記憶體或 快閃記憶體來實現,當經由快閃記憶體或其他電氣式可程 式化記憶體所實現時,邏輯結構可保護記憶陣列1〇9免於 因配置載入的操作或意外而被覆寫或修改。 在積體電路中可配置邏輯陣列11〇如圖4的實施例, 經由一以快閃記憶體為基礎的可配置邏輯陣列來實現,在 以快閃§己憶體為基礎的可配置邏輯陣列中,配置點係為非 揮發性,使得配置資料在重置或斷電時仍會保留下來。 在積體電路中有一介面介於處理器核心100與可配置 邏輯陣列110之間,該介面包括其他在此技術中已知的結 構、資料記錄111、配置記錄112以及計時記錄113,且 $亥資料、配置資料以及計時訊號經由該介面在模組間進行 父換’狀態記錄115經由協議的配置功能確認使用配置資 料的可配置邏輯陣列的配置成功。 處理器核心100可經由如多工器114所示的指令路徑 從包括記憶陣列107、108、109的記憶體中檢索指令,其 他包括如靜態隨機存取記憶體或記錄陣列的記憶體結構 包含在積體電路中’以支援經由處理器核心1 〇 Q或可配置 邏輯陣列110的執行功能。 在圖4的實施例中’配置操作裝置的配置載入功能儲 存於§己憶陣列10 7中’以確疋介於糸統單晶片積體電路與 1280502 配置資料的遠端源之間的溝通管道,該溝通管道藉由輸入 /輸出埠104接收配置資料,該配置資料經由在配置操作 裝置中的配置功能通過配置記錄112到達在可配置邏輯陣 列110中以快閃記憶體為基礎的配置點。 在配置載入演算的過程中發生重置的事件或其他初 始化事件,則配置載入功能將會重新執行。 一内電路程式化(ICP)程式亦可儲存於記憶體中,例 如儲存於受保護的記憶陣列109中或其他位置,用於覆寫 > 或修改配置操作裝置,使得配置載入功能可適用於從使用 者選定的遠端源接收配置資料,根據本發明的這些實施 例,可配置邏輯陣列的配置載入備份功能儲存於受保護的 記憶陣列109中,當儲存於記憶陣列107中的配置操作裝 置發生錯誤時,系統可利用儲存於受保護的記憶陣列109 中的功能回復原狀,根據美國專利第6, 401,221號、第 6, 493, 788號以及第5, 901,330號中所揭露的内電路程式 | 化功能是適合使用的。 圖5係根據本發明的系統單晶片積體電路的替代結 構,相似的構成要素給予圖4中使用的相同編號。根據如 圖5所示的替代結構,可配置邏輯陣列150不需使用以快 ‘ 閃記憶體或其他非揮發性配置點為基礎的可配置邏輯陣 列實現,例如,可配置邏輯陣列150可使用具有以靜態隨 機存取記憶體(SRAM)為基礎的配置點的標準型場可程式 化閘極陣列(FPGA)來實現。 可配置邏輯陣列150的配置資料儲存在非揮發性配置 15 128〇5〇2 資料記憶陣列151中,並由處理器核心100取得積體電路 ’ 的部份記憶體而實現,在本實施例中使用控制電路152作 , 為配置資料記憶陣列151與處理器核心100之間的介面, 在冗憶陣列107中配置操作裝置的配置載入功能用以確定 运端源與配置資料記憶陣列151間的通道,在配置演算過 私中記憶陣列1 〇 7中配置操作裝置的配置功能從配置資料 記憶陣列151經過處理器核心1〇〇轉移配置資料到可配置 • 邏輯陣列15〇。 圖6係根據本發明的系統單晶片積體電路的替代結 籲 構’相似的構成要素給予圖5中使用的相同編號。根據如 圖6所示的替代結構,可配置邏輯陣列ι6〇可使用可程式 化邏輯裝置(PLD)模組來實現,可配置邏輯陣列ι6〇的配 置資料儲存在非揮發性配置資料記憶陣列161中,並由處 理器核心1〇〇取得積體電路的部份記憶體而實現,控制電 路16 2作為配置貧料記憶陣列161與可配置邏輯陣列16 〇 • 之間的介面,使得記憶陣列107的配置功能直接經由配置 功月b專用的資料路徑17〇、171從配置資料記憶陣列ία 籲 轉移配置資料到可配置邏輯陣列16〇中,資料路徑17〇、 171可使用寬頻並聯資料路徑或其他適用於配置功能之高 速、特別配置的資料路徑來實現,在本實施例中,記憶陣 _ 列107中的配置功能可以簡化或忽略,且其更多的功能由 控制電路162來達成。 在記憶陣列107中配置操作裝置的配置載入功能用以 確定遠端源與配置資料記憶陣列161間的通道。 16 1280502 圖7係根據本發明的系統單晶片積體電路的替代結 構,相似的構成要素給予圖6中使用的相同編號。根據如 圖7所示的替代結構,記憶體增加一記憶陣列172用以儲 存加密/解密功能及壓縮/解壓縮功能指令其中至少之 一,根據如圖7所示的實施例,配置載入功能確定一遠端 源與配置資料記憶陣列161間的通道,配置資料以加密形 式、壓縮形式或加密及壓縮形式從遠端源接收,當載入配 置資料到配置資料記憶陣列161時,配置載入功能從記憶 陣列172中進行解密及/或解壓縮功能,或者,當轉移配 置資料到可配置邏輯陣列中的配置點時,配置載入功能從 記憶陣列172中進行解密及/或解壓縮功能,增加的記憶 陣列17 2儲存加密/解密功能及壓縮/解壓縮功能其中至少 之一,以用於不同的系統單晶片積體電路的實施例,包括 如圖4及圖5所示之實施例。 圖8係一些與本發明觀點相同的内電路程式化及配置 載入的容錯系統之主要功能構成要素的方塊圖,一系統單 晶片積體電路包括一處理器核心(CPU)212及一可配置邏 輯陣列251。内電路程式化程序及配置載入系統包括非揮 發記憶體200、隨機存取記憶體(RAM)208、CPU 212及周 邊裝置214。該内電路程式化程序及配置載入系統亦包括 容錯系統的構成要素,包括跳躍啟動向量216、多工器 (MUX)210、内電路程式化/配置載入(ICP/CL)狀態218、遠 端主機地址記錄220及ICP/CL看門狗222。 更明確地,CPU 212係任何形式的處理系統,包括微 17 1280502 控制器、微處理器或數位訊號處理器。CPU 212與RAM 208 結合在-起且隨機存取記憶體所包含的編碼及資料經由 CPU—212執行’此外’⑽212亦經過由麵2iq所表示 的資料路徑與非揮發性記憶體2〇〇結合在一起。
非揮么H。己知體2〇〇係當系統斷電時仍可保存資料的 任何形式的記憶體,包括快閃記憶體、可抹除可程式化唯 讀記憶體(ΕΡ_、電氣式可抹除可程式化唯讀記憶體 (EEPR0M)及唯讀記憶體,非揮發性記憶體2〇〇包括啟動程 式202、公用程式2〇4、内電路程式化⑽)操作褒置挪、 配置操作裝置250以及微啟動碼207。啟動程式2G2包括 在系統初始化的程序中執行程式的收集以將系統的硬體 及軟體貧源初始化,啟動程式2〇2儲存於可程式化記憶體 中並可在配置载人的過程中被修正。非揮發性記憶體2〇〇 亦包括公用程式204,該公用程式2Q4在系統的演算過程 :包括許多程式經由CpU 212執行以完成任務功能,公用 程式2G4亦可被包含於經㈣電路程式化獻程序中可被 程式化的記憶體中。非揮發性記憶體亦包括配置操作 裝置250以進行系統的配置載入功能且其可被包含於經由 配置载入程序中可被程式化的記憶體中,非揮發性記憶體 。中所包括的配置操作裝f 25〇可被包含於經由内電路 程式化程序中可被程式化的記憶體中。配置操作裝置烈〇 所執行的功能如之前圖4-7所述。 非揮發性記憶體2〇〇同時包括位於受保 微啟動碼m,微啟動碼2〇7在相同内電路正常㈣程】 18 1280502 程序與配置操作裝置程式中不會被修改,微 替代系統初始化指令以完成許多如啟動程式可 能’然而’當有-個可能由啟動程式2〇2引起 於内電路程式化程序中,即1CP操作裝置206 “置操作 裝置250失敗及不穩定時,微啟動 3 - "丸 ra a 去 /、疋—個跳脫的 灯為,口此,魏動石馬2〇7必須儲存在㈣内電路 動程式的程式化過程巾*會被修改的記憶體巾。在 的-個實施例中,當啟動程式2Q2、公用程式2料、酉^置 操作裝置250及ICP操作裝置2_存在可程式化快閃纪 憶體時,微啟動碼207儲存在遮罩式唯讀記憶體中。' 在ICP程序巾,cpu 212㈣結合硬體構成要素以幫 助谷錯CPU 212結合MUX 210作為非揮發性記憶體2〇〇 及跳躍啟動向量216的輸入且控制從ICP/CL狀態218的 輸入,MUX 210視ICP/CL狀態218的狀況選擇性切換cpu 212於跳躍啟動向量216及非揮發性記憶體2〇〇之間,若 ICP/CL狀態218是髒的,表示之前的ICP演算或演算修正 配置載入運算沒有完成,則CPU 212在系統初始化的程序 中輸入一個跳躍指令給啟動向量216以指向微啟動碼 207,另一方面,若ICP/CL狀態218是乾淨的,表示沒有 配置載入運算在進行,則CPU 212在系統初始化的程序中 輸入非揮發性記憶體200的初始載入,CPU 212同時結合 遠端主機地址記錄220並包含備份遠端主機地址,避免在 内電路程式化程序中發生系統重置,CPU 212亦透過讀/ 寫路徑230及重置線232與ICP/CL看門狗222結合, 1280502 ICP/CL看門狗222包括到期週期(timeout period)記錄 • 226及計時器224與匹配邏輯228,計時器224及到期週 , 期記錄226二者可透過讀/寫路徑230經由CPU 212而被 初始化,當計時器224的值與到期週期記錄226相同時, : 匹配邏輯228引發一個重置訊號經由重置線232傳送到 - CPU 212。在一實施例中,上述提到的硬體構成要素提供 的容錯包括保護可程式化記憶元件免受内電路程式化程 序的影響。 * 此外,CPU 212結合周邊裝置214,包括連接系統使 用者的輸入及輸出裝置,如圖中周邊裝置214左邊的雙箭 號所示’周邊裝置214亦包括一介面通過周邊裝置214與 網際網路234、或其他溝通管道或網路結合。網際網路234 本身結合了遠端主機236、238及240,遠端主機238結合 了包含新版本的啟動及公用程式的磁碟片242,包括例如 新的内電路程式化功能或新的配置載入功能並經由網際 φ 網路234下載到系統中。 配置载入程序通常運作如下,首先CPU 212透過周邊 裝置214與使用者244連接,使用者244引發CPU 212開 始執行配置操作裝置250進行配置載入程序,配置操作裝 • 置250引發通過周邊裝置214到網際網路234及通過網際 網路234到遠端主機238之間的連接,接著遠端主機238 開始從磁碟片242通過網際網路234下載資料到非揮發性 記憶體200中,同時資料開始轉移、在ICP/CL看門狗222 中的到期週期記錄226設定一估計值及計時器224開始計 1280502 時。 _ 若配置載入程序進行順利,則本發明的容錯特徵為非 活性化的,另一方面’若在配置載入程序中發生過度延 遲,則計時器224最終將與到期週期記錄226相同而引發 : 一重置訊號經由重置線232到達CPU 212,並引發CPU 212 ; 開始進行一連串的啟動。若系統在配置載入程序中重新啟 動,則ICP/CL狀態218設定為髒的值,因而引發MUX 210 直接跳躍啟動向量216到CPU 212中,使得微啟動碼2〇7 鲁代替啟動程式202引發CPU 212啟動。若ICP/CL狀態218籲 設定為乾淨的值,表示配置載入程序已全部完成且MUX 210從啟動程式202引發CPU 212啟動。 微啟動碼207引發CPU 212重新開始配置載入程序, 係經由從遠端主機地址記錄220的第一個讀取值決定遠端 主機的連接以重新開始配置載入程序,然後配置載入程序 即重新開始。在另一實施例中,微啟動碼2〇7包括一配置 • 載入程式化的設計,用以從預設位置存取配置資料的設 定,例如晶片中的非揮發性記憶體或經由連接一預定的主 機與系統單晶片積體電路結合。 ICP耘序通常運作如下,首先CPU 212透過周邊装置 214與使用者244連接’ 一些非典型系統單.晶片積體電路 係經由輸入/輸出埠而與使用者連接,使用者⑽引發咖 212開始執行1CP操作裝置206進行iCP程序,ICP操作 裝置206引發通過周邊裝置214到網際網路辦及通過網 際網路234 #遠端主機238之間的連接,接著遠端主機咖 21 1280502 開始從磁碟片242通過網際網路234下載資料到非揮發性 - 記憶體200中,同時資料開始轉移、在ICP/CL看門狗222 . 中的到期週期記錄226設定一估計值及計時器224開始 〇 口 口 _ 若ICP程序進行順利,則本發明的容錯特徵為非活性 _ 化的,另一方面,若在ICP程序中發生過度延遲,則計時 器224最終將與到期週期記錄226相同而引發一重置訊號 φ 經由重置線232到達CPU 212,並引發CPU 212開始進行 一連串的啟動。若系統在icp程序中重新啟動,則iCp/CL _ 狀態218設定為髒的值,因而引發MUX 21〇直接跳躍啟動 向量216到CPU 212中,使得微啟動碼207代替啟動程式 202引發CPU 212啟動。若ICP/CL狀態218設定為乾淨^ 值,表示ICP程序已全部完成,且MUX210從啟動程式2〇2 引發CPU 212啟動。 微啟動碼207引發CPU 212重新開始ICP程序,係|<τ< φ 由從遠端主機地址記錄220的第一個讀取值決定遠端主機 的連接以重新開始ICP程序,然後ICP程序即重新開始。鲁 在一些實施例中,ICP程序可以覆寫或修改配置操作 裝置250,在這些實施例中,ICP程序首先備份配置操作 裝置250到非揮發性記憶體中以確定在系統單晶片上配置 載入的二份備份’其中一份備份是修改過的,若修改完全 成功則另一份備份會被刪除,不過,若修改沒有完全成功 則配置操作裝置的安全備份可用來回復系統操作。 以上對於本發明之較佳實施例所作的敘述係為闡明 22 1280502 之目的,而無意㈣本發明精確地為所揭露的形式,基於 以上的教導或從本發明的實施例學&^作修改或變化是 可能的’實施例係為解說本發明的原理以及讓熟f該項技 術者以各種實施制用本發明在實際制上而選擇及敛 述’本發明的技術思想企圖由訂㈣請專職圍及其均 【圖式簡單說明】 對於熟習本技藝之人士而言’從以下所作的詳細敘述^ 配5伴隨的圖式,本發明將能夠更清楚地被瞭解,其上述 及其他目的及優點將會變得更明顯,其中·· 圖1係根據本發明的系統單晶片積 例之簡化方塊圖; 只施 圖2係根據本發明的系統單晶片積體電路的另一實施 例之簡化方塊圖; 、 圖3係根據本發明的系統單晶片積體電路的又一實施 例之簡化方塊圖; 、 鲁 圖4係根據本發明的系統單晶片積體電路之較詳細的 功能示意圖; η。圖5係根據本發明在晶片上包括配置資料記憶體的系 、、先早晶片積體電路的一個實施例之功能示意圖; 时圖6係根據本發明在晶片上包括配置資料記憶體的系 統早晶片積體電路的另一實施例之功能示意圖; 圖7係根據本發明在晶片上包括配置資料記憶體並支 23 1280502 援加密/解密及/或壓縮/解壓縮的系統單晶片積體電路的 一個實施例之功能示意圖;以及 圖8係根據本發明所提供系統單晶片積體電路環境部 署的理論圖,其中配置資料由遠端源提供且系統單晶片積 體電路允許配置載入功能的配置載入,以建立與遠端源的 溝通管道。 【主要元件符號說明】 10 系統單晶片積體電路 11 處理器核心 12 輸入/輸出埠 13 受保護記憶體 14 可程式化記憶體 15 可配置邏輯陣列 15A可配置邏輯陣列的程式段 16 配置記憶體 100處理器核心 101啟動向量 102計時器 103看門狗計時器 104輸入/輸出埠 105中斷線 106其他訊號輸入與輸出 107記憶陣列 24 1280502 108記憶陣列 109記憶陣列 110可配置邏輯陣列 111資料記錄 112配置記錄 113計時記錄 114多工器 115狀態記錄
150可配置邏輯陣列 151配置資料記憶陣列 152控制電路 160可配置邏輯陣列 161配置資料記憶陣列 162控制電路 170資料路徑
171資料路徑 172記憶陣列 200非揮發性記憶體 202啟動程式 204公用程式 206内電路程式化操作裝置 208隨機存取記憶體 210多工器 212處理器核心(CPU) 25 1280502 214周邊裝置 216跳躍啟動向量 218内電路程式化/配置載入狀態 220遠端主機地址記錄 222内電路程式化/配置載入看門狗 _ 224計時器 226到期週期記錄 228匹配邏輯 B 230讀/寫路徑 232重置線 234網際網路 236遠端主機 238遠端主機 2 4 0遠端主機 242磁碟片 p 244使用者 250配置操作裝置 251可配置邏輯陣列 26

Claims (1)

1280502 十、申請專利範圍: I 一種積體電路,包括·· 輪入埠,用以從外部源接收資料到該積體電路中; 可配置邏輯陣列具有經由儲存於該可配置邏輯陣 列中電氣式可程式化配置點的配置資料所定義的 可程式化配置; 一記憶體用以儲存該積體電路中任務功能指令及儲 存用於轉移該配置資料到該可配置邏輯陣列中的 可私式化配置點以回應一初始化事件的初始化功 能;以及 與孩圯k體耦合的處理器核心用以從該記憶體中 取得並執行指令。 、2·如申请專利範圍第1項之積體電路,更包括一可 程式化配置記憶體在該積體電路中以儲存該配置資料,其 :該初始化功能從該可程式化配置記憶體中轉移該配置 資料到該可配置邏輯陣列中。 3.如申請專利範圍第丨項之積體電路,其中該記憶 體包括非揮發性儲存裝置。 4·如申請專利範圍第1項之積體電路,其中該記憶 體包括浮動閘極記憶儲存裝置。 5. 如申請專利範圍第1項之積體電路,其中該記憶 體包括唯讀記憶儲存裝置。 6. 如申請專利範圍第!項之積體電路,其中該記憶 體包括用於該初始化功能的第—非揮發性儲存裝置及用 27 1280502 於該任務功能指令的第二儲存裝置。 7·如申請專利範圍第1項之積體電路,其中該記憶 體包括用於該初始化功能的第一揮發性儲存裝置及用於 該任務功能指令的第二儲存裝置。 、 8·如申請專利範圍第1項之積體電路,更包括一與 該處理H核4合的看Η狗料H,其中該初始化功能包 括使用該看門狗計時器因應錯誤而產生該初始化事件以 及根據該初始化事件重新執行該初始化功能。 9. 如申請專利範圍第!項之積體電路,更包括一與鲁 該處理器核心麵合的看門狗計時器,其中該初始化功能包 括經由在该積體電路上的輸入埠載入該配置資料到該積 體電路中’以及使用該看門狗計時器因應錯誤而產生該初 始化事件並根據該初始化事件重新經由該輸入谭載入該 配置資料。 10. 如申請專利範圍第i項之積體電路,其中該初始 化功能包括經由該積體電路上的該輸人璋接收加密的配 置資料以及將該配置資料進行解密。 _ η·如申請專利範圍第1項之積體電路,其中該初始 化功能包括經由該積體電路上的該輸入琿接收壓縮的配 置資料以及將該配置資料進行解壓縮。 12.、如申δ月專利範圍第1項之積體電路,其中該電氣 式可私式化配置點包括非揮發性、可電荷程式化記憶胞。 13·如中Μ專利_第1項之積體電路’其中該電氣 式可程式化配置點包括非揮發性、可程式化記憶胞。 28 1280502 14.如申請專利範圍第i項之積體電路,更包括一介 面介於該處理ϋ核心及該可配置邏輯陣列之間以支援該 初始化功能。 i5.如申請專利範圍第丄項之積體電路,其中該記憶 體儲存-内電路程式化魏以寫人或修改該初始化功能。 |*勺1!·如^月專利犯圍第1項之積體電路,其中該記憶 的第一記憶陣列用以儲存備份配置載入
…及一第二記憶陣列用以儲存該初始化功 月匕’该弟一 §己憶陣列被保護免於經— 而被改變以及該第二記㈣列可《 、路%式化功能 能而寫人或修改。 I _電路程式化功 η.如申請專利範圍第!項之積體電路 态核心包括一被配置的可配置邏輯陣 /、甲β慝理 巧以執行該指令。
29 1280502 七、指定代表圖: (一) 本案指定代表圖為:第(4 )圖。 (二) 本代表圖之元件符號簡單說明: 100處理器核心 101啟動向量 102計時器 103看門狗計時器 104輸入/輸出埠 > 105中斷線 106其他訊號輸入與輸出 107記憶陣列 108記憶陣列 109記憶陣列 110可配置邏輯陣列 111貧料記錄 I 112配置記錄 113計時記錄 114多工器 115狀態記錄 八、本案若有化學式時,請揭示最能顯示發明特徵的化學式:
TW93133842A 2004-11-05 2004-11-05 In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array TWI280502B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW93133842A TWI280502B (en) 2004-11-05 2004-11-05 In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW93133842A TWI280502B (en) 2004-11-05 2004-11-05 In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array

Publications (2)

Publication Number Publication Date
TW200615847A TW200615847A (en) 2006-05-16
TWI280502B true TWI280502B (en) 2007-05-01

Family

ID=38742518

Family Applications (1)

Application Number Title Priority Date Filing Date
TW93133842A TWI280502B (en) 2004-11-05 2004-11-05 In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array

Country Status (1)

Country Link
TW (1) TWI280502B (zh)

Also Published As

Publication number Publication date
TW200615847A (en) 2006-05-16

Similar Documents

Publication Publication Date Title
EP1536332B1 (en) Programmable configuration integrated circuit
TWI275929B (en) Apparatus and method for restoring working context
US6282675B1 (en) Fault-tolerant architecture for in-circuit programming
JP4040026B2 (ja) 内蔵型設定可能ロジックアレイのための回路内設定構造
US6145020A (en) Microcontroller incorporating an enhanced peripheral controller for automatic updating the configuration date of multiple peripherals by using a ferroelectric memory array
US7797610B1 (en) Method and apparatus for virtual quad-port random access memory
US6172520B1 (en) FPGA system with user-programmable configuration ports and method for reconfiguring the FPGA
JP4659371B2 (ja) 内蔵型設定可能ロジックアレイのための不揮発性メモリ付、回路内設定構造
US20050050245A1 (en) Direct memory access from host without processor intervention
US7631223B1 (en) Programmable logic device methods and system for providing multi-boot configuration data support
JPH05143319A (ja) コンピユータ
JP2013168169A (ja) メモリ・デバイス、メモリ・デバイスを有するシステム、及び埋め込み型デバイスの動作方法
JP2000020305A5 (zh)
US7930535B1 (en) Method and apparatus for loading configuration data
JPH048809B2 (zh)
WO2002008913A2 (en) Memory resource arbitrator for multiple gate arrays
TWI280502B (en) In-circuit configuration architecture with configuration on initialization function for embedded configurable logic array
JP4136309B2 (ja) インサーキット・プログラミングための障害の許容アーキテクチャ
TWI259396B (en) In-circuit configuration architecture and method for embedded configurable logic array
TWI257571B (en) In-circuit configuration architecture with non-volatile configuration store for embedded configurable logic array
EP2600528A2 (en) Logic device having a compressed configuration image stored on an internal read only memory
Nguyen et al. Reconfiguration control networks for FPGA-based TMR systems with modular error recovery
JP4132516B2 (ja) フィールド・プログラマブル・ゲートアレイ
TWI758865B (zh) 基本輸入輸出系統選項修改方法、系統及裝置
JP2015005844A (ja) 再構成可能素子、再構成装置及び再構成方法