91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

自動(dòng)連線的神器——emacs verilog mode

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

掃碼添加小助手

加入工程師交流群

RTL頂層自動(dòng)連線聽(tīng)說(shuō)過(guò)嗎?想學(xué)嗎?我們今天就來(lái)介紹自動(dòng)連線的神器——emacs verilog-mode。

emacs是什么?

江湖流傳版:傳說(shuō)中神的編輯器。

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

verilog-mode是什么

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

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

值得一提的是Wilson Snyder就是SystemVerilog開(kāi)源仿真器Verilator的作者。

verilog-mode Autos有哪些功能

手動(dòng)編寫(xiě)的verilog代碼:

image.png

由Autos處理后的Verilog代碼:

image.png

image.png

大家可以看到,verilog-mode自動(dòng)分析出:

· 模塊的端口輸入和輸出

· 內(nèi)部變量

· 敏感信號(hào)列表

· 提取子模塊的端口定義

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

image.png

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

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

手動(dòng)編寫(xiě)的verilog:

image.png

由Autos處理后的verilog代碼:

image.png

在哪里找子模塊定義?

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

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

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

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

image.png

除了寫(xiě)模版還需要做什么?

只需要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)動(dòng)shell命令執(zhí)行(emacs批處理模式),例如:

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

是不是很簡(jiǎn)單!

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

    關(guān)注

    30

    文章

    1374

    瀏覽量

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

    關(guān)注

    1

    文章

    828

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Verilog HDL語(yǔ)法學(xué)習(xí)筆記

    Verilog HDL 語(yǔ) 言 最 初 是 作為 Gateway Design Automation 公 司 ( Gateway DesignAutomation 公司后來(lái)被著名的 Cadence Design Systems 公司收購(gòu))模擬器產(chǎn)品開(kāi)發(fā)的硬件建模語(yǔ)言。
    的頭像 發(fā)表于 03-04 15:04 ?3709次閱讀
    <b class='flag-5'>Verilog</b> HDL語(yǔ)法學(xué)習(xí)筆記

    深入剖析MAX6639/MAX6639F:雙路溫度監(jiān)控與自動(dòng)PWM風(fēng)扇調(diào)速神器

    深入剖析MAX6639/MAX6639F:雙路溫度監(jiān)控與自動(dòng)PWM風(fēng)扇調(diào)速神器 引言 在電子設(shè)備的設(shè)計(jì)中,溫度控制和風(fēng)扇調(diào)速是至關(guān)重要的環(huán)節(jié)。有效的溫度管理不僅能確保設(shè)備穩(wěn)定運(yùn)行,還能延長(zhǎng)其使用壽命
    的頭像 發(fā)表于 02-28 16:30 ?485次閱讀

    原理圖手動(dòng)連線太繁瑣,自動(dòng)連線來(lái)救場(chǎng)!

    原理圖繪圖中有比較多且繁瑣的操作,還極其容易出錯(cuò)。比如:1.逐條網(wǎng)絡(luò)命名:在原理圖中為大量重要的電源、時(shí)鐘、差分對(duì)網(wǎng)絡(luò)手動(dòng)添加有意義的名稱(如DDR_DQ[0],PCIe_CLK100M_P),極其耗時(shí)。2.總線(Bus)創(chuàng)建與連接:手動(dòng)將幾十個(gè)甚至上百個(gè)信號(hào)線(如DATA0~DATA63)組合成總線,并確保原理圖符號(hào)和PCB布局中的連接正確無(wú)誤,非常容易出
    的頭像 發(fā)表于 11-10 18:30 ?663次閱讀
    原理圖手動(dòng)<b class='flag-5'>連線</b>太繁瑣,<b class='flag-5'>自動(dòng)</b><b class='flag-5'>連線</b>來(lái)救場(chǎng)!

    使用NucleiStudio生成tb仿真需要的.verilog文件

    打開(kāi)仿真頂層文件tb_top.v,存放在ITCM模塊里面的指令是通過(guò)readmemh函數(shù)讀入.verilog文件實(shí)現(xiàn)的: 下面通過(guò)對(duì)NucleiStudio IDE進(jìn)行設(shè)置,實(shí)現(xiàn)將c
    發(fā)表于 11-05 07:07

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

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

    構(gòu)建適用于三維集成系統(tǒng)的互連線長(zhǎng)分布模型

    在三維集成電路設(shè)計(jì)中,TSV技術(shù)通過(guò)垂直互連顯著優(yōu)化了互連線長(zhǎng)分布特性?;趥愄囟傻慕?jīng)典分析框架,可構(gòu)建適用于三維集成系統(tǒng)的互連線長(zhǎng)分布模型。
    的頭像 發(fā)表于 08-21 10:41 ?1140次閱讀
    構(gòu)建適用于三維集成系統(tǒng)的互<b class='flag-5'>連線</b>長(zhǎng)分布模型

    如何在Linux系統(tǒng)開(kāi)啟Persistence Mode

    難道是驅(qū)動(dòng)老舊?資源不足?系統(tǒng)問(wèn)題?都不是——真相藏在一個(gè)容易被忽略的小設(shè)置里:Persistence Mode(持久模式)。
    的頭像 發(fā)表于 08-13 14:27 ?1211次閱讀
    如何在Linux系統(tǒng)開(kāi)啟Persistence <b class='flag-5'>Mode</b>

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

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

    (ST大賽三等獎(jiǎng)作品)超聲波自拍神器實(shí)例項(xiàng)目

    (ST大賽三等獎(jiǎng)作品)超聲波自拍神器電路圖:
    發(fā)表于 05-28 21:04

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

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

    verilog模塊的調(diào)用、任務(wù)和函數(shù)

    在做模塊劃分時(shí),通常會(huì)出現(xiàn)這種情形,某個(gè)大的模塊中包含了一個(gè)或多個(gè)功能子模塊,verilog是通過(guò)模塊調(diào)用或稱為模塊實(shí)例化的方式來(lái)實(shí)現(xiàn)這些子模塊與高層模塊的連接的.
    的頭像 發(fā)表于 05-03 10:29 ?1569次閱讀
    <b class='flag-5'>verilog</b>模塊的調(diào)用、任務(wù)和函數(shù)

    HT 可視化監(jiān)控頁(yè)面的 2D 與 3D 連線效果

    連線效果是如何實(shí)現(xiàn)的。我們將從 基本概念、實(shí)現(xiàn)步驟、關(guān)鍵代碼 多個(gè)維度,逐步剖析這個(gè)效果的具體實(shí)現(xiàn)過(guò)程,為你提供全面的知識(shí)和實(shí)踐指導(dǎo)。 盡管 2D 與 3D 連線效果看起來(lái)復(fù)雜,其本質(zhì)仍然是二維節(jié)點(diǎn)之間的連接。只需要通過(guò)一些巧妙的技術(shù),
    的頭像 發(fā)表于 04-09 11:28 ?1519次閱讀
    HT 可視化監(jiān)控頁(yè)面的 2D 與 3D <b class='flag-5'>連線</b>效果

    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 ?1438次閱讀
    FPGA <b class='flag-5'>Verilog</b> HDL語(yǔ)法之編譯預(yù)處理

    Nexperia擴(kuò)展E-mode GaN FET產(chǎn)品組合

    Nexperia近日宣布其E-mode GaN FET產(chǎn)品組合新增12款新器件。本次產(chǎn)品發(fā)布旨在滿足市場(chǎng)對(duì)更高效、更緊湊系統(tǒng)日益增長(zhǎng)的需求。這些新型低壓和高壓E-mode GaN FET適用于多個(gè)
    的頭像 發(fā)表于 03-19 17:16 ?1359次閱讀

    一文詳解Verilog HDL

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