RTL頂層自動連線聽說過嗎?想學嗎?我們今天就來介紹自動連線的神器——emacs verilog-mode。
emacs是什么?
江湖流傳版:傳說中神的編輯器。
維基百科版:Emacs(Editor MACroS,宏編輯器),最初由Richard Stallman于1975年在MIT協(xié)同Guy Lewis Steele Jr.共同完成。
verilog-mode是什么
官網(wǎng)的介紹
簡單點說就是支持Verilog、SystemVerilog(包括UVM)的emacs語法高亮文件。其中提到Verilog-mode支持Autos——這就是今天的重點。
Verilog-mode是由Michael McNamara
verilog-mode Autos有哪些功能
我們來一起看一個官網(wǎng)的例子。
手動編寫的verilog代碼:
由Autos處理后的verilog代碼:
大家可以看到,verilog-mode自動分析出:
模塊的端口輸入和輸出
內部變量
敏感信號列表
提取子模塊的端口定義
自動提取子模塊的端口定義來連線是今天的重點中的重點。一般來講,我們實例化模塊時大部分的信號名與子模塊定義的名字一致即可。如上面代碼中的:
特殊連接關系的處理
但常常我們頂層連接時會換一個名字。比如module A有一個輸出端口dat_o,module B有一個輸入端口dat_i,這兩者怎么連?定義模版AUTO_TEMPLATE,如下:
手動編寫的verilog代碼:
由Autos處理后的verilog代碼:
在哪里找子模塊定義?
默認規(guī)則:
當前文件夾下找
當前找不到怎么辦,指定搜索路徑(與仿真器的-y一樣)
使用方法:在頂層endmodule后面指定verilog-library-directories,如下:
除了寫模版還需要做什么?
只需要Ctrl-C Ctrl-A,僅此而已。
如果修改了子模塊或者模版,再按一次Ctrl-C Ctrl-A。
更多功能
verilog-mode下載、安裝
新版的GNU Emacs自帶verilog-mode
VIM用戶咋辦?
可以用VIM調動shell命令執(zhí)行(emacs批處理模式),例如:
:!emacs--batch-fverilog-batch-auto
是不是很簡單!
審核編輯:劉清
-
Verilog
+關注
關注
28文章
1352瀏覽量
110408 -
RTL
+關注
關注
1文章
385瀏覽量
59959 -
模擬器
+關注
關注
2文章
881瀏覽量
43427 -
OVM
+關注
關注
0文章
4瀏覽量
7572
原文標題:RTL頂層自動連線的秘密武器:Emacs verilog-mode介紹(VIM也可以用)
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論