|
勇敢的芯伴你玩轉(zhuǎn)Altera FPGA連載32:可綜合的語法子集3 特權(quán)同學(xué),版權(quán)所有 配套例程和更多資料下載鏈接: http://pan.baidu.com/s/1i5LMUUD
多語句定義:begin…end。 通俗的說,它就是C語言里的 “{ }”,用于單個(gè)語法的多個(gè)語句定義。其使用示例如下: // 含有命名的begin語句 begin : <塊名> // 可選申明部分 // 具體邏輯 end // 基本的begin語句 begin // 可選申明部分 // 具體邏輯 end 比較判斷:if…else, case…default…endcase。 判斷語法if…else及case語句是最常用的功能語法,其基本的使用示例如下: // if判斷語句 if(<判斷條件>) begin // 具體邏輯 end // if…else判斷語句 if(<判斷條件>) begin // 具體邏輯1 end else begin // 具體邏輯2 end // if…else if…else判斷語句 if(<判斷條件1>) begin // 具體邏輯1 end else if(<判斷條件2>) begin // 具體邏輯2 end else begin // 具體邏輯3 end // case語句 case(<判斷變量>) <取值1>: <具體邏輯1> <取值2>: <具體邏輯2> <取值3>: <具體邏輯3> default: <具體邏輯4> endcase 循環(huán)語句:for。 用的也比較少,但也會(huì)在一些特定的設(shè)計(jì)中使用它。其示例如下: // for語句 for(<變量名> = <初值>; <判斷表達(dá)式>; <變量名> = <新值>) begin // 具體邏輯 end 任務(wù)定義:task…endtask。 Task更像是C語言中的子函數(shù),task中可以有input、output和inout端口作為出入口參數(shù),它可以用于實(shí)現(xiàn)一個(gè)時(shí)序控制。task沒有返回值,因此不可以用在表達(dá)式中。其基本用法如下: task // 可選申明部分,如本地變量申明 begin // 具體邏輯 end endtask |