国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

verilog 從入門到看得懂---verilog 的基本語法數(shù)據(jù)和運(yùn)算

這篇具有很好參考價(jià)值的文章主要介紹了verilog 從入門到看得懂---verilog 的基本語法數(shù)據(jù)和運(yùn)算。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

????????筆者之前主要是使用c語言和matab 進(jìn)行編程,從2024年年初開始接觸verilog,通過了一周的學(xué)習(xí),基本上對verilog 的語法有了基本認(rèn)知??偨y(tǒng)來說,verilog 的語法還是很簡單的,主要難點(diǎn)是verilog是并行運(yùn)行,并且強(qiáng)烈和硬件實(shí)際電路相關(guān),在設(shè)計(jì)到的時(shí)候需要考慮時(shí)序問題和可綜合問題。

時(shí)序問題:因?yàn)関erilog 是基于硬件實(shí)現(xiàn),在實(shí)現(xiàn)的時(shí)候要考慮到硬件電路的建立時(shí)間和穩(wěn)定時(shí)間,所以會(huì)遇到鎖存器。并且在多個(gè)并行的運(yùn)算在耦合到一起時(shí),需要考慮時(shí)序。

可綜合:指的是是否可以生成對應(yīng)的電路,如果一段程序無法生成對應(yīng)的電路,那么這個(gè)程序可能只能進(jìn)行仿真,最后實(shí)際無法在硬件上實(shí)際運(yùn)行。

?

基本設(shè)計(jì)單元

對于c語言中一個(gè)最基本的設(shè)計(jì)單元稱為函數(shù)

void functionname(parameter)

{

funtion description

}

對于verilog 基本設(shè)計(jì)單元?jiǎng)t稱為模塊,結(jié)構(gòu)也類似

module block(parameter)

block desription

endmodule

具體實(shí)例:

module test(a,b,c,d)

input a,b,c;// 可以在block 內(nèi)部進(jìn)行輸入輸出定義 這里沒有指明為寬 則默認(rèn)a,b,c,d 寬帶為1bit

output d;

assign d=a|b|c; // 這里 是對輸入的三個(gè)信號線 abc 進(jìn)行按位求或,主要有一個(gè)問題高電平,則輸出d為高電平

endmodule

如果輸入輸出的數(shù)據(jù)位寬不為1,可以按照如下方式進(jìn)行定義

input [信號位寬-1:0] 端口名字1;

output[信號位寬-1:0] 輸出端口名字;

inout[信號位寬-1:0]? 端口名字;// 這個(gè)端口即是輸入端口又是輸出端口

數(shù)據(jù)定義

數(shù)字表現(xiàn)形式

數(shù)子常用的表現(xiàn)形式包括二進(jìn)制十進(jìn)制和十六進(jìn)制,下面展示了用不同進(jìn)制表示一個(gè)字為10

二進(jìn)制? 4'b1010;

十進(jìn)制 4’d10;

十六進(jìn)制 4‘hA;

如果直接寫10,則默認(rèn)是十進(jìn)制。

對于負(fù)數(shù)則如下表示:

二進(jìn)制? -4'b1010;

十進(jìn)制 -4’d10;

十六進(jìn)制 -4‘hA;

對于c編程中一個(gè)bit只能有兩種情況 true或者false 也即 1或者0.但是對于實(shí)際電路中出了0或者1 還有另外兩個(gè)值,使用x表示不定值,使用z/?代表高阻值

二進(jìn)制? 4'b101z;

十進(jìn)制 4’dz;

十六進(jìn)制 4‘hx;

另外一個(gè)讓我感覺verilog 很貼心的是增加了_ 來對數(shù)據(jù)進(jìn)行分隔,從而提高可讀性,

32’b1111_1110_0001_1101_1011_0011_0101_1101,

希望其他語言中也早點(diǎn)支持這種分隔符,有的時(shí)候真是數(shù)的讓人眼花繚亂。

數(shù)據(jù)類型

verilog 中一共有19個(gè)數(shù)據(jù)類型,其中最常用的為wire,reg,integer和parameter。

1. wire 數(shù)據(jù)類型 常用在表示以assign 關(guān)鍵字指定的組合邏輯信號,verilog 程序模塊中輸入和輸出默認(rèn)為wire 類型,wire 數(shù)據(jù)可以作為任何方程的輸入,但是輸出的時(shí)候需要用到assign

wire[3:0] b;

assign b=10;//定義了一個(gè)wire類型的b 并且給b賦值為10,注意 給wire 賦值的時(shí)候必須用assign。

2. reg型數(shù)據(jù),register? 是數(shù)據(jù)存儲(chǔ)對象的抽象,通過賦值語句可以修改寄存器儲(chǔ)存的數(shù)據(jù),reg數(shù)據(jù)常和always 使用,

reg[3:0] b;

always*?

?b=10;

3. parameter 型數(shù)據(jù)是用來定義常量

module Test()

parameter b=7;// 定義了一個(gè) 參數(shù) 為7? 這個(gè)參數(shù)可以通過上層的模塊修改

........

endmodule

module Topfun()

Test #(10) testexample;//在這里實(shí)例化了Test 并且修改b=10

endmodule

運(yùn)算符和表達(dá)式

verilog 從入門到看得懂---verilog 的基本語法數(shù)據(jù)和運(yùn)算,fpga開發(fā)

verilog 從入門到看得懂---verilog 的基本語法數(shù)據(jù)和運(yùn)算,fpga開發(fā)

verilog 中的運(yùn)算符基本都和c語言中使用方法一致,唯有拼接運(yùn)算符是一個(gè)新的。

reg [7:0] var1;
reg [15:0] var2;

wire [22:0] combined = {var1, var2};// 通過拼接運(yùn)算符把var1和var2 合并到了一起文章來源地址http://www.zghlxwxcb.cn/news/detail-841117.html

到了這里,關(guān)于verilog 從入門到看得懂---verilog 的基本語法數(shù)據(jù)和運(yùn)算的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【FPGA入門】第一篇、Verilog基本語法常識(shí)

    【FPGA入門】第一篇、Verilog基本語法常識(shí)

    目錄 第一部分、不同的變量類型 1、wire和reg的區(qū)別 ?2、如何對變量進(jìn)行賦值呢? 3、什么是阻塞?什么是非阻塞? 第二部分、變量位寬的定義 1、各種系統(tǒng)默認(rèn)情況 2、變量位寬聲明方式 3、表明位寬的情況下,賦值方式 4、兩個(gè)模塊之間例化,不定義變量直接用的方式 5、常

    2024年02月04日
    瀏覽(28)
  • 【機(jī)器學(xué)習(xí)】什么是GAN 小孩都看得懂的 GAN

    【機(jī)器學(xué)習(xí)】什么是GAN 小孩都看得懂的 GAN

    以下內(nèi)容來自:王圣元?王的機(jī)器 0 ? GAN 是什么 GAN 的全稱是 Generative Adversarial Network,中文是 生成對抗網(wǎng)絡(luò) 。 一言以蔽之,GAN 包含了兩個(gè)神經(jīng)網(wǎng)絡(luò), 生成器 (generator)和 辨別器 (discriminator),兩者互相博弈不斷變強(qiáng),即生成器產(chǎn)出的東西越來越逼真,辨別器的識(shí)別能力

    2024年02月01日
    瀏覽(13)
  • 【可樂薦書】有趣的矩陣:看得懂又好看的線性代數(shù)

    【可樂薦書】有趣的矩陣:看得懂又好看的線性代數(shù)

    本欄目將推薦一些經(jīng)典的、有趣的、有啟發(fā)性的書籍,這些書籍涵蓋了各個(gè)領(lǐng)域,包括文學(xué)、歷史、哲學(xué)、科學(xué)、技術(shù)等等。相信這些書籍不僅可以讓你獲得知識(shí),還可以讓你感受到閱讀的樂趣和魅力。 今天給大家推薦的書籍是:《有趣的矩陣:看得懂又好看的線性代數(shù)》

    2024年02月05日
    瀏覽(27)
  • 看得懂的豬周期,牧原們卻不一定跨得過

    看得懂的豬周期,牧原們卻不一定跨得過

    2022年2月16日,全國各省三元豬均價(jià)為12.34元/公斤,較昨日下跌0.13元/公斤,較上周同期豬價(jià)(2月9日)下跌1.20元/公斤。 在供需關(guān)系的支配下,豬肉價(jià)格上漲,散戶蜂擁而上,豬肉供給大增,肉價(jià)下跌,一個(gè)無解的循環(huán)就此形成。 豬周期,是一個(gè)典型的和面加水問題。在繁榮中

    2024年02月04日
    瀏覽(22)
  • 零基礎(chǔ)也能看得懂的AI繪畫教程!靈魂畫師MJ咒語案例展示!

    零基礎(chǔ)也能看得懂的AI繪畫教程!靈魂畫師MJ咒語案例展示!

    當(dāng)談到人工智能技術(shù)應(yīng)用場景時(shí),除了ChatGPT,另外讓人著迷的應(yīng)用就是AI繪畫,隨著圖像生成器的不斷升級和更迭,圖片生成的質(zhì)量也得到了顯著提升。 目前畫圖支持Midjourney和Stable Diffusion,風(fēng)景、人物、動(dòng)物、建筑、夢境等等,都可以用MJ和SD生成,同聊天一樣,只有掌握正

    2024年04月23日
    瀏覽(25)
  • [免費(fèi)專欄] Android安全之Android Xposed插件開發(fā),小白都能看得懂的教程

    [免費(fèi)專欄] Android安全之Android Xposed插件開發(fā),小白都能看得懂的教程

    也許每個(gè)人出生的時(shí)候都以為這世界都是為他一個(gè)人而存在的,當(dāng)他發(fā)現(xiàn)自己錯(cuò)的時(shí)候,他便開始長大 少走了彎路,也就錯(cuò)過了風(fēng)景,無論如何,感謝經(jīng)歷 轉(zhuǎn)移發(fā)布平臺(tái)通知:將不再在CSDN博客發(fā)布新文章,敬請移步知識(shí)星球 感謝大家一直以來對我CSDN博客的關(guān)注和支持,但

    2024年02月09日
    瀏覽(39)
  • Verilog語法(二)——運(yùn)算符

    Verilog HDL 中支持多種運(yùn)算符,包括算術(shù)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符等等。以下是一些常用的運(yùn)算符及其用法。 Verilog 中的算術(shù)運(yùn)算符包括加法、減法、乘法、除法、取模等。它們的用法與常見的編程語言類似,如: 加法:+ 減法:- 乘法:* 除法:/ 取模:

    2024年02月01日
    瀏覽(21)
  • Verilog語法——2.模塊例化、運(yùn)算符

    Verilog語法——2.模塊例化、運(yùn)算符

    參考資料 【明德?lián)P_verilog零基礎(chǔ)入門語法HDL仿真快速掌握-手把手教你寫FPGA/ASIC代碼設(shè)計(jì)流程中的應(yīng)用】 2.1.1 什么是模塊例化 例化,即將項(xiàng)目不斷拆分成次級功能模塊,然后從最簡單的模塊開始實(shí)現(xiàn),進(jìn)而完成整個(gè)復(fù)雜項(xiàng)目 2.1.2 模塊例化的方法 針對已經(jīng)抽象好的模塊,需要

    2024年01月16日
    瀏覽(54)
  • 想要成為 NLP 領(lǐng)域的大牛?從 ChatGPT 的 5 大自然語言模型開始了解吧(LM、Transformer、GPT、RLHF、LLM)——小白也能看得懂

    想要成為 NLP 領(lǐng)域的大牛?從 ChatGPT 的 5 大自然語言模型開始了解吧(LM、Transformer、GPT、RLHF、LLM)——小白也能看得懂

    ??如果想在自然語言處理(Natural Language Processing,NLP)領(lǐng)域內(nèi)脫穎而出,那么你一定不能錯(cuò)過 ChatGPT 的 5 大自然語言模型:LM、Transformer、GPT、RLHF 和 LLM。這些模型是 NLP 領(lǐng)域中最為重要的基礎(chǔ),涵蓋了 語言模型、預(yù)訓(xùn)練模型、生成模型 等關(guān)鍵知識(shí)點(diǎn)。即使你是一個(gè) NLP 小白

    2024年02月09日
    瀏覽(16)
  • Verilog語法學(xué)習(xí)——LV5_位拆分與運(yùn)算

    Verilog語法學(xué)習(xí)——LV5_位拆分與運(yùn)算

    題目來源于??途W(wǎng) [??途W(wǎng)在線編程_Verilog篇_Verilog快速入門 (nowcoder.com)](https://www.nowcoder.com/exam/oj?page=1tab=Verilog篇topicId=301) 題目描述: 現(xiàn)在輸入了一個(gè)壓縮的16位數(shù)據(jù),其實(shí)際上包含了四個(gè)數(shù)據(jù),[3:0],[7:4],[11:8],[15:12] 現(xiàn)在請按照sel選擇輸出四個(gè)數(shù)據(jù)的相加結(jié)果,并輸出valid_out信號

    2024年02月15日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包