第一篇:習(xí)題課-《EDA技術(shù)》課程考試大綱
《EDA 技術(shù)》課程考試大綱
第一部分 考核說明
一、學(xué)習(xí)目的和任務(wù)
電子設(shè)計自動化(EDA)技術(shù)是九十年代電子信息技術(shù)發(fā)展的重要成果,它使大規(guī)模集成電路的設(shè)計與制作進 入自動化階段,是目前工業(yè)界廣泛才應(yīng)用的設(shè)計技術(shù),而未來電子電路設(shè)計將是 EDA 的時代。學(xué)習(xí)本課程的目 的是使學(xué)生:系統(tǒng)地掌握 EDA 技術(shù)的基本概念和基本實踐技能;具備通過可編程器件設(shè)計數(shù)字系統(tǒng)的本領(lǐng);具 備學(xué)習(xí)后續(xù)相關(guān)課程的能力。通過本課程的學(xué)習(xí)使學(xué)生掌握可編程器件、EDA 開發(fā)系統(tǒng)軟件、硬件描述語言和電子線路設(shè)計與技能訓(xùn)練等 各方面知識;提高工程實踐能力;學(xué)會應(yīng)用 EDA 技術(shù)解決一些簡單的電子設(shè)計問題。
本課程主要任務(wù)是:
1、使學(xué)生掌握 EDA 開發(fā)工具 QUARTUSII 的常用工具的使用。
2、使學(xué)生掌握 EDA 設(shè)計流程及輸入方法。
3、使學(xué)生掌握的硬件描述語言 VERILOG HDL 的基本應(yīng)用。
4、使學(xué)生掌握原理圖輸入、VERILOG HDL 文本輸入等硬件設(shè)計方法。
5、使學(xué)生掌握電路的仿真測試和硬件測試的方法,驗證實際設(shè)計電路的。
二、教學(xué)內(nèi)容及要求
總述:
1.EDA 技術(shù)基本概念 EDA 技術(shù)的內(nèi)涵、實現(xiàn)目標(biāo),綜合的概念,自頂向下的設(shè)計方法,EDA 與傳統(tǒng)電子設(shè)計方法的比較。
2.EDA 設(shè)計流程及工具 FPGA/CPLD 設(shè)計流程,ASIC 設(shè)計流程,常用的 EDA 工具,IP 核的概念,QUARTUSⅡ的使用。
3.VERILOG HDL 硬件描述語言 VERILOG HDL 程序的結(jié)構(gòu)與要素(包括 VERILOG HDL 程序的基本結(jié)構(gòu)、結(jié)構(gòu)體、文字規(guī)則、數(shù)據(jù)類型、操作符等),VERILOG HDL 的基本語句(包括順序語句和并行語句),VERILOG HDL 子程序,VERILOG HDL 程序庫和包,VERILOG HDL 的描述風(fēng)格。狀態(tài) 機的設(shè)計方法。
具體內(nèi)容:
第一章 概述
教學(xué)內(nèi)容: EDA 技術(shù)及其發(fā)展;EDA 技術(shù)實現(xiàn)目標(biāo);硬件描述語言 VERILOG HDL 介紹;VERILOG HDL 綜合介紹;基于 VERILOG HDL 的自頂向下 設(shè)計方法;EDA 與傳統(tǒng)電子設(shè)計方法的比較;EDA 的發(fā)展趨勢。
教學(xué)要求: 掌握:EDA 較傳統(tǒng)電子設(shè)計方法的優(yōu)越性。了解EDA 技術(shù)及其發(fā)展方向。
第二章 EDA 設(shè)計流程及其工具
教學(xué)內(nèi)容: FPGACPLD 設(shè)計流程;設(shè)計輸入(原理圖HDL 文本編輯);VERILOG HDL 綜合流程學(xué)習(xí)(適配;時序仿真與功能仿真; 編程下載;硬件測試等);ASIC 及其設(shè)計流程(ASIC 設(shè)計方法;一般 ASIC 設(shè)計的流程);常用 EDA 工具(設(shè) 計輸入編輯器;HDL 綜合器;仿真器;適配器(布局布線器);下載器)QUARTUSII 概述;IP 核介紹。
教學(xué)要求: 熟練掌握:FPGACPLD 設(shè)計流程;QUARTUSII 操作界面及熟練使用。掌握:EDA 設(shè)計流程中硬件設(shè)備的正確使用,從而能完成更多的實驗和開發(fā)項目。了解:IP 核。
第三章 FPGA/CPLD 結(jié)構(gòu)與應(yīng)用
教學(xué)內(nèi)容: 簡單 PLD 原理;CPLD 結(jié)構(gòu)與工作原理;FPGA 結(jié)構(gòu)與工作原理;FPGACPLD 測試技術(shù);FPGA/CPLD 測試技 術(shù); CPLD 和 FPGA 的編程與配置。
教學(xué)要求: 掌握:FPGACPLD 測試技術(shù);CPLD 和 FPGA 的編程與配置方法。了解:CPLD/FPGA 結(jié)構(gòu)與工作原理。
第四章 VERILOG HDL 設(shè)計初步
教學(xué)內(nèi)容: 多路選擇器 VERILOG HDL 描述(2 選 1 多路選擇器的 VERILOG HDL 描述;VERILOG HDL 相關(guān)語句說明;VERILOG HDL 設(shè)計的基本概念和語 句小節(jié));寄存器描述及其 VERILOG HDL 語言現(xiàn)象(D 觸發(fā)器 VERILOG HDL 描述;D 觸發(fā)器 VERILOG HDL 描述的語言現(xiàn)象說明;實現(xiàn) 時序電路的 VERILOG HDL 不同表達方式;異步時序電路設(shè)計;VERILOG HDL 設(shè)計基本概念和語言現(xiàn)象小節(jié))1 位二進制全加 ; 器的 VERILOG HDL 設(shè)計(半加器描述和 CASE 語句;全加器描述和例化語句);VERILOG HDL 文本輸入設(shè)計方法初步(編輯輸入并保存
VERILOG HDL 源文件;將當(dāng)前設(shè)計設(shè)定為工程;選擇FPGA/CPLD器件,編譯、綜合和排錯;時序仿真;硬件測試)。
教學(xué)要求: 熟練掌握: 理解掌握 VERILOG HDL 硬件描述語言的基本語句;4 選 1 多路選擇器的 VERILOG HDL 描述程序設(shè)計; 觸發(fā)器 VERILOG HDL描述程序設(shè)計。掌握:同步時序電路設(shè)計,全加器描述和例化語句。了解:異步時序電路設(shè)計。
第五章 VERILOG HDL 設(shè)計進階
教學(xué)內(nèi)容: 4 位加法數(shù)器的 VERILOG HDL 描述;不同工作方式的時序電路設(shè)計;雙向電路和三態(tài)控制電路設(shè)計;進程語句結(jié)構(gòu);仿真。
教學(xué)要求: 掌握:4 位加法數(shù)器的 VERILOG HDL 描述。了解:進程語句結(jié)構(gòu)。
第六章 原理圖輸入設(shè)計方法
教學(xué)內(nèi)容: 1 位全加器設(shè)計向?qū)В? 位十進制數(shù)字頻率計設(shè)計(設(shè)計有時鐘使能的兩位十進制計數(shù)器;頻率計主結(jié)構(gòu)電路設(shè) 計;測頻時序控制電路設(shè)計;頻率計頂層電路設(shè)計);設(shè)計項目的其他信息和資源配置;參數(shù)可設(shè)置 LPM 兆功能 塊(基于 LPM_COUNTER 的數(shù)控分頻器設(shè)計;基于 LPM_ROM 的 4 位乘法器設(shè)計);波形輸入設(shè)計方法。
教學(xué)要求: 熟練掌握:1 位全加器原理圖輸入設(shè)計;參數(shù)可設(shè)置 LPM 兆功能塊的設(shè)計方式。掌握:2 位十進制數(shù)字頻率計設(shè)計;波形輸入設(shè)計方法。了解:設(shè)計項目的其他信息和資源配置
第七章 有限狀態(tài)機設(shè)計
教學(xué)內(nèi)容: 一般有限狀態(tài)機的設(shè)計;Moore 型有限狀態(tài)機的設(shè)計;Mealy 型有限狀態(tài)機的設(shè)計;狀態(tài)編碼;狀態(tài)機剩余狀態(tài) 處理;LPM 模塊的 VERILOG HDL 文本方式調(diào)用。
教學(xué)要求: 熟練掌握:Moore 型有限狀態(tài)機的設(shè)計;Mealy 型有限狀態(tài)機的設(shè)計。掌握:一般有限狀態(tài)機的設(shè)計; 了解:LPM 模塊的 VERILOG HDL 文本方式調(diào)用。
第八章 VERILOG HDL 結(jié)構(gòu)與要素
教學(xué)內(nèi)容: VERILOG HDL 文字規(guī)則;數(shù)據(jù)類型;VERILOG HDL 操作符;LPM 的 VERILOG HDL 文本方式調(diào)用。教學(xué)要求: 掌握:LPM 的 VERILOG HDL 文本方式調(diào)用。了解:VERILOG HDL 文字規(guī)則;VERILOG HDL 操作符。
第九章 VERILOG HDL 基本語句
內(nèi)容: VERILOG HDL 可綜合的基本語句(順序語句、并行語句)及其結(jié)構(gòu)與用法
教學(xué)要求: 掌握:VERILOG HDL 基本語句:順序語句、并行語句及其結(jié)構(gòu)與用法
重要內(nèi)容:
一)EDA 基礎(chǔ)知識
1. EDA 技術(shù)概念
2. EDA 技術(shù)發(fā)展的 3 個階段(CAD,CAE,EDA)
3. EDA 技術(shù)實現(xiàn)目標(biāo)
4. EDA 技術(shù)實現(xiàn)目標(biāo)的途徑
5. 硬件描述語言
6. VERILOG HDL的發(fā)展過程(1)含義(2)創(chuàng)建時間(3)特點
7. VERILOG HDL 綜合,含義,內(nèi)容
8. VERILOG HDL 的設(shè)計方法,分為哪幾個階段
9. 自頂向下,自底向上方法比較
10. FPGA/CPLD 設(shè)計流程 設(shè)計輸入;功能仿真;綜合;適配;時序仿真;編程下載
11. FPGA/CPLD 結(jié)構(gòu)特點
12. ASIC 設(shè)計方法
13. ASIC 設(shè)計流程
14. 常用 EDA 工具及功能
15. IP 核概念
16. 常用縮寫的含義:EDA,CAD,CAE,CAM,ASIC,PLD,F(xiàn)PGA/CPLD,VERILOG HDL,IP,SOC,SOPC,RTL,ISP,IEEE 等
二)VERILOG HDL 語言
1. VERILOG HDL 設(shè)計實體的基本結(jié)構(gòu),配置: 各部分的組成、功能
2. VERILOG HDL 語言要素(格式、使用方法、適用范圍)1)VERILOG HDL 文字規(guī)則 :數(shù)字,字符串,標(biāo)識名,下標(biāo)名 2)VERILOG HDL 數(shù)據(jù)對象 :信號,變量,常數(shù) 3)VERILOG HDL 數(shù)據(jù)類型(預(yù)定義,用戶自定義)標(biāo)量類型,復(fù)合類型,存取類型,文件類型 4)VERILOG HDL 操作符:邏輯操作符,關(guān)系操作符,算術(shù)操作符,重載操作符
3. VERILOG HDL 語言的主要描述語句(組成、格式、使用方法、適用范圍)
1)順序語句:賦值語句;轉(zhuǎn)向語句(IF,CASE,LOOP,NEXT,EXIT,WAIT);子程序調(diào)用 2)并行語句:進程,元件例化,并行過程調(diào)用,并行信號賦值
三)QUARTUS II 工具軟件
1. QUARTUS II 的特點
2. 原理圖輸入設(shè)計法的基本操作:編程、編譯、生成元件符號、功能仿真、引腳鎖定、編程下載、硬件調(diào)試
3. 原理圖輸入的層次化設(shè)計
四)程序的分析與編程
(一)基本邏輯電路的設(shè)計 1. 組合邏輯電路 1)門電路:與門 AND;或門 OR;非門 NOT;異或門 XOR。例 4-18 三態(tài)門 例 5-13 2)比較器:一位比較器
例 4-10 四位二進制比較器 例 8-17,8-18 3)數(shù)據(jù)選擇器:2 選 1 多路選擇器 例 4-1,4-2,4-3 4 選 1 多路選擇器 例 5-11
4)半加器 例 4-19 例 4-20 例 4-21 5)全加器 例 4-22 6)譯碼器:3-8 線譯碼器 例 8-23、7 段顯示譯碼器 例 5-21 例 8-12 7)奇偶校驗邏輯電路 例 9-4 9-30 8)編碼器 8-3 優(yōu)先編碼器 例 5-19 2. 時序電路 1)觸發(fā)器:D 觸發(fā)器 例 4-7;JK 觸發(fā)器;RS 觸發(fā)器 例 9-16 2)計數(shù)器:二進制 例 5-2 例 9-28;十進制 例 5-3 3)寄存器:鎖存寄存器 例 9-26 9-27;移位寄存器 例 5-4 4)(數(shù)控)分頻器 例 5-23 5)頻率計 例 5-24-27
(二)有限狀態(tài)機 1. MOORE 型 例 7-2 2. MEALY 型 例 7-6 例 7-5
三、考試內(nèi)容 大綱要求的熟練掌握及要求掌握的內(nèi)容,其覆蓋面應(yīng) 90%以上,理解的內(nèi)容要覆蓋其全部的 60%以上,要求 了解的內(nèi)容其覆蓋面要占其全部的 30%以上。EDA 技術(shù)的基本概念與可編程器件的基本原理占全部內(nèi)容的 30%,EDA 開發(fā)工具軟件占全部內(nèi)容的 20%,硬件描述語言占全部內(nèi)容的 50%。試卷結(jié)構(gòu)及題型及綜合成績 綜合成績依據(jù)
四、試卷結(jié)構(gòu)及題型及綜合成績依據(jù)
1.試卷結(jié)構(gòu) 基本題 50%左右,綜合題 40%左右,提高題 10%左右。
2.題型 包括填空題、單項選擇題、簡答題(包括名詞解釋)、程序分析(包括改錯、程序填空、程序解釋、運行結(jié) 果分析等)及編程題(時序邏輯電路、組合邏輯電路)。填空題、單項選擇題、名詞解釋、簡答題以對基本概念的理解和硬件的內(nèi)部結(jié)構(gòu),考核內(nèi)容包括:應(yīng)掌握的 基本概念、定義和基本計算及分析方法,理解和了解的內(nèi)容也以此形式出題。程序分析、改錯題及編程題以重點掌握 VERILOG HDL 語言的結(jié)構(gòu)和使用方法為主,考核內(nèi)容包括:VERILOG HDL 語言的基 本結(jié)構(gòu),庫和程序包的應(yīng)用,基本順序語句的使用,并行語句(進程語句和元件例化語句)的使用,狀態(tài)機設(shè)計方 法分析,對組合邏輯電路和時序邏輯電路的設(shè)計和編程。
3.綜合成績依據(jù)
綜合成績根據(jù)期末考試成績、平時綜合(平時成績和實驗)綜合評定。平時成績包括:作業(yè)、考勤、測驗、實 驗。
綜合成績=考試 70%+平時 15 %+實驗 15 %。
五、考試方式 采用閉卷考試(筆試)形式,同時出 A、B 兩套試題,其份量及難易程度大體相當(dāng)。
六、試題數(shù)量及時間安排 試卷涵蓋教學(xué)大綱規(guī)定內(nèi)容的 90%以上,根據(jù)題
型,單項選擇題 5 至 10 個、填空題 10 至 20 個空,簡答題 3-5 個,程序分析 1-3 道,設(shè)計題 1-3 道。各個題型的分數(shù)比例如下:
1、單項選擇題 10%
2、填空題 20%
3、簡答題 20%
4、分析題 30%
5、編程題 20% 考試時間 120 分鐘,考試日期一般安排在12~13周內(nèi)進行。
七、答題要求 要求學(xué)生正確運用所學(xué)知識,答題過程完整,步驟清晰,描述準(zhǔn)確,程序結(jié)構(gòu)清晰。
第二篇:eda技術(shù)課程總結(jié)與心得
【第一章】
1、FPGA芯片的發(fā)展主要體現(xiàn)在哪幾個方面?未來的發(fā)展趨勢是什么?
ANS:
2、EDA技術(shù)的優(yōu)勢是什么?
ANS: EDA依賴功能強大的計算機在EDA工具軟件平臺上自動的完成邏輯化簡、邏輯分割、邏輯綜合、結(jié)構(gòu)綜合,以及邏輯優(yōu)化和仿真等功能,直至實現(xiàn)既定性能的電子線路系統(tǒng)功能。EDA使得設(shè)計者的工作幾乎僅限于利用軟件的方式,即利用硬件描述語言HDL和EDA工具軟件來完成對系統(tǒng)硬件功能的實現(xiàn)
+ P 10
3、EDA的設(shè)計流程包括哪幾個環(huán)節(jié)?
ANS: ①設(shè)計輸入(原理圖/HDL文本編輯)②綜合 ③ FPGA/CPLD 適配 ④ 時序仿真與功能門級仿真 ⑤FPGA/CPLD編程下載 ⑥FPGA/CPLD器件電路硬件檢測。
4、硬件描述語言的種類有哪些?
ANS: VHDL、Verilog HDL、SystemVerilog、System C 等
5、自頂向下設(shè)計方法的優(yōu)點是什么?
ANS:
過程大部分由計算機完成,可植性強,便于系統(tǒng)的優(yōu)化和升級,以及對模型進行及時的修改,以改進系統(tǒng)或子系統(tǒng)的功能,更正設(shè)計錯誤,提高目標(biāo)系統(tǒng)的工作速度,減小面積耗用,降低功耗和成本等。在EDA技術(shù)應(yīng)用中,自頂向下的設(shè)計方法,就是在整個設(shè)計流程中各設(shè)計環(huán)節(jié)逐步求精的過程。
6、ip核可分為哪幾類?
ANS: ①軟IP、②固IP、③硬IP
7、ip在EDA技術(shù)的應(yīng)用和發(fā)展中的意義是什么?
ANS:
IP就是將某些功能固化,而當(dāng)EDA設(shè)計也需要這些功能的時候,就可以直接將植入了此功能的IP拿過來直接用,而不用再重新設(shè)計。這樣既可以提高效率又可以減少設(shè)計風(fēng)險。IP核具有規(guī)范的接口協(xié)議,良好的可移植與可測試性,為系統(tǒng)開發(fā)提供了可靠的保證。
【第二章】
1、可編程邏輯器件經(jīng)歷哪些發(fā)展過程? ANS:
2、Altera公司的PLD芯片主要有哪些系列? ANS:
按照推出的先后順序:Classic、MAX、FLEX、APEX、ACEX、APEX
2、Cyclone/2/3/
4、MAX2、Stratix-1/2/3/4/6.【第三章】
1、一個完整的VHDL程序包括哪幾個部分?其作用是什么? ANS: ①實體描述部分 ②結(jié)構(gòu)體描述部分
作用 略
2、VHDL中標(biāo)示符的命名規(guī)則是什么?
ANS: 標(biāo)識符是設(shè)計者在VHDL程序中自己定義的,用于標(biāo)識不同名稱的詞語。例如實體名、端口名等。具體規(guī)則如下:
·有效的字符:包括26個大小寫英文字母,數(shù)字包括0~9以及下劃線。
·任何標(biāo)識符必須以英文字母開頭
·必須是單一的下劃線,且前后都要有字母或數(shù)字。·標(biāo)識符中的英文字母不區(qū)分大小寫。
·允許包含圖形符號(如回車符、換行符等),也允許包含空格符。
3、端口模式有哪些?
ANS: ①IN
2、OUT
3、INOUT雙向端口
4、BUFFER 緩沖端口
4、VHDL中有哪些基本的數(shù)據(jù)類型? ANS: bit、bit_vector、std_logic、std_logic_vector、boolean(布爾)、natural(自然數(shù))、integer(整數(shù))、signed(有符號)、unsigned(無符號)、array(數(shù)組類)、record(記錄類型)、Subtype(子類型)、用戶自定義類型。
5、常用的VHDL程序包有哪些?
ANS:STD_LOGIC_1164、STD_LOGIC_ARITH、STD_LOGIC_SIGNED、STD_LOGIC_UNSIGNED
【第五章】
1、簡述信號和變量的區(qū)別
ANS:比較對象
信號SIGNAL
變量VARIABLE
基本用法
用于作為電路中的信號連線
用于作為進程中局部數(shù)據(jù)存儲單元
適用范圍
在整個結(jié)構(gòu)體內(nèi)的任何地方都適用
只能在所定義的進程中使用
行為特性
在進程最后才對信號賦值
立即賦值
簡單的說,信號是全局的,用于結(jié)構(gòu)體中并行語句間數(shù)據(jù)流的傳遞;變量則是局部的,他主要用于單個進程中中間變量的存儲.2、進程的特點是什么?
ANS:(1)進程結(jié)構(gòu)內(nèi)部的所有語句都是順序執(zhí)行的。
(2)多進程之間是并行執(zhí)行的,并可訪問結(jié)構(gòu)體或?qū)嶓w中所定義的信號。
(3)進程的啟動是由進程標(biāo)識符PROCESS后的信號敏感表所標(biāo)明的信號來觸發(fā)的,也可以用WAIT語句等待一個觸發(fā)條件的成立。
(4)各進程之間的通信是由信號來傳遞的。(5)進程語句的順序性(6)進程的啟動與執(zhí)行過程
當(dāng)進程中定義的任一敏感型號發(fā)生更新(變化)時,由順序語句定義的行為就要重復(fù)執(zhí)行一次。當(dāng)進程中最后一個語句執(zhí)行完畢后,執(zhí)行過程將自動返回到進程的起始端,以等待下一次敏感信號的變化。
3、VHDL語言有哪幾種描述方式?
ANS: 行為描述、數(shù)據(jù)流描述、結(jié)構(gòu)描述
【第六章】
1、列舉5個宏功能模塊
ANS: ① 算數(shù)組件,包括累加器、加法器、乘法器和LPM算數(shù)函數(shù)等。
② 組合電路,包括多路選擇器、比較器和LPM門函數(shù)等。
③ I/O組件,包括時鐘數(shù)據(jù)恢復(fù)(CDR)、鎖相環(huán)(PLL)等。
④ 存儲器編譯器件,包括FIFO Partitioner、RAM和ROM宏功能模塊等。
⑤ 存儲組件,包括存儲器、移位寄存器宏模塊和LPM存儲器函數(shù)等。
2、Quartus能夠接受的兩種RAM或ROM初始化文件的格式是? ANS:.mif
.hex
3、給出鎖相環(huán)的工作原理。
ANS: 鎖相環(huán)路是一個相位反饋自動控制系統(tǒng)。它由以下三個基本部件組成:鑒相器(PD)、環(huán)路濾波器(LPF)和壓控振蕩器(VCO)。其組成方框圖如下所示。
鎖相環(huán)的工作原理:
? ? ? ? ?
4、已知實驗板上有一個10MHZ的有源晶振,現(xiàn)在要產(chǎn)生1MHZ的正弦波,請?zhí)岢鲈O(shè)計方案
【第七章】
1、狀態(tài)機的優(yōu)點
ANS:① 高效的順序控制模型 ②容易利用現(xiàn)成的EDA優(yōu)化工具③性能穩(wěn)定④設(shè)計實現(xiàn)效率高⑤高速性能
2、一般的狀態(tài)機結(jié)構(gòu)包括哪幾個部分?各自的功能是什么? ANS: ①說明部分、說明部分用tpye語句定義新的數(shù)據(jù)類型,其元素通常用狀態(tài)機的狀態(tài)名來定義。狀態(tài)變量(即現(xiàn)態(tài)和次態(tài))應(yīng)定義為信號,便于信息額傳遞,并將狀態(tài)變量的數(shù)據(jù)類型定義為含有既定狀態(tài)元素的新定義的數(shù)據(jù)類型。說明部分一般放在architecture 和 begin之間。
②主控時序過程、所謂主控時序過程是指負責(zé)狀態(tài)機運轉(zhuǎn)和在時鐘驅(qū)動下負責(zé)狀態(tài)轉(zhuǎn)換。壓控振蕩器的輸出經(jīng)過采集并分頻; 和基準(zhǔn)信號同時輸入鑒相器;
鑒相器通過比較上述兩個信號的頻率差,然后輸出一個直流脈沖電壓; 控制VCO,使它的頻率改變;
這樣經(jīng)過一個很短的時間,VCO 的輸出就會穩(wěn)定于某一期望值。③主控組合過程、顧名思義,主控組合進程也可稱為狀態(tài)譯碼過程,其任務(wù)是根據(jù)外部輸入的控制信號,包括來自狀態(tài)機外部的信號和來自狀態(tài)機內(nèi)部其他非主控的組合或時序進程的信號,以確定對外輸出或?qū)?nèi)部其他組合或時序進程輸出信號的內(nèi)容。④輔助過程、輔助進程用于配合狀態(tài)機工作的組合進程或時序進程。
3、狀態(tài)機的狀態(tài)編碼有哪幾種?各自的優(yōu)缺點是什么?
ANS:① 直接輸出型編碼
這種編碼最典型的應(yīng)用就是計數(shù)器。直接輸出型編碼方式就是所謂的用戶自定義編碼方式,它的優(yōu)點是輸出速度快,不太可能出現(xiàn)毛刺現(xiàn)象。缺點是程序的可讀性差,用于狀態(tài)譯碼的組合邏輯資源比其他以相同觸發(fā)器數(shù)量觸發(fā)器 4構(gòu)成的狀態(tài)機多,而且控制非法狀態(tài)出現(xiàn)的容錯技術(shù)要求比較高。
②順序編碼
優(yōu)點是 這種編碼方式最為簡單,在傳統(tǒng)設(shè)計技術(shù)中最為常用,其使用的觸發(fā)器最少,剩余的非法狀態(tài)也最少,容錯技術(shù)較為簡單。缺點也很多,如常常會占用狀態(tài)轉(zhuǎn)換譯碼組合邏輯較多的資源,特別是有的相鄰狀態(tài)或不相鄰狀態(tài)的狀態(tài)轉(zhuǎn)換時涉及多個觸發(fā)器的同時狀態(tài)轉(zhuǎn)換,因此將耗費更多的轉(zhuǎn)換時間,而且容易出現(xiàn)毛刺現(xiàn)象。
③一位熱碼狀態(tài)編碼
一位熱碼狀態(tài)編碼雖然占用了較多的觸發(fā)器,但其簡單的編碼方式大為簡化了狀態(tài)譯碼邏輯,提高了狀態(tài)轉(zhuǎn)換速度,增強了狀態(tài)機的工作穩(wěn)定性,這對于含有較多的時序邏輯資源、相對較少的組合邏輯資源的FPGA器件是最好的解決方案。
常用的去除毛刺的方法有哪幾種?
ANS: ①延時方式去毛刺
②邏輯方式去毛刺 ③ 定時方式去毛刺 P261
【第八章】
1、資源優(yōu)化可以通過哪幾種方式實現(xiàn) ANS:①資源共享 ②邏輯優(yōu)化 ③串行化
2、速度優(yōu)化可以通過哪幾種方式實現(xiàn)?
ANS:① 利用流水線設(shè)計技術(shù) ②寄存器配平③關(guān)鍵路徑法 ④乒乓操作法
【編程題】
1、用VHDL實現(xiàn)某一芯片的功能
2、計數(shù)并譯碼顯示
3、鍵盤掃描并顯示
第三篇:EDA課程心得
EDA課程學(xué)習(xí)心得
這學(xué)期的后半期,我們開了EDA技術(shù)這門課程。EDA的中文解釋是電子設(shè)計自動化,這門課程主要是用于對現(xiàn)代高新電子產(chǎn)品的設(shè)計,EDA在硬件方面融合了大規(guī)模集成電路技術(shù),是一款綜合性很強的工具。
這門課程的學(xué)習(xí)在教學(xué)中應(yīng)該以實踐為主,我們每周有兩節(jié)課,一節(jié)是理論課學(xué)習(xí),一節(jié)是實踐課。剛開始上理論課程的時候,主要是對該軟件的使用做介紹,而在實踐課程上,我們應(yīng)該對軟件進行運用,但是,有很多的同學(xué)卻沒有干與課程相關(guān)的事,只有一部分的同學(xué)在練習(xí)。開始的時候,對軟件很陌生,都是幾個同學(xué)在一起研究,并且詢問老師,才慢慢的掌握了使用方法。在后面的理論學(xué)習(xí)中,老師主要是講解編程的一些語法,并且只講了一些常用的,像信號量,變量,還有PROCESS語句等,這些是編程中常用的一些知識。在實踐課上,主要是以實驗指導(dǎo)書為主,根據(jù)指導(dǎo)書上的內(nèi)容進行編程,畫圖仿真來對EDA技術(shù)的運用有更深入的理解。在每周一節(jié)理論課的學(xué)習(xí)情況下,很多的時間都是很珍貴的,學(xué)習(xí)理論的時間就那么一點,那么,肯定就不可能學(xué)習(xí)的很全面,老師主要是講方法,更多的是要我們自己努力。這本教材還很不錯,講解的很詳細,讓初學(xué)者也能理解。然后實踐課程是可以在課后也能練習(xí),課上發(fā)現(xiàn)問題就能及時的詢問老師,但是,課后就只能詢問同學(xué),或者是將問題留到課堂上再問老師。
這門課程學(xué)完最大的感觸就是學(xué)習(xí)的時間太短了,這門課程聽老師說對我們的以后工作是有很大的幫助的,但是我們卻只學(xué)習(xí)了半個學(xué)期,只用了32個課時就結(jié)束了,這肯定是不夠的。EDA技術(shù)可以完成各種自動設(shè)計過程,是目前最為矚目的一項技術(shù),它有強大的邏輯設(shè)計仿真測試技術(shù)。它的仿真測試技術(shù)只要通過計算機,就能對所設(shè)計的電子系統(tǒng)從各種不同層次的系統(tǒng)性能特點完成一系列準(zhǔn)確的測試與仿真操作,在完成實際系統(tǒng)的安裝后,還能對系統(tǒng)上的目標(biāo)器件進行所謂的邊界掃描測試。這一切都極大的提高了大規(guī)模的系統(tǒng)電子設(shè)計的自動化程度?,F(xiàn)在的很多設(shè)計工作都需要先進行計算機仿真,如果沒有錯誤,在運用到實際的硬件中,這不僅能提高設(shè)計速度,還能減少因為設(shè)計失誤而造成的原料浪費。學(xué)好一門仿真軟件對于我們本科學(xué)生是必不可少的,因為以后畢業(yè)了如果從事設(shè)計方向的工作,那必然要求我們有這樣的一門技術(shù)。
以下是我在這門課程的學(xué)習(xí)過程中總結(jié)的幾點建議,希望老師能夠耐心的看完:
(1)、根據(jù)學(xué)生的層次,設(shè)計一種適合學(xué)生的教學(xué)方案。像我們班這樣的基礎(chǔ)不太好的班級,可能采用重實踐的方法更合適一些。上課講很多的理論知識,都不及在機房自己練習(xí)來的快。而且,老師有時候在課堂上也不知道該給我們講些什么我們才會更好的接收,這樣的話,在我們自己動手實踐的過程中我們發(fā)現(xiàn)了問題,經(jīng)過詢問老師和與同學(xué)一起研究,這樣,就可以克服難題,而且,經(jīng)過這樣的經(jīng)歷,我們對于該問題也會有很深的印象,在以后的應(yīng)用中出現(xiàn)類似的問題我們也會更快的找到方法解決。
(2)、在實踐課上要嚴抓課堂秩序。在實踐課的時候,很多同學(xué)都不做與課程相關(guān)的事,要么翻紙盤,要么幾個一起玩游戲,而真正在做實驗的同學(xué)就只有那么少許的人。很多人都是在一開始就養(yǎng)成這樣的壞習(xí)慣的,如果在剛開始就嚴抓課堂秩序,那么,很多人可能就會按照要求循規(guī)蹈矩了。在實踐課上是很重要的學(xué)習(xí)機會,本來課程安排的時間就很少,不好好的利用,那么肯定是一項嚴重的損失。
(3)、上理論課的時候盡量的多的將一些知識點講詳細一些。我們學(xué)習(xí)的都是很基礎(chǔ)的知識,不要求深入,但是應(yīng)該盡量的將基礎(chǔ)的東西都掌握了。在這門課程中,我們只學(xué)習(xí)了幾章較為基礎(chǔ)和重要的內(nèi)容,只要掌握了這幾章也就能進行簡單的編程,在這樣的情況下,我們就更是需要老師幫助我們,引導(dǎo)我們,理清這些知識點,從而掌握它們。
以上是我在這門課程的學(xué)習(xí)中的一些感觸和心得,雖然這門課程的學(xué)習(xí)結(jié)束了,但是,有一些學(xué)習(xí)方法是同樣可以運用到其他的課程學(xué)習(xí)中,在以后的學(xué)習(xí)中,我們還應(yīng)該堅持,努力,將學(xué)習(xí)進行到底!
第四篇:集成電路EDA技術(shù)
題
目
可編程邏輯器件與集成電路設(shè)計
姓
名
**
所在學(xué)院
理學(xué)院
專業(yè)班級
思源0901
學(xué)
號
09274027
指導(dǎo)教師
**
日
期
20**
年
**
月
日
可編程邏輯器件與集成電路設(shè)計
摘要:本文簡述了集成電路的傳統(tǒng)設(shè)計方法和現(xiàn)代設(shè)計方法,并對兩者的區(qū)別進行了比較,以實例為基礎(chǔ)介紹了集成電路的設(shè)計過程。對可編程邏輯器件的定義、分類、功能等進行詳盡的闡述,介紹了可編程邏輯器件的設(shè)計過程,以可編程邏輯器件軟件設(shè)計平臺QuartusII為例,介紹了可編程邏輯器件軟件設(shè)計平臺的功能及使用方法,并對其他種類軟件平臺作出比較。對國內(nèi)外集成電路設(shè)計公司作簡要介紹,分析了PLD和FPGA芯片上的文字信息。
關(guān)鍵字:集成電路設(shè)計;可編程邏輯器件;軟件設(shè)計平臺;QuartusII;PLD;FPGA
1.集成電路的設(shè)計方法
1.1手工傳統(tǒng)設(shè)計方法
傳統(tǒng)的集成電路設(shè)計方法是指20世紀50-60年代的手工設(shè)計時代。
傳統(tǒng)的集成電路設(shè)計方法的基本步驟是1.根據(jù)設(shè)計要求劃分功能模塊;2.確定輸入和輸出的關(guān)系,畫出真值表,寫出邏輯表達式;4.利用公式或卡諾圖進行人工化簡;5.根據(jù)化簡后的邏輯表達式畫出電路原理圖;6.在面包板上進行實驗,驗證電路的正確性;7.若無錯誤,再在透明薄膜上用貼圖符號貼PCB圖;8.檢查后送制板廠制板;9.對PCB板進行安裝、調(diào)試,若有大的錯誤,修改設(shè)計,重復(fù)以上過程,重新制板。
傳統(tǒng)集成電路設(shè)計方法的特點是采用自下而上(Bottom
Up)的設(shè)計方法,采用通用型邏輯器件搭積木式的方式,在系統(tǒng)硬件設(shè)計的后期進行仿真和調(diào)試,主要設(shè)計文件是電路原理圖。
圖1
1.2
EDA技術(shù)與現(xiàn)代設(shè)計方法
計算機出現(xiàn)后,人們可以借助計算機進行集成電路的輔助設(shè)計,這樣就進入了20世紀70-80年代的CAD(計算機輔助)時代,利用計算機及其圖形設(shè)備幫助集成電路設(shè)計人員進行設(shè)計工作,大大減少了手工設(shè)計時代的工作量,提高了集成電路的設(shè)計效率。到了80年代后期,CAD技術(shù)日漸成熟,集成電路的設(shè)計真正跨越到了EDA(電子設(shè)計自動化)的現(xiàn)代設(shè)計方法時代。
20世紀90年代,國際上電子和計算機技術(shù)較先進的國家,一直在積極探索新的電子電路設(shè)計方法,并在設(shè)計方法、工具等方面進行了徹底的變革,取得了巨大成功。在電子技術(shù)設(shè)計領(lǐng)域,可編程邏輯器件(如CPLD、FPGA)的應(yīng)用,已得到廣泛的普及,這些器件為數(shù)字系統(tǒng)的設(shè)計帶來了極大的靈活性。這些器件可以通過軟件編程而對其硬件結(jié)構(gòu)和工作方式進行重構(gòu),從而使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷。這一切極大地改變了傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計方法、設(shè)計過程和設(shè)計觀念,促進了EDA技術(shù)的迅速發(fā)展。
EDA技術(shù)就是以計算機為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可操作性,減輕了設(shè)計者的勞動強度。
EDA技術(shù)為電子系統(tǒng)設(shè)計帶來了很大的變化:設(shè)計效率提高,設(shè)計周期縮短;設(shè)計質(zhì)量提高;設(shè)計成本降低;能更充分地發(fā)揮設(shè)計人員的創(chuàng)造性;設(shè)計成果的重用性大大提高,省去了不必要的重復(fù)勞動。
現(xiàn)代的數(shù)字系統(tǒng)設(shè)計采用PLD,利用EDA開發(fā)工具,通過芯片設(shè)計來實現(xiàn)系統(tǒng)功能。普遍使用自頂向下(Top—Down)的設(shè)計方法,這里的“頂”就是指系統(tǒng)的功能;“向下”就是指將系統(tǒng)由大到小、由粗到精進行分解,直至可用基本模塊實現(xiàn)。自頂向下設(shè)計方法的一般過程大致上可以分為四步,如下圖所示。
Top-Down設(shè)計圖
明確系統(tǒng)功能
確定總體方案
子系統(tǒng)具體實現(xiàn)
系統(tǒng)仿真實現(xiàn)
圖2
明確系統(tǒng)功能:對要設(shè)計的系統(tǒng)的任務(wù)、要求、原理以及使用環(huán)境等進行充分調(diào)研,進而明確設(shè)計目標(biāo)、確定系統(tǒng)功能,是一件至關(guān)重要的事。因為只有把它做好了,后面的設(shè)計工作才有意義,才有效率。
確定總體方案:明確了設(shè)計目標(biāo)、確定系統(tǒng)功能之后,接下來要做的工作就是根據(jù)系統(tǒng)功能確定出系統(tǒng)設(shè)計的總體方案。
系統(tǒng)具體實現(xiàn):系統(tǒng)方案確定以后.再從結(jié)構(gòu)上對系統(tǒng)進行邏輯劃分,導(dǎo)出系統(tǒng)的結(jié)構(gòu)框圖。一般把系統(tǒng)從邏輯上劃分為數(shù)據(jù)子系統(tǒng)和控制子系統(tǒng)兩部分。然后,再將各自劃分為多個子系統(tǒng)模塊,各模塊的輸入、輸出信號要明確,有利于團隊工作。這些子系統(tǒng)就可以依據(jù)基礎(chǔ)的數(shù)字設(shè)計確定具體電路實現(xiàn)。系統(tǒng)如果有控制算法也包括選擇控制算法及實現(xiàn)。
系統(tǒng)仿真實現(xiàn):系統(tǒng)設(shè)計完成之后,最好先采用EDA軟什對所設(shè)計的系統(tǒng)進行仿真后再用具體器件搭電路.以保證系統(tǒng)設(shè)計的正確性和可靠性。電路實現(xiàn)時,一般按自底向上的順序進行。這樣做不僅行利于單個電路的調(diào)試,而且也利于整個系統(tǒng)的聯(lián)調(diào)。
因此,嚴格地講,現(xiàn)代數(shù)字系統(tǒng)的完整設(shè)計過程應(yīng)該是“自頂向下設(shè)計。自底向上集成”。
1.3從傳統(tǒng)到現(xiàn)代設(shè)計方法的區(qū)別
從傳統(tǒng)設(shè)計方法到現(xiàn)代設(shè)計方法,集成電路設(shè)計技術(shù)有了長足的進步。傳統(tǒng)的集成電路設(shè)計方法,從根據(jù)設(shè)計目標(biāo)得到真值表,到最后完成系統(tǒng)后的測試與調(diào)試,所有的工作均需人工完成??梢韵胂?,隨著數(shù)字集成電路的發(fā)展,從小規(guī)模集成電路(SSI)的小于10個邏輯門,到中規(guī)模集成電路(MSI)的幾百個邏輯門,再到大規(guī)模集成電路的(LSI)幾萬門,最后甚至到超大規(guī)模集成電路(VLSI),甚大規(guī)模集成電路(ULSI)的幾十萬、幾百萬門電路,集成電路迅速的大規(guī)模化,使得傳統(tǒng)設(shè)計方法根本無法完成得到真值表畫出卡諾圖等工作。它表現(xiàn)出了效率低下,一切手工完成,設(shè)計周期很長;容易出錯;芯片種類多,數(shù)量大,受市場的限制;設(shè)計靈活性差;產(chǎn)品體積大等缺點。同時后續(xù)的電路調(diào)試和設(shè)計也需要很高的電路布局和布線的技巧,總而言之,這樣的設(shè)計對于復(fù)雜數(shù)字系統(tǒng)來講效率太低了。
現(xiàn)代的設(shè)計方法,自頂向下,可以實現(xiàn)具體任務(wù)的分工完成,并且用軟件的方式設(shè)計硬件,從軟件設(shè)計的硬件系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由EDA軟件自動完成的,設(shè)計過程中可用軟件進行各種仿真,現(xiàn)場可編程,在線升級,而且整個系統(tǒng)集成在一塊兒很小的芯片上,體積小,功耗低,可靠性高,容易檢查錯誤,便于修改,設(shè)計周期短、成功率很高,這些優(yōu)點都是傳統(tǒng)方法無法比擬的,大大提高了集成電路設(shè)計的效率。
所以說從傳統(tǒng)方法到現(xiàn)代方法,集成電路的設(shè)計有了一個很大的跨越。
表1
2.可編程邏輯器件
2.1可編程邏輯器件定義
可編程邏輯器件英文全稱為:programmable
logic
device
即
PLD。PLD是做為一種通用集成電路產(chǎn)生的,他的邏輯功能按照用戶對器件編程來確定。一般的PLD的集成度很高,足以滿足設(shè)計一般的數(shù)字系統(tǒng)的需要。這樣就可以由設(shè)計人員自行編程而把一個數(shù)字系統(tǒng)“集成”在一片PLD上,而不必去請芯片制造廠商設(shè)計和制作專用的集成電路芯片了。
圖3
PLD的基本結(jié)構(gòu)如上圖所示,圖中與陣列和或陣列是PLD的主體。與陣列用以產(chǎn)生有關(guān)與項,或陣列把所有與項構(gòu)成與或形式的邏輯函數(shù)。任何組合邏輯函數(shù)均可表示為與或表達式,因而用與門-或門兩級電路可實現(xiàn)任何組合電路,又因為任何時序電路是由組合電路加上存儲元件構(gòu)成的,因而PLD的與或結(jié)構(gòu)對實現(xiàn)數(shù)字電路具有普遍的意義。
2.2可編程邏輯器件分類及功能
可編程邏輯器件按集成度分類如下圖。
圖4
簡單可編程邏輯器件有PROM、PLA、PAL、GAL。
PROM:與陣列固定,或陣列可編程的邏輯器件,最主要特征是只允許數(shù)據(jù)寫入一次,如果數(shù)據(jù)輸入錯誤只能報廢。
PLA:
與或陣列均可編程,在可編程邏輯器件中,它的靈活性最高。由于它
具有與或陣列均能編程的特點,在實現(xiàn)函數(shù)時,只需形成所需的乘機項,使這列規(guī)模比輸入數(shù)相同的與陣列固定、或陣列可編程的PROM小得多。但是目前PLA的編程缺少高質(zhì)量的支持軟件和編程工具,且器件價格偏高,門的利用率不高,因而未得到廣泛應(yīng)用。
PAL、GAL:與陣列可編程,或陣列固定的代表器件。這種結(jié)構(gòu)中,或陣列固定若干個乘積項輸出
。PAL和GAL門陣列結(jié)構(gòu)把PROM器件的成本低、速度高、編程容易以及PLA器件的靈活性等優(yōu)點結(jié)合在一起,成為早起實現(xiàn)可編程ASIC的主要器件
復(fù)雜可編程邏輯器件的兩種主要類型是現(xiàn)場可編程門陣列(FPGA)和復(fù)雜可編程邏輯器件(CPLD)。
FPGA:提供了最高的邏輯密度、最豐富的特性和最高的性能。
現(xiàn)在最新的FPGA器件,可提供八百萬“系統(tǒng)門”(相對邏輯密度)。
這些先進的器件還提供諸如內(nèi)建的硬連線處理器、大容量存儲器、時鐘管理系統(tǒng)等特性,并支持多種最新的超快速器件至器件信號技術(shù)。
FPGA被應(yīng)用于范圍廣泛的應(yīng)用中,從數(shù)據(jù)處理和存儲,以及到儀器儀表、電信和數(shù)字信號處理等。
CPLD:提供的邏輯資源少得多,最高約1萬門。
但是,CPLD提供了非常好的可預(yù)測性,因此對于關(guān)鍵的控制應(yīng)用非常理想。
而且CPLD器件需要的功耗極低。
2.3可編程邏輯器件設(shè)計過程
采用自頂向下(Top—Down)的設(shè)計方法確定各個子系統(tǒng)后,就需要借助于EDA軟件進行系統(tǒng)設(shè)計實現(xiàn)。下圖是基于EDA軟件的PLD開發(fā)流程框圖,由框圖可見設(shè)計主要包括設(shè)計輸入、設(shè)計處理、功能仿真和時序仿真、器件編程或下載和系統(tǒng)測試五個部分
FPGA
/
CPLD設(shè)計流程
設(shè)計準(zhǔn)備
設(shè)計輸入
?
圖形輸入
?
硬件描述語言HDL
設(shè)計處理
?
編譯、優(yōu)化綜合?
適配、分割
?
布局、布線
器件編程(下載)
系統(tǒng)測試
時序仿真
功能仿真
HDL:
VHDL(IEEE)
Verilog
(IEEE)
AHDL
ABEL
EDA工具自動實現(xiàn)
對CPLD產(chǎn)生Pof文件
對FPGA產(chǎn)生Sof文件
圖5
設(shè)計輸入:采用原理圖或硬件描述語言(HDL),描述出輸入和輸出的邏輯關(guān)系,將整個原理圖或程序輸入到計算機中。
設(shè)計處理:EDA工具可自動進行邏輯綜合,將功能描述轉(zhuǎn)換為門級描述,或轉(zhuǎn)換成具體PLD的網(wǎng)表文件,將網(wǎng)表文件自動適配到具體芯片中進行布局布線。
功能仿真和時序仿真:在軟件平臺進行硬件仿真。
編程下載:到實際芯片中,在實驗臺上進行驗證;
系統(tǒng)測試:測試成型系統(tǒng),在每一階段若有問題,可在計算機上直接修改設(shè)計,重復(fù)以上過程。
3.可編程邏輯器件軟件設(shè)計平臺
可編程邏輯器件的軟件平臺,都是由PLD/FPGA芯片廠家提供,基本都可以完成所有的設(shè)計輸入(原理圖或HDL),仿真,綜合,布線,下載等工作。
3.1常用可編程邏輯器件軟件設(shè)計平臺比較
Altera公司:
QuartusII軟件平臺:
Quartus
II
是Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL等多種設(shè)計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計輸入到硬件配置的完整PLD設(shè)計流程。
MaxplusII
E+MAX:免費PLD開發(fā)軟件,界面與標(biāo)準(zhǔn)版的MaxplusII完全一樣,只支持MAX7000和MAX3000系列器件,本身支持不復(fù)雜的VHDL和Verilog綜合。
MaxplusII
Baseline:免費PLD開發(fā)軟件,界面與標(biāo)準(zhǔn)版的MaxplusII完全一樣,但需要通過使用MAX+PLUSII
Advanced
Synthsis插件才能支持VHDL/Verilog。支持MAX7000/3000和部分FLEX/ACEX芯片。
Xilinx公司
ISE軟件平臺: ISE是使用XILINX的FPGA的必備的設(shè)計工具,它可以完成FPGA開發(fā)的全部流程,包括設(shè)計輸入、仿真、綜合、布局布線、生成BIT文件、配置以及在線調(diào)試等,功能非常強大。
WebFITTER:免費PLD開發(fā)軟件,不需下載,可在線編譯,結(jié)果用e-mail發(fā)送到信箱。使用簡單,但要求較快的聯(lián)網(wǎng)速度。支持XC9500
和
CoolRunner系列。
WebPACK
ISE:免費PLD開發(fā)軟件,支持XC9500,coolrunner,Spartan/II,部分Virtex/E/II器件。
Lattice公司
ispDesignEXPERT:PLD開發(fā)軟件,目前最新軟件改名為:ispLEVER
ispLEVER
Starter:免費PLD開發(fā)軟件,支持600個宏單元以下的Lattice芯片的設(shè)計。
3.2
QuartusII軟件設(shè)計平臺簡介
QuartusII是美國Altera公司自行設(shè)計的第四代PLD開發(fā)軟件可以完成PLD的設(shè)計輸入、邏輯綜合、布局與布線、仿真、時序分析、器件編程的全過程,同時還支持SOPC(可編程片上系統(tǒng))設(shè)計開發(fā)。
QuartusⅡ提供了方便的設(shè)計輸入方式、快速的編譯和直接易懂的器件編程。能夠支持邏輯門數(shù)在百萬門以上的邏輯器件的開發(fā),并且為第三方工具提供了無縫接口。QuartusⅡ支持的器件有:Stratix
Ⅱ、Stratix
GX、Stratix、Mercury、MAX3000A、MAX
7000B、MAX
7000S、MAX
7000AE、MAX
Ⅱ、FLEX6000、FLEX10K、FLEX10KA、FLEX10KE、Cyclone、Cyclone
Ⅱ、APEX
Ⅱ、APEX20KC、APEX20KE和ACEX1K系列。QuartusⅡ軟件包的編程器是系統(tǒng)的核心,提供功能強大的設(shè)計處理,設(shè)計者可以添加特定的約束條件來提高芯片的利用率。
Quartus
II軟件的設(shè)計過程主要包括:
1.建立項目;
2.輸入設(shè)計電路;
3.設(shè)計編譯;
4.設(shè)計仿真
5.設(shè)計下載
其中QuartusII的輸入可以有三種方式,(1)原理圖輸入方式:適用于對系統(tǒng)及各部分電路很熟悉的場合。(2)硬件描述語言輸入方式:硬件描述語言是用文本方式描述設(shè)計,硬件描述語言有ABEL、AHDL、VHDL、Verilog等,其中VHDL和Verilog已成為IEEE標(biāo)準(zhǔn)。(3)波形輸入方式
當(dāng)在Quartus
Ⅱ中完成設(shè)計后,就應(yīng)當(dāng)將所設(shè)計的電路下載到CPLD芯片中,結(jié)合用戶系統(tǒng)進行統(tǒng)一的調(diào)試。CPLD編程下載的方式較多,按計算機的接口可分為:串口下載(BitBlaster或MasterBlaster)、并口下載(ByteBlaster)、USB接口下載(MasterBlaster或APU)等方式。按器件可分為:CPLD編程(MAX3000、MAX5000、MAX7000、MAX
9000),F(xiàn)PGA下載(FLEX6000、FLEX8000、FLEX
10K、ACEX
1K、APEX
20K),存儲器編程EPC1、EPC2等。
4.集成電路設(shè)計公司簡介
4.1國內(nèi)集成電路設(shè)計公司介紹
大唐微電子技術(shù)有限公司:作為目前國內(nèi)規(guī)模最大的集成電路設(shè)計企業(yè)之一,大唐微電子積累了豐富的集成電路設(shè)計經(jīng)驗。多年來,公司在移動通信智能卡領(lǐng)域中,憑借獨具特色的產(chǎn)品與服務(wù),引領(lǐng)了中國國內(nèi)移動通信智能卡市場穩(wěn)健、快速的發(fā)展。大唐微電子是目前全球智能卡領(lǐng)域中生產(chǎn)規(guī)模最大、產(chǎn)業(yè)鏈最完整、生產(chǎn)設(shè)備最先進的智能卡企業(yè)之一;是全球唯一一家能夠同時在芯片級、模塊級、卡片級向客戶提供全方位產(chǎn)品、服務(wù)與解決方案的企業(yè);也是國家指定的中國第二代居民身份證專用集成電路設(shè)計和模塊加工企業(yè)。目前,公司模塊年生產(chǎn)能力達4億枚,智能卡年發(fā)行能力超過2億張。
炬力集成電路設(shè)計有限公司:是一家致力于集成電路設(shè)計與制造的大型半導(dǎo)體技術(shù)集團,美國的納斯達克上市公司,總部設(shè)在環(huán)境優(yōu)美的海濱城市珠海,旗下?lián)碛腥易庸尽媪呻娐吩O(shè)計有限公司、炬才微電子(深圳)有限公司、北京炬力北方微電子有限公司。公司目前共有700多人,其中本科以上研發(fā)人員占80%以
4.2國外集成電路設(shè)計公司介紹
Xilinx(賽靈思):是全球領(lǐng)先的可編程邏輯完整解決方案的供應(yīng)商。Xilinx研發(fā)、制造并銷售范圍廣泛的高級集成電路、軟件設(shè)計工具以及作為預(yù)定義系統(tǒng)級功能的IP(Intellectual
Property)核??蛻羰褂肵ilinx及其合作伙伴的自動化軟件工具和IP核對器件進行編程,從而完成特定的邏輯操作。Xilinx公司成立于
1984年,Xilinx首創(chuàng)了現(xiàn)場可編程邏輯陣列(FPGA)這一創(chuàng)新性的技術(shù),并于1985年首次推出商業(yè)化產(chǎn)品。目前Xilinx滿足了全世界對
FPGA產(chǎn)品一半以上的需求。Xilinx產(chǎn)品線還包括復(fù)雜可編程邏輯器件(CPLD)。在某些控制應(yīng)用方面CPLD通常比FPGA速度快,但其提供的邏輯資源較少。
Xlinx主要FPGA產(chǎn)品:Xilinx的主流FPGA分為兩大類,一種側(cè)重低成本應(yīng)用,容量中等,性能可以滿足一般的邏輯設(shè)計要求,如Spartan系列;還有一種側(cè)重于高性能應(yīng)用,容量大,性能能滿足各類高端應(yīng)用,如Virtex系列,用戶可以根據(jù)自己實際應(yīng)用要求進行選擇。
在性能可以滿足的情況下,優(yōu)先選擇低成本器件。
*
Spartan-3/3L:
新一代FPGA產(chǎn)品,結(jié)構(gòu)與VirtexII類似,全球第一款90nm工藝FPGA,1.2v內(nèi)核,于2003年開始陸續(xù)推出。
*
Spartan-3E:基于Spartan-3/3L,對性能和成本進一步優(yōu)化
*
Spartan-6:xilinx最新推出的低成本FPGA
*
Virtex-II:2002年推出,0.15um工藝,1.5v內(nèi)核,大規(guī)模高端FPGA產(chǎn)品
*
Virtex-II
pro:
基于VirtexII的結(jié)構(gòu),內(nèi)部集成CPU和高速接口的FPGA產(chǎn)品
*
Virtex-4:
xilinx最新一代高端FPGA產(chǎn)品,包含三個子系列:LX,SX,F(xiàn)X
*
Virtex-5:65nm工藝的產(chǎn)品
*
Virtex-6:最新的高性能FPGA產(chǎn)品,45nm
*
Virtex-7:20**年推出的超高端FPGA產(chǎn)品。
Altera:自二十年前發(fā)明世界上第一個可編程邏輯器件開始,Altera公司秉承了創(chuàng)新的傳統(tǒng),是世界上“可編程芯片系統(tǒng)”(SOPC)解決方案倡導(dǎo)者。Altera結(jié)合帶有軟件工具的可編程邏輯技術(shù)、知識產(chǎn)權(quán)(IP)和技術(shù)服務(wù),在世界范圍內(nèi)為14,000多個客戶提供高質(zhì)量的可編程解決方案。新產(chǎn)品系列將可編程邏輯的內(nèi)在優(yōu)勢——靈活性、產(chǎn)品及時面市——和更高級性能以及集成化結(jié)合在一起,專為滿足當(dāng)今大范圍的系統(tǒng)需求而開發(fā)設(shè)計。
Altera可編程解決方案包括:業(yè)內(nèi)最先進的FPGA、CPLD和結(jié)構(gòu)化ASIC技術(shù);全面內(nèi)嵌的軟件開發(fā)工具;最佳的IP內(nèi)核;可定制嵌入式處理器;現(xiàn)成的開發(fā)包;專家設(shè)計服務(wù)。
Altera主要FPGA產(chǎn)品:Altera的主流FPGA分為兩大類,一種側(cè)重低成本應(yīng)用,容量中等,性能可以滿足一般的邏輯設(shè)計要求,如Cyclone,CycloneII;還有一種側(cè)重于高性能應(yīng)用,容量大,性能能滿足各類高端應(yīng)用,如Startix,StratixII等,用戶可以根據(jù)自己實際應(yīng)用要求進行選擇。在性能可以滿足的情況下,優(yōu)先選擇低成本器件。
*
Cyclone(颶風(fēng)):Altera中等規(guī)模FPGA,2003年推出,0.13um工藝,1.5v內(nèi)核供電,與Stratix結(jié)構(gòu)類似,是一種低成本FPGA系列,是目前主流產(chǎn)品,其配置芯片也改用全新的產(chǎn)品。
*
CycloneII:Cyclone的下一代產(chǎn)品,2005年開始推出,90nm工藝,1.2v內(nèi)核供電,屬于低成本FPGA,性能和Cyclone相當(dāng),提供了硬件乘法器單元
*
Stratix
:altera大規(guī)模高端FPGA,2002年中期推出,0.13um工藝,1.5v內(nèi)核供電。集成硬件乘加器,芯片內(nèi)部結(jié)構(gòu)比Altera以前的產(chǎn)品有很大變化。
*
StratixII:
Stratix的下一代產(chǎn)品,2004年中期推出,90nm工藝,1.2v內(nèi)核供電,大容量高性能FPGA。
*StrtratixV為altera目前的高端產(chǎn)品,采用28-nm工藝,提供了28G的收發(fā)器件,適合高端的FPGA產(chǎn)品開發(fā)
5.PLD及FPGA片上文字信息分析
圖6
如上圖FPGA芯片,左上角XILINX文字為設(shè)計生產(chǎn)該芯片的公司名稱,KINTEX-7為芯片型號,Kintex-7
系列是賽靈思公司一種新型
FPGA,能以不到
Virtex-6
系列一半的價格實現(xiàn)與其相當(dāng)性能,性價比提高了一倍,功耗降低了一半。下邊文字為此芯片的具體型號等,最下方TAIWAN為芯片的產(chǎn)地。
參考文獻
【1】
侯建軍
《數(shù)字電子技術(shù)基礎(chǔ)》高等教育出版社,2007年
【2】
朱明程
《可編程邏輯器件及應(yīng)用》
西安電子科技大學(xué)出版社,2004年
【3】
百度百科
《PLD》
《FPGA》
《Xilinx》
《Altera》
【4】
陳忠平、高金定、高見芳
《基于Quartus
II的FPGA/CPLD設(shè)計與實踐》
電子工業(yè)出版社
2007年
第五篇:eda技術(shù)教案
EDA技術(shù)教案 第一次課 內(nèi)容:
介紹EDA技術(shù)的涵義、發(fā)展歷程和應(yīng)用領(lǐng)域; 介紹EDA技術(shù)的主要內(nèi)容; 介紹EDA的工程設(shè)計流程; 說明本課程的特點與學(xué)習(xí)方法。教學(xué)目的:
通過介紹EDA技術(shù)的涵義、發(fā)展歷程和應(yīng)用領(lǐng)域,使學(xué)生了解本課程的實際應(yīng)用很大,調(diào)動學(xué)生學(xué)習(xí)這門課程的積極性
通過介紹EDA技術(shù)的主要內(nèi)容,使學(xué)生了解這門課程要學(xué)習(xí)什么。在此基礎(chǔ)上說明本課程的特點與學(xué)習(xí)方法。
說明各種通信系統(tǒng)的組成,了解它們的優(yōu)缺點,出現(xiàn)背景。重點說明數(shù)字通信系統(tǒng)的特定和優(yōu)點。
介紹EDA的工程設(shè)計流程,說明當(dāng)前EDA設(shè)計的特點,用軟件方式設(shè)計硬件,用軟件方式設(shè)計的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)開發(fā)軟件自動完成的,因此類似軟件編程,不需太多的低層硬件知識,使學(xué)生克服畏難情緒。教學(xué)重點、難點:
EDA技術(shù)的三個發(fā)展階段以及各階段的特點; EDA的定義和EDA技術(shù)的主要內(nèi)容; EDA的工程設(shè)計流程。教學(xué)方法:
比較、舉例、圖解。教學(xué)過程:
(一)自我介紹,說明課時安排、成績評定方法、課程定位、教學(xué)網(wǎng)站的進入。
(二)講授新課
課堂教學(xué)實施過程共分六步。介紹EDA技術(shù)的涵義。
說明EDA技術(shù)的發(fā)展背景,說明EDA技術(shù)的三個發(fā)展階段,比較三個階段的各解決了什么問題,在此基礎(chǔ)上理解各階段的特點。
在第二步理解EDA技術(shù)進行電子系統(tǒng)設(shè)計的特點的基礎(chǔ)上引出并詳細說明EDA的定義,加深對EDA技術(shù)的涵義的理解。
在第三步詳細說明EDA的定義的基礎(chǔ)上,引出EDA技術(shù)的4個主要內(nèi)容:硬件描述語言:設(shè)計的主要表達手段;大規(guī)模可編程邏輯器件:設(shè)計的載體;軟件開發(fā)工具:設(shè)計的工具;實驗開發(fā)系統(tǒng):下載工具及硬件驗證工具。再分別介紹EDA技術(shù)的4個主要內(nèi)容:了解常用的硬件描述語言VHDL和Verilog;了解兩種常用的大規(guī)??删幊踢壿嬈骷﨔PGA和CPLD以及它們各自的特點;了解主流EDA工具軟件;了解本課程使用的西安唐都公司的TD-EAD實驗系統(tǒng)
說明課程要求:通過學(xué)習(xí)這門課程要掌握運用EDA開發(fā)工具設(shè)計開發(fā)電子系統(tǒng),引出這門課程的特點:實踐性強,說明我們的學(xué)習(xí)方法:抓住一個重點:VHDL的編程;掌握兩個工具: Quartus II 和 TD-EAD實驗系統(tǒng);運用三種手段:通過案例分析、應(yīng)用設(shè)計和上機實踐,實現(xiàn)理論與實踐相結(jié)合,邊學(xué)邊用,邊用邊學(xué)。用設(shè)計一個簡單電子系統(tǒng)為例,引出EDA的工程設(shè)計流程。說明當(dāng)前EDA技術(shù)發(fā)展的特點:用軟件方式設(shè)計硬件;用軟件方式設(shè)計的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)開發(fā)軟件自動完成的;設(shè)計過程中可用有關(guān)軟件進行各種仿真;系統(tǒng)可現(xiàn)場編程,在線升級;整個系統(tǒng)可集成在一個芯片上,體積小、功耗低、可靠性高?,F(xiàn)代EDA設(shè)計類似軟件編程,不需太多的低層硬件知識,使學(xué)生克服畏難情緒。同時這里又回顧復(fù)習(xí)了使用EDA技術(shù)進行電子系統(tǒng)設(shè)計的特點。最后圖解說明EDA的工程設(shè)計流程。第二次課
內(nèi)容:安裝 Quartus Ⅱ,VHDL 與 Quartus Ⅱ初體驗 教學(xué)目的:
理解VHDL語言的特點。
了解主流EDA工具Quartus Ⅱ,掌握其安裝方法。掌握使用 Quartus Ⅱ進行FPGA設(shè)計的基本流程。
教學(xué)重點、難點:使用Quartus Ⅱ進行FPGA設(shè)計的基本流程。教學(xué)方法: 舉例、演示。教學(xué)過程:
課堂教學(xué)實施過程共分兩步。
回顧上節(jié)課所講的EDA的主要內(nèi)容。在此基礎(chǔ)上引出VHDL語言的特點,并介紹主流EDA開發(fā)工具Quartus Ⅱ,說明它的不同版本的特點。重點介紹PC破解版的安裝步驟。演示安裝過程,在演示是重點提醒學(xué)生注意容易出錯的幾個地方。
回顧上節(jié)課所講的當(dāng)前EDA技術(shù)發(fā)展的特點,EDA的工程設(shè)計流程。在此基礎(chǔ)上說明使用 Quartus Ⅱ進行FPGA設(shè)計的基本流程,并通過實際演示設(shè)計一個簡單的電子系統(tǒng):與非門,說明使用 Quartus Ⅱ和VHDL開發(fā)電子系統(tǒng)的基本流程。在演示過程中重點提醒學(xué)生注意容易出錯的幾個地方,并給出一些初學(xué)者的小竅門。第三次課
內(nèi)容:VHDL 程序基本結(jié)構(gòu),VHDL 基本數(shù)據(jù)類型,VHDL 數(shù)據(jù)對象 教學(xué)目的:
掌握VHDL語言程序的基本結(jié)構(gòu),特別是實體和結(jié)構(gòu)體。
掌握VHDL語言的語言要素,包括VHDL語言的基本數(shù)據(jù)類型、數(shù)據(jù)對象和VHDL 運算符,理解信號和變量的區(qū)別。
教學(xué)重點、難點:VHDL語言程序的基本結(jié)構(gòu),VHDL語言的語言要素。教學(xué)方法:舉例、演示、歸納、比較。教學(xué)過程:
課堂教學(xué)實施過程共分三步。1)VHDL 程序基本結(jié)構(gòu)
回顧上節(jié)課設(shè)計與非門的例子,引出設(shè)計與非門的設(shè)計思想:先確定系統(tǒng)功能和接口,再進行內(nèi)部電路設(shè)計,由此引出VHDL程序的基本結(jié)構(gòu):實體:對應(yīng)系統(tǒng)接口,結(jié)構(gòu)體:對應(yīng)系統(tǒng)內(nèi)部電路。從與非門的VHDL程序中可以直觀的看到它的三部分:庫、程序包的調(diào)用,實體聲明,結(jié)構(gòu)體定義。
以與非門的VHDL程序為例說明庫、程序包的調(diào)用的作用。說明調(diào)用語法,介紹常用的三個庫、程序包。
以與非門的VHDL程序為例說明實體聲明的語法,各項的意義。提醒學(xué)生注意初學(xué)者容易出錯的地方,如:實體名必須與文件名相同,否則編譯會出錯;最后一條端口聲明語句不可加分號等。并通過演示出錯情況,加深學(xué)生的印象。最后通過圖解歸納實體聲明的格式,容易出錯的地方,并對初學(xué)者進行相應(yīng)的建議:使用范例,在Edit—> Insert Template 中選擇范例。Quartus 進行編譯時,要求關(guān)聯(lián)文件文件名相同,建議采用 Quartus 默認文件名,不要自己更改文件名。
以與非門的VHDL程序為例說明結(jié)構(gòu)體的語法,各項的意義。提醒學(xué)生注意初學(xué)者容易出錯的地方。并通過演示出錯情況,加深學(xué)生的印象。最后通過圖解歸納結(jié)構(gòu)體的格式,應(yīng)注意的地方。
2)VHDL 基本數(shù)據(jù)類型
回到與非門的VHDL程序的實體聲明部分,引出VHDL的數(shù)據(jù)類型。介紹各種數(shù)據(jù)類型,重點介紹最常用的標(biāo)準(zhǔn)邏輯位、標(biāo)準(zhǔn)邏輯位矢量。提醒學(xué)生注意使用標(biāo)準(zhǔn)邏輯位矢量時必須注明數(shù)組中元素個數(shù)和排列方向,并舉例說明。最后比較VHDL和C語言中使用數(shù)據(jù)類型的異同點:VHDL同 C 語言一樣,必須先聲明端口和信號,然后才能使用,在聲明中必須定義它們的數(shù)據(jù)類型;與 C 語言不同,VHDL是強類型語言,只有相同數(shù)據(jù)類型的端口、信號和操作數(shù)才能相互作用。3)VHDL 數(shù)據(jù)對象
介紹VHDL的數(shù)據(jù)對象:信號、變量和常量。以與非門的VHDL程序為例,通過圖解比較說明信號和端口的異同點。說信號聲明的格式和信號賦值語句的格式。重點說明矢量賦值,通過舉例說明在矢量賦值要特別注意兩矢量之間的元素對應(yīng)關(guān)系。
說明定義變量的語法格式、變量賦值的語法格式。比較信號和變量的區(qū)別。最后介紹定義常量的語法格式。第四次課
內(nèi)容:VHDL 運算符、VHDL 并行信號賦值語句。
教學(xué)目的:
掌握VHDL 運算符。
掌握VHDL語言的并行信號賦值語句,特別是選擇信號賦值語句和條件信號賦值語句,理解條件信號賦值語句的各賦值子句的優(yōu)先級差別。教學(xué)重點、難點:并置運算符“&”、選擇信號賦值語句、條件信號賦值語句。教學(xué)方法:舉例、演示、圖解。教學(xué)過程:
課堂教學(xué)實施過程共分四步。
分別介紹VHDL的四種運算符:算術(shù)運算符、并置運算符、關(guān)系運算符、邏輯運算符。對算術(shù)運算符重點說明能支持的數(shù)據(jù)類型和不能支持的數(shù)據(jù)類型。并置運算符是本課程的一個難點,通過一個電路設(shè)計,舉例說明并置運算符的應(yīng)用。關(guān)系運算符重點說明能支持的數(shù)據(jù)類型。提醒學(xué)生注意:“<=”在條件語句中出現(xiàn)為小于等于,其它情況為信號賦值。邏輯運算符重點說明其優(yōu)先級關(guān)系。
并行語句是硬件描述語言區(qū)別于一般軟件程序語言的最顯著的特點之一。通過圖解說明常用并行語句特點,從圖中直觀的看到:并行語句之間是并行執(zhí)行,但并行語句內(nèi)部的執(zhí)行可以是順序的(進程語句),也可以是并行的(塊語句)。
介紹并行信號賦值語句:簡單信號賦值語句、選擇信號賦值語句、條件信號賦值語句。給出選擇信號賦值語句格式,并通過設(shè)計3-8 線譯碼器,說明如何使用選擇信號賦值語句。提醒學(xué)生注意容易出錯的幾點:“選擇值”一定要覆蓋所有可能情況,若不可能一一指定,則要借助 others為其它情況找個“出口”。因此強烈建議初學(xué)者使用 with ? select 語句時,最后都帶上 when ?
others。“選擇值”必須互斥,不能出現(xiàn)條件重復(fù)或重疊的情況。給元素賦常數(shù)值,用單引號;給矢量賦常數(shù)值,用雙引號。通過演示出錯情況,加深學(xué)生的印象。
給出條件信號賦值語句格式,并通過設(shè)計8-3 線優(yōu)先編碼器,說明如何使用條件信號賦值語句。提醒學(xué)生注意容易:在執(zhí)行 When ?
Else 語句時,賦值條件按書寫的先后順序逐項測試,一旦發(fā)現(xiàn)某一賦值條件得到滿足,即將相應(yīng)表達式的值賦給目標(biāo)信號,并不再測試下面的賦值條件。即各賦值子句有優(yōu)先級的差別,按書寫的先后順序從高到低排列。通過觀察仿真結(jié)果,直觀的看到賦值優(yōu)先級,加深學(xué)生的印象。第五次課
內(nèi)容:進程語句、VHDL語言的順序語句。教學(xué)目的:
掌握進程語句,掌握進程的工作原理和特點,理解進程與時鐘的關(guān)系。
掌握VHDL語言的順序語句,特別是IF 語句和CASE語句,理解IF、CASE語句和選擇信號賦值語句、條件信號賦值語句的區(qū)別。
教學(xué)重點、難點:進程的工作原理和特點,進程與時鐘的關(guān)系。IF 語句和CASE語句,IF 語句和CASE語句的嵌套。
教學(xué)方法:圖解、舉例、總結(jié)。教學(xué)過程:
課堂教學(xué)實施過程共分四步。
介紹進程語句的特點、格式,說明各項意義。圖解說明進程工作原理,通過該圖直觀的理解進程的特點:進程本身是并行語句,單其內(nèi)部是順序語句;進程只有在特定的時刻(敏感信號發(fā)生變化)才會被激活。在此基礎(chǔ)上說明進程與時鐘的關(guān)系。通過圖解說明時鐘上升沿驅(qū)動進程語句,使學(xué)生較好的理解了進程的時鐘和進程是一種隱形的循環(huán)。給出時鐘沿的VHDL描述,通過幾個寄存器的設(shè)計,說明如何使用進程語句,通過觀察波形仿真圖,加深學(xué)生對進程與時鐘的關(guān)系的理解。最后總結(jié)進程的要點和容易出錯的幾個地方。介紹順序語句,提醒學(xué)生注意進程在激活的一瞬間就執(zhí)行完進程中所有語句。重點介紹IF 語句和CASE 語句。給出IF 語句的三種格式,說明它們的特點。在此基礎(chǔ)上總結(jié)使用 IF 語句注意的要點。最后通過設(shè)計串行輸入并行輸出的移位寄存器和并行輸入串行輸出的移位寄存器,加深學(xué)生對IF語句、IF語句嵌套的理解。
給出CASE 語句的格式,說明CASE 語句使用要點。最后通過設(shè)計帶使能端的 2-4 譯碼器,加深學(xué)生對IF語句、IF語句嵌套的理解。介紹LOOP語句和空語句。第六次課
內(nèi)容:層次化設(shè)計概念、在Quartus II 中實現(xiàn)層次化設(shè)計 教學(xué)目的:
理解層次化設(shè)計的優(yōu)點。
理解層次化設(shè)計的核心思想:模塊化、元件重用。
掌握在 Quartus II 中采用圖形法與文本法結(jié)合的混合輸入方法實現(xiàn)元件重用和系統(tǒng)的層次化設(shè)計。
教學(xué)重點、難點:在Quartus II 中實現(xiàn)層次化設(shè)計。教學(xué)方法:圖解、舉例、演示。教學(xué)過程:
課堂教學(xué)實施過程共分三步。
說明層次化設(shè)計的優(yōu)點。圖解說明層次化設(shè)計的核心思想:模塊化、元件重用。加深對層次化設(shè)計的優(yōu)點的理解。
圖解說明在 Quartus II 中實現(xiàn)系統(tǒng)層次化設(shè)計的主要步驟:首先按自頂向下的設(shè)計方法,設(shè)計系統(tǒng),劃分和定義系統(tǒng)子模塊,形成系統(tǒng)層次化設(shè)計圖。其次用 VHDL 語言設(shè)計底層子模塊,并生成相應(yīng)的元件符號。最后調(diào)用下層元件,完成上層模塊的設(shè)計,并生成相應(yīng)的元件符號。這樣從底層元件開始,自底向上完成系統(tǒng)的設(shè)計。
通過實際演示時鐘選擇器的設(shè)計過程,說明如何在Quartus II 中實現(xiàn)系統(tǒng)層次化設(shè)計,主要包括模塊劃分、元件設(shè)計文件的建立、元件符號的生成、元件調(diào)用、LPM宏模塊的調(diào)用與參數(shù)配置、頂層電路原理圖的建立。第七次課
內(nèi)容:系統(tǒng)層次化設(shè)計進階
教學(xué)目的:理解元件例化、程序包和類屬映射。教學(xué)重點、難點:略 教學(xué)方法:圖解、舉例。教學(xué)過程:
課堂教學(xué)實施過程共分四步。
回顧上節(jié)課的內(nèi)容:在Quartus II 中實現(xiàn)層次化設(shè)計,并引出新問題:如何用 VHDL 語言而不是元件符號來調(diào)用已設(shè)計的元件,實現(xiàn)系統(tǒng)層次化設(shè)計。由此引出元件例化、程序包和類屬映射這幾個層次化設(shè)計中最重要的VHDL語句。
說明什么是元件例化:將以前設(shè)計的實體當(dāng)作本設(shè)計的一個元件(元件定義),然后再調(diào)用這個元件,即用VHDL語言將各元件之間的連接關(guān)系描述出來(元件映射)。介紹元件例化中的元件定義和元件映射的語法格式,說明各項意義。通過一個例子引用2分頻電路,來說明如何使用元件例化。
通過圖解說明元件例化語句的缺點:如果在一個實體中用到多個元件,那么在其結(jié)構(gòu)體中要用大量篇幅定義元件。元件定義在結(jié)構(gòu)體中,只有這個實體能調(diào)用該元件,如果有多個實體用到同一個元件,那么在這多個實體中都要對該元件進行定義。通過對該問題的解決,引出程序包:將數(shù)據(jù)類型、元件定義、子程序等收集到一個VHDL程序包中,只要在設(shè)計實體中用USE語句調(diào)用該程序包,就可以使用這些預(yù)定義的數(shù)據(jù)類型、元件定義、子程序。說明程序包的語法格式,通過舉例說明如何在程序包中進行元件定義以及如何應(yīng)用程序包。提醒學(xué)生注意容易出錯的地方:程序包設(shè)計文件應(yīng)保存為同名的VHDL文件并編譯。只有編譯過的程序包才能被其它設(shè)計實體調(diào)用。
通過一個常見的實際問題:設(shè)計一個帶參數(shù)的電子系統(tǒng),使其應(yīng)用范圍更廣,引出類屬映射語句。通過設(shè)計帶參數(shù)的分頻器,說明如何用 VHDL 語言設(shè)計和調(diào)用帶參數(shù)的元件。第八次課
內(nèi)容:Moore 狀態(tài)機的 VHDL 描述、Mealy 狀態(tài)機的 VHDL 描述。
教學(xué)目的:理解什么是Moore 狀態(tài)機和Mealy 狀態(tài)機,掌握Moore 狀態(tài)機和Mealy 狀態(tài)機的 VHDL 描述。
教學(xué)重點、難點:Moore 狀態(tài)機和Mealy 狀態(tài)機的 VHDL 描述。教學(xué)方法:圖解、舉例、類比。教學(xué)過程:
課堂教學(xué)實施過程共分三步。說明組合邏輯和時序邏輯的區(qū)別。用老式按鈕風(fēng)扇類比組合邏輯,空調(diào)遙控器類比時序邏輯,形象的說明了組合電路的輸出只與當(dāng)前輸入有關(guān)。時序邏輯電路的輸出不僅與當(dāng)前輸入有關(guān),還與過去的一系列輸入有關(guān)。由此引出狀態(tài)機:輸出由當(dāng)前狀態(tài)和當(dāng)前輸入決定,是一種廣義的時序電路。狀態(tài)機分Moore與Mealy型。說明這兩種狀態(tài)機的特點:Moore型輸出僅取決于其所處狀態(tài),Mealy型輸出不僅與當(dāng)前狀態(tài)有關(guān),也與當(dāng)前輸入有關(guān),更常見。舉例說明Moore 型狀態(tài)機,并畫出其狀態(tài)轉(zhuǎn)移圖,通過狀態(tài)轉(zhuǎn)移圖加強Moore型輸出僅取決于其所處狀態(tài)的理解。舉例說明Mealy型狀態(tài)機,并畫出其狀態(tài)轉(zhuǎn)移圖,通過狀態(tài)轉(zhuǎn)移圖說明Mealy型輸出不僅與當(dāng)前狀態(tài)有關(guān),也與當(dāng)前輸入有關(guān)的特點。
以Moore狀態(tài)機的狀態(tài)轉(zhuǎn)換圖說明如何用VHDL來描述Moore狀態(tài)機,分為兩個進程:確定狀態(tài)轉(zhuǎn)移的進程 Chang_State,決定輸出值的進程 Output_Process。狀態(tài)轉(zhuǎn)移進程:Moore 狀態(tài)機狀態(tài)轉(zhuǎn)移與輸出 Dout 無關(guān)。當(dāng)S0狀態(tài)輸入0時,仍然還在S0狀態(tài),沒有進行狀態(tài)轉(zhuǎn)移,因此也與這種自環(huán)與狀態(tài)轉(zhuǎn)移無關(guān)。狀態(tài)轉(zhuǎn)移進程由去掉輸出和自環(huán)后的狀態(tài)轉(zhuǎn)移圖決定。根據(jù)化簡后的狀態(tài)圖寫出狀態(tài)轉(zhuǎn)移進程。CASE語句嵌套IF語句,CASE語句表示當(dāng)前狀態(tài),IF語句表示在當(dāng)前狀態(tài)下,根據(jù)當(dāng)前輸入決定狀態(tài)轉(zhuǎn)移。提醒學(xué)生注意:一定要有狀態(tài)機開始工作的條件,否則狀態(tài)機永遠不會工作。輸出進程:在Moore狀態(tài)機中輸出只與當(dāng)前狀態(tài)相關(guān),用一個CASE語句完成。
在上一步的基礎(chǔ)上,對比Moore狀態(tài)機的VHDL實現(xiàn),說明Mealy狀態(tài)機的實現(xiàn),仍分為兩個進程:確定狀態(tài)轉(zhuǎn)移的進程Chang_State,決定輸出值的進程 Output_Process。由于Mealy狀態(tài)機與Moore狀態(tài)機的區(qū)別只在輸出 Dout 同時與當(dāng)前狀態(tài) Si 和當(dāng)前輸入有關(guān)。因此Chang_State進程的實現(xiàn)與Moore機相同。輸出由當(dāng)前狀態(tài)和當(dāng)前輸入共同決定,因此輸出進程 Output_Process也是CASE嵌套IF的格式,與狀態(tài)轉(zhuǎn)移進程類似。第九次課
內(nèi)容:用狀態(tài)機實現(xiàn)交通燈控制器
教學(xué)目的:掌握使用狀態(tài)機實現(xiàn)數(shù)字系統(tǒng)設(shè)計的方法。教學(xué)重點、難點:在 Quartus II 中狀態(tài)機的實現(xiàn)方法。教學(xué)方法:圖解、舉例、演示。教學(xué)過程:
課堂教學(xué)實施過程共分四步。
說明任務(wù)與要求,進行系統(tǒng)分析設(shè)計,在此基礎(chǔ)上畫出系統(tǒng)框圖,確定元件模塊和元件接口與連接?;仡櫾赒uartus II 中實現(xiàn)層次化設(shè)計過程,用VHDL語言實現(xiàn)底層模塊:計數(shù)器和控制器的設(shè)計。
重點介紹如何用狀態(tài)機設(shè)計控制器,確定狀態(tài)和狀態(tài)轉(zhuǎn)移條件,畫出狀態(tài)轉(zhuǎn)移圖,發(fā)現(xiàn)這是個Moore狀態(tài)機?;仡橫oore狀態(tài)機的VHDL實現(xiàn),完成對控制器的設(shè)計。完成計數(shù)器和控制器的設(shè)計后,生成相應(yīng)的計數(shù)器和控制器元件符號。按系統(tǒng)框圖建立頂層電路圖,編譯工程。第十次課
教學(xué)內(nèi)容:Protel2004項目文件的管理和編輯
(一)教學(xué)目標(biāo):
1、學(xué)會在Protel2004軟件中創(chuàng)建相應(yīng)的各種文件
2、學(xué)會在Protel2004文件中創(chuàng)建相應(yīng)的項目
3、學(xué)會在Protel2004文件中創(chuàng)建相應(yīng)的設(shè)計工作區(qū) 教學(xué)重點:
對Protel2004軟件中各種層級,各種種類繁多的文件的識別和創(chuàng)建 教學(xué)方法:演示操作法 課時安排:1課時 教學(xué)過程:
一、Protel2004包含了三級文件管理模式,分別是設(shè)計工作區(qū),項目和文件,級別依次從高到低。而文件有分為好多種類有原理圖文件,PCB封裝文件,庫文件,腳本文件,混合信號仿真文件,又如項目文件中有包含不同項目對應(yīng)得不同文件。我們只是建立幾個常用的文件
二、在Protel2004工作環(huán)境中創(chuàng)建原理圖文件
1、打開文件/創(chuàng)建/原理圖,創(chuàng)建一個原理圖文件,并保存。注意器保存位置和保存的文件名稱,類型擴展名。
2、打開文件/創(chuàng)建/PCB文件,創(chuàng)建一個PCB文件,并保存。注意器保存位置和保存的文件名稱,類型擴展名。
三、在Protel2004工作環(huán)境中創(chuàng)建項目文件
打開文件/創(chuàng)建/項目/PCB項目,創(chuàng)建一個PCB項目文件,并保存。注意器保存位置和保存的文件名稱,類型擴展名。
四、在Protel2004工作環(huán)境中創(chuàng)建項目文件
打開文件/創(chuàng)建/設(shè)計工作區(qū),創(chuàng)建一個設(shè)計工作區(qū)文件,并保存。注意器保存的方法、位置和保存的文件名稱,類型擴展名。
以上在保存文件的,項目級工作區(qū)的時候有幾種不同的方法:
1、在相應(yīng)的文件上點擊右鍵保存,或另存為
2、在菜單欄中文件中找出相應(yīng)命令執(zhí)行保存操作
五、打開工作面板projects.查看他們的結(jié)構(gòu)關(guān)系。教學(xué)反思于總結(jié):
在演示教學(xué)的同時要注意教學(xué)的節(jié)奏,應(yīng)反復(fù)演示,是學(xué)生能看清楚每一個操作步驟。要求學(xué)生對于常用的文件類型的擴展名,圖形符號有所了解。第十一次課
教學(xué)內(nèi)容:原理圖的設(shè)計基礎(chǔ) 教學(xué)目標(biāo):
1、掌握原理圖的一般設(shè)計步驟
2、熟悉Protel2004原理圖設(shè)計工具欄
3、熟練操作原理圖的圖樣的放大于縮小 教學(xué)難點:
掌握原理圖圖樣的放大于縮小的操作方法,牢記器快捷鍵操作。教學(xué)方法:講授法和演示操作法 課時安排:1課時 教學(xué)過程:
一、原理圖的一般設(shè)計步驟(講授法)原理圖的設(shè)計流程如下:
1、啟動Protel2004原理圖編輯器
新建一個原理圖文件或打開一個原理圖文件,都可以啟動原理圖編輯器,進入原理圖設(shè)計工作。
這里我們打開Protel2004自帶示例中的一個原理圖文件。
2、設(shè)置原理圖圖樣的大小及版面
3、在圖樣上放置元器件
4、對所放置元器件進行布局、布線
5、對布局、布線后的元器件進行調(diào)整
二、Protel2004 原理圖設(shè)計工具欄
這里我們打開Protel2004自帶示例中的一個原理圖文件。
Protel2004為設(shè)計者提供了方便快捷的原理圖繪制工具,分類放置在不同的工具欄中。這些工具欄,可以通過執(zhí)行選單命令“視圖/工具欄”的下拉菜單進行打開和關(guān)閉。
三、圖樣的放大于縮?。?/p>
1、在視圖菜單中有一系列的圖樣于縮小命令,分別執(zhí)行這些命令,觀察圖樣的變化,并記憶理解這些命令的含義和作用。熟練掌握這些命令的快捷鍵執(zhí)行方式。
2、利用鍵盤實現(xiàn)圖樣的放大于縮小。教學(xué)反思于總結(jié):
關(guān)于原理圖設(shè)計的一般步驟,學(xué)生只要有個大致的了解就可以了,這個過程會在以后的操作中逐漸的熟練起來。兒本節(jié)課中第三部分是重點難點。需要學(xué)生對于各個命令逐條的反復(fù)的操作,觀察器變化,這個操作過程是枯燥的,應(yīng)該盡可能的提高這節(jié)課的趣味性。讓學(xué)生更積極的投入進去。第十二講
教學(xué)內(nèi)容:連接線路
(一)教學(xué)目標(biāo):
1、能夠熟練的連接導(dǎo)線
2、學(xué)會放置線路節(jié)點
3、掌握設(shè)置網(wǎng)絡(luò)標(biāo)號 教學(xué)重點:
1、熟練的在電路中連接導(dǎo)線
2、理解網(wǎng)絡(luò)標(biāo)號的含義并能夠正確而且熟練的放置網(wǎng)絡(luò)標(biāo)號 教學(xué)方法:演示教學(xué)法,任務(wù)完成法 課時安排:2課時 教學(xué)過程:
一、連接導(dǎo)線
當(dāng)所有電路元器件、電源和其他對象放置完畢后,就可以進行原理圖中個對象的連線。連線的主要目的是按照電路設(shè)計的要求建立網(wǎng)絡(luò)的實際連通性。打開任一原理圖電路,對所教授內(nèi)容進行演示。
連線的方法:執(zhí)行“放置/導(dǎo)線命令”命令,或左鍵單擊wring工具欄中的連接導(dǎo)線命令。此時光標(biāo)變?yōu)槭譅?,進入連線狀態(tài)。當(dāng)光標(biāo)到達電氣引腳是,會自動出現(xiàn)一個紅色的“×”,單擊鼠標(biāo)左鍵,確定導(dǎo)線的起點,拖動鼠標(biāo)到終點處,單擊鼠標(biāo)左鍵,一根導(dǎo)線結(jié)束。再次單擊開始畫第二條導(dǎo)線,也可單擊鼠標(biāo)右鍵退出連線狀態(tài)。
Protel2004為設(shè)計者提供了四種導(dǎo)線模式:90度走線、45度走線、任意角度走線和自動布線。在畫導(dǎo)線過程中,按下shift+space鍵,可以在各種走線模式間循環(huán)切換。
二、放置線路結(jié)點
所謂線路結(jié)點,是指當(dāng)兩條導(dǎo)線交叉時相連的狀況。如果沒有結(jié)點存在,則認為該兩條導(dǎo)線在電氣上是不連通的。反之,則連通。
Protel2004是設(shè)計者在繪制導(dǎo)線時,將在T字連線處自動產(chǎn)生結(jié)點,而在十字處不會自動產(chǎn)生結(jié)點,若設(shè)計者需要結(jié)點則必須由手工放置。
三、設(shè)置網(wǎng)絡(luò)標(biāo)號
網(wǎng)絡(luò)標(biāo)號是實際電氣連接的導(dǎo)線的序號。具有相同的網(wǎng)絡(luò)標(biāo)號的導(dǎo)線,不管圖上是否連在一起,都被看做是同一條導(dǎo)線。它多用于多層次電路或多重式電路的各個模塊電路之間的連接,這個功能在繪制印制電路板時十分重要。
放置網(wǎng)絡(luò)標(biāo)簽的方法:執(zhí)行“放置/網(wǎng)絡(luò)標(biāo)簽”命令,光標(biāo)變成十字狀當(dāng)網(wǎng)絡(luò)標(biāo)簽于導(dǎo)線或引腳連接狀態(tài)時,會出現(xiàn)紅色的“×”標(biāo)志,單擊鼠標(biāo)左鍵,完成放置。同時對網(wǎng)絡(luò)標(biāo)簽進行設(shè)置。
繪制下列電路圖,完成對所學(xué)內(nèi)容的練習(xí)
教學(xué)反思與總結(jié):
本次課中,導(dǎo)線和網(wǎng)絡(luò)標(biāo)簽的使用在繪制原理圖的過程中是經(jīng)常使用的,尤其是連接導(dǎo)線,需要反復(fù)的練習(xí)才能夠熟練的掌握。有的學(xué)生在連接導(dǎo)線是的終點和下一段導(dǎo)線的起點操作不正確,將單擊變?yōu)榱穗p擊,會造成元器件短路(如下圖示例)。還有就是網(wǎng)絡(luò)標(biāo)簽的放置位置不正確,沒有注意到紅色小叉的標(biāo)記,隨讓標(biāo)簽也是放置在了導(dǎo)線或者元件的附近,但是并未形成成功的連接。第十三講
教學(xué)內(nèi)容:原理圖的繪制 教學(xué)目標(biāo):
1、通過實際的大量的練習(xí)熟悉并掌握原理圖文件的設(shè)計步驟
2、通過實際的大量的練習(xí)教學(xué)重點:
熟悉并掌握原理圖的繪畫技巧 教學(xué)方法:任務(wù)式教學(xué)法 課時安排:1課時 教學(xué)過程:
繪制下面的原理圖,進行練習(xí):
教學(xué)反思與總結(jié):
注意I/O端口、總線、網(wǎng)絡(luò)標(biāo)簽的繪制細節(jié)。