搜尋
首頁開發工具VSCodeVSCode怎麼配置verilog環境?程式碼提示+自動例化+格式化外掛分享

VSCode怎麼配置verilog環境?以下這篇文章給大家推薦三個插件,讓VSCode流暢編寫verilog,三個插件可實現程式碼提示 自動例化 格式化。

VSCode怎麼配置verilog環境?程式碼提示+自動例化+格式化外掛分享

【推薦學習:vscode教學程式設計影片

##Verilog-HDL/ SystemVerilog/Bluespec SystemVerilog



#可實作功能:

VSCode怎麼配置verilog環境?程式碼提示+自動例化+格式化外掛分享

    語法高亮
  • 自動例化程式碼提示與跳轉

  • #自動補全
  • 外掛程式設定

  • 如Verilog HDL/SystemVerilog外掛程式歡迎頁的說明,支援Ctags功能:

##設定步驟:

下載最新版

ctags

,舊版的有些功能不夠齊全;windows可選x64版本;

將ctags.exe的路徑設定到系統環境變數中;
  • 外掛程式設定中配置ctags路徑;
  • ##重啟VSCode即可;



## 可以選擇不同的編譯器

# 包含:
  • iverilog

xvlog(vivado)

modelsim

#功能展示

##支援verilog、 SV等語法高亮。

shift ctrl p輸入verilog,可以直接自動範例模組。

滑鼠放在訊號上,就會有聲明顯示在懸浮框中。 Ctrl 左鍵,點選訊號名,自動跳到聲明處。遊標放在訊號處,右鍵選擇查看定義(快捷鍵可自行綁定),可以在此處展開聲明處的程式碼,用於修改聲明十分方便,就不用再來回跳轉了。 Verilog_Testbench

  • #可實現功能:


################################################## ###自動產生testbench ################## shift ctrl p輸入testbench,可以直接產生tb。然後在終端複製即可。 ##################SystemVerilog and Verilog Formatter###############這款工具由Google推出,同時支援Verilog和System Verilog ,###效果非常好###,支援自訂的格式化參數也很豐富。個人認為比verilog format好用。 ############可實現功能############### 自動格式化檔案######自動格式化選取內容#### ##自訂格式###############自訂參數設定表################verible-verilog-format: usage: bazel- bin/verilog/tools/formatter/verible-verilog-format [options] []### To pipe from stdin, use '-' as .## #

  來自common/formatting/basic_format_style_init.cc 的標誌:
    --column_limit (格式化時要保持的目標行長度限制。);
      預設:100;
    --indentation_spaces --縮排等級 增加這麼多空格。);
      預設值:2;
    --line_break_penalty (針對每個引入的行
      中斷新增至解決方案中的懲罰。);預設值:2;
    --over_column_limit_penalty (對於懲罰最小化,這表示超出列限制的基準懲罰值。超過此限制的每個字元都會產生 1 的額外懲罰);預設值:100;
    --wrap_spaces (每個換行等級新增這麼多空格。這適用於開放群組部分後的
      換行時的情況。否則,
      群組
      運算子的位置。);預設值:4;

# 來自external/com_google_absl/absl/flags/parse.cc 的標誌:

    --flagfile (以逗號分隔的檔案列表,用於從中載入標誌) ;預設值:;
    --fromenv (從環境中設定的以逗號分隔的標誌清單 [use
      'export FLAGS_flag1=value']);預設值:;
    --tryfromenv (嘗試從
      環境設定的以逗號分隔的標誌清單(如果存在);預設值:;
    --undefok (以逗號分隔的標誌名稱列表,可以在命令列上指定,即使程式沒有使用該名稱定義標誌);預設: ;


  來自 verilog/formatting/format_style_init.cc 的標誌:
    --assignment_statement_alignment (格式化各種賦值:
      {align,flush-left,preserve,infer});預設值:infer;
    --case_items_alignment (格式化案例項目:
      {align,flush-left,preserve,infer});預設值:infer;
    --class_member_variable_alignment (格式化類別成員變數:
      {align,flush-left,preserve,infer});預設值:infer;
    --compact_indexing_and_selections(在
      索引/位元選擇運算子中使用緊密的二進位表達式);預設值: true;
    --distribution_items_alignment (對齊分佈項:
      {align,flush-left,preserve,infer});預設值:infer;
    --enum_assignment_statement_alignment (使用枚舉格式化賦值:
      {align,flush-left,preserve,infer});預設值:infer;
    --expand_coverpoints(如果為 true,則始終擴展覆蓋點。);預設值: false;
    --formal_parameters_alignment (格式形參:
      {align,flush-left,preserve,infer});預設值:infer;
    --formal_parameters_indentation (縮排形式參數:{indent,wrap});
      預設值:wrap;
    --ule_net_variable_alignment (格式網路/變數宣告: ,flush-左、保留、推斷});預設值:infer;
    --named_pa​​rameter_alignment (命名實際參數的格式:
      {align,flush-left,preserve,infer});預設值:infer;
    --named_pa​​rameter_indentation (縮排命名參數賦值:
      {indent,wrap});預設值:wrap;
    --named_port_alignment (命名連接埠連線格式:
      {align,flush-left,preserve,infer});預設:infer;
    --named_port_indentation (縮排命名連接埠連線:{indent,wrap});
      預設:wrap;
    --port_declarations_alignment (格式連接埠宣告:##     --port_declarations_alignment (格式連接埠宣告:## c left ,保留,推斷});預設值:infer;
    --port_declarations_indentation (縮排埠宣告:{indent,wrap});
      預設值:wrap;
    --port_declarations_right_align_packed_dimension## Packed
      尺寸為向右對齊。);
      預設值: false;
    --port_declarations_right_align_unpacked_dimensions (如果為true,則啟用對齊的上下文中的未打包 #  
      預設值: false;
    --struct_union_members_alignment (格式化結構/共同成員:
      {align,flush-left,preserve,infer});預設值:infer;
    --try_wrap_long_lines (如果為true,則讓格式化程式嘗試在需要換行的地方最佳化行
      換行決策,否則不格式化。
     這是降低風險的短期措施-的傷害。);預設值: false;


# 來自 verilog/parser/verilog_parser.cc 的標誌:

    --verilog_trace_parser (追蹤 verilog 解析器);預設值:假;


  來自verilog/tools/formatter/verilog_format.cc 的標誌:
    --failsafe_success (如果為true,則始終以0 狀態退出,即使存在
      輸入錯誤或內部錯誤。在錯誤中條件下,始終保留原始
      文字。這在部署服務時非常有用,其中
      故障安全行為應視為成功。);預設值:true;
    --inplace (如果為true,則在成功的情況下覆寫輸入檔案。);
      預設值:false;
    --lines (要格式化的特定行,預設值:false;
    --lines (要格式化的特定行,預設值從1 開始,以逗號分隔,包含 N-M
      範圍,N 是 N-N 的縮寫。預設情況下,不指定,所有行都啟用格式設定。(可重複,累積));預設值:;
    --max_search_states (限制行
      換行最佳化期間探索的搜尋狀態的數量。);預設值:100000;
    --show_equally_optimal_wrappings (如果為true,則在找到多個最佳解決方案時列印(stderr),但繼續正常運作。);
      預設值:false; -show_inter_token_info (如果為true,則與show_token_partition_tree 一起,
      包含令牌間資訊,例如間距和中斷懲罰。);
      預設: false;
  命令 --showshowgest   --showgest  to_part,則列印指令 0Pken_lar牌分區,然後
      退出而不格式化輸出。);預設值:0;
    --show_token_partition_tree (如果為 true,則在 token
      分區後列印診斷訊息,然後退出而不格式化輸出。);預設值: false;
    --stdin_name (當使用'-' 從stdin 讀取時,這會給出一個備用
      名稱以用於診斷目的。否則將被忽略。);
      預設值:“; ";
    --verbose(更詳細。);預設值: false;
    --verify_convergence (如果為true,且不使用
      --lines 進行增量格式化,請驗證重新格式化格式化輸出不會產生進一步的
      更改,即格式是收斂的。);預設值:true;

嘗試--helpfull 取得所有標誌的清單或--help=substring 顯示

標誌的幫助,這些標誌在名稱或描述中或

中包含指定的子字串path.

#外掛程式配置

##如果是windows,systemverilogFormatter. veribleBuild設定為win64

systemverilogFormatter.commandLineArguments 可以自訂格式化參數,下面放上我自己用的參數,可以實作大部分常用程式碼段實作對齊。

--indentation_spaces=4 --named_port_alignment=align  --ort_declarations_alignment=align --module_net_variable_alignment=align

如何使用?如何格式化?

和vscode內建格式化一樣,直接shift ctrl f就可以格式化文件,ctrl k可以格式化選定的內容。

意思是,由於這個外掛也是在完善中,還是有部分問題的。

例如else不會換行。

例如,存在語法問題

,或是無法辨識語法的時候,刪除會用不了。這裡我將最後一個連接埠加上","就不能刪除了。


更更多關於VSCode的相關知識,請造訪:###vscode基礎教學###!#######

以上是VSCode怎麼配置verilog環境?程式碼提示+自動例化+格式化外掛分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:csdn。如有侵權,請聯絡admin@php.cn刪除
視覺工作室仍然免費嗎?了解可用性視覺工作室仍然免費嗎?了解可用性Apr 18, 2025 am 12:05 AM

是的,VisualStudio某些版本是免費的。具體來說,VisualStudioCommunityEdition對個人開發者、開源項目、學術研究和小型組織免費。然而,也有付費版本如VisualStudioProfessional和Enterprise,適用於大型團隊和企業,提供額外功能。

使用Visual Studio:跨平台開發軟件使用Visual Studio:跨平台開發軟件Apr 17, 2025 am 12:13 AM

使用VisualStudio進行跨平台開發是可行的,通過支持.NETCore和Xamarin等框架,開發者可以編寫一次代碼並在多個操作系統上運行。 1)創建.NETCore項目並使用其跨平台能力,2)使用Xamarin進行移動應用開發,3)利用異步編程和代碼重用來優化性能,確保應用的高效運行和可維護性。

vscode如何格式化jsonvscode如何格式化jsonApr 16, 2025 am 07:54 AM

在 VS Code 中格式化 JSON 的方法有:1. 使用快捷鍵 (Windows/Linux:Ctrl Shift I;macOS:Cmd Shift I);2. 通過菜單(“編輯” > “格式化文檔”);3. 安裝 JSON 格式化程序擴展(如 Prettier);4. 手動格式化(使用快捷鍵縮進/縮出塊或添加花括號和分號);5. 使用外部工具(如 JSONLint 和 JSON Formatter)。

vscode如何編譯vscode如何編譯Apr 16, 2025 am 07:51 AM

在 VSCode 中編譯代碼分 5 步:安裝 C 擴展;在項目文件夾中創建 "main.cpp" 文件;配置編譯器(如 MinGW);使用快捷鍵("Ctrl Shift B")或 "Build" 按鈕編譯代碼;使用快捷鍵("F5")或 "Run" 按鈕運行編譯後的程序。

vscode如何安裝vscode如何安裝Apr 16, 2025 am 07:48 AM

要安裝 Visual Studio Code,請按以下步驟操作:訪問官方網站 https://code.visualstudio.com/;根據操作系統下載安裝程序;運行安裝程序;接受許可協議並選擇安裝路徑;安裝完成後,VSCode 將自動啟動。

vscode如何放大字體vscode如何放大字體Apr 16, 2025 am 07:45 AM

在 Visual Studio Code 中放大字體的方法有:打開設置面板(Ctrl , 或 Cmd ,)。搜索並調整“Font Size”。選擇具有適合大小的“Font Family”。安裝或選擇提供合適大小的主題。使用鍵盤快捷鍵(Ctrl 或 Cmd )放大字體。

vscode如何連接遠程服務器vscode如何連接遠程服務器Apr 16, 2025 am 07:42 AM

如何通過 VSCode 連接遠程服務器?安裝 Remote - SSH 擴展配置 SSH在 VSCode 中創建連接輸入連接信息:主機、用戶名、端口、SSH 密鑰在 Remote Explorer 中雙擊已保存的連接

vscode如何運行vuevscode如何運行vueApr 16, 2025 am 07:39 AM

在 VSCode 中運行 Vue 項目需要以下步驟:1. 安裝 Vue CLI;2. 創建 Vue 項目;3. 切換到項目目錄;4. 安裝項目依賴;5. 運行開發服務器;6. 打開瀏覽器訪問 http://localhost:8080。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前By尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。