Skip to content

Commit 3061ab1

Browse files
committed
Move vscode2vlab to tutorial/, adjust navigation
1 parent 8f1614f commit 3061ab1

File tree

2 files changed

+53
-49
lines changed

2 files changed

+53
-49
lines changed

docs/vscode2vlab.md renamed to docs/tutorial/vscode2vlab.md

Lines changed: 49 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,19 @@ icon: material/transit-connection-variant
1010

1111
在虚拟机的桌面上,最上面**应用程序**中的 **Vlab 实验软件**里可找到预先安装的的 Vivado,点击进入 Vivado。这里请大家选择 2019.1 版本,不要选择 2016.3 的旧版本。2023.1 版本的 Vivado 虽然更便捷,但可能引起内存不足的警告,因此请大家酌情使用。
1212

13-
![vlab experiment tools](images/vscode2vlab/vivado1.png)
13+
![vlab experiment tools](../images/vscode2vlab/vivado1.png)
1414

1515
进入 Vivado 后,点击 Create Project:
1616

17-
![Create Project](images/vscode2vlab/vivado2.png)
17+
![Create Project](../images/vscode2vlab/vivado2.png)
1818

1919
然后点击 Next:
2020

21-
![Next](images/vscode2vlab/vivado3.png)
21+
![Next](../images/vscode2vlab/vivado3.png)
2222

2323
在这个界面,你可以设置工程文件的名称和路径:
2424

25-
![Name Path](images/vscode2vlab/vivado4.png)
25+
![Name Path](../images/vscode2vlab/vivado4.png)
2626

2727
随后一路 Next,直到遇到“选择开发板型号”的界面。搜索我们使用的开发板,型号为 `xc7a100tcsg324-1`,点击选择最下面的开发板。
2828

@@ -32,25 +32,25 @@ icon: material/transit-connection-variant
3232

3333
若课程安排有所调整,请以实际课程要求开发板型号为准。
3434

35-
![ChooseModel](images/vscode2vlab/vivado5.png)
35+
![ChooseModel](../images/vscode2vlab/vivado5.png)
3636

3737
完成后,我们就成功新建了一个工程项目,可以看到如下界面:
3838

39-
![Finish](images/vscode2vlab/vivado6.png)
39+
![Finish](../images/vscode2vlab/vivado6.png)
4040

4141
### 2. 新建设计文件
4242

4343
新建工程项目后,里面还没有我们的设计文件,接下来我们要为工程项目新建自己的设计文件。
4444

4545
在界面左侧可以找到 Add Sources,点击它:
4646

47-
![Add Sources](images/vscode2vlab/vivado7.png)
47+
![Add Sources](../images/vscode2vlab/vivado7.png)
4848

4949
接下来我们开始新建设计文件,点击 Next,选择 Create File:
5050

51-
![Next](images/vscode2vlab/vivado8.png)
51+
![Next](../images/vscode2vlab/vivado8.png)
5252

53-
![Create File](images/vscode2vlab/vivado9.png)
53+
![Create File](../images/vscode2vlab/vivado9.png)
5454

5555
??? question "如何把别处的源代码加入此工程项目?"
5656

@@ -62,11 +62,11 @@ icon: material/transit-connection-variant
6262

6363
我们可以自行设置新建文件的名称:
6464

65-
![Filename](images/vscode2vlab/vivado10.png)
65+
![Filename](../images/vscode2vlab/vivado10.png)
6666

6767
这样,我们就完成了设计文件的新建。双击文件就可以在编辑器中编辑它了。
6868

69-
![Finish](images/vscode2vlab/vivado11.png)
69+
![Finish](../images/vscode2vlab/vivado11.png)
7070

7171
## 本地安装并配置 VSCode {#installvs}
7272

@@ -78,23 +78,23 @@ Visual Studio Code 是一款由微软开发的免费、轻量级且可扩展的
7878

7979
### 1. 安装 VSCode
8080

81-
进入 VSCode 的[官方网站](https://code.visualstudio.com/),点击 Download for Windows 下载。下载完成后打开可执行文件。在**选择附加任务**时建议全部勾选,特别是**添加到 PATH** 要勾选,否则后续还要自己将其添加到环境变量。
81+
进入 VSCode 的[官方网站](../https://code.visualstudio.com/),点击 Download for Windows 下载。下载完成后打开可执行文件。在**选择附加任务**时建议全部勾选,特别是**添加到 PATH** 要勾选,否则后续还要自己将其添加到环境变量。
8282

8383
!!! info "注意"
8484

8585
为了 VSCode 使用的稳定性,安装路径不要包含中文。下面要讲的 ctags 和 iverilog 同理,安装路径也要避免中文。
8686

87-
![Add to path](images/vscode2vlab/vscode1.png)
87+
![Add to path](../images/vscode2vlab/vscode1.png)
8888

8989
在我们完成了 VSCode 的安装后,第一次打开时界面是纯英文,看起来不是很方便。对此我们可以找到左侧的 **Extensions** 点开,搜索 Chinese,安装第一个“中文(简体)”然后重启 VSCode 即可汉化 VSCode。
9090

91-
![Chinese](images/vscode2vlab/vscode2.png)
91+
![Chinese](../images/vscode2vlab/vscode2.png)
9292

9393
### 2. 安装 Verilog-HDL/SystemVerilog 插件
9494

9595
在汉化 VSCode 后,想必大家已经会在 VSCode 中搜索并安装插件了。对于 Verilog 的开发,我们需要安装 **Verilog-HDL/SystemVerilog** 插件。
9696

97-
![Verilog-HDL](images/vscode2vlab/vscode3.png)
97+
![Verilog-HDL](../images/vscode2vlab/vscode3.png)
9898

9999
这个插件提供了 Verilog 开发的大多数基础功能,包括:
100100

@@ -115,15 +115,15 @@ Visual Studio Code 是一款由微软开发的免费、轻量级且可扩展的
115115

116116
**Linter** 是自动检查源代码中是否存在编程和样式错误的工具。对于 Verilog 的 linter 当然不止一种,本教程中使用的是 iverilog。除此之外还有 xvlog 和 Verilator,但 xvlog 来自于 Vivado,你需要在电脑本地安装 Vivado 才有 xvlog。而 Verilator 则是面向 Linux 平台开发的,截至目前使用官网方法在 Windows 平台上编译的 Verilator 都无法配合 VSCode 完成代码检查,需要在子系统 WSL 中安装并运行 Verilator,这里不再介绍具体步骤。
117117

118-
我们进入 iverilog 的[下载网站](https://bleyer.org/icarus/),在 Download 中下载最新版本即可。安装时在 Select Components 界面全部勾选,然后勾选可执行文件所在文件夹加入用户路径。
118+
我们进入 iverilog 的[下载网站](../https://bleyer.org/icarus/),在 Download 中下载最新版本即可。安装时在 Select Components 界面全部勾选,然后勾选可执行文件所在文件夹加入用户路径。
119119

120-
![iverilog GTKWave](images/vscode2vlab/vscode4.png)
120+
![iverilog GTKWave](../images/vscode2vlab/vscode4.png)
121121

122-
![iverilog Path](images/vscode2vlab/vscode5.png)
122+
![iverilog Path](../images/vscode2vlab/vscode5.png)
123123

124124
安装后将 iverilog.exe 和 gtkwave.exe 所在文件夹的路径复制加入用户环境变量。
125125

126-
![iverilog Environment](images/vscode2vlab/vscode6.png)
126+
![iverilog Environment](../images/vscode2vlab/vscode6.png)
127127

128128
!!! question "如何添加环境变量"
129129

@@ -157,11 +157,11 @@ gtkwave
157157

158158
弹出这个软件则配置成功。
159159

160-
![gtkwave](images/vscode2vlab/vscode7.png)
160+
![gtkwave](../images/vscode2vlab/vscode7.png)
161161

162-
接下来我们进入[下载页面](https://github.com/universal-ctags/ctags-win32/releases)安装 **ctags**,可选择最新版本进入下载。
162+
接下来我们进入[下载页面](../https://github.com/universal-ctags/ctags-win32/releases)安装 **ctags**,可选择最新版本进入下载。
163163

164-
![ctags](images/vscode2vlab/vscode8.png)
164+
![ctags](../images/vscode2vlab/vscode8.png)
165165

166166
安装后同样将 ctags.exe 所在文件夹路径复制加入环境变量。
167167

@@ -179,19 +179,19 @@ ctags --version
179179

180180
按下面的设置配置 ctags,将 linter 选择为 iverilog,并在 iverilog 的 Argument 一栏中加入 -i 参数。
181181

182-
![Extension Config](images/vscode2vlab/vscode9.png)
182+
![Extension Config](../images/vscode2vlab/vscode9.png)
183183

184-
![Extension Config](images/vscode2vlab/vscode10.png)
184+
![Extension Config](../images/vscode2vlab/vscode10.png)
185185

186-
![Extension Config](images/vscode2vlab/vscode11.png)
186+
![Extension Config](../images/vscode2vlab/vscode11.png)
187187

188188
!!! tip "关于配置的说明"
189189

190190
由于在安装 ctags 时已经将其加入到了环境变量,所以这里只需填入 ctags 即可。关于 `-i` 参数,是因为在实例化模块时 iverilog 会报错 "Unknown module type",添加 `-i` 参数可以避免这种不合理的报错。
191191

192192
这样我们就可以在 VSCode 中进行 Verilog 的开发了!
193193

194-
![verilog](images/vscode2vlab/vscode12.png)
194+
![verilog](../images/vscode2vlab/vscode12.png)
195195

196196
!!! info "提示"
197197

@@ -204,9 +204,10 @@ Windows 用户应使用以下说明来安装和配置 OpenSSH。
204204

205205
在命令行中输入 `ssh`,若输出以下信息则已经安装,可跳过安装步骤。
206206

207-
![ssh](images/vscode2vlab/SSH1.png)
207+
![ssh](../images/vscode2vlab/SSH1.png)
208208

209209
!!! info "Windows 10 和 Windows 11"
210+
210211
Windows 10 和 Windows 11 版本的 OpenSSH 安装有所区别,请按对应的版本进行操作。
211212

212213
在安装时,
@@ -235,20 +236,21 @@ ssh [email protected]
235236

236237
`Vlab username` 是你的学号(或工号),在登录虚拟机管理页面后可以在右上角看到。
237238

238-
`Vlab password` 是 Vlab 平台的登录密码。[还没设置?](web.md#change-password)
239+
`Vlab password` 是 Vlab 平台的登录密码。[还没设置?](../web.md#change-password)
240+
241+
!!! question "Vlab 的登录用户名?"
239242

240-
!!! question "关于 Vlab 的登录用户?"
241-
这里请参考**虚拟机登录 -> SSH 命令行登录**页面的[登录用户名](login/ssh.md#username)章节。
243+
这里请参考**SSH 命令行登录**页面的[登录用户名](../login/ssh.md#username)章节。
242244

243245
在断开与虚拟机的连接时输入 `exit` 即可。
244246

245-
![ssh](images/vscode2vlab/SSH2.png)
247+
![ssh](../images/vscode2vlab/SSH2.png)
246248

247249
### 2. 使用公钥登录虚拟机
248250

249251
使用公钥登录虚拟机可以免除每次输入密码的麻烦,我们首先要生成密钥对并下载到本地。
250252

251-
这里下载密钥对的操作请参考**虚拟机登录 -> SSH 命令行登录**页面的[生成 SSH 密钥对并下载到本地](login/ssh.md#get-pubkey)章节。
253+
这里下载密钥对的操作请参考**SSH 命令行登录**页面的[生成 SSH 密钥对并下载到本地](../login/ssh.md#get-pubkey)章节。
252254

253255
我们将私钥放在 `%UserProfile%\.ssh` 目录中,例如 `%UserProfile%\.ssh\vlab.pem`
254256

@@ -264,17 +266,17 @@ ssh [email protected]
264266

265267
右键单击 `.pem` 文件,进入**属性 -> 安全 -> 高级**,可以看到以下界面。
266268

267-
![permission](images/vscode2vlab/SSH3.png)
269+
![permission](../images/vscode2vlab/SSH3.png)
268270

269271
然后将所有者改为个人用户(如果已经是则不用改),并且删除掉其他用户的权限(如果这里因为继承权限无法删除,则要先点击"禁用继承")。如果在权限条目中没有个人用户,则需手动添加:在点击"添加"后点击"选择主体",然后指定对象类型为"用户",点击"高级",开始立即查找,便可找到个人用户。将其权限设置为"完全控制",确定添加即可。
270272

271-
![adduser](images/vscode2vlab/SSH4.png)
273+
![adduser](../images/vscode2vlab/SSH4.png)
272274

273-
![adduser](images/vscode2vlab/SSH5.png)
275+
![adduser](../images/vscode2vlab/SSH5.png)
274276

275277
最后设置完毕如下:
276278

277-
![permission finish](images/vscode2vlab/SSH6.png)
279+
![permission finish](../images/vscode2vlab/SSH6.png)
278280

279281
修改权限后,可以在 CMD 或 PowerShell 中使用 ssh 命令登录:
280282

@@ -304,38 +306,39 @@ Host vlab
304306

305307
接下来我们在 VSCode 中通过 SSH 登录 Vlab。首先在 VSCode 中安装扩展 **Remote - SSH**
306308

307-
![VSCode Extension SSH](images/vscode2vlab/vs_vlab1.png)
309+
![VSCode Extension SSH](../images/vscode2vlab/vs_vlab1.png)
308310

309311
安装后在左侧会出现**远程资源管理器**。如果前面已经按照教程配置好了 SSH,可以看到我们的虚拟机 Vlab。
310312

311313
!!! info "注意"
312-
若还未配置好 SSH 请按照上面的教程进行 SSH 配置,实现公钥登录并完成配置文件。
314+
315+
请先按照上面的教程进行 SSH 配置,实现公钥登录并完成配置文件。
313316

314317
点击 **vlab** 右侧的图标,在现有的窗口/新窗口中连接 Vlab。在选择远程平台时选择 **Linux**
315318

316-
![connect](images/vscode2vlab/vs_vlab2.png)
319+
![connect](../images/vscode2vlab/vs_vlab2.png)
317320

318321
首次连接时会显示“正在下载 VSCode 服务器”。这是正在 Vlab 虚拟机上安装 VSCode 服务器,时间可能比较长,请耐心等待。
319322

320-
![wait](images/vscode2vlab/vs_vlab3.png)
323+
![wait](../images/vscode2vlab/vs_vlab3.png)
321324

322325
下载好后,左下角显示 **SSH:vlab** 即连接成功。
323326

324-
![connection success](images/vscode2vlab/vs_vlab4.png)
327+
![connection success](../images/vscode2vlab/vs_vlab4.png)
325328

326329
在上方的**文件->打开文件夹**即可选择要打开的 Vlab 上的文件夹,新建文件同理。
327330

328-
![open file](images/vscode2vlab/vs_vlab5.png)
331+
![open file](../images/vscode2vlab/vs_vlab5.png)
329332

330333
我们也可以用快捷键 **Ctrl + \`** 打开终端,此时的终端环境是 Vlab 的,可以通过命令行对 Vlab 进行操作。
331334

332-
![Terminal](images/vscode2vlab/vs_vlab6.png)
335+
![Terminal](../images/vscode2vlab/vs_vlab6.png)
333336

334337
## 本地 VSCode 编辑 Vlab 的 Verilog 项目 {#Vlab-verilog}
335338

336339
截至目前,我们已经能用本地 VSCode 远程编辑 Vlab 上的文件了。但当我们用 VSCode 打开 Vlab 中新建的 `.v` 文件时,却发现没有了语法高亮。这是因为 Verilog-HDL/SystemVerilog 扩展被定义为在远程扩展主机中运行,故在此工作区中被禁用。我们需要在本地已安装的扩展中找到 Verilog-HDL/SystemVerilog,点击**在 SSH:vlab 中安装**,来启用该扩展。
337340

338-
![Vlab Extention](images/vscode2vlab/vs_vlab7.png)
341+
![Vlab Extention](../images/vscode2vlab/vs_vlab7.png)
339342

340343
然后我们的 Verilog 代码就有了语法高亮。但当我们编写代码时,会发现前面配置好的 ctags 和 iverilog 失效了:鼠标悬停不显示代码声明,“CTRL 鼠标点击跳转到代码声明”的功能失效,代码的语法错误也不会报错。
341344

@@ -351,8 +354,8 @@ sudo apt install iverilog gtkwave universal-ctags
351354

352355
然后在 VSCode 已打开的远程连接 Vlab 中打开 Verilog-HDL/SystemVerilog 的扩展设置,将**远程 [SSH:vlab]****工作区**中同[本地配置](#config-extension)(即“用户”一栏中的配置)进行设置。
353356

354-
![Config Extention](images/vscode2vlab/vs_vlab8.png)
357+
![Config Extention](../images/vscode2vlab/vs_vlab8.png)
355358

356359
完成后,我们就可以在本地 VSCode 对 Vlab 中的 Vivado 设计文件进行编辑了!
357360

358-
![finish](images/vscode2vlab/vs_vlab9.png)
361+
![finish](../images/vscode2vlab/vs_vlab9.png)

mkdocs.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@ extra_css:
5555
markdown_extensions:
5656
- admonition
5757
- attr_list
58-
- codehilite
5958
- footnotes
6059
- pymdownx.details
6160
- pymdownx.emoji:
6261
emoji_index: !!python/name:material.extensions.emoji.twemoji
6362
emoji_generator: !!python/name:material.extensions.emoji.to_svg
63+
- pymdownx.highlight
6464
- pymdownx.mark
6565
- pymdownx.tabbed:
6666
alternate_style: true
@@ -73,7 +73,6 @@ markdown_extensions:
7373
nav:
7474
- 简介: index.md
7575
- 快速开始: quickstart.md
76-
- 本地 VSCode 远程连接 Vlab: vscode2vlab.md
7776
- 虚拟机:
7877
- 虚拟机管理: web.md
7978
- 虚拟机登录:
@@ -87,6 +86,9 @@ nav:
8786
- 应用程序:
8887
- 在线 VSCode: apps/vscode.md
8988
- RISC-V 工具链: apps/riscv.md
89+
- 教程:
90+
- 本地 VSCode 远程连接 Vlab: tutorial/vscode2vlab.md
91+
- Git 简明教程: tutorial/git.md
9092
- 其他:
9193
- 常见问题: faq.md
9294
- 通知公告: announcements.md
@@ -100,4 +102,3 @@ nav:
100102
- 资源下载: downloads.md
101103
- 致谢: credits.md
102104
- 招新: recruit.md
103-
- Git 简明教程: tutorial/git.md

0 commit comments

Comments
 (0)