CPLD第0章 概述_第1頁
CPLD第0章 概述_第2頁
CPLD第0章 概述_第3頁
CPLD第0章 概述_第4頁
CPLD第0章 概述_第5頁
已閱讀5頁,還剩39頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、12 3參考教材參考教材 1.可編程邏輯器件原理、開發與應用可編程邏輯器件原理、開發與應用趙曙光趙曙光 等編著等編著 西安電子科技大學出版社西安電子科技大學出版社 2.集成電路設計集成電路設計VHDL教程教程 趙趙俊超等編寫俊超等編寫 北京希望電子出版社北京希望電子出版社 3.CPLD系統設計技術入門與應用系統設計技術入門與應用黃正謹黃正謹 等編著等編著 電子工業出版社電子工業出版社4參考教材參考教材5參考教材參考教材6參考教材參考教材7實驗裝置實驗裝置8第第0章章 數字系統設計方法概述數字系統設計方法概述90.1.1 數字系統的基本概念數字系統的基本概念 數字系統數字系統是指對數字信息進行存

2、儲、傳輸和處理是指對數字信息進行存儲、傳輸和處理的電子系統。的電子系統。數字系統數字系統通常由輸入電路、輸出電路通常由輸入電路、輸出電路、控制電路、數字處理器和時基電路組成、控制電路、數字處理器和時基電路組成 。 數字系統可用圖數字系統可用圖0 01 1來描述,其中輸入量來描述,其中輸入量X X和和輸出量輸出量Z Z均為數字量。均為數字量。圖01 數字系統示意圖輸入信號輸出信號狀態信號控制信號輸出電路 控制信號輸入數據輸入電路數字處理電路時基電路 控制電路狀態信號輸出數據10 和模擬系統相比較,數字系統具有如下特點:和模擬系統相比較,數字系統具有如下特點: 1. 穩定性;穩定性; 2. 精確性

3、;精確性; 3. 可靠性;可靠性; 4. 模塊化。模塊化。 數字系統的設計一般可從三個方面入手:數字系統的設計一般可從三個方面入手: 1. 選用通用集成電路設計系統;選用通用集成電路設計系統; 2. 利用可編程邏輯器件(利用可編程邏輯器件(PLD)設計系統;)設計系統; 3. 采用專用集成電路(采用專用集成電路(ASIC)設計系統。)設計系統。110.1.2 數字系統的基本模型數字系統的基本模型 1 1)數字系統的動態模型:數字系統的動態模型:是采用狀態轉移圖、是采用狀態轉移圖、狀態方程、時序圖等描述方法建立的數字系統模狀態方程、時序圖等描述方法建立的數字系統模型。型。 2 2)數字系統的算法

4、模型:數字系統的算法模型:是采用對系統完成的是采用對系統完成的功能進行分解,形成一系列的子系統,然后根據功能進行分解,形成一系列的子系統,然后根據子系統所能建立的簡單運算,再通過一定的算法子系統所能建立的簡單運算,再通過一定的算法組合建立的數字系統模型。組合建立的數字系統模型。 算法通常就是對數字系統進行有規律、有序分算法通常就是對數字系統進行有規律、有序分解的一種解的一種描述描述。12 建立數字系統的建立數字系統的動態模型動態模型屬于數字系統的屬于數字系統的傳統設計方法傳統設計方法。隨著設計規模的逐漸增大,。隨著設計規模的逐漸增大,系統的輸入輸出變量急劇的增加,系統的狀系統的輸入輸出變量急劇

5、的增加,系統的狀態將會變得更加的復雜,因此,采用這種的態將會變得更加的復雜,因此,采用這種的方法很難完成大規模的復雜設計。方法很難完成大規模的復雜設計。 當今的產品開發設計人員通常當今的產品開發設計人員通常采用建立數字系統的算法模型來采用建立數字系統的算法模型來設計數字系統。設計數字系統。 13數字系統設計的兩個分支:數字系統設計的兩個分支: 1.1.系統硬件設計系統硬件設計 2.2.系統軟件設計。系統軟件設計。隨著計算機技術的發展和硬件描述語言隨著計算機技術的發展和硬件描述語言HDLHDL(Hardware Description LanguageHardware Description L

6、anguage)的出現,硬)的出現,硬件設計方法又有了新的變化。件設計方法又有了新的變化。數字系統的硬件、軟件設計可以在一開始就進數字系統的硬件、軟件設計可以在一開始就進行通盤考慮,進行早期仿真,大大提高了系統行通盤考慮,進行早期仿真,大大提高了系統設計的效率。設計的效率。14 自頂向下自頂向下 (TopDown) 功能級功能級 行為級行為級 寄存器傳輸級寄存器傳輸級 在中間相遇在中間相遇 邏輯級邏輯級 版圖級版圖級 自底向上自底向上 (BottomUp) 15 所謂所謂自底向上自底向上(Bottom(BottomUp)Up)的設計方法就是的設計方法就是利用現有的通用數字器件,從子系統設計開始

7、利用現有的通用數字器件,從子系統設計開始,從小到大地逐步設計,最后完成系統硬件的,從小到大地逐步設計,最后完成系統硬件的整體設計。整體設計。 自底向上的設計方法屬于自底向上的設計方法屬于傳統的設計方法傳統的設計方法。 在電子系統計算機輔助設計(在電子系統計算機輔助設計(EDAEDA)出現之)出現之前,人們一直采用傳統的硬件電路設計方法來前,人們一直采用傳統的硬件電路設計方法來設計數字系統的硬件。設計數字系統的硬件。16 傳統的硬件設計設計方法歸納起來有如下幾傳統的硬件設計設計方法歸納起來有如下幾個主要特征:個主要特征:1. 1. 采用自底向上采用自底向上(Bottom(BottomUp)Up)

8、的設計方法的設計方法 ;2. 2. 采用通用的邏輯器件、元器件采用通用的邏輯器件、元器件 ;3. 3. 在系統硬件設計的后期進行仿真和調試在系統硬件設計的后期進行仿真和調試4. 4. 主要設計文件是電路原理圖主要設計文件是電路原理圖 。1718自底向上的硬件電路設計方法的主要步驟是:自底向上的硬件電路設計方法的主要步驟是:1).1).根據系統對硬件的要求,詳細編制技術規格書,并根據系統對硬件的要求,詳細編制技術規格書,并畫出系統控制流圖;畫出系統控制流圖;2).2).根據技術規格書和系統控制流圖,對系統的功能進根據技術規格書和系統控制流圖,對系統的功能進行細化,合理地劃分功能模塊,并畫出系統的

9、功能框圖;行細化,合理地劃分功能模塊,并畫出系統的功能框圖;3).3).進行各功能模塊的細化及其電路設計;各功能模塊進行各功能模塊的細化及其電路設計;各功能模塊電路設計、調試完成后,將各功能模塊的硬件電路連接起來電路設計、調試完成后,將各功能模塊的硬件電路連接起來再進行系統的調試;再進行系統的調試;4).4).完成整個系統的硬件設計、畫出電原理圖。完成整個系統的硬件設計、畫出電原理圖。19 采用自底向上采用自底向上(Bottom(BottomUp)Up)的設計方法在各的設計方法在各功能模塊的電路設計中的體現最能說明問題。功能模塊的電路設計中的體現最能說明問題。 所以擺在設計者面前的一個首要問題

10、是如何所以擺在設計者面前的一個首要問題是如何選擇現有的通用邏輯元、器件構成六進制計數選擇現有的通用邏輯元、器件構成六進制計數器。器。 那么,設計六進制計數器將首先從選擇邏輯那么,設計六進制計數器將首先從選擇邏輯元、器件開始元、器件開始。20 第一步第一步: :選擇邏輯元、器件。選擇邏輯元、器件。 由數字電路的基本知識可知,可以用與由數字電路的基本知識可知,可以用與非門,或非門,非門,或非門,D D觸發器,觸發器,JKJK觸發器等基本觸發器等基本邏輯元、器件來構成一個計數器。設計者根邏輯元、器件來構成一個計數器。設計者根據電路盡可能簡單,價格合理,購買和使用據電路盡可能簡單,價格合理,購買和使用

11、方便及各自的習慣來選擇構成六進制計數器方便及各自的習慣來選擇構成六進制計數器的邏輯元、器件。的邏輯元、器件。 本例中我們選擇本例中我們選擇JKJK觸發器和觸發器和D D觸發器作為觸發器作為構成六進制計數器的主要邏輯元、器件。構成六進制計數器的主要邏輯元、器件。21第二步第二步:進行電路設計。:進行電路設計。 假設六進制計數器采用約假設六進制計數器采用約翰遜計數器。翰遜計數器。 3 3個觸發器連接應該產生個觸發器連接應該產生8 8種狀態,現在只使用種狀態,現在只使用6 6個狀個狀態,將其中的態,將其中的010010和和101101兩種兩種狀態禁止掉。狀態禁止掉。 這樣,六進制計數器的狀這樣,六進

12、制計數器的狀態轉移圖如圖態轉移圖如圖0 02 2所示。所示。 圖圖0 02 2 六進制計數器狀態轉移圖六進制計數器狀態轉移圖 22 觸發器觸發器 狀態狀態計數脈沖計數脈沖Q2Q1 Q0前一狀前一狀態態當前狀當前狀態態前一狀前一狀態態當前狀當前狀態態前一狀前一狀態態當前狀當前狀態態100000120001113011111411111051110006100000 第三步第三步: : 根據狀態轉移圖列出狀態變化表根據狀態轉移圖列出狀態變化表23 第四步第四步: :由狀態轉移表得下列方程:由狀態轉移表得下列方程: 假設這里假設這里Q2Q2、 Q1Q1分別用兩個分別用兩個D D觸發器,觸發器, Q0

13、Q0用用JKJK觸發器。觸發器。1 10 01 12 20 01 12 20 01 12 22 2Q QQ QQ QQ QQ QQ QQ QQ QQ QQ QQ Q0 00 01 12 20 01 12 20 01 12 21 1Q QQ QQ QQ QQ QQ QQ QQ QQ QQ QQ Q0 01 12 20 01 12 20 01 12 20 0Q QQ QQ QQ QQ QQ QQ QQ QQ QQ Q24 觸發器觸發器 狀態狀態計數脈沖計數脈沖Q2 Q1Q1 Q0前一狀前一狀態態前一狀前一狀態態JK前一狀前一狀態態當前狀當前狀態態10010012001011301001141101

14、105110100610000025第五步第五步: : 由狀態方程選通用器件畫電路圖由狀態方程選通用器件畫電路圖表表0 03 3 六進制約翰遜計數器原理圖六進制約翰遜計數器原理圖26 在傳統的硬件電路設計中,設計者總是根據系統的在傳統的硬件電路設計中,設計者總是根據系統的具體需要,選擇市場上能買到的通用的具體需要,選擇市場上能買到的通用的SSISSI、MSIMSI(如(如7474系列、系列、CC4000CC4000系列等),來構成所要求的邏輯電路系列等),來構成所要求的邏輯電路,從而完成系統的硬件設計。,從而完成系統的硬件設計。 盡管隨著微處理器的出現,在由微處理器及其相應盡管隨著微處理器的出

15、現,在由微處理器及其相應硬件構成的系統中,許多系統的硬件功能可以用軟件硬件構成的系統中,許多系統的硬件功能可以用軟件功能來實現,從而在較大程度上簡化了系統硬件電路功能來實現,從而在較大程度上簡化了系統硬件電路的設計,但是,選擇通用的的設計,但是,選擇通用的SSISSI、MSIMSI來構成系統硬件來構成系統硬件電路的方法并未改變。電路的方法并未改變。27 在傳統的系統硬件設計方法中,仿真和調試通常只在傳統的系統硬件設計方法中,仿真和調試通常只能在后期,即完成系統硬件設計以后,才能進行。因為能在后期,即完成系統硬件設計以后,才能進行。因為進行仿真和調試的儀器一般為進行仿真和調試的儀器一般為系統仿真

16、器系統仿真器、邏輯分析儀邏輯分析儀和和示波器示波器等,因此只有在硬件系統已經構成以后才能使等,因此只有在硬件系統已經構成以后才能使用。用。 系統設計時存在的問題只有在后期才能較容易發現系統設計時存在的問題只有在后期才能較容易發現。這樣,傳統的硬件設計方法對系統設計人員有較高的。這樣,傳統的硬件設計方法對系統設計人員有較高的要求。一旦考慮不周,系統設計存在較大缺陷,那么就要求。一旦考慮不周,系統設計存在較大缺陷,那么就有可能要重新設計系統,使得設計周期也大大增加。有可能要重新設計系統,使得設計周期也大大增加。28 在用傳統的硬件設計方法對系統進行設計并調試完在用傳統的硬件設計方法對系統進行設計并

17、調試完畢后,所形成的硬件設計文件,主要是由若干張電原畢后,所形成的硬件設計文件,主要是由若干張電原理圖構成的文件。在電原理圖中詳細標注了各邏輯元理圖構成的文件。在電原理圖中詳細標注了各邏輯元、器件的名稱和互相間的信號連接關系。該文件是用、器件的名稱和互相間的信號連接關系。該文件是用戶使用和維護系統的依據。戶使用和維護系統的依據。 對于小系統,這種電原理圖只要幾十張至幾百張就對于小系統,這種電原理圖只要幾十張至幾百張就行了。但是,如果系統比較大,硬件比較復雜,那么行了。但是,如果系統比較大,硬件比較復雜,那么這種電原理圖可能要有幾千張、幾萬張,甚至幾十萬這種電原理圖可能要有幾千張、幾萬張,甚至幾

18、十萬張。如此多的電原理圖給歸檔、閱讀、修改和使用都張。如此多的電原理圖給歸檔、閱讀、修改和使用都帶來了許多麻煩。帶來了許多麻煩。29 所謂硬件描述語言所謂硬件描述語言(HDL-Hardware Description (HDL-Hardware Description Language)Language),就是可以描述硬件電路的功能、信號連,就是可以描述硬件電路的功能、信號連接關系及定時關系的語言。它可以比電原理圖更有接關系及定時關系的語言。它可以比電原理圖更有效地表示硬件電路的特性。效地表示硬件電路的特性。 目前目前ASIC(Application Specific Integrated A

19、SIC(Application Specific Integrated Circuit)Circuit)芯片研制和生產廠家相繼開發了用于各自芯片研制和生產廠家相繼開發了用于各自目的的硬件描述語言。其中已被目的的硬件描述語言。其中已被IEEEIEEE標準化,且最標準化,且最具代表性的是美國國防部開發的具代表性的是美國國防部開發的VHDLVHDL語言語言(VHSIC (VHSIC Hardware Description Language)Hardware Description Language)及及ViewlogicViewlogic公司公司的的Verilog-HDLVerilog-HDL語言

20、。語言。30 硬件描述語言硬件描述語言 HDL Hardware Description Language 用于設計硬件電子系統的計算機語言,它用軟件編程的方式來描述電子系統的邏輯功能、電路結構和連接形式,與傳統的門級描述方式相比,它更適合大規模系統的設計。Abel HDL AHDL Verilog HDL VHDL Hardware CVHDL超高速集成電路硬件描述語言超高速集成電路硬件描述語言Very High Speed IC Hardware Description Languagel包括系統行為級、寄存器傳輸級和邏輯門級多個設計層次包括系統行為級、寄存器傳輸級和邏輯門級多個設計層次l

21、支持結構、數據流、行為三種描述形式的混合描述支持結構、數據流、行為三種描述形式的混合描述l覆蓋了以往各種硬件描述語言的功能覆蓋了以往各種硬件描述語言的功能l整個自頂向下或自底向上的電路設計過程都可以完成整個自頂向下或自底向上的電路設計過程都可以完成31圖圖0 04 4 二選一選擇器的電原理二選一選擇器的電原理 32 用用VHDL語言描述的二選一選擇器如下:語言描述的二選一選擇器如下:ENTITY mux IS PORT(d0,d1,sel :IN BIT ; q :OUT BIT) ;END mux ; ARCHITECTURE connect OF mux IS BEGIN calc:PRO

22、CESS(d0,d1,sel) VARIABLE tmpl,tmp2,tmp3:BIT ; BEGIN tmp1 := d0 AND sel ; tmp2 := d1 AND (NOT sel) ; tmp3 := tmpl OR tmp2 ; q= tmp3; END PROCESS; END connect;33 ENTITY mux IS : : : END mux ; ARCHITECTURE struct OF mux IS : : : END struct;實體實體結構體結構體34 利用利用HDLHDL語言設計系統硬件的方法,歸語言設計系統硬件的方法,歸納起來有以下幾個特點:納起來

23、有以下幾個特點: 1. 1. 采用自頂向下采用自頂向下 (Top(TopDown) Down) 的設計的設計 方法方法 ; 2. 2. 系統中可大量采用系統中可大量采用ASICASIC芯片;芯片; 3. 3. 采用系統早期仿真采用系統早期仿真 ; 4. 4. 降低了硬件電路設計難度;降低了硬件電路設計難度; 5. 5. 主要設計文件是用主要設計文件是用HDLHDL語言編寫的語言編寫的 源程序。源程序。351.1.采用采用自頂向下自頂向下 (Top(TopDown)Down) 的設的設計方法計方法 所謂采用所謂采用自頂向下自頂向下 (Top(TopDown)Down) 的設計方法,就是從系統總體

24、要求出的設計方法,就是從系統總體要求出發,自上至下地逐步將設計內容細化發,自上至下地逐步將設計內容細化,最后完成系統硬件的整體設計。,最后完成系統硬件的整體設計。 在利用在利用HDLHDL語言的硬件設計方法中語言的硬件設計方法中,設計者將自上至下分成,設計者將自上至下分成3 3個層次對個層次對系統硬件進行設計,系統硬件進行設計, 36系統系統子功能塊子功能塊1子功能塊子功能塊2子功能塊子功能塊n邏輯塊邏輯塊11邏輯塊邏輯塊12邏輯塊邏輯塊1m邏輯塊邏輯塊21邏輯塊邏輯塊111TOP-DOWN TOP-DOWN 自頂向下設計自頂向下設計邏輯塊邏輯塊1m137 第一層次是第一層次是行為描述行為描述

25、。所謂。所謂行為描述行為描述,實質上就是對整個系統的數學模型進行描實質上就是對整個系統的數學模型進行描述。述。 一般來說,對系統進行行為描述的目的一般來說,對系統進行行為描述的目的是試圖在系統設計的初級階段,通過對系是試圖在系統設計的初級階段,通過對系統行為描述的仿真來發現設計中存在的問統行為描述的仿真來發現設計中存在的問題。在行為描述階段并不真正考慮其實際題。在行為描述階段并不真正考慮其實際的操作和算法用什么邏輯電路來實現。考的操作和算法用什么邏輯電路來實現??紤]更多的是該數學模型能否達到系統設計慮更多的是該數學模型能否達到系統設計規格書的要求。規格書的要求。38 第二層次是第二層次是RTL

26、RTL描述描述,也稱,也稱寄存器傳輸寄存器傳輸描述描述( (又稱又稱數據流描述數據流描述) )。由于用行為方式。由于用行為方式描述的系統程序,其抽象程度高,所以很描述的系統程序,其抽象程度高,所以很難直接映射而得到具體的邏輯器件的硬件難直接映射而得到具體的邏輯器件的硬件實現。要想得到硬件的具體實現,必須將實現。要想得到硬件的具體實現,必須將行為方式描述的行為方式描述的VHDLVHDL語言程序改寫為語言程序改寫為RTLRTL描描述的述的VHDLVHDL語言程序。語言程序。 也就是說,也就是說,系統只有采用系統只有采用RTLRTL方式描述方式描述才能導出系統的邏輯表達式,才能進行邏才能導出系統的邏

27、輯表達式,才能進行邏輯綜合,得到具體的邏輯器件。輯綜合,得到具體的邏輯器件。39 第三層次是第三層次是邏輯綜合邏輯綜合。邏輯綜合這一階。邏輯綜合這一階段利用邏輯綜合工具,將段利用邏輯綜合工具,將RTLRTL描述的程序轉描述的程序轉換成用基本邏輯元件換成用基本邏輯元件( (宏單元宏單元) )表示的文件表示的文件( (門級網表門級網表) )。 此時,如果需要,可以將邏輯綜合結果此時,如果需要,可以將邏輯綜合結果以邏輯原理圖方式輸出。也就是說,邏輯以邏輯原理圖方式輸出。也就是說,邏輯綜合的結果相當于在人工設計硬件電路時綜合的結果相當于在人工設計硬件電路時,根據系統要求畫出了系統的電原理圖。,根據系統

28、要求畫出了系統的電原理圖。402. 2. 系統中可大量采用系統中可大量采用ASICASIC芯片芯片 由于目前眾多的制造由于目前眾多的制造ASICASIC芯片的廠家,芯片的廠家,它們的工具軟件都可支持它們的工具軟件都可支持HDLHDL語言的編程,語言的編程,因此,硬件設計人員在設計硬件電路時,因此,硬件設計人員在設計硬件電路時,無須受只能使用通用元、器件的限制,而無須受只能使用通用元、器件的限制,而可以根據硬件電路設計需要,設計自用的可以根據硬件電路設計需要,設計自用的ASICASIC芯片或可編程邏輯器件。這樣最終會芯片或可編程邏輯器件。這樣最終會使系統電路設計更趨合理,體積也可大為使系統電路設

29、計更趨合理,體積也可大為縮小??s小。413. 3. 采用系統早期仿真采用系統早期仿真 從自頂向下的設計過程可以看到,在系從自頂向下的設計過程可以看到,在系統設計過程中要進行三級仿真,統設計過程中要進行三級仿真,即行為層即行為層次仿真、次仿真、RTLRTL層次仿真和門級層次仿真層次仿真和門級層次仿真。 也就是說,進行系統數學模型的仿真、也就是說,進行系統數學模型的仿真、系統數據流的仿真和系統門電路電原理的系統數據流的仿真和系統門電路電原理的仿真。這仿真。這3 3級仿真貫穿系統硬件設計的全過級仿真貫穿系統硬件設計的全過程,從而可以在系統設計早期發現設計中程,從而可以在系統設計早期發現設計中存在的問題。與自底向上設計的后期仿真存在的問題。與自底向上設計的后期仿真相比可大大縮短系統的設計周期,節約大相比可大大縮短系統的設計周期,節約大量的人力和物力。量的人力和物力。42 4. 4.降低了硬件電路設計難度降低了硬件電

溫馨提示

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

評論

0/150

提交評論