EDA 優(yōu)化和時(shí)序分析_第1頁
EDA 優(yōu)化和時(shí)序分析_第2頁
EDA 優(yōu)化和時(shí)序分析_第3頁
EDA 優(yōu)化和時(shí)序分析_第4頁
EDA 優(yōu)化和時(shí)序分析_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

會(huì)計(jì)學(xué)1EDA優(yōu)化和時(shí)序分析11.1資源優(yōu)化

KX康芯科技11.1.1資源共享

【例11-1】LIBRARYieee;USEieee.std_logic_1164.all;USEieee.std_logic_unsigned.all;USEieee.std_logic_arith.all;ENTITYmultmuxISPORT(A0,A1,B:INstd_logic_vector(3downto0);sel:INstd_logic;Result:OUTstd_logic_vector(7downto0));ENDmultmux;ARCHITECTURErtlOFmultmuxISBEGINprocess(A0,A1,B,sel)beginif(sel='0')thenResult<=A0*B;elseResult<=A1*B;endif;endprocess;ENDrtl;第1頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.1資源共享

圖11-1先乘后選擇的設(shè)計(jì)方法RTL結(jié)構(gòu)

第2頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.1資源共享

圖11-2先選擇后乘設(shè)計(jì)方法RTL結(jié)構(gòu)

第3頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.1資源共享

【例11-2】ARCHITECTURErtlOFmuxmultISsignaltemp:std_logic_vector(3downto0);BEGINprocess(A0,A1,B,sel)beginif(sel='0')thentemp<=A0;elsetemp<=A1;endif;result<=temp*B;endprocess;ENDrtl;

第4頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.1資源共享

圖11-3資源共享反例

第5頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.2邏輯優(yōu)化

【例11-3】LIBRARYieee;USEieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;ENTITYmult1ISPORT(clk:instd_logic;ma:Instd_logic_vector(11downto0);mc:outstd_logic_vector(23downto0));ENDmult1;ARCHITECTURErtlOFmult1ISsignalta,tb:std_logic_vector(11downto0);BEGINprocess(clk)beginif(clk'eventandclk='1')thenta<=ma;tb<="100110111001";mc<=ta*tb;endif;endprocess;ENDrtl;第6頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.2邏輯優(yōu)化

【例11-4】LIBRARYieee;USEieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;ENTITYmult2ISPORT(clk:instd_logic;ma:Instd_logic_vector(11downto0);mc:outstd_logic_vector(23downto0));ENDmult2;ARCHITECTURErtlOFmult2ISsignalta:std_logic_vector(11downto0);constanttb:std_logic_vector(11downto0):="100110111001";BEGINprocess(clk)beginif(clk'eventandclk='1')thenta<=ma;mc<=ta*tb;endif;endprocess;ENDrtl;第7頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.3串行化

【例11-5】LIBRARYieee;USEieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;ENTITYpmultaddISPORT(clk:instd_logic;a0,a1,a2,a3:instd_logic_vector(7downto0);b0,b1,b2,b3:instd_logic_vector(7downto0);yout:outstd_logic_vector(15downto0));ENDpmultadd;ARCHITECTUREp_archOFpmultaddISBEGINprocess(clk)beginif(clk'eventandclk='1')thenyout<=((a0*b0)+(a1*b1))+((a2*b2)+(a3*b3));endif;endprocess;ENDp_arch;yout=a0×b0+a1×b1+a2×b2+a3×b3

第8頁/共74頁11.1資源優(yōu)化

KX康芯科技11.1.3串行化

圖11-4并行并行乘法RTL結(jié)構(gòu)(Synplify綜合)

第9頁/共74頁KX康芯科技【例11-6】LIBRARYieee;USEieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;ENTITYsmultaddISPORT(clk,

start:instd_logic;a0,a1,a2,a3:Instd_logic_vector(7downto0);b0,b1,b2,b3:Instd_logic_vector(7downto0);yout:outstd_logic_vector(15downto0));ENDsmultadd;ARCHITECTUREs_archOFsmultaddISsignalcnt:std_logic_vector(2downto0);signaltmpa,tmpb:std_logic_vector(7downto0);signaltmp,

ytmp:std_logic_vector(15downto0);BEGINtmpa<=a0whencnt=0elsea1whencnt=1elsea2whencnt=2elsea3whencnt=3elsea0;tmpb<=b0whencnt=0elseb1whencnt=1elseb2whencnt=2elseb3whencnt=3elseb0;tmp<=tmpa*tmpb;process(clk)beginif(clk'eventandclk='1')thenif(start='1')thencnt<="000";ytmp<=(others=>'0');elsif(cnt<4)thencnt<=cnt+1;ytmp<=ytmp+tmp;elsif(cnt=4)thenyout<=ytmp;endif;endif;endprocess;ENDs_arch;第10頁/共74頁11.2速度優(yōu)化

KX康芯科技11.2.1流水線設(shè)計(jì)

圖11-5未使用流水線

第11頁/共74頁11.2速度優(yōu)化

KX康芯科技11.2.1流水線設(shè)計(jì)

圖11-6使用流水線

第12頁/共74頁11.2速度優(yōu)化

KX康芯科技11.2.1流水線設(shè)計(jì)

圖11-7流水線工作圖示

第13頁/共74頁KX康芯科技【例11-7】LIBRARYieee;USEieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;ENTITYadder4ISPORT(clk:instd_logic;a0,a1,a2,a3:instd_logic_vector(7downto0);yout:outstd_logic_vector(9downto0));ENDadder4;ARCHITECTUREnormal_archOFadder4ISsignalt0,t1,t2,t3:std_logic_vector(7downto0);signaladdtmp0,addtmp1:std_logic_vector(8downto0);BEGINprocess(clk)beginif(clk'eventandclk='1')thent0<=a0;t1<=a1;t2<=a2;t3<=a3;endif;endprocess;addtmp0<='0'&t0+t1;addtmp1<='0'&t2+t3;process(clk)beginif(clk'eventandclk='1')thenyout<='0'&addtmp0+addtmp1;endif;endprocess;ENDnormal_arch;第14頁/共74頁KX康芯科技【例11-8】LIBRARYieee;USEieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;ENTITYpipeaddISPORT(clk:instd_logic;a0,a1,a2,a3:instd_logic_vector(7downto0);yout:outstd_logic_vector(9downto0));ENDpipeadd;ARCHITECTUREpipelining_archOFpipeaddISsignalt0,t1,t2,t3:std_logic_vector(7downto0);signaladdtmp0,addtmp1:std_logic_vector(8downto0);BEGINprocess(clk)beginif(clk'eventandclk='1')thent0<=a0;t1<=a1;t2<=a2;t3<=a3;endif;endprocess;process(clk)beginif(clk'eventandclk='1')thenaddtmp0<='0'&t0+t1;addtmp1<='0'&t2+t3;yout<='0'&addtmp0+addtmp1;endif;endprocess;ENDpipelining_arch;第15頁/共74頁11.2速度優(yōu)化

KX康芯科技11.2.2寄存器配平

圖11-8不合理的結(jié)構(gòu)

第16頁/共74頁11.2速度優(yōu)化

KX康芯科技11.2.2寄存器配平

圖11-9寄存器配平的結(jié)構(gòu)

第17頁/共74頁11.2速度優(yōu)化

KX康芯科技11.2.3關(guān)鍵路徑法

圖11-10關(guān)鍵路徑示意

第18頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

KX康芯科技11.3.1Settings設(shè)置

11.3.2HDL版本設(shè)置及Analysis&Synthesis功能

11.3.3Analysis&Synthesis的優(yōu)化設(shè)置

11.3.4適配器Fitter設(shè)置

第19頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

KX康芯科技圖9-11布線倍增器優(yōu)化程度指數(shù)選擇

第20頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

KX康芯科技11.3.5增量布局布線控制設(shè)置

圖11-12反標(biāo)設(shè)置

第21頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

KX康芯科技11.3.6使用DesignAssistant檢查設(shè)計(jì)可靠性

圖11-13DesignAssistant設(shè)置

第22頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.7時(shí)序設(shè)置與分析

圖11-14全編譯前時(shí)序條件設(shè)置(設(shè)置時(shí)鐘信號(hào)CLK不低于130MHz)

第23頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.7時(shí)序設(shè)置與分析

圖11-15由TimingWizard窗口設(shè)置時(shí)序條件

第24頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.8查看時(shí)序分析結(jié)果

圖11-16時(shí)序分析報(bào)告窗

第25頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.8查看時(shí)序分析結(jié)果

圖11-17TimingAnalyzerTool項(xiàng)進(jìn)入的時(shí)序分析報(bào)告窗

第26頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.9適配優(yōu)化設(shè)置示例

圖11-18未用乘積項(xiàng)前的編譯報(bào)告

第27頁/共74頁KX康芯科技【例11-9】

用CASE語句設(shè)計(jì)的正弦信號(hào)發(fā)生器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYSINGTISPORT(CLK:INSTD_LOGIC;DOUT:OUTINTEGERRANGE255DOWNTO0);END;ARCHITECTUREDACCOFSINGTISSIGNALQ:INTEGERRANGE63DOWNTO0;SIGNALD:INTEGERRANGE255DOWNTO0;BEGINPROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THENIFQ<63THENQ<=Q+1;ELSEQ<=0;ENDIF;ENDIF;ENDPROCESS;PROCESS(Q)BEGINCASEQIS(接下頁)

第28頁/共74頁KX康芯科技WHEN00=>D<=255;WHEN01=>D<=254;WHEN02=>D<=252;WHEN03=>D<=249;WHEN04=>D<=245;WHEN05=>D<=239;WHEN06=>D<=233;WHEN07=>D<=225;WHEN08=>D<=217;WHEN09=>D<=207;WHEN10=>D<=197;WHEN11=>D<=186;WHEN12=>D<=174;WHEN13=>D<=162;WHEN14=>D<=150;WHEN15=>D<=137;WHEN16=>D<=124;WHEN17=>D<=112;WHEN18=>D<=99;WHEN19=>D<=87;WHEN20=>D<=75;WHEN21=>D<=64;WHEN22=>D<=53;WHEN23=>D<=43;WHEN24=>D<=34;WHEN25=>D<=26;WHEN26=>D<=19;WHEN27=>D<=13;WHEN28=>D<=8;WHEN29=>D<=4;WHEN30=>D<=1;WHEN31=>D<=0;WHEN32=>D<=0;WHEN33=>D<=1;WHEN34=>D<=4;WHEN35=>D<=8;WHEN36=>D<=13;WHEN37=>D<=19;WHEN38=>D<=26;WHEN39=>D<=34;WHEN40=>D<=43;WHEN41=>D<=53;WHEN42=>D<=64;WHEN43=>D<=75;WHEN44=>D<=87;WHEN45=>D<=99;WHEN46=>D<=112;WHEN47=>D<=124;WHEN48=>D<=137;WHEN49=>D<=150;WHEN50=>D<=162;WHEN51=>D<=174;WHEN52=>D<=186;WHEN53=>D<=197;WHEN54=>D<=207;WHEN55=>D<=217;WHEN56=>D<=225;WHEN57=>D<=233;WHEN58=>D<=239;WHEN59=>D<=245;WHEN60=>D<=249;WHEN61=>D<=252;WHEN62=>D<=254;WHEN63=>D<=255;WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;DOUT<=D;END;

第29頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.9適配優(yōu)化設(shè)置示例

圖11-19針對(duì)工程選擇LocateinAssignmentEditorKX康芯科技第30頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.9適配優(yōu)化設(shè)置示例

圖11-20選用乘積項(xiàng)邏輯優(yōu)化

KX康芯科技第31頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.9適配優(yōu)化設(shè)置示例

圖11-21在floorplan中可以看到使用了32個(gè)ESBKX康芯科技第32頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.9適配優(yōu)化設(shè)置示例

圖11-22使用了乘積項(xiàng)的編譯報(bào)告

KX康芯科技第33頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.10SlowSlewRate設(shè)置

圖11-23SlowSlewRate選擇

KX康芯科技第34頁/共74頁11.3優(yōu)化設(shè)置與時(shí)序分析

11.3.11LogicLock優(yōu)化技術(shù)

KX康芯科技

大規(guī)模系統(tǒng)開發(fā)中,應(yīng)用邏輯鎖定技術(shù)可以優(yōu)化設(shè)計(jì),合理分配硬件資料,提高系統(tǒng)的工作速度和可靠性。QuartusII支持邏輯鎖定技術(shù)的FPGA器件系列有APEX20K、APEXII、Excalibur、Cyclone/II和Stratix/II等。

第35頁/共74頁11.4ChipEditor應(yīng)用

11.4.1ChipEditor應(yīng)用實(shí)例

KX康芯科技圖9-24最左側(cè)是CNT4B占用的LAB第36頁/共74頁11.4ChipEditor應(yīng)用

11.4.1ChipEditor應(yīng)用實(shí)例

KX康芯科技9-25放大后的LAB分布

第37頁/共74頁11.4ChipEditor應(yīng)用

11.4.1ChipEditor應(yīng)用實(shí)例

圖11-26被占用的LAB圖11-27LAB中被占用的5個(gè)LCs第38頁/共74頁11.4ChipEditor應(yīng)用

11.4.1ChipEditor應(yīng)用實(shí)例

KX康芯科技圖11-28ResourcePropertyEditor的門級(jí)原理圖編輯窗

第39頁/共74頁11.4ChipEditor應(yīng)用

11.4.1ChipEditor應(yīng)用實(shí)例

KX康芯科技圖11-29的時(shí)序分析報(bào)告窗圖

第40頁/共74頁11.4ChipEditor應(yīng)用

11.4.2ChipEditor功能說明

KX康芯科技圖9-30打開NetlistExplorer窗

第41頁/共74頁11.4ChipEditor應(yīng)用

11.4.2ChipEditor功能說明

KX康芯科技圖11-31打開屬性和端口連接窗

第42頁/共74頁11.4ChipEditor應(yīng)用

11.4.3利用ChangeManager檢測(cè)底層邏輯

KX康芯科技圖11-32打開ChangeManager窗

第43頁/共74頁習(xí)題KX康芯科技11-1.利用資源共享的面積優(yōu)化方法對(duì)下面程序進(jìn)行優(yōu)化(僅要求在面積上優(yōu)化)。習(xí)題程序如下:

【例11-10】LIBRARYieee;USEieee.std_logic_1164.all;USEieee.std_logic_unsigned.all;USEieee.std_logic_arith.all;ENTITYaddmuxISPORT(A,B,C,D:INstd_logic_vector(7downto0);sel:INstd_logic;Result:OUTstd_logic_vector(7downto0));ENDaddmux;ARCHITECTURErtlOFaddmuxISBEGINprocess(A,B,C,D,sel)beginif(sel='0')thenResult<=A+B;elseResult<=C+D;endif;endprocess;ENDrtl;第44頁/共74頁習(xí)題KX康芯科技11-2.試通過優(yōu)化邏輯的方式對(duì)圖11-33中所示的結(jié)構(gòu)進(jìn)行改進(jìn),給出VHDL代碼和結(jié)構(gòu)圖。圖11-33習(xí)題11-2圖

第45頁/共74頁習(xí)題KX康芯科技11-3.已知4階直接型FIR濾波器節(jié)的數(shù)學(xué)表達(dá)式如下:y(n)=x(n)h(0)+x(n-1)+x(n-2)h(2)+x(n-3)h(3)x(n)與x(n-m),m=0,1,2,3是延遲關(guān)系,m表示延遲的clk數(shù)。x(n-m)與h(m)的位寬均為8位,y(n)為10位,其中h(m)在模塊例化后為常數(shù)。該模塊的輸入為x(n)、clk,輸出為y(n),試實(shí)現(xiàn)該邏輯。11-4.對(duì)習(xí)題11-3中的FIR濾波器節(jié)在速度上進(jìn)行優(yōu)化(在h(m)固定的情況下),試采用流水線技術(shù)。

11-5.利用FPGA的LUT結(jié)構(gòu),構(gòu)建資源占用較小的常數(shù)乘法器,改進(jìn)習(xí)題11-3、11-4的設(shè)計(jì),減少模塊的資源使用。

11-6.若對(duì)速度要求不高,但目標(biāo)芯片的容量較小,試把習(xí)題11-3中的FIR濾波器用串行化的方式實(shí)現(xiàn)。

第46頁/共74頁習(xí)題KX康芯科技11-7.設(shè)計(jì)一個(gè)連續(xù)乘法器,輸入為a0,a1,a2,a3,位寬各為8位,輸出rout為32位,完成rout=a0*a1*a2*a3,試實(shí)現(xiàn)之。11-8.對(duì)11-7進(jìn)行優(yōu)化,判斷以下實(shí)現(xiàn)方法,那種方法更好?

rout=((a0*a1)*a2)*a3rout=(a0*a1)*(a2*a3)11-9.為提高速度,對(duì)習(xí)題11-8中的前一種方法加上流水線技術(shù)進(jìn)行實(shí)現(xiàn)。11-10.試對(duì)以上的習(xí)題解答通過設(shè)置QuartusII相關(guān)選項(xiàng)的方式,提高速度,減小面積。第47頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-1采用流水線技術(shù)設(shè)計(jì)高速數(shù)字相關(guān)器(1)實(shí)驗(yàn)?zāi)康模涸O(shè)計(jì)一個(gè)在數(shù)字通信系統(tǒng)中常見的數(shù)字相關(guān)器,并利用流水線技術(shù)提高其工作速度,對(duì)其進(jìn)行仿真和硬件測(cè)試。(2)實(shí)驗(yàn)原理:數(shù)字相關(guān)器用于檢測(cè)等長(zhǎng)度的兩個(gè)數(shù)字序列間相等的位數(shù),實(shí)現(xiàn)序列間的相關(guān)運(yùn)算。一位相關(guān)器,即異或門,異或的結(jié)果可以表示兩個(gè)1位數(shù)據(jù)的相關(guān)程度。異或?yàn)?表示數(shù)據(jù)位相同;異或?yàn)?表示數(shù)據(jù)位不同。多位數(shù)字相關(guān)器可以由多個(gè)一位相關(guān)器構(gòu)成,如N位的數(shù)字相關(guān)器由N個(gè)異或門和N個(gè)1位相關(guān)結(jié)果統(tǒng)計(jì)電路構(gòu)成。(3)實(shí)驗(yàn)內(nèi)容1:根據(jù)上述原理設(shè)計(jì)一個(gè)并行4位數(shù)字相關(guān)器(例9-17是示例程序)。提示:利用CASE語句完成4個(gè)1位相關(guān)結(jié)果的統(tǒng)計(jì)。

第48頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-1采用流水線技術(shù)設(shè)計(jì)高速數(shù)字相關(guān)器【例11-11】stemp<=aXORb;PROCESS(stemp)BEGIN CASEstempIS WHEN"0000"=>c<="100"; --4 WHEN"0001"|"0010"|"0100"|"1000"=>c<="011"; --3 WHEN"0011"|"0101"|"1001"|"0110"|"1010"|"1100"=>c<="010"; --2 WHEN"0111"|"1011"|"1101"|"1110"=>c<="001"; --1 WHEN"1111"=>c<="000"; --0; WHENOTHERS=>c<="000"; ENDCASE;ENDPROCESS;第49頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-1采用流水線技術(shù)設(shè)計(jì)高速數(shù)字相關(guān)器(4)實(shí)驗(yàn)內(nèi)容2:利用實(shí)驗(yàn)內(nèi)容1中的4位數(shù)字相關(guān)器設(shè)計(jì)并行16位數(shù)字相關(guān)器。使用QuartusII估計(jì)最大延時(shí),并計(jì)算可能運(yùn)行的最高頻率。(5)實(shí)驗(yàn)內(nèi)容3:在以上實(shí)驗(yàn)的基礎(chǔ)上,利用設(shè)計(jì)完成的4位數(shù)字相關(guān)器設(shè)計(jì)并行16位數(shù)字相關(guān)器,其結(jié)構(gòu)框圖可參考圖11-33,并利用QuartusII計(jì)算運(yùn)行速度。(6)實(shí)驗(yàn)內(nèi)容4:上面的16位數(shù)字相關(guān)器是用3級(jí)組合邏輯實(shí)現(xiàn)的,在實(shí)際使用時(shí),對(duì)其有高速的要求,試使用流水線技術(shù)改善其運(yùn)行速度。在輸入、輸出及每一級(jí)組合邏輯的結(jié)果處加入流水線寄存器,提高速度,可參照本章內(nèi)容進(jìn)行設(shè)計(jì)。(7)實(shí)驗(yàn)思考題:考慮采用流水線后的運(yùn)行速度與時(shí)鐘clock的關(guān)系,測(cè)定輸出與輸入的總延遲。若輸入序列是串行化的,數(shù)字相關(guān)器的結(jié)構(gòu)如何設(shè)計(jì)?如何利用流水線技術(shù)提高其運(yùn)行速度?(8)實(shí)驗(yàn)報(bào)告:根據(jù)以上的實(shí)驗(yàn)內(nèi)容寫出實(shí)驗(yàn)報(bào)告,包括設(shè)計(jì)原理、程序設(shè)計(jì)、程序分析、仿真分析、硬件測(cè)試和詳細(xì)實(shí)驗(yàn)過程。

第50頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-2線性反饋移位寄存器設(shè)計(jì)(1)實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)用VHDL設(shè)計(jì)LFSR,掌握利用FPGA的特殊結(jié)構(gòu)中高效實(shí)現(xiàn)LFSR的方法。(2)實(shí)驗(yàn)原理:LFSR即LinearFeedbackShiftRegister線性反饋移位寄存器,是一種十分有用的時(shí)序邏輯結(jié)構(gòu),廣泛用于偽隨機(jī)序列發(fā)生、可編程分頻器、CRC校驗(yàn)碼生成、PN碼等等。圖11-34是典型的LFSR結(jié)構(gòu)。由圖中可以看出LFSR由移位寄存器加上xor構(gòu)成,不同的xor決定了不同的生成多項(xiàng)式。圖11-34中的生成多項(xiàng)式為X3+X2+X0。(3)實(shí)驗(yàn)內(nèi)容:依據(jù)圖11-34設(shè)計(jì)一個(gè)LFSR,其生成多項(xiàng)式為X4+X3+X0。試在FPGA上加以實(shí)現(xiàn),并利用本章中提及的QuartusII優(yōu)化選項(xiàng),使之達(dá)到最高運(yùn)行速度,并在GW48EDA開發(fā)系統(tǒng)上,對(duì)其產(chǎn)生的碼序列進(jìn)行觀察。第51頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-2線性反饋移位寄存器設(shè)計(jì)(4)實(shí)驗(yàn)思考題1:另有一種LFSR的結(jié)構(gòu),見圖11-35,試分析與圖11-34中LFSR結(jié)構(gòu)的異同點(diǎn)。

(5)實(shí)驗(yàn)思考題2:對(duì)圖11-35結(jié)構(gòu)的LFSR電路進(jìn)行改進(jìn),設(shè)計(jì)成串行CRC校驗(yàn)碼發(fā)生器(提示:反饋線上加入xor,xor的一個(gè)輸入端接待編碼串行有效信息輸入)。(6)實(shí)驗(yàn)報(bào)告:作出本項(xiàng)實(shí)驗(yàn)設(shè)計(jì)的完整電路圖,詳細(xì)說明其工作原理,完成測(cè)試實(shí)驗(yàn)內(nèi)容,對(duì)實(shí)驗(yàn)中的碼序列進(jìn)行記錄,寫出電路可達(dá)到的最高運(yùn)行速度及設(shè)置的QuartusII選項(xiàng)。

第52頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-2線性反饋移位寄存器設(shè)計(jì)圖11-34LFSR舉例

第53頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-2線性反饋移位寄存器設(shè)計(jì)圖11-35另一種LFSR結(jié)構(gòu)

第54頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)(1)實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)利用EDA技術(shù)和FPGA實(shí)現(xiàn)直接數(shù)字頻率綜合器DDS的設(shè)計(jì)。(2)實(shí)驗(yàn)原理:直接數(shù)字頻率綜合技術(shù),即DDS技術(shù),是一種新型的頻率合成技術(shù)和信號(hào)產(chǎn)生方法。其電路系統(tǒng)具有較高的頻率分辨率,可以實(shí)現(xiàn)快速的頻率切換,并且在改變時(shí)能夠保持相位的連續(xù),很容易實(shí)現(xiàn)頻率、相位和幅度的數(shù)控調(diào)制。

fSIN=M(fclk/2n)

11-1第55頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)圖11-36DDS基本結(jié)構(gòu)

第56頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)圖11-37相位累加器位寬和采樣點(diǎn)關(guān)系

第57頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)【例11-12】LIBRARYieee;--波形數(shù)據(jù)ROMUSEieee.std_logic_1164.all;LIBRARYaltera_mf;USEaltera_mf.altera_mf_components.all;ENTITYdata_romIS PORT ( address :INSTD_LOGIC_VECTOR(9DOWNTO0); inclock :INSTD_LOGIC; q :OUTSTD_LOGIC_VECTOR(9DOWNTO0) );ENDdata_rom;... init_file=>"./data/LUT10X10.mif",--波形數(shù)據(jù)初始化文件路徑

lpm_hint=>"ENABLE_RUNTIME_MOD=YES,INSTANCE_NAME=rom2",...END;第58頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)【例11-13】LIBRARYIEEE;

--32位加法器模塊USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYADDER32BISPORT(A:INSTD_LOGIC_VECTOR(31DOWNTO0);B:INSTD_LOGIC_VECTOR(31DOWNTO0);S:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDADDER32B;ARCHITECTUREbehavOFADDER32BISBEGIN S<=A+B;ENDbehav;

第59頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)【例11-14】--32位寄存器模塊LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYREG32BISPORT(Load:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDREG32B;ARCHITECTUREbehavOFREG32BISBEGINPROCESS(Load,DIN)BEGINIFLoad'EVENTANDLoad='1'THEN--時(shí)鐘到來時(shí),鎖存輸入數(shù)據(jù)

DOUT<=DIN;ENDIF;ENDPROCESS;ENDbehav;第60頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)【例11-15】rom_data.mif10位正弦波數(shù)據(jù)文件,讀者可用MATLAB/DSPBuilder生成WIDTH=10;DEPTH=1024;ADDRESS_RADIX=DEC;DATA_RADIX=DEC;CONTENTBEGIN0:513;1:515;2:518;3:521;4:524;5:527;6:530;7:533;8:537;9:540;10:543;11:546;13:549;13:552;14:555;......(略去部分?jǐn)?shù)據(jù))

1018:493;1019:496;1020:499;1021:502;1022:505;1023:508;END;

第61頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)圖11-38DDS.vhd頂層原理圖

第62頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)圖11-39DDS.vhd仿真波形

第63頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)(3)實(shí)驗(yàn)內(nèi)容1:詳細(xì)述敘DDS的工作原理,依據(jù)例11-12至例11-15完成仿真,并由仿真結(jié)果進(jìn)一步說明DDS的原理。完成編譯和下載。選擇模式1;鍵2、鍵1輸入8位頻率字FWORD;利用GW48系統(tǒng)ADDA板上的10位D/A5651輸出波形,用示波器觀察輸出波形。(4)實(shí)驗(yàn)內(nèi)容2:根據(jù)圖11-36,在原設(shè)計(jì)(圖11-38)中加入相位控制電路,用鍵4、鍵3輸入8位相位字PWORD;重復(fù)實(shí)驗(yàn)1的內(nèi)容。(5)實(shí)驗(yàn)內(nèi)容3:將圖11-38的頂層原理圖表述為VHDL,重復(fù)實(shí)驗(yàn)1的內(nèi)容。(6)實(shí)驗(yàn)內(nèi)容4:在圖11-38的設(shè)計(jì)中增加一些元件,設(shè)計(jì)成掃頻信號(hào)源,掃頻速率、掃頻頻域、掃頻步幅可設(shè)置。

第64頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-3直接數(shù)字式頻率合成器(DDS)設(shè)計(jì)實(shí)驗(yàn)(7)實(shí)驗(yàn)內(nèi)容5:例11-12后的程序?qū)?2位頻率字和10位相位字作了截?cái)啵际?位。如果不作截?cái)?,修改其中的程序,并設(shè)法在GW48實(shí)驗(yàn)系統(tǒng)上完成實(shí)驗(yàn)(提示,增加2個(gè)鎖存器與單片機(jī)通信)。(8)實(shí)驗(yàn)內(nèi)容6:將上例改成頻率可數(shù)控的正交信號(hào)發(fā)生器,即使電路輸出兩路信號(hào),且相互正交,一路為正弦(sin)信號(hào),一路為余弦(cos)信號(hào)(此電路可用于正交方式的信號(hào)調(diào)制解調(diào))。(9)實(shí)驗(yàn)內(nèi)容7:利用上例設(shè)計(jì)一個(gè)FSK信號(hào)發(fā)生器,并硬件實(shí)現(xiàn)之。(10)思考題:如果不作截?cái)?,此例的頻率精度和相位精度分別是多少?

第65頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技11-4基于DDS的數(shù)字移相信號(hào)發(fā)生器設(shè)計(jì)實(shí)驗(yàn)

(1)實(shí)驗(yàn)原理:移相信號(hào)發(fā)生器是2003年大學(xué)生電子設(shè)計(jì)競(jìng)賽題中的一個(gè)設(shè)計(jì)項(xiàng)目。圖11-40是基于DDS模型的數(shù)字移相信號(hào)發(fā)生器的電路模型圖,示例程序如例11-16所示。(2)實(shí)驗(yàn)內(nèi)容1:完成10位輸出數(shù)據(jù)寬度的移相信號(hào)發(fā)生器的設(shè)計(jì),其中包括設(shè)計(jì)正弦波形數(shù)據(jù)MIF文件(數(shù)據(jù)深度1024、數(shù)據(jù)類型是十進(jìn)制數(shù));給出仿真波形。最后進(jìn)行硬件測(cè)試,對(duì)于GW48系統(tǒng),推薦選擇模式1:CLK接clock0,接13MHz;用鍵4、3控制相位字PWORD輸入,鍵2、1控制頻率字FWORD輸入。觀察它們的圖形和李薩如圖形。(3)實(shí)驗(yàn)內(nèi)容2:修改設(shè)計(jì),增加幅度控制電路(如可以用一乘法器控制輸出幅度)。(4)實(shí)驗(yàn)內(nèi)容3:將此信號(hào)發(fā)生器改成具有掃頻功能的波形發(fā)生器,掃速可數(shù)控,點(diǎn)頻掃頻可控。(5)實(shí)驗(yàn)思考題:如果頻率控制字寬度直接用32位,相位控制字寬度直接用10位,輸出仍為10位,時(shí)鐘為20MHz,計(jì)算頻率、相位和幅度三者分別的步進(jìn)精度是多少,給出輸出頻率的上下限。(6)實(shí)驗(yàn)報(bào)告:根據(jù)以上的實(shí)驗(yàn)要求、實(shí)驗(yàn)內(nèi)容和實(shí)驗(yàn)思考題寫出實(shí)驗(yàn)報(bào)告。

第66頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技圖11-40數(shù)字移相信號(hào)發(fā)生器電路模型圖

第67頁/共74頁實(shí)驗(yàn)與設(shè)計(jì)KX康芯科技【例11-16】數(shù)字移相信號(hào)發(fā)生器頂層設(shè)計(jì)文件,元件連接結(jié)構(gòu)參考圖11-40。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYDDS_VHDLIS--頂層設(shè)計(jì)

PORT(CLK:INSTD_LOGIC;--系統(tǒng)時(shí)鐘

FWORD:INSTD_LOGIC_VECTOR(7DOWNTO0);--頻率控制字

PWORD:INSTD_LOGIC_VECTOR(7DOWNTO0);--相位控制字

FOUT:OUTSTD_LOGIC_VECTOR(9DOWNTO0);--可移相正弦信號(hào)輸出

POUT:OUTSTD_LOGIC_VECTOR(9DOWNTO0));--參考信號(hào)輸出

END;ARCHITECTUREoneOFDDS_VHDLISCOMPONENTREG32B--32位鎖存器

PORT(LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDCOMPONENT;COMPONENTREG10B--10位鎖存器

PORT(LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(9DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(9DOWNTO0));ENDCOMPONENT;COMPONENTADDER32B--32位加法器

PORT(A:INSTD_LOGIC_VECTOR(31DOWNTO0);

溫馨提示

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