一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

自動連線的神器——emacs verilog mode

li5236 ? 來源:ExASIC ? 作者:ExASIC ? 2022-03-29 14:56 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RTL頂層自動連線聽說過嗎?想學(xué)嗎?我們今天就來介紹自動連線的神器——emacs verilog-mode。

emacs是什么?

江湖流傳版:傳說中神的編輯器。

維基百科版:Emacs(Editor MACroS,宏編輯器),最初由Richard Stallman于1975年在MIT協(xié)同Guy Lewis Steele Jr.共同完成。

verilog-mode是什么

簡單點(diǎn)說就是支持Verilog、SystemVerilog(包括UVM)的emacs語法高亮文件。其中提到Verilog-mode支持Autos——這就是今天的重點(diǎn)。

Verilog-mode是由Michael McNamara mac@verilog.com和Wilson Snyder wsnyder@wsnyder.org編寫。難能可貴的是,這個verilog-mode保持著每月都有更新。

值得一提的是Wilson Snyder就是SystemVerilog開源仿真器Verilator的作者。

verilog-mode Autos有哪些功能

手動編寫的verilog代碼:

image.png

由Autos處理后的Verilog代碼:

image.png

image.png

大家可以看到,verilog-mode自動分析出:

· 模塊的端口輸入和輸出

· 內(nèi)部變量

· 敏感信號列表

· 提取子模塊的端口定義

自動提取子模塊的端口定義來連線是今天的重點(diǎn)中的重點(diǎn)。一般來講,我們實(shí)例化模塊時大部分的信號名與子模塊定義的名字一致即可。如上面代碼中的:

image.png

特殊連接關(guān)系的處理

但常常我們頂層連接時會換一個名字。比如module A有一個輸出端口dat_o,module B有一個輸入端口dat_i,這兩者怎么連?定義模版AUTO_TEMPLATE,如下:

手動編寫的verilog:

image.png

由Autos處理后的verilog代碼:

image.png

在哪里找子模塊定義?

默認(rèn)規(guī)則:

· 當(dāng)前文件夾下找

· 當(dāng)前找不到怎么辦,指定搜索路徑(與verilog仿真器的參數(shù)-y一樣)

使用方法:在頂層endmodule后面指定verilog-library-directories,如下:

image.png

除了寫模版還需要做什么?

只需要Ctrl-C Ctrl-A,僅此而已。

如果修改了子模塊或者模版,再按一次Ctrl-C Ctrl-A。

更多功能

verilog-auto-arg for AUTOARG module instantiations

verilog-auto-ascii-enum for AUTOASCIIENUM enumeration decoding

verilog-auto-assign-modport for AUTOASSIGNMODPORT assignment to/from modport

verilog-auto-inout for AUTOINOUT making hierarchy inouts

verilog-auto-inout-comp for AUTOINOUTCOMP copy complemented i/o

verilog-auto-inout-in for AUTOINOUTIN inputs for all i/o

verilog-auto-inout-modport for AUTOINOUTMODPORT i/o from an interface modport

verilog-auto-inout-module for AUTOINOUTMODULE copying i/o from elsewhere

verilog-auto-inout-param for AUTOINOUTPARAM copying params from elsewhere

verilog-auto-input for AUTOINPUT making hierarchy inputs

verilog-auto-insert-lisp for AUTOINSERTLISP insert code from lisp function

verilog-auto-insert-last for AUTOINSERTLAST insert code from lisp function

verilog-auto-inst for AUTOINST instantiation pins

verilog-auto-star for AUTOINST .* SystemVerilog pins

verilog-auto-inst-param for AUTOINSTPARAM instantiation params

verilog-auto-logic for AUTOLOGIC declaring logic signals

verilog-auto-output for AUTOOUTPUT making hierarchy outputs

verilog-auto-output-every for AUTOOUTPUTEVERY making all outputs

verilog-auto-reg for AUTOREG registers

verilog-auto-reg-input for AUTOREGINPUT instantiation registers

verilog-auto-reset for AUTORESET flop resets

verilog-auto-sense for AUTOSENSE or AS always sensitivity lists

verilog-auto-tieoff for AUTOTIEOFF output tieoffs

verilog-auto-undef for AUTOUNDEF =`undef of local =`defines

verilog-auto-unused for AUTOUNUSED unused inputs/inouts

verilog-auto-wire for AUTOWIRE instantiation wires

verilog-read-defines for reading =`define values

verilog-read-includes for reading =`includes

verilog-mode下載、安裝

新版的GNU Emacs自帶verilog-mode,如果需要最新的verilog-mode可以在官網(wǎng)下載

VIM用戶咋辦?

可以用VIM調(diào)動shell命令執(zhí)行(emacs批處理模式),例如:

:!emacs --batch <filenames.v> -f verilog-batch-auto

是不是很簡單!

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

    關(guān)注

    29

    文章

    1367

    瀏覽量

    112283
  • 編輯器
    +關(guān)注

    關(guān)注

    1

    文章

    822

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    鑫金暉 | 0.3毫米pcb薄板智能絲印及薄板全自動連線解決方案分享

    鑫金暉科技是一家專業(yè)生產(chǎn)絲網(wǎng)印刷設(shè)備、隧道爐烘干設(shè)備以及提供自動連線解決方案的科技型、高新技術(shù)型、專精特新型企業(yè)。在pcb絲印設(shè)備方面,鑫金暉旗下現(xiàn)有:半自動絲印機(jī):垂直式絲印機(jī)、左右(單/雙)跑
    的頭像 發(fā)表于 06-20 19:48 ?179次閱讀
    鑫金暉 | 0.3毫米pcb薄板智能絲印及薄板全<b class='flag-5'>自動</b><b class='flag-5'>連線</b>解決方案分享

    CCLINKIE轉(zhuǎn)PROFINET:電機(jī)的“網(wǎng)絡(luò)沖浪神器”!

    家人們誰懂??!在工業(yè)自動化這個“江湖”里,CCLINKIE和PROFINET就像兩位身懷絕技的大俠,各有各的厲害之處。CCLINKIE是日本電產(chǎn)公司推出的開放式網(wǎng)絡(luò)協(xié)議,數(shù)據(jù)傳輸那叫一個麻溜
    發(fā)表于 05-28 15:21

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

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

    Verilog 電路仿真常見問題 Verilog 在芯片設(shè)計(jì)中的應(yīng)用

    在現(xiàn)代電子設(shè)計(jì)自動化(EDA)領(lǐng)域,Verilog作為一種硬件描述語言,已經(jīng)成為數(shù)字電路設(shè)計(jì)和驗(yàn)證的標(biāo)準(zhǔn)工具。它允許設(shè)計(jì)師以高級抽象的方式定義電路的行為和結(jié)構(gòu),從而簡化了從概念到硅片的整個設(shè)計(jì)流程
    的頭像 發(fā)表于 12-17 09:53 ?1197次閱讀

    Verilog 與 ASIC 設(shè)計(jì)的關(guān)系 Verilog 代碼優(yōu)化技巧

    Verilog與ASIC設(shè)計(jì)的關(guān)系 Verilog作為一種硬件描述語言(HDL),在ASIC設(shè)計(jì)中扮演著至關(guān)重要的角色。ASIC(Application Specific Integrated
    的頭像 發(fā)表于 12-17 09:52 ?1042次閱讀

    Verilog 測試平臺設(shè)計(jì)方法 Verilog FPGA開發(fā)指南

    Verilog測試平臺設(shè)計(jì)方法是Verilog FPGA開發(fā)中的重要環(huán)節(jié),它用于驗(yàn)證Verilog設(shè)計(jì)的正確性和性能。以下是一個詳細(xì)的Verilog測試平臺設(shè)計(jì)方法及
    的頭像 發(fā)表于 12-17 09:50 ?1145次閱讀

    Verilog與VHDL的比較 Verilog HDL編程技巧

    Verilog 與 VHDL 比較 1. 語法和風(fēng)格 VerilogVerilog 的語法更接近于 C 語言,對于有 C 語言背景的工程師來說,學(xué)習(xí)曲線較平緩。它支持結(jié)構(gòu)化編程,代碼更直觀,易于
    的頭像 發(fā)表于 12-17 09:44 ?1705次閱讀

    如何自動生成verilog代碼

    介紹幾種自動生成verilog代碼的方法。
    的頭像 發(fā)表于 11-05 11:45 ?1033次閱讀
    如何<b class='flag-5'>自動</b>生成<b class='flag-5'>verilog</b>代碼

    Verilog硬件描述語言參考手冊

    一. 關(guān)于 IEEE 1364 標(biāo)準(zhǔn)二. Verilog簡介三. 語法總結(jié)四. 編寫Verilog HDL源代碼的標(biāo)準(zhǔn)五. 設(shè)計(jì)流程
    發(fā)表于 11-04 10:12 ?4次下載

    集成電路的互連線材料及其發(fā)展

    尤其是當(dāng)電路的特征尺寸越來越小的時候,互連線引起的各種效應(yīng)是影響電路性能的重要因素。本文闡述了傳統(tǒng)金屬鋁以及合金到現(xiàn)在主流的銅以及正在發(fā)展的新型材料———碳納米管作為互連線的優(yōu)劣,并對新型光互連進(jìn)行了介紹。
    的頭像 發(fā)表于 11-01 11:08 ?2174次閱讀

    system verilog語言簡介

    ICer需要System Verilog語言得加成,這是ICer深度的表現(xiàn)。
    發(fā)表于 11-01 10:44 ?0次下載

    Verilog HDL的基礎(chǔ)知識

    本文繼續(xù)介紹Verilog HDL基礎(chǔ)知識,重點(diǎn)介紹賦值語句、阻塞與非阻塞、循環(huán)語句、同步與異步、函數(shù)與任務(wù)語法知識。
    的頭像 發(fā)表于 10-24 15:00 ?1199次閱讀
    <b class='flag-5'>Verilog</b> HDL的基礎(chǔ)知識

    如何利用Verilog-A開發(fā)器件模型

    Verilog-A對緊湊型模型的支持逐步完善,在模型的實(shí)現(xiàn)上扮演越來越重要的角色,已經(jīng)成為緊湊模型開發(fā)的新標(biāo)準(zhǔn)。而且Verilog-A能夠在抽象級別和應(yīng)用領(lǐng)域中擴(kuò)展SPICE建模和仿真功能,因此學(xué)會
    的頭像 發(fā)表于 10-18 14:16 ?1354次閱讀
    如何利用<b class='flag-5'>Verilog</b>-A開發(fā)器件模型

    使用MODE引腳進(jìn)行簡單的恒壓調(diào)節(jié)

    電子發(fā)燒友網(wǎng)站提供《使用MODE引腳進(jìn)行簡單的恒壓調(diào)節(jié).pdf》資料免費(fèi)下載
    發(fā)表于 08-30 10:05 ?0次下載
    使用<b class='flag-5'>MODE</b>引腳進(jìn)行簡單的恒壓調(diào)節(jié)

    按工控mode鍵進(jìn)平板電腦界面,一進(jìn)去就自動退出來要怎么辦?

    按工控mode鍵進(jìn)平板電腦界面,一進(jìn)去就自動退出來要怎么辦?是版本和系統(tǒng)不完美兼容的問題嗎?
    發(fā)表于 07-25 08:10