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

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

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

關于HDL和行為語句詳解學習

電子工程師 ? 來源:至芯科技 ? 作者:至芯科技 ? 2021-04-15 15:44 ? 次閱讀

關于HDL和行為語句:《一》

1. Verilog HDL和VHDL中,HDL的英文解釋(縮寫拼詞)是:

Verilog HDL(Verilog Hardware Description Language),這里的D是描述Description的首字母。

VHDL(Very High-Speed Integrate Circuit Hardware Description Language),這里的D也是描述的首字母。

也就是說,HDL的D,是描述的意義。HDL也就是硬件描述語言。

2. 為了支持Soc的驗證,支持數(shù)?;旌?,新的System Verilog加入了HVL(Hardware Verification Language),即硬件驗證語言。

3. 合并之前的硬件描述語言功能,稱為HDVL(Hardware Description and Verification Language)

4. 之后EDA,還可能將Design for X的更多功能引入語句,為了不至于在增加縮寫詞的長度,現(xiàn)代的EDA文獻會議中,稱HDL為(Hardware Design Language),即硬件設計語言。這就涵蓋了 EDA語言之后的各種DFx功能。

關于HDL和行為語句:《二》

1. 行為語句Behaviour Statements,是EDA的一次飛躍。它描述電路的外在行為,而不必描述電路的動作細節(jié)。

2. 電路的動作和實現(xiàn)細節(jié),交給EDA自動完成,從而解放了設計者。

3. 因此,國外教程解釋,行為語句描述電路“What do”,而不需要描述“How to do”。

4. Verilog對行為語句的描述有特定的要求:

《1》。 行為語句必須放置在一個特定的語法架構中,EDA才對其進行處理(識別為需要綜合的行為);這個特定語法架構,稱為行為體(Behaviour Body)

《2》。 Verilog語法提供兩個行為體,一個是循環(huán)行為體(Cycle-Behaviour body);一個是初始化行為體(Initial -Behaviour body)

《3》。 我們知道并常使用的always語句塊,就是循環(huán)行為體。Verilog的行為語句,只有放置在它的beginj-end塊之中,才能夠被EDA識別。

5. Verilog的行為語句另一個要素是:行為語句驅動的信號,必須聲明為reg。這里的reg是一個EDA工具的一個軟件對象,并不一定是真的會綜合為Register。

6. Verilog行為語句的第三個要素是:非綜合目的描述時,需要信號敏感表支持,非綜合目的時,循環(huán)行為體將在電腦中執(zhí)行算法,僅僅當信號敏感表中列出的信號發(fā)生變更時,非綜合目的的軟件才執(zhí)行一次該行為體,從而減輕CPU開銷。

7. 但Verilog的信號敏感表,有時也與綜合有關(VHDL與綜合無關)。即信號敏感表中若有而且有一個沿敏感信號,在循環(huán)體中未被引用,則Verilog將為之綜合一個寄存器,用這個寄存器捕獲行為體中的所有輸出信號,并用唯一未被引用的沿敏感信號作為時鐘

一定要實際做一遍,才能得到體驗。所以再次引用林彪的那句話:

“理解的要執(zhí)行”

“暫時不理解的也要執(zhí)行”

“在執(zhí)行中加深理解”

加油,各位!

原文標題:關于HDL和行為語句

文章出處:【微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

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

    關注

    8

    文章

    324

    瀏覽量

    47284

原文標題:關于HDL和行為語句

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    LTspice的編程語句應該怎么寫?

    有關LTspice電路仿真軟件的使用,應該怎么編寫一個變壓器的語句,尤其是多路輸出的,并且這個軟件是否支持多路浮動電源輸出,就像反激式開關電源那樣副邊多路浮地? 有關LTspice的軟件使用有什么資料推薦,重點是關于編程語句編寫
    發(fā)表于 10-11 19:19

    行為分析智能監(jiān)測攝像機

    行為分析智能監(jiān)測攝像機是一種結合了人工智能和機器學習技術的智能設備,能夠實時監(jiān)測目標區(qū)域內(nèi)的行為動態(tài),并通過分析和識別行為特征來提供安全監(jiān)控和管理。這種攝像機在安防領域、智能交通和智能
    的頭像 發(fā)表于 08-21 10:14 ?191次閱讀
    <b class='flag-5'>行為</b>分析智能監(jiān)測攝像機

    鴻蒙TypeScript入門學習第6天:【條件語句

    條件語句用于基于不同的條件來執(zhí)行不同的動作。 TypeScript 條件語句是通過一條或多條語句的執(zhí)行結果(True 或 False)來決定執(zhí)行的代碼塊。
    的頭像 發(fā)表于 04-01 13:51 ?682次閱讀
    鴻蒙TypeScript入門<b class='flag-5'>學習</b>第6天:【條件<b class='flag-5'>語句</b>】

    assign語句和always語句的用法

    Assign語句和Always語句是在硬件描述語言(HDL)中常用的兩種語句,用于對數(shù)字電路建模和設計。Assign語句用于連續(xù)賦值,而Al
    的頭像 發(fā)表于 02-22 16:24 ?1931次閱讀

    verilog中initial和always的區(qū)別

    Verilog是一種硬件描述語言(HDL),用于設計和模擬數(shù)字電路。在Verilog中,關鍵字initial和always都是用于描述電路行為的特殊語句。它們被用來生成仿真模型,并控制模擬器的啟動
    的頭像 發(fā)表于 02-22 16:09 ?2118次閱讀

    #2024,立Flag了嘛? #學習spinal HDL還需要學習對應的Scala語言

    學習spinal HDL還需要學習對應的Scala語言,但是spinal HDL直接貼近硬件編程,不知道對于學習spinal
    發(fā)表于 01-21 11:11

    單片機if是什么語句

    單片機中的if語句是一種條件語句,用于根據(jù)不同的條件執(zhí)行不同的代碼塊。在程序執(zhí)行過程中,條件語句用來決定是否執(zhí)行特定的代碼段。在單片機編程中,if語句是最常見和最基礎的一種條件
    的頭像 發(fā)表于 01-05 14:04 ?1445次閱讀

    單片機中for語句的運用

    單片機中的for語句是一種常見的循環(huán)控制結構,用于重復執(zhí)行一段代碼塊,可以簡化程序的編寫和減少代碼量。本文將詳細介紹單片機中for語句的運用。 一、for語句的基本結構和功能 for語句
    的頭像 發(fā)表于 01-05 14:02 ?1872次閱讀

    oracle執(zhí)行sql查詢語句的步驟是什么

    Oracle數(shù)據(jù)庫是一種常用的關系型數(shù)據(jù)庫管理系統(tǒng),具有強大的SQL查詢功能。Oracle執(zhí)行SQL查詢語句的步驟包括編寫SQL語句、解析SQL語句、生成執(zhí)行計劃、執(zhí)行SQL語句、返回
    的頭像 發(fā)表于 12-06 10:49 ?849次閱讀

    java中的switch語句 case的取值

    expression的值與value2的值匹配時執(zhí)行的代碼塊 break ;... default : // 當expression的值與所有case中的值都不匹配時執(zhí)行的代碼塊 } 以下是關于switch語句中case的取值的詳細解釋: 取值可以是整
    的頭像 發(fā)表于 11-30 16:05 ?887次閱讀

    C語言的break轉移語句講解

    C語言的break轉移語句是一種用于跳出循環(huán)或者switch語句的控制結構。它的作用是提前結束循環(huán)或者switch語句,從而避免不必要的計算或者執(zhí)行。
    的頭像 發(fā)表于 11-22 15:34 ?576次閱讀
    C語言的break轉移<b class='flag-5'>語句</b>講解

    select語句的基本語法

    SELECT語句是SQL(Structured Query Language,結構化查詢語言)中的一種查詢語句,用于從數(shù)據(jù)庫中檢索數(shù)據(jù)。它是數(shù)據(jù)庫操作中最常用和基本的語句之一。在本文中,我將為您詳盡
    的頭像 發(fā)表于 11-17 16:23 ?1661次閱讀

    SELECT語句的基本格式

    SELECT語句是SQL中最基本和最重要的語句之一。它被用于從數(shù)據(jù)庫中檢索數(shù)據(jù)。在本文中,我們將詳細介紹SELECT語句的基本格式和各個組成部分。 SELECT語句的基本格式如下: S
    的頭像 發(fā)表于 11-17 15:10 ?2467次閱讀

    sql查詢語句大全及實例

    SQL(Structured Query Language)是一種專門用于數(shù)據(jù)庫管理系統(tǒng)的標準交互式數(shù)據(jù)庫查詢語言。它被廣泛應用于數(shù)據(jù)庫管理和數(shù)據(jù)操作領域。在本文中,我們將為您詳細介紹SQL查詢語句
    的頭像 發(fā)表于 11-17 15:06 ?1315次閱讀

    講解MATLAB/Simulink HDL使用入門

    我們將使用實例講解MATLAB / Simulink HDL 使用入門。
    的頭像 發(fā)表于 11-06 09:12 ?1157次閱讀
    講解MATLAB/Simulink <b class='flag-5'>HDL</b>使用入門