基於VHDL語言的多人表決器的設計

基於VHDL語言的多人表決器設計

實驗原理

​ 用七個開關作爲表決器的7個輸入變量,輸入變量爲邏輯“1”時表示表決者“贊同”;輸入變量爲邏輯“0”時,表示表決者“不贊同”。輸出邏輯“1”時,表示表決“通過”;輸出邏輯“0”時,表示表決“不通過”。當表決器的七個輸入變量中有4個以上(含4個)爲“1”時,則表決器輸出爲“1”;否則爲“0”。

​ 七人表決器設計方案很多,比如用多個全加器採用組合電路實現。用VHDL語言設計七人表決器時,也有多種選擇。我們可以用結構描述的方式用多個全加器來實現電路,也可以用行爲描述。採用行爲描述時,可用一變量來表示選舉通過的總人數。當選舉人大於或等於4時爲通過,綠燈亮;反之不通過時,黃燈亮。描述時,只須檢查每一個輸入的狀態(通過爲“1”,不通過爲“0”),並將這些狀態值相加,判斷狀態值和即可選擇輸出。

設計思路:

本設計採用多個全加器實現組合電路,用七個開關作爲表決器的七個輸入變量,邏輯“1”時表示“贊同”,邏輯“0”時表示“不贊同”,用發光二極管作爲輸出指令,輸出邏輯“1”表示“通過”;輸出邏輯“0”時表示“不通過”。當表決器的七個輸入變量中的4個以上(包含4個)爲“1”時,則表決器輸出爲“1” ,綠燈亮;否則爲“0”綠燈不亮。

軟件說明:ModelSimSetup-13.1.0.162,QuartusSetup-13.1.0.162。

建立工程:

第一步:打開Quartus軟件。

第二步:點擊New Project Wizard -> next.

第三步:選擇工程文件的存放位置,輸入工程名 -> next -> next。

第四步:在family欄選擇芯片型號-Cyclone IV E,在Name欄選擇EP4CE115F29C7,選擇完之後點擊next。(如果不進行硬件調試時,此處默認即可)

第五步:檢查工程有沒有建錯,點擊完成。如下圖:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-UuKyv8Ep-1592036608456)(G:\研究生\FPGA課程\筆記文檔\rec\20161122122950778.png)]

程序設計:

表決器頂層文件設計:

library ieee;
use ieee.std_logic_1164.all;
entity bjq is
port( 
          a:in std_logic_vector(6 downto 0); --7個人
          num:buffer integer range 0 to 7; --表決通過人數
co:out std_logic); --是否通過信號
end bjq;
architecture art of bjq is
    Begin
       process(a)
           variable b:integer range 0 to 7; --定義變量b
begin
    b:=0;
    for n in 0 to 6 loop
         if a(n)='1' then      
               b:=b+1; --統計通過人數
         end if;
    end loop;
     num<=b;
    if(b>=4)then co<='1';
    else co<='0';
    end if;
end process;
end art;

文件仿真(這裏採用modelsim仿真波形):

  1. 選擇File-> New -> Verification/Debugging Files ->University Program VWF。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-Q4BcH7UK-1592036608462)(G:\研究生\FPGA課程\筆記文檔\rec\QQ截圖20200423165155.png)]

2.打開測試文件。(右鍵點擊添加端口,對輸入信號初始化,賦值。)

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-YwuH6iBY-1592036608466)(G:\研究生\FPGA課程\筆記文檔\rec\截圖20200613161531.png)]

3.仿真結果:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-5OpNBfHE-1592036608472)(G:\研究生\FPGA課程\筆記文檔\rec\截圖20200613162144.png)]

邏輯電路圖:

顯示編譯成功後,選擇菜單欄 Tools –>Netlist Viewers –>RTL Viewer 顯示邏輯電路圖

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-txsDO3NF-1592036608475)(G:\研究生\FPGA課程\筆記文檔\rec\截圖20200613161726.png)]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章