色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FPGA知識詳解之基礎篇的技術分享

潤欣科技Fortune ? 來源:潤欣科技 ? 作者:潤欣科技Fortune ? 2020-11-30 11:37 ? 次閱讀

上海潤欣科技股份有限公司創研社

1.Verilog基礎語法

1.1 可綜合模塊

以module為單元,具體實現如下

1.1.1 時序邏輯

以異步觸發的D觸發器為例,時序邏輯在always塊里實現

主要注意點:

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

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

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

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

1.1.2 組合邏輯

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

主要注意點:

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

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

1.2 仿真模塊

仿真模塊和可綜合模塊的區別:

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

以計數器為例,可綜合模塊如下:

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

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

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

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

HDL常見例子

2.1 譯碼器

2.1.1 可綜合模塊(case語句)

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

Case語句注意點:

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

2.1.2 仿真模塊

2.2狀態機

由于FPGA內部語句塊都是并行運行的,當我們希望FPGA按照順序執行我們的語句時,就會用到狀態機。

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

2.2.1 狀態圖

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

2.2.3 仿真模塊

2.2.4 仿真腳本

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

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

仿真結果:

2.2.5 上板測試

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

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

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

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

重新設計狀態圖如下:

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

工程目錄如下所示:

各模塊之間的關系是:

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

單向流水燈的聲明如下:

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

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

括號外的信號是對應的聲明信號;括號內的信號是從fsm模塊中傳入的信號,該信號名稱可以自定義。

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

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

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

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

完成后編譯下載到板子上觀測現象。

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

由于第一次正向流水是正常的,因此推測是在反向流水時有條件判斷錯誤使得反向流水無法正常運行,進入到led_water_double模塊關于反向流水燈的操作模塊,經查驗發現是設置翻轉標志的時候判斷條件寫錯了。

判斷條件應該是led == 8’b1111_1110,更改后,實驗現象符合預期要求。

fqj

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1629

    文章

    21748

    瀏覽量

    603795
  • 輸出信號
    +關注

    關注

    0

    文章

    283

    瀏覽量

    11874
收藏 人收藏

    評論

    相關推薦

    玩轉FPGA必備的基礎知識

    FPGA已成為現今的技術熱點之一,無論學生還是工程師都希望跨進FPGA的大門。那么我們要玩轉FPGA必須具備哪些基礎知識呢?下面我們慢慢道來
    的頭像 發表于 11-28 10:24 ?328次閱讀

    Achronix Speedcore eFPGA的特性和功能

    Speedcore嵌入式FPGA(embedded FPGA,eFPGA知識產權(IP)產品是Achronix公司于2016年推出的顛覆性技術
    的頭像 發表于 11-15 14:28 ?312次閱讀
    Achronix Speedcore e<b class='flag-5'>FPGA</b>的特性和功能

    FPGA基礎知識及設計和執行FPGA應用所需的工具

    本文將首先介紹FPGA的基礎知識,包括FPGA的工作原理以及為什么要使用FPGA等,然后討論設計和執行FPGA應用所需的工具。
    的頭像 發表于 11-11 11:29 ?923次閱讀
    <b class='flag-5'>FPGA</b>基礎<b class='flag-5'>知識</b>及設計和執行<b class='flag-5'>FPGA</b>應用所需的工具

    半導體封裝技術基礎詳解(131頁PPT)

    共讀好書歡迎掃碼添加小編微信掃碼加入知識星球,領取公眾號資料 原文標題:半導體封裝技術基礎詳解(131
    的頭像 發表于 11-01 11:08 ?311次閱讀

    詳解FPGA的基本結構

    ZYNQ PL 部分等價于 Xilinx 7 系列 FPGA,因此我們將首先介紹 FPGA 的架構。簡化的 FPGA 基本結構由 6 部分組成,分別為可編程輸入/輸出單元、基本可編程邏輯單元、嵌入式塊RAM、豐富的布線資源、底層
    的頭像 發表于 10-25 16:50 ?1230次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>FPGA</b>的基本結構

    【《大語言模型應用指南》閱讀體驗】+ 基礎

    今天開始學習《大語言模型應用指南》第一——基礎,對于人工智能相關專業技術人員應該可以輕松加愉快的完成此閱讀,但對于我還是有許多的知識
    發表于 07-25 14:33

    淺談PUF技術如何保護知識產權

    知識產權保護,PUF技術擁有天然獨特的優勢,能夠提供周全完善的防盜版解決方案,在保護電子產品知識產權領域具有廣闊的應用前景。 接下來,讓我們一起看看PUF技術是如何保護
    發表于 07-24 09:43

    一文了解FPGA技術知識

    FPGA是可以先購買再設計的“萬能”芯片。FPGA(FieldProgrammableGateArray)現場可編程門陣列,是在硅片上預先設計實現的具有可編程特性的集成電路,它能夠按照設計人員的需求
    的頭像 發表于 06-29 08:11 ?1774次閱讀
    一文了解<b class='flag-5'>FPGA</b><b class='flag-5'>技術知識</b>

    Xilinx FPGA編程技巧常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧常用時序約束詳解,話不多說,上貨。 基本的約束方法 為了保證成功的設計,所有路徑的時序要求必須能夠讓執行工具獲取。最普遍的三種路徑以及異常路徑為
    發表于 05-06 15:51

    FPGA基礎知識學習

    、開發成本、維護成本等。不同型號的FPGA芯片成本差異很大,需要綜合考慮成本和性能等因素。 考慮開發工具和技術支持 :選擇強大且易于使用的開發工具,以及具有良好支持記錄的供應商,可以極大地簡化FPGA開發
    發表于 04-29 23:26

    哪有FPGA的verilog編程基礎知識

    沒接觸過FPGA開發,那個verilog編程有什么入門基礎知識學習的?
    發表于 04-29 23:09

    Xilinx FPGA編程技巧常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧常用時序約束詳解,話不多說,上貨。 基本的約束方法為了保證成功的設計,所有路徑的時序要求必須能夠讓執行工具獲取。最普遍的三種路徑以及異常路徑為
    發表于 04-12 17:39

    科普 | 一文了解FPGA技術知識

    科技成果交易會上發布了新一代自主知識產權億門級 FPGA 產品,新產品,填補了國內超大規模億門級 FPGA 的空白。未來隨著更多企業技術突破,國產替代進程將持續推進。 國內
    發表于 03-08 14:57

    FPGA基礎知識介紹

    電子發燒友網站提供《FPGA基礎知識介紹.pdf》資料免費下載
    發表于 02-23 09:45 ?32次下載

    FPGA設計高級技巧 Xilinx

    FPGA設計高級技巧 Xilinx
    發表于 01-08 22:15
    主站蜘蛛池模板: 亚洲高清在线视频| 俄罗斯摘花| 无人区日本电影在线观看高清| 国产精品99久久久久久WWW| 99精彩视频在线观看| 中文视频在线观看| 伊人久久大香线蕉综合bd高清| 亚洲精品成人A8198A片漫画| 无码成人AAAAA毛片含羞草| 色女仆影院| 狂躁美女BBBBBB视频| 久久精品国产清白在天天线| 好大太快了快插穿子宫了| 国内精品乱码卡一卡2卡三卡| chinesevideoshd性舞| 99re精品视频在线播放视频| 97国产精品人妻无码免费| 99精品免费久久久久久久久日本 | 99久久精品互换人妻AV| 99久久精品国产免费| 白丝萝莉喷水| 国产成人综合95精品视频免费| 国产成人精品综合久久久| 高h肉文合集| 国产午夜精品不卡视频| 东京热 百度影音| 国产黄a三级三级三级| 国产一及毛片| 久久精品视频在线看| 免费看大黄高清网站视频在线| 欧美精品久久久久久久久大尺度| 精品人妻伦九区久久AAA片69| 久cao在线香蕉| 免费人成在线观看网站视频| 日本 稀土矿| 亚洲 欧美 综合 高清 在线| 色欲AV精品人妻一区二区麻豆| 午夜精品久久久久久久爽牛战 | 波多野结衣 熟女| 国产成人免费全部网站 | 亚洲香蕉网久久综合影院|