chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

全網(wǎng)最全總結(jié)FPGA的Veilog HDL語(yǔ)法、框架

GReq_mcu168 ? 來(lái)源:果果小師弟 ? 作者:智果芯 ? 2021-06-30 15:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

摘要:Verilog HDL硬件描述語(yǔ)言是在用途最廣泛的C語(yǔ)言的基礎(chǔ)上發(fā)展起來(lái)的一種硬件描述語(yǔ)言,具有靈活性高、易學(xué)易用等特點(diǎn)。Verilog HDL可以在較短的時(shí)間內(nèi)學(xué)習(xí)和掌握,FPGA的Veilog HDL基礎(chǔ)語(yǔ)法總結(jié),看完這些,F(xiàn)PGA的基本語(yǔ)法應(yīng)該就沒(méi)啥問(wèn)題了!

一、基礎(chǔ)知識(shí)1、邏輯值邏輯0:表示低電平,也就對(duì)應(yīng)我們電路GND;

邏輯1:表示高電平,也就是對(duì)應(yīng)我們電路的VCC;

邏輯X:表示未知,有可能是高電平,也有可能是低電平;

邏輯Z:表示高阻態(tài),外部沒(méi)有激勵(lì)信號(hào),是一個(gè)懸空狀態(tài)。

2、進(jìn)制格式Verilog數(shù)字進(jìn)制格式包括二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制。

一般常用的為二進(jìn)制、十進(jìn)制和十六進(jìn)制。

二進(jìn)制表示如下:4b0101表示4位二進(jìn)制數(shù)字0101

十進(jìn)制表示如下:4‘d2表示4位十進(jìn)制數(shù)字2(二進(jìn)制0010)

十六進(jìn)制表示如下:4ha表示4位十六進(jìn)制數(shù)字a(二進(jìn)制1010)

16’b1001 1010 1010 1001=16‘h9AA9

3、標(biāo)識(shí)符標(biāo)識(shí)符(identifier)用于定義模塊名、端口名、信號(hào)名等。

標(biāo)識(shí)符可以是任意一組字母、數(shù)字、$符號(hào)和(下劃線)符號(hào)的組合;

但標(biāo)識(shí)符的第一個(gè)字符必須是字母或者下劃線;

標(biāo)識(shí)符是區(qū)分大小寫的;

4、標(biāo)識(shí)符推薦寫法不建議大小寫混合使用;

普通內(nèi)部信號(hào)建議全部小寫;

信號(hào)命名最好體現(xiàn)信號(hào)的含義,簡(jiǎn)潔、清晰、易懂;

以下是一些推薦的寫法:

1、用有意義的有效的名字如sum、cpu_addr等。

2、用下劃線區(qū)分詞,如cpu addr。

3、采用一些前綴或后綴,比如時(shí)鐘采用clk前綴:clk_50,clk_cpu;

二、數(shù)據(jù)類型在Verilog 語(yǔ)言中,主要有三大類數(shù)據(jù)類型。

寄存器數(shù)據(jù)類型、線網(wǎng)數(shù)據(jù)類型和參數(shù)數(shù)據(jù)類型。

從名稱中,我們可以看出,真正在數(shù)字電路中起作用的數(shù)據(jù)類型應(yīng)該是寄存器數(shù)據(jù)類型和線網(wǎng)數(shù)據(jù)類型。

1、寄存器類型寄存器表示一個(gè)抽象的數(shù)據(jù)存儲(chǔ)單元,通過(guò)賦值語(yǔ)句可以改變寄存器儲(chǔ)存的值寄存器數(shù)據(jù)類型的關(guān)鍵字是reg,reg類型數(shù)據(jù)的默認(rèn)初始值為不定值x。

ecf4dc88-d96f-11eb-9e57-12bb97331649.png

reg類型的數(shù)據(jù)只能在always語(yǔ)句和initial語(yǔ)句中被賦值。

如果該過(guò)程語(yǔ)句描述的是時(shí)序邏輯,即always語(yǔ)句帶有時(shí)鐘信號(hào),則該寄存器變量對(duì)應(yīng)為觸發(fā)器;

如果該過(guò)程語(yǔ)句描述的是組合邏輯,即always語(yǔ)句不帶有時(shí)鐘信號(hào),則該寄存器變量對(duì)應(yīng)為硬件連線;

//計(jì)數(shù)器對(duì)系統(tǒng)時(shí)鐘計(jì)數(shù),計(jì)時(shí)0.2秒

always @(posedge sys_clk or negedge sys_rst_n) begin

if (!sys_rst_n)

counter 《= 24’d0;

else if (counter 《 24‘d999_9999)

counter 《= counter + 1’b1;

else

counter 《= 24‘d0;

end

//通過(guò)移位寄存器控制IO口的高低電平,從而改變LED的顯示狀態(tài)

always @(posedge sys_clk or negedge sys_rst_n) begin

if (!sys_rst_n)

led 《= 4’b0001;

else if(counter == 24‘d999_9999)

led[3:0] 《= {led[2:0],led[3]};

else

led 《= led;

end

2、線網(wǎng)類型線網(wǎng)數(shù)據(jù)類型表示結(jié)構(gòu)實(shí)體(例如門)之間的物理連線。

線網(wǎng)類型的變量不能儲(chǔ)存值,它的值是由驅(qū)動(dòng)它的元件所決定的。驅(qū)動(dòng)線網(wǎng)類型變量的元件有門、連續(xù)賦值語(yǔ)句、assign等。

如果沒(méi)有驅(qū)動(dòng)元件連接到線網(wǎng)類型的變量上,則該變量就是高阻的,即其值為z。

線網(wǎng)數(shù)據(jù)類型包括wire型和tri型,其中最常用的就是wire類型。

ed07e206-d96f-11eb-9e57-12bb97331649.png

3、參數(shù)類型參數(shù)其實(shí)就是一個(gè)常量,在Verilog HDL中用parameter定義常量。

我們可以一次定義多個(gè)參數(shù),參數(shù)與參數(shù)之間需要用逗號(hào)隔開。

每個(gè)參數(shù)定義的右邊必須是一個(gè)常數(shù)表達(dá)式。

ed160f84-d96f-11eb-9e57-12bb97331649.png

參數(shù)型數(shù)據(jù)常用于定義狀態(tài)機(jī)的狀態(tài)、數(shù)據(jù)位寬和延遲大小等。

采用標(biāo)識(shí)符來(lái)代表一個(gè)常量可以提高程序的可讀性和可維護(hù)性。

在模塊調(diào)用時(shí),可通過(guò)參數(shù)傳遞來(lái)改變被調(diào)用模塊中已定義的參數(shù)。

三、運(yùn)算符1、算數(shù)運(yùn)算符2、關(guān)系運(yùn)算符3、邏輯運(yùn)算符4、條件操作符result=(a》=b)?a:b;

5、位運(yùn)算符6、移位運(yùn)算符兩種移位運(yùn)算都用0來(lái)填補(bǔ)移出的空位。

左移時(shí),位寬增加;右移時(shí),位寬不變。

4b1001 《《2 = 6’b100100;

4b1001 》》1 = 4b0100;

7、拼接運(yùn)算符c={a,b[3:0];

8、優(yōu)先級(jí)運(yùn)算符四、模塊結(jié)構(gòu)Verilog的基本設(shè)計(jì)單元是“模塊“(block)。

一個(gè)模塊是由兩部分組成的,一部分描述接口,另一部分描述邏輯功能。

edc4bfe8-d96f-11eb-9e57-12bb97331649.png

使用quartusii軟件編寫出上圖左邊的硬件描述代碼,通過(guò)軟件編譯,就能生成最右邊組合邏輯電路圖來(lái)。每個(gè)Verilog程序包括4個(gè)主要的部分:端口定義、I0說(shuō)明、內(nèi)部信號(hào)聲明、功能定義。

edfdbda2-d96f-11eb-9e57-12bb97331649.png

流水燈代碼

上圖時(shí)流水燈的代碼,第一個(gè)always塊代碼的意思:

如果時(shí)鐘信號(hào)的上升沿或者復(fù)位信號(hào)的下降沿到來(lái),就執(zhí)行begin與end之間的代碼。

如果產(chǎn)生了復(fù)位信號(hào)(低電平),計(jì)數(shù)器清0,如果計(jì)數(shù)器的值小于10000000,計(jì)數(shù)器的值就+1,如果沒(méi)有產(chǎn)生復(fù)位信號(hào)和計(jì)數(shù)值不小于10000000,計(jì)數(shù)器的值就為0。在這個(gè)always塊中,邏輯是順序執(zhí)行的。

第二個(gè)always塊代碼的意思:

如果時(shí)鐘信號(hào)的上升沿或者復(fù)位信號(hào)的下降沿到來(lái),就執(zhí)行begin與end之間的代碼。如果產(chǎn)生了復(fù)位信號(hào)(低電平),led0點(diǎn)亮,如果計(jì)數(shù)器的值小于10000000,led0-3順序點(diǎn)亮,如果沒(méi)有產(chǎn)生復(fù)位信號(hào)和計(jì)數(shù)值不小于10000000,led燈狀態(tài)保持不變。在這個(gè)always塊中,邏輯是順序執(zhí)行的。

但是這個(gè)always塊代碼是并行執(zhí)行的,也就是說(shuō)時(shí)鐘信號(hào)一直在產(chǎn)生。

功能定義部分有三種方法:

1、assign語(yǔ)句描述組合邏輯

2、always語(yǔ)句描述組合/時(shí)序邏輯

3、例化實(shí)例元件

上述三種邏輯功能是并行執(zhí)行的。

五、結(jié)構(gòu)語(yǔ)句1、initial和always語(yǔ)句initial語(yǔ)句它在模塊中只執(zhí)行一次。

它常用于測(cè)試文件的編寫,用來(lái)產(chǎn)生仿真測(cè)試信號(hào)(激勵(lì)信號(hào)),或者用于對(duì)存儲(chǔ)器變量賦初值。

always 語(yǔ)句一直在不斷地重復(fù)活動(dòng)。但是只有和一定的時(shí)間控制結(jié)合在一起才有作用。

一般initial語(yǔ)句常用于測(cè)試文件,在測(cè)試文件中初始化使用。比如上面的代碼首先始終信號(hào)初始化為0,之后在always語(yǔ)句中讓其10個(gè)時(shí)鐘周期翻轉(zhuǎn)一次,就達(dá)到了時(shí)鐘的要求。

復(fù)位信號(hào)最開始為低電平,然后延時(shí)20個(gè)時(shí)鐘周期就拉高。觸摸按鍵信號(hào)最開始為低電平,延時(shí)10和時(shí)鐘周期后拉高,再延時(shí)30個(gè)時(shí)鐘周期再拉低,延時(shí)110個(gè)時(shí)鐘周期再拉高,再延時(shí)30個(gè)時(shí)鐘周期再拉低。

always的時(shí)間控制可以是沿觸發(fā),也可以是電平觸發(fā);可以是單個(gè)信號(hào),也可以是多個(gè)信號(hào),多個(gè)信號(hào)中間要用關(guān)鍵字or連接。always 語(yǔ)句后緊跟的過(guò)程塊是否運(yùn)行,要看它的觸發(fā)條件是否滿足。

ee277200-d96f-11eb-9e57-12bb97331649.png

沿觸發(fā)的always塊常常描述時(shí)序邏輯行為。由關(guān)鍵詞or連接的多個(gè)事件名或信號(hào)名組成的列表稱為“敏感列表”。

電平觸發(fā)的always塊常常描述組合邏輯行為。

ee4b6746-d96f-11eb-9e57-12bb97331649.png

2、組合邏輯和時(shí)序邏輯電路根據(jù)邏輯功能的不同特點(diǎn),可以將數(shù)字電路分成兩大類:

組合邏輯電路和時(shí)序邏輯電路。

組合邏輯電路中,任意時(shí)刻的輸出僅僅取決于該時(shí)刻的輸入,與電路原來(lái)的狀態(tài)無(wú)關(guān)。

時(shí)序邏輯電路中,任時(shí)刻的輸出不僅取決于當(dāng)時(shí)的輸入信號(hào),而且還取決于電路原來(lái)的狀態(tài)。或者說(shuō)還與以前的輸入有關(guān),因此時(shí)序邏輯必須具備記憶功能。

3、賦值語(yǔ)句Verilog HDL 語(yǔ)言中,信號(hào)有兩種賦值方式

1、阻塞賦值(blocking),如b=a

2、非阻塞賦值(Non_Blocking),如b《=a

3.1、阻塞賦值

阻塞賦值可以認(rèn)為只有一個(gè)步驟的操作:即計(jì)算RHS(左側(cè))并更新LHS(右側(cè))。

所謂阻塞的概念是指,在同一個(gè)always塊中,后面的賦值語(yǔ)句是在前一句賦值語(yǔ)句結(jié)束后才開始賦值的。

module block_nonblock(Clk,Rst_n,a,b,c,out)

input Clk;

input Rst_n;

input a;

input b;

input c;

output reg [1:0] out;

// out a + b + c;最大值為3,所以應(yīng)該定義為2位的位寬// d = a+b;// out = d+c;

reg [1:0]d;//定義一個(gè)中間變量

always @(posedge Clk or negedge Rst_n)

if (!Rst_n)

out = 2‘b0;

else begin

d = a+b;

out = d+c;

end

endmodule

eeb79c9a-d96f-11eb-9e57-12bb97331649.png

現(xiàn)在我們改變一下d= a+b;out = d+c;的順序,就會(huì)發(fā)現(xiàn)綜合出來(lái)的電路是完全不同的。

module block_nonblock(Clk,Rst_n,a,b,c,out)

input Clk;

input Rst_n;

input a;

input b;

input c;

output reg [1:0] out;

reg [1:0]d;//定義一個(gè)中間變量

always @(posedge Clk or negedge Rst_n)

if (!Rst_n)

out = 2’b0;

else begin

out = d+c;

d = a+b;

end

endmodule

ef0fe4d6-d96f-11eb-9e57-12bb97331649.png

3.2、非阻塞賦值

非阻塞賦值的操作過(guò)程可以看作兩個(gè)步驟

(1)賦值開始的時(shí)候,計(jì)算RHS(左側(cè));

(2)賦值結(jié)束的時(shí)候,更新LHS(右側(cè))。

所謂非阻塞的概念是指,在計(jì)算非阻塞賦值的RHS以及更新LHS期間,允許其他的非阻塞賦值語(yǔ)句同時(shí)計(jì)算RHS和更新LHS。

非阻塞賦值只能用于對(duì)寄存器類型的變量進(jìn)行賦值,因此只能用在initial塊和always塊等過(guò)程塊中。

還是用上面的例子

module block_nonblock(Clk,Rst_n,a,b,c,out)

input Clk;

input Rst_n;

input a;

input b;

input c;

output reg [1:0] out;

reg [1:0]d;//定義一個(gè)中間變量

always @(posedge Clk or negedge Rst_n)

if (!Rst_n)

out = 2‘b0;

else begin

d 《= a+b;

out 《= d+c;

end

endmodule

生成效果如下:

ef5f4062-d96f-11eb-9e57-12bb97331649.png

現(xiàn)在我們改變一下d= a+b;out = d+c;的順序,就會(huì)發(fā)現(xiàn)綜合出來(lái)的電路是完全相同的。這里由于采用的非阻塞賦值,因此交換語(yǔ)句的前后順序并不會(huì)對(duì)最終生成的邏輯電路有實(shí)際影響。

module block_nonblock(Clk,Rst_n,a,b,c,out)

input Clk;

input Rst_n;

input a;

input b;

input c;

output reg [1:0] out;

reg [1:0]d;//定義一個(gè)中間變量

always @(posedge Clk or negedge Rst_n)

if (!Rst_n)

out = 2’b0;

else begin

out 《= d+c;

d 《= a+b;

end

endmodule

ef7ff80c-d96f-11eb-9e57-12bb97331649.png

1、在描述組合邏輯(電平觸發(fā))的always 塊中用阻塞賦值=,綜合成組合邏輯的電路結(jié)構(gòu);這種電路結(jié)構(gòu)只與輸入電平的變化有關(guān)系。

2、在描述時(shí)序邏輯(沿觸發(fā))的always 塊中用非阻塞賦值=,綜合成時(shí)序邏輯的電路結(jié)構(gòu);這種電路結(jié)構(gòu)往往與觸發(fā)沿有關(guān)系,只有在觸發(fā)沿時(shí)才可能發(fā)生賦值的變化。

“注意:在同一個(gè)always塊中不要既用非阻塞賦值又用阻塞賦值不充許在多個(gè)always塊中對(duì)同一個(gè)變量進(jìn)行賦值!因?yàn)樵诙鄠€(gè)always塊中代碼時(shí)并行執(zhí)行的?!币话阍谠O(shè)計(jì)中掌握以下六個(gè)原則,可解決在綜合后仿真中出現(xiàn)絕大多數(shù)的冒險(xiǎn)競(jìng)爭(zhēng)問(wèn)題。

1)時(shí)序電路(沿觸發(fā)的always塊)建模時(shí),用非阻塞賦值;

2)鎖存器電路建模時(shí),用非阻塞賦值;

3)用always塊建立組合邏輯(電平觸發(fā)的always塊)模型時(shí),用阻塞賦值;

4)在同一個(gè)always塊中建立時(shí)序和組合邏輯電路時(shí),用非阻塞賦值:

5)在同一個(gè)always塊中不要既用非阻塞賦值又用阻塞賦值;

6)不要在一個(gè)以上的always塊中為同一個(gè)變量賦值。

4、條件語(yǔ)句條件語(yǔ)句必須在過(guò)程塊中使用。過(guò)程塊語(yǔ)句是指由initial語(yǔ)句和always語(yǔ)句引導(dǎo)的塊語(yǔ)句。

4.1 if_else語(yǔ)句

1、允許一定形式的簡(jiǎn)寫,如:

if(a) 等同于if(a==1)

if(la)等同于if(a!=1)

2、if語(yǔ)句對(duì)表達(dá)式的值進(jìn)行判斷,若為0,x,z,則按假處理;若為1,按真處理。

3、if和else后面的操作語(yǔ)句可以用begin和end包含多個(gè)語(yǔ)句。

4、允許if語(yǔ)句的嵌套。

4.1 case語(yǔ)句

case語(yǔ)句(多分支選擇語(yǔ)句)

1、分支表達(dá)式的值互不相同;

2、所有表達(dá)式的位寬必須相等;不能用’bx來(lái)代替n‘bx

3、casez比較時(shí),不考慮表達(dá)式中的高阻值

4、casex不考慮高阻值z(mì)和不定值x

f0065802-d96f-11eb-9e57-12bb97331649.png

注意if_else需要配對(duì),一個(gè)if語(yǔ)句就應(yīng)該必須有一個(gè)else語(yǔ)句。好處是避免latch產(chǎn)生。latch是一個(gè)鎖存器,在數(shù)字電路中l(wèi)atch是一個(gè)電平觸發(fā)的存儲(chǔ)器,觸發(fā)器是一個(gè)邊沿觸發(fā)的存儲(chǔ)器。在編寫veilog語(yǔ)句中應(yīng)避免產(chǎn)生無(wú)畏鎖存器,鎖存器只在組合邏輯電路中產(chǎn)成,而鎖存器會(huì)導(dǎo)致電路生成的毛刺比較多,還會(huì)影響我們對(duì)整個(gè)電路的時(shí)序分析。

什么樣的情況下會(huì)產(chǎn)生這個(gè)鎖存器呢?

首先在組合邏輯電路中,如果我們有if語(yǔ)句但是沒(méi)有相應(yīng)的else語(yǔ)句,他就有可能產(chǎn)生鎖存器。第二點(diǎn),比如case語(yǔ)句,如果我們的case語(yǔ)句沒(méi)有給完全,沒(méi)有列舉完所有應(yīng)該的產(chǎn)生的case語(yǔ)句,就應(yīng)該寫一個(gè)default,否則也會(huì)生成一個(gè)鎖存器。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 電路
    +關(guān)注

    關(guān)注

    173

    文章

    6074

    瀏覽量

    178213
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    39

    文章

    7730

    瀏覽量

    171545
  • 鎖存器
    +關(guān)注

    關(guān)注

    8

    文章

    956

    瀏覽量

    44567
  • 非阻塞賦值
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    10118

原文標(biāo)題:FPGA的Veilog HDL語(yǔ)法、框架總結(jié)

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    從網(wǎng)絡(luò)接口到 DMA,一套面向工程師的 FPGA 網(wǎng)絡(luò)開發(fā)框架

    快速開發(fā) FPGA 加速網(wǎng)絡(luò)應(yīng)用的開源框架,是連接?高速網(wǎng)絡(luò)接口、FPGA 邏輯與主機(jī)處理器?的工程級(jí)利器。 什么是 Liberouter NDK? NDK 全稱 Network
    的頭像 發(fā)表于 02-12 11:28 ?258次閱讀
    從網(wǎng)絡(luò)接口到 DMA,一套面向工程師的 <b class='flag-5'>FPGA</b> 網(wǎng)絡(luò)開發(fā)<b class='flag-5'>框架</b>

    RK平臺(tái)聲卡基礎(chǔ)知識(shí)總結(jié)(基于ALSA框架

    RK 平臺(tái)聲卡基于ALSA(Advanced Linux Sound Architecture)框架構(gòu)建,核心目標(biāo)是實(shí)現(xiàn)音頻數(shù)據(jù)的“采集 - 傳輸 - 處理 - 輸出” 全鏈路管理。其本質(zhì)是通過(guò)
    的頭像 發(fā)表于 02-06 16:58 ?3139次閱讀
    RK平臺(tái)聲卡基礎(chǔ)知識(shí)<b class='flag-5'>總結(jié)</b>(基于ALSA<b class='flag-5'>框架</b>)

    FPGA 入門必看:Verilog 與 VHDL 編程基礎(chǔ)解析!

    很多開發(fā)者第一次接觸FPGA,都會(huì)有同樣的疑問(wèn):FPGA是硬件,不是軟件,怎么寫程序?答案就是用硬件描述語(yǔ)言(HDL),最常用的就是Verilog和VHDL。今天,我們就帶你入門,搞清楚FPG
    的頭像 發(fā)表于 01-19 09:05 ?386次閱讀
    <b class='flag-5'>FPGA</b> 入門必看:Verilog 與 VHDL 編程基礎(chǔ)解析!

    簡(jiǎn)單易用的嵌入式軟件程序框架

    1、程序框架的重要性 很多人尤其是初學(xué)者在寫代碼的時(shí)候往往都是想一點(diǎn)寫一點(diǎn),最開始沒(méi)有一個(gè)整體的規(guī)劃,導(dǎo)致后面代碼越寫越亂,bug不斷。 最終代碼跑起來(lái)看似沒(méi)有問(wèn)題(有可能也真的沒(méi)有問(wèn)題),但是要加
    發(fā)表于 12-25 07:45

    【產(chǎn)品介紹】Modelsim:HDL語(yǔ)言仿真軟件

    概述ModelSim是業(yè)界最優(yōu)秀的HDL語(yǔ)言仿真軟件,它能提供友好的仿真環(huán)境,是業(yè)界唯一的單內(nèi)核支持VHDL和Verilog混合仿真的仿真器。它采用直接優(yōu)化的編譯技術(shù)、Tcl/Tk技術(shù)、和單一內(nèi)核
    的頭像 發(fā)表于 11-13 11:41 ?461次閱讀
    【產(chǎn)品介紹】Modelsim:<b class='flag-5'>HDL</b>語(yǔ)言仿真軟件

    【開源FPGA硬件】硬件黑客集結(jié):開源FPGA開發(fā)板測(cè)評(píng)活動(dòng)全網(wǎng)火熱招募中......

    式發(fā)布啦!現(xiàn)面向全網(wǎng)招募第一批工程師/硬件愛好者,開發(fā)板免費(fèi)試用測(cè)試?yán)玻?優(yōu)秀試用報(bào)告,將作為板卡配套資料發(fā)布~ 相關(guān)鏈接: 擁抱開源!一起來(lái)做FPGA開發(fā)板啦!火爆開發(fā)中 | 開源FPGA硬件板卡
    發(fā)表于 10-29 11:37

    語(yǔ)法糾錯(cuò)和testbench的自動(dòng)生成

    在編寫Verilog代碼時(shí),我一般都是先在編輯器上寫完,因?yàn)榫庉嬈鱲scode或者notepad++可以提供語(yǔ)法高亮和自動(dòng)補(bǔ)全等功能,然后用仿真器跑仿真,但是在編寫過(guò)程中不可避免的會(huì)有一些語(yǔ)法的錯(cuò)誤
    發(fā)表于 10-27 07:07

    如何利用Verilog HDLFPGA上實(shí)現(xiàn)SRAM的讀寫測(cè)試

    本篇將詳細(xì)介紹如何利用Verilog HDLFPGA上實(shí)現(xiàn)SRAM的讀寫測(cè)試。SRAM是一種非易失性存儲(chǔ)器,具有高速讀取和寫入的特點(diǎn)。在FPGA中實(shí)現(xiàn)SRAM讀寫測(cè)試,包括設(shè)計(jì)SRAM接口模塊
    的頭像 發(fā)表于 10-22 17:21 ?4312次閱讀
    如何利用Verilog <b class='flag-5'>HDL</b>在<b class='flag-5'>FPGA</b>上實(shí)現(xiàn)SRAM的讀寫測(cè)試

    使用Simulink自動(dòng)生成浮點(diǎn)運(yùn)算HDL代碼(Part 1)

    ,生成的HDL代碼與目標(biāo)無(wú)關(guān)??梢栽谌魏瓮ㄓ?b class='flag-5'>FPGA或ASIC上部署該設(shè)計(jì)。 下面介紹如何在Simulink中創(chuàng)建單精度浮點(diǎn)乘法 直接使用乘法模塊即可,并將輸入口改為單精度浮點(diǎn) 使用Ctrl + g
    發(fā)表于 10-22 06:48

    基于FPGA開發(fā)板TSP的串口通信設(shè)計(jì)

    本文詳細(xì)介紹基于Terasic FPGA開發(fā)板TSP(又名C5P和OSK)和其板載CP2102N USB-UART橋接芯片的串口通信系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。系統(tǒng)采用Verilog HDL編寫UART收發(fā)控制器,通過(guò)CP2102N實(shí)現(xiàn)FPGA
    的頭像 發(fā)表于 10-15 11:05 ?4415次閱讀
    基于<b class='flag-5'>FPGA</b>開發(fā)板TSP的串口通信設(shè)計(jì)

    全網(wǎng)最全CSA3412,BCT4340,VL162,MCU/ USB3.1 正反插10G bps四種解決方案

    CSA3412,BCT4340,VL162,MCU/ USB3.1 全網(wǎng)最全正反插10G bps四種解決方案
    的頭像 發(fā)表于 09-25 03:06 ?661次閱讀
    <b class='flag-5'>全網(wǎng)</b><b class='flag-5'>最全</b>CSA3412,BCT4340,VL162,MCU/ USB3.1 正反插10G bps四種解決方案

    擁抱開源!一起來(lái)做FPGA開發(fā)板啦!

    進(jìn)展:Review原理圖、PCB; 5、7月29日,發(fā)布最終原理圖及PCB,送板廠貼片及加工; 6、8月5日,全網(wǎng)第三次發(fā)布開源項(xiàng)目進(jìn)展,開展第一期FPGA直播:FPGA 市場(chǎng)及技術(shù)講解
    發(fā)表于 06-06 14:05

    FPGA芯片選型的核心原則

    本文總結(jié)FPGA選型的核心原則和流程,旨在為設(shè)計(jì)人員提供決策依據(jù),確保項(xiàng)目成功。
    的頭像 發(fā)表于 04-30 10:58 ?1636次閱讀

    FPGA Verilog HDL語(yǔ)法之編譯預(yù)處理

    Verilog HDL語(yǔ)言和C語(yǔ)言一樣也提供了編譯預(yù)處理的功能?!熬幾g預(yù)處理”是Verilog HDL編譯系統(tǒng)的一個(gè)組成部分。Verilog HDL語(yǔ)言允許在程序中使用幾種特殊的命令(它們不是一般
    的頭像 發(fā)表于 03-27 13:30 ?1390次閱讀
    <b class='flag-5'>FPGA</b> Verilog <b class='flag-5'>HDL</b><b class='flag-5'>語(yǔ)法</b>之編譯預(yù)處理

    一文詳解Verilog HDL

    Verilog HDL(Hardware Description Language)是一種硬件描述語(yǔ)言,用于從算法級(jí)、門級(jí)到開關(guān)級(jí)的多種抽象設(shè)計(jì)層次的數(shù)字系統(tǒng)建模?,F(xiàn)實(shí)生活中多用于專用集成電路
    的頭像 發(fā)表于 03-17 15:17 ?4227次閱讀
    一文詳解Verilog <b class='flag-5'>HDL</b>