在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

數字電路里面有什么元素需要被描述?

電子工程師 ? 來源:未知 ? 作者:李倩 ? 2018-09-07 14:47 ? 次閱讀

初識Verilog描述-1

“Verilog不同于C,Python,JAVA等軟件語言,Verilog是以數字電路知識為背景支撐,以對數字電路系統進行描述的一門語言。因此用Verilog描述數字電路,必須要有數字電路知識為背景支撐。否則描述出來的電路性能將會很差。本篇我們先了解一下最基本的Verilog對數字電路描述的方法與代碼風格,具體語法細節在這不做過多解釋。”

在了解Verilog基本構成之前,先要了解數字電路里面有什么元素需要被描述。

如下圖所示,為一個實例電路外部原理圖:

從外部看一個電路需要描述的元素如下:

電路名字

輸入端口以及位寬

輸出端口以及位寬

端口描述有兩種方式。

以上圖為例:

(1)

module share_1(

clk,

rst_n,

a,

b,

data_out

);

input clk;

input rst_n;

input[7:0] a;

input[7:0] b;

output[8:0] data_out;

(2)

module share_1(

input clk,

input rst_n,

input [7:0] a,

input [7:0] b,

output [8:0] data_out

);

下圖為其內部電路結構:

電路內部需要描述元素有:

信號的類型:reg型(所有在always電路里面將要做改變的信號),wire型(電路信號連線)

如上例電路:輸入信號本來就為電路信號連線,且在端口聲明中已經聲明,無需再做wire 聲明。

輸出信號data_out是寄存器的輸出,因此聲明為: reg[8:0] data_out;

節點信號add_out(對應電路上的OUT),為加法器的輸出。如果加法器是用always塊實現的,如下:

always @( * ) begin

add_out = a+b;

end

則聲明為reg型: reg[8:0] add_out;

如果加法器是用assign語句實現的,如下:

assign add_out = a+b;

則聲明為wire型: wire[8:0] add_out;

注意:所有聲明必須帶上位寬,否則系統工具將其默認為單位寬,如上信號add_out為9位寬,因此聲明為 reg [8:0] add_out;

組合邏輯電路: 可以利用 assign 或者 always @(*) 語句描述。一般復雜的組合邏輯電路利用 always @(*)語句塊描述。如上加法器的實現既可以用always語句實現,也可以利用assign語句實現。

寄存器(有如下幾種常用的不同的寄存器模型):

(1) 時鐘信號上升沿驅動,復位信號低電平有效,與時鐘異步復位:

always @( posedge clk or negedge rst_n ) begin

if( !rst_n )

data_out <= 8h00;

else

data_out <= data_in;

end

(2)時鐘信號上升沿驅動,復位信號高電平有效,與時鐘異步復位:

always @( posedge clk or posedge rst ) begin

if( rst )

data_out <= 8h00;

else

data_out <= data_in;

end

(3) 時鐘信號下降沿驅動,復位信號高電平有效,與時鐘同步復位:

always @( negedge clk ) begin

if( rst_n )

data_out <= 8h00;

else

data_out <= data_in;

end

(4)時鐘信號上升沿驅動,復位信號低電平有效,與時鐘同步復位,并且帶有高電平使能信號:

always @( posedge clk ) begin

if( !rst_n )

data_out <= 8h00;

else if( enable )

data_out <= data_in;

else

data_out <= data_out;

end

給出兩種完整的描述方式,大家自行體會,電路功能為帶寄存器輸出的8位無符號數加法器:

(1)

module share_1(

clk,

rst_n,

a,

b,

data_out

);

input clk;

input rst_n;

input[7:0] a;

input[7:0] b;

output[8:0] data_out;

reg[8:0] data_out;

wire[8:0] add_out;

assign add_out = a+b;

always @( posedge clk or negedge rst_n ) begin

if( !rst_n )

data_out <= 9h00;? ? ? ? ? ? ? ? ? ? ? ? ??

else

data_out <= add_out;? ? ? ? ? ? ? ? ? ? ? ??

end

endmodule

(2)

module share_1(

input clk,

input rst_n,

input [7:0] a,

input [7:0] b,

output [8:0] data_out

);

reg[8:0] data_out ;

reg[8:0] add_out;

always @( * ) begin

add_out = a+b;

end

always @( posedge clk or negedge rst_n ) begin

if( !rst_n )

data_out <= 9h00;? ? ? ? ? ? ? ? ? ? ? ??

else

data_out <= add_out;? ? ? ? ? ? ? ? ? ? ??

end

endmodule

注:這里只是帶著大家從電路入手,宏觀的了解一下Verilog描述數字電路的結構與注意事項,具體語法可自行學習。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 邏輯電路
    +關注

    關注

    13

    文章

    494

    瀏覽量

    42627
  • Verilog
    +關注

    關注

    28

    文章

    1351

    瀏覽量

    110107
  • 數字電路
    +關注

    關注

    193

    文章

    1605

    瀏覽量

    80629

原文標題:初識Verilog描述-1

文章出處:【微信號:LF-FPGA,微信公眾號:小魚FPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    數字電路和模擬電路的工作各有何特點?

    數字電路和模擬電路電路設計和控制中兩種主要的電路類型。雖然它們都是電路的基本組成部分,但它們在工作原理、特點和應用方
    的頭像 發表于 12-08 10:06 ?2654次閱讀

    什么是數字電路

    、波形圖等來表達電路的主要功能。  隨著計算技術的發展,為了分析、仿真與設計數字電路數字系統,還可以采用硬件描述語言,使用如ABEL語言等軟件,借助計算機來分析、仿真與設計
    發表于 04-06 23:45

    華為《高速數字電路設計教材》

    華為《高速數字電路設計教材》這本書是專門為電路設計工程師寫的。主要描述模擬電路原理在高速數字電路設計中的分析應用
    發表于 09-01 23:20

    數字電路的應用介紹

      當今時代,數字電路已廣泛地應用于各個領域。本報將在“電路與制作”欄里,刊登系列文章介紹數字電路的基本知識和應用實例。    在介紹基本知識時,我們將以集成數字電路為主,該
    發表于 08-28 15:36

    新編數字電路數字邏輯

    內容簡介  為適應電子信息時代的新形勢和應用型本科院校培養應用型人才的迫切需要,經過教學改革與實踐,我們編寫了這本《新編數字電路數字邏輯》教材。全書共分8章,分別為:數字電路基礎知識
    發表于 10-28 21:36

    DIY Protoboard數字電路

    描述DIY Protoboard 數字電路用于電子電路的 0.100" 原型板。這對數字和模擬設計都有好處
    發表于 07-27 06:31

    數字電路設計

    數字電路設計 關于高速數字電路的電氣特性,設計重點大略可分為三項: 正時(Timing) :由于數字電路
    發表于 08-26 19:08 ?2836次閱讀

    《VHDL與數字電路設計》

    《VHDL與數字電路設計》是有盧毅、賴杰主編的,主要介紹涉及數字系統設計的多方面原理、技術及應用,主要內容有數字系統的基本設計思想、設計方法和設計步驟, VHDL 硬件描述語言
    發表于 07-11 15:54 ?0次下載
    《VHDL與<b class='flag-5'>數字電路</b>設計》

    數字電路

    數字電路篇,VHDL資料,又需要的下來看看
    發表于 08-08 17:03 ?66次下載

    什么是模擬電路 什么是數字電路

      模擬信號和數字信號的特點不同,處理這兩種信號的方法和電路也不同。一般地, 電子電路可分為模擬電路數字電路兩大類?!   ?. 模擬
    的頭像 發表于 10-16 10:25 ?10.1w次閱讀

    數字電路比模擬電路的優點

    本文主要詳細介紹了數字電路比模擬電路的優點,分別是數字電路結構簡單、數字電路容易標準化、數字電路能夠滿足對信號保真度的要求。
    發表于 05-16 17:50 ?1.8w次閱讀

    VHDL概述及在描述數字電路時的結構

    本文介紹了一種硬件描述語言VHDL,以及它在描述數字電路時的結構。我們還將介紹一些介紹性的示例電路描述,并討論“std_logical”和“
    發表于 07-21 11:30 ?2548次閱讀
    VHDL概述及在<b class='flag-5'>描述</b><b class='flag-5'>數字電路</b>時的結構

    基于FPGA的數字電路設計

    數字電路作為一門專業基礎課,除了介紹數字電路的理論知識外,更需要通過配套的實驗平臺將理論知識和實踐環節相結合,培養學生的動手能力和實踐創新能力。
    的頭像 發表于 08-16 12:03 ?7611次閱讀
    基于FPGA的<b class='flag-5'>數字電路</b>設計

    數字電路設計的基本流程

    數字電路設計是數字電路最為關鍵及重要的一步,今天我們將從各個流程為大家介紹完整的數字電路設計!
    的頭像 發表于 07-10 17:14 ?7822次閱讀

    建立/保持時間對數字電路的影響

    之一,它對數字電路的運作和性能產生著重要的影響。在本文中,我們將探討時間與數字電路之間的關系,并分析它對于數字電路性能的影響。 數字電路包括各類邏輯門、計數器、觸發器和存儲器等多種器件
    的頭像 發表于 10-29 14:21 ?725次閱讀
    主站蜘蛛池模板: 男人日女人免费视频 | 国产成人综合网在线播放 | 国产亚洲精品久久久久久久软件 | 在线亚洲欧美性天天影院 | 超级狂色而且免费又超好看 | 野外啪啪抽搐一进一出 | 日本一区视频在线播放 | 五月综合色 | 免费午夜视频 | 国产美女一级高清免费观看 | 日本不卡在线一区二区三区视频 | 一级毛片aa | 色偷偷91综合久久噜噜噜男男 | 爱逼色 | 国产叼嘿视频免费网站 | 亚洲天堂电影在线观看 | 色极影院 | 五月婷婷啪啪 | 天天摸天天插 | 国产乱辈通伦影片在线播放 | 亚洲第一在线播放 | 日本人视频-jlzz jlzz jlzz | 天天舔天天干 | 美女大黄三级视频在线观看 | 国产三片理论电影在线 | 台湾香港澳门三级在线 | 亚洲国产精品综合久久网络 | 中文字幕一区二区三区乱码aⅴ | 欧美色综合高清免费 | 黄色在线网站 | 美女扒开尿口让男人30视频 | 亚洲综合成人在线 | 久久国产99| 国产精品漂亮美女在线观看 | 新版天堂中文资源官网 | 日日天天干| 亚洲成人伊人网 | 在线三级网 | 久久婷婷六月 | 玖操在线 | 噜噜噜久久 |