2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  實驗報告</b></p><p><b>  多功能數(shù)字鐘設(shè)計</b></p><p>  姓名 </p><p><b>  學號 </b></p><p><b>  班級 </b><

2、;/p><p><b>  一、實驗?zāi)繕耍?lt;/b></p><p>  1、掌握可編程邏輯器件的應(yīng)用開發(fā)技術(shù)——設(shè)計輸入、編譯、仿真和器件編程;</p><p>  2、熟悉EDA軟件使用;</p><p>  3、掌握Verilog HDL設(shè)計方法; </p><p>  4、分模塊、分層次數(shù)字系統(tǒng)

3、設(shè)計</p><p><b>  二、實驗任務(wù)及要求</b></p><p><b>  1、基本功能</b></p><p>  準確計時,以數(shù)字形式(十二進制)顯示時、分、秒的時間</p><p>  校正時間:時、分 快校與慢校(1Hz與手動)</p><p>  復(fù)位

4、:00:00:00</p><p>  仿廣播電臺正點報時 (四高一低)</p><p><b>  2、擴展功能: </b></p><p><b> ?。?)任意鬧鐘;</b></p><p> ?。?)小時為12/24進制可切換</p><p> ?。?)報正點數(shù)(幾點

5、響幾聲)</p><p><b>  三、實驗條件:</b></p><p>  DE0 實驗板結(jié)構(gòu)與使用方法 </p><p>  quartus軟件的使用 </p><p><b>  FPGA的使用</b></p><p><b>  四、電路設(shè)計過程:&l

6、t;/b></p><p><b>  1、需求分析</b></p><p>  開發(fā)背景:數(shù)字鐘是采用數(shù)字電路實現(xiàn)對.時,分,秒.數(shù)字顯示的計時裝置,廣泛用于個人家庭,車站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵?由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠遠超過老式鐘表, 鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便

7、,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究數(shù)字鐘及擴大其應(yīng)用,有著非?,F(xiàn)實的意義。</p><p><b>  2、 實驗原理:</b></p><p>  用層次化設(shè)計的方法以Verilog語言

8、編程實現(xiàn)以下功能:</p><p> ?。?)、具有“時”、“分”、“秒”計時功能;時為24進制,分和秒都為60進制。</p><p>  (2)、具有校時和清零功能,能夠用4Hz脈沖對“小時”和“分”進行調(diào)整,并可進行秒清零;實際電路中使用快校時。</p><p> ?。?)、具有整點報時功能。在59分51秒、53秒、55秒、57秒發(fā)出低音512Hz信號,在59分

9、59秒發(fā)出一次高音1024Hz信號,音響持續(xù)1秒鐘,在1024Hz音響結(jié)束時刻為整點。在實際電路中使用LED燈實現(xiàn)四低使用用LED1,高音另一個LED燈顯示。</p><p> ?。?)、具有一鍵設(shè)定鬧鈴及正常計時與鬧鈴時間的顯示轉(zhuǎn)換。鬧時時間為一分鐘。</p><p><b>  3、模塊設(shè)計分析</b></p><p>  整體電路分為兩塊

10、,主體電路和擴展電路分別實現(xiàn)基本功能和擴展的功能。</p><p> ?。?)、主體電路設(shè)計:</p><p> ?。?)時分秒計數(shù)器需求分析:</p><p>  分和秒計數(shù)器都是模M=60的計數(shù)器 其計數(shù)規(guī)律為00—01—…—58—59—00… </p><p><b>  時計數(shù)器:</b></p>

11、<p>  若采用24小時制:計數(shù)器為24進制,其計數(shù)規(guī)律為 00—01……—02—23—00….</p><p>  若采用12小時制:計數(shù)器為12進制,其計數(shù)規(guī)律為 01—02……—12—01….</p><p>  24小時制:當數(shù)字鐘運行到23時59分59秒時,秒的個位計數(shù)器再輸入一個秒脈沖時,數(shù)字鐘應(yīng)自動顯示為00時0

12、0分00秒。</p><p>  12小時制:當數(shù)字鐘運行到12時59分59秒時,秒的個位計數(shù)器再輸入一個秒脈沖時,數(shù)字鐘應(yīng)自動顯示為01時00分00秒。</p><p><b>  4、邏輯分析:</b></p><p>  主體電路由兩個60進制計數(shù)器、一個24進制計數(shù)器、兩個二選一數(shù)據(jù)選擇器、分頻器,7端譯碼顯示器共7個模塊組成。分頻器將

13、系統(tǒng)內(nèi)置的50MHz的信號分成4Hz的信號輸出CP,是數(shù)字能穩(wěn)定的在數(shù)碼管上顯示。3個計數(shù)器共用一個時鐘信號CP,為同步8421BCD碼輸出的計數(shù)器。具體實現(xiàn)如下圖:</p><p>  1 1</p><p><b>  EN</b></p><p>  MCoM EN SC

14、o EN</p><p>  校時控制Adj_Hour 校分控制Adj_Min </p><p> ?。╝djust_Time) (adjust_Time)</p><p>  圖中連個選擇器分別用于選擇分計數(shù)器和是計數(shù)器的使能控制信號。對時間進行校正時,先選擇校時模式,在adjust_Time=1時,在

15、控制端(Adj_Hour、Adj_Min)的作用下,使能信號接高電平,此時每來一個時鐘信號,計數(shù)器加1,從而實現(xiàn)對小時和分鐘的校正。正常計時時,使能信號來自每一位的低位計數(shù)器的輸出,即秒計數(shù)器到59秒時,產(chǎn)生一個輸出信號(Sco=1)使分計數(shù)器加1,分秒計數(shù)器同時計到最大值時,產(chǎn)生輸出信號(Mco=1)使小時計數(shù)器加1。</p><p>  實現(xiàn)上述功能的Verilog的程序如下:整個程序2分為兩個層次4個模塊,

16、底層由3個模塊組成,即六進制計數(shù)模塊、十進制計數(shù)模塊、和24進制計數(shù)模塊、頂層有一個模塊,他調(diào)用底層的3個模塊完成數(shù)字鐘的計時功能,其中,底層的六進制模塊,和十進制模塊分別被調(diào)用兩次,構(gòu)成60進制的秒計數(shù)器和分計數(shù)器。</p><p><b>  5、各模塊接口規(guī)定</b></p><p><b>  6、程序分析:</b></p>

17、<p> ?。?)、六進制計數(shù)模塊</p><p>  nCR為復(fù)位端口,當nCR 為0是,輸出為0,EN為使能端,只有當EN為1時,計數(shù)器才在CP的作用下加1。</p><p>  module counter6(Q,nCR,EN,CP);</p><p>  input CP,nCR,EN;</p><p>  output[

18、3:0] Q;</p><p>  reg [3:0] Q;</p><p>  always@(posedge CP or negedge nCR)</p><p><b>  begin </b></p><p>  if(~nCR) Q<=4'b0000;</p><p>  

19、else if(~EN) Q<=Q;</p><p>  else if(Q==4'b0101) Q<=4'b0000;</p><p>  else Q<=Q+1'b1;</p><p><b>  end</b></p><p><b>  endmodule<

20、;/b></p><p><b>  仿真波形如下:</b></p><p> ?。?)、十進制模塊和六進制的思想一樣</p><p>  module counter10(Q,nCR,EN,CP);</p><p>  input CP,nCR,EN;</p><p>  output[3

21、:0] Q;</p><p>  reg [3:0] Q;</p><p>  always@(posedge CP or negedge nCR)</p><p><b>  begin </b></p><p>  if(~nCR) Q<=4'b0000;</p><p>  e

22、lse if(~EN) Q<=Q;</p><p>  else if(Q==4'b1001) Q<=4'b0000;</p><p>  else Q<=Q+1'b1;</p><p><b>  end</b></p><p><b>  endmodule<

23、/b></p><p><b>  仿真波形如下:</b></p><p>  (3)、24進制模塊 </p><p>  由于擴展功能里有12和24模式的切換,所以設(shè)置一模式控制端口Sel,當Sel=1時為12進制模式,當Sel=0時為24進制模式。12和24進制的思想是一樣的。以24進制為例,在nCR和EN有效時,當時鐘高位大于2或分

24、鐘高位大于9或者時鐘大于等于23時,時鐘高位HourH置0,低位HourL置1;如果(HourH==2)和(HourL<3)成立則高位不變,低位加1;其余的如果HourL==9;高位加1,低位置0;剩下的情況高位不變,低位加1。</p><p>  module counter24(HourH,HourL,nCR,EN,CP,Sel);</p><p>  input CP,nCR,

25、EN,Sel;</p><p>  output[3:0] HourH,HourL;</p><p>  reg [3:0] HourH,HourL;</p><p>  always@(posedge CP or negedge nCR)</p><p><b>  begin</b></p><p

26、>  if(~nCR) {HourH,HourL}<=8'h00 ; 復(fù)位</p><p>  else if(~EN) {HourH,HourL}<={HourH,HourL}; 使能</p><p>  else if(Sel==1) 模式選擇</p><p>  begin

27、 12進制</p><p>  if((HourH>1)||(HourL>9)||((HourH==1)&&(HourL>=2))) </p><p>  begin HourH<=4'b0000;HourL<=4'b0001;end</p><p>  else if((Ho

28、urH==1)&&(HourL<2))</p><p>  begin HourH<=HourH; HourL<=HourL+1'b1; end</p><p>  else if(HourL==9)</p><p>  begin HourH<=HourH+1'b1; HourL<=4'b000

29、0; end</p><p><b>  else</b></p><p>  begin HourH<=HourH; HourL<=HourL+1'b1; end</p><p><b>  end</b></p><p><b>  else </b>&

30、lt;/p><p>  begin 24 進制</p><p>  if((HourH>2)||(HourL>9)||((HourH==2)&&(HourL>=3))) {HourH,HourL}<=4'b0000;</p><p>  else if((HourH==2)&&a

31、mp;(HourL<3))</p><p>  begin HourH<=HourH; HourL<=HourL+1'b1; end</p><p>  else if(HourL==9)</p><p>  begin HourH<=HourH+1'b1; HourL<=4'b0000; end</p&g

32、t;<p><b>  else</b></p><p>  begin HourH<=HourH; HourL<=HourL+1'b1; end</p><p><b>  end</b></p><p><b>  end</b></p><p

33、><b>  endmodule</b></p><p><b>  仿真波形如下:</b></p><p>  (4)、分頻成1Hz模塊</p><p>  由于系統(tǒng)供給時鐘為50MHz時鐘,為保證系統(tǒng)計數(shù)結(jié)果清晰可辨,可設(shè)計分頻模</p><p>  塊clk1hz(clk,CP),先將系

34、統(tǒng)50MHz時鐘clk(50MHz)分頻為1Hz時鐘。由于50M可以使用32位二進制來表示,定義clk為輸入的50MHz時鐘</p><p>  module fenpin(clk,CP);</p><p>  input clk;</p><p>  output CP;</p><p><b>  reg CP;</b&g

35、t;</p><p><b>  initial</b></p><p><b>  begin</b></p><p>  CP<=1'b0;clk1<=32'd0;</p><p><b>  end</b></p><p&g

36、t;  reg[31:0] clk1; //可以通過調(diào)節(jié)25000000的數(shù)值來調(diào)節(jié)輸出的頻率大小</p><p>  always @(posedge clk)</p><p>  if(clk1==32'd25000000) begin clk1<=32'd0; CP<=~CP; end</p><p>  else clk

37、1<=clk1+1'b1;</p><p>  endmodule </p><p>  由于這個仿真的時鐘頻率大,沒有在波形里顯示:</p><p>  (5)、整點報時和仿電臺報時模塊</p><p>  將時分秒輸入,因為沒有使用蜂鳴器,所用的報時均用LED燈來顯示,四聲低音時在51秒、53秒、57秒、59秒、D

38、亮;0時G亮;根據(jù)輸入的Hour的數(shù)值使整點報時的燈Voice亮Hour下,9點閃爍9下。整點報時時控制燈閃爍的頻率和秒的頻率一樣,為了實現(xiàn)閃爍必需有兩倍的Hour數(shù)值的脈沖,設(shè)置變量N來實現(xiàn)計數(shù),每次在00分00秒時,將兩倍的Hour數(shù)值賦給n,每來一個脈沖就減1,直至n=0時,正好有2*Hour個脈沖,燈Voice可閃爍相應(yīng)的次數(shù)。</p><p>  module baoshi(Second,Minute

39、,Hour,D,G,Voice,CP);</p><p>  input [7:0] Second,Minute,Hour;</p><p><b>  input CP;</b></p><p>  output D,G;</p><p>  output Voice;</p><p><

40、b>  reg D,G;</b></p><p>  reg [7:0] n;</p><p>  reg Voice;</p><p><b>  initial</b></p><p>  begin n=8'h0;Voice=0; end</p><p><

41、;b>  always</b></p><p><b>  begin</b></p><p>  if(((Minute==8'h59)&&(Second[7:4]==4'h5))&&</p><p>  ((Second[3:0]==4'h0)||(Second[3:

42、0]==4'h2)||(Second[3:0]==4'h4)||(Second[3:0]==4'h6)))</p><p><b>  D<=1'b1;</b></p><p>  else if((Minute==8'h59)&&(Second[7:4]==4'h5)&&Secon

43、d[3:0]==4'h8)</p><p><b>  G<=1'b1;</b></p><p>  else begin G<=1'b0;D<=1'b0;end </p><p><b>  end</b></p><p>  always@(p

44、osedge CP)</p><p><b>  begin</b></p><p>  if((Minute==8'h00)&&(Second==8'h00)) n<=Hour+Hour;</p><p>  if((Minute==8'h00)&&(n>8'd0)

45、) begin Voice<=~Voice;n<=n-1'b1; end</p><p>  else Voice<=0; </p><p><b>  end</b></p><p><b>  endmodule</b></p><p><b>  仿真

46、波形如下:</b></p><p><b>  仿電臺報時:</b></p><p><b>  整點報時:</b></p><p>  (6)、鬧鐘設(shè)置模塊</p><p>  設(shè)置一個控制端來控制鬧鐘的顯示和鬧鐘的設(shè)置Display_A,當Display_A=1時,進入鬧鐘模式,此時

47、數(shù)碼管上顯示的為鬧鐘的時間,為方便鬧鐘的設(shè)置依然使用Adj_Min,Adj_Hour控制端。因為鬧鐘同樣要滿足分鐘的60進制和時鐘24 進制,所以在alarm_Set模塊中調(diào)用底層的counter10,counter6,counter24,模塊來實現(xiàn)鬧鐘的設(shè)置。并將所設(shè)置的鬧鐘時間保存在A_Hour,A_Minute中表示鬧鐘的時間。并將其作為輸出,以便后續(xù)的使用。</p><p>  module alarm_

48、Set(Adj_Min,Adj_Hour,CP,nCR,Display_A,A_Hour,A_Minute);</p><p>  input CP,nCR,Adj_Min,Adj_Hour,Display_A;</p><p>  output [7:0] A_Hour,A_Minute;</p><p>  // 在鬧鐘的控制端Display_A&&am

49、p;Adj_Min同時為1時鬧鐘計時</p><p>  counter10 A1(A_Minute[3:0],nCR,(Display_A&&Adj_Min),CP);</p><p>  counter6 A2(A_Minute[7:4],nCR,(Display_A&&Adj_Min&&A_Minute[3:0]==4'h

50、9),CP);</p><p>  counter24 A3(A_Hour[7:4],A_Hour[3:0],nCR,(Adj_Hour&&Display_A),CP,Sel);</p><p><b>  endmodule</b></p><p><b>  (7)、鬧鈴模塊</b></p>

51、;<p>  同時將時分鐘和鬧鐘的時分輸入進行比較,如果二者對應(yīng)相等且鬧鈴設(shè)置alarm_On為0(默認下鬧鈴為開狀態(tài)),則鬧鐘提示燈A持續(xù)亮一分鐘。一分鐘的時間有秒鐘頻率來控制。</p><p>  module alarm (Hour,Minute,A_Hour,A_Minute,Second,A,CP,alarm_On);</p><p>  input [7:0] H

52、our,Minute,A_Hour,A_Minute,Second;</p><p>  input CP,alarm_On;</p><p><b>  output A;</b></p><p><b>  reg A;</b></p><p>  always @(posedge CP)<

53、;/p><p>  if ((Hour==A_Hour) && (A_Minute==Minute)&&(alarm_On==0))</p><p>  begin if(Second<=8'h59) A<=1'b1;</p><p>  else A<=1'b0;</p><

54、;p><b>  end</b></p><p>  else A<=1'b0;</p><p><b>  endmodule</b></p><p><b>  (8)、顯示模塊</b></p><p>  由于要切換時鐘和鬧鐘模式,所以由鬧鐘的控制端口

55、來決定顯示的模式,當Disply_A為1時,即為鬧鐘模式,顯示鬧鐘時間;Disply_A為0時,即為時鐘模式,顯示時鐘時間。程序中Q1為時鐘信息,Q2為鬧鐘的信息。</p><p>  module display(Q1,Q2,Display_A,OUT);</p><p>  input[3:0] Q1,Q2;</p><p>  input Display_A;

56、</p><p>  output[6:0] OUT;</p><p>  reg[6:0] OUT;</p><p>  wire [3:0] Q;</p><p>  assign Q=(Display_A==1) ? Q2[3:0] : Q1[3:0] ; //鬧鐘和時鐘的選擇</p><p>  always

57、 @(Q)</p><p>  case(Q[3:0])</p><p>  4'd0: OUT<=7'b0000_001;</p><p>  4'd1: OUT<=7'b1001_111;</p><p>  4'd2: OUT<=7'b0010_010;</p>

58、;<p>  4'd3: OUT<=7'b0000_110;</p><p>  4'd4: OUT<=7'b1001_100;</p><p>  4'd5: OUT<=7'b0100_100;</p><p>  4'd6: OUT<=7'b1100_000;&

59、lt;/p><p>  4'd7: OUT<=7'b0001_111;</p><p>  4'd8: OUT<=7'b0000_000;</p><p>  4'd9: OUT<=7'b0001_100;</p><p>  default: OUT<=7'b00

60、00_001;</p><p><b>  endcase</b></p><p>  endmodule </p><p><b>  (9)、頂層模塊</b></p><p><b>  調(diào)用所有的底層模塊</b></p><p>  modu

61、le clock_top(out_MinL,out_MinH,out_HourL,out_HourH,clk,nCR,EN,Adj_Min,Adj_Hour,adjust_Time,SEC,D,G,A,Sel,Voice,alarm_On,Display_A);</p><p>  input clk,nCR,EN,Adj_Min,Adj_Hour,Sel,Display_A,adjust_Time,alarm_

62、On;</p><p>  output [6:0] out_MinL,out_MinH,out_HourL,out_HourH;</p><p>  output SEC;</p><p>  output D,G,Voice,A;</p><p>  wire [7:0] Hour,Second,Minute,A_Hour,A_Minu

63、te;</p><p>  wire MinL_EN,MinH_EN,Hour_EN;</p><p>  wire [6:0] out_MinL,out_MinH,out_HourL,out_HourH;</p><p>  wire D,G,Sel,A;</p><p>  fenpin U0(CP,clk);</p>

64、;<p>  counter10 U1(Second[3:0],nCR,EN,CP); //秒鐘的60進制</p><p>  counter6 U2(Second[7:4],nCR,(Second[3:0]==4'h9),CP);</p><p>  assign SEC=Second[0]; 秒鐘以LED來顯示</p><p>  /

65、/分鐘低位的使能端,滿足條件才計數(shù)</p><p>  assign MinL_EN=((Adj_Min==1)&&(adjust_Time==1)) || (Second==8'h59);</p><p>  //分鐘高位的使能端,滿足條件才計數(shù)</p><p>  assign MinH_EN=(Adj_Min&&(adj

66、ust_Time==1)&&(Minute[3:0]==4'h9))||((Minute[3:0]==4'h9)&&(Second==8'h59)&&(Adj_Min==0));</p><p>  counter10 U3(Minute[3:0],nCR,MinL_EN,CP); //分鐘的60進制</p><p>

67、  counter6 U4(Minute[7:4],nCR,MinH_EN,CP);</p><p><b>  assign</b></p><p>  Hour_EN=((Adj_Hour==1)&&(adjust_Time==1))||((Minute==8'h59)&&(Second==8'h59)); <

68、;/p><p>  counter24 U5(Hour[7:4],Hour[3:0],nCR,Hour_EN,CP,Sel); //時鐘的24進制</p><p>  baoshi U11(Second[7:0],Minute[7:0],Hour[7:0],D,G,Voice,CP);</p><p>  alarm_Set U12(Adj_Min,Adj_Hour

69、,CP,nCR,Display_A,A_Hour,A_Minute);</p><p>  alarm U13(Hour,Minute,A_Hour,A_Minute,Second,A,CP,alarm_On);</p><p><b>  //顯示模塊的調(diào)用</b></p><p>  display U6(Minute[3:0],A_M

70、inute[3:0],Display_A,out_MinL);</p><p>  display U7(Minute[7:4],A_Minute[7:4],Display_A,out_MinH);</p><p>  display U8(Hour[3:0],A_Hour[3:0],Display_A,out_HourL);</p><p>  display U

71、9(Hour[7:4],A_Hour[7:4],Display_A,out_HourH);</p><p><b>  endmodule</b></p><p>  為各個輸入輸出接口分配引腳,如下,使其在實驗板上的數(shù)碼管上顯示結(jié)果。</p><p><b>  整個實驗通過驗收。</b></p><

72、p><b>  五、調(diào)試過程</b></p><p><b>  1、調(diào)試步驟</b></p><p> ?、湃绻绦蚓幾g出錯,可以根據(jù)錯誤提示找出錯誤,這類錯誤比較容易解決。比如某一行少一個“;”之類的。</p><p> ?、迫绻幾g通過,再進行仿真,通過仿真波形來判斷程序是否出現(xiàn)了邏輯性的錯誤,這些需要仔細的研

73、究仿真波形,才能看出錯誤的所在。</p><p> ?、欠抡婧?,確定仿真波形和程序沒有問題,再進行引腳的分配,引腳分配后,編譯,再燒寫到DE0板上,如果出現(xiàn)錯誤,返回引腳分配,找出錯誤所在。</p><p> ?、仍贒E0實驗板上運行程序時,碰到一些功能與設(shè)計不符,或者產(chǎn)生了競爭冒險等問題的時候,應(yīng)該對程序進行查錯和對時序的優(yōu)化,通過不斷的改進和優(yōu)化程序,最終得到的程序才符合要求。<

74、/p><p>  2、調(diào)試中碰到的問題及解決方法</p><p> ?。?)、用Quartus自帶的波形仿真器時,必須在仿真前,將自己編寫的波形文件設(shè)置為頂層文件,不然的話,仿真結(jié)果將是高阻態(tài)。</p><p>  (2)、在編寫代碼時,對于一些比較不常用的verilog語法不是很熟練。犯了一些語法錯誤,比如在寫Disply模塊時,未把Q設(shè)置成4位的二進制數(shù),只是簡單的

75、說明了一下wire Q結(jié)果在顯示時,一直出現(xiàn)0,1跳變,無法正常顯示計數(shù)。</p><p>  但在編譯時,并沒有報錯。在反復(fù)檢查程序時才發(fā)現(xiàn),應(yīng)該把Q定義為4位的。更改之后出現(xiàn)了正確的顯示。</p><p><b>  六、實驗小結(jié):</b></p><p>  通過這次設(shè)計,既復(fù)習了以前所學的知識,也進一步加深了對EDA的了解,掌握了EDA

76、設(shè)計的基本流程(即設(shè)計輸入—編譯—調(diào)試—仿真—下載),領(lǐng)會了自頂而下結(jié)構(gòu)化設(shè)計的優(yōu)點,并具備了初步的EDA程序設(shè)計能力。讓我對它有了更加濃厚的興趣。特別是當每一個子模塊編寫調(diào)試成功時,心里特別的開心。這個程序最難的地方在于頂層模塊的設(shè)計,因為頂層模塊需要將各個子模塊按照電路原理有機地結(jié)合起來,這需要扎實的理論功底,而這正是我所欠缺的。相比而言,子模塊的設(shè)計就容易多了,因為Verilog語言和C語言有很多相似之處,只要明白了實驗原理,就不

77、難完成,水平的高下只體現(xiàn)在程序的簡潔與否。Verilog源程序的編寫很容易出現(xiàn)錯誤,這就需要耐心的調(diào)試。因為很多情況下,一長串的錯誤往往是由一個不經(jīng)意的小錯誤引起的。當程序?qū)艺{(diào)屢錯的時候,最好和其他同學溝通交流一下,他們不經(jīng)意的一句話,就可能給我啟發(fā),使問題迎刃而解。</p><p>  在波形仿真時,也遇到了一點困難,想要的結(jié)果不能在波形上得到正確的顯示。還有的仿真圖根本就不出波形,怎么調(diào)節(jié)都不管用,后來直接就

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論