總結(jié)是指對某一階段的工作,、學習或思想中的經(jīng)驗或情況加以總結(jié)和概括的書面材料,,它可以明確下一步的工作方向,少走彎路,,少犯錯誤,,提高工作效益,,因此,,讓我們寫一份總結(jié)吧,。什么樣的總結(jié)才是有效的呢,?以下我給大家整理了一些優(yōu)質(zhì)的總結(jié)范文,,希望對大家能夠有所幫助。
eda技術(shù)知識總結(jié)篇一
綜述部分
的中文全稱為電子設(shè)計自動化,,英文全名為electronic design automation,。平臺常用的兩種輸入電路的方法是:電路原理圖輸入法、hdl輸入法,。平臺工作流程:電路輸入,、綜合優(yōu)化、功能仿真,、布局布線,、門級仿真。
數(shù)字電路部分
中常用的仿真語言為verilog和vhdl,。
其英文全名為vhsic hardware description language,,而vhsic則是very high speed intergeraterd circuit的縮寫詞,意為甚高速集成電路,,故vhdl其準確的中文譯名為甚高速集成電路的硬件描述語言,。
g hdl其英文全名為verilog hardware decription language,hdl中文譯名為硬件描述語言,。
g和vhdl的比較
共同點:能形式化地抽象表示電路的行為和結(jié)構(gòu),;支持邏輯設(shè)計中層次與范圍的描述,;可借用高級語言的精巧結(jié)構(gòu)來簡化電路行為的描述;具有電路仿真與驗證機制以保證設(shè)計的正確性,;支持電路描述由高層到低層的綜合轉(zhuǎn)換,;硬件描述與實現(xiàn)工藝無關(guān);便于文檔管理,;易于理解和設(shè)計重用。
不同點:verilog在系統(tǒng)級抽象方面略差,,vhdl在門級開關(guān)電路方面略差,。
5.軟核、固核和硬核
軟核:功能經(jīng)過驗證的,、可綜合的,、實現(xiàn)后電路結(jié)構(gòu)總門數(shù)在5000門以上的verilog模型。
固核:在某一種現(xiàn)場可編程門列器件上實現(xiàn)的經(jīng)驗證是正確的,,且總門數(shù)在5000門以上的電路結(jié)構(gòu)編碼文件,。
在某一種專用集成電路工藝的器件上實現(xiàn)的,經(jīng)驗證是正確的,,且總門數(shù)在5000門以上的電路結(jié)構(gòu)版圖掩膜,。6.自頂向下(top down)設(shè)計
7.自底向上(down top)設(shè)計
8.名詞解釋:
asic:application specific integrated circuit,專用集成電路,。
fpga:field programmable gate array,,現(xiàn)場可編程門陣列。pld:programmable logic device,,可編程邏輯器件,。
verilog編程題: 數(shù)據(jù)比較器(2位)//數(shù)據(jù)比較器
module compare(equal, a, b);input a,b;output equal;reg equal;always @(a or b)if(a == b)equal = 1;else equal = 0;endmodule
//數(shù)據(jù)比較器測試代碼 `timescale 1ns/1ns `include “./1-1.v” module t;reg a,b;wire equal;initial begin a=0;b=0;#100 a=0;b=1;#100 a=1;b=1;#100 a=1;b=0;#100 a=0;b=0;#100 $stop;end
compare m(.equal(equal),.a(a),.b(b));endmodule
數(shù)據(jù)比較器(8位)
module compare8(equal, a, b);input [7:0]a, b;output equal;reg equal;always @(a or b)if(a > b)begin equal = 1;end else begin equal = 0;end endmodule 分頻器
module half_clk(reset, clk_in, clk_out);input clk_in, reset;output clk_out;reg clk_out;
always @(posedge clk_in)begin if(!reset)clk_out = 0;else clk_out = ~clk_out;end endmodule
10m時鐘分頻為500k module fspanision(reset, mb, kb);input mb, reset;output kb;reg kb;reg [7:0] j;
always @(posedge mb)if(!reset)begin kb <= 0;j <= 0;end else begin if(j == 19)begin j <= 0;kb <= ~kb;end else j <= j+1;end endmodule
譯碼電路
`define plus 3'd0 `define minus 3'd1 `define band 3'd2 `define bor 3'd3 `define unegate 3'd4
module alu(out, opcode, a, b);output[7:0] out;reg[7:0] out;input[2:0] opcode;input[7:0] a,b;
always @(opcode or a or b)begin case(opcode)`plus: out = a + b;`minus: out = a-b;`band: out = a & b;`bor: out = a | b;`unegate: out = ~a;default: out = 8'hx;endcase end endmodule
八路數(shù)據(jù)選擇器
module selecting8(addr, in1, in2, in3, in4, in5, in6, in7, in8, dataout, reset);input [2:0] addr;input [3:0] in1,in2,in3,in4,in5,in6,in7,in8;input reset;output [3:0] dataout;reg [3:0] dataout;
always @(addr or in1 or in2 or in3 or in4 or in5 or in6 or in7 or in8 or reset)begin if(!reset)case(addr)3'b000: dataout = in1;3'b001: dataout = in2;3'b010: dataout = in3;3'b011: dataout = in4;3'b100: dataout = in5;3'b101: dataout = in6;3'b110: dataout = in7;3'b111: dataout = in8;endcase else dataout = 0;end endmodule
邏輯運算電路
module tryfunct(clk, n, result, reset);output[31:0] result;input[3:0] n;input reset, clk;reg[31:0] result;
always @(posedge clk)begin if(!reset)result <=0;else begin result <= n*factorial(n)/((n*2)+1);end end
function [31:0] factorial;input [3:0] operand;reg [3:0] index;begin factorial = operand ? 1:0;for(index = 2;index <= operand;index = index + 1)factorial = index *factorial;end endfunction endmodule
module tryfunct(clk, n, result, reset);output[31:0] result;input[3:0] n;input reset, clk;reg[31:0] result;
always @(posedge clk)begin if(!reset)result <=0;else begin result <= n*factorial(n)/((n*2)+1);end end
function [31:0] factorial;input [3:0] operand;reg [3:0] index;begin factorial = operand ? 1:0;for(index = 2;index <= operand;index = index + 1)factorial = index *factorial;end endfunction endmodule
高速排序組合邏輯
module sort4(ra, rb, rc, rd, a, b, c, d);output[3:0] ra, rb, rc, rd;input[3:0] a, b, c, d;reg[3:0] ra, rb, rc, rd;reg[3:0] va, vb, vc, vd;
always @(a or b or c or d)begin {va, vb, vc, vd} = {a, b, c, d};sort2(va, vc);sort2(vb, vd);sort2(va, vb);sort2(vc, vd);sort2(vb, vc);{ra, rb, rc, rd} = {va, vb, vc, vd};end
task sort2;input[3:0]x, y;reg[3:0] tmp;if(x > y)begin tmp = x;x = y;y = tmp;end endtask endmodule
檢測5位二進制序列10010 module seqdet(x, z, clk, rst, state);input x, clk, rst;output z;output[2:0] state;reg[2:0] state;wire z;
parameter idle = 'd0, a = 'd1, b = 'd2, c = 'd3, d = 'd4, e = 'd5, f = 'd6, g = 'd7;
assign z =(state == e && x == 0)? 1:0;
always @(posedge clk)if(!rst)begin state <= idle;end else case(state)idle: if(x == 1)begin state <= a;end a: if(x == 0)begin state <= b;end b: if(x == 0)begin state <= c;end else begin state <= f;end c: if(x == 1)begin state <= d;end else begin state <= g;end d: if(x == 0)begin state <= e;end else begin state <= a;end e: if(x == 0)begin state <= c;end else begin state = a;end f: if(x == 1)begin state <= a;end else begin state <= b;end g: if(x == 1)begin state <= f;end default: state = idle;endcase endmodule
模擬電路部分
1.目前,集成電路最常用的材料是單晶硅,。
2.集成電路的生產(chǎn)由設(shè)計,、制造、封裝三部分組成,。
3.集成電路中基片主要制作工藝為:光刻,、擴散、注入,、刻蝕,、鍵合。
4.集成電路中基片的制造步驟為:光刻,、擴散,、注入、刻蝕,。
5.衡量集成電路產(chǎn)業(yè)水平的兩個主要參數(shù)為:硅晶圓片直徑和光刻精度(特征尺寸),。這兩個參數(shù)在業(yè)界達到的水平為:硅晶圓片直徑12英寸(300mm),,光刻精度0.13um。主流水平為:硅晶圓片直徑200mm,,光刻精度0.18um,。
6.模擬電路中常用的仿真算法是spice,英文全名為simulation program with integrated circuit emphasis,。
7.世界上設(shè)計eda軟件實力最強的兩個公司為cadence和synopsys,。其中,cadence的優(yōu)勢為電路布局布線,,synopsys的優(yōu)勢為邏輯綜合仿真,。
nch是加拿大iit公司退出的電子線路仿真軟件。它可以對模擬,、數(shù)字和模擬/數(shù)字混合電路進行仿真,,克服了傳統(tǒng)電子產(chǎn)品的設(shè)計受實驗室客觀條件限制的局限性,用虛擬的元件搭接各種電路,,用虛擬的儀表進行各種參數(shù)和性能指標的測試,。特點如下:(1)系統(tǒng)集成度高,界面直觀,,操作方便,。(2)具備模擬、數(shù)字及模擬/數(shù)字混合電路仿真,。(3)提供較為豐富的元器件庫,。(4)電路分析手段完備。(5)輸出方式靈活,。(6)兼容性好,。語言舉例: example
vcc 8 0 12
**** 文件名 任意名都可以 但必須要有****
**** 電源正極接于節(jié)點8 負極接于0 電壓為12v **** vee 0 9 12
**** 電源正極接于節(jié)點0,負接接于節(jié)點9,電壓為12v;**** vin 1 0 ac 1 sin(0 0.1 5meg)
**** 信號源vin 接于1 和接點0;交流1v 進行交流分析 同時加一個正弦信號 直流偏置為0,振幅為0.1v頻率為5m的交流信號源,進行瞬態(tài)分析;**** rc1 8 4 10k
rc2 8 5 10k
rs 2 1 1k
rs1 8 7 20k
rs2 3 0 1k
**** 電阻rc1 分別接于節(jié)點8 節(jié)點4;阻值為10k;**** **** 電阻rc2 分別接于節(jié)點8 節(jié)點5;阻值為10k;**** **** 電阻rs 分別接于節(jié)點1 節(jié)點0;阻值為1k;**** **** 電阻rs1 分別接于節(jié)點8 節(jié)點7 阻值為20k;**** **** 電阻rs2 分別接于節(jié)點3 節(jié)點0 阻值為1k;**** q1 4 2 6 mod1
**** 三極管q1 cbe 分別接于節(jié)點 4 2 6 模型為mod1**** q2 5 3 6 mod1
**** 三極管q2 cbe 分別接于節(jié)點 5 3 6 模型為mod1**** q3 6 7 9 mod1
**** 三極管q3 cbe 分別接于節(jié)點 6 7 9 模型為mod1**** q4 7 7 9 mod1
**** 三極管q4 cbe 分別接于節(jié)點 7 7 9 模型為mod1****.op
**** 求出直流工作點.本電路共有9個節(jié)點;溫度值為27度;****.dc vin-.15.15.01
**** dc為直流分析語句,分析輸入電壓從-0.15v到0.15v掃描特性,每0.1v作一次分析;****.print dc v(4)v(5)
****.print 為打印語句,其中dc是打印直流內(nèi)容,這里規(guī)定打印節(jié)點4和5上的電位,既相對地參考點的電壓隨輸入的變化關(guān)系;****.plot dc v(4)v(5)
****.plot為繪圖語句,其中dc表示繪制直流分析的傳輸特性,說明是繪制v(4)v(5)的輸出電壓和vin關(guān)系曲線;****.tf v(5)vin
****.tf是轉(zhuǎn)移函數(shù)分析語句,該句表示計算直流分析時,小信號輸出電壓v(5)和輸入電壓vin的轉(zhuǎn)移函數(shù)值,輸入電阻和輸出電阻;****.ac dec 10 25k 250meg
****.ac是交流分析語句,是在規(guī)定的頻率范圍內(nèi)從25k到250m進行頻域分析dec表示按數(shù)量級變化,10表示每一數(shù)量級中取的分析點數(shù)目;****.print ac vm(5)vp(5)
**** 打印ac分析vm(5)vp(5)的取點數(shù);****.plot ac vm(5)vp(5)
**** 繪制ac分析vm(5)vp(5)的取點數(shù);****.tran 4n 100n 1n
****.tran是瞬態(tài)分析語句,并規(guī)定了打印或繪圖時間增量為4n秒,計算終止時間為100n秒,打印或繪圖開始時間1ns*;****.print tran v(5)v(4)
****.打印出4.5點的電壓隨時間變化;****.plot tran v(5)v(4)
****.繪圖出節(jié)點4.5的電壓隨時間變化;****.end
**** 結(jié)束語句...一定要有;****
eda技術(shù)知識總結(jié)篇二
vhdl有如下特點:①支持從系統(tǒng)級到邏輯門級電路的描述;②具有很強的硬件描述能力,;③設(shè)計技術(shù)齊全,、方法靈活、支持廣泛,;④對設(shè)計描述具有相對的獨立性,;⑤具有很強的移植能力;⑥易于共享和復用,;⑦具有豐富的仿真語句和庫函數(shù),;⑧設(shè)計結(jié)構(gòu)清晰、易讀易懂,;⑨易實現(xiàn)系統(tǒng)的更新和升級,;⑩數(shù)據(jù)類型豐富、安全性好,。
vhdl語言中常用的五種庫:1)ieee庫:vhdl語言設(shè)計中最常見的庫,。2)std庫:vhdl語言的標準庫3)work庫:用戶的vhdl語言工作庫,。4)vital庫: vhdl語言的時序仿真庫5)用戶自定義的庫:用戶自定義的資源庫
變量的使用規(guī)則:① 變量不能用于硬件連線和存儲元件;② 變量賦值和初始化賦值都用“:=”表示,;③ 變量的初值不是預設(shè)的,,某一時刻只能有一個值;④ 變量不能用于在進程間傳遞數(shù)據(jù),;⑤ 仿真時,,變量用于建模;⑥ 綜合時,,變量充當數(shù)據(jù)的暫存,。
信號與變量的區(qū)別:①使用場合不同:變量在進程、函數(shù)和過程中說明,;信號在結(jié)構(gòu)體中說明。②賦值符號不同:變量用“:=”號賦值, 其值被立即使用(無時間延時),;信號用“<=”賦值,,其值可以附加延時。
vhdl語言預定義了五種運算符:邏輯運算符,、算術(shù)運算符,、關(guān)系運算符、符號運算符,、移位運算符
主要的三家公司:xilinx,、altera、lattice eda軟件系統(tǒng)包括子模塊:設(shè)計輸入子模塊,、設(shè)計數(shù)據(jù)庫子模塊,、分析驗證子模塊、綜合仿真子模塊,、布局布線子模塊,。
電子系統(tǒng)設(shè)計的仿真過程分為兩個階段:設(shè)計前期的系統(tǒng)級仿真和設(shè)計過程的電路級仿真。(系統(tǒng)仿真主要驗證系統(tǒng)的功能,;電路級仿真主要驗證系統(tǒng)的性能,,決定怎樣實現(xiàn)設(shè)計所需的精度。)
設(shè)計過程中的仿真有三種:行為仿真,、功能仿真,、時序仿真 數(shù)字系統(tǒng)的兩個模塊(子系統(tǒng)):數(shù)據(jù)處理子系統(tǒng)、控制子系統(tǒng)
數(shù)據(jù)處理子系統(tǒng)主要完成數(shù)據(jù)的采集,、存儲,、運算、傳輸,,主要由存儲器,、運算器,、數(shù)據(jù)選擇器等功能電路組成。數(shù)字系統(tǒng)設(shè)計方法:模塊設(shè)計方法,、自頂向下設(shè)計法,、自底向上設(shè)計法。一般采用自頂向下,、由粗到細,、逐步求精的方法。
數(shù)字系統(tǒng)的設(shè)計準則:1)分割準則2)系統(tǒng)的可觀測性3)同步和異步電路4)最優(yōu)化設(shè)計5)系統(tǒng)設(shè)計的藝術(shù)
數(shù)字系統(tǒng)的設(shè)計步驟:1)系統(tǒng)任務(wù)分析2)確定邏輯算法3)建立系統(tǒng)及子系統(tǒng)模型4)系統(tǒng)(或模塊)邏輯描述5)邏輯電路級設(shè)計及系統(tǒng)仿真6)系統(tǒng)的物理實現(xiàn) vhdl語言要素:數(shù)據(jù)對象,、數(shù)據(jù)類型,、各類操作數(shù)及運算操作符 標識符規(guī)則:以英文字母開頭,不連續(xù)使用下劃線“_”,,不以下劃線結(jié)尾的,,由26個大小寫英文字母、數(shù)字0~9及下劃線“_”組成的字符串,,英文字母不區(qū)分大小寫,,vhdl的保留字不能用于作為標識符使用。
在進程中,,只能將信號列到敏感表,,而不能將變量列入敏感表??梢娺M程對信號敏感,。vhdl中的數(shù)據(jù)類型:標量型(包括:實數(shù)型、整數(shù)型,、枚舉型,、時間類型)、復合類型(數(shù)組型,、記錄型),、存取型、文件類型
vhdl四大類數(shù)據(jù)類型又可分為兩類:預定義數(shù)據(jù)類型,、用戶自定義數(shù)據(jù)類型(基于預定義數(shù)據(jù)類型)預定義數(shù)據(jù)類型:1)布爾型2)位數(shù)據(jù)類型(bit)3)位矢量(bit_vector)4)字符型5)整數(shù)型6)自然數(shù)和正整數(shù)型7)實數(shù)型8)字符串型9)時間型10)錯誤等級 數(shù)據(jù)類型:標準邏輯位std_logic,、標準邏輯矢量std_logic_vector vhdl中六類基本順序語句:賦值語句、轉(zhuǎn)向控制語句,、等待語句,、子程序調(diào)用語句、返回語句,、空操作語句,。
在信號賦值時,當統(tǒng)一進程中,同一信號賦值目標有多個賦值源時,,信號賦值目標獲得的是最后一個賦值,,其前面相同的賦值目標則不作任何變化。
轉(zhuǎn)向控制語句五種:if語句,、case語句,、loop語句、next語句,、exit語句
當執(zhí)行wait等待語句,,程序?qū)⒈粧炱穑罎M足結(jié)束條件后,,程序重新開始執(zhí)行,。已列出敏感量的進程不能使用任何形式的wait語句 過程調(diào)用:執(zhí)行一個給定名字和參數(shù)的過程
過程名[([形參名=>] 實參表達式 {,[形參名=>]實參表達式})];過程調(diào)用步驟:1)將in和inout的形參值賦給調(diào)用過程中與之對應(yīng)的形參,;2)執(zhí)行這個過程,;3)將過程中in和inout的形參值賦給對應(yīng)的實參
函數(shù)調(diào)用:返還一個指定數(shù)據(jù)類型的值,函數(shù)的參量只能是輸入值 任何時刻,,一個對象(信號,、常量、變量)只有一個值,,但可有多個屬性 預定義屬性描述:屬性測試項目名’屬性標識符 clock’event and clock=’1’對上升沿的測試(或者not(clock’stable and clock=’1’))clock’event and clock=’0’對下降沿的測試(或者clock’stable and clock=’0’)并行語句在結(jié)構(gòu)體中的執(zhí)行是同步的。每一并行語句內(nèi)部的語句運行方式:并行執(zhí)行,、順序執(zhí)行,。結(jié)構(gòu)體中并行語句有七種:1)并行信號賦值語句2)進程語句3)塊語句4)條件信號賦值語句5)元件例化語句6)生成語句7)并行過程調(diào)用語句
process中規(guī)定了每個進程語句在它的摸個敏感信號的值改變時都必須立即完成某個功能行為。進程的激活必須由敏感信號表中定義的敏感信號的變化來啟動,,否則必須有一個顯示的wait語句激活
并行信號賦值語句包括:簡單信號賦值語句,、條件信號賦值語句、選擇信號賦值語句 簡單信號賦值語句:信號賦值語句<=表達式,;
條件信號賦值語句:賦值目標<=表達式 when 賦值條件 else(類似于if語句)表達式 when 賦值條件 else ?? 表達式,;
選擇信號賦值語句:with 選擇表達式 select(類似于case語句)賦值目標<=表達式 when 選擇值,表達式 when 選擇值,,??
表達式 when 選擇值,;
元件例化是使vhdl設(shè)計實體構(gòu)成自上而下層次化設(shè)計的一個重要途徑。組成部分:1)將一個現(xiàn)成的設(shè)計實體定義為一個元件的語句,;2)此元件與當前設(shè)計實體中的連接說明
元件例化語句中定義的例化元件的端口名與當前系統(tǒng)的連接實體端口名的接口表達式表達有兩種方式:1)名字關(guān)聯(lián)方式:通過“=>”一一對應(yīng)2)位置關(guān)聯(lián)方式:按例化元件端口的定義順序?qū)⒗膶?yīng)的連接實體端口名一一列出
生成語句有一種復制功能,。生成語句的四個組成部分:生成方式、說明部分,、并行語句,、標號。
子程序是利用順序語句來定義和完成算法的。只能通過子程序調(diào)用及與子程序的界面端口進行通信,。包括過程(可單獨存在,,多個返回值,有輸入/出雙向參數(shù))和函數(shù)(作為語句的一部分調(diào)用,,一個返回值,,所有參數(shù)都是輸入?yún)?shù)),可在vhdl的結(jié)構(gòu)體或程序包中任何位置調(diào)用子程序,。
子程序特性:可重載性,,即允許有許多重名的子程序,但這些子程序的參數(shù)類型及返回值數(shù)據(jù)類型不同
函數(shù)組成:函數(shù)首(作用:作為程序包的有關(guān)此函數(shù)的一個接口界面),、函數(shù)體
重載函數(shù):vhdl允許相同的函數(shù)名定義函數(shù),,但要求函數(shù)中定義的操作數(shù)具有不同的數(shù)據(jù)類型。
過程組成部分:過程首,、過程體,。過程首不是必須的,過程體可以獨立存在和使用
過程首參數(shù)表用于對常數(shù),、變量,、信號三類數(shù)據(jù)對象目標作出說明,并用in,、out,、inout定義參數(shù)工作模式(信息流向)
一般把eda技術(shù)的發(fā)展分為cad、cae,、eda三個階段,。
eda設(shè)計流程包括設(shè)計準備、設(shè)計輸入,、設(shè)計處理,、的設(shè)計驗證包括功能仿真、時序仿真,、器件測試三個過程
eda的設(shè)計輸入包括文本輸入方式,、圖形輸入方式、波形輸入方式三個過程
當前最流行的并成為ieee標準的硬件描述語言包括vhdl 語言,、verilog 和 hdl 語言
將硬件描述語言轉(zhuǎn)化為硬件電路的重要工具軟件稱為hdl 綜合器
基于eprom,、e2prom和快閃存儲器件的可編程器件,在系統(tǒng)斷電后編程信息不丟失 基于sram結(jié)構(gòu)的可編程器件,,在系統(tǒng)斷電后編程信息 會丟失
cpld器件中至少包括可編程邏輯宏單元,、可編程 i/o 單元、可編程內(nèi)部連線三種結(jié)構(gòu) fpga的三種可編程電路分別是可編程邏輯塊 clb,、輸入/輸出模塊 iob,、互連資源三種結(jié)構(gòu) 根據(jù)邏輯功能塊的大小不同,,可將fpga(可編程邏輯器件)分為細密度、粗密度兩類,;據(jù)fpga內(nèi)部連線結(jié)構(gòu)的不同,,可將fpga分為分段互連型、連續(xù)互連型兩類,;據(jù)fpga采用的開關(guān)元件不同,,可將fpga分一次編程型(otp)、可重復編程型(mtp)兩類
目前常見的可編程邏輯器件的編程和配置工藝包括電可擦存儲單元的 e2prom 或 flash 技術(shù),、sram 查找表的編程單元,、反熔絲編程單元三種編程工藝。
vhdl設(shè)計實體的基本結(jié)構(gòu)由庫,、程序包使用說明,、設(shè)計實體的說明、結(jié)構(gòu)體說明,、配置 等部分組成
實體,、結(jié)構(gòu)體是設(shè)計實體的基本組成部分,他們可以構(gòu)成最基本的vhdl程序 在vhdl的端口聲明語句中,,端口方向包括in out buffer inout vhdl的數(shù)據(jù)對象包括常數(shù) constant,、變量 variable、信號 signal它們是用來存放各種類型數(shù)據(jù)的容器
vhdl的操作符包括邏輯操作符,、關(guān)系操作符,、算術(shù)操作符、符號操作符
vhdl的順序語句只能出現(xiàn)在進程 process,、函數(shù) function,、過程 procedure中,按照書寫順序自上而下,,一條一條執(zhí)行。
vhdl的進程(process)語句是由 順序語句 組成的,,但其本身卻是 并行語句 maxplus ⅱ支持圖形,、符號、文本,、波形等不同編輯方式
指定設(shè)計電路的輸入/輸出端口與目標芯片引腳的連接關(guān)系的過程稱為引腳鎖定
在完成設(shè)計電路的輸入/輸出端口與目標芯片引腳的鎖定后,,再次對設(shè)計電路的仿真稱時序仿真或后仿真
圖形文件設(shè)計結(jié)束后一定要通過 仿真,檢查設(shè)計文件是否正確
以eda方式設(shè)計實現(xiàn)的電路設(shè)計文件,,最終偶可以編程下載到 fpga 和 cpld 芯片中,,完成硬件設(shè)計和驗證
max+plus的文本文件類型是(后綴名).vhd 在pc上利用vhdl進行項目設(shè)計,不允許在 根目錄 下進行,,不惜在根目錄為設(shè)計建立一個工程目錄(文件夾)vhdl源程序的文件名應(yīng)與 實體名 相同,,否則無法通過編譯 eda 名詞解釋
: 復雜可編程邏輯器件 : 硬件描述語言 :查找表(look-up-table):專用集成電路 :單芯片系統(tǒng)
:超高速硬件描述語言 :現(xiàn)場可編程門陣列 :寄存器傳輸級 :可編程片上系統(tǒng)
:嵌入式陣列塊 :邏輯陣列塊
:知識產(chǎn)權(quán)核
:電子設(shè)計自動化
:美國電氣電子工程師協(xié)會 :在系統(tǒng)編程
:參數(shù)可定制紅模塊庫 :串口(通用異步觸發(fā)器)
18.元件例化:將預先設(shè)計好的設(shè)計實體定義為一個元件,然后利用特定的語句將此元件與當前的設(shè)計實體中的指定端口相連接,,從而為當前設(shè)計實體引入一個新的低一級的設(shè)計層次,。19.簡要解釋 jtag,指出 jtag 的用途:jtag:聯(lián)合測試行動小組的簡稱,,又意指其提出的一種硬件測試標準,常用于器件測試、編程下載和配置等操作,。
eda技術(shù)知識總結(jié)篇三
一、有關(guān)概念
全稱:專用集成電路,; :現(xiàn)場可編程門陣列 :復雜可編程邏輯器件,; 全稱:硬件描述語言; 5.全定制,; 6.半定制,;
核;ip就是知識產(chǎn)權(quán)核或知識產(chǎn)權(quán)模塊的意思
8.綜合(器),;綜合就是將電路的高級語言(如行為描述)轉(zhuǎn)換為低級的,,可與fpga/cpld的基本結(jié)構(gòu)相映射的網(wǎng)表文件或程序。
9.適配(器),;適配器也稱結(jié)構(gòu)綜合器,,它的功能是將綜合器產(chǎn)生的網(wǎng)表文件配置于指定的目標器件中,使之產(chǎn)生最終的下載文件,。
10.功能仿真,;是直接對vhdl、原理圖描述或其他描述形式的邏輯功能進行測試模擬,,以了解其實現(xiàn)的功能是否滿足原設(shè)計的要求
11.時序仿真,;就是接近真實器件運行特性的仿真,仿真文件中已包含了器件硬件特性參數(shù),,因而,,仿真精度高。
12.編程下載,;把適配后生成的下載或配置文件,,通過編程器或編程電纜向fpga或cpld下載,以便進行硬件測試和驗證 ,;可編程只讀存儲器 ,;可編程邏輯陣列 ;可編程陣列邏輯 16.查找表,; 17.乘積項,;
18.實體;vhdl實體作為一個設(shè)計實體(獨立的電路功能結(jié)構(gòu))的組成部分,,其功能是對這個設(shè)計實體與外部電路進行接口描述,。
19.結(jié)構(gòu)體,;結(jié)構(gòu)體是實體所定義實體中的一個組成部分。結(jié)構(gòu)體描述設(shè)計實體的內(nèi)部結(jié)構(gòu)和外部設(shè)計實體端口間的邏輯關(guān)系,。
20.元件例化,;元件例化意味著在當前結(jié)構(gòu)體內(nèi)定義了一個新的設(shè)計層次,這個設(shè)計層次的總稱叫元件,,但它可以以不同的形式出現(xiàn),。?,? 21.時鐘進程,; 22.三態(tài); 23.線與,; 24.數(shù)據(jù)對象,;
25.變量;變量是一個局部量,,只能在進程和子程序中使用,,變量的賦值是立即發(fā)生的,不存在任何延時行為,。
26.信號,;信號是硬件系統(tǒng)的基本數(shù)據(jù)對象,它的性質(zhì)類似于連接線,。信號可以作為設(shè)計實體中并行語句模塊間的信息交流通道
型狀態(tài)機,;異步輸出狀態(tài)機,輸出僅為當前狀態(tài)的函數(shù),,在輸入發(fā)生變化時還必須等待時鐘的到來,。
型狀態(tài)機;同步輸出狀態(tài)機,,輸出是當前狀態(tài)和所有輸入信號的函數(shù),,它的輸出是在輸入變化后立即發(fā)生的。不依賴于時鐘的同步,。
注意:
1.<= 對信號signal的賦值 := 是對變量variable的賦值
2.程序的實體名必須和文件名一致,,例1中二輸入與門的文件名必須為yumen
一、有關(guān)概念
asic全稱,;fpga和cpld全稱;vhdl全稱,;全定制,;半定制; ip核,;綜合(器),;適配(器),;功能仿真;時序仿真,;編程下載,;prom;pla,;pal,;查找表;乘積項,;實體,;結(jié)構(gòu)體;元件例化,;時鐘進程,;三態(tài);線與,; 數(shù)據(jù)對象,;變量;信號,; moore型狀態(tài)機,;mealy型狀態(tài)機。
二,、程序分析及設(shè)計
1,、二輸入與門的vhdl語言設(shè)計。library ieee;use ;entity yumen is
port(a, b : in bit;
y : out bit);end entity yumen;architecture one of yumen is begin y <= a and b;end architecture one;
2,、帶有異步復位和同步時鐘使能的6進制計數(shù)器vhdl語言設(shè)計,。
library ieee;use ;use ;entity jinzhi is port(clk,rst,en : in std_logic;cq : out std_logic_vector(2 downto 0);cout : out std_logic);end jinzhi;architecture behav of jinzhi is begin process(clk, rst, en)variable cqi : std_logic_vector(2 downto 0);begin if rst = '1' then cqi :=(others =>'0');--計數(shù)器復位 elsif clk'event and clk='1' then--檢測時鐘上升沿 if en = '1' then--檢測是否允許計數(shù) if cqi < 5 then cqi := cqi + 1;--允許計數(shù)
else cqi :=(others =>'0');--大于5,計數(shù)值清零 end if;end if;end if;if cqi = 5 then cout <= '1';--計數(shù)大于5,,輸出進位信號 else cout <= '0';end if;cq <= cqi;--將計數(shù)值向端口輸出 end process;end behav;
3,、用vhdl語言設(shè)計2選1數(shù)據(jù)選擇器。
library ieee;use ;entity erxuanyi is port(a, b, s: in bit;y : out bit);end erxuanyi;architecture one of erxuanyi is begin process(a,b,s)begin if s = '0' then y <= a;else y <= b;end if;end process;end;
4,、邊沿型t,、d觸發(fā)器vhdl語言設(shè)計。--d觸發(fā)器
library ieee;use ;entity dff is port(clk : in std_logic;d : in std_logic;q : out std_logic);end;architecture bhv of dff is signal q1 : std_logic;begin process(clk)begin if clk'event and clk = '1' then q1 <= d;end if;end process;q <= q1;end bhv;
--t觸發(fā)器
有clk且為1的時候,,t與當前狀態(tài)異或
library ieee;use ;entity tff is port(clk : in std_logic;t : in std_logic;q : out std_logic);end;architecture bhv of tff is signal q1 : std_logic;begin process(clk)begin if clk'event and clk = '1' then q1 <= q1 xor t;end if;end process;q <= q1;end bhv;
5,、帶并行置數(shù)的8位右移移位寄存器vhdl語言設(shè)計。
library ieee;use ;entity shfrt is port(clk,load: in std_logic;
din: in std_logic_vector(7 downto 0);
qb:out std_logic);end shfrt;
architecture behav of shfrt is begin process(clk,load)
variable reg8: std_logic_vector(7 to 0);begin
if clk'event and clk='1' then
if load='1' then reg8:=din;
else reg8(6 downto 0):=reg8(7 downto 1);
end if;
end if;
qb<=reg8(0);end process;end behav;--說明:當clk有上升沿,,而且load為1的時候把din的值賦給reg8,,如果clk有上升沿,而且load為0的時候把reg8的高7為賦給低7位(注意此時最高位不變)6,、1位半加器vhdl語言設(shè)計,。(布爾邏輯描述)library ieee;use ;entity banjia is port(a,b : in std_logic;co,so : out std_logic);end entity banjia;architecture fh1 of banjia is begin so <= not(a xor(not b));co <= a and b;end architecture fh1;
7,、用vhdl語言設(shè)計實現(xiàn)四選一數(shù)據(jù)選擇器。
library ieee;use ;entity sixuan is port(a, b, c , d: in bit;
s: in std_logic_vector(1 downto 0);y : out bit);end sixuan;architecture one of sixuan is begin process(a,b,c,d,s)begin case s(1 downto 0)is when “00” => y <= a;when “01” => y <= b;when “10” => y <= c;when “11” => y <= d;when others => null;end case;end process;end;
8,、用vhdl語言實現(xiàn)三態(tài)門設(shè)計,。
library ieee;use ;entity santai is port(enable : in std_logic;datain : in std_logic_vector(7 downto 0);dataout : out std_logic_vector(7 downto 0));end santai;architecture bhv of santai is begin process(enable,datain)begin if enable = '1' then dataout <= datain;else dataout <=“zzzzzzzz”;end if;end process;end bhv;
9、設(shè)有vhdl描述的半加器h_adder和或門or2,,試通過層次化設(shè)計思想設(shè)計由半加器和或門構(gòu)成的一位二進制全加器的vhdl程序,。全加器f_adder電路結(jié)構(gòu)組成圖如下所示。
半加器h_adder library ieee;use ;entity h_adder is port(a,b : in std_logic;co,so : out std_logic);end entity h_adder;architecture fh1 of h_adder is begin so <=(a or b)and(a nand b);co <= not(a nand b);end architecture fh1;
或門 or2a library ieee;use ;entity or2a is port(a, b :in std_logic;c : out std_logic);end entity or2a;architecture one of or2a is begin c <= a or b;end architecture one;
元件例化adder library ieee;use ;entity adder is port(ain,bin,cin:in std_logic;
cout,sum :out std_logic);end entity adder;architecture fd1 of adder is component h_adder
port(a,b:in std_logic;
co,so:out std_logic);end component;component or2a
port(a,b:in std_logic;
c:out std_logic);end component;signal d,e,f:std_logic;begin u1 : h_adder port map(a=>ain,b=>bin,co=>d,so=>e);u2 : h_adder port map(a=>e,b=>cin,co=>f,so=>sum);u3 : or2a port map(a=>d,b=>f,c=>cout);end architecture fd1;
eda技術(shù)知識總結(jié)篇四
名詞解釋:
eda:electronic design auto mation 電子設(shè)計自動化 pld:programmable logic device 可編程邏輯器件 ldpld:低密度可編程邏輯器件 hdpld:高密度可編程邏輯器件
prom:programmable read only memory 可編程只讀存儲器 pla:programmable logic array 可編程邏輯陣列 pal:programmable array logic 可編程陣列邏輯 gal:generic attay logic 通用陣列邏輯
epld:erasable programmable logic device 可擦除可編程邏輯器件 cpld:complex programmable logic device 復雜可編程邏輯器件 fpga:現(xiàn)場可編程門陣列
otp:one time programmable 一次性編程器件 mtp:many time programmable 多次編程器件 isp:在系統(tǒng)可編程 簡答:
1,、eda設(shè)計流程:設(shè)計準備,;設(shè)計輸入←→功能仿真(圖形輸入方式,文本輸入方式,,波形輸入方式),;設(shè)計處理←→時序仿真(設(shè)計編譯和檢查,設(shè)計優(yōu)化和綜合,,適配和分割,,布局和布線,生成編程數(shù)據(jù)文件),;設(shè)計效驗,;器件編程;器件測試和設(shè)計驗證,;設(shè)計完成,。
2、硬件描述語言:vhdl:
1,、具有強大的功能,,覆蓋面廣,描述功能強
2,、有良好的可讀性
3,、有良好的可移植性
4、可以延長設(shè)計的生命周期
5,、支持對大規(guī)模設(shè)計的分解和已有設(shè)計的再利用
6,、有利于保護知識產(chǎn)權(quán)
verivog hdl:適合算法級,寄存器傳輸級,,邏輯級,,門級和版圖級等各個層次和電路設(shè)計和描述。最大的優(yōu)點是設(shè)計與工藝無關(guān)性,。
vhdl設(shè)計實體的基本機構(gòu)圖,。
1、庫,程序包:libtaty ieee;
use ;
2,、實體entity 實名體
is
generic(類屬表);--類屬參數(shù)聲明,。
port(端口表),;--端口聲明
end實名體
端口方向:in-輸入
out-輸出
inout-雙向
buffer-具有讀功能的輸出
3、結(jié)構(gòu)體:architecture結(jié)構(gòu)體名of實體名is [信號聲明語句]:--為內(nèi)部信號名稱及類型聲明 begin [功能描述語句] end architectvre 結(jié)構(gòu)實體名,;
4,、vhdl文字規(guī)則:
1、數(shù)制#數(shù)值#
例:10#170#--十進制數(shù)值文字
2,、數(shù)制基數(shù)符號“數(shù)值字符串” 例:b“111011110”,;--二進制數(shù)數(shù)組
3、標識符:以字母開頭,,后面跟若干字母,,數(shù)字或單個下劃線,但最后不能為下劃線,。
5,、vhdl對據(jù)對象:
1、變量:是一個局部量,,只能在進程函數(shù)和進程中聲明和使用,。
variable變量名:數(shù)據(jù)類型【:=初始值】; 2.信號描述硬件系統(tǒng)的基本數(shù)據(jù)對象,。
signal信號名:數(shù)據(jù)類型【:=初值】
標準邏輯位:
1,、未初始化的u;
2、強未知的x;
3,、強0的0;
4,、強1的1;
5、高阻態(tài)z
6,、弱未知的w,;
7、弱0的l,;
8,、弱1的h;
9,、忽略-verilog hdl具有行為描述和結(jié)構(gòu)描述功能,。
行為描述包括:系統(tǒng)級、算法級,、寄存器傳輸級,。jk觸發(fā)器
library ieee;use ;entity myjkff is port(j,k,clr:in std_logic;clk:in std_logic;q,qn:buffer std_logic);end myjkff;architecture one of myjkff is begin process(j,k,clr,clk)variable jk:std_logic_vector(1 dowmto 0)begin jk:=(j & k);if clr=’0’then q<=’0’;qn<=’1’;
elseif clk’event and clk=’0’then case jk is when “00”=>q<=q;qn<=qn;when “01”=>q<=’0’;qn<=’1’;when “10”=>q<=’1’;qn<=’0’;when “11”=>q<=not q;qn<=not qn;when others=>null;end case;end if;end process;end one;
8選一數(shù)據(jù)選擇器
library ieee;use ;entity vhdl1 is port(s1,s2,s3: in std_logic;a,b,c,d,e,f,j,h: in std_logic;z: out std_logic);end vhdl1;architecture example7 of vhdl1 is signal s: std_logic_vector(2 downto 0);begin s<=s1&s2&s3process(s1,s2,s3,a,b,c,d,e,f,j,h)begin case s is when “000”=>z<=a;when “001”=>z<=b;when “010”=>z<=c;when “011”=>z<=d;when “100”=>z<=e;when “101”=>z<=f;when “110”=>z<=j;when “111”=>z<=h;when others=>z<='x';end case;end process;end example7;
十五進止加法計數(shù)器
library ieee;use ;
use ;
entity vhdl1 is port(clk,rst,ena:in std_logic;
q:buffer std_logic_vector(3 downto 0);
cout:out std_logic);end vhdl1;
architecture one of vhdl1 is begin process(clk,rst,ena)begin if rst='1' then q<=“0000”;elsif clk'event and clk='1' then if ena='1' then q<=q+1;if q=“1110” then q<=“0000”;end if;end if;cout<=q(0)and q(1)and q(2)and q(3);end if;end process;end one;
eda技術(shù)知識總結(jié)篇五
一.名詞解釋
eda
電子自動化設(shè)計
electronic design automation fpga
現(xiàn)場可編程門陣列
field programmable gate array cpld
復雜可編程邏輯器件 complex programmable logic device asic
特定用途集成電路
application specific integrated circuit ip
知識產(chǎn)權(quán)
intellectual property soc
片上系統(tǒng)
system on a chip fsm
有限狀態(tài)機
finite state machine mpw
多用途晶圓
multi project wafer
dsp
數(shù)字信號處理器
digital signal processor mcu
微程序控制器
micro control unit hdl
硬件表述語言
hardware description language vhdl 超高速集成電路硬件描述語言
very high speed integrated circuit hardware description language
二.簡答題
-down方法:從系統(tǒng)硬件的高層次抽象描述向低層次物理描述的一系列轉(zhuǎn)化過程。從頂向下設(shè)計由功能級,,行為級描述開始,;寄存器傳輸(rtl)級描述為第一個中間結(jié)果,,再將rtl級描述由邏輯綜合網(wǎng)表或電路圖;利用eda工具將網(wǎng)表自動轉(zhuǎn)換換成目標文件下載到現(xiàn)場可編程門陣列|復雜可編程邏輯器件或通過自動布局布線設(shè)計成專用集成電路,,從而得到電路與系統(tǒng)的物理實現(xiàn),。
2.邏輯綜合主要通過綜合工具,依據(jù)設(shè)計人員設(shè)定的時序,,面積等約束條件,,將與工藝無關(guān)的rtl級的電路邏輯描述程序,轉(zhuǎn)化為與工藝相關(guān)的電路,,是將程序設(shè)計轉(zhuǎn)化為硬件實現(xiàn)的重要環(huán)節(jié),。
3.簡述可編程器件與asic在設(shè)計應(yīng)用成本等方面的優(yōu)缺點
面向可編程邏輯器件的設(shè)計其設(shè)計投入資金小,風險小,,開發(fā)周期短,,調(diào)試靈活,易學易用,,而asic設(shè)計的設(shè)計資金投入大,,流片費用都很昂貴,研發(fā)投片制作其有一定的失敗風險,,且其開發(fā)周期較長,,調(diào)試改動設(shè)計都比較困難,不過,,產(chǎn)品進入大批量生產(chǎn)后,,asic成品的成本往往低于可編程器件成本。
-down過程分為:行為級描述,,寄存器傳輸(rtl)級描述,邏輯綜合,,物理實現(xiàn)。
描述方式:行為級描述,,rtl級描述方式,,結(jié)構(gòu)級描述方式。
6.仿真過程:行為級仿真,,rtl仿真,,門級仿真,后仿真,。
-down設(shè)計方法特點:
1)在系統(tǒng)設(shè)計早期就能發(fā)現(xiàn)設(shè)計中存在的問題,,并盡可能在早期設(shè)計階段就能解決問題。
2)自動化
-down優(yōu)勢
1)在系統(tǒng)設(shè)計早期發(fā)現(xiàn)設(shè)計中存在的問題,,提高設(shè)計的一次成功率,。
2)大大縮短了系統(tǒng)設(shè)計的周期,減少系統(tǒng)開發(fā)所耗用的時間。
3)易于系統(tǒng)劃分和項目管理,,使幾十萬乃至幾百萬的大規(guī)模復雜數(shù)字電路的設(shè)計成為可能,。
4)設(shè)計效率提高,可減少設(shè)計人員,。
5)通過設(shè)計共享,,避免重復設(shè)計。
:指電子技術(shù)高層設(shè)計階段中所采用的硬件描述語言,。
特點:
1、hdl以行為級描述見長,,它能從比較抽象的角度描述電子實體的行為,,能夠進行早期仿真。
2,、hdl能夠進行結(jié)構(gòu)化描述,,它能從具體的角度描述電子實體結(jié)構(gòu),便于存檔,,便于共享,。
3、hdl具備了從比較抽象到比較具體的多個層面上進行混合描述能力,,降低了硬件電路設(shè)計難度,。
4、既能被仿真又能被綜合,。
特點:
1)通用型好,,適用面廣
2)重用性好
3)可靠性好
4)以行為級描述見長。
分為軟核,,硬核,,固核
軟核:第二階段,寄存器級設(shè)計結(jié)果,,且經(jīng)過rtl級仿真驗證,。通常以hdl語言形式提交。
固核:第四階段,,經(jīng)過fpga實物驗證的設(shè)計結(jié)果,。通常以門級網(wǎng)表的形式提交。
硬核:第四階段,,經(jīng)過asic工藝驗證的設(shè)計結(jié)果,。通常以版圖的形式提交。
三者的價值:
從fpga角度看固核最有價值
從asic角度看硬核最有價值
軟核則由于它與工藝和器件均無關(guān),,具有高度靈活性,,從而具有獨特價值。
固核硬化:將固核轉(zhuǎn)化為硬核。
硬核軟化:因為硬核必須用過交換或出售才能實現(xiàn)價值最大化,。而在硬核交換過程中,,為了保護硬核知識產(chǎn)權(quán),ip提供者往往將硬核以黑匣子形式提供給用戶,,同時能將硬化軟化,,即采用硬件描述語言對硬核的功能進行行為級描述,通過使用該行為級描述,,在保護匣子具體內(nèi)容的同時,,仍可進行ip仿真。
/cpld在eda中具有重要作用
1)vhdl程序用過fpga/cpld可以得到eda設(shè)計的最終產(chǎn)品,,在產(chǎn)品數(shù)據(jù)較小時快速占領(lǐng)市場,。
2)vhdl程序通過fpga/cpld驗證可以形成固核具有一定商品價值。
3)vhdl程序的fpga/cpld驗證試驗是一種asic設(shè)計的硬件仿真工具,。
13.并行語句和順序語句在使用上有哪些差異:
1)并發(fā)語句只能夠出現(xiàn)在并發(fā)語句結(jié)構(gòu)中,,如結(jié)構(gòu)體,block等,,并發(fā)語句的執(zhí)行與其在程序中的書寫順序無關(guān),;
2)順序語句只能夠出現(xiàn)在順序語句結(jié)構(gòu)中,如process,,過程,,函數(shù)等結(jié)構(gòu)中,其執(zhí)行與書寫順序相關(guān),,寫在前面的語句先執(zhí)行,,寫在后面的依據(jù)后執(zhí)行。14.數(shù)據(jù)類型是用標示符表征某個或某個數(shù)值的集合,,數(shù)據(jù)類型按照定義可分為標準預定義數(shù)據(jù)類型和用戶自定義數(shù)據(jù)類型,,還有用戶自定義數(shù)據(jù)類型。在vhdl中若某個對象被聲明為某種類型,,其值必須在該數(shù)據(jù)類型所限定的取值范圍之中,,且只有相同的數(shù)據(jù)類型才能做賦值或運算,不同數(shù)據(jù)類型的數(shù)據(jù)必須通過類型轉(zhuǎn)換一致后,,才能運算,。故說vhdl語言是強數(shù)據(jù)類型的描述語言。
15.描述行為語言:信號賦值語言,,進程語句,,子程序,塊語句,,斷言語句,。
描述結(jié)構(gòu)語句:元件語句(component),,生成語句(generate),參數(shù)說明語句(generic)
16.并行信號賦值語句:一般信號賦值,,條件信號賦值,,選擇信號賦值。
17.什么是eda,?
eda技術(shù)是一種以計算機為基本工作平臺,,利用計算機圖形學,拓撲邏輯學,,計算數(shù)學以及人工智能學等多種計算機應(yīng)用學科的最新成果而開發(fā)出來的一整套軟件工具,,是一種幫助電子設(shè)計工程師從事電子元件產(chǎn)品和系統(tǒng)設(shè)計的綜合設(shè)計,電子設(shè)計自動化技術(shù),,方法一般采用自頂向下的設(shè)計方法,,也叫正向設(shè)計,它是針對傳統(tǒng)的自底向上的設(shè)計方法而提出的,。
18.什么是ip核?學習vhdl與掌握ip核技術(shù)的關(guān)系四什么,?
ip核是具有知識產(chǎn)權(quán)的集成電路芯核的簡稱,,其作用是把一組擁有知識產(chǎn)權(quán)的電路設(shè)計集合在一起,構(gòu)成芯片的基本單位,,以供設(shè)計時“搭積木”之用,。
19.信號賦值語句在進程做并行語句,并發(fā)執(zhí)行,,與語句所處位置無關(guān),。
信號賦值語句在進程內(nèi)或子程序內(nèi)做順序語句,按順序執(zhí)行,,與語句所處位置無關(guān),。
信號賦值語句符號為“<=” 變量賦值符號位”:=”
用于信號賦值動作,不立即生效
用于變量賦值動作,,會立即生效
—hdl軟件工具對vhdl程序進行仿真方法有哪些? 利用active—hdl軟件工具對vhdl程序進行仿真時,,常用的三種仿真方法:
1)用圖形化界面加激勵(或手動測試加激勵)方法簡單,常用于初學者或簡單的小程序仿真,。
2)編寫測試平臺文件(或編寫testbench)的仿真方法可以方便地使用vhdl編寫做激勵文件,。常用于工程設(shè)計實踐,尤其適用于需要反復多次仿真或測試激勵的跨平臺移植,。
3)編寫宏文件的仿真方法用命令行,,批處理文件方式編寫激勵,常用于需要多次仿真時,,一次性編寫激勵,,多次仿真時反復使用,。
21.進程的“敏感信號”,也稱敏感表,,是進程的激活條件,,可由一個信號或多個信號組成之間用“,”隔開,。
當敏感信號表中的任意一個信號有事件發(fā)生,,即發(fā)生任意變化,此時,,進程被激活,,進程中的語句將從上到下逐句執(zhí)行一遍,當最后一條語句執(zhí)行完畢后,,進程即進入等待掛起狀態(tài),,直到下一次敏感表中的信號有時間發(fā)生,進程再次被激活,,如此循環(huán)往復,。
程序的組成部分包括哪些?
實體:描述設(shè)計單元的外圍接口信號和內(nèi)部參數(shù),。
構(gòu)造體:描述設(shè)計單元的內(nèi)部結(jié)構(gòu)和邏輯行為,。
配置:為設(shè)計單元從多個構(gòu)造體中選擇合適的構(gòu)造體或從庫中選取合適的元件以便于進行設(shè)計單元的仿真或綜合。
程序包:存放各設(shè)計模塊都能共享的數(shù)據(jù)類型,,常熟和子程序,。
庫:存放已經(jīng)編譯了的元件和程序包,以便在設(shè)計單元中使用,,庫可由系統(tǒng)工程師的自信設(shè)計或由asic芯片制造商提供,。
23.端口方向有哪幾種? 端口:
in:輸入端口,,在設(shè)計單元內(nèi)部只可讀,,在設(shè)計單元內(nèi)不可對其賦值。
out:輸出端口,,在設(shè)計單元內(nèi)部只可寫,,不可反饋至設(shè)計單元內(nèi)部作邏輯電路的輸入型號。
inout:輸入通道和輸出通道共享引腳的雙向端口,,在設(shè)計單元內(nèi)部分時可讀可寫,,需要控制信號控制何時讀,何時寫,,輸入和輸出通道不能同時有效,。
buffer:緩沖輸出端口,可反饋至設(shè)計單元內(nèi)部作為邏輯電路的輸入信號,,故可在設(shè)計單元內(nèi)部可讀可寫,。
linkage:鏈接端口,,無指定方向,可以與任意方向信號鏈接,。
有哪幾種描述方式,?分別用于什么場合?
邏輯綜合:在top-down流程中,,eda軟件可以將源程序自動轉(zhuǎn)換為描述底層邏輯門互聯(lián)關(guān)系的門級網(wǎng)表,,從而與最終的可編程器件或asic硬件實現(xiàn)相對應(yīng)。
行為級描述方式是抽象程度最高的電路建模方式,,源程序主要描述電路的輸出端口隨輸入變化而變化規(guī)律,,程序描述貼近人類高級語言,不可被綜合,。
寄存器級通過描述數(shù)據(jù)從輸入到輸出的運算處理按時了電路結(jié)構(gòu)綜合,。結(jié)構(gòu)描述方式是層次化設(shè)計思想的體現(xiàn),是描述電路硬件連接的建模方式,,源程序可否被綜合,,依賴被調(diào)用元件可綜合否。
25.什么是數(shù)據(jù)對象,?常用的數(shù)據(jù)對象有哪些幾種,? 常用數(shù)據(jù)對象:信號,變量,,常量
在vhdl程序中凡是可以被賦值的對象稱為數(shù)據(jù)對象,。
26.信號延時有哪幾種,?它們有何異同,? 信號延時:
傳播延時:直接模擬導線上信號的延時。任何信號傳入導線的一段,,經(jīng)過一段延時信號必須從導線另一段輸出,。
慣性延時:模擬某類元件的延時特征,信號傳入軟件后,,在指定時間內(nèi)輸入信號必須保持不變,,元件的輸出端才會有響應(yīng)。
27.什么是數(shù)據(jù)類型,?它可以分為哪幾大種,?每一種類型中包括哪些具體類型? 數(shù)據(jù)類型:標準數(shù)據(jù)類型,,用戶自定義數(shù)據(jù)類型,,用戶自定義子類型。
標準數(shù)據(jù)類是在vhdl預定義庫中定義的數(shù)據(jù)類型,,在使用時不需要作參考庫和程序包申明,。
位,、矢量位、整數(shù),、自然數(shù),。正整數(shù)、實數(shù),、布爾量,、字符、字符串,、時間,、錯誤等級。用戶自定義數(shù)據(jù)類型: 在vhdl中用戶還可以自己定義所需數(shù)據(jù)類型,。語法格式:type <數(shù)據(jù)類型> is 數(shù)據(jù)類型定義,;
枚舉類型、數(shù)組類型,、存取類型,、文件類型、記錄類型,、時間類型,。用戶自定義子類型:
用戶自定義的子類型,是對已定義數(shù)據(jù)類型取值范圍加以限制得到的子集,。語法格式:subtype <子類型名> is 原數(shù)據(jù)類型名 [范圍]
中操作符主要有哪幾類,?它們都分為哪些主要元素?
邏輯運算符: not(非)and(與)or(或)nand(或與)
nor(或非)xor(異或)算數(shù)運算符:+ *能夠真正被綜合,,mod rem 分母的操作數(shù)為2乘方的書,,邏輯電路綜合是可能的。
29.什么是層次化,?
層次化設(shè)計基于電子系統(tǒng)的結(jié)構(gòu)化建模方式,,對系統(tǒng)的功能和結(jié)構(gòu)進行描述,層次化設(shè)計獎系統(tǒng)逐級劃分,,將較獨立的功能或邏輯電路單獨建模,,與參考庫中的底層元件一起調(diào)用。作為可調(diào)用元件,,在確保正確的情況下,,調(diào)入高層次的設(shè)計中作為實例使用,在系統(tǒng)設(shè)計中,,采用層次化設(shè)計方法,,可以有效地簡化設(shè)計難度,明確系統(tǒng)架構(gòu),,促進團隊合作和共享,。
30.什么是組合邏輯,?其vhdl程序設(shè)計有何特點?
組合邏輯就是指數(shù)字電路在任何時刻僅僅取決于該時刻數(shù)字電路的輸入,,與歷史輸入無關(guān),。
用vhdl描述組合邏輯電路,使用并行語句或使用進程,。
31.什么是時序邏輯,?其vhdl程序設(shè)計與組合邏輯的有何不同?
時序邏輯電路指數(shù)字電路在任何時刻的輸出不僅取決于該時刻數(shù)字電路輸入,,而且取決于電路原來狀態(tài),,或者說還與歷史輸入有關(guān)。
用vhdl描述時序電路:必須使用到進程,。
32.常用eda工具:active-hdl,fpga-express,ise,cadence,verilog-xl,nc-verilog,maxplus-ii.33.‘u’初始狀態(tài)
‘x’不定態(tài)
‘0’強0態(tài)
‘1’強1態(tài)
‘z’高阻態(tài)
‘l’弱0態(tài) ‘h’弱1態(tài)
‘w’ 弱補丁太 ‘-’無關(guān)態(tài)
:輸出由狀態(tài)機的輸入和狀態(tài)機的狀態(tài)共同決定,。
moore:輸出僅與狀態(tài)機的狀態(tài)有關(guān),與狀態(tài)機的輸入無關(guān),。