[![Current Version](https://img.shields.io/visual-studio-marketplace/v/teros-technology.teroshdl.svg)](https://marketplace.visualstudio.com/items?itemName=teros-technology.teroshdl)
[![Install Count](https://img.shields.io/visual-studio-marketplace/i/teros-technology.teroshdl.svg)](https://marketplace.visualstudio.com/items?itemName=teros-technology.teroshdl)
[![Download Count](https://img.shields.io/visual-studio-marketplace/d/teros-technology.teroshdl.svg)](https://marketplace.visualstudio.com/items?itemName=teros-technology.teroshdl)
**Index**
1. [Introduction](#id1)
2. [Thanks](#id2)
3. [Go to definition](#id3)
4. [Hover and structure](#id4)
5. [Template generator](#id5)
6. [Documenter](#id6)
7. [Errors checking](#id7)
8. [Style checking](#id8)
9. [Formatting](#id9)
10. [State machine viewer](#id10)
11. [State machine designer](#id11)
12. [Dependencies viewer](#id12)
13. [Hover to evaluate binary, hexadecimal and octal values](#id13)
14. [Code snippets and grammar](#id14)
15. [Beta Verilog/SV schematic viewer](#id15)
16. [Project manager (currently only VUnit supported](#id16)
17. [Future work](#id17)
18. [Similar projects](#id18)
# 1. Introduction <a name="id1"></a>
Our philosophy is: think in hardware, develop hardware, take advantage of software tools.
The goal of TerosHDL is make the FPGA development easier and reliable. It is a powerful open source IDE.
**Please, visit the documentation web for a full IDE description**: (https://terostechnology.github.io/terosHDLdoc/)
# 2. Thanks <a name="id2"></a>
- Verilog HDL/SystemVerilog (https://marketplace.visualstudio.com/items?itemName=mshr-h.VerilogHDL)
- VUnit (https://vunit.github.io/)
- VSG (https://github.com/jeremiah-c-leary/vhdl-style-guide)
- Wavedrom (https://github.com/wavedrom/wavedrom)
- VHDL formatter (https://github.com/g2384/VHDLFormatter)
- Yosys (http://www.clifford.at/yosys/)
# 3. Go to definition <a name="id3"></a>
You can jump to the definition with Ctrl+Click.
![alt text](./resources/images/readme/goto.png "title")
# 4. Hover and structure <a name="id4"></a>
If you hover over a symbol, a preview of the declaration will appear.
![alt text](resources/images/readme/hover.png "title")
# 5. Template generator <a name="id5"></a>
## Supported templates
| Verilog | VHDL |
| --------: | --------- |
| Testbench | Testbench |
| cocotb | cocotb |
| VUnit | VUnit |
| Signals | Signals |
| Component | Component |
| Instance | Instance |
| Verilator | |
## Usage Instructions
1. Open a VHDL/Verilog file.
2. Select the template icon.
![alt text](./resources/images/readme/sample_templates_select.png "title")
3. Choose a template type.
# 6. Documenter <a name="id6"></a>
## Special comment symbols
You can configure what symbol will be used to extract the comments in the HDL file. It supports MarkDown style. In the following example is used the symbol "!":
```
--! This is a description
--! of the entity.
entity counter is
port (
clk: in std_logic; --! Clock comment
out_data: out std_logic --! Description **port comment**
);
end counter;
```
## Usage Instructions
1. Open a VHDL/Verilog file.
2. Select the documenter icon.
![alt text](./resources/images/readme/sample_documenter_select.png "title")
3. TerosHDL will show the generated documentation.
![alt text](./resources/images/readme/sample_documenter_viewer.png "title")
4. Export your documentation to PDF, Markdown, HTML or SVG diagram.
5. Edit your VHDL/Verilog file and save it. The preview will show automatically.
## Wavedrom support
TerosHDL supports WaveJSON format in the module description, a format that describes Digital Timing Diagrams:
https://wavedrom.com/tutorial.html
![alt text](./resources/images/readme/wavedrom_example.png "title")
## Bitfield
https://observablehq.com/collection/@drom/bitfield
![alt text](./resources/images/readme/bitfield_example.png "title")
## Doxygen Compatibility
The following table of Doxygen commands are supported (both with ``@`` and ``\`` prefix) :
| Command | Behavior | Notes |
|----------------|------------------------------------------------|--------------------------------------------------------------------------|
| ``@title`` | changes the generated documentation page title | Single line command, if not provided defaults to : Entity <entity_name> |
| ``@file`` | Adds an entry for the file name | Single line command |
| ``@author`` | Adds an entry for the author name | Single line command |
| ``@version`` | Adds an entry for the code version | Single line command |
| ``@date`` | Adds an entry for the file date | Single line command |
| ``@copyright`` | Adds a copyright statements | multi-line, ends on the first empty line |
| ``@brief`` | appends the following text to the description | Stripped from text, following text is located in the description section |
| ``@details`` | appends the following text to the description | Stripped from text, following text is located in the description section |
![alt text](./resources/images/readme/doxygen_commands.png "title")
## Virtual Buses
Ports can be grouped into Virtual Buses for more clarity of the diagram
![alt text](./resources/images/readme/group_ports.png "title")
# 7. Errors checking <a name="id7"></a>
## Supported linters
You need to install manually the simulators.
| Verilog | VHDL |
| --------: | -------- |
| ModelSim | ModelSim |
| Vivado | Vivado |
| Icarus | GHDL |
| Verilator | |
## Configuration
One of the above tools has to be installed to enable linter functionalities in a language. If the tool can not be find in the system path it has to be configured in the plugin config:
Configuration example for verilog:
![alt text](./resources/images/readme/linter_config.png "title")
# 8. Style checking <a name="id8"></a>
## Supported linters
This is an experimental feature. You need to install Verible (https://github.com/google/verible)
| Verilog | VHDL |
| ------: | :--: |
| Verible | -- |
## Configuration
# 9. Formatting <a name="id9"></a>
## Supported formatters
| Verilog | VHDL |
| ------: | ---------- |
| iStyle | Standalone |
## Configuration
# 10. State machine viewer <a name="id10"></a>
## Usage Instructions
![alt text](./resources/images/readme/state_machine_viewer_machine.gif "title")
# 11. State machine designer <a name="id11"></a>
## Usage Instructions
1. Open the command palette: `Ctrl+Shift+P` and select **_State machine designer_**
![alt text](./resources/images/readme/state_machine_designer_select.png "title")
2. Follow the instructions and design your state machine!
![alt text](./resources/images/readme/state_machine_designer_machine.gif "title")
# 12. Dependencies viewer <a name="id12"></a>
1. Install Python3.
2. Go go TerosHDL configuration and add the Python3 binary path.
## Usage Instructions
1. Open the command palette: `Ctrl+Shift+P` and select **_Open dependencies viewer_**
![alt text](./resources/images/readme/sample_dependencies_select.png "title")
2. Add a HDL files to the viewer (you can mix verilog and VHDL).
![alt text](./resources/images/readme/sample_dependencies_add.png "title")
3. TerosHDL will generate the dependencies graph:
![alt text](./resources/images/readme/sample_dependencies_viewer.png "title")
4. You can reset your viewer:
![alt text](./resources/images/readme/sample_dependencies_clear.png "title")
5. You can generate the indexed Markdown documentation for all the files.
![alt text](.
没有合适的资源?快使用搜索试试~ 我知道了~
vscode-terosHDL:VHDL和VerilogSV IDE
共852个文件
svg:691个
ts:38个
png:31个
需积分: 50 9 下载量 136 浏览量
2021-05-12
02:31:26
上传
评论 1
收藏 23.44MB ZIP 举报
温馨提示
指数 代码段和语法 Beta Verilog / SV原理图查看器 项目经理(目前仅支持VUnit 未来的工作 类似项目 1.简介 我们的理念是:思考硬件,开发硬件,利用软件工具。 TerosHDL的目标是使FPGA开发更容易,更可靠。 它是一个功能强大的开源IDE。 请访问文档网站以获取完整的IDE描述:( https://terostechnology.github.io/terosHDLdoc/ ) 2.谢谢 Verilog HDL / SystemVerilog( https://marketplace.visualstudio.com/items?itemName=mshr-h.VerilogHDL ) VUnit( https://vunit.github.io/ ) VSG( https://github.com/jeremiah-c-leary/vhdl-st
资源推荐
资源详情
资源评论
收起资源包目录
vscode-terosHDL:VHDL和VerilogSV IDE (852个子文件)
kill_windows.bat 41B
index.css 5KB
state_machine_viewer.css 4KB
dependencies_viewer.css 4KB
netlist_viewer.css 2KB
.ctags 633B
istyle-win32.exe 648KB
universal-ctags-win32.exe 308KB
project_doc.gif 2.02MB
state_machine_viewer_machine.gif 1.55MB
schematic_viewer.gif 1.26MB
project_manager.gif 887KB
netlist.gif 653KB
state_machine_designer_machine.gif 438KB
sample.gif 239KB
code_snippets.gif 167KB
.gitignore 107B
config.html 18KB
netlist_viewer.html 11KB
preview_module_doc.html 7KB
dependencies_viewer.html 7KB
state_machine_viewer.html 6KB
state_machine_designer.html 5KB
release-notes.html 2KB
istyle-linux 208KB
yosys.js 9.53MB
magic_hdl_smt.bundle.js 3.1MB
viz.js 2.4MB
full.render.js 1.89MB
full.render.js 1.89MB
netlistsvg.bundle.js 1.4MB
elk.bundled.js 1.28MB
index.min.js 115KB
index.min.js 115KB
index.min.js 115KB
jquery-2.2.4.min.js 84KB
jquery-2.2.4.min.js 84KB
jquery-2.2.4.min.js 84KB
svg-pan-zoom.min.js 29KB
svg-pan-zoom.min.js 29KB
svg-pan-zoom.min.js 29KB
viz.js 11KB
viz.js 11KB
yosysjs.js 8KB
vizdraw.js 7KB
vizdraw.js 7KB
bundle.js 5KB
vizdraw.js 2KB
yosyswrk.js 1KB
vhdl.tmLanguage.json 46KB
package.json 24KB
vhdl.json 14KB
systemverilog.json 4KB
verilog.json 4KB
xdc.json 3KB
verilog.configuration.json 1KB
systemverilog.configuration.json 1015B
launch.json 1006B
vhdl.configuration.json 829B
ucfconstraints.configuration.json 771B
settings.json 625B
tsconfig.json 610B
.eslintrc.json 434B
xdcconstraints.configuration.json 400B
tasks.json 366B
extensions.json 169B
teros-hdl.config.json 6B
LICENSE 34KB
LICENSE 1KB
LICENSE 1KB
LICENSE 1KB
LICENSE 1KB
LICENSE 1KB
LICENSE 1KB
README.md 9KB
CHANGELOG.md 235B
group_ports.png 1020KB
group_ports.png 1020KB
wavedrom_example.png 295KB
hover.png 243KB
bitfield_example.png 210KB
state_machine_designer_select.png 194KB
state_machine_viewer_machine.png 185KB
state_machine_viewer_select.png 177KB
sample_documenter_viewer.png 135KB
sample_dependencies_documentation_md.png 116KB
sample_dependencies_clear.png 116KB
sample_dependencies_documentation_html.png 116KB
sample_dependencies.png 114KB
sample_dependencies_viewer.png 100KB
sample_dependencies_add.png 97KB
sample_dependencies_documentation.png 96KB
goto.png 95KB
sample_templates_select.png 89KB
sample_formatter_select.png 89KB
sample_documenter_select.png 89KB
sample_dependencies_select.png 85KB
sample.png 80KB
hover_hexadecimal_verilog.png 75KB
hover_binary_vhdl.png 72KB
共 852 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论
简内特
- 粉丝: 29
- 资源: 4715
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功