<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一文看懂VHDL和Verilog有何不同

          一文看懂VHDL和Verilog有何不同

          作者: 時間:2018-11-08 來源:網絡 收藏

            當前最流行的硬件設計語言有兩種,即 HDL,兩者各有優(yōu)劣,也各有相當多的擁護者。 語言由美國軍方所推出,最早通過國際電機工程師學會(IEEE)的標準,在北美及歐洲應用非常普遍。而 HDL 語言則由 Gateway 公司提出,這家公司輾轉被Cadence所購并,并得到Synopsys的支持。在得到這兩大 EDA 公司的支持后,也隨后通過了 IEEE 標準,在美國、日本及中國臺灣地區(qū)使用非常普遍。

          本文引用地址:http://www.ex-cimer.com/article/201811/394035.htm

            我們把這兩種語言具體比較下:

            1.整體結構

            點評:

            兩者結構基本相似,并行語句的種類也類似;

            語言需要進行大量說明,程序通常比較長;

             HDL通常不進行說明,或只進行非常簡短的說明,程序比較簡短。

            2.數據對象及類型

            VHDL

            常量 信號 變量 9種預定義類型 各類用戶定義類型

            可描述各類不同的量

            必須進行類型說明

            運算時必須考慮類型的一致性和適用性

            Verilog HDL

            常量: 數量,參量

            變量:網絡型 寄存器型

            類型種類少

            運算時所受的約束少

            3.運算符號

            運算主要分為3類 : 算術運算 邏輯運算 關系運算

            算術運算

            VHDL中有10種 但很多都不能進行綜合,只能用于行為描述

            Verilog HDL中只有能夠綜合的5種

            邏輯運算

            VHDL中 有常用的6種,均用字符形式表達

            Verilog HDL中有3類共14種,

            分為一般邏輯運算,位邏輯運算,縮減邏輯運算

            關系運算

            VHDL中有6種

            Verilog HDL中有2類共8種,對比增加了全等和不全等(用于對不定態(tài)比較)。

            除了以上3類運算外,VHDL中還有連接運算,Verilog HDL中還有連接運算、移位運算和條件運算。

            點評:

            VHDL的運算劃分比較抽象,適應面較廣

            Verilog HDL的運算劃分比較具體,對邏輯代數反映更細致一些。

            4.語句

            兩種語言的語句都分為并行語句和順序語句,并行語句在主程序中使用,順序語句只能在子結構中使用;

            并行語句都分為3種形式:


          上一頁 1 2 下一頁

          關鍵詞: VHDL Verilog

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();