91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FPGA知識詳解之基礎(chǔ)篇的技術(shù)分享

潤欣科技Fortune ? 來源:潤欣科技 ? 作者:潤欣科技Fortune ? 2020-11-30 11:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上海潤欣科技股份有限公司創(chuàng)研社

1.Verilog基礎(chǔ)語法

1.1 可綜合模塊

以module為單元,具體實現(xiàn)如下

1.1.1 時序邏輯

以異步觸發(fā)的D觸發(fā)器為例,時序邏輯在always塊里實現(xiàn)

主要注意點:

1. 聲明模塊時,輸入變量一定是wire類型。

2. 聲明模塊時,輸出變量可以是wire,也可以是reg, reg變量只能在always塊中賦值。

3. 敏感列表既可以是邊沿觸發(fā),也可以是電平觸發(fā)。

4. 沿觸發(fā)的邏輯里,一定采用的是非阻塞觸發(fā)<=。

1.1.2 組合邏輯

以數(shù)據(jù)選擇器為例,組合邏輯通常使用assign語句賦值

主要注意點:

1. sel = 0時,c = a;sel = 1時,c =b,即二選一數(shù)據(jù)選擇器。四選一則有兩個選擇端,四個輸入端,八選一則是三個選擇端,八個輸入端。

2. wire 變量一定要用連續(xù)賦值語句賦值,而且必須用阻塞賦值。

1.2 仿真模塊

仿真模塊和可綜合模塊的區(qū)別:

可綜合模塊最終生成的bit文件會燒錄進芯片運行,而仿真模塊編譯過后是在仿真軟件(例如modelsim)上運行的。仿真模塊是基于可綜合模塊進行例化,并通過仿真軟件的模擬,可以初步驗證我們寫的可綜合模塊的實現(xiàn)現(xiàn)象。

以計數(shù)器為例,可綜合模塊如下:

基于以上可綜合模塊的仿真模塊如下:

1. 仿真的模塊聲明不需要輸入列表。

2. initial塊只能對【寄存器】量進行賦值。

3. 例化模塊時,如果原始模塊是輸出變量,則括號內(nèi)必須【wire變量】。

HDL常見例子

2.1 譯碼器

2.1.1 可綜合模塊(case語句)

此模塊用case實現(xiàn)了一個數(shù)據(jù)選擇的功能,先產(chǎn)生了一個8位計數(shù)器,通過判斷計數(shù)器的值來輸出不同的取值,當(dāng)計數(shù)器計數(shù)到1時,o_data和o_dv分別輸出5和1,當(dāng)計數(shù)器為2時,輸出7和1,其余均輸出0。(Note:Case語句常常運用于狀態(tài)機中狀態(tài)的判斷)

Case語句注意點:

必須有default語句,否則會形成鎖存器

2.1.2 仿真模塊

2.2狀態(tài)機

由于FPGA內(nèi)部語句塊都是并行運行的,當(dāng)我們希望FPGA按照順序執(zhí)行我們的語句時,就會用到狀態(tài)機。

下面例子是使用狀態(tài)機模擬的一個簡單的自動售貨機,該售貨機中的商品 2.5 元一件,每次投幣既能投入 1 元, 也能投入 0.5 元,當(dāng)投入 3 元時,需要設(shè)定找零。

2.2.1 狀態(tài)圖

2.2.2 可綜合模塊(2段式狀態(tài)機)

2.2.3 仿真模塊

2.2.4 仿真腳本

仿真腳本可以省去人工操作modelsim軟件圖形頁面的步驟,運行腳本,modelsim可以根據(jù)腳本命令自動運行包括創(chuàng)建工作目錄,編譯文件,啟動仿真等步驟,以下是本例中的仿真腳本。

仿真腳本編寫好后,只需要進入仿真軟件(本例使用的是modelsim),改變當(dāng)前路徑到腳本保存的路徑,然后在modelsim命令行輸入 do [腳本文件名]即可。

仿真結(jié)果:

2.2.5 上板測試

上板測試對原來的條件做了一定改動更方便觀測結(jié)果,輸入和輸出分別使用的按鍵和LED燈,測試版使用的是Anlogic的EF3L40CG332B_DEV,實現(xiàn)的功能如下:

① 在開發(fā)板上完成自動售貨機的實驗,投幣的動作通過按鍵實現(xiàn), 當(dāng)按一次按鍵(按下到抬起算一次),算作投幣一次;

② 按鍵有兩個,按下分別代表 5 毛和 1 元,可樂售價 2.5 元;

③ 當(dāng)投入總金額為 5 毛時, led 燈亮一個,投入總金額為 1 元時, led 燈亮兩個, 投入總金額為 1.5 元時, led 燈亮三個, 投入總金額為 2 元時, led 亮四個, 用單向流水燈效果充當(dāng)出可樂并且不找零的情況,用雙向流水燈效果充當(dāng)既出可樂又找零的情況。流水燈持續(xù)十秒后熄滅,狀態(tài)回到初始狀態(tài)。

重新設(shè)計狀態(tài)圖如下:

代碼詳見工程fsm_key,筆記不再贅述,此次筆記主要記錄關(guān)于頂層模塊和例化的相關(guān)知識點:

工程目錄如下所示:

各模塊之間的關(guān)系是:

頂層文件是fsm.v,在fsm.v中調(diào)用了模塊led_water_single,led_Water_double和key_debounce,這三個模塊的功能分別是單向流水燈,雙向流水燈和按鍵消抖。想在頂層文件中調(diào)用對應(yīng)的模塊需要在頂層文件中對相應(yīng)的模塊進行例化,以單向流水燈為例。

單向流水燈的聲明如下:

(具體功能實現(xiàn)代碼略,如有需要,請登錄www.fortune-co.com留言)

那么在fsm.v中例化方法如下:

括號外的信號是對應(yīng)的聲明信號;括號內(nèi)的信號是從fsm模塊中傳入的信號,該信號名稱可以自定義。

整個工程的框架如下:(由于本實驗沒有另外寫一個總的TOP文件,而是將例化和狀態(tài)機信號處理都放在了fsm模塊中,因此top層和狀態(tài)機模塊都標(biāo)注的是fsm)

其中key05,key10,就是從外界接入的信號,led[7:0]即輸出信號。接入信號我們要引到對應(yīng)的按鍵,可以參考EF3L40CG332B_DEV的原理圖

SW2和SW3對應(yīng)的FPGA的管腳分別是R19和R20,同理可查,八個led的對應(yīng)腳,并寫出相應(yīng)的管腳約束文件。

管腳約束文件寫完后,在可綜合模塊頂層文件中的輸入輸出信號就會對應(yīng)到相應(yīng)的物理輸入輸出,也可以使用圖形頁面設(shè)置。

完成后編譯下載到板子上觀測現(xiàn)象。

在本次實驗的過程中也發(fā)生了一個編程錯誤問題,剛編寫完上板測試時發(fā)現(xiàn)結(jié)果和預(yù)想的有差異,具體錯處在輸入3元進入雙向流水燈的狀態(tài)時,雙向流水燈正向流水正常,當(dāng)反向流水時,在倒數(shù)第二個燈會卡住,然后反復(fù)亮滅倒數(shù)一二個燈,沒法完成反向流水。

由于第一次正向流水是正常的,因此推測是在反向流水時有條件判斷錯誤使得反向流水無法正常運行,進入到led_water_double模塊關(guān)于反向流水燈的操作模塊,經(jīng)查驗發(fā)現(xiàn)是設(shè)置翻轉(zhuǎn)標(biāo)志的時候判斷條件寫錯了。

判斷條件應(yīng)該是led == 8’b1111_1110,更改后,實驗現(xiàn)象符合預(yù)期要求。

fqj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1660

    文章

    22418

    瀏覽量

    636616
  • 輸出信號
    +關(guān)注

    關(guān)注

    0

    文章

    311

    瀏覽量

    12756
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    AMD UltraScale架構(gòu):高性能FPGA與SoC的技術(shù)剖析

    AMD UltraScale架構(gòu):高性能FPGA與SoC的技術(shù)剖析 在當(dāng)今的電子設(shè)計領(lǐng)域,高性能FPGA和MPSoC/RFSoC的需求日益增長。AMD的UltraScale架構(gòu)憑借其創(chuàng)新的技術(shù)
    的頭像 發(fā)表于 12-15 14:35 ?574次閱讀

    2025安路科技AEC FPGA技術(shù)沙龍北京站圓滿落幕

    2025年11月12日,安路科技AEC FPGA技術(shù)沙龍收官站在北京圓滿落幕。本次沙龍以“定制未來,共建生態(tài)”為主題,聚焦國產(chǎn)FPGA在邊緣計算、工業(yè)控制及汽車電子等前沿領(lǐng)域的
    的頭像 發(fā)表于 11-19 17:12 ?2115次閱讀

    基于瑞芯微 RK3588 的 ARM 與 FPGA 交互通信實戰(zhàn)指南

    本文圍繞創(chuàng)龍科技研發(fā)的 TL3588-EVM 評估板,詳解瑞芯微 RK3588 與 FPGA 基于 PCIe 總線的通信案例,包括 DMA 與非 DMA 兩種方式。涵蓋案例功能、測試流程、編譯步驟
    的頭像 發(fā)表于 11-04 16:09 ?628次閱讀
    基于瑞芯微 RK3588 的 ARM 與 <b class='flag-5'>FPGA</b> 交互通信實戰(zhàn)指南

    辰專利布局,深挖傳感技術(shù)發(fā)展護城河

    深圳市瑞辰科技有限公司成立于2007年,成立多年來在MEMS傳感器領(lǐng)域展現(xiàn)出了驚人的創(chuàng)新能力和技術(shù)實力。瑞辰深知知識產(chǎn)權(quán)的重要性,已經(jīng)申請和獲取了數(shù)十項以MEMS為核心的專利,涵蓋
    的頭像 發(fā)表于 07-04 13:57 ?1300次閱讀
    瑞<b class='flag-5'>之</b>辰專利布局,深挖傳感<b class='flag-5'>技術(shù)</b>發(fā)展護城河

    米爾出席2025安路科技FPGA技術(shù)沙龍

    2025年6月12日,由安路科技主辦的2025FPGA技術(shù)沙龍在南京正式召開,深圳市米爾電子有限公司(簡稱:米爾電子)作為國產(chǎn)FPGA的代表企業(yè)出席此次活動。米爾電子發(fā)表演講,并展出米爾基于安路飛
    的頭像 發(fā)表于 06-19 08:04 ?1576次閱讀
    米爾出席2025安路科技<b class='flag-5'>FPGA</b><b class='flag-5'>技術(shù)</b>沙龍

    FPGA調(diào)試方式VIO/ILA的使用

    在Vivado中,VIO(Virtual Input/Output)是一種用于調(diào)試和測試FPGA設(shè)計的IP核,它允許設(shè)計者通過JTAG接口實時讀取和寫入FPGA內(nèi)部的寄存器,從而檢查設(shè)計的運行狀態(tài)并修改其行為。VIO IP核提供了一個簡單易用的接口,使得用戶可以輕松地與
    的頭像 發(fā)表于 06-09 09:32 ?4028次閱讀
    <b class='flag-5'>FPGA</b>調(diào)試方式<b class='flag-5'>之</b>VIO/ILA的使用

    2025安路科技AEC-FPGA技術(shù)沙龍啟航

    2025年度安路科技AEC-FPGA技術(shù)沙龍以“定制未來,共建生態(tài)”為主題已經(jīng)全新啟航,自2018年舉辦以來,安路科技FPGA研討會憑借專業(yè)和創(chuàng)新,吸引了無數(shù)行業(yè)專家、技術(shù)精英以及企業(yè)
    的頭像 發(fā)表于 06-05 11:33 ?1133次閱讀

    電路小知識 | 深入解析交流電路基礎(chǔ):波形與特性詳解

    在上一文章中交流電路基礎(chǔ)知識和波形的種類我們給大家分享了交流電路的基本概念和交流波形的種類,本篇繼續(xù)給大家分享交流電路相關(guān)知識!1交流電路基礎(chǔ)平均值和有效值(RMS值)在交流電路中,波形的平均值
    的頭像 發(fā)表于 05-22 11:44 ?1644次閱讀
    電路小<b class='flag-5'>知識</b> | 深入解析交流電路基礎(chǔ):波形與特性<b class='flag-5'>詳解</b>

    零死角玩轉(zhuǎn)STM32——系統(tǒng)

    本文共4冊,由于資料內(nèi)存過大,分開上傳,有需要的朋友可以去主頁搜索下載哦~ 《零死角玩轉(zhuǎn) STM32》系列教程由初級、中級、高級、系統(tǒng)、四個部分組成,更適合初學(xué)者,步步為營,
    發(fā)表于 05-21 14:08

    零死角玩轉(zhuǎn)STM32——初級

    本文共4冊,由于資料內(nèi)存過大,分開上傳,有需要的朋友可以去主頁搜索下載哦~ 《零死角玩轉(zhuǎn) STM32》系列教程由初級、中級、高級、系統(tǒng)、四個部分組成,更適合初學(xué)者,步步為營
    發(fā)表于 05-21 13:48

    B10 BMS技術(shù)知識初探(上、下)

    課程名稱: BMS技術(shù)知識初探課程目標(biāo): 可充電電池已是人們生活中不可缺少的組成部分,基于電池技術(shù)為基礎(chǔ)的電動汽車、儲能行業(yè),更是新能源發(fā)展的重要標(biāo)志。而BMS技術(shù)是電池安全的重要保障,是電池安全
    發(fā)表于 05-02 11:04

    SMA接頭制造工藝詳解:精密加工技術(shù)與實現(xiàn)策略

    SMA接頭制造工藝詳解:精密加工技術(shù)與實現(xiàn)策略
    的頭像 發(fā)表于 04-26 09:22 ?808次閱讀
    SMA接頭制造工藝<b class='flag-5'>詳解</b>:精密加工<b class='flag-5'>技術(shù)</b>與實現(xiàn)策略

    【「零基礎(chǔ)開發(fā)AI Agent」閱讀體驗】總體預(yù)覽及入門

    基礎(chǔ)知識有所補充,另外書本后面的案例也會對Ai的應(yīng)用產(chǎn)生一些啟發(fā). 首先老規(guī)矩,先看一下目錄結(jié)構(gòu) 包含3大主題: 入門:介紹了Agent的概念、發(fā)展、與Prompt和Copilot的區(qū)別
    發(fā)表于 04-20 21:53

    【社區(qū)之星】趙云:不要浮躁,沉著穩(wěn)定,才能做好技術(shù)

    什么側(cè)重點呢? 對于技術(shù)工程師而言,首先看重的當(dāng)然是技術(shù)知識的掌握程度了,技術(shù)是不能糊弄的,只有技術(shù)過硬,才能夠經(jīng)得起面試官的提問,所以還是看技術(shù)
    發(fā)表于 04-14 16:42

    進群免費領(lǐng)FPGA學(xué)習(xí)資料!數(shù)字信號處理、傅里葉變換與FPGA開發(fā)等

    ~ 01、數(shù)字信號處理的FPGA實現(xiàn) 旨在講解前端數(shù)字信號處理算法的高效實現(xiàn)。首先概述了當(dāng)前的FPGA技術(shù)、器件以及用于設(shè)計最先進DSP系統(tǒng)的工具。闡述了計算機算法的概念、理論、FIR和IIR濾波器
    發(fā)表于 04-07 16:41