一、 實驗目的
1、 了解格雷碼變換的原理。
2、 進一步熟悉QUARTUSII軟件的使用方法和VHDL輸入的全過程。
3、 進一步掌握實驗系統(tǒng)的使用。
二、 實驗原理
格雷(Gray)碼是一種可靠性編碼,在數字系統(tǒng)中有著廣泛的應用。其特點是任意兩個相鄰的代碼中僅有一位二進制數不同,因而在數碼的遞增和遞減運算過程中不易出現差錯。但是格雷碼是一種無權碼,要想正確而簡單的和二進制碼進行轉換,必須找出其規(guī)律。
根據組合邏輯電路的分析方法,先列出其真值表再通過卡諾圖化簡,可以很快的找出格雷碼與二進制碼之間的邏輯關系。其轉換規(guī)律為:高位同,從高到低看異同,異出‘1’,同出‘0’。也就是將二進制碼轉換成格雷碼時,高位是完全相同的,下一位格雷碼是‘1’還是‘0’,完全是相鄰兩位二進制碼的“異”還是“同”來決定。下面舉一個簡單的例子加以說明。
假如要把二進制碼10110110轉換成格雷碼,則可以通過下面的方法來完成,方法如圖4-2-1。
圖4-2-1 格雷碼變換示意圖
因此,變換出來的格雷碼為11101101。
三、 實驗內容
本實驗要求完成的任務是變換8位的二進制碼到8位的格雷碼。實驗中用八位撥動開關模塊的K1~K8表示8位二進制輸入,用LED模塊的D1~D8來表示轉換的實驗結果8位格雷碼。實驗LED亮表示對應的位為‘1’,LED滅表示對應的位為‘0’。通過輸入不同的值來觀察輸入的結果與實驗原理中的轉換規(guī)則是否一致。
四、 實驗步驟
1、 打開QUARTUSII軟件,新建一個工程。
2、 建完工程之后,再新建一個VHDL File。新建一個VHDL文件的過程如下:
1)選擇QUARTUSII軟件中的File>New命令,出現New對話框。如圖4-2-2所示。
圖4-2-2 新建設計文件選擇窗口
2)在New對話框(圖4-2-2)中選擇Device Design Files頁下的VHDL File,點擊OK按鈕,打開VHDL編輯器對話框,如圖4-2-3所示。
圖4-2-3 VHDL編輯窗口
3、 按照實驗原理和自己的想法,在VHDL編輯窗口編寫VHDL程序,用戶可參照光盤中提供的示例程序。
4、 編寫完VHDL程序后,保存起來。方法同實驗一。
5、 對自己編寫的VHDL程序進行編譯并仿真,對程序的錯誤進行修改。
6、 編譯仿真無誤后,根據用戶自己的要求進行管腳分配。分配完成后,再進行全編譯一次,以使管腳分配生效。
7、 根據實驗內容用實驗導線將上面管腳分配的FPGA管腳與對應的模塊連接起來。
如果是調用的本書提供的VHDL代碼,則實驗連線如下:
K1-K8:被編碼信號,接8個撥動開關K1-K8(LOCK KEY AREA)。
D1-D8:編碼輸出信號,接8個LED燈D1-D8(LED AREA)。
8、 用下載電纜通過JTAG口將對應的sof文件加載到FPGA中。觀察實驗結果是否與自己的編程思想一致。
五、 實驗現象與結果
以設計的參考示例為例,當設計文件加載到目標器件后,確認信號連接線已正確連接,撥動撥動開關,LED會按照實驗原理中的格雷碼輸入一一對應的亮或者滅。
六、 實驗報告
1、 繪出仿真波形,并作說明。
2、 進一步熟悉QUARTUSII軟件。
3、 將實驗原理、設計過程、編譯仿真波形和分析結果、硬件測試結果記錄下來。