VHDL實驗報告一位半加器全加器的設計_第1頁
VHDL實驗報告一位半加器全加器的設計_第2頁
VHDL實驗報告一位半加器全加器的設計_第3頁
VHDL實驗報告一位半加器全加器的設計_第4頁
VHDL實驗報告一位半加器全加器的設計_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

VHDL實驗報告一位半加器全加器的設計現在是1頁\一共有17頁\編輯于星期一二、實驗目的1、掌握一位二進制半加器與全加器的原理。2、進一步熟悉QUARTUSII軟件的使用方法和VHDL輸入。3、掌握元件例化語句的使用。4、學習從設計文件到模塊符號的創建過程。現在是2頁\一共有17頁\編輯于星期一三、實驗原理

(1)半加器兩輸入,兩輸出。其電路是指對兩個輸入數據位相加,輸出一個結果位和進位,沒有進位輸入的加法器電路。是實現兩個一位二進制數的加法運算電路。其真值如下圖所示(S為和輸出,C為進位輸出):現在是3頁\一共有17頁\編輯于星期一三、實驗原理

(2)全加器三輸入,兩輸出。其電路是在半加器的基礎上加了個進位輸入的加法。其真值表如下圖所示:現在是4頁\一共有17頁\編輯于星期一三、實驗原理

(3)由數字電路知識可知,一位全加器可由兩個一位半加器與一個或門構成,其原理圖如下圖所示。故可采用元件例化語句來實現一位全加器。現在是5頁\一共有17頁\編輯于星期一四、實驗內容

在本實驗中,征對半加器時,用兩個撥動開關來表示半加器的兩個輸入(A、B),用兩個LED來表示半加器的兩個輸出(S、C)。

對于全加器時,其設計利用層次結構描述法,首先設計半加器電路,將其打包為半加器模塊;然后在頂層調用半加器模塊組成全加器電路;最后將全加器電路編譯下載到實驗箱,其中用三個撥動開關來表示全加器的三個輸入(Ai、Bi、Ci-1),用兩個LED來表示全加器的兩個輸出(Si、Ci)。

實驗箱上撥動開關檔位在下方時表示其輸出為低電平,反之輸出市電平;當FPGA與其對應的端口為高電平時LED就會發光,反之LED燈滅。其撥動開關與FPGA管腳的連接表以及LED燈與FPGA管腳連接表如下兩圖所示:現在是6頁\一共有17頁\編輯于星期一五、實驗步驟1、建立工程文件

1)運行QUARTUSII軟件。

2)選擇軟件中的菜單File>NewProjectWizard,新建一個工程。

3)點擊NEXT進入工作目錄,設定工程名和實體名。

4)點擊NEXT,進入下一設定對話框,(本次實驗選用CycloneII系列芯片EP2C35F672C8),在對話框的左上方的Family下拉菜單中選取CycloneII,在中間右邊的Pincount下拉菜單中選取672,在Speedgrade下拉菜單中選取8,在左下方的Availabledevices框中選取EP2C35F672C8。點擊NEXT完成器件的選取,進入EDATOOL設定界面。

5)按默認選項,點擊NEXT出現新建工程以前所有的設定信息,再點擊FINISH完成新建工程的建立。(一)半加器的設計現在是7頁\一共有17頁\編輯于星期一五、實驗步驟2、建立文本設計文件

1)選擇File--New--DeviceDesignFiles--VHDLFile,點擊OK按鈕,打開進入文本編輯器對話框。

2)在文本編輯器中輸入對應VHDL程序代碼,如下圖所示:

3)對文本文件進行編譯。選擇processing--compilertool--start或直接點快捷欄上的三角形則會出現編譯器窗口。需要說明的是在進行設計文件的綜合和分析,也可以單獨打開某個分析綜合過程不必進行全編譯界面。當完成上述窗口的設定后,點擊START按鈕進行設計文件的全編譯。如果文件有錯,在軟件的下方則會提示錯誤的原因和位置,以便于使用者進行修改直到設計文件無錯。整個編譯完成,軟件會提示編譯成功。(一)半加器的設計現在是8頁\一共有17頁\編輯于星期一五、實驗步驟3、管腳分配

1)點擊Assignments菜單下面的AssignmentEditor,進入到引腳分配窗口。將彈出的窗口中的All改成pin,再點擊List,在NodesFound窗口會出現所有信號的名稱,點擊中間的按鈕則SelectedNodes窗口下方出現被選擇的端口名稱。雙擊OK按鈕,完成設置。進入管腳分配窗口。如下圖所示:

2)依照“硬件與FPGA的管腳連接表”分配對應的輸入管腳名,依照“LED燈與FPGA管腳連接表”分配對應的輸出管腳名。本次實驗的分配關系是:(輸入端a、b分別對應的FPGA管腳名為H8、J8,輸出端c、s分別對應的FPGA管腳名為G13、G15),如下圖所示:

3)分配完管腳后,再次進行一次全編譯,使分配的管腳有效。(一)半加器的設計現在是9頁\一共有17頁\編輯于星期一五、實驗步驟4、對設計文件進行仿真

1)選擇File--New,在彈出的對話框中選擇VectorWaveformFile,點擊OK按鈕,打開進入一個空的波形編輯器窗口。

2)設置仿真結束時間,波形編輯器默認的仿真結束時間為1μS,根據仿真需要,可以自由設置仿真的結束時間(本次設置的為1ms)。選擇QUARTUSII軟件的Edit--EndTime命令,彈出線路束時間對話框,在Time框辦輸入仿真結束時間,點擊OK按鈕完成設置。如下圖所示:

3)加入輸入、輸出端口,在波形編輯器窗口左邊的端口名列表區點擊鼠標右鍵,在彈出的右鍵菜單中選擇InsertNodeorBus…命令,在彈出的InsertNodeorBus對話框界面中點擊NodeFinder…按鈕。在出現的NodeFinder界面中的Filter列表中選擇點擊List,在NodesFound窗口出現所有信號的名稱,點擊中間的按鈕則SelectedNodes窗口下方出現被選擇的端口名稱。雙擊OK按鈕,完成設置,回到InsertNodeorBus對話框,雙擊OK按鈕,所有的輸入、輸出端口將會在端口名列表區內顯示出來。(一)半加器的設計現在是10頁\一共有17頁\編輯于星期一五、實驗步驟4、對設計文件進行仿真

4)編輯輸入端口波形,即指定輸入端口的邏輯電平變化,在波形編輯窗口中,選擇要輸入波形的輸入端口。以b端口為例,右鍵單擊b,依次選擇value--clock--period,將時間改為1us。然后重復此過程將a的時間改成2us(a的周期是b的2倍),再將輸入端的D0--D3選擇不同的周期(一次要有所差別)。最后選擇軟件的Fie>Save進行保存。

5)指定仿真器設置,在仿真過程中有時序仿真和功能仿真之分,在這里介紹功能仿真。在QUARTUSII軟件中選擇Processing>SimulatorTool命令,打開仿真器工具窗口,如下圖所示。

按圖上的提示,首先產生功能仿真網表文件(在simulationmode后選擇Functional),點擊產生功能仿真網表的按鈕GenerateFunctionalSimulationNetlist,產生功能仿真網表,然后點擊開始仿真的START按鈕開始進行仿真,直到仿真進度條為100%完成仿真。點擊仿真報告窗口按鈕Report,觀察仿真波形。確定其符合實驗內容。實驗仿真波形如下所示:(一)半加器的設計現在是11頁\一共有17頁\編輯于星期一五、實驗步驟6、從設計文件到目標器件的加載

完成對器件的加載有兩種形式,一種是對目標器件進行加載文件,一種是對目標器件的配置芯片進行加載。這里我們介紹對目標器件EP2C35F672C8進行加載的方法。

1)使用下載電纜將PC機與實驗系統連接起來。

2)選擇QUARTUSII軟件的Tools>Programmer命令,進行編程器窗口。如果沒有設置編程硬件,則編程硬件類型為NoHardware,需要對編程硬件進行設置。點擊HardwareSetup…編程硬件設置按鈕,進行如下圖所示的編程硬件設置對話框。

3)點擊AddHardware按鈕,出現AddHardware對話框,在AddHardware對話框中,從Hardwaretype列表中選擇所需要硬件類型,如果是USB接口的請參照用戶使用手冊中的USB電纜的安裝與使用,如果使用的是并口下載線則選取如下圖所示的硬件類型,點擊OK按鈕,完成對硬件類型的設置。回到編程器硬件設置窗口,點擊Close按鈕退出設置。則在編程器對話框中的編程硬件類型會出現剛才選取的編程器硬件。

4)此次實驗室所用的安裝驅動的方式為:右鍵“我的電腦”--設備管理器--雙擊有黃色問號通用USB--驅動程序--更新驅動程序--從列表或安裝……--下一步--下一步--從磁盤安裝--瀏覽--在我的電腦D盤中選擇找到USBbluster即可安裝好驅動。

5)如果軟件已運行一個工程,則在打開編程器的時候,編程器窗口會自動出現這個工程文件要加載到目標器件的文件,如果要加載其它文件可以從其它地方進行添加更改。選好加載文件后,再點選Progam/Configure,編程模式選取JTAG模式,點擊STRAT進行文件加載,直到加載進度變為100%,文件成功加載完成。(一)半加器的設計現在是12頁\一共有17頁\編輯于星期一五、實驗步驟1、建立工程文件(步驟同“半加器的設計”)2、建立文本設計文件

全加器的設計采用“元件例化語句”,故需建立兩個VHDL文本編輯對話框(一個頂層文件,一個底層文件)。在相應的編輯框中輸入相應的VHDL語句,再分別以各自的實體名進行保存。注意的是頂層文件名應必須與工程名一致。此次實驗底層文件為半加器VHDL語句,頂層文件為全加器VHDL語句,其語句分別如下兩圖所示:接下來的步驟與“半加器的設計”步驟一樣。(二)全加器的設計現在是13頁\一共有17頁\編輯于星期一五、實驗步驟3、管腳分配

主要步驟同“半加器的設計”。

本次實驗全加器的本次實驗的分配關系是:(輸入端a、b、Ci分別對應的FPGA管腳名為H8、J8、J9,輸出端s、ci分別對應的FPGA管腳名為G13、G15),如下圖所示:(二)全加器的設計現在是14頁\一共有17頁\編輯于星期一五、實驗步驟4、對設計文件進行仿真(步驟同“半加器的設計”)

全加器中Ci的周期是b的兩倍,b的周期是a的兩倍。實驗仿真波形如下所示:5、從設計文件到目標器件的加載(步驟同“半加器的設計”)(二)全加器的設計現在是15頁\一共有17頁\編輯于星期一五、實驗步驟

實驗要求創建文件時底層文件用文本輸入,頂層文件用圖形輸入,即需要將底層的已經設計好的文本文件生成一個模塊符號文件作為自己的功能模塊符號在頂層調用,該符號就像圖形設計文件中的任何其它宏功能符號一樣可被高層設計重復調用。

其方法為:在建立的文本文件(VHDL半加器代碼)中,選擇Create/Update--CreateSymbolforCurrentFile,點擊確定,即可創建一個代表剛才打開的設計文件功能的符號(.bsf)。模塊文件創建完成后,再新建一個圖形編輯文件,打開圖形編輯器對話框。在圖形編輯器窗呂的工件區雙擊鼠標左鍵,或點擊圖中的符號工具按鈕,或選擇菜單Edit--InsertSymbol...。在Symbo對話框中的Project項下會出現前面創建的半加器模塊符號文件,我們就可以對其進行調用。本次實驗要用到兩個半加器模塊和一個或門模塊,再對其連接起來,并定義端口。結果如下圖所示:

其它步驟均與“全加器的設計”步驟相同。此處不再一一贅述。(三)補充“全加器的設計”。從設計文件到模塊符號的創建。現在是16頁\一共有17頁\編輯于星期一六、實驗現象及結果(一)半加器

本次實驗我分別用實驗箱上的開關K1、K2作為半加器兩輸入A、B;分別用LED彩燈LED1、LED2作為半加器的兩個輸出端S、C。實驗時將實驗箱的撥動開關撥向下時為低電平“0”。撥向上時為高電平“1”,LED高電平時燈亮,低電平時燈滅。以下第一幅圖即為輸入為“00”時輸出為“00”;第二幅圖則是當輸入為“01”時輸出為“10”;第三幅圖是輸入為“10”時輸出為“10”;第四

溫馨提示

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

評論

0/150

提交評論