該項(xiàng)目在HLS中實(shí)現(xiàn)了UART發(fā)送邏輯設(shè)計(jì)。
硬件組件:
Digilent Basys 3×1個(gè)
USB-A轉(zhuǎn)Micro-USB電纜×1個(gè)
軟件應(yīng)用程序和在線服務(wù):
Vivado Design Suite HLx版本
UART是一種用于串行通信的舊機(jī)制,至今仍在數(shù)個(gè)電子板和計(jì)算平臺(tái)中使用。用HDL語言實(shí)現(xiàn)它并不是一件容易的事,可以看作是大學(xué)的作業(yè)。在這里,我將以這個(gè)例子為例,說明在HLS中實(shí)現(xiàn)它是多么容易和有趣。
因此,從概念上講,這是一個(gè)微不足道的項(xiàng)目;但是,它對(duì)HLS感興趣的人很有啟發(fā)性。
現(xiàn)在是項(xiàng)目定義:下圖顯示了項(xiàng)目的簡單結(jié)構(gòu)。
我們?cè)?a class="article-link" target="_blank" href="/article/1664978.html">FPGA中的設(shè)計(jì)接收8位數(shù)據(jù),每按一次按鈕,它就會(huì)將其發(fā)送到計(jì)算機(jī),以顯示在串行終端中。
Basys3板上的八個(gè)滑動(dòng)開關(guān)用于輸入一個(gè)字節(jié)的數(shù)據(jù)(例如字母或符號(hào)的ASCII碼)。同樣,UP按鈕用作發(fā)送控制鍵。
設(shè)計(jì)很簡單,它應(yīng)該接收數(shù)據(jù),然后在其上添加一個(gè)“ 0”起始位和一個(gè)“ 1”終止位,最后它應(yīng)以9600 bit / s的波特率發(fā)送出去。
由于Basys3板具有100MHz的時(shí)鐘信號(hào),因此可以使用簡單的for循環(huán)生成波特率時(shí)鐘信號(hào)。