電路計算機(jī)輔助設(shè)計(二)_第1頁
電路計算機(jī)輔助設(shè)計(二)_第2頁
電路計算機(jī)輔助設(shè)計(二)_第3頁
電路計算機(jī)輔助設(shè)計(二)_第4頁
電路計算機(jī)輔助設(shè)計(二)_第5頁
已閱讀5頁,還剩100頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

電路計算機(jī)輔助設(shè)計

吉林大學(xué)通信工程學(xué)院

高燕梅

教學(xué)內(nèi)容與要求

第1章EDA技術(shù)簡介

第2章VerilogHDL語言編程(10學(xué)時)

第3章VHDL語言編程(4學(xué)時)

第4章MATLAB程序入門(12學(xué)時)

第5章MATLAB在電路中的應(yīng)用(4學(xué)時)

每章有實驗室上機(jī)實驗

dee.jlu.edu.cn/eeec實驗教學(xué)

成績評定標(biāo)準(zhǔn)

■五級分制

■作業(yè)加上機(jī)考核:

1、作業(yè)必做,上機(jī)交作業(yè)時隨機(jī)考兩個問題。

2、點(diǎn)名沒有缺勤,加分。

3、每次課最后有互動搶答,3次答對,只需交作業(yè),

可免試。

第1章EDA技術(shù)簡介

1.1EDA技術(shù)的主要內(nèi)容

1.2EDA軟件系統(tǒng)的構(gòu)成

1.3EDA的工程設(shè)計流程

1.4數(shù)字系統(tǒng)的設(shè)計方法

第2章VerilogHDL語言編程

2.1VerilogHDL設(shè)計模塊的基本結(jié)構(gòu)

2.2VerilogHDL詞法構(gòu)成

2.3VerilogHDL的語句

2.4VerilogHDL模型

2.5VerilogHDL設(shè)計電路流程

2.6用VerilogHDL描述邏輯電路的實例

第3章VHDL語言編程基礎(chǔ)

3.1概述

3.2VHDL程序基本結(jié)構(gòu)

3.3VHDL語言要素

3.4VHDL順序語句

3.5VHDL并行語句

3.6子程序(SUBPROGRAM)

3.7庫、程序包及其他

3.8VHDL描述風(fēng)格

3.9基本邏輯電路設(shè)計

3.10狀態(tài)機(jī)的VHDL設(shè)計

第4章MATLAB程序入門

4.1基本語法

4.1.1變量及其賦值

4.4.2矩陣的初等運(yùn)算

4.1.3元素群運(yùn)算

4.1.4邏輯判斷及流程控制

4-2基本繪圖方法

4.2.1M文件及程序調(diào)試

4.2.2MATLAB的開發(fā)環(huán)境和工具

第5章MATLAB在電路中的應(yīng)用

5.1電阻電路和動態(tài)電路

5.2正弦穩(wěn)態(tài)電路和頻率響應(yīng)

5.3二端口電路

5.4濾波器

第1章EDA技術(shù)簡介

1.1EDA技術(shù)的主要內(nèi)容

■EDA是電子設(shè)計自動化(ElectronicDesignAutomation)的

縮寫。

■EDA技術(shù)就是以計算機(jī)為工具,設(shè)計者在EDA軟件平臺上,用

硬件描述語言HDL完成設(shè)計文件,然后由計算機(jī)自動地完成邏

輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至

對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。

■EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可靠性,減

輕了設(shè)計者的勞動強(qiáng)度。

■在電子技術(shù)設(shè)計領(lǐng)域,可編程邏輯器件(如CPLD、FPGA)的

應(yīng)用,已得到廣泛的普及,這些器件為數(shù)字系統(tǒng)的設(shè)計帶來了

極大的靈活性。

■CPLD、FPGA器件可以通過軟件編程而對硬件結(jié)構(gòu)和工作方式

進(jìn)行重構(gòu),從而使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快

捷。促進(jìn)了EDA技術(shù)的迅速發(fā)展。

EDA技術(shù)涉及面廣,內(nèi)容豐富,主要應(yīng)掌握如下四個方面的

內(nèi)容:

①大規(guī)??删幊踢壿嬈骷?,大規(guī)??删幊踢壿嬈骷抢?/p>

EDA技術(shù)進(jìn)行電子系統(tǒng)設(shè)計的載體。FPGA和CPLD

②硬件描述語言,硬件描述語言是利用EDA技術(shù)進(jìn)行電子系

統(tǒng)設(shè)計的主要表達(dá)手段。VHDL、Verilog>ABEL

③軟件開發(fā)工具,軟件開發(fā)工具是利用EDA技術(shù)進(jìn)行電子系

統(tǒng)設(shè)計的智能化的自動化設(shè)計工具。

Altera的MAX+plusII、Lattice的ispEXPERT、Xilinx的

FoundationSerieso

④實驗開發(fā)系統(tǒng),實驗開發(fā)系統(tǒng)則是利用EDA技術(shù)進(jìn)行電子

系統(tǒng)設(shè)計的下載工具及硬件驗證工具。

1大規(guī)模可編程邏輯器件

■可編程邏輯器件(簡稱PLD)是一種由用戶編程以實現(xiàn)

某種邏輯功能的新型邏輯器件。

■FPGA是現(xiàn)場可編程門陣列的簡稱,

■CPLD是復(fù)雜可編程邏輯器件的簡稱。

■高集成度、高速度和高可靠性是FPGA/CPLD最明顯

的特點(diǎn),其時鐘延時可小至ns級,結(jié)合其并行工作方

式,在超高速應(yīng)用領(lǐng)域和實時測控方面有著非常廣闊

的應(yīng)用前景。

■FPGA/CPLD的高可靠性還表現(xiàn)在幾乎可將整個系統(tǒng)

下載于同一芯片中,實現(xiàn)所謂片上系統(tǒng),從而大大縮

小了體積,易于管理和屏蔽。

2硬件描述語言(HDL)

常用的硬件描述語言有VHDL、Verilog、ABELo

■VHDL:作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,在

電子工程領(lǐng)域,已成為事實上的通用硬件描述語言。

■Verilog:支持的EDA工具較多,適用于RTL級

(寄存器轉(zhuǎn)換級)和門電路級的描述,其綜合過程

較VHDL稍簡單,但其在高級描述方面不如VHDL。

■有專家認(rèn)為,在新世紀(jì)中,VHDL與Verilog語言將

承擔(dān)幾乎全部的數(shù)字系統(tǒng)設(shè)計任務(wù)。

3軟件開發(fā)工具

目前比較流行的、主流廠家的EDA的軟件工具有:

■Altera的MAX+plusII、升級版QuartusH;

■Lattice的ispEXPERT;

■Xilinx的FoundationSeries。

■MAX+plusII是Altera公司開發(fā)的EDA工具軟件。

Altera公司是世界上最大的可編程邏輯器件供應(yīng)商之一。

MAX+plusII軟件是一個集成化的可編程邏輯器件開發(fā)

環(huán)境,設(shè)計者能在這個環(huán)境下進(jìn)行邏輯設(shè)計,完成設(shè)計

文件的輸入編輯、編譯、仿真、綜合、布局布線和編程

下載等設(shè)計工作。軟件界面友好、方便易學(xué)、功能全面,

是非常流行的大眾化EDA平臺。

■MAX+plusII:支持原理圖、VHDL和Verilog語

言文本文件,以及以波形與EDIF等格式的文件作

為設(shè)計輸入,并支持這些文件的任意混合設(shè)計。

■它具有門級仿真器,可以進(jìn)行功能仿真和時序仿

真,能夠產(chǎn)生精確的仿真結(jié)果。

■在適配之后,MAX+plusII生成供時序仿真用的

EDIF、VHDL和Verilog這三種不同格式的網(wǎng)表文

件。

■它界面友好,使用便捷,被譽(yù)為業(yè)界最易學(xué)易用

的EDA的軟件,并支持主流的第三方EDA工具,

支持所有Altera公司的FPGA/CPLD大規(guī)模邏輯器

件。

4實驗開發(fā)系統(tǒng)

提供芯片下載電路及EDA實驗/開發(fā)的外圍資

源(類似于用于單片機(jī)開發(fā)的仿真器),供硬件驗

證用。一般包括:

①實驗或開發(fā)所需的各類基本信號發(fā)生模塊,

包括時鐘、脈沖、高低電平等;

②FPGA/CPLD輸出信息顯示模塊,包括數(shù)碼顯

示、發(fā)光管顯示、聲響指示等;

③監(jiān)控程序模塊,提供“電路重構(gòu)軟配置”;

④目標(biāo)芯片適配座以及上面的FPGA/CPLD目標(biāo)

芯片和編程下載電路。

自己閱讀

1.2EDA軟件系統(tǒng)的構(gòu)成

■EDA技術(shù)研究的對象是電子設(shè)計的全過程,有系統(tǒng)級、

電路級和物理級3個層次的設(shè)計。

■涉及的電子系統(tǒng)從低頻、高頻到微波,從線性到非線性,

從模擬到數(shù)字,從通用集成電路到專用集成電路構(gòu)造的

電子系統(tǒng),因此EDA技術(shù)研究的范疇相當(dāng)廣泛。

■EDA軟件系統(tǒng)應(yīng)當(dāng)包含以下子模塊:

■設(shè)計輸入子模塊、

■設(shè)計數(shù)據(jù)庫子模塊、

■分析驗證子模塊、

■綜合仿真子模塊、

■布局布線子模塊等。

自己閱讀

(1)設(shè)計輸入子模塊;用戶編輯輸入模塊的設(shè)計描

述,并進(jìn)行語義正確性、語法規(guī)則的檢查,檢查通

過后,將用戶的設(shè)計描述數(shù)據(jù)轉(zhuǎn)換為EDA軟件系統(tǒng)

的內(nèi)部數(shù)據(jù)格式,存入設(shè)計數(shù)據(jù)庫被其他子模塊調(diào)

用。

■設(shè)計輸入子模塊不僅能接受圖形描述輸入、硬件描

述語言(HDL)描述輸入,還能接受圖文混合描述輸

入。

■該子模塊一般包含針對不同描述方式的編輯器,如

圖形編輯器、文本編輯器等,同時包含對應(yīng)的分析

珀-O

自己閱讀

(2)設(shè)計數(shù)據(jù)庫子模塊:該模塊存放系統(tǒng)提供的庫單

元以及用戶的設(shè)計描述和中間設(shè)計結(jié)果。

(3)分析驗證子模塊:該模塊包括各個層次的模擬驗

證、設(shè)計規(guī)則的檢查、故障診斷等。

(4)綜合仿真子模塊:該模塊包括各個層次的綜合工

具,理想的情況是:從高層次到低層次的綜合仿真

全部由EDA工具自動實現(xiàn)。

(5)布局布線子模塊:該模塊實現(xiàn)由邏輯設(shè)計到物理

實現(xiàn)的映射,因此與物理實現(xiàn)的方式密切相關(guān)。例

如,最終的物理實現(xiàn)可以是門陣列、可編程邏輯器

件等,由于對應(yīng)的器件不同,因此各自的布局布線

工具會有很大的差異。

自己閱讀

1.3EDA的工程設(shè)計流程

1源程序的編輯和編譯

利用EDA技術(shù)進(jìn)行一項工程設(shè)計,首先需利用EDA工

具的文本編輯器或圖形編輯器將它用文本方式或圖形方式

表達(dá)出來,進(jìn)行排錯編譯,變成Verilog、VHDL文件格式,

為進(jìn)一步的邏輯綜合作準(zhǔn)備。

常用的源程序輸入方式有三種。

(1)原理圖輸入方式:利用EDA工具提供的圖形編輯器以

原理圖的方式進(jìn)行輸入。原理圖輸入方式比較容易掌握,

直觀且方便,所畫的電路原理圖與傳統(tǒng)的器件連接方式完

全一樣,很容易被人接受,而且編輯器中有許多現(xiàn)成的單

元器件可以利用,自己也可以根據(jù)需要設(shè)計元件。

文本編輯器圖形編輯器

0UHDL源程序

生成VHDL源程序

VHDL綜合器

0網(wǎng)表文件

(EDIF,XNF,VHDL...)

行為仿真|邏輯綜合、優(yōu)化

VHDL

功能仿真

仿真器0

時序仿真FPGA/CPLD布線/適配器

熔絲圖、SRAM文件、

VHDUVetilog網(wǎng)表

自動優(yōu)化、布局、布線/適配◎

測試電路編程器K載電纜功能仿真

5**-**?門級

硬件測試0編程、下載時序仿真仿真器

(2)狀態(tài)圖輸入方式:以圖形的方式表示狀態(tài)圖進(jìn)

行輸入。當(dāng)填好時鐘信號名、狀態(tài)轉(zhuǎn)換條件、狀

態(tài)機(jī)類型等要素后,就可以自動生成VHDL程序。

這種設(shè)計方式簡化了狀態(tài)機(jī)的設(shè)計,比較流行。

(3)Verilog>VHDL軟件程序的文本方式:最一般

化、最具普遍性的輸入方法,任何支持VHDL的

EDA工具都支持文本方式的編輯和編譯。

2邏輯綜合和優(yōu)化

■將VHDL的軟件設(shè)計與硬件的可實現(xiàn)性掛鉤,需要

利用EDA軟件系統(tǒng)的綜合器進(jìn)行邏輯綜合。

■綜合器的功能就是將設(shè)計者在EDA平臺上完成的

針對某個系統(tǒng)項目的HDL、原理圖或狀態(tài)圖形的描

述,針對給定硬件結(jié)構(gòu)組件進(jìn)行編譯、優(yōu)化、轉(zhuǎn)換

和綜合,最終獲得門級電路甚至更底層的電路描述

文件。

■綜合器工作前,必須給定最后實現(xiàn)的硬件結(jié)構(gòu)參數(shù),

它的功能就是將軟件描述與給定硬件結(jié)構(gòu)用某種網(wǎng)

表文件的方式聯(lián)系起來。

■綜合器是軟件描述與硬件實現(xiàn)的一座橋梁。綜合過

程就是將電路的高級語言描述轉(zhuǎn)換成低級的,可與

FPGA/CPLD或構(gòu)成ASIC的門陣列基本結(jié)構(gòu)相映射

的網(wǎng)表文件。

自己閱讀

1.4數(shù)字系統(tǒng)的設(shè)計方法

■數(shù)字系統(tǒng)設(shè)計有多種方法,如模塊設(shè)計法、自頂向

下設(shè)計法和自底向上設(shè)計法等。

■數(shù)字系統(tǒng)的設(shè)計一般采用自頂向下、由粗到細(xì)、逐

步求精的方法。

■自頂向下是指將數(shù)字系統(tǒng)的整體逐步分解為各個子系

統(tǒng)和模塊,若子系統(tǒng)規(guī)模較大,則還需將子系統(tǒng)進(jìn)一

步分解為更小的子系統(tǒng)和模塊,層層分解,直至整個

系統(tǒng)中各子系統(tǒng)關(guān)系合理,并便于邏輯電路級的設(shè)計

和實現(xiàn)為止。

■采用該方法設(shè)計時,高層設(shè)計進(jìn)行功能和接口描述,

說明模塊的功能和接口,模塊功能的更詳細(xì)的描述在

下一設(shè)計層次說明,最底層的設(shè)計才涉及具體的寄存

器和邏輯門電路等實現(xiàn)方式的描述。

采用自頂向下的設(shè)計方法有如下優(yōu)點(diǎn):

(1)自頂向下設(shè)計方法是一種模塊化設(shè)計方法。對設(shè)計的描述從

上到下逐步由粗略到詳細(xì),符合常規(guī)的邏輯思維習(xí)慣。由于高層

設(shè)計同器件無關(guān),設(shè)計易于在各種集成電路工藝或可編程器件之

間移植。

(2)適合多個設(shè)計者同時進(jìn)行設(shè)計。隨著技術(shù)的不斷進(jìn)步,許多

設(shè)計由一個設(shè)計者已無法完成,必須經(jīng)過多個設(shè)計者分工協(xié)作完

成一項設(shè)計的情況越來越多。在這種情況下,應(yīng)用自頂向下的設(shè)

計方法便于由多個設(shè)計者同時進(jìn)行設(shè)計,對設(shè)計任務(wù)進(jìn)行合理分

配,用系統(tǒng)工程的方法對設(shè)計進(jìn)行管理。

針對具體的設(shè)計,實施自頂向下的設(shè)計方法的形式會有所不同,

但均需遵循以下兩條原則:逐層分解功能,分層次進(jìn)行設(shè)計。同

時,應(yīng)在各個設(shè)計層次上,考慮相應(yīng)的仿真驗證問題。

自己閱讀

第2章VerilogHDL語言

2.1VerilogHDL設(shè)計模塊的基本結(jié)構(gòu)

■VerilogHDL程序設(shè)計由模塊(module)構(gòu)成的,設(shè)計模塊的基本結(jié)構(gòu)如圖,

一個完整的VerilogHDL設(shè)計模塊包括端口定義、I/O聲明、信號類型聲明和

功能描述4個部分。

BCD_adders

一、模塊端口的定義—AAC[33.-.-03SSUUMMCC33....0O3J—

COUT

■模塊端口定義用來聲明電路設(shè)計模塊-BC3..0O3JCOUT-

的輸入/輸出端口,端口定義格式如下:—[C^IN___________________,

module模塊名(端口1,端口2,端口3,…)注...

■在端口定義的括號中,是設(shè)計電路模塊與外界聯(lián)系的全部輸入/輸出端口信號

或引腳,是設(shè)計實體對外的一個通信界面,是外界可以看到的部分(不包含

電源和接地端),多個端口之間用”分隔。例如1位全加器adder模塊的

端口定義為

■moduleadder(sum,cout,ina,inb,cin);模塊名adder

二、模塊內(nèi)容

模塊內(nèi)容包括I/O聲明、信號類型聲明和功能描述。

(1)模塊的I/O聲明

模塊的I/O聲明用來聲明模塊端口定義中各端口數(shù)據(jù)流動方向,

括輸入(input)、輸出(output)和雙向(inout)。I/O聲明格式如一

input端口1,端口2,端口3,…;〃聲明輸入端口

output端口1,端口2,端口3,…;//聲明輸出端口

■例如,1位全加器的I/O聲明為

inputina,inb,cin;

outputsum,cout;A|c/co|-co

B

(2)信號類型聲明

■信號類型聲明是聲明設(shè)計電路的功能描述中所用的信號的數(shù)

據(jù)類型和函數(shù)。信號的數(shù)據(jù)類型主要有連線(wire)、寄存

器(reg)、整型(integer)、實型(real)、和時間

(time)等。

(3)功能描述

■功能描述是VerilogHDL程序設(shè)計中最主要的部分,用

來描述設(shè)計模塊的內(nèi)部結(jié)構(gòu)和模塊端口間的邏輯關(guān)系,在電

路上相當(dāng)于器件的內(nèi)部電路結(jié)構(gòu)。功能描述可以用assign語

句、元件例化(instantiate)方式、always塊語句、initial

塊語句等方法來實現(xiàn),通常將設(shè)計模塊描述的方法稱為建模。

①用assign語句建模

■用assign語句建模的方法很簡單,只需要在“assign”后面再

加一個表達(dá)式。Assign語句一般適合對組合邏輯進(jìn)行賦值,稱

為連續(xù)賦值方式。ABCisCo

■例1一位全加器的設(shè)計00000

A-nt00110

01010

B-01101

LC0|—8

CI—10010

10101

■1位全加器的邏輯符號:11001

sum是全加器的和輸出端,11111

cout是進(jìn)位輸出端,ina和inb是兩個加數(shù)輸入端,

cin是低位進(jìn)位輸入端。

■全加器的VerilogHDL源程序如下:

moduleadded(sum,cout,ina,inb,cin);

inputina,inb,cin;

outputsum,cout;

assign{cout,sum}=ina+inb+cin;

co

endmodule

“assign{cout,sum}=ina+inb+cin;''語7句實現(xiàn)1

位全加器隨進(jìn)位輸出cout寫和輸出sum的建模。

■在語句表達(dá)式中,用拼接運(yùn)算符“{}”將cout、sum這

兩個1位操作數(shù)拼接為一個2位操作數(shù)。

②用元件例化(instantiate)方式建模

■元件例化方式建模是利用VerilogHDL提供的元件庫實現(xiàn)的。

例如,用與門例化元件定義一個三輸入端與門可以寫為

■andmyand3(y,a,b,c);and是VerilogHDL元件庫中與門元件

名,myand3是例化出的三輸入端與門名,y是寫門輸由端,a、

b、c是輸入端。

③用always塊語句建模

■always塊語句可以產(chǎn)生各種邏輯,常用于時序邏輯的功能

描述。一個程序設(shè)計模塊中,可以包含一個或多個always語句。

程序運(yùn)行中,在某種條件滿足時,就重復(fù)執(zhí)行一遍always結(jié)構(gòu)

中的語句。

例28位二進(jìn)制加法計數(shù)器的設(shè)計_也

■8位二進(jìn)制加法計數(shù)器的邏輯符號如圖。是諼二COUT

進(jìn)OUTO

■OUT是8位二進(jìn)制計數(shù)器的輸出端(8位CLR一

向量);苗二制OUT1

OUT2

■COUT是進(jìn)位輸出端(1位);D2-OUT3

法OUT4

■DATA是并行數(shù)據(jù)輸入端(8位向量);北二計OUT5

OUT6

■LOAD是計數(shù)器的預(yù)置控制輸入端,萬一數(shù)OUT7

t,D6—

■當(dāng)LOAD=1時,OUT=DATA;D7_

■CLK是時鐘控制輸入端,上升沿為有效CIN-

邊沿;

■CLR是同步復(fù)位輸入端,當(dāng)CLK的上升

沿到來時且CLR=1,則計數(shù)器被復(fù)位,

OUT=OOOOOOOOo

(邏輯符號圖是由計算機(jī)對計數(shù)器電路的VerilogHDL源代碼

編譯后產(chǎn)生的元件符號,圖中的輸入/輸出標(biāo)識符自動被改為大

寫,而源程序中的標(biāo)識符都是小寫。)

8位二進(jìn)制加法計數(shù)器的VerilogHDL源程序如下:

modulecnt8(out,cout,dataJoad,cin,elk,clr)

input[7:0]data;

LOAD二

inputload,cin,elk,clrCLK—COUT

output[7:0]out;CLR—進(jìn)OUTU

制OUT1

outputcout;D0—

D1—

溫馨提示

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

最新文檔

評論

0/150

提交評論