diff --git a/README.md b/README.md
index 94817ae..92bccbb 100644
--- a/README.md
+++ b/README.md
@@ -7,17 +7,22 @@


+[Document](https://digital-eda.github.io/DIDE-doc-En) | [中文文档](https://digital-eda.github.io/DIDE-doc-Cn)
+
+
## Preface
-- Installation address[Installation address](https://marketplace.visualstudio.com/items?itemName=sterben.fpga-support)。
-- If you have any questions, please leave a message on the [issues](https://github.com/Bestduan/Digital-IDE/issues)上发表。
-- If you like it, click on the[star](https://github.com/Bestduan/Digital-IDE)吧。
+- Installation address[Installation address](https://marketplace.visualstudio.com/items?itemName=sterben.fpga-support)
+- If you have any questions, please leave a message on the [issues](https://github.com/Bestduan/Digital-IDE/issues)
+- If you like it, click on the[star](https://github.com/Bestduan/Digital-IDE)
- email: sterben.nitcloud@gmail.com | zhelonghuang@mail.ustc.edu.cn
- QQ group No.: 932987873
Any problems you have met during the use, you can contact us in QQ group, and we will reply when I see it.
+---
+
## About Feedback
First of all, thank you for your use and feedback. Any better ideas about this plugin can be published under both Zhihu and github, if it is the use of the problem please move to [github](https://github.com/Bestduan/Digital-IDE/issues) instead of Zhihu. Thank you for your cooperation.
@@ -378,26 +383,26 @@ For project management on the PL side, I have abstracted the following functions
6. gui --------- open the GUI interface of the tool chain
1. After opening the GUI, the terminal named *`HardWare`* is not recommended to close by itself.
- The whole GUI interface will be closed automatically after direct closure, and if not saved then the design may be lost.
- - The plugin will not move your `IP and bd design` to the same level of `Hardware.src` after closing directly.
+ - The plugin will not move your `IP and bd design` to the same level of `Hardware/src/` after closing directly.
7. exit -------- Closing the project is only valid under the CLI, after opening the GUI, terminal control is taken over by the GUI.
- 1. After clicking `exit` the plugin will move your `IP and bd design` to the same level of `Hardware.src`.
+ 1. After clicking `exit` the plugin will move your `IP and bd design` to the same level of `Hardware/src/`.
2. If you close the terminal named *`HardWare`* directly, the move of `IP and bd designs` will not take place.
- 3. Note: You can also move your `IP and bd designs` to the same level of `Hardware.src` when *Clean* is in the function bar *TOOL*.
+ 3. Note: You can also move your `IP and bd designs` to the same level of `Hardware/src/` when *Clean* is in the function bar *TOOL*.
In addition to the above explicit functions, there are two implicit functions each in the `architecture` column, which are
1. `Set as Top` -------------- sets this file as the top-level design module of the current project
2. `Set as Testbench Top` ---- sets the file as the top-level module of the simulation for the current project
-Specially, *`Zynq`* devices support mixed PS+PL development. To cope with the mixed development, the plugin gives the `SOC` configuration as follows:
+Specially, *`Zynq`* devices support mixed PS+PL development. To cope with the mixed development, the plugin gives the `soc` configuration as follows:
```json
-"SOC": {
+"soc": {
"core": "ps7_cortexa9_0",
"bd" : "zynq_default"
}
```
Using the configuration plugin as above will automatically build a bd project containing the zynq design to help users quickly build the platform.
-Finally, about device selection, it can be configured in the `property.json` file under the *Device* property.
+Finally, about device selection, it can be configured in the `property.json` file under the *device* property.
The following are currently available:
- xc7z020clg400-2
- xc7a35tftg256-1
@@ -408,22 +413,26 @@ The following are currently available:
But the supported devices are not limited to these, theoretically all the devices that vivado can support can be supported. You can write your device directly to the *Device* attribute, which will give you a warning if the device is not in the database, but will not prevent you from running. To remove the warning you need to add your device to the database with the *FPGA:Add devices to the database* command. Unneeded devices can also be removed from the database with *FPGA:Remove the device from the database*.
**Related setting**
-`TOOL.vivado.install.path` --- Installation path of vivado
+`prj.vivado.install.path` --- Installation path of vivado
When vivado is installed, you can configure the installation path of vivado directly inside the plugin, or you can add vivado to the environment variables (recommended). If the path is not found by mistake, it is already added to the environment variables by default.
*e.g. : D:/APP/vivado_18_3/Vivado/2018.3/bin/*
`[Note]`: Use `/` to separate the paths and configure them to the bin directory.
-`PRJ.xilinx.IP.repo.path` ---- User-designed IP libraries from xilinx
+`prj.xilinx.IP.repo.path` ---- User-designed IP libraries from xilinx
After configuring this property, the plugin will automatically add the path to the IP repo of vivado.
*e.g. : D:/project/FPGA/.Lib/xIP*
+`prj.xilinx.BD.repo.path` ---- User-defined placement path for xilinx block design files
+*e.g. : D:/project/FPGA/.Lib/xbd*
+
+
#### lib Manager
The plugin comes with HDL function library linking function.
The `property.json` file is configured as follows:
```json
"library" : {
"state": "", // local | remote(default)
- "Hardware" : {
+ "hardware" : {
"common": [],
"custom": []
}
@@ -441,7 +450,7 @@ The *state* represents whether the library file is loaded into the local workspa
- `remote` represents virtual inclusion from a remote (anything not under the workspace is considered remote, not remote on the network).
- remote library files can be opened and changed *(`Note: `If the next import after the change is the code after the change)* .
- `local` means import the remote file into the project locally
- 1. placed in the lib under `ARCH.Hardware.src`, the changes will not affect the code in the remote library.
+ 1. placed in the lib under `arch.hardware.src`, the changes will not affect the code in the remote library.
2. *`[Note]`: When changing from local back to remote the lib folder will be deleted (plugin will remind), please note*.
The property *common* represents the HDL function library that comes with the plugin, *the code of this library is less mature and is for reference only*.
@@ -458,8 +467,8 @@ The lib paths that have been simulated and tested so far are as follows
`[Note]`: When the input is a folder then it contains all the files under that folder. In addition, it is not recommended to change the code in this library directly, otherwise it will be overwritten again after the next plugin update, please be careful.
The property *custom* represents a user-defined HDL function library.
-The use of this property requires the root directory of the user-defined library to be configured for *PRJ.custom.Lib.repo.path* under *setting*, and the absolute path of the file (folder) with the configuration under the *custom* property. The representation is as follows:
-*`PRJ.customer.Lib.repo.path`*`/`*`${custom}`*
+The use of this property requires the root directory of the user-defined library to be configured for *prj.lib.custom.path* under *setting*, and the absolute path of the file (folder) with the configuration under the *custom* property. The representation is as follows:
+*`prj.lib.custom.path`*`/`*`${custom}`*
`[Note]`: When the input is a folder then it contains all the files under that folder.
@@ -469,7 +478,15 @@ Finally, for the `IP_REPO` property, this is the two official xilinx IP repo pro
The purpose of simulation building is to help users to build their own simulation framework quickly and get simulation results quickly.
#### generate instance & tb file
-
+
+Although auto-completion can realize the automatic completion of the example, but it can not view the entire project all the available modules and select from them, so we provide automatic example of the function; In addition, we also provide automatic generation of the selected module testbench function.
+
+
+