作者:ALINX
適用于板卡型號(hào):
AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P /AXU9EG/AXU15EG
實(shí)驗(yàn)Vivado工程為“key_test”。
按鍵是FPGA設(shè)計(jì)當(dāng)中最常用也是最簡(jiǎn)單的外設(shè),本章通過按鍵檢測(cè)實(shí)驗(yàn),檢測(cè)開發(fā)板的按鍵功能是否正常,并了解硬件描述語言和FPGA的具體關(guān)系,學(xué)習(xí)Vivado RTL ANALYSIS的使用。
1.按鍵硬件電路
開發(fā)板按鍵部分電路
從圖中可以看到,電路的按鍵松開時(shí)是高電平,按下時(shí)是低電平。
開發(fā)板LED部分電路
而LED部分,高電平滅,低電平亮
2. 程序設(shè)計(jì)
這個(gè)程序沒有設(shè)計(jì)的很復(fù)雜,通過簡(jiǎn)單的硬件描述語言看透硬件描述語言和FPGA硬件的聯(lián)系。首先我們將按鍵輸入經(jīng)過一個(gè)非門后再經(jīng)過2組D觸發(fā)器。經(jīng)過D觸發(fā)器的信號(hào),會(huì)在D觸發(fā)器時(shí)鐘輸入的上升沿鎖存然后再送到輸出。
在進(jìn)行硬件描述語言編碼之前,我們已經(jīng)把硬件構(gòu)建完成,這是一個(gè)正常的開發(fā)流程。有了硬件設(shè)計(jì)思路無論是通過畫圖還是通過Verilog HDL、VHDL都能完成設(shè)計(jì),根據(jù)設(shè)計(jì)的復(fù)雜程序和對(duì)某種語言的熟悉程序來選擇工具。
3. 創(chuàng)建Vivado工程
3.1 首先建立按鍵的測(cè)試工程,添加verilog測(cè)試代碼,完成編譯分配管腳等流程。
`timescale1ns/1ps
module key_test
(
input clk,//system clock 25Mhz on board
input[3:0] key,//input four key signal,when the keydown,the value is 0
output[3:0] led //LED display ,when the siganl low,LED lighten
);
reg[3:0] led_r;//define the first stage register , generate four D Flip-flop
reg[3:0] led_r1;//define the second stage register ,generate four D Flip-flop
always@(posedge clk)
begin
led_r <= key;//first stage latched data
end
always@(posedge clk)
begin
led_r1 <= led_r;//second stage latched data
end
assign led = led_r1;
endmodule<
3.2 我們可以使用RTL ANALYSIS工具查看設(shè)計(jì)
3.3 分析RTL圖,可以看出兩級(jí)D觸發(fā)器,和預(yù)期設(shè)計(jì)一致。
4. 板上驗(yàn)證
Bit文件下載到開發(fā)板以后,開發(fā)板上的"PL LED"處于亮狀態(tài),按鍵“PL KEY1”按下“PL LED1”滅。
審核編輯:何安
-
FPGA
+關(guān)注
關(guān)注
1650文章
22204瀏覽量
626745
發(fā)布評(píng)論請(qǐng)先 登錄
一文詳解Verilog HDL

千兆網(wǎng)絡(luò)PHY芯片RTL8211E的實(shí)踐應(yīng)用

DLPLCRC410EVM是否提供觸發(fā)信號(hào)接口用于后續(xù)的同步測(cè)量?是否也需要利用FPGA對(duì)觸發(fā)信號(hào)進(jìn)行編程?
淺談Verilog和VHDL的區(qū)別

數(shù)字電路編程語言介紹
FPGA驅(qū)動(dòng)AD芯片之實(shí)現(xiàn)與芯片通信

Verilog 與 ASIC 設(shè)計(jì)的關(guān)系 Verilog 代碼優(yōu)化技巧
大語言模型開發(fā)語言是什么
串口屏支持哪些編程語言和開發(fā)環(huán)境?

Verilog硬件描述語言參考手冊(cè)
MCU編程語言和開發(fā)環(huán)境介紹
C語言與Java語言的對(duì)比
FPGA編程語言的入門教程
TMS320LF240x DSP的C語言和匯編代碼快速入門

評(píng)論