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

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

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

3天內不再提示

學習心得|溫度檢測工程模塊劃分總結與案例分析

潘文明 ? 來源:明德揚吳老師 ? 作者:明德揚吳老師 ? 2022-12-03 10:51 ? 次閱讀

很多朋友在學習FPGA的時候會發現模塊劃分很令人頭大,今天我就通過明德揚溫度檢測工程來與大家分享一下本人的劃分思路。

明德揚溫度檢測工程是基于FPGA的一個實用項目,可以在明德揚的MP801開發板上進行實驗學習。本工程功能雖小,但基本上涉及了FPGA的常見功能,如接口傳輸、指令解析、外設的控制等,是比較好的入門工程。

一、模塊劃分要點總結

1、列出項目的功能要求(客戶提出的產品功能要求)

2、畫出硬件的系統結構框圖(添加外設)

3、框圖中每個外圍接口都對應有一個接口轉換模塊

接口轉換模塊的作用是將外圍器件的接口時序轉為通用的接口時序,或者將通用接口時序轉換為外圍器件接口時序,這樣使得FPGA內部其他模塊不用再關心外圍接口的時序了。

MDY規范通用接口時序:

data以及對應的vld,傳輸單個數據格式

MDY的包文格式,din,vld,SOP,EOP,MTY,ERR

wren,waddr,wdata;rden,raddr,rdata,rdata_vld

4、考慮是否涉及指令系統(操作碼+數據格式)

上位機,例如PC,ARMDSP或者其他的器件,只涉及到一個接口,但是卻有很多指令或者命令功能要發送,因此就需要一個指令系統。

指令系統一定會涉及到命令、地址和數據。這種情況,肯定會有一個“寄存器解析模塊”,根據命令、地址和數據,改變相應的寄存器的值。

5、考慮外圍器件是否涉及寄存器配置

項目中有某些外設,上電工作前需要進行配置才能按要求工作。因此需要對外設內部寄存器進行讀寫,這一流程是通過FPGA來進行配置。

遇到這個情況,使用MDY推薦的模塊寄存器配置結構:

寄存器配置表模塊+寄存器讀寫配置模塊+外設配置接口時序轉換模塊

6、根據實際情況,增加、補充或者拆分,優化對應模塊,隨時調整

原則:根據接口信號,看模塊間是否方便對接。接口就決定了模塊功能。所以在這一層的調整,一定要清楚接口的定義。

7、考慮是否涉及多路進一路出,要用FIFO

調度FIFO要考慮自身帶寬能否滿足多路一起突發發送時的數據量情況。如果帶寬不滿足,就要要輸出給上游模塊RDY信號。此時RDY信號有效取決于自己設置FIFO的Almost Full信號。如果帶寬滿足則不必設RDY信號。

8、考慮是否涉及到速率匹配問題,要加上RDY信號或者FIFO

首先考慮與外圍器件通信的接口上是否需要rdy信號(FPGA內部運行頻率往往與設接口速率不一致),然后考慮FPGA內部模塊間數據帶寬是否不一致,有等一等的情況。

二、溫度檢測案例分析

接下來根據上面的總結的要點,通過實際項目案例來分析一下FPGA內部功能模塊是怎樣劃分的。這里我們選取已經做過的溫度檢測項目,接下來按照上面總結的模塊劃分步驟,一步步完成模塊初步劃分!

1.列出項目的功能要求

本項目功能要求:上位機通過發送一系列不同命令給FPGA,FPGA接收到指令后執行各個指令對應的操作。同時將DS18B20采集到的溫度值實時在數碼管上實時顯示出來并傳給上位機。要求上位機可以發送命令設置報警溫度上限和下限值。當溫度值超過溫度上限或者下限,蜂鳴器就開始鳴響??梢园l送命令關閉或打開數碼管顯示。

功能分析:

上位機發送命令給FPGA(開關數碼管顯示、開關蜂鳴器、復位溫度傳感器、開啟溫度轉換,讀轉換后溫度值、設置報警溫度上限下限值);

讀寫DS18B20;

數碼管顯示;

數碼管顯示開關控制;

計算溫度值;

將計算后的溫度值發送給上位機;

設置溫度上限、下限;

蜂鳴器開關控制。

2.畫出硬件系統結構框圖

根據步驟1總結出的功能要求,找到除FPGA外需要哪些外圍器件。

外圍器件總共需要四個:

PC

數碼管

溫度傳感器DS18B20

蜂鳴器

畫出系統框圖如下所示:

poYBAGOK8gyAdJRqAADLYlATm0Q705.png

3.框圖中每個外圍接口都對應有一個接口轉換模塊

首先要思考PC與FPGA通信需要哪種方式?

上位機PC與FPGA通信既有發送也有接收,由于PC發送命令給FPGA的速度慢于FPGA回傳溫度值給PC的速度,所以上位機PC與FPGA通信接口速度取決于FPGA回傳溫度值給PC的速度。

pYYBAGOK8jeAI14eAAWcZh_HHlQ936.png

查閱手冊如上圖所示,得知DS18B20轉換一次采集的溫度值需要750ms。所以FPGA與上位機通信接口速率大于750ms就不會丟傳數據。因此選用串口作為上位機與FPGA的通信接口足夠滿足要求了。

數碼管段選位選接口模塊:完成數碼管位選和段選的輸出

DS18B20單bit轉換接口模塊:DS18B20是單總線協議,只支持1bit數據傳輸,所以需要將MDY規范接口轉換為1bit

蜂鳴器開關使能接口模塊:完成蜂鳴器開關使能

poYBAGOK8miALUhAAAWcZoNygj4042.png

將串口接口轉換模塊功能細分為“串口接收串轉并模塊”和“串口發送并轉串模塊”,進一步轉化為符合MDY規范的接口。如下圖所示:

pYYBAGOK8p-AEfeYAAWcZiTpcnM197.png

4.考慮是否涉及指令系統

本項目涉及指令系統,上位機需要發送指令給FPGA,進而配置溫度傳感器,配置溫度報警上限和下限值,同時可以發送指令控制數碼管顯示關閉,蜂鳴器開關。因此,系統框圖中需要加入“寄存器解析模塊”,如下圖所示:

poYBAGOK8suARdNCAAWcZl6v4NU907.png

5.考慮外圍器件是否涉及寄存器配置

本項目中,DS18B20需要配置內部寄存器,但是本項目并沒有采用MDY模板的方式(讀取配置寄存器表的方式來對DS18B20進行配置),而是通過上位機發送配置命令,解析配置寄存器值再對DS18B20進行配置。

6.根據實際情況,增加、補充或者拆分獨立對應模塊,隨時調整

到第6步,根據數據流向,需要對模塊間的接口進行詳細分析了,補充模塊或者將功能相同的模塊合并。

首先,從串口接口方向思考,

接收到的數據是上位機發來的ASCII碼,為了方便FPGA對指令解析,需要將ASCII碼譯碼,轉化為對應的十六進制。因此需要一個ASCII碼轉8bit十六進制模塊;

接下來,需要對接收包文的包頭進行檢測,符合正確包頭條件的包文保留,否則丟包處理。所以需要一個包頭檢測模塊,用來過濾接收到的有效包文;

經過寄存器解析模塊后,會將指令解析出來,根據指令功能要求可能分別發送給DS18B20、數碼管顯示開關控制模塊、數碼管段選位選接口模塊、蜂鳴器控制接口模塊;

寄存器解析模塊發送過來的是8bit數據,不能直接發送給DS18B20(18B20只接收單bit),所以在寄存器解析模塊和單總線轉換接口模塊之間需要一個8bit轉換為1bit模塊;

溫度報警功能需要做判斷實時溫度是否大于上限值,是否小于下限值。所以需要一個實時溫度值比較判斷模塊;

然后,從DS18B20方向思考;

采集到的溫度數據,通過單bit接口轉換模塊傳給FPGA的是單bit數據,為了后面方便FPGA對數據進行處理,需要將1bit轉換為8bit。所以需要一個1bit轉8bit模塊;

8bit溫度數據需要經過計算處理,因此需要一個數據處理模塊;

上位機只顯示ASCII碼格式數據,為實現溫度值在上位機上能顯示,需要將8bit溫度值轉換為ASCII碼,所以需要一個8bit十六進制數據轉換為ASCII碼模塊;

經過數據處理后的結果是十六進制,而數碼管顯示的是BCD碼,為了實現數碼管上顯示正確數據,因此需要一個十六進制轉BCD碼模塊。

完善后如下圖所示:

pYYBAGOK80-AVtvTAAWcZkKrueI688.png

接下來將功能互斥、數據流向相關,接口一致的模塊做合并化簡處理,如下圖所示:

poYBAGOK84SAFaJPAAWcZprEago749.png

7.考慮是否涉及多路進一路出,要用FIFO

本項目數據流方面沒有涉及多路進一路出的問題,不需要考慮此處的FIFO問題。

8.考慮是否涉及到速率匹配問題,要加上RDY信號或者FIFO

本項目涉及速率匹配問題。

首先考慮與外圍器件通信的接口上是否需要rdy信號。

與DS18B20通信是通過寄存器解析模塊解析出對DS18B20的操作指令,發送給8bit轉1bit模塊,因此需要考慮DS18B20能否時刻響應操作指令?

這個問題在選擇上位機與FPGA的通信接口時,已經考慮過了,串口的速率小于FPGA寫DS18B20速率的。

查閱手冊得知,寫一次1bit的數據給18B20需要63us,8bit需要63*8=504us,小于串口發送一次8bit指令給FPGA時間1000000us/9600*8=833us。

所以串口接收數據通路上不需要考慮緩存FIFO問題。

在單總線1bit接口轉換模塊中,由于寫DS18B20時序速率遠小于FPGA內部讀寫頻率,需要告知8bit轉1bit模塊每寫1bit數據要等一等,待時序滿足發送完1bit時序要求后,再發送新的1bit數據。所以在單bit接口轉換模塊與8bit轉1bit模塊間需要設rdy信號。

接下來考慮一下串口發送端。由于串口發送模塊進行并串轉換需要時間,因此串口發送模塊需要告知上游十六制轉ASCII碼模塊等一等,因此在串口發送模塊與十六進制轉ASCII碼模塊間需要設rdy信號。

由于串口發送模塊并串轉換需要等待,從而導致十六進制轉ASCII碼模塊也需要緩存control模塊發來的數據。因此十六進制轉ASCII碼模塊中需要引入FIFO。

最終得到的模塊圖如下所示:

poYBAGOK87eAU-v3AAKVtxdUwNM447.png

到此,根據模塊劃分步驟一步步做下來,溫度檢測工程的模塊劃分雛形初步已經完成。具體實踐中需要根據FPGA內部信號的調整,隨時拆分或獨立來增減功能模塊。

審核編輯:湯梓紅

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

    關注

    1629

    文章

    21748

    瀏覽量

    603805
  • 寄存器
    +關注

    關注

    31

    文章

    5346

    瀏覽量

    120488
  • 接口
    +關注

    關注

    33

    文章

    8612

    瀏覽量

    151286
  • 溫度檢測
    +關注

    關注

    5

    文章

    109

    瀏覽量

    23481
收藏 人收藏

    評論

    相關推薦

    自動點焊溫度分析儀的應用與優勢探討

    自動點焊溫度分析儀作為一種先進的檢測設備,在現代制造業中扮演著至關重要的角色。它不僅能夠有效提升焊接質量,還能大幅提高生產效率,降低生產成本,對于保障產品質量、推動產業升級具有重要意義。本文將從自動
    的頭像 發表于 01-02 08:55 ?51次閱讀
    自動點焊<b class='flag-5'>溫度</b><b class='flag-5'>分析</b>儀的應用與優勢探討

    RISC-V的指令集位寬的幾點學習心得

    學習RISC-V指令集過程中,指令位寬大多是32位和64的,它并不像其它指令集,還有8位的古老指令集。這估計也是RISC-V能輕裝前行的原因之一吧。RISC-V的指令集并非僅限于32位和64位
    發表于 10-31 22:05

    《AI for Science:人工智能驅動科學創新》第二章AI for Science的技術支撐學習心得

    for Science的技術支撐”的學習心得,可以從以下幾個方面進行歸納和總結: 1. 技術基礎的深入理解 在閱讀第二章的過程中,我對于AI for Science所需的技術基礎有了更加深入的理解。這一章詳細闡述了
    發表于 10-14 09:16

    《AI for Science:人工智能驅動科學創新》第一章人工智能驅動的科學創新學習心得

    ,無疑為讀者鋪設了一條探索人工智能(AI)如何深刻影響并推動科學創新的道路。在閱讀這一章后,我深刻感受到了人工智能技術在科學領域的廣泛應用潛力以及其帶來的革命性變化,以下是我個人的學習心得: 1.
    發表于 10-14 09:12

    【「嵌入式Hypervisor:架構、原理與應用」閱讀體驗】+全文學習心得

    景和需求,選擇合適的特性和策略,以實現最佳的系統性能和資源利用率。 三、實際應用與案例分析 在書籍的后半部分,我深入學習了嵌入式Hypervisor在各個領域中的實際應用和案例分析。這些領域包括物聯網
    發表于 10-09 19:11

    【「嵌入式Hypervisor:架構、原理與應用」閱讀體驗】+第7-8章學習心得

    這是一本很好的學習嵌入式的書籍。 在深入學習《嵌入式Hypervisor:架構、原理與應用》的第7-8章后,我對嵌入式Hypervisor的架構、原理及其在實際應用中的重要性有了更為深刻的理解。這兩
    發表于 10-09 18:50

    熱敏電阻溫度檢測

    電子發燒友網站提供《熱敏電阻溫度檢測.pdf》資料免費下載
    發表于 09-07 10:36 ?6次下載
    熱敏電阻<b class='flag-5'>溫度</b><b class='flag-5'>檢測</b>

    虹科案例 從設備連接到精準監控:虹科溫度采集模塊技術精講

    在精密工程和智能監控的前沿,溫度監測已成為確保設備性能和安全不可或缺的一環。虹科MU-Thermocouple CAN/CAN FD系列模塊以其卓越的性能和靈活性,成為實現高精度實時溫度
    的頭像 發表于 07-22 17:33 ?396次閱讀
    虹科案例 從設備連接到精準監控:虹科<b class='flag-5'>溫度</b>采集<b class='flag-5'>模塊</b>技術精講

    基于深度學習的小目標檢測

    在計算機視覺領域,目標檢測一直是研究的熱點和難點之一。特別是在小目標檢測方面,由于小目標在圖像中所占比例小、特征不明顯,使得檢測難度顯著增加。隨著深度學習技術的快速發展,尤其是卷積神經
    的頭像 發表于 07-04 17:25 ?908次閱讀

    freertos系統如何劃分任務?

    芯片; 2,單片機通過串口和上位機通訊,和上位機通訊時單片機IO腳控制一個LED閃爍。 3,單片機作為從設備通過SPI2和主設備通訊,通過檢測單片機的另一個IO腳的狀態,來判斷該設備是否作為SPI從設備被選中; 要是劃分任務的話,需要
    發表于 05-08 07:16

    基于FPGA的常見的圖像算法模塊總結

    意在給大家補充一下基于FPGA的圖像算法基礎,于是講解了一下常見的圖像算法模塊,經過個人的總結,將知識點分布如下所示。
    的頭像 發表于 04-28 11:45 ?610次閱讀
    基于FPGA的常見的圖像算法<b class='flag-5'>模塊</b><b class='flag-5'>總結</b>

    基于深度學習的芯片缺陷檢測梳理分析

    雖然表面缺陷檢測技術已經不斷從學術研究走向成熟的工業應用,但是依然有一些需要解決的問題?;谝陨?b class='flag-5'>分析可以發現,由于芯片表面缺陷的獨特性質,通用目標檢測算法不適合直接應用于芯片表面缺陷檢測
    發表于 02-25 14:30 ?1552次閱讀
    基于深度<b class='flag-5'>學習</b>的芯片缺陷<b class='flag-5'>檢測</b>梳理<b class='flag-5'>分析</b>

    硬件工程師電路設計的九大模塊電路

    硬件電路設計總結主要包括以下幾個主要的模塊:電源模塊,存儲模塊,顯示模塊,和對外接口模塊。
    發表于 02-21 14:52 ?1675次閱讀
    硬件<b class='flag-5'>工程</b>師電路設計的九大<b class='flag-5'>模塊</b>電路

    淺談IGBT模塊使用溫度范圍

    IGBT模塊的運行溫度范圍是非常重要的參數。一些設備要求工作在室溫下,而另一些設備要求工作在很寬的溫度范圍內(如-40℃~+65℃)。溫度和散熱對于系統的可靠和有效運行非常重要。如果實
    的頭像 發表于 01-19 16:25 ?5714次閱讀
    淺談IGBT<b class='flag-5'>模塊</b>使用<b class='flag-5'>溫度</b>范圍

    使用LTC2943可以正確檢測電壓、電流、溫度等信息,怎么計算或獲取電池電量剩余量呢?

    目前,使用LTC2943可以正確檢測電壓、電流、溫度等信息,但怎么計算或獲取電池電量剩余量呢? 嘗試過根據電壓劃分剩余量25% 50% 75% 100%,但誤差太大無法接受。 請問實際應用此款芯片,要怎么計算?
    發表于 01-05 10:20
    主站蜘蛛池模板: 久久亚洲人成国产精品| 特级淫片大乳女子高清视频| 亚洲 天堂 欧美 日韩 国产| 国产午夜电影院| 一本道在线综合久久88| 女人高潮特级毛片| 国产精品高清免费网站| 越南女 黑人 痛苦 大叫| 青青青久久| 好湿好紧水多AAAAA片秀人网| 中文字幕A片视频一区二区| 日本少妇无码精品12P| 韩国三级久久精品| av天堂影音先锋在线| 邪恶肉肉全彩色无遮琉璃神社 | 国产成年人在线观看| 亚洲熟妇AV乱码在线观看| 嫩草影院地址一地址二| 国产精品一国产精品免费| 69精品人人人人| 日韩人妻双飞无码精品久久| 果冻传媒在线完整免费播放| 99精品国产福利在线观看| 午夜福利免费院| 男宿舍里的呻吟h| 含羞草免费完整视频在线观看| avtt天堂网Av无码| 亚洲精品午夜久久久伊人| 欧式午夜理伦三级在线观看| 精品三级久久久久电影网1| 成人小视频在线免费观看| 欲乱艳荡少寡妇全文免费| 无码人妻丰满熟妇区五十路久久| 免费看美女的网站| 精品久久久噜噜噜久久久app| 古代荡女丫鬟高H辣文纯肉| 521人成a天堂v| 野花韩国高清完整版在线观看5| 蛇缚dvd| 青青久久网| 尿了么app|