基于可編程邏輯器件的硬件乘法器電子信息本科畢業(yè)論文_第1頁
基于可編程邏輯器件的硬件乘法器電子信息本科畢業(yè)論文_第2頁
基于可編程邏輯器件的硬件乘法器電子信息本科畢業(yè)論文_第3頁
基于可編程邏輯器件的硬件乘法器電子信息本科畢業(yè)論文_第4頁
基于可編程邏輯器件的硬件乘法器電子信息本科畢業(yè)論文_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)號(hào) 1 中州大學(xué)中州大學(xué) 畢業(yè)設(shè)計(jì)(論文) 題題 目目: 基于可編程邏輯器件的硬件乘法器 學(xué)學(xué) 院院: 工程技術(shù)學(xué)院 專專 業(yè)業(yè): 應(yīng)用電子 年 級(jí) 09 級(jí) 班 級(jí) 1 班 學(xué)生姓名學(xué)生姓名: 連雁雁 指導(dǎo)教師指導(dǎo)教師: 時(shí) 偉 職稱: 助 教 時(shí)時(shí) 間間: 中州大學(xué)工程技術(shù)學(xué)院中州大學(xué)工程技術(shù)學(xué)院畢畢業(yè)業(yè)設(shè)設(shè) 計(jì)計(jì) (論文(論文) 任任務(wù)務(wù)書書 畢業(yè)設(shè)計(jì)(論文)題目 基于可編程邏輯器件的硬件乘法器 專 業(yè) 應(yīng)用電子技術(shù) 年 級(jí) 09 級(jí) 班 級(jí) 1 班 指導(dǎo)老師 時(shí)偉 學(xué) 號(hào) 1 學(xué) 生 連雁雁 畢業(yè)設(shè)計(jì)(論文)工作內(nèi)容與基本要求(目標(biāo)、任務(wù)、途徑、方法、成果形式, 應(yīng)掌握的原始資料(數(shù)

2、據(jù)) 、參考資料(文獻(xiàn))以及設(shè)計(jì)技術(shù)要求、注意事項(xiàng)等) (紙張不夠可加頁) 通過本題目的畢業(yè)設(shè)計(jì),培養(yǎng)學(xué)生獨(dú)立分析思考以解決實(shí)際問題的能力。掌握 現(xiàn)代電子電路設(shè)計(jì)自動(dòng)化的基本流程,掌握可編程邏輯器件的硬件結(jié)構(gòu)、原理 和特性,掌握用硬件描述語言、EDA 工具和開發(fā)平臺(tái)對(duì)畢業(yè)設(shè)計(jì)題目涉及的核 心電路及相關(guān)擴(kuò)展電路進(jìn)行設(shè)計(jì)開發(fā)、模擬仿真及硬件測(cè)試的方法。 在本畢業(yè)設(shè)計(jì)中,學(xué)生應(yīng)參閱相關(guān)文獻(xiàn)資料,對(duì)所設(shè)計(jì)題目做深入分析以提出 設(shè)計(jì)方案;論文需提供經(jīng)驗(yàn)證的源程序和相關(guān)仿真測(cè)試數(shù)據(jù)(文本或圖片形式) 。 指導(dǎo)老師: 日期:日期: 年年 月月 專業(yè)(教研室)審批意見: 審批人審批人簽名:簽名: 日期:日期:

3、 年年 月月 中州大學(xué)工程技術(shù)學(xué)院中州大學(xué)工程技術(shù)學(xué)院畢畢業(yè)業(yè)設(shè)設(shè) 計(jì)計(jì) (論文(論文) 開題報(bào)告開題報(bào)告 課題名稱: 基于可編程邏輯器件的硬件乘法器 工程技術(shù) 學(xué)院 應(yīng)用電子技術(shù) 專業(yè) 09 級(jí) 1 班 學(xué) 號(hào) 1 學(xué) 生 連雁雁 指 導(dǎo) 老 師 時(shí)偉 開題報(bào)告內(nèi)容:(調(diào)研資料的準(zhǔn)備,設(shè)計(jì)/論文的目的、要求、思路與預(yù)期成果; 任務(wù)完成的階段內(nèi)容及時(shí)間安排;小組內(nèi)其他成員的分工;完 成設(shè)計(jì)(論文)所具備的條件因素等。 ) 學(xué)生應(yīng)參閱相關(guān)文獻(xiàn)資料,對(duì)所設(shè)計(jì)題做深入分析以提出設(shè)計(jì)方案。通過本題 目的畢業(yè)設(shè)計(jì),培養(yǎng)學(xué)生獨(dú)立分析思考以解決實(shí)際問題的能力。掌握現(xiàn)代電子 電路設(shè)計(jì)自動(dòng)化的基本流程,掌握可編

4、程邏輯器件的硬件結(jié)構(gòu)、原理和特性, 掌握用硬件描述語言、EDA 工具和開發(fā)平臺(tái)對(duì)畢業(yè)設(shè)計(jì)題目涉及的核心電路及 相關(guān)擴(kuò)展電路進(jìn)行設(shè)計(jì)開發(fā)、模擬仿真及硬件測(cè)試的方法。 論文需提供經(jīng)驗(yàn)證的源程序和相關(guān)仿真測(cè)試數(shù)據(jù)(文本或圖片形式) 。 指導(dǎo)教師簽名:指導(dǎo)教師簽名: 日期:日期: 目目 錄錄 摘 要.6 ABSTRACT.7 第一章 引 言.8 1.1 課題背景.8 1.2 設(shè)計(jì)方法.8 第二章 可編程器件 PLD 的基本原理與結(jié)構(gòu).12 2.1 可編程邏輯器件發(fā)展簡(jiǎn)介.12 2.2 MAX7000 系列 CPLD 器件簡(jiǎn)介.13 2.2.1 邏輯陣列塊 LAB(LOGIC ARRAY BLOCK).

5、15 2.2.2 宏單元 MACROCELLS.15 2.2.3 擴(kuò)展乘積項(xiàng) EPT(EXPANDER PRODUCT TERMS).17 2.2.4 可編程互聯(lián)陣列 PIA(PROGRAMMABLE INTERCONNECT ARRAY) .19 2.2.5 IO 控制塊 IOC.20 2.3 CYCLONE系列 FPGA 器件簡(jiǎn)介 .21 第三章 基于 PLD 的硬件乘法器電路的設(shè)計(jì).27 3.1 8 位乘法器設(shè)計(jì)總體框圖.27 3.1.1 設(shè)計(jì)思路.27 3.1.2 方案設(shè)計(jì).28 3.2 選擇器件與功能模塊.28 3.2.1 選擇器件.28 3.3 快速乘法器 VHDL 源程序.30

6、3.3.1 選通與門模塊的源程序 ANDARITH.VHD.30 3.3.2 6 位鎖存器的源程序 REG16B.VHD.31 3.3.3 8 位右移寄存器的源程序 SREG8B.VHD.33 3.3.4 乘法運(yùn)算控制器的源程序 ARICTL.VHD.34 3.3.5 8 位乘法器的源程序 MULTI8X8.VHD.36 3.4 管腳分配圖.41 3.5 實(shí)驗(yàn)下載驗(yàn)證情況.41 心得體會(huì).43 致 謝.44 參考文獻(xiàn).45 摘摘 要要 EDA 是電子設(shè)計(jì)自動(dòng)化(Electronic Design Automation)的縮寫,在 20 世紀(jì) 90 年代初從計(jì)算機(jī)輔助設(shè)計(jì)(CAD) 、計(jì)算機(jī)輔助

7、制造(CAM) 、計(jì)算機(jī)輔助 測(cè)試(CAT)和計(jì)算機(jī)輔助工程(CAE)的概念發(fā)展而來的。EDA 技術(shù)就是以計(jì) 算機(jī)為工具,設(shè)計(jì)者在 EDA 軟件平臺(tái)上,用硬件描述語言 HDL 完成設(shè)計(jì)文件, 然后由計(jì)算機(jī)自動(dòng)地完成邏輯編譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局、布線和 仿真,直至對(duì)于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA 技術(shù)的出現(xiàn),極大地提高了電路設(shè)計(jì)的效率和可操作性,減輕了設(shè)計(jì)者的勞動(dòng) 強(qiáng)度。利用 EDA 工具,電子設(shè)計(jì)師可以從概念、算法、協(xié)議等開始設(shè)計(jì)電子系 統(tǒng),大量工作可以通過計(jì)算機(jī)完成,并可以將電子產(chǎn)品從電路設(shè)計(jì)、性能分析 到設(shè)計(jì)出 IC 版圖或 PCB 版圖的整個(gè)過程的計(jì)

8、算機(jī)上自動(dòng)處理完成。 關(guān)鍵詞:電子自動(dòng)化、硬件描述語言。 Abstract EDA electronic design automation (Electronic Design Automation) stands, in the 20th century, the early 90s from the computer-aided design (CAD), computer- aided manufacturing (CAM), computer-aided test (CAT) and computer-aided engineering (CAE) of the con EDA te

9、chnology is a computer as a tool, designers in the EDA software platform, complete with hardware description language HDL design files, and then automatically completed by computer logic, compile, simplification, segmentation, synthesis, optimization, layout, routing and simulation, until the adapte

10、r chip for the specific target compilation, mapping and programming logic to download and so on.ceptual development of come. EDA technologies, greatly improves the efficiency of the circuit design and operability, reduced the labor intensity of the designer. The use of EDA tools, designers from conc

11、ept, algorithms, protocols and so began to design electronic systems, a lot of work can be completed via a computer, and can be e-products from the circuit design, performance analysis to the IC layout design or PCB layout of the entire process of the computer automatically processed. Keywords: Elec

12、tronic Automation, Hardware Description Language. 第一章第一章 引引 言言 1.11.1 課題背景課題背景 人類社會(huì)已進(jìn)入到高度發(fā)達(dá)的信息化社會(huì),信息社會(huì)的發(fā)展離不開電子產(chǎn) 品的進(jìn)步?,F(xiàn)代電子產(chǎn)品在性能提高、復(fù)雜度增大的同時(shí),價(jià)格卻一直呈下降 趨勢(shì),而且產(chǎn)品更新?lián)Q代的步伐也越來越快,實(shí)現(xiàn)這種進(jìn)步的主要因素是生產(chǎn) 制造技術(shù)和電子設(shè)計(jì)技術(shù)的發(fā)展。前者以微細(xì)加工技術(shù)為代表,目前已進(jìn)展到 深亞微米階段,可以在幾平方厘米的芯片上集成數(shù)千萬個(gè)晶體管。后者的核心 就是 EDA 技術(shù),EDA 是指以計(jì)算機(jī)為工作平臺(tái),融合應(yīng)用電子技術(shù)、計(jì)算機(jī)技 術(shù)、智能化技術(shù)最

13、新成果而研制成的電子 CAD 通用軟件包,主要能輔助進(jìn)行三 方面的設(shè)計(jì)工作:IC 設(shè)計(jì),電子電路設(shè)計(jì),PCB 設(shè)計(jì)。沒有 EDA 技術(shù)的支持,想 要完成上述超大規(guī)模集成電路的設(shè)計(jì)制造是不可想象的,反過來,生產(chǎn)制造技 術(shù)的不斷進(jìn)步又必將對(duì) EDA 技術(shù)提出新的要求。 1.21.2 設(shè)計(jì)方法設(shè)計(jì)方法 10 年前,電子設(shè)計(jì)的基本思路還是選擇標(biāo)準(zhǔn)集成電路“自底向上” (BottomUp)的構(gòu)造出一個(gè)新的系統(tǒng),這樣的設(shè)計(jì)方法就如同一磚一瓦建造金 字塔,不僅效率低、成本高而且容易出錯(cuò)。高層次設(shè)計(jì)給我們提供了一種“自 頂向下”(TopDown)的全新設(shè)計(jì)方法,這種設(shè)計(jì)方法首先從系統(tǒng)設(shè)計(jì)入手,在 頂層進(jìn)行功能

14、方框圖的劃分和結(jié)構(gòu)設(shè)計(jì)。在方框圖一級(jí)進(jìn)行仿真、糾錯(cuò),并用 硬件描述語言對(duì)高層次的系統(tǒng)行為進(jìn)行描述,在系統(tǒng)一級(jí)進(jìn)行驗(yàn)證。然后用綜 合優(yōu)化工具生成具體門電路的網(wǎng)表,其對(duì)應(yīng)的物理實(shí)現(xiàn)級(jí)可以是印刷電路板或 專用集成電路。由于設(shè)計(jì)的主要仿真和調(diào)試過程是在高層次上完成的,這一方 面有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的錯(cuò)誤,避免設(shè)計(jì)工作的浪費(fèi),同時(shí)也減少了邏 輯功能仿真的工作量,提高了設(shè)計(jì)的一次成功率。 1.2.11.2.1 ASICASIC 設(shè)計(jì)設(shè)計(jì) 現(xiàn)代電子產(chǎn)品的復(fù)雜度日益加深,一個(gè)電子系統(tǒng)可能由數(shù)萬個(gè)中小規(guī)模集成 電路構(gòu)成,這就帶來了體積大、功耗大、可靠性差的問題,解決這一問題的有 效方法就是采用 ASIC(A

15、pplication Specific Integrated Circuits)芯片進(jìn)行 設(shè)計(jì)。ASIC 按照設(shè)計(jì)方法的不同可分為:全定制 ASIC,半定制 ASIC,可編程 ASIC(也稱為可編程邏輯器件)。 設(shè)計(jì)全定制 ASIC 芯片時(shí),設(shè)計(jì)師要定義芯片上所有晶體管的幾何圖形和工 藝規(guī)則,最后將設(shè)計(jì)結(jié)果交由 IC 廠家掩膜制造完成。優(yōu)點(diǎn)是:芯片可以獲得最 優(yōu)的性能,即面積利用率高、速度快、功耗低。缺點(diǎn)是:開發(fā)周期長(zhǎng),費(fèi)用高, 只適合大批量產(chǎn)品開發(fā)。 半定制 ASIC 芯片的版圖設(shè)計(jì)方法有所不同,分為門陣列設(shè)計(jì)法和標(biāo)準(zhǔn)單元 設(shè)計(jì)法,這兩種方法都是約束性的設(shè)計(jì)方法,其主要目的就是簡(jiǎn)化設(shè)計(jì),以犧

16、 牲芯片性能為代價(jià)來縮短開發(fā)時(shí)間。 可編程邏輯芯片與上述掩膜 ASIC 的不同之處在于:設(shè)計(jì)人員完成版圖設(shè) 計(jì)后,在實(shí)驗(yàn)室內(nèi)就可以燒制出自己的芯片,無須 IC 廠家的參與,大大縮短了 開發(fā)周期??删幊踢壿嬈骷云呤甏詠?,經(jīng)歷了 PAL、GAL、CPLD、FPGA 幾 個(gè)發(fā)展階段,其中 CPLD/FPGA 屬高密度可編程邏輯器件,目前集成度已高達(dá) 200 萬門/片,它將掩膜 ASIC 集成度高的優(yōu)點(diǎn)和可編程邏輯器件設(shè)計(jì)生產(chǎn)方便 的特點(diǎn)結(jié)合在一起,特別適合于樣品研制或小批量產(chǎn)品開發(fā),使產(chǎn)品能以最快 的速度上市,而當(dāng)市場(chǎng)擴(kuò)大時(shí),它可以很容易的轉(zhuǎn)由掩膜 ASIC 實(shí)現(xiàn),因此開發(fā) 風(fēng)險(xiǎn)也大為降低。上

17、述 ASIC 芯片,尤其是 CPLD/FPGA 器件,已成為現(xiàn)代高層次 電子設(shè)計(jì)方法的實(shí)現(xiàn)載體。 1.2.21.2.2 硬件描述語言硬件描述語言 硬件描述語言(HDLHardware Description Language)是一種用于設(shè)計(jì)硬 件電子系統(tǒng)的計(jì)算機(jī)語言,它用軟件編程的方式來描述電子系統(tǒng)的邏輯功能、 電路結(jié)構(gòu)和連接形式,與傳統(tǒng)的門級(jí)描述方式相比,它更適合大規(guī)模系統(tǒng)的設(shè) 計(jì)。例如一個(gè) 32 位的加法器,利用圖形輸入軟件需要輸入 500 至 1000 個(gè)門, 而利用 VHDL 語言只需要書寫一行 A=B+C 即可,而且 VHDL 語言可讀性強(qiáng),易于 修改和發(fā)現(xiàn)錯(cuò)誤。早期的硬件描述語言,

18、如 ABELHDL、AHDL,由不同的 EDA 廠商開發(fā),互不兼容,而且不支持多層次設(shè)計(jì),層次間翻譯工作要由人工完成。 為了克服以上不足,1985 年美國(guó)國(guó)防部正式推出了 VHDL(Very High Speed IC Hardware Description Language)語言,1987 年 IEEE 采納 VHDL 為硬件描述語 言標(biāo)準(zhǔn)(IEEE STD-1076)。 VHDL 是一種全方位的硬件描述語言,包括系統(tǒng)行為級(jí)、寄存器傳輸級(jí)和邏 輯門級(jí)多個(gè)設(shè)計(jì)層次,支持結(jié)構(gòu)、數(shù)據(jù)流、行為三種描述形式的混合描述,因此 VHDL 幾乎覆蓋了以往各種硬件描述語言的功能,整個(gè)自頂向下或自底向上的電

19、路設(shè)計(jì)過程都可以用 VHDL 來完成。VHDL 還具有以下優(yōu)點(diǎn): (1)VHDL 的寬范圍描述能力使它成為高層次設(shè)計(jì)的核心,將設(shè)計(jì)人員的工 作重心提高到了系統(tǒng)功能的實(shí)現(xiàn)與調(diào)試,而化較少的精力于物理實(shí)現(xiàn)。 (2)VHDL 可以用簡(jiǎn)潔明確的代碼描述來進(jìn)行復(fù)雜控制邏輯的設(shè)計(jì),靈活且 方便,而且也便于設(shè)計(jì)結(jié)果的交流、保存和重用。 (3)VHDL 的設(shè)計(jì)不依賴于特定的器件,方便了工藝的轉(zhuǎn)換。 (4)VHDL 是一個(gè)標(biāo)準(zhǔn)語言,為眾多的 EDA 廠商支持,因此移植性好。 1.2.31.2.3 系統(tǒng)級(jí)設(shè)計(jì)系統(tǒng)級(jí)設(shè)計(jì) 進(jìn)入 90 年代以來,電子信息類產(chǎn)品的開發(fā)明顯出現(xiàn)兩個(gè)特點(diǎn):一是產(chǎn)品的 復(fù)雜程度加深;二是產(chǎn)品

20、的上市時(shí)限緊迫,然而電路級(jí)設(shè)計(jì)本質(zhì)上是基于門級(jí)描 述的單層次設(shè)計(jì),設(shè)計(jì)的所有工作(包括設(shè)計(jì)輸入,仿真和分析,設(shè)計(jì)修改等) 都是在基本邏輯門這一層次上進(jìn)行的,顯然 這種設(shè)計(jì)方法不能適應(yīng)新的形勢(shì), 為此引入了一種高層次的電子設(shè)計(jì)方法,也稱為系統(tǒng)級(jí)的設(shè)計(jì)方法。 高層 次設(shè)計(jì)是一種“概念驅(qū)動(dòng)式”設(shè)計(jì),設(shè)計(jì)人員無須通過門級(jí)原理圖描述電路, 而是針對(duì)設(shè)計(jì)目標(biāo)進(jìn)行功能描述,由于擺脫了電路細(xì)節(jié)的束縛,設(shè)計(jì)人員可以 把精力集中于創(chuàng)造性的方案與概念構(gòu)思上,一旦這些概念構(gòu)思以高層次描述的 形式輸入計(jì)算機(jī)后,EDA 系統(tǒng)就能以規(guī)則驅(qū)動(dòng)的方式自動(dòng)完成整個(gè)設(shè)計(jì)。這樣, 新的概念得以迅速有效的成為產(chǎn)品,大大縮短了產(chǎn)品的研制

21、周期。不僅如此, 高層次設(shè)計(jì)只是定義系統(tǒng)的行為特性,可以不涉及實(shí)現(xiàn)工藝,在廠家綜合庫的 支持下,利用綜合優(yōu)化工具可以將高層次描述轉(zhuǎn)換成針對(duì)某種工藝優(yōu)化的網(wǎng)表, 工藝轉(zhuǎn)化變得輕松容易。 高層次設(shè)計(jì)步驟如下: 第一步: 按照“自頂向下”的設(shè)計(jì)方法進(jìn)行系統(tǒng)劃分。 第二步: 輸入 VHDL 代碼,這是高層次設(shè)計(jì)中最為普遍的輸入方式。 此外,還可以采用圖形輸入方式(框圖,狀態(tài)圖等),這種輸入方式具有直觀、 容易理解的優(yōu)點(diǎn)。 第三步: 將以上的設(shè)計(jì)輸入編譯成標(biāo)準(zhǔn)的 VHDL 文件。對(duì)于大型設(shè)計(jì), 還要進(jìn)行代碼級(jí)的功能仿真,主要是檢驗(yàn)系統(tǒng)功能設(shè)計(jì)的正確性,因?yàn)閷?duì)于大 型設(shè)計(jì),綜合、適配要花費(fèi)數(shù)小時(shí),在綜合前

22、對(duì)源代碼仿真,就可以大大減少 設(shè)計(jì)重復(fù)的次數(shù)和時(shí)間,一般情況下,可略去這一仿真步驟。 .第四步: 利用綜合器對(duì) VHDL 源代碼進(jìn)行綜合優(yōu)化處理,生成門級(jí)描 述的網(wǎng)表文件, 這是將高層次描述轉(zhuǎn)化硬件電路的關(guān)鍵步驟。綜合優(yōu)化是針對(duì) ASIC 芯片供應(yīng)商的某一產(chǎn)品系列進(jìn)行的,所以綜合的過程要在相應(yīng)的廠家綜合 庫支持下才能完成。綜合后,可利用產(chǎn)生的網(wǎng)表文件進(jìn)行適配前的時(shí)序仿真, 仿真過程不涉及具體器件的硬件特性,是較為粗略的,一般設(shè)計(jì),這一仿真步 驟也可略去。 第五步: 利用適配器將綜合后的網(wǎng)表文件針對(duì)某一具 體的目標(biāo)器件進(jìn)行邏輯映射操作,包括底層器件配置、邏輯分割、邏輯優(yōu)化、 布局布線。適配完成后

23、,產(chǎn)生多項(xiàng)設(shè)計(jì)結(jié)果:適配報(bào)告,包括芯片內(nèi)部資源 利用情況,設(shè)計(jì)的布爾方程描述情況等;適配后的仿真模型;器件編程文件。 根據(jù)適配后的仿真模型,可以進(jìn)行適配后的時(shí)序仿真,因?yàn)橐呀?jīng)得到器件的實(shí) 際硬件特性(如時(shí)延特性),所以仿真結(jié)果能比較精確的預(yù)期未來芯片的實(shí)際性 能。如果仿真結(jié)果達(dá)不到設(shè)計(jì)要求,就需要修改 VHDL 源代碼或選擇不同速度品 質(zhì)的器件,直至滿足設(shè)計(jì)要求。 第六步: 將適配器產(chǎn)生的器件編程 文件通過編程器或下載電纜載入到目標(biāo)芯片 FPGA 或 CPLD 中。如果是大批量產(chǎn) 品開發(fā),通過更換相應(yīng)的廠家綜合庫,可以很容易轉(zhuǎn)由 ASIC 形式實(shí)現(xiàn)。 第二章第二章 可編程器件可編程器件 PLD

24、PLD 的基本原理的基本原理與結(jié)構(gòu)與結(jié)構(gòu) 2.12.1 可編程邏輯器件可編程邏輯器件發(fā)展簡(jiǎn)介發(fā)展簡(jiǎn)介 早期的可編程邏輯器件只有可編程的只讀存貯器 PROM (Programmable Read Only Memory)、紫外線可擦除只讀存貯器 UV-EPROM (Ultra Violet Erasable Programmable Read Only Memory)和電可擦除只讀存貯器 EEPROM 或 E2PROM (Electrical Erasable Programmable Read Only Memory)三種。這些 器件由于結(jié)構(gòu)的限制只能完成簡(jiǎn)單的數(shù)字存儲(chǔ)功能。 其后,出現(xiàn)的結(jié)構(gòu)

25、稍復(fù)雜的可編程芯片,即可編程邏輯器件(PLD),能夠完 成各種數(shù)字邏輯功能。典型的 PLD 器件結(jié)構(gòu)如圖 21 所示,由一個(gè)“與”門和 一個(gè)“或”門陣列組成,而任意一個(gè)組合邏輯都可以用“與或”表達(dá)式來描 述,所以 PLD 能以乘積項(xiàng)和的形式完成大量的組合邏輯功能。 圖 21 典型 PLD 器件的部分結(jié)構(gòu) 該階段的產(chǎn)品主要有可編程陣列邏輯 PAL (Programmable Array Logic)和 通用陣列邏輯 GAL (Generic Array Logic)。PAL 由一個(gè)可編程的“與”平面和 一個(gè)固定的“或”平面構(gòu)成,或門的輸出可以通過觸發(fā)器有選擇地被置為寄存 狀態(tài)。PAL 器件具有現(xiàn)

26、場(chǎng)可編程功能,所采用的工藝有反熔絲工藝、EPROM 工藝 和 EEPROM 工藝。還有一類結(jié)構(gòu)更為靈活的邏輯器件是可編程邏輯陣列(PLA), 它也由一個(gè)“與”平面和一個(gè)“或”平面構(gòu)成,但是這兩個(gè)平面的連接關(guān)系是 可編程的。PLA 器件采用現(xiàn)場(chǎng)可編程或者掩膜可編程方式實(shí)現(xiàn)邏輯電路。在 PAL 的基礎(chǔ)上,又發(fā)展了一種通用陣列邏輯 GAL,如 GAL16V8,GAL22V10 等。它采用 了 EEPROM 工藝,可以用電信號(hào)擦除和改寫,與 PAL 不同的是,其輸出結(jié)構(gòu)是可 編程的邏輯宏單元,用戶可以自行定義輸出單元的邏輯功能,因而設(shè)計(jì)具有更 強(qiáng)的靈活性,至今許多成熟器件仍被廣泛使用。這些早期 PLD

27、 器件的一個(gè)共同 特點(diǎn)是可以實(shí)現(xiàn)速度特性較好的邏輯功能,但其集成密度還不夠大,引腳數(shù)量 也很受限制,由于這些限制使得該類器件只能實(shí)現(xiàn)規(guī)模較小規(guī)模的邏輯電路。 20 世紀(jì) 80 年代中期,隨著集成電路制造工藝的不斷改進(jìn),可編程器件廠 商 Altera 和 Xilinx 分別推出了類似于 PAL 結(jié)構(gòu)的擴(kuò)展型復(fù)雜可編程器件 CPLD (Complex Programmab1e Logic Device)和與標(biāo)準(zhǔn)門陣列類似的現(xiàn)場(chǎng)可編程門陣 列 FPGA (Field Programmable Gate Array),這類器件都具有體系結(jié)構(gòu)和邏輯 單元靈活、集成度高以及適用范圍廣等特點(diǎn)。這兩種器件兼容

28、了 PLD 和通用門 陣列的優(yōu)點(diǎn),可實(shí)現(xiàn)較大規(guī)模的邏輯電路,編程也很靈活。同其它專用集成電 路 ASIC 相比,該類器件可以有效的縮短開發(fā)周期,降低設(shè)計(jì)制造成本低并擁有 先進(jìn)的開發(fā)工具支持,另外還具有標(biāo)準(zhǔn)產(chǎn)品無需測(cè)試、質(zhì)量穩(wěn)定以及可實(shí)時(shí)在 線檢驗(yàn)等優(yōu)點(diǎn),因此被廣泛應(yīng)用于產(chǎn)品的原型設(shè)計(jì)和產(chǎn)品生產(chǎn)(一般在 10,000 件以下)中。幾乎所有應(yīng)用門陣列、PLD 和中小規(guī)模通用數(shù)字集成電路的場(chǎng)合均 可應(yīng)用 FPGA 和 CPLD 器件。 2.22.2 MAX7000MAX7000 系列系列 CPLDCPLD 器件簡(jiǎn)介器件簡(jiǎn)介 MAX7000S 是 Altera 公司 CPLD 系列芯片中的重要產(chǎn)品,廣

29、泛應(yīng)用于各種設(shè) 計(jì)領(lǐng)域,在此系列產(chǎn)品中的設(shè)計(jì)實(shí)現(xiàn)具有一定的代表性。該系列產(chǎn)品具有固定 的片內(nèi)布線延時(shí),可以減小了 RDL 中門單元的延時(shí)離散性,因此本文選擇該系 列產(chǎn)品為目標(biāo)芯片。本文基于 8 位乘法器在 MAX7000S 系列芯片 EPM7128SLC-15 上實(shí)現(xiàn)。下面對(duì) MAX7000S 系列 CPLD 芯片的基本結(jié)構(gòu)和功能特點(diǎn)作以介紹。 Altera 公司出品 MAX7000 系列包括 MAX7000、MAX7000S、MAX7000AE 等具 體型號(hào),該系列芯片基于先進(jìn)的多陣列矩陣(MAX)架構(gòu),為大量應(yīng)用提供了世 界級(jí)的高性能解決方案?;?EEPROM 只讀存儲(chǔ)器的 MAX700

30、0S 產(chǎn)品采用先進(jìn)的 CMOS 工藝制造,提供從 32 到 256 個(gè)宏單元的密度范圍,速度達(dá) 3.5 ns 的管腳 到管腳延遲。MAX 7000 器件都支持在系統(tǒng)可編程能力 ISP(In System Programmable) ,可以在現(xiàn)場(chǎng)進(jìn)行重配置。Altera 提供 5.0V,3.3V 和 2.5V 核 心電壓的 MAX 7000 器件,如表 21 所示(其中 tpd 表示設(shè)計(jì)從輸入到非寄存 器輸出的最小數(shù)據(jù)延遲)。 表 21 MAX7000 系列器件集成密度和工作速度 密度(宏單元)MAX7000S MAX7000S (5.0V)(5.0V) MAX7000AE (3.3V) MAX

31、7000B (2.5V) 最快 tpd (ns) 323.5 643.5 1281284.04.0 160 6.0 192 7.5 2565.0 512 5.5 Altera 的 MultiVolt 多電壓接口允許設(shè)計(jì)人員在 MAX 7000 設(shè)計(jì)中無縫集 成 1.8V、2.5V、3.3V 和 5.0V 邏輯電平,其中 MAX7000S 系列器件核心工作電 壓為 5V,管腳電壓兼容 3.3V 和 5V。MAX 7000 器件具有即用性,非易失性的特 點(diǎn),提供全局時(shí)鐘,在系統(tǒng)可編程,漏極開路輸出,可編程上電狀態(tài),快速輸 入建立時(shí)間和可編程輸出回轉(zhuǎn)速率控制特性,使得 MAX 7000 器件適用于大

32、量系 統(tǒng)級(jí)的應(yīng)用。 MAX7000S 系列器件的技術(shù)性能指標(biāo)性如下: (1) 高密度:可用等效邏輯門最大為 5000 門,宏邏輯單元最多可達(dá)到 256 個(gè)。 (2) 高速度:MAX7000S 系列器件的系統(tǒng)工作速度 180MHz,設(shè)計(jì)從輸入到非寄存 器輸出的最小數(shù)據(jù)延遲為 4ns。 (3) 在系統(tǒng)可編程:MAX7000S 系列器件支持 IEEE.1149.1 邊界掃描測(cè)試標(biāo)準(zhǔn)。 在 MAX7000S 系列器件結(jié)構(gòu)中主要包括 LAB(Logic Array Block) 、宏單元 (Macro-cells) 、擴(kuò)展乘機(jī)項(xiàng) EPT(Expander Product Terms) 、可編程連線 陣列

33、 PIA(Programmable Interconnect Array)和 IO 控制塊(IO Control Block) 。除此之外,MAX7000S 系列內(nèi)部結(jié)構(gòu)中還包括全局時(shí)鐘輸入和全局時(shí)鐘 輸出使能的控制線,可以作為一般的輸入端使用。圖 22 是 MAX7000S 器件的 內(nèi)部結(jié)構(gòu)。 圖 22 MAX7000S 器件的內(nèi)部結(jié)構(gòu) 2.2.12.2.1 邏輯陣列塊邏輯陣列塊 LABLAB(LogicLogic ArrayArray BlockBlock) 邏輯陣列塊 LAB 是 MAX7000S 系列器件中最大的邏輯單元,每個(gè)邏輯單元陣 列塊 LAB 由 16 個(gè)宏單元構(gòu)成,他們與各自

34、相對(duì)應(yīng)的 IO 控制塊相連,4 個(gè)邏輯 陣列塊通過可編程連線陣列 PIA 和全局總線連接在一起。全局總線由所有的專 用輸入、IO 引腳和宏單元反饋構(gòu)成。利用它們來實(shí)現(xiàn)不同邏輯陣列塊之間的互 連,從而實(shí)現(xiàn)更為復(fù)雜的邏輯功能。每個(gè)邏輯陣列塊有下列輸入信號(hào): 來自通用邏輯輸入的 PIA 的 36 個(gè)信號(hào); 用于寄存器輔助功能的全局控制信號(hào); 從 IO 引腳到寄存器的直接輸入通道,來實(shí)現(xiàn) MAX7000E 和 MAX7000S 器件的快 速建立時(shí)間。 2.2.22.2.2 宏單元宏單元 MacroCellsMacroCells MAX7000S 系列器件的基本邏輯單元稱為邏輯宏單元(如圖 23 所示)

35、 ,可 以用來實(shí)現(xiàn)各種具體的邏輯功能。本文第三章介紹的基于環(huán)形延時(shí)鏈的 TDC 電 路設(shè)計(jì)中,RDL 中的每個(gè)基本門單元都是由單獨(dú)的一個(gè)邏輯宏單元來實(shí)現(xiàn),16 個(gè)門單元共占用了 16 個(gè)邏輯宏單元。宏單元由邏輯陣列、乘積項(xiàng)選擇矩陣和可 編程觸發(fā)器組成,邏輯陣列用來實(shí)現(xiàn)組合邏輯函數(shù),每個(gè)宏單元提供 5 個(gè)乘積 項(xiàng)。通過乘積項(xiàng)選擇矩陣實(shí)現(xiàn) 5 個(gè)乘積項(xiàng)的邏輯函數(shù)?;蛘呤惯@ 5 個(gè)乘積項(xiàng)作 為宏單元里觸發(fā)器的輔助輸入(清除、置位、時(shí)鐘和時(shí)鐘使能) 。每個(gè)宏單元的 一個(gè)乘積項(xiàng)還可以反饋到邏輯陣列。宏單元中的可編程觸發(fā)器可以被單獨(dú)編程 為 D、T、JK 或者 SR 觸發(fā)器,可編程觸發(fā)器還可以被旁路掉,用

36、以實(shí)現(xiàn)純組合 邏輯函數(shù)。每個(gè)可編程觸發(fā)器的觸發(fā)脈沖可以從以下三種方式中選擇。 全局時(shí)鐘(Global Clock) ,能夠?qū)崿F(xiàn)最快的時(shí)鐘控制。 帶高電平使能的全局時(shí)鐘,以實(shí)現(xiàn)具有使能控制的觸發(fā)器,并實(shí)現(xiàn)最快的時(shí) 鐘控制。 來自乘積項(xiàng)的時(shí)鐘,觸發(fā)器由來自隱含單元或者 IO 引腳的信號(hào)進(jìn)行時(shí)鐘控制, 它一般具有較慢的時(shí)鐘控制。 圖 23 MAX7000S 的宏單元圖 MAX7000E 和 MAX7000S 系列都由 2 個(gè)全局時(shí)鐘信號(hào) GCLK1,GCLK2。MAX7000E 和 MAX7000S 的 IO 引腳都有一個(gè)宏單元寄存器的快速 輸入通道,它能夠旁路 PIA 和組合邏輯,也允許把觸發(fā)器作

37、為具有快速建立時(shí) 間(2.5ns)的輸入寄存器。 2.2.32.2.3 擴(kuò)展乘積項(xiàng)擴(kuò)展乘積項(xiàng) E EPTPT(ExpanderExpander ProductProduct TermsTerms) 盡管大多數(shù)邏輯函數(shù)可以由每個(gè)宏單元的 5 個(gè)乘積項(xiàng)來實(shí)現(xiàn),但是對(duì)于更 為復(fù)雜的邏輯函數(shù),還需要附加乘積項(xiàng)。為了提供所需要的邏輯資源,可以借 用另一個(gè)宏單元內(nèi)部的邏輯資源。MAX7000S 器件允許利用共享和并聯(lián)擴(kuò)展乘積 項(xiàng)作為附加的乘積項(xiàng)直接送到同一邏輯陣列塊 LAB 的任意宏單元中。利用擴(kuò)展 項(xiàng)可保證在實(shí)現(xiàn)復(fù)雜邏輯綜合時(shí),盡可能少地占用邏輯資源,從而實(shí)現(xiàn)較快的 工作速度。 共享擴(kuò)展項(xiàng) 共享擴(kuò)展項(xiàng)就

38、是由每個(gè)宏單元提供一個(gè)未被使用的乘積項(xiàng),并將它們反相 后反饋到邏輯陣列塊,每個(gè)邏輯陣列塊區(qū) LAB 有 16 個(gè)共享擴(kuò)展項(xiàng)。圖 24 顯 示了利用共享擴(kuò)展項(xiàng)實(shí)現(xiàn)多個(gè)宏單元之間的連接。 圖 24 利用共享擴(kuò)展項(xiàng)實(shí)現(xiàn)多個(gè)宏單元之間的連接 每個(gè)共享擴(kuò)展項(xiàng)都可以被邏輯陣列塊內(nèi)的任何一個(gè)宏單元或者全部宏單元 使用和共享,以實(shí)現(xiàn)更為復(fù)雜的邏輯函數(shù)。如果某個(gè)與項(xiàng)(也叫乘積項(xiàng) ProductTerm) ,例如 ABC,要在多個(gè)邏輯函數(shù)中用到,就可以把這個(gè)乘積項(xiàng) 反饋到邏輯陣列,共享給多個(gè)宏單元使用,此乘積項(xiàng)稱為共享擴(kuò)展乘積項(xiàng)。否 則,許多宏單元就要重復(fù)實(shí)現(xiàn)該乘積項(xiàng)。采用共享乘積項(xiàng)后系統(tǒng)會(huì)增加一個(gè)短 暫的延時(shí)

39、tSEXP。上圖給出了兩個(gè)宏單元的乘積項(xiàng)邏輯。通過對(duì)乘積項(xiàng)選擇矩 陣的編程,反相器就可以實(shí)現(xiàn)不同宏單元之間的級(jí)聯(lián),可以實(shí)現(xiàn)更為復(fù)雜的邏 輯函數(shù)。 并聯(lián)擴(kuò)展項(xiàng) 一個(gè)基本宏單元最多可實(shí)現(xiàn) 5 個(gè)乘積項(xiàng)之和,因?yàn)橐粋€(gè)宏單元中只有 5 個(gè) 與門,這種規(guī)模通常可以滿足大部分普通的組合邏輯需求。當(dāng)所需要的乘積項(xiàng) 超過 5 個(gè)時(shí),MAX7000 系列 CPLD 中的用并聯(lián)擴(kuò)展乘積項(xiàng)來解決這個(gè)問題,即把 一個(gè)宏單元的或門輸出擴(kuò)展到 10 個(gè)乘積之和,擴(kuò)展而來的乘積稱為并聯(lián)擴(kuò)展項(xiàng)。 并聯(lián)擴(kuò)展最多允許 3 級(jí)共 15 個(gè)擴(kuò)展乘積項(xiàng),并且,這些乘積項(xiàng)還可以分配到相 鄰的宏單元去實(shí)現(xiàn)快速?gòu)?fù)雜的邏輯函數(shù)。并聯(lián)擴(kuò)展項(xiàng)允許

40、多大 20 個(gè)乘積項(xiàng)直接 饋送到宏單元的“或”邏輯,其中其中 5 個(gè)乘積項(xiàng)由宏單元本身提供,另外 15 個(gè)并聯(lián)擴(kuò)展項(xiàng)由邏輯陣列中相鄰的宏單元提供。每個(gè)邏輯陣列塊中由兩組宏單 元,每組含有 8 個(gè)宏單元。例如,邏輯陣列塊中一組宏單元為 18,另一組就 時(shí) 916。它們?cè)谶壿嬯嚵袎K中形成 2 個(gè)出借和借用并聯(lián)擴(kuò)展項(xiàng)的鏈。并聯(lián)擴(kuò) 展項(xiàng)也會(huì)帶來附加的延時(shí),擴(kuò)展級(jí)數(shù)越多,延時(shí)越大。 一個(gè)宏單元可以從較小編號(hào)的宏單元中借用并聯(lián)擴(kuò)展項(xiàng)。例如,宏單元 15 能從宏單元 14 或者宏單元 13 中借用并聯(lián)擴(kuò)展項(xiàng)。由 8 個(gè)宏單元的每個(gè)組,最 小編號(hào)的宏單元僅能出借并聯(lián)擴(kuò)展項(xiàng),而最大編號(hào)的宏單元僅能借用并聯(lián)擴(kuò)展

41、項(xiàng),宏單元中不用的乘積項(xiàng)可以分配給相鄰的宏單元。圖 2-5 給出了從相鄰宏 單元中借出和借用并聯(lián)擴(kuò)展乘積項(xiàng)信號(hào)的情況。 圖 25 從相鄰宏單元中借出和借用并聯(lián)擴(kuò)展乘積項(xiàng)信號(hào) 2.2.42.2.4 可編程互聯(lián)陣列可編程互聯(lián)陣列 PIAPIA(ProgrammableProgrammable InterconnectInterconnect ArrayArray) 通過可編程互聯(lián)陣列可以把各個(gè)邏輯陣列塊相互連接起來,實(shí)現(xiàn)用戶所需 要的具體邏輯功能。該全局總線是可編程的通道,它可以把各種器件中任何信 號(hào)源互連起來。 圖 26 PIA 的信號(hào)連接到邏輯陣列塊的方法 圖 26 顯示了可編程互連陣列 PI

42、A 信號(hào)連接到邏輯陣列塊 LAB 的方式。EEPROM 單元控制二輸入與門單元的一個(gè)輸入端,驅(qū)動(dòng)邏輯陣列塊的可編程連線陣列 PIA 信號(hào)是通過對(duì) EEPROM 單元的編程來選通的。 MAX7000S 系列器件的可編程連線陣列 PIA 有固定的延時(shí),消除了信號(hào)在金 屬連線上傳播造成的時(shí)間偏移,行延時(shí)性能也是可以預(yù)測(cè)的。本設(shè)計(jì)中為了減 小 RDL 中延時(shí)門單元的延時(shí)離散性,采用了該類 CPLD 器件來實(shí)現(xiàn)設(shè)計(jì),而放棄 了使用 FPGA 器件。 2.2.52.2.5 IOIO 控制塊控制塊 IOCIOC 每個(gè)邏輯陣列塊與外部 IO 引腳之間有一個(gè) IO 控制塊。IO 控制塊允許每個(gè) IO 引腳單獨(dú)地

43、配置成輸入/輸出或者雙向工作模式。所有 IO 引腳都是一個(gè)三態(tài) 輸出緩沖器,三態(tài)緩沖器的使能端受一個(gè)全局輸出使能信號(hào)控制,還可以把使 能信號(hào)直接連接到地(GND)或者電源(VCC) 。在 MAX7000S 中每個(gè) IOC 中 6 個(gè) 全局輸出使能信號(hào),這些信號(hào)可以取自 2 個(gè)輸出使能信號(hào)、1 個(gè) IO 引腳的集合 或者 1 個(gè) IO 宏單元信號(hào)的集合以及它們的反相信號(hào)。圖 27 是 MAX7000S 系列 的 IO 控制塊的方框圖。當(dāng)三態(tài)緩沖器的控制端連接電源 VCC 時(shí),其輸出使能有 效;當(dāng)連接到地 GND 時(shí),其輸出為高阻態(tài),但 IO 引腳可作為專用輸入引腳。 圖 27 MAX7000S

44、系列的 IO 控制塊的方框圖。 2.32.3 CycloneCyclone 系列系列 FPGAFPGA 器件簡(jiǎn)介器件簡(jiǎn)介 Cyclone 系列是 Altera 公司繼 ACEX 系列之后推出的一款低成本、高性價(jià) 比芯片,之后還有基于 90nm 工藝的 Cyclone II 系列。低成本 FPGA 主要定位在 大量且對(duì)成本敏感的設(shè)計(jì)中,如數(shù)字終端、手持設(shè)備等27。另外,PC、消費(fèi) 產(chǎn)品和工業(yè)控制領(lǐng)域,F(xiàn)PGA 還不是特別普及,主要原因就是以前其成本相對(duì)較 高。隨著 FPGA 廠商的工藝改進(jìn),制造成本的降低,F(xiàn)PGA 將會(huì)被越來越多地接 受。 FPGA 通常采用查找表 LUT(Look-Up Ta

45、ble)結(jié)構(gòu)實(shí)現(xiàn),查找表本質(zhì)上就是 一個(gè)隨即存儲(chǔ)器 RAM。目前 FPGA 中多使用 4 輸入的 LUT,所以每一個(gè) LUT 可以 看成一個(gè)有 4 位地址線的 16x1 的 RAM。當(dāng)用戶通過原理圖或硬件描述語言完成 邏輯電路設(shè)計(jì)后,開發(fā)軟件會(huì)自動(dòng)計(jì)算邏輯電路的所有可能的結(jié)果,并把結(jié)果 寫入 RAM,這樣每輸入一個(gè)信號(hào)進(jìn)行邏輯運(yùn)算就等于輸入一個(gè)地址進(jìn)行查表, 找出地址對(duì)應(yīng)的內(nèi)容輸出即可。 LUT 結(jié)構(gòu)很適合 SRAM 工藝生產(chǎn),故目前大部分 FPGA 都基于 SRAM 工藝制造, 這類種芯片在掉電后信息會(huì)丟失,需要外加專用配置芯片,在系統(tǒng)上電時(shí),由 專用配置芯片把數(shù)據(jù)加載到 FPGA 后,F(xiàn)P

46、GA 芯片開始正常工作;配置所需的時(shí) 間很短,不會(huì)影響系統(tǒng)正常工作。 Cyclone 系列器件采用 0.13um 的制造工藝,內(nèi)部主要有邏輯陣列塊 LAB、IO 單元、嵌入式硬件乘法器、鎖相環(huán) PLL 和嵌入式存儲(chǔ)器 M4K。Cyclone 系列 FPGA 邏輯容量從 29120060 個(gè) LE(Logic Element) ,特性見表 22。 表 22 Cyclone 系列 FPGA 特性: 特性 EP1C3EP1C4EP1C6EP1C6EP1C12EP1C20 LE29104000598059801206020060 M4K RAM131720205264 鎖相環(huán) 122 222 最大用戶

47、 I/O 104301185185249301 Cyclone 器件的平面布局如圖 28 所示。 圖 28 Cyclone 系列 EP1C12 器件平面布局 器件內(nèi)部的嵌入式存儲(chǔ)器塊只有 M4K 一種,可以實(shí)現(xiàn)真正的雙端口、簡(jiǎn)單 雙端口和單端口的 RAM,同時(shí)支持移位寄存器和 ROM 工作模式。第三章中環(huán)形 移位寄存器即可通過軟件調(diào)用宏模塊在 M4K 中實(shí)現(xiàn),也可以通過硬件描述語言 實(shí)現(xiàn)。 Cyclone 內(nèi)部有 8 個(gè)全局時(shí)鐘網(wǎng)絡(luò),可以由全局時(shí)鐘管腳 CLK03、復(fù)用的 時(shí)鐘管腳 DPCLK07、鎖相環(huán)(PLL)或者是內(nèi)部邏輯來驅(qū)動(dòng)。器件中 PLL 只能 由全局時(shí)鐘管腳 CLK03 來驅(qū)動(dòng)。

48、CLK0 和 CLK1 可以作為 PLL1 的兩個(gè)可選時(shí)鐘 輸入端口,也可以作為一對(duì)差分 LVDS 的時(shí)鐘輸入管腳,CLK0 作為正輸入端 (LVDSCLK1p) ,CLK1 作為負(fù)端輸入(LVDSCLK1n) 。同樣 CLK2 和 CLK3 可以作為 PLL2 的兩個(gè)可選的時(shí)鐘輸入端,也可以作為一對(duì)差分 LVDS 的時(shí)鐘輸入管腳, 詳見圖 29。 圖 29 Cyclone 器件的全局時(shí)鐘網(wǎng)絡(luò) 芯片內(nèi)部的鎖相環(huán) PLL 結(jié)構(gòu)如圖 210 所示。一個(gè) PLL 的輸出可以驅(qū)動(dòng)兩 個(gè)內(nèi)部全局時(shí)鐘網(wǎng)絡(luò)和一個(gè) IO 管腳。Cyclone 的 PLL 支持 3 種反饋模式,正常 反饋模式、0 延時(shí)驅(qū)動(dòng)器反

49、饋模式、無補(bǔ)償模式。由于沒有外部反饋引腳,所 以不支持外部反饋模式。 正常反饋模式:在該模式下,內(nèi)部被補(bǔ)償?shù)臅r(shí)鐘網(wǎng)絡(luò)的末端相位與時(shí)鐘 輸入管腳同相位。 0 延時(shí)驅(qū)動(dòng)器反饋模式:在這種模式下,PLL 外部被補(bǔ)償?shù)臅r(shí)鐘專用輸出 管腳的相位與時(shí)鐘輸入管腳同相位。這時(shí)的 FPGA 內(nèi)部的 PLL 就好像是一個(gè) 0 延 時(shí)的鎖相環(huán)電路。 無補(bǔ)償模式:這種模式下,反饋電路中沒有任何補(bǔ)償延時(shí)電路,內(nèi)部時(shí) 鐘和輸入時(shí)鐘的相位關(guān)系就由 PLL 的基本特性決定。 圖 210 Cyclone 系列 FPGA 內(nèi)部的鎖相環(huán)結(jié)構(gòu) Cyclone 器件支持以下特性:(1)差分和單端 IO 標(biāo)準(zhǔn);(2)3.3V 64 和

50、32 位, 66 和 33MHz PCI 兼容; (3)JTAG 邊界掃描支持;(4)輸出驅(qū)動(dòng)的增強(qiáng)控制;(5) 配置時(shí)僅需小阻值上拉電阻;(6)擺動(dòng)(Slew-Rate)控制; (7)三態(tài)緩沖;(8)總 線保持電路;(9)用戶模式中的可編程上拉電阻;(10)可編程輸入輸出延時(shí); (11) 支持漏極輸出;(12)DQ 和 QQS IO 管腳支持。 Cyclone 器件的 IOE(如圖 211 所示)中包含一個(gè)雙向 IO 緩沖 Buffer 和 3 個(gè)寄存器;這三個(gè)寄存器分別是輸入寄存器,輸出寄存器和輸出使能寄存 器,可將 IO 管腳配置成輸入、輸出或者雙向模式。在與外部的芯片接口時(shí),使 用 I

51、OE 的觸發(fā)器可以顯著提高設(shè)計(jì)的輸入性能,因?yàn)閺?IOE 觸發(fā)器到管腳的延 時(shí)要比 LE 中的觸發(fā)器到管腳的延時(shí)小很多。但是如果把輸入輸出觸發(fā)器放在 IOE 中,雖然可以提高 IO 性能,但有時(shí)會(huì)導(dǎo)致從內(nèi)部邏輯到 IOE 觸發(fā)器的路徑 稱為關(guān)鍵路徑,反而影響 FPGA 的整體性能,所以 Altera 官方資料建議用戶從 整體設(shè)計(jì)的角度出發(fā),決定是否需要將輸入輸出觸發(fā)器放置到 IOE 中。 圖 211 Cyclone 系列器件 IOE 的結(jié)構(gòu)圖 Cyclone 器件的管腳可以支持單端和差分 LVDS 的接口電平,支持 PCI 總線 標(biāo)準(zhǔn),其 IOE 內(nèi)部示意圖如圖 211 所示。管腳可編程的上拉

52、電阻,可選的 PCI 鉗位二極管和總線保持電路。輸出驅(qū)動(dòng)器可以驅(qū)動(dòng)電流強(qiáng)度、翻轉(zhuǎn)斜率 (Slew)和漏極開路。當(dāng)設(shè)置為高速 LVDS 接口時(shí),性能可以達(dá)到 311Mbit/s, 此時(shí)必須注意匹配電路網(wǎng)絡(luò)的接法,可以參考圖 212。 圖 212 Cyclone 器件 LVDS 接口的電阻匹配網(wǎng)絡(luò) 圖 212 中,接收端只需在靠近管腳處并聯(lián)上一個(gè) 100 歐姆的電阻;在發(fā) 送端需要有一個(gè)由 2 個(gè)電阻組成的電阻網(wǎng)絡(luò),而且要保證它們非??拷苣_, 必須在 1 英寸以內(nèi)。Cyclone 內(nèi)部要實(shí)現(xiàn)并串/串并轉(zhuǎn)換,必須用內(nèi)部邏輯實(shí)現(xiàn)。 第三章第三章 基于基于 PLDPLD 的硬件乘法器電路的設(shè)計(jì)的硬件乘

53、法器電路的設(shè)計(jì) 3.13.1 8 8 位乘法器設(shè)計(jì)總體框圖位乘法器設(shè)計(jì)總體框圖 (3.13.1 電路的總體框圖)電路的總體框圖) (1)說明:此電路由五部分組成 (2)它們分別是控制器,鎖存器,寄存器,乘法器,加法器。 1 控制器是一個(gè)乘法器的控制模塊,用來接受實(shí)驗(yàn)系統(tǒng)上的連續(xù)脈沖。 2 鎖存器起鎖存的作用,它可以鎖存 8 位乘數(shù)。 3 移位寄存器起移位的作用,便于被乘數(shù)可以逐位移出。 4 乘法器功能類似一個(gè)特殊的與非門。 5 加法器用于 8 位乘數(shù)和高 8 位相加。 3.1.13.1.1 設(shè)計(jì)思路設(shè)計(jì)思路 純組合邏輯構(gòu)成的乘法器雖然工作速度比較快,但過于占用硬件資源,難以實(shí) 現(xiàn) 寬位乘法器,

54、基于 PLD 器件外接 ROM 九九表的乘法器則無法構(gòu)成單片系統(tǒng),也 不 實(shí)用。這里介紹由八位加法器構(gòu)成的以時(shí)序邏輯方式設(shè)計(jì)的八位乘法器,具有 一 定的實(shí)用價(jià)值,而且由 FPGA 構(gòu)成實(shí)驗(yàn)系統(tǒng)后,可以很容易的用 ASIC 大型集成 芯 片來完成,性價(jià)比高,可操作性強(qiáng)。其乘法原理是:乘法通過逐項(xiàng)移位相加原 理 來實(shí)現(xiàn),從被乘數(shù)的最低位開始,若為 1,則乘數(shù)左移后與上一次的和相加; 若 為 0,左移后以全零相加,直至被乘數(shù)的最高位。 3.1.23.1.2 方案設(shè)計(jì)方案設(shè)計(jì) 此設(shè)計(jì)是由八位加法器構(gòu)成的以時(shí)序邏輯方式設(shè)計(jì)的八位乘法器,它的核心器 件 是八加法器,所以關(guān)鍵是設(shè)計(jì)好八位加法器 方案一:八位

55、直接寬位加法器,它的速度較快,但十分耗費(fèi)硬件資源,對(duì)于工 業(yè) 化設(shè)計(jì)是不合理的 方案二:由兩個(gè)四位加法器組合八位加法器,其中四位加法器是四位二進(jìn)制并 行 加法器它的原理簡(jiǎn)單,資源利用率和進(jìn)位速度方面都比較好。綜合各方面的考 慮,決定采用方案二。 3.23.2 選擇器件與功能模塊選擇器件與功能模塊 3.2.13.2.1 選擇器件選擇器件 SREG8B(移位寄存器); REG16B(16 位瑣存器); ARICTL(運(yùn)算控制器) ; ANDARITH(1 位乘法器); ADDER8B(8 位加法器) ; 數(shù)碼管(顯示結(jié)果) 。 (1)SREG8B 的模塊圖 SREG8B 是一個(gè)移位寄存器,SREG

56、8B 有三個(gè)輸入端,分別是 clk,load,din7.0。 其中 clk 為時(shí)鐘信號(hào)。一個(gè)輸出端,它是 qb。 (2)REG16B 的模塊圖 REG16B 是一個(gè) 16 位鎖存器,REG16B 有三個(gè)輸入端,它們分別是 clk,clr,d8.0. 其中 clk 為時(shí)鐘信號(hào)。有一個(gè)輸出端,它是 q15.0. (3)ARICTL 的模塊圖 ARICTL 是乘法器的控制模塊,ARICTL 有兩個(gè)輸入端,它們分別是 clk,start。 有三個(gè)輸入 端,它們分別是 clkout,rstall,ariend。 (4)ANDARITH 的模塊圖 ANDARITH 是一個(gè)一位乘法器,ANDARITH 有兩

57、個(gè)輸入端。它們分別是 abin,din7.0。有一個(gè)輸出端,它是 dout7.0。 (5)ADDER8B 的模塊圖 ADDER8B 是一個(gè) 8 位加法器,ADDER8B 有三個(gè)輸入端,它們分別是 cin,a7.0,b7.0。其中 a7.0為被乘數(shù);b7.0為乘數(shù)。有兩個(gè)輸出 端,它們分別是 s7.0,cout。 3.33.3 快速乘法器快速乘法器 VHDLVHDL 源程序源程序 3.3.13.3.1 選通與門模塊的源程序選通與門模塊的源程序 ANDARITH.VHDANDARITH.VHD library ieee; use ieee.std_logic_1164.all; entity an

58、darith is -選通與門模塊 port(abin: in std_logic; -與門開關(guān) din: in std_logic_vector(7 downto 0); -8 位輸入 dout: out std_logic vector(7 downto 0); -8 位輸出 end andarith; architecture art of andarith is begin process(abin, din) begin for i in 0 to 7 loop -循環(huán),分別完成 8 位與一位控制位的操 作 dout(i)=din(i)and abin; end loop; end

59、process; end art 選通與門模塊仿真選通與門模塊仿真; 1)打開 MAX+plus II 設(shè)計(jì)軟件。 2)新建文本編輯文件(File/New/Text Edit file),并完成選通與門模塊 ANDARITH 的 VHDL 代碼的輸入,保存文件到某個(gè)具體目錄下(注意保存文件名必 須與實(shí)體名相同,擴(kuò)展名為 vhd,即 ANDARITH.VHD)。 3)將該子模塊文件設(shè)為頂層文件(File/Project/Set Project to Current File),打開編譯器(MAX+plus II/Complier)進(jìn)行編譯綜合。 4)編譯綜合無誤后,創(chuàng)建該子模塊的默認(rèn)符號(hào)(Fil

60、e/Creat Default Symbol)。 5)新建波形編輯文件(File/New/Waveform Edit file),添加節(jié)點(diǎn)信號(hào)(在 Name 下點(diǎn)擊鼠標(biāo)右鍵選擇 Enter Nodes from SNF)并編輯輸入信號(hào)波形;保 存(File/Save)波形文件(按默認(rèn)文件名點(diǎn)擊 OK 保存) 。 6)打開仿真器(MAX+plus II/Simulator) ,按 Start 按鈕開始仿真;按 Open SCF 按鈕觀察仿真波形。 選通與門模塊仿真結(jié)果如圖 3.3.1.1 所示。 ANDARITH 的模塊圖 圖 3.3.1.1 ANDARITH(選通與門選通與門)的模塊 ANDA

溫馨提示

  • 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)論