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

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

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

關(guān)于HDL和行為語句詳解學(xué)習(xí)

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

關(guān)于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的驗(yàn)證,支持?jǐn)?shù)?;旌希碌腟ystem Verilog加入了HVL(Hardware Verification Language),即硬件驗(yàn)證語言。

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

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

關(guān)于HDL和行為語句:《二》

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

2. 電路的動(dòng)作和實(shí)現(xiàn)細(xì)節(jié),交給EDA自動(dòng)完成,從而解放了設(shè)計(jì)者。

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

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

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

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

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

5. Verilog的行為語句另一個(gè)要素是:行為語句驅(qū)動(dòng)的信號(hào),必須聲明為reg。這里的reg是一個(gè)EDA工具的一個(gè)軟件對(duì)象,并不一定是真的會(huì)綜合為Register。

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

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

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

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

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

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

加油,各位!

原文標(biāo)題:關(guān)于HDL和行為語句

文章出處:【微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

責(zé)任編輯:haq

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

    關(guān)注

    8

    文章

    327

    瀏覽量

    47307

原文標(biāo)題:關(guān)于HDL和行為語句

文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Verilog HDL的基礎(chǔ)知識(shí)

    本文繼續(xù)介紹Verilog HDL基礎(chǔ)知識(shí),重點(diǎn)介紹賦值語句、阻塞與非阻塞、循環(huán)語句、同步與異步、函數(shù)與任務(wù)語法知識(shí)。
    的頭像 發(fā)表于 10-24 15:00 ?142次閱讀
    Verilog <b class='flag-5'>HDL</b>的基礎(chǔ)知識(shí)

    LTspice的編程語句應(yīng)該怎么寫?

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

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

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

    鴻蒙TypeScript入門學(xué)習(xí)第6天:【條件語句

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

    assign語句和always語句的用法

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

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

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

    #2024,立Flag了嘛? #學(xué)習(xí)spinal HDL還需要學(xué)習(xí)對(duì)應(yīng)的Scala語言

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

    單片機(jī)if是什么語句

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

    單片機(jī)中for語句的運(yùn)用

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

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

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

    java中的switch語句 case的取值

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

    C語言的break轉(zhuǎn)移語句講解

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

    select語句的基本語法

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

    SELECT語句的基本格式

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

    sql查詢語句大全及實(shí)例

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