---
# System prepended metadata

title: nWave
tags: [EDA tool, Verilog]

---

# nWave

## 1. 介紹

> [!Note] **nWave**
> - **搭配 ==ncverilog== 的 ==波形檢視工具==**
> - **使用 ==ncverilog== 產出 ==波形檔 (FSDB/vcd)== 後，**  
> **再用 ==nWave== 檢視 ==電路訊號==**

> [!Important] **呼叫 nWave**
> - **指令：==注意!!== 要加上 ==&==，才能 ==同時== 使用 ==nWave==、==CMD==**
> >```robotframework
> >nWave &
> >```

## 2. 開啟波形檔

> [!Tip] **步驟**
> 1. **按下 ==Open File== (==快捷鍵==：==Ｏ==)**
> 2. **雙擊 ==波形檔== (==.fsdb==)**
> 3. **按下 ==OK==**
> 
> <iframe src="https://drive.google.com/file/d/1d8E6RCILnZoWUwny-VjMJhuctc14D6lF/preview" height="400"></iframe>

## 3. 選擇訊號

> [!Tip] **步驟**
> 1. **按下 ==Get Signals== (==快捷鍵==：==Ｇ==)**
> 2. **選擇要檢視的 ==訊號==**
>   - **==上欄==：選擇 ==module==**
>   - **==下欄==：當前 ==module== 的 ==input==、==output==、==reg== 訊號**
>   - **==右欄==：以 ==選擇的訊號==**
> 3. **按下 ==Apply==, ==OK==**
> <iframe src="https://drive.google.com/file/d/1v_02Qzwz0k7HSiYBm2iU06UmNToold4Z/preview" height="400"></iframe>

## 4. 檢視訊號

> [!Note] **說明**
> - **==左欄==：選擇的 ==訊號==**
> - **==右欄==：訊號的 ==波形==**
> <iframe src="https://drive.google.com/file/d/1MYDnPcaniO2LsGnY-vCXzePoAK8oWTdl/preview" height="300"></iframe>

> [!Tip] **nWave 功能 & 快捷鍵**
>
> |                    快捷鍵                     | 功能                            |
> |:---------------------------------------------|:------------------------------- |
> |                 **==`Ｆ`==**                  | **==Fit== Screen**              |
> |            **==右欄 > 左鍵拖曳==**            | **==放大畫面== 至拖曳範圍**     |
> |           **==選擇訊號 > `DEL`==**            | **==刪除== 訊號**               |
> |          **==選擇訊號 > 左鍵拖曳==**          | **==移動== 訊號位置**           |
> |      **==選擇訊號 > 右鍵 > Set Radix==**      | **設定訊號的 ==數值表示方式==** |
> |    **==選擇訊號 > 右鍵 > Set Notation==**     | **設定訊號的 ==符號表示方式==** |
> | **==左欄空白處 > 右鍵 > Logical Operation==** | **設定 ==自訂邏輯==**         |


## 5. Logical Operation

> [!Note] **說明**
> - **==上欄==：==自定義== 新的訊號**
> - **==下欄==：==已定義== 的訊號**
> <iframe src="https://drive.google.com/file/d/1m1QwdlgyKGQUMj7r6y3poLmtbxghxYzL/preview" height="400"></iframe>

> [!Tip] **定義訊號**
> 1. **==Name==：輸入訊號 ==名稱== & ==位元寬度==，ex：`Sum[7:0]`**
> 2. **==Expression==：輸入 ==運算式==，可以抓取 ==現有的訊號==**
>   - **==選擇訊號 > 按下 Add Signal==：==插入訊號== 到運算式**
>   - **==按下 Create/Modify==：創建 ==自定義訊號==**

> [!Tip] **刪除訊號**
> 1. **從 ==訊號欄== 刪除 ==自定義訊號==**
> 2. **從 ==Logical Operation== 選擇 ==自定義訊號==**
> 3. **按下 ==Delete==**

---