第3部分+CPLD_FPGA結(jié)構(gòu)原理_第1頁
第3部分+CPLD_FPGA結(jié)構(gòu)原理_第2頁
第3部分+CPLD_FPGA結(jié)構(gòu)原理_第3頁
第3部分+CPLD_FPGA結(jié)構(gòu)原理_第4頁
第3部分+CPLD_FPGA結(jié)構(gòu)原理_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、主講:羅韓君主講:羅韓君郵箱:手機:158956151822016-2017學年第二學期電氣與自動化工程學院電氣與自動化工程學院 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2 2 頁頁時序電路組合電路數(shù)字電路組合電路組合電路:在邏輯上總是當前輸入狀態(tài)的函數(shù);在邏輯上總是當前輸入狀態(tài)的函數(shù);時序電路時序電路:其輸出是當前系統(tǒng)狀態(tài)與當前輸入狀態(tài)的其輸出是當前系統(tǒng)狀態(tài)與當前輸入狀態(tài)的函數(shù)函數(shù),它含有存儲單元它含有存儲單元. 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3 3 頁頁主要內(nèi)容主要內(nèi)容一、一、 PLD 概述概述二、二、 簡單簡單PLD結(jié)構(gòu)原理結(jié)構(gòu)原理三、三、 CPLD

2、 結(jié)構(gòu)原理結(jié)構(gòu)原理四、四、 FPGA的結(jié)構(gòu)原理的結(jié)構(gòu)原理五、五、 硬件測試硬件測試六、六、 CPLD/FPGA的編程和配置的編程和配置 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4 4 頁頁輸入緩沖電路與陣列或陣列輸出緩沖電路輸入輸出 基本基本PLD器件的原理結(jié)構(gòu)圖器件的原理結(jié)構(gòu)圖1、基本概念、基本概念一、PLD概述 可編程邏輯器件(可編程邏輯器件(Programmable Logic Device)簡)簡稱稱PLD,是由,是由“與與”陣列陣列和和“或或”陣列陣列組成,能有組成,能有效的以效的以“積之和積之和”的形式實現(xiàn)布爾邏輯函數(shù)。的形式實現(xiàn)布爾邏輯函數(shù)。 常熟理工學院電氣與自動

3、化工程學院EDA 電子教案第第 5 5 頁頁2、 PLD的發(fā)展歷程的發(fā)展歷程70年代年代80年代年代90年代年代PROM 和和PLA 器件器件改進的改進的 PLA 器件器件GAL器件器件FPGA器件器件EPLD 器件器件CPLD器件器件內(nèi)嵌復(fù)雜內(nèi)嵌復(fù)雜功能模塊功能模塊的的SoPC 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6 6 頁頁3 3、PLDPLD的分類的分類基本類型基本類型. 可編程可編程只讀存儲器只讀存儲器PROM. 可編程可編程邏輯陣列邏輯陣列PLA. 可編程可編程陣列邏輯陣列邏輯PAL. 通用陣列邏輯通用陣列邏輯GALCPLD/FPGA復(fù)雜類型復(fù)雜類型 可編程邏輯器件

4、(PLD) 簡單 PLD 復(fù)雜 PLD PROM PAL PLA GAL CPLD FPGA 按集成度按集成度(PLD)分類分類 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 7 7 頁頁 可編程邏輯器件從可編程邏輯器件從結(jié)構(gòu)上區(qū)分結(jié)構(gòu)上區(qū)分,可分為可分為乘積項結(jié)構(gòu)器件乘積項結(jié)構(gòu)器件和和查找表結(jié)構(gòu)器件查找表結(jié)構(gòu)器件. 可編程邏輯器件從可編程邏輯器件從編程工藝編程工藝上劃分上劃分,可分為一次性可可分為一次性可編程器件編程器件(OTP)器件和多次性可編程器件器件器件和多次性可編程器件器件. 一次性可編程器件一次性可編程器件(OTP)器件器件又分為熔絲型器件又分為熔絲型器件(如如早期的早期的

5、PROM)和反熔絲型器件和反熔絲型器件(如如Actel公司的公司的FPGA器件器件) 多次性可編程器件器件多次性可編程器件器件又分為紫外線擦除電可編程又分為紫外線擦除電可編程器件器件(EPROM),電可擦寫編程器件電可擦寫編程器件(EEPROM),SROM查找查找表結(jié)構(gòu)器件和表結(jié)構(gòu)器件和Flash型器件型器件. 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 8 8 頁頁1、 邏輯元件符號表示邏輯元件符號表示 二、簡單PLD結(jié)構(gòu)原理 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 9 9 頁頁 PLD的互補緩沖器的互補緩沖器 PLD的互補輸入的互補輸入 PLD中與陣列表示中與陣列表

6、示 PLD中或陣列的表示中或陣列的表示 陣列線連接表示陣列線連接表示 2、邏輯元件符號表示、邏輯元件符號表示 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1010 頁頁地 址譯 碼 器存 儲 單 元陣 列0A1A1nA0W1W1pW0F1F1mFnp2PROM基本結(jié)構(gòu):基本結(jié)構(gòu):0111201110110.AAAWAAAWAAAWnnnn其邏輯函數(shù)是:其邏輯函數(shù)是:3、可編程只讀存儲器、可編程只讀存儲器PROM結(jié)構(gòu)原理結(jié)構(gòu)原理 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1111 頁頁PROM的邏輯陣列結(jié)構(gòu)的邏輯陣列結(jié)構(gòu)與陣列(不可編程)或陣列(可編程)0A1A1nA0W1

7、W1pW0F1F1mFnp201,011, 111, 1101 ,011 , 111 , 1100,010, 110, 10WMWMWMFWMWMWMFWMWMWMFmmpmpmpppp邏輯函數(shù)表示:邏輯函數(shù)表示: 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1212 頁頁PROM表達的表達的PLD圖陣列圖陣列與陣列(固定)或陣列(可編程)0A1A1A1A0A0A1F0F用用PROM完成半加器邏輯陣列完成半加器邏輯陣列與 陣 列 ( 固 定 )或 陣 列( 可 編 程 )0A1A1A1A0A0A1F0F01110100AAFAAAAF 常熟理工學院電氣與自動化工程學院EDA 電子教案

8、第第 1313 頁頁PROM內(nèi)部結(jié)構(gòu)為內(nèi)部結(jié)構(gòu)為“與與”陣列固定,陣列固定,“或或”陣列可編陣列可編程。程。2N輸入組合輸入組合查表輸出查表輸出 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1414 頁頁PLA邏輯陣邏輯陣列示意圖列示意圖與陣列(可編程)或陣列(可編程)0A1A1A1A0A0A1F0F4、可編程邏輯陣列、可編程邏輯陣列PLA結(jié)構(gòu)原理結(jié)構(gòu)原理 PLA內(nèi)部結(jié)構(gòu)為內(nèi)部結(jié)構(gòu)為“與與”、“或或”陣列皆可編陣列皆可編程程。2N乘積線乘積線編程編程輸出輸出 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1515 頁頁 PLA與與 PROM的比較:的比較: 0A1A1F0F2

9、A2F0A1A1F0F2A2FPLA與或陣與或陣列皆可編程列皆可編程PROM與陣列固定與陣列固定,或陣列可編程,或陣列可編程 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1616 頁頁0A1A1F0F0A1A1F0FPAL結(jié)構(gòu):結(jié)構(gòu):PAL的常用表示:的常用表示:5、可編程陣列邏輯可編程陣列邏輯PAL結(jié)構(gòu)原理結(jié)構(gòu)原理 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1717 頁頁CPLD技術(shù)及應(yīng)用技術(shù)及應(yīng)用教學課件教學課件 PAL內(nèi)部結(jié)構(gòu)為內(nèi)部結(jié)構(gòu)為“與與”陣列可編程,陣列可編程,“或或”陣列固定陣列固定。2N乘積線乘積線輸出組合輸出組合 常熟理工學院電氣與自動化工程學院EDA

10、 電子教案第第 1818 頁頁2.2.4 PAL結(jié)構(gòu)原理結(jié)構(gòu)原理 PAL16V8的部分結(jié)構(gòu)圖的部分結(jié)構(gòu)圖 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 1919 頁頁應(yīng)用實例應(yīng)用實例給出邏輯方程如下:給出邏輯方程如下:Q0=I0 + NOT(I1) I2Q1=NOT(I0) I2 +NOT(I1)I2Q2=NOT(I0) I1 +NOT(I1)I2 +NOT(I2)I0思考:如何實現(xiàn)?思考:如何實現(xiàn)?答案:此款芯片不能滿足答案:此款芯片不能滿足Q2設(shè)計需要?設(shè)計需要?I2I1I0Q0Q1Q2 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2020 頁頁6、通用陣列邏輯通用陣列邏

11、輯GALGAL器件與器件與PAL器件具有相同的內(nèi)部結(jié)構(gòu),但靠器件具有相同的內(nèi)部結(jié)構(gòu),但靠各種特性組合而被區(qū)別。各種特性組合而被區(qū)別。GAL是美國是美國晶格半導(dǎo)體晶格半導(dǎo)體公司(公司(Lattice)為它的)為它的可編程邏輯器件注冊的專用商標名稱??删幊踢壿嬈骷缘膶S蒙虡嗣Q。輸出邏輯宏單元輸出邏輯宏單元OLMC(Output Logic Macro Cell) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2121 頁頁輸出邏輯宏單元輸出邏輯宏單元OLMC(Output Logic Macro Cell)一般邏輯器件一般邏輯器件舉例:舉例:GAL16V8GAL器件器件作為一種通用的

12、可編程邏輯作為一種通用的可編程邏輯器件,除了器件,除了“與與”陣列可編陣列可編程改寫,還對輸出端口設(shè)計程改寫,還對輸出端口設(shè)計了了可重新改變結(jié)構(gòu)和功能可重新改變結(jié)構(gòu)和功能的的輸出邏輯宏單元。輸出邏輯宏單元。輸出口大多表現(xiàn)為緩沖器輸出口大多表現(xiàn)為緩沖器/驅(qū)驅(qū)動器,一旦器件定型,用戶動器,一旦器件定型,用戶不能對它作任何改變不能對它作任何改變。 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2222 頁頁邏輯宏單元輸入/輸出口輸入口時鐘信號輸入三態(tài)控制可編程與陣列固定或陣列GAL16V8 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2323 頁頁CPLDComplicated P

13、rogrammable Logic DeviceI/OFBFBI/O互連互連 矩陣矩陣FBFB結(jié)構(gòu)框圖結(jié)構(gòu)框圖三、復(fù)雜可編程邏輯器件CPLD 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2424 頁頁三大部分:三大部分: I/O塊,塊,F(xiàn)B(功能塊)和互連矩陣。(功能塊)和互連矩陣。組成組成特點特點CPLD延伸出延伸出2個發(fā)展趨勢:個發(fā)展趨勢:可擦除可擦除PLD和和現(xiàn)場可編現(xiàn)場可編程門陣列程門陣列FPGA。CPLD是由是由PAL或或GAL發(fā)展而來,是由可編程邏輯發(fā)展而來,是由可編程邏輯的功能塊圍繞一個位于中心和的功能塊圍繞一個位于中心和延時固定延時固定的可編程互的可編程互連矩陣構(gòu)成。

14、連矩陣構(gòu)成。不采用分段互連方式,具有較大的時間可預(yù)測性。不采用分段互連方式,具有較大的時間可預(yù)測性。采用采用EEPROM工藝工藝 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2525 頁頁MAX7000系列的單個宏單元結(jié)構(gòu)系列的單個宏單元結(jié)構(gòu) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2626 頁頁MAX7128S的結(jié)構(gòu)的結(jié)構(gòu) 1邏輯陣列塊邏輯陣列塊(LAB) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2727 頁頁2宏單元宏單元 MAX7000系列中的宏單元系列中的宏單元 三種時鐘輸入模式三種時鐘輸入模式 全局時鐘信號全局時鐘信號 全局時鐘信號由高電平有效的

15、時鐘信號使能全局時鐘信號由高電平有效的時鐘信號使能 用乘積項實現(xiàn)一個陣列時鐘用乘積項實現(xiàn)一個陣列時鐘 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2828 頁頁3擴展乘積項擴展乘積項 (1)共享擴展項)共享擴展項 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 2929 頁頁 并聯(lián)擴展項饋送方式并聯(lián)擴展項饋送方式(2)并聯(lián)擴展項)并聯(lián)擴展項 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3030 頁頁4可編程連線陣列可編程連線陣列(PIA) PIA信號布線到信號布線到LAB的方式的方式 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3131 頁頁5I/O控制塊控

16、制塊 EPM7128S器件的器件的I/O控制塊控制塊 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3232 頁頁FPGAField Programmable Gate ArrayFPGA內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)可編程可編程I/O可編程單元可編程單元可編程布線可編程布線四、現(xiàn)場可編程門陣列FPGA 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3333 頁頁FPGA現(xiàn)場可編程門陣列通常由現(xiàn)場可編程門陣列通常由布線資源布線資源圍繞的圍繞的可可編程單元編程單元(或宏單元)構(gòu)成陣列,又由(或宏單元)構(gòu)成陣列,又由可編程可編程I/O單元單元圍繞陣列構(gòu)成整個芯片。圍繞陣列構(gòu)成整個芯片??删幊踢壿?/p>

17、功能塊可編程邏輯功能塊CLB實現(xiàn)用戶功能的基本單元。實現(xiàn)用戶功能的基本單元??删幊炭删幊蘄/O單元單元完成芯片上邏輯與外部封裝腳的接口,常分布在完成芯片上邏輯與外部封裝腳的接口,常分布在CLB的四周的四周可編程互連可編程互連PI采用采用SRAM工藝工藝包括各種長度的連線和可編程連接開關(guān),將邏輯塊與輸入包括各種長度的連線和可編程連接開關(guān),將邏輯塊與輸入/輸出塊連接起來,構(gòu)成特定的電路輸出塊連接起來,構(gòu)成特定的電路 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3434 頁頁0000010100000101161RAM輸入A輸入B輸入C輸入D查找表輸出多路選擇器FPGA查找表單元內(nèi)部結(jié)構(gòu)查

18、找表單元內(nèi)部結(jié)構(gòu)查 找 表LUT輸 入 1輸 入 2輸 入 3輸 入 4輸 出FPGA查找表單元:查找表單元: 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3535 頁頁 一個一個N輸入查找表輸入查找表 (LUT,Look Up Table)可以實現(xiàn)可以實現(xiàn)N個輸入變個輸入變量的任何邏輯功能,如量的任何邏輯功能,如 N輸入輸入“與與”、 N輸入輸入“異或異或”等。等。 輸入多于輸入多于N個的函數(shù)、方程必須分開用幾個查找表(個的函數(shù)、方程必須分開用幾個查找表( LUT)實現(xiàn)實現(xiàn)輸出輸出查黑查黑找盒找盒表子表子輸入輸入1輸入輸入2輸入輸入3輸入輸入4什么是查找表什么是查找表? 常熟理工學

19、院電氣與自動化工程學院EDA 電子教案第第 3636 頁頁實際邏輯電路 LUT 的實現(xiàn)方式a,b,c,d 輸入邏輯輸出地址RAM 中存儲的內(nèi)容00000000000001000010.0.01111111111一個4輸入與門查找表實例: 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3737 頁頁0000010100001001輸入 A 輸入 B 輸入C 輸入D 查找表查找表輸出輸出16x1RAM查找表原理查找表原理多路選擇器多路選擇器0011000100100001011 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3838 頁頁Xilinx Spartan-II內(nèi)部結(jié)構(gòu)內(nèi)

20、部結(jié)構(gòu)CLBs:Configurable Logic Blocks(可配置邏輯塊可配置邏輯塊) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 3939 頁頁Altera Flex/Acex 等芯片的結(jié)構(gòu)等芯片的結(jié)構(gòu)LAB: Logic Array Block(邏輯陣列塊邏輯陣列塊) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4040 頁頁四、FPGA/CPLD硬件測試技術(shù)n內(nèi)部邏輯測試內(nèi)部邏輯測試 nJTAG(Joint Test Action Group-聯(lián)合測試行動小組)聯(lián)合測試行動小組)邊界掃描測試邊界掃描測試n嵌入式邏輯分析儀嵌入式邏輯分析儀(通過通過JTAG接口軟

21、件測試接口軟件測試方法方法)nAltera 的的 SignalTapnXilinx 的的 ChipScope小知識:小知識:傳統(tǒng)上將信號連線夾住傳統(tǒng)上將信號連線夾住I/O引腳,利用示波器、邏輯分析引腳,利用示波器、邏輯分析儀或總線分析儀測試和驗證芯片內(nèi)部信號,這種測試方法儀器昂貴,儀或總線分析儀測試和驗證芯片內(nèi)部信號,這種測試方法儀器昂貴,邊線夾對信號影響大,且易燒壞芯片。隨著邊線夾對信號影響大,且易燒壞芯片。隨著JTAG邊界掃描技術(shù)發(fā)邊界掃描技術(shù)發(fā)展,基于嵌入式邏輯分析儀的內(nèi)部邏輯測試方法得到了廣泛應(yīng)用。展,基于嵌入式邏輯分析儀的內(nèi)部邏輯測試方法得到了廣泛應(yīng)用。 常熟理工學院電氣與自動化工程

22、學院EDA 電子教案第第 4141 頁頁隨著微電子技術(shù)、微封裝技術(shù)和印制板制造技術(shù)的不斷發(fā)展,隨著微電子技術(shù)、微封裝技術(shù)和印制板制造技術(shù)的不斷發(fā)展,印制電路板越來越小印制電路板越來越小,密度和復(fù)雜程度越來越來高密度和復(fù)雜程度越來越來高。面對這。面對這樣的發(fā)展趨勢,如果仍沿用傳統(tǒng)的樣的發(fā)展趨勢,如果仍沿用傳統(tǒng)的外探針測試外探針測試法和法和“針床針床”夾具測試法夾具測試法來全面徹底的測試焊接在電路板上的器件將是難來全面徹底的測試焊接在電路板上的器件將是難以實現(xiàn)的。以實現(xiàn)的。多層電路板多層電路板以及采用以及采用貼片封裝器件貼片封裝器件的電路板,將的電路板,將更難以用傳統(tǒng)的測試方法加以測試。更難以用傳

23、統(tǒng)的測試方法加以測試。20世紀世紀80年代,聯(lián)合測試行動組開發(fā)了年代,聯(lián)合測試行動組開發(fā)了IEEE1149.1邊邊界掃描測試技術(shù)規(guī)范界掃描測試技術(shù)規(guī)范。該規(guī)范提供了有效的測試引線。該規(guī)范提供了有效的測試引線間隔致密的電路板上零件的能力。間隔致密的電路板上零件的能力。 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4242 頁頁如今,幾乎所有公司的如今,幾乎所有公司的CPLD/FPGA器件均遵守器件均遵守IEEE規(guī)范,為輸入規(guī)范,為輸入/輸出引腳及專用配置引腳提供了邊界輸出引腳及專用配置引腳提供了邊界掃描測試掃描測試BST(Boundary-Scan Interface)的能力。)的能力

24、。與此類似的是與此類似的是DSP器件,如器件,如TI的的TMS320系列系列DSP器器件均含件均含JTAG口???。邊界掃描電路結(jié)構(gòu)邊界掃描電路結(jié)構(gòu) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4343 頁頁邊界掃描邊界掃描IO引腳功能引腳功能引引 腳腳描描 述述功功 能能TDI測試數(shù)據(jù)輸入測試數(shù)據(jù)輸入(Test Data Input)測試指令和編程數(shù)據(jù)的串行輸入引腳。數(shù)據(jù)在測試指令和編程數(shù)據(jù)的串行輸入引腳。數(shù)據(jù)在TCK的上升沿移入。的上升沿移入。TDO測試數(shù)據(jù)輸出測試數(shù)據(jù)輸出(Test Data Output)測試指令和編程數(shù)據(jù)的串行輸出引腳,數(shù)據(jù)在測試指令和編程數(shù)據(jù)的串行輸出引腳,

25、數(shù)據(jù)在TCK的的下降沿移出。如果數(shù)據(jù)沒有被移出時,該引腳處于高下降沿移出。如果數(shù)據(jù)沒有被移出時,該引腳處于高阻態(tài)。阻態(tài)。TMS測試模式選擇測試模式選擇(Test Mode Select)控制信號輸入引腳,負責控制信號輸入引腳,負責TAP控制器的轉(zhuǎn)換??刂破鞯霓D(zhuǎn)換。TMS必須在必須在TCK的上升沿到來之前穩(wěn)定。的上升沿到來之前穩(wěn)定。TCK測試時鐘輸入測試時鐘輸入(Test Clock Input)時鐘輸入到時鐘輸入到BST電路,一些操作發(fā)生在電路,一些操作發(fā)生在上升沿,而另一些發(fā)生在下降沿。上升沿,而另一些發(fā)生在下降沿。TRST測試復(fù)位輸入測試復(fù)位輸入(Test Reset Input)低電平有

26、效,異步復(fù)位邊界掃描電路低電平有效,異步復(fù)位邊界掃描電路(在在IEEE規(guī)范中,該引腳可選規(guī)范中,該引腳可選)。 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4444 頁頁JTAG BST需要下列寄存器:需要下列寄存器:指令寄存器指令寄存器旁路寄存器旁路寄存器邊界掃描寄存器邊界掃描寄存器用來決定是否進行測試或訪問數(shù)據(jù)寄用來決定是否進行測試或訪問數(shù)據(jù)寄存器操作存器操作這個這個1bit寄存器用來提供寄存器用來提供TDI和和TDO的最小串行通道的最小串行通道由器件引腳上的所有邊界掃描由器件引腳上的所有邊界掃描單元構(gòu)成單元構(gòu)成 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4545 頁

27、頁FPGA每個輸入輸出引腳每個輸入輸出引腳都增加了一個都增加了一個移位寄存器移位寄存器,在在測試模式測試模式下,這些寄存下,這些寄存器用來控制輸出引腳的狀器用來控制輸出引腳的狀態(tài)和讀取輸入引腳的狀態(tài),態(tài)和讀取輸入引腳的狀態(tài),從而完成了測試工作。從而完成了測試工作。邊界掃描測試步驟邊界掃描測試步驟移位輸入和譯碼指令移位輸入和譯碼指令 移位輸入測試數(shù)據(jù)移位輸入測試數(shù)據(jù) 執(zhí)行測試執(zhí)行測試 輸出結(jié)果輸出結(jié)果 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4646 頁頁六、CPLD/FPGA的編程與配置 軟件如何錄入軟件如何錄入“固化固化”進入器件?進入器件?方法方法1:編程器(編程器(Prog

28、rammer)專用專用編程器和編程器和通用通用編程器編程器u 把把CPLD/FPGA設(shè)計代碼送入芯片的過程(或做法)設(shè)計代碼送入芯片的過程(或做法) 稱稱為對為對CPLD/FPGA器件的配置,也稱為下載。器件的配置,也稱為下載。u 經(jīng)過配置的經(jīng)過配置的CPLD/FPGA芯片,就成為具有用戶需要功芯片,就成為具有用戶需要功能的專用數(shù)字電路或數(shù)字系統(tǒng)。能的專用數(shù)字電路或數(shù)字系統(tǒng)。開始編程開始編程將編程完畢的配置將編程完畢的配置器件插在相應(yīng)的器件插在相應(yīng)的電路系統(tǒng)上電路系統(tǒng)上 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4747 頁頁ISPIn System Programmable方法方

29、法2:在系統(tǒng)編程在系統(tǒng)編程ISP通過幾根編程線與計算機的并行口通過幾根編程線與計算機的并行口/串口相連,在專門應(yīng)用軟件配合串口相連,在專門應(yīng)用軟件配合下,方便的實現(xiàn)程序下載。下,方便的實現(xiàn)程序下載。EPC2器件器件EPC2的編程口的編程口 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4848 頁頁ISPISP功能提高設(shè)計和應(yīng)用的靈活性功能提高設(shè)計和應(yīng)用的靈活性n 減少對器件的減少對器件的觸摸和損傷觸摸和損傷n 不計較器件的不計較器件的封裝形式封裝形式n 允許一般的存儲允許一般的存儲n 樣機制造方便樣機制造方便n 支持生產(chǎn)和測試支持生產(chǎn)和測試流程中的修改流程中的修改n 允許現(xiàn)場硬允許現(xiàn)

30、場硬件升級件升級n 迅速方便地迅速方便地提升功能提升功能未編程前先焊未編程前先焊接安裝接安裝系統(tǒng)內(nèi)編程系統(tǒng)內(nèi)編程-ISP在系統(tǒng)現(xiàn)場重在系統(tǒng)現(xiàn)場重編程修改編程修改 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 4949 頁頁l 器件編程下載的分類:器件編程下載的分類: 對對CPLD/FPGA芯片進行編程配置的方式有多種。芯片進行編程配置的方式有多種。 1、按使用計算機的通訊接口劃分,、按使用計算機的通訊接口劃分,有:有:(1)串口下載()串口下載(BitBlaster或或MasterBlaster)、)、(2)并口下載()并口下載(ByteBlaster)、)、(3)USB接口下載接口下

31、載(MasterBlaster或或APU)等方式。等方式。2 2、若按使用的、若按使用的CPLD/FPGACPLD/FPGA器件劃分,器件劃分,有:有:1 1)CPLDCPLD編程(適用于片內(nèi)編程元件為編程(適用于片內(nèi)編程元件為EPROMEPROM、 E2PROME2PROM和閃存的器件);和閃存的器件);2 2)FPGAFPGA下載下載(適用于片內(nèi)編程元件為(適用于片內(nèi)編程元件為SDRAMSDRAM的器件)的器件) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5050 頁頁3 3、按、按CPLD/FPGACPLD/FPGA器件在編程下載過程中的狀態(tài)劃分器件在編程下載過程中的狀態(tài)劃分

32、,有:有:1 1)主動配置方式。)主動配置方式。 在這種配置方式下在這種配置方式下, ,由由CPLD/FPGACPLD/FPGA器件引導(dǎo)配置器件引導(dǎo)配置操作的過程并控制著外部存貯器和初始化過程;操作的過程并控制著外部存貯器和初始化過程;2 2)被動配置方式。)被動配置方式。 在這種配置方式下在這種配置方式下, ,由外部由外部CPUCPU或控制器(如單片或控制器(如單片機)控制配置的過程。機)控制配置的過程。 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5151 頁頁CPLD/FPGACPLD/FPGA器件的工作狀態(tài)器件的工作狀態(tài) l CPLD/FPGA器件按照正常使用和下載的不同過程

33、其器件按照正常使用和下載的不同過程其工作狀態(tài)分為三種:工作狀態(tài)分為三種:1、用戶狀態(tài)、用戶狀態(tài)(User mode) 即電路中即電路中CPLD器件正常工作時的狀態(tài);器件正常工作時的狀態(tài);2、配置狀態(tài)、配置狀態(tài)(Configuration mode ) 指將編程數(shù)據(jù)裝入指將編程數(shù)據(jù)裝入CPLD/FPGA器件的過程,也可稱器件的過程,也可稱 之為下載狀態(tài);之為下載狀態(tài);3、初始化狀態(tài)、初始化狀態(tài)(Initialization) 此時此時CPLD/FPGA器件內(nèi)部的各類寄存器復(fù)位,器件內(nèi)部的各類寄存器復(fù)位, 讓讓IO引腳為使器件正常工作作好準備。引腳為使器件正常工作作好準備。 常熟理工學院電氣與自動

34、化工程學院EDA 電子教案第第 5252 頁頁ALTERA的編程文件的編程文件l ALTERA ALTERA 公司的開發(fā)系統(tǒng)公司的開發(fā)系統(tǒng)QusrtusQusrtus可以生成多種格式的編程可以生成多種格式的編程數(shù)據(jù)文件。對于不同系列器件數(shù)據(jù)文件。對于不同系列器件, , 所能生成的編程所能生成的編程/ /配置文件類配置文件類型有所不同型有所不同, , 其中最常用的即為其中最常用的即為.sof.sof文件和文件和.pof.pof文件,但無文件,但無論什么格式的下載文件,最終下載到論什么格式的下載文件,最終下載到FPGAFPGA芯片中的文件都芯片中的文件都為為.rbf.rbf原始二進制文件:原始二進

35、制文件: SRAM Object SRAM Object格式(格式(.sof.sof:SRAM Object FileSRAM Object File): : SOF SOF格式配置文件由下載電纜將其下載到格式配置文件由下載電纜將其下載到FPGAFPGA芯片中芯片中, , 其它數(shù)其它數(shù)據(jù)格式均可由該種格式轉(zhuǎn)化而成,據(jù)格式均可由該種格式轉(zhuǎn)化而成,Quartus IIQuartus II自動默認生成,自動默認生成,SOFSOF文件基于文件基于JTAGJTAG模式下載,下載速度快,一般在設(shè)計調(diào)試程模式下載,下載速度快,一般在設(shè)計調(diào)試程序時使用,但掉電失效。序時使用,但掉電失效。 Programmin

36、g ObjectProgramming Object格式(格式(.pof:Programmable Object .pof:Programmable Object FileFile): : POF POF格式配置文件用于燒寫格式配置文件用于燒寫AlteraAltera公司配置芯片或公司配置芯片或CPLDCPLD芯片,芯片, Quartus IIQuartus II自動生成,自動生成,POFPOF文件用于文件用于ASAS配置方式,是燒錄進芯配置方式,是燒錄進芯片的,速度較慢,但不會掉電消失,一般在應(yīng)用時使用。片的,速度較慢,但不會掉電消失,一般在應(yīng)用時使用。 常熟理工學院電氣與自動化工程學院ED

37、A 電子教案第第 5353 頁頁(一)(一) CPLD的的ISP方式編程方式編程 CPLD的的JTAG方式方式編程下載連接圖編程下載連接圖 各引腳信號名稱各引腳信號名稱10芯下載口芯下載口 對對CPLD編程編程TCK、TDO、TMS、TDI為為CPLD的的JTAG口口 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5454 頁頁多多CPLD芯片芯片ISP編程連接方式編程連接方式 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5555 頁頁配置配置(configuration)是對是對FPGA的內(nèi)容進行編程的的內(nèi)容進行編程的過程。每次上電后都需要進行配置是基于過程。每次上電后都需

38、要進行配置是基于SRAM工藝工藝FPGA的一個特點,也可以說是一個缺點。的一個特點,也可以說是一個缺點。FPGA配置過程如下:配置過程如下:FPGA配置配置器件器件外部電路將外部電路將配置數(shù)據(jù)配置數(shù)據(jù)載載入入片內(nèi)配置片內(nèi)配置RAM中中外部電路外部電路FPGA配置完成配置完成配置配置RAM配置配置RAM中的中的配置數(shù)據(jù)配置數(shù)據(jù):用于控制用于控制FPGA內(nèi)部可內(nèi)部可編程的編程的內(nèi)部邏輯內(nèi)部邏輯、內(nèi)部內(nèi)部寄存器和寄存器和I/O寄存器初寄存器初始化始化,I/O驅(qū)動器使能驅(qū)動器使能等。之后等。之后FPGA進入進入用用戶模式戶模式。(二)(二) FPGA配置方式配置方式 常熟理工學院電氣與自動化工程學院E

39、DA 電子教案第第 5656 頁頁561、 FPGA配置方式配置方式根據(jù)根據(jù)FPGA在配置電路中的角色,可以將配置方式分為三類:在配置電路中的角色,可以將配置方式分為三類:(1).FPGA主動串行主動串行(AS-Active Serial Mode)方式方式 (2). JTAG (JTAG Mode)方式方式(3). FPGA被動被動(PS-Passive Serial Mode)方式方式EPCS系列系列配置數(shù)據(jù)配置數(shù)據(jù)FPGA主動串行主動串行(AS)方式方式1下載工具下載工具或或智能主機智能主機JTAG方式方式2EPC系列系列FPGA僅輸出響應(yīng)信號僅輸出響應(yīng)信號FPGAFPGA被動被動(Pa

40、ssive)方式方式3 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5757 頁頁 2、FPGA配置方案圖配置方案圖JTAGJTAG配置端配置端口口FPGAPSPS配置端口配置端口P PC C機機配置適配電路配置適配電路配置器件配置器件或配置電路或配置電路ASAS配置端口配置端口專用專用FLASHFLASH配置器件配置器件PS- Passive Serial FPP- Fast passive parallel PPA- Passive parallel asynchronous PPS- Passive parallel synchronous PSA-Passive Serial

41、 Asynchronous 被動方式可分為下列幾種方式:被動方式可分為下列幾種方式: 被動串行方式(被動串行方式(PS) 快速被動并行(快速被動并行(FPP)方式)方式 被動并行異步(被動并行異步(PPA)方式)方式 被動并行同步(被動并行同步(PPS)方式)方式 被動串行異步(被動串行異步(PSA)方式)方式 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5858 頁頁FPGAEPC DeviceConfigurationControllerMemoryFPGAMAX II or External ProcessorConfigurationControllerExternal Fl

42、ashMemoryFPGAFPGAExternalMemoryInitiates configuration processProvides configuration dataConfigurationController主動(主動(AS)方式)方式被動(被動(PS)方式)方式被動(被動(PS)方式)方式JTAG方式方式 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 5959 頁頁配置方式配置方式器件類別器件類別Stratix IIStratix ,Stratix GXCyclone IICycloneAPEX IIAPEX20K,APEX20KE,APEX20KCMercuryAC

43、EX 1KFLEX10K,FLEX10KE,FLEX10KAFLEX6000被動串行(被動串行(PS)主動串行主動串行(AS)快速被動并行(快速被動并行(FPP)被動并行同步(被動并行同步(PPS)被動并行異步(被動并行異步(PPA)被動串行異步(被動串行異步(PSA)JTAG僅支持邊僅支持邊界掃描測界掃描測試試Altera FPGA配置方式列表配置方式列表Cyclone FPGA配置方式表配置方式表配配 置置 方方 式式描描 述述主動串行配置主動串行配置(AS)(AS)采用串行配置器件(采用串行配置器件(EPCS1EPCS1、EPCS4EPCS4、EPCS16EPCS16、EPCS64EPC

44、S64)被動配置(被動配置(PSPS)1 1采用專用配置器件(采用專用配置器件(EPC1EPC1、EPC2EPC2、EPC4EPC4、EPC8EPC8、EPC16EPC16););2 2采用配置控制器(單片機、采用配置控制器(單片機、CPLDCPLD等)配合等)配合FlashFlash;JTAGJTAG配置配置通過通過JTAGJTAG進行配置進行配置 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6060 頁頁3. Cyclone及及Cyclone II FPGA配置配置Cyclone 以及以及Cyclone IIFPGA使用使用SRAM單元來單元來存儲配置數(shù)據(jù)。存儲配置數(shù)據(jù)。FPGA

45、中的中的SRAM是易失性的,每次上電之前,是易失性的,每次上電之前,配置數(shù)據(jù)配置數(shù)據(jù)(或壓縮的配置數(shù)據(jù)或壓縮的配置數(shù)據(jù))必須重新下載到必須重新下載到FPGA中。下面中。下面的的2個條件均可使個條件均可使FPGA產(chǎn)生一次配置請求:產(chǎn)生一次配置請求:給給FPGA重新上電;重新上電;FPGA的的nConfig引腳上產(chǎn)生一個低電平到高電平的上升沿。引腳上產(chǎn)生一個低電平到高電平的上升沿。 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6161 頁頁Cyclone及及Cyclone II FPGA的配置方式包括:的配置方式包括:(1)FPGA主動串行主動串行(AS)配置配置方式方式; (2)FPG

46、A被動被動(Passive)配置配置方式方式 ;(3)JTAG配置配置方式方式 。注:。注:AS和和JTAG是實驗室開發(fā)板配置方式是實驗室開發(fā)板配置方式用戶可以通過設(shè)置用戶可以通過設(shè)置FPGA上的上的MSEL0、MESL1兩個引腳的狀態(tài)來兩個引腳的狀態(tài)來選擇配置方式。各種配置方式的選擇配置方式。各種配置方式的MSEL0、MESL1設(shè)置如下表所列:設(shè)置如下表所列:MSEL1MSEL0配置方式備注00AS主動(串行配置器件)20M10快速AS主動(串行配置器件) 40M,只限Cyclone II01PS被動(CPLD控制)00或1JTAG配置MSEL設(shè)設(shè)置跳線置跳線 常熟理工學院電氣與自動化工程學

47、院EDA 電子教案第第 6262 頁頁62(1) JTAG配置配置通過通過JTAG接口接口,利用,利用Quartus II軟件軟件可以可以直接直接對對FPGA進行單獨的硬件進行單獨的硬件重新配置。重新配置。Quartus II軟件在編譯時會自動生成用于軟件在編譯時會自動生成用于JTAG配置的配置的.sof文件。文件。如果同時使用如果同時使用AS方式和方式和JTAG方式來配置方式來配置FPGA,JTAG配置方式擁有最高配置方式擁有最高的優(yōu)先級的優(yōu)先級,此時此時AS方式將停止,而執(zhí)行方式將停止,而執(zhí)行JTAG方式配置。方式配置。JTAG配置的電路原理配置的電路原理圖圖12345678910JTAG

48、接口10k10kR1R2DATA0nCONFIGnCEMSEL0MSEL1DCLKCONF_DONEnSTATUSTCKTMSTDOTDICyclone(Cyclone II) FPGAVCCVIO(3)N.C.N.C.VCCVCCVCCVCC(1)(2)(2)(2)(2)(2)R3Cyclone: R1-R3 10KCyclone II: R1-R3 1K 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6363 頁頁 利用利用Quartus II軟件和軟件和USB Blaster、ByteBlaster II等下載電纜等下載電纜可下載配置數(shù)據(jù)到可下載配置數(shù)據(jù)到FPGA。Quartus

49、 II軟件可以驗證軟件可以驗證JTAG配置是否成功。配置是否成功。 JTAG配置通過下載電纜使用配置通過下載電纜使用SOF、Jam或者或者JBC文件直接對文件直接對FPGA進進行配置,這種配置方式只能用于調(diào)試階段,因為,掉電后行配置,這種配置方式只能用于調(diào)試階段,因為,掉電后FPGA中的配置數(shù)據(jù)中的配置數(shù)據(jù)將丟失。將丟失。 JTAG下載口下載口 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6464 頁頁Pin 1Download Cable 10-Pin Male Header (JTAG Mode)nSTATUSnCONFIG CONF_DONEDCLKMSELn.0nCETDI

50、TMS TCK TDOnSTATUSnCONFIG CONF_DONEDCLKMSELn.0nCETDI TMS TCK TDOVCCVCCVCCVCCVCCVCCVIOJTAG Configuration of Multiple Devices(多芯片(多芯片 JTAG配置電路)配置電路) 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6565 頁頁主動串行配置方式主動串行配置方式(AS)是將是將配置數(shù)據(jù)配置數(shù)據(jù)事先存儲在串行配置器件事先存儲在串行配置器件EPCS中中,然后在系統(tǒng)上電時然后在系統(tǒng)上電時Cyclone及及Cyclone II FPGA通過通過串串行接口行接口讀取配置數(shù)據(jù)

51、讀取配置數(shù)據(jù)(如果是壓縮數(shù)據(jù),還會進行解壓縮處理)(如果是壓縮數(shù)據(jù),還會進行解壓縮處理)對內(nèi)部的對內(nèi)部的SRAM單元進行配置單元進行配置。因為上述配置過程中。因為上述配置過程中FPGA控制配置接口,因此通控制配置接口,因此通常稱為主動配置方式。常稱為主動配置方式。(2)主動串行)主動串行配置配置nCEnSTATUSnCONFIGCONFIG_DONEDATA0DCLKnCSOASDOnCEOMSEL0MSEL1Cylone(Cyclone II) FPGAnCSDATAASDIDCLKEPCS串行配置器件10k10k10kVCCVCCVCCN.C.12345678910AS接口10kVCClo

52、w or high說明:說明:1. 因為因為FPGA上的上的nSTATUS、CONFIG_DONE管腳都管腳都是開漏結(jié)構(gòu),所以都要接上是開漏結(jié)構(gòu),所以都要接上拉電阻。拉電阻。FPGA的片選腳的片選腳nCE必須接地。必須接地。主動串行配置的電路原理圖主動串行配置的電路原理圖 常熟理工學院電氣與自動化工程學院EDA 電子教案第第 6666 頁頁Multi-Device AS Configurations(多芯片)(多芯片)Multiple-device AS configurationnSTATUSCONF_DONEnCONFIGnCE DATA0 nCEODCLKnCSOASDO MSELn.0GNDVCCCONF_DONEnSTATUSnCE nCEOnCONFIGDCLK MSELn.0DATA0Serial Configuration Device DATA DCLK nCS ASDIVCCVCCBuffersVCCVCCVCCMultiple-device PS configuration when both devices receive the same d

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論