Some thoughts on improvements
Hello Developers, First of all my sincere thanks for putting together this extension for vscode. Over the past few days I played around teroshdl-vscode. I would say that its a great step in bringing some order to the HDL dashboard. I experimented with the document generator and found it to be a great motivator for adding meaningful comments to the RTL code. I tried running Lint and synthesis using various tools and got it working after playing around with the settings a bit. During this trials I noted my findings. I feel that the whole thing can be made more intuitive. Let me explain what I mean:
I would breakdown a HDL design into following steps. A design has to be certified for all the Steps shown.
- RTL Code
- RTL Style Check
- RTL Lint Check
- RTL CDC/RDC checks
- Simulation/Verification
- Synthesis
- DFT checks
- IPXACT of Design (ports/interfaces/registers)
For each of the above steps we can choose one of the many available tools. And for the chosen tool we should be able to provide options.
So we have a Design Flow Step followed by the Tool to be used for that Step followed by Options to be passed to the tool for running that specific step.
Below I try to illustrate using example:
Example Steps: Step=Lint Check ---> Tool=Verilator ---> Verilator Options for Lint Check ---> Run Lint using Verilator Step=Lint Check ---> Tool=Vivado xvlog ----> Vivado xvlog options for Lint Check ----> Run Lint using Vivado Xvlog Step=Verification ---> Framework=Cocotb ---> Tool = Verilator ----> Verilator options for Simulation
- Tool Configuration Window can be renamed as Design Flow Configuration Window.
- In the Design Flow Configuration Window you choose the Step-Tool-Options and add it to the Runs List
- In the Runs List now we have multiple Steps Listed with a Run Button against each step and also a Status Bar.
- A step can be repeated in the Runs List. For example the Lint Check can be done with various tools.
- The Runs List also acts like a dash board for the end user.
- The user specified build directory will have a structure like
- build --> lint step --> tool1 ---> reports
- build --> lint step --> tool2 ---> reports
Just wanted to share my thoughts. :-)
Thank you very much! Do you work with certificated designs?
Hello Carlos, I did not get your question about certificated designs?
My last job function was Digital IP design. We had to certify/qualify our designs for some of the steps mentioned. Our delivery is not complete until all the steps are completed and signed-off. We had a comprehensive list of steps.
We had to certify that our design is able to synthesize in tools from different vendors. Likewise we had to certify that our design is CDC/RDC clean on a specific tool. And so on for various Design flow steps.
In the end we publish a report capturing the FlowStep-ToolName-ToolVersion for which the design is certified/qualified.
I liked your approach of vscode extension. I am pretty sure that this would be a much appreciated extension. I showed it to a few of my old colleagues and they were impressed with it.
On Mon, Apr 11, 2022 at 6:03 PM Carlos Alberto Ruiz Naranjo < @.***> wrote:
Thank you very much! Do you work with certificated designs?
— Reply to this email directly, view it on GitHub https://github.com/TerosTechnology/vscode-terosHDL/issues/313#issuecomment-1094994407, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHQGII6J53TWVWTU57AIR6LVEQL3JANCNFSM5TCYPDUA . You are receiving this because you authored the thread.Message ID: @.***>
That's cool! Could you send me an email to [email protected]
I would like to discuss about the workflow in TerosHDL.