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

下載本文檔

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

文檔簡(jiǎn)介

1、主講:羅韓君,郵箱: 手機(jī)FPGA原理與應(yīng)用,2016-2017學(xué)年第二學(xué)期,電氣與自動(dòng)化工程學(xué)院,第3部分 FPGACPLD結(jié)構(gòu)原理,組合電路:在邏輯上總是當(dāng)前輸入狀態(tài)的函數(shù); 時(shí)序電路:其輸出是當(dāng)前系統(tǒng)狀態(tài)與當(dāng)前輸入狀態(tài)的函數(shù),它含有存儲(chǔ)單元.,主要內(nèi)容,一、 PLD 概述 二、 簡(jiǎn)單PLD結(jié)構(gòu)原理 三、 CPLD 結(jié)構(gòu)原理 四、 FPGA的結(jié)構(gòu)原理 五、 硬件測(cè)試 六、 CPLD/FPGA的編程和配置,基本PLD器件的原理結(jié)構(gòu)圖,1、基本概念,一、PLD概述,可編程邏輯器件(Programmable Logic Device)簡(jiǎn)稱PLD,是由“與”陣列和“或”陣

2、列組成,能有效的以“積之和”的形式實(shí)現(xiàn)布爾邏輯函數(shù)。,2、 PLD的發(fā)展歷程,70年代,80年代,90年代,PROM 和PLA 器件,改進(jìn)的 PLA 器件,GAL器件,FPGA器件,EPLD 器件,CPLD器件,內(nèi)嵌復(fù)雜 功能模塊 的SoPC,3、PLD的分類,基本類型,. 可編程只讀存儲(chǔ)器PROM,. 可編程邏輯陣列PLA,. 可編程陣列邏輯PAL,. 通用陣列邏輯GAL,CPLD/FPGA,復(fù)雜類型,按集成度(PLD)分類,可編程邏輯器件從結(jié)構(gòu)上區(qū)分,可分為乘積項(xiàng)結(jié)構(gòu)器件和查找表結(jié)構(gòu)器件.,可編程邏輯器件從編程工藝上劃分,可分為一次性可編程器件(OTP)器件和多次性可編程器件器件. 一次性

3、可編程器件(OTP)器件又分為熔絲型器件(如早期的PROM)和反熔絲型器件(如Actel公司的FPGA器件) 多次性可編程器件器件又分為紫外線擦除電可編程器件(EPROM),電可擦寫編程器件(EEPROM),SROM查找表結(jié)構(gòu)器件和Flash型器件.,1、 邏輯元件符號(hào)表示,二、簡(jiǎn)單PLD結(jié)構(gòu)原理,PLD的互補(bǔ)緩沖器 PLD的互補(bǔ)輸入 PLD中與陣列表示,PLD中或陣列的表示 陣列線連接表示,2、邏輯元件符號(hào)表示,PROM基本結(jié)構(gòu):,其邏輯函數(shù)是:,3、可編程只讀存儲(chǔ)器PROM結(jié)構(gòu)原理,PROM的邏輯陣列結(jié)構(gòu),邏輯函數(shù)表示:,PROM表達(dá)的PLD圖陣列,用PROM完成半加器邏輯陣列,PROM內(nèi)

4、部結(jié)構(gòu)為“與”陣列固定,“或”陣列可編程。,2N輸入組合,查表輸出,PLA邏輯陣列示意圖,4、可編程邏輯陣列PLA結(jié)構(gòu)原理,PLA內(nèi)部結(jié)構(gòu)為“與”、“或”陣列皆可編程。,2N乘積線,編程輸出,PLA與 PROM的比較:,PLA與或陣列皆可編程,PROM與陣列固定,或陣列可編程,PAL結(jié)構(gòu):,PAL的常用表示:,5、可編程陣列邏輯PAL結(jié)構(gòu)原理,CPLD技術(shù)及應(yīng)用教學(xué)課件,PAL內(nèi)部結(jié)構(gòu)為“與”陣列可編程,“或”陣列固定。,2N乘積線,輸出組合,2.2.4 PAL結(jié)構(gòu)原理,PAL16V8的部分結(jié)構(gòu)圖,應(yīng)用實(shí)例,給出邏輯方程如下:,Q0=I0 + NOT(I1) I2,Q1=NOT(I0) I2

5、+NOT(I1)I2,Q2=NOT(I0) I1 +NOT(I1)I2 +NOT(I2)I0,思考:如何實(shí)現(xiàn)?,答案:此款芯片不能滿足Q2設(shè)計(jì)需要?,6、通用陣列邏輯GAL,GAL器件與PAL器件具有相同的內(nèi)部結(jié)構(gòu),但靠各種特性組合而被區(qū)別。,GAL是美國晶格半導(dǎo)體公司(Lattice)為它的可編程邏輯器件注冊(cè)的專用商標(biāo)名稱。,輸出邏輯宏單元OLMC(Output Logic Macro Cell),輸出邏輯宏單元OLMC(Output Logic Macro Cell),一般邏輯器件,舉例:GAL16V8,GAL器件,作為一種通用的可編程邏輯器件,除了“與”陣列可編程改寫,還對(duì)輸出端口設(shè)計(jì)了

6、可重新改變結(jié)構(gòu)和功能的輸出邏輯宏單元。,輸出口大多表現(xiàn)為緩沖器/驅(qū)動(dòng)器,一旦器件定型,用戶不能對(duì)它作任何改變。,邏輯宏單元,輸入/輸出口,輸入口,時(shí)鐘信 號(hào)輸入,三態(tài)控制,可編程與陣列,固定或陣列,GAL16V8,CPLDComplicated Programmable Logic Device,結(jié)構(gòu)框圖,三、復(fù)雜可編程邏輯器件CPLD,三大部分: I/O塊,F(xiàn)B(功能塊)和互連矩陣。,組成,特點(diǎn),CPLD延伸出2個(gè)發(fā)展趨勢(shì):可擦除PLD和現(xiàn)場(chǎng)可編程門陣列FPGA。,CPLD是由PAL或GAL發(fā)展而來,是由可編程邏輯的功能塊圍繞一個(gè)位于中心和延時(shí)固定的可編程互連矩陣構(gòu)成。,不采用分段互連方式,

7、具有較大的時(shí)間可預(yù)測(cè)性。,采用EEPROM工藝,MAX7000系列的單個(gè)宏單元結(jié)構(gòu),MAX7128S的結(jié)構(gòu),1邏輯陣列塊(LAB),2宏單元,3擴(kuò)展乘積項(xiàng),(1)共享擴(kuò)展項(xiàng),并聯(lián)擴(kuò)展項(xiàng)饋送方式,(2)并聯(lián)擴(kuò)展項(xiàng),4可編程連線陣列(PIA),PIA信號(hào)布線到LAB的方式,5I/O控制塊,EPM7128S器件的I/O控制塊,FPGAField Programmable Gate Array,FPGA內(nèi)部結(jié)構(gòu),可編程I/O,可編程單元,可編程布線,四、現(xiàn)場(chǎng)可編程門陣列FPGA,FPGA現(xiàn)場(chǎng)可編程門陣列通常由布線資源圍繞的可編程單元(或宏單元)構(gòu)成陣列,又由可編程I/O單元圍繞陣列構(gòu)成整個(gè)芯片。,可編

8、程邏輯功能塊CLB,實(shí)現(xiàn)用戶功能的基本單元。,可編程I/O單元,完成芯片上邏輯與外部封裝腳的接口,常分布在CLB的四周,可編程互連PI,采用SRAM工藝,包括各種長(zhǎng)度的連線和可編程連接開關(guān),將邏輯塊與輸入/輸出塊連接起來,構(gòu)成特定的電路,FPGA結(jié)構(gòu)與工作原理,FPGA查找表單元內(nèi)部結(jié)構(gòu),FPGA查找表單元:,一個(gè)N輸入查找表 (LUT,Look Up Table)可以實(shí)現(xiàn)N個(gè)輸入變量的任何邏輯功能,如 N輸入“與”、 N輸入“異或”等。 輸入多于N個(gè)的函數(shù)、方程必須分開用幾個(gè)查找表( LUT)實(shí)現(xiàn),什么是查找表?,基于查找表的結(jié)構(gòu)模塊,一個(gè)4輸入與門查找表實(shí)例:,輸入 A 輸入 B 輸入C

9、輸入D,查找表 輸出,16x1 RAM,查找表原理,多路選擇器,0,0,1,1,0,0,0,1,0,0,1,0,0,0,0,1,0,1,1,Xilinx Spartan-II內(nèi)部結(jié)構(gòu),CLBs:Configurable Logic Blocks(可配置邏輯塊),Altera Flex/Acex 等芯片的結(jié)構(gòu),LAB: Logic Array Block(邏輯陣列塊),四、FPGA/CPLD硬件測(cè)試技術(shù),內(nèi)部邏輯測(cè)試 JTAG(Joint Test Action Group-聯(lián)合測(cè)試行動(dòng)小組)邊界掃描測(cè)試 嵌入式邏輯分析儀(通過JTAG接口軟件測(cè)試方法) Altera 的 SignalTap X

10、ilinx 的 ChipScope,小知識(shí):傳統(tǒng)上將信號(hào)連線夾住I/O引腳,利用示波器、邏輯分析儀或總線分析儀測(cè)試和驗(yàn)證芯片內(nèi)部信號(hào),這種測(cè)試方法儀器昂貴,邊線夾對(duì)信號(hào)影響大,且易燒壞芯片。隨著JTAG邊界掃描技術(shù)發(fā)展,基于嵌入式邏輯分析儀的內(nèi)部邏輯測(cè)試方法得到了廣泛應(yīng)用。,隨著微電子技術(shù)、微封裝技術(shù)和印制板制造技術(shù)的不斷發(fā)展,印制電路板越來越小,密度和復(fù)雜程度越來越來高。面對(duì)這樣的發(fā)展趨勢(shì),如果仍沿用傳統(tǒng)的外探針測(cè)試法和“針床”夾具測(cè)試法來全面徹底的測(cè)試焊接在電路板上的器件將是難以實(shí)現(xiàn)的。多層電路板以及采用貼片封裝器件的電路板,將更難以用傳統(tǒng)的測(cè)試方法加以測(cè)試。,20世紀(jì)80年代,聯(lián)合測(cè)試行

11、動(dòng)組開發(fā)了IEEE1149.1邊界掃描測(cè)試技術(shù)規(guī)范。該規(guī)范提供了有效的測(cè)試引線間隔致密的電路板上零件的能力。,如今,幾乎所有公司的CPLD/FPGA器件均遵守IEEE規(guī)范,為輸入/輸出引腳及專用配置引腳提供了邊界掃描測(cè)試BST(Boundary-Scan Interface)的能力。與此類似的是DSP器件,如TI的TMS320系列DSP器件均含JTAG口。,邊界掃描電路結(jié)構(gòu),邊界掃描IO引腳功能,JTAG BST需要下列寄存器:,指令寄存器,旁路寄存器,邊界掃描寄存器,用來決定是否進(jìn)行測(cè)試或訪問數(shù)據(jù)寄存器操作,這個(gè)1bit寄存器用來提供TDI和TDO的最小串行通道,由器件引腳上的所有邊界掃描單

12、元構(gòu)成,FPGA每個(gè)輸入輸出引腳都增加了一個(gè)移位寄存器,在測(cè)試模式下,這些寄存器用來控制輸出引腳的狀態(tài)和讀取輸入引腳的狀態(tài),從而完成了測(cè)試工作。,邊界掃描測(cè)試步驟,移位輸入和譯碼指令 移位輸入測(cè)試數(shù)據(jù) 執(zhí)行測(cè)試 輸出結(jié)果,六、CPLD/FPGA的編程與配置,軟件如何錄入“固化”進(jìn)入器件?,方法1:編程器(Programmer),專用編程器和通用編程器,把CPLD/FPGA設(shè)計(jì)代碼送入芯片的過程(或做法) 稱為對(duì)CPLD/FPGA器件的配置,也稱為下載。 經(jīng)過配置的CPLD/FPGA芯片,就成為具有用戶需要功能的專用數(shù)字電路或數(shù)字系統(tǒng)。,開始編程,將編程完畢的配置 器件插在相應(yīng)的 電路系統(tǒng)上,I

13、SPIn System Programmable,方法2:在系統(tǒng)編程ISP,通過幾根編程線與計(jì)算機(jī)的并行口/串口相連,在專門應(yīng)用軟件配合下,方便的實(shí)現(xiàn)程序下載。,EPC2器件,EPC2的編程口,ISP功能提高設(shè)計(jì)和應(yīng)用的靈活性,減少對(duì)器件的觸摸和損傷 不計(jì)較器件的封裝形式,允許一般的存儲(chǔ) 樣機(jī)制造方便 支持生產(chǎn)和測(cè)試流程中的修改,允許現(xiàn)場(chǎng)硬件升級(jí) 迅速方便地提升功能,未編程前先焊接安裝,系統(tǒng)內(nèi)編程-ISP,在系統(tǒng)現(xiàn)場(chǎng)重編程修改,器件編程下載的分類: 對(duì)CPLD/FPGA芯片進(jìn)行編程配置的方式有多種。 1、按使用計(jì)算機(jī)的通訊接口劃分,有: (1)串口下載(BitBlaster或MasterBla

14、ster)、 (2)并口下載(ByteBlaster)、 (3)USB接口下載(MasterBlaster或APU)等方式。,2、若按使用的CPLD/FPGA器件劃分,有: 1)CPLD編程(適用于片內(nèi)編程元件為EPROM、 E2PROM和閃存的器件); 2)FPGA下載(適用于片內(nèi)編程元件為SDRAM的器件),3、按CPLD/FPGA器件在編程下載過程中的狀態(tài)劃分,有: 1)主動(dòng)配置方式。 在這種配置方式下,由CPLD/FPGA器件引導(dǎo)配置操作的過程并控制著外部存貯器和初始化過程; 2)被動(dòng)配置方式。 在這種配置方式下,由外部CPU或控制器(如單片機(jī))控制配置的過程。,CPLD/FPGA器件

15、的工作狀態(tài),CPLD/FPGA器件按照正常使用和下載的不同過程其工作狀態(tài)分為三種: 1、用戶狀態(tài)(User mode) 即電路中CPLD器件正常工作時(shí)的狀態(tài); 2、配置狀態(tài)(Configuration mode ) 指將編程數(shù)據(jù)裝入CPLD/FPGA器件的過程,也可稱 之為下載狀態(tài); 3、初始化狀態(tài)(Initialization) 此時(shí)CPLD/FPGA器件內(nèi)部的各類寄存器復(fù)位, 讓IO引腳為使器件正常工作作好準(zhǔn)備。,ALTERA的編程文件,ALTERA 公司的開發(fā)系統(tǒng)Qusrtus可以生成多種格式的編程數(shù)據(jù)文件。對(duì)于不同系列器件, 所能生成的編程/配置文件類型有所不同, 其中最常用的即為.s

16、of文件和.pof文件,但無論什么格式的下載文件,最終下載到FPGA芯片中的文件都為.rbf原始二進(jìn)制文件: SRAM Object格式(.sof:SRAM Object File): SOF格式配置文件由下載電纜將其下載到FPGA芯片中, 其它數(shù)據(jù)格式均可由該種格式轉(zhuǎn)化而成,Quartus II自動(dòng)默認(rèn)生成,SOF文件基于JTAG模式下載,下載速度快,一般在設(shè)計(jì)調(diào)試程序時(shí)使用,但掉電失效。 Programming Object格式(.pof:Programmable Object File): POF格式配置文件用于燒寫Altera公司配置芯片或CPLD芯片, Quartus II自動(dòng)生成,

17、POF文件用于AS配置方式,是燒錄進(jìn)芯片的,速度較慢,但不會(huì)掉電消失,一般在應(yīng)用時(shí)使用。,(一) CPLD的ISP方式編程,CPLD的JTAG方式編程下載連接圖,各引腳信號(hào)名稱,10芯下載口,對(duì)CPLD編程,TCK、TDO、TMS、TDI為CPLD的JTAG口,多CPLD芯片ISP編程連接方式,配置(configuration)是對(duì)FPGA的內(nèi)容進(jìn)行編程的過程。每次上電后都需要進(jìn)行配置是基于SRAM工藝FPGA的一個(gè)特點(diǎn),也可以說是一個(gè)缺點(diǎn)。FPGA配置過程如下:,外部電路將配置數(shù)據(jù)載入片內(nèi)配置RAM中,外部電路,FPGA配置完成,配置 RAM,配置RAM中的配置數(shù)據(jù): 用于控制FPGA內(nèi)部可

18、編程的內(nèi)部邏輯、內(nèi)部寄存器和I/O寄存器初始化,I/O驅(qū)動(dòng)器使能等。之后FPGA進(jìn)入用戶模式。,(二) FPGA配置方式,56,1、 FPGA配置方式 根據(jù)FPGA在配置電路中的角色,可以將配置方式分為三類: (1).FPGA主動(dòng)串行(AS-Active Serial Mode)方式 (2). JTAG (JTAG Mode)方式 (3). FPGA被動(dòng)(PS-Passive Serial Mode)方式,配置數(shù)據(jù),下載工具 或 智能主機(jī),FPGA僅輸出響應(yīng)信號(hào),2、FPGA配置方案圖,PS- Passive Serial FPP- Fast passive parallel PPA- Pas

19、sive parallel asynchronous PPS- Passive parallel synchronous PSA-Passive Serial Asynchronous,主動(dòng)(AS)方式,被動(dòng)(PS)方式,被動(dòng)(PS)方式,JTAG方式,Altera FPGA配置方式列表,Cyclone FPGA配置方式表,3. Cyclone及Cyclone II FPGA配置,Cyclone 以及Cyclone IIFPGA使用SRAM單元來存儲(chǔ)配置數(shù)據(jù)。FPGA中的SRAM是易失性的,每次上電之前,配置數(shù)據(jù)(或壓縮的配置數(shù)據(jù))必須重新下載到FPGA中。下面的2個(gè)條件均可使FPGA產(chǎn)生一次

20、配置請(qǐng)求: 給FPGA重新上電; FPGA的nConfig引腳上產(chǎn)生一個(gè)低電平到高電平的上升沿。,Cyclone及Cyclone II FPGA的配置方式包括: (1)FPGA主動(dòng)串行(AS)配置方式; (2)FPGA被動(dòng)(Passive)配置方式 ; (3)JTAG配置方式 。注:AS和JTAG是實(shí)驗(yàn)室開發(fā)板配置方式 用戶可以通過設(shè)置FPGA上的MSEL0、MESL1兩個(gè)引腳的狀態(tài)來選擇配置方式。各種配置方式的MSEL0、MESL1設(shè)置如下表所列:,MSEL設(shè)置跳線,62,(1) JTAG配置 通過JTAG接口,利用Quartus II軟件可以直接對(duì)FPGA進(jìn)行單獨(dú)的硬件重新配置。Quart

21、us II軟件在編譯時(shí)會(huì)自動(dòng)生成用于JTAG配置的.sof文件。 如果同時(shí)使用AS方式和JTAG方式來配置FPGA,JTAG配置方式擁有最高的優(yōu)先級(jí),此時(shí)AS方式將停止,而執(zhí)行JTAG方式配置。,JTAG配置的電路原理圖,利用Quartus II軟件和USB Blaster、ByteBlaster II等下載電纜可下載配置數(shù)據(jù)到FPGA。Quartus II軟件可以驗(yàn)證JTAG配置是否成功。 JTAG配置通過下載電纜使用SOF、Jam或者JBC文件直接對(duì)FPGA進(jìn)行配置,這種配置方式只能用于調(diào)試階段,因?yàn)?,掉電后FPGA中的配置數(shù)據(jù)將丟失。,JTAG下載口,JTAG Configuration of Multiple Devices (多芯片 JTAG配置電路),主動(dòng)串行配置方式(AS)是將配置數(shù)據(jù)事先存儲(chǔ)在串行配置器件EPCS中,然后在系統(tǒng)上電時(shí)Cyclone及Cyclone II FPGA通過串行接口讀取配置數(shù)據(jù)(如果是壓縮數(shù)據(jù),還會(huì)進(jìn)行解壓縮處理)對(duì)內(nèi)部的SRAM單元進(jìn)行配置。因?yàn)樯鲜雠渲眠^程中FPGA控制配置接口,因此通常稱為主動(dòng)配置方式。,(2)主動(dòng)串行配置,說明: 因?yàn)镕PGA上的nSTATUS、

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論