【文章內(nèi)容簡介】
D A T ACE/ O ER E S E TC E OC C L KD I N 1. 主動和從動的串行模式 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 圖 2 34 從動并行模式電路圖 M1 M2M0S p a r t a n ⅡD0 ∶ D7C C L KB u s yD O N EM1 M2M0S p a r t a n ⅡD0 ∶ D7C C L KD O N EC C L KW RI T EB U S YC S ( 0 )D O N EI N I TP R O G R A MC S( 1 )CSP RO G RA MIN I TP RO G RA MI N I TW R IT EB U S Y…CSW R IT E2. 從動并行模式 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 3. 邊界掃描模式 在采用邊界掃描模式來對 FPGA器件配置或回讀配置數(shù)據(jù)時 , 不需要使用非專用腳 , 僅需通過器件固有的基于 IEEE 試端 TAP即可進(jìn)行 。 通過 TAP進(jìn)行數(shù)據(jù)配置時 , 需要采用專門的CFGIN指令 , 這個指令可把到達(dá) TDI的輸入數(shù)據(jù)轉(zhuǎn)換成內(nèi)部配置總線的數(shù)據(jù)包 。 (1) 載入 CFGIN指令進(jìn)入邊界掃描指令寄存器 (IR), 并進(jìn)入移位數(shù)據(jù)寄存器 (SDR); (2) 將標(biāo)準(zhǔn)配置數(shù)據(jù)串移至 TDI端 , 并回到測試運行閑置 (RTI)狀態(tài); (3) 載入 RSTART指令進(jìn)入 IR, 并進(jìn)入 SDR狀態(tài); (4) 啟動時鐘序列 TCK(該序列長度是可編程的 )后再回到測試運行閑置 (RIT)狀態(tài) 。 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 基于 EPROM/E2PROM/Flash Memory的現(xiàn)場可編程邏輯器件 與 SRAM FPGA相比, EPROM/E2PROM/Flash Memory CPLD的主要特征是: 基于寬位的乘積項( ProductTerm)陣列輸入結(jié)構(gòu), 基于非揮發(fā)的 EPROM/E2PROM/Flash Memory開關(guān)編程原理, 功能復(fù)雜的可編程邏輯塊, 集中布線的布線池等。 采用這種結(jié)構(gòu)的 PLD芯片有: Altera的 MAX 7000、 MAX 3000系列 ( E2PROM工藝 ) , Xilinx的 XC 9500系列 ( Flash工藝 ) 和 Lattice、 Cypress的大部分產(chǎn)品( E2PROM工藝 ) 。 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 EPROM/E2PROM/Flash Memory CPLD的基本結(jié)構(gòu)和工作原理 1. 基于寬位輸入的乘積項 ( ProductTerm) 的 PLD原型結(jié)構(gòu) ( 以 MAX 7000為例 , 其他型號的結(jié)構(gòu)與此都非常相似 ) 這種 PLD可分為三塊結(jié)構(gòu): 以宏單元 ( Marocell) 陣列組合的邏輯陣列模塊( LAB) , 可編程連線 ( PIA) 和 I/O控制塊 。 宏單元是 PLD的最基本元胞 , 由它來實現(xiàn)基本的邏輯功能 。 第 2章 大規(guī)模現(xiàn)場可編程邏輯器件 圖 2 35 基于寬位輸入的乘積項的 PLD內(nèi)部結(jié)構(gòu) 宏單元17 ~ 328 ~ 1636168 ~ 16……宏單元49 ~ 648 ~ 1636168 ~ 16I / O控制塊I / O控制塊宏單元1 ~ 168 ~ 1636168 ~ 16…8 ~ 16I / O 腳… 宏單元33 ~ 488 ~ 1636168 ~ 16I N P U T / O E 2I / O控制塊I / O控制塊L A B AL A B CL A B BL A B D8 ~ 16I / O 腳8 ~ 16I / O 腳8 ~ 16I / O 腳I N P U T / O E 1I N P U T / G C L R nI N P U T / G C L K 1可編程連線第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 圖 2 36 宏單元結(jié)構(gòu) … ……D / T QP R NC L R NE N A可編程寄存器旁 路 寄 存器到 I / O控制塊P I A共 享 邏 輯擴(kuò) 展 項16 個 擴(kuò) 展 乘積 項來自 P I A 的 36 個信號乘 積 項 邏輯 陣 列并 行 邏 輯擴(kuò) 展 項( 來 自 其 他宏 單 元 )全局清零全局時鐘時鐘 / 使能選擇清零選擇VCC…可編程D 觸發(fā)器乘積項選擇矩陣可 編 程 選擇 開 關(guān)2. 基本元胞 ——宏單元 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 3. 擴(kuò)展乘積項 ( Expender Product Terms) 盡管大多邏輯函數(shù)能夠用每個宏單元中的 5個乘積項實現(xiàn) , 但某些邏輯函數(shù)比較復(fù)雜 , 要實現(xiàn)它們 , 需要附加乘積項 。 利用擴(kuò)展項可保證在實現(xiàn)邏輯綜合時 , 用盡可能少的邏輯資源 , 得到盡可能快的工作速度 。 1) 共享擴(kuò)展項 每個 LAB有 16個共享擴(kuò)展項 。 共享擴(kuò)展項就是由每個宏單元提供一個未使用的乘積項 , 并將它們反相后反饋到邏輯陣列 , 便于集中使用 。 每個共享擴(kuò)展乘積項可被 LAB內(nèi)任何 (或全部 )宏單元使用和共享 , 以實現(xiàn)復(fù)雜的邏輯函數(shù) 。 采用共享擴(kuò)展項后會增加一個短的延時 。 2) 并聯(lián)擴(kuò)展項 并聯(lián)擴(kuò)展項是一些宏單元中沒有使用的乘積項 , 并且這些乘積項可分配到鄰近的宏單元去實現(xiàn)快速復(fù)雜的邏輯函數(shù) 。 并聯(lián)擴(kuò)展項允許多達(dá) 20個乘積項直接饋送到宏單元的或邏輯 , 其中 5個乘積項是由宏單元本身提供的 , 15個并聯(lián)擴(kuò)展項是由 LAB中鄰近宏單元提供的 。 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 圖 237 簡單電路舉例 ABCDC L KN O TO R 2A N D 3QP R NDC L R NO U T4. 基于寬位乘積項輸入結(jié)構(gòu) PLD的邏輯實現(xiàn)原理 下面以一個簡單的電路為例 , 具體說明 PLD是如何利用以上結(jié)構(gòu)實現(xiàn)邏輯的。 第 2章 大規(guī)模現(xiàn)場可編程邏輯器件 圖 238 PLD實現(xiàn)組合邏輯 f A AAB BBC CCD DDf1f2f 假設(shè)組合邏輯的輸出 (AND3的輸出 )為 f, f=(A+B)CD=ACD+BCD=f1+f2 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 典型的 EPROM/E2PROM/Flash Memory CPLD產(chǎn)品 1. Xilinx XC 9500系列 CPLD 1) 概述 XC 9500系列 CPLD采用了 ISP技術(shù) 。 采用 ISP技術(shù)之后 , 器件編程不再需要硬件器件 , 只需一根下載電纜和器件的編程接口相連下載軟件即可實現(xiàn) 。 可提供 10 000次以上編程 /擦除周期。 該系列 CPLD的宏單元數(shù)從 36個到 288個; 器件封裝的引腳數(shù)從 44個到 352個。 XC 9500系列 CPLD共分為 V、 V和 V三種系列 。 2) XC 9500XL系列 CPLD的結(jié)構(gòu)原理 每一個 XC 9500XL系列 CPLD由多個功能塊( FB)和 I/O塊( IOB)組成, 可用開關(guān)矩陣 FastCONNECTⅡ 完全互連。 第 2章 大規(guī)?,F(xiàn)場可編程邏輯器件 圖 2 42 XC 9500XL結(jié)構(gòu)框圖 宏單元1 ~ 18F B 1宏單元1 ~ 18F B 2宏單元1 ~ 18F B 3宏單元1 ~ 18FB N