衡阳派盒市场营销有限公司

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

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

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

FPGA學(xué)習(xí)系列:if-else與case

FPGA學(xué)習(xí)交流 ? 2018-06-01 16:59 ? 次閱讀

設(shè)計(jì)背景:

不管是在什么軟件和硬件語(yǔ)言,我們?cè)谖覀兊拇a中都或多或少的用到這兩條語(yǔ)句,if..else與case語(yǔ)句,今天我們將學(xué)習(xí)verilog中的這兩條語(yǔ)句,其實(shí)不管在什么語(yǔ)言中這兩個(gè)語(yǔ)句都是一樣的邏輯。

設(shè)計(jì)原理:

if...else 條件語(yǔ)句的作用是根據(jù)指定的端盤條件是否滿足來(lái)確定下一步要執(zhí)行的操作他們的書(shū)寫(xiě)格式如下

(1)if (條件語(yǔ)句) (2)if(條件語(yǔ)句) (3)if(條件語(yǔ)句)

語(yǔ)句 語(yǔ)句 語(yǔ)句

else else if(條件語(yǔ)句)

語(yǔ)句 語(yǔ)句

else

語(yǔ)句

(1)語(yǔ)句是if(條件語(yǔ)句)滿足則條件成立,也就是這個(gè)邏輯執(zhí)行結(jié)果為1,則執(zhí)行條件語(yǔ)句成立執(zhí)行的語(yǔ)句,如果不滿足,就執(zhí)行else給出的條件語(yǔ)塊,然后才推出這個(gè)條件語(yǔ)句。


(2)語(yǔ)句是if(條件語(yǔ)句)滿足則條件成立,也就是這個(gè)邏輯執(zhí)行結(jié)果為1,則執(zhí)行條件語(yǔ)句成立執(zhí)行的語(yǔ)句,如果不滿足則直接推出條件語(yǔ)句。


(3)語(yǔ)句是if(條件語(yǔ)句)滿足則條件成立,也就是這個(gè)邏輯執(zhí)行結(jié)果為1,則執(zhí)行條件語(yǔ)句成立執(zhí)行的語(yǔ)句,如果不滿足,就判斷else if(語(yǔ)句塊)是否滿足,如果滿足就就執(zhí)行else if 條件給出的語(yǔ)句,如果也不滿足這個(gè)條件就執(zhí)行else 給出的語(yǔ)句,然后執(zhí)行完就退出條件語(yǔ)句。

if ... else 條件語(yǔ)句也允許語(yǔ)句的嵌套也就是

if(...)

..

else

if()

...

else

等語(yǔ)句塊

代碼演示

module led_run (a, b, c);

input a, b; //定義輸入輸出

output reg c;

always @ (*)

if(a) //判斷a是否為1

c = b; //如果是1的話,就是b的值給c

else

c = ~b; //如果不是1的話,就把b的反值給c

endmodule

仿真圖:

仿真中我們可以看到和我們寫(xiě)的分析邏輯一樣,a = 1 的時(shí)候。b = 0, c = 0 ,a = 0的時(shí)候, b = 0,c = 1 ........

case 語(yǔ)句是另一種可以實(shí)現(xiàn)多路分支控制的分支語(yǔ)句,和使用if - else 相比,采用case 語(yǔ)句實(shí)現(xiàn)多路控制看起來(lái)代碼邏輯看起來(lái)更加清楚明了。

case (控制表達(dá)式)

<分支表達(dá)式1> : 語(yǔ)句塊 1

<分支表達(dá)式2> : 語(yǔ)句塊 2

<分支表達(dá)式3> : 語(yǔ)句塊 3

...............

default : 語(yǔ)句塊;

endcase

控制表達(dá)式代表著對(duì)程序流向進(jìn)行控制的控制信號(hào),各個(gè)分支語(yǔ)句表達(dá)式代表著控制表達(dá)式的狀態(tài)取值,通常分支表達(dá)式都是一些常量表達(dá)式,各個(gè)語(yǔ)句在分支表達(dá)式滿足的情況下執(zhí)行相應(yīng)的語(yǔ)句塊語(yǔ)句,最后有一個(gè)關(guān)鍵字default 分支項(xiàng),這個(gè)項(xiàng)可以缺失,在case語(yǔ)句中分支語(yǔ)句的值各不相同,如果相同就會(huì)出現(xiàn)矛盾的現(xiàn)象,這應(yīng)該不是我們想要的。

代碼演示

0moduleled_run (a,b,sel,c);

1

2 inputa,b; //定義輸入輸出

3 input[1:0]sel;//輸入選擇位

4 outputregc;

5

6 always@(*)

7 case(sel)

8 2'b00 :c =a;//選擇位為0,把a值給c

9 2'b01:c =b; //選擇位為1,把b值給c

10 2'b10:c =~a;//選擇位為2,把a反值給c

11 2'b11:c =~b;//選擇位為3,把a反值給c

12 default:c =0;//否則c =0

13 endcase

14

15endmodule

仿真圖:


仿真中我們可以看到和我們寫(xiě)的分析邏輯一樣,a = 1 的時(shí)候。b = 0,sel = 1;c = 0 ,a = 1的時(shí)候, b = 0,sel = 0,c = 1 ........


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

    關(guān)注

    0

    文章

    27

    瀏覽量

    13402
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA加速深度學(xué)習(xí)模型的案例

    FPGA(現(xiàn)場(chǎng)可編程門陣列)加速深度學(xué)習(xí)模型是當(dāng)前硬件加速領(lǐng)域的一個(gè)熱門研究方向。以下是一些FPGA加速深度學(xué)習(xí)模型的案例: 一、基于FPGA
    的頭像 發(fā)表于 10-25 09:22 ?351次閱讀

    FPGA做深度學(xué)習(xí)能走多遠(yuǎn)?

    今天給大俠帶來(lái)在FPAG技術(shù)交流群里平時(shí)討論的問(wèn)題答疑合集(十四),以后還會(huì)多推出本系列,話不多說(shuō),上貨。 FPGA技術(shù)交流群目前已有十多個(gè)群,QQ和微信均覆蓋,有需要的大俠可以進(jìn)群,一起交流學(xué)習(xí)
    發(fā)表于 09-27 20:53

    FPGA學(xué)習(xí)筆記---基本語(yǔ)法

    3、信號(hào)類型:wire, reg, tri等 4、參數(shù)定義:parameter 5、運(yùn)算操作符:各種邏輯操作符、移位操作符、算數(shù)操作符等 6、比較判斷:if ... else, case
    發(fā)表于 06-23 14:58

    FPGA學(xué)習(xí)重點(diǎn)是什么?

    FPGA學(xué)習(xí)重點(diǎn)是什么?
    發(fā)表于 05-24 07:38

    FPGA學(xué)習(xí)筆記-關(guān)于FPGA資源

    FPGA學(xué)習(xí)。 在學(xué)習(xí)中才發(fā)現(xiàn),FPGA遠(yuǎn)不是門電路那么簡(jiǎn)單。FPGA中有各種需要的資源,比如門電路、存儲(chǔ)單元、片內(nèi)RAM、嵌入式乘法器、
    發(fā)表于 05-22 18:27

    FPGA基礎(chǔ)知識(shí)學(xué)習(xí)

    、導(dǎo)航系統(tǒng)等。這些系統(tǒng)對(duì)實(shí)時(shí)性和可靠性要求極高,FPGA能夠滿足這些需求。 人工智能和深度學(xué)習(xí)FPGA可以用于加速深度學(xué)習(xí)算法的計(jì)算和訓(xùn)練過(guò)程,提供高性能和低功耗的解決方案。隨著人
    發(fā)表于 04-29 23:26

    Xilinx 7系列FPGA功能特性介紹

    Xilinx7系列FPGA由四個(gè)FPGA系列組成,可滿足一系列系統(tǒng)需求,從低成本、小尺寸、成本敏感的大容量應(yīng)用到最苛刻的高性能應(yīng)用的超高端連
    發(fā)表于 04-22 10:49 ?5760次閱讀
    Xilinx 7<b class='flag-5'>系列</b><b class='flag-5'>FPGA</b>功能特性介紹

    FPGA學(xué)習(xí)筆記-入門

    大概10年前,大學(xué)同學(xué)建議我學(xué)習(xí)DSP。當(dāng)因?yàn)楣ぷ髅Γ仓皇呛?jiǎn)單學(xué)習(xí)了DSP的一些基礎(chǔ)知識(shí),沒(méi)有進(jìn)一步深入學(xué)習(xí)和時(shí)間。結(jié)果現(xiàn)在,好像DSP已經(jīng)不再是主流了,現(xiàn)在有了FPGA。 現(xiàn)在想想
    發(fā)表于 04-09 10:55

    FPGA初步學(xué)習(xí)印象

    了。FPGA出現(xiàn)后,也想學(xué)習(xí)學(xué)習(xí)這方面的知識(shí)。抱著先簡(jiǎn)單學(xué)習(xí)下的態(tài)度,在網(wǎng)上找資料看看。感覺(jué)FPGA,就像是利用芯片內(nèi)部資源,自由組合門電路
    發(fā)表于 04-09 09:46

    FPGA學(xué)習(xí)資料分享

    本帖最后由 1653149838.791300 于 2024-3-31 13:24 編輯 FPGA學(xué)習(xí)首先是要熟悉掌握使用硬件描述語(yǔ)言,這方面可以通過(guò)書(shū)籍或者這方面論壇,這里個(gè)人分享一個(gè)比較好
    發(fā)表于 03-31 13:23

    fpga要學(xué)哪些東西

    學(xué)習(xí)FPGA需要掌握一系列的知識(shí)和技能,主要包括以下幾個(gè)方面。
    的頭像 發(fā)表于 03-27 14:40 ?1158次閱讀

    Intel fpga芯片系列有哪些

    Intel FPGA芯片系列主要包括以下幾種。
    的頭像 發(fā)表于 03-14 16:28 ?1159次閱讀

    Xilinx fpga芯片系列有哪些

    Xilinx FPGA芯片擁有多個(gè)系列和型號(hào),以滿足不同應(yīng)用領(lǐng)域的需求。以下是一些主要的Xilinx FPGA芯片系列及其特點(diǎn)。
    的頭像 發(fā)表于 03-14 16:24 ?3529次閱讀

    fpga芯片系列介紹

    FPGA芯片系列眾多,不同廠商會(huì)推出各具特色的產(chǎn)品系列以滿足不同的應(yīng)用需求。以下是一些主要的FPGA芯片系列
    的頭像 發(fā)表于 03-14 16:15 ?1391次閱讀

    fpga學(xué)習(xí)需要具備哪些課程

    FPGA(Field Programmable Gate Array)學(xué)習(xí)需要具備一系列的課程知識(shí)和實(shí)踐技能
    的頭像 發(fā)表于 03-14 15:51 ?1305次閱讀
    百家乐如何切牌好| 澳门百家乐官网网站bt| 大发888 娱乐场| 百家乐官网桌布| 大发888游戏官方网站| 网上百家乐官网娱乐场开户注册 | 百家乐官网筹码托盘| 蒙特卡罗代理| 免费百家乐官网平预测软件| 2013现金棋牌游戏| 澳门百家乐然后赢| 皇冠百家乐官网在线游戏| 澳门博彩8345cc| 单机百家乐在线小游戏| 百家乐官网变牌器| 百家乐筹码片| 百家乐官网园qq群| 百家乐官网知敌便能制胜| 大发888游戏软件下载| 环球百家乐现金网| 百家乐官网技巧心得| 大发888资讯| 澳门百家乐真人娱乐场| 百家乐官网专家赢钱打法| qq德州扑克怎么玩| 百家乐官网轮盘技巧| 宝都棋牌下载| 试用的百家乐软件| 柬埔寨百家乐官网的玩法技巧和规则 | 做生意摆放风水好吗| 江都市| 大发888官方网址| 蓝盾百家乐赌场| 大世界百家乐官网娱乐| 平泉县| 顶级赌场官方下载| 百家乐娱乐网址| 玩百家乐官网掉房| qq百家乐官网网络平台| 瑞丰国际娱乐城| 大发888娱乐场漏洞|