You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/posts/Vivek_Kumar_GSoC2025_FinalReport.md
+14-14Lines changed: 14 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,10 +20,10 @@ Welcome to my final blog for Google Summer of Code 2025 for the project **Enhanc
20
20
### New features that have been added and merged include:
21
21
- Verilog modules for circuit elements
22
22
- Play/Pause button in the simulator
23
-
- Improved UI/UX for code-editor
23
+
- Improved UI/UX for codeeditor
24
24
- Verilog terminal
25
25
- Resizable & draggable view of tools window
26
-
- Yosys Upgradation
26
+
- Yosys Upgrade
27
27
28
28
---
29
29
@@ -36,9 +36,9 @@ CircuitVerse had implemented the versioning system to avoid merging big changes
36
36
37
37
### Adding the Verilog Modules for Circuit Elements
38
38
39
-
CircuitVerse has the feature of generating Verilog code for the circuit designed in the Simualtor. The moduleVerilog() function is responsible for generating the verilog moduels for the Circuit element. Some of the circuit elements which are mentioned below don't have this module, this causes the calling of missing verilog functions. The goal of the first week was to add the verilog module for all the missing elements.
39
+
CircuitVerse can generate Verilog for circuits designed in the simulator. The `moduleVerilog()` function generates Verilog modules for circuit elements. Some elements (listed below) were missing these modules, causing calls to undefined Verilog functions. The first week focused on adding the missing Verilog modules.
40
40
41
-
#####The Verilog Module for the following Circuit elements were added:
41
+
#### The Verilog Module for the following Circuit elements were added:
42
42
43
43
- SR Flip Flops
44
44
- JK Flip Flops
@@ -52,7 +52,7 @@ CircuitVerse has the feature of generating Verilog code for the circuit designed
52
52
**Checkout the Below Video for before and after fix**
53
53
{{< video src="/videos/Vivek_Gsoc25/VerilogModule.mp4" type="video/mp4" preload="auto" >}}
54
54
55
-
**In total 7 verilog modules were added, some of them are displayed below : **
55
+
**In total 8 verilog modules were added, some of them are displayed below : **
56
56

57
57

58
58
@@ -80,7 +80,7 @@ CircuitVerse has the feature of generating Verilog code for the circuit designed
Yosysdigitaljs-server created by Marek Materzok is the technology behind the feature that allows users to convert Verilog code
86
86
into circuits in the simulator.
@@ -101,15 +101,15 @@ The Yosys repo is now updated, folder structure updated & consistent with its pa
101
101
102
102
CircuitVerse provides its users the feature of Verilog code editor. Which can be used by the users to write verilog code and then convert them into circuits and further integrate them into their circuits on the simulator.
103
103
104
-
#####The goal of the Code Editor is to:
104
+
#### The goal of the Code Editor is to:
105
105
106
106
- Enable writing and editing Verilog code inside CircuitVerse
107
107
- Send code to a backend (powered by Yosys, an open-source synthesis tool)
108
108
- and Parse the output and generate a visual circuit automatically
109
109
110
110
The Code Editor is built using CodeMirror — a powerful and customizable browser-based code editor.
111
111
112
-
#####The code Editor has the following features currently:
112
+
#### The code Editor has the following features currently:
113
113
- Syntax highlighting for Verilog
114
114
- Smart indentation
115
115
- Line numbering
@@ -119,7 +119,7 @@ The Code Editor is built using CodeMirror — a powerful and customizable browse
119
119
But the UI/UX of the code editor is not particularly encouraging for the users, also there are lots of features that can be added to it to make it better.
120
120
121
121

122
-
#####I have implemented the following things, which were proposed:
122
+
#### I have implemented the following things, which were proposed:
123
123
- Improved indentation between code and line numbering, between numbering and the edge
124
124
- CTRL + S shortcut for the save button
125
125
- Option to increase the font size
@@ -141,8 +141,7 @@ The verilog terminal logs the process status, success messages, and error logs.
The play/pause button stops the whole simulation engine, clock, and any UI updates for the circuit elements. This results in a complete pause of the simulator, which allows the users to build their circuits and perform other functions while conserving the resources of the browser. This feature allows users to stop the continuous simulation of their circuits, first pause the simulation, get their circuits ready, and then simulate it.
145
-
This avoids confusion and helps users to perform other types of things like debugging, testbench, timming diagram and other functions in the simulator.
144
+
The play/pause button halts the simulation engine, clocks, and UI updates. Users can pause to build/debug circuits and conserve browser resources, then resume when ready. This reduces confusion and supports workflows like debugging, testbenches, and timing diagrams.
@@ -151,11 +150,11 @@ The tools section of the Simulator contains various tools, each having thier own
151
150
152
151
### Verilog feature documentation
153
152
154
-
As part of this project, one of the primary tasks has been to document the verilog feature in deatil with examples for the CircuitVerse users. I have created detailed documentation for both the Verilog feature with examples for the CircuitVerse users to experiment with it and use them.
153
+
As part of this project, I documented the Verilog feature in detail with examples for CircuitVerse users.
155
154
156
-
A special focus was also given to creating the documentation for the developers of the CircuitVerse so that they can easily setup the Verilog feature in thier local machine and develop it further.
155
+
I also created developer-focused docs to make it easy to set up the Verilog feature locally and extend it further.
157
156
158
-
#####Documenting the Verilog Features:
157
+
#### Documenting the Verilog Features:
159
158
160
159

161
160

@@ -178,6 +177,7 @@ A special focus was also given to creating the documentation for the developers
178
177
- Learned and applied Object-Oriented coding practices
179
178
- Enhanced and expanded my debugging skills
180
179
- Learned Docker and networking between containers
0 commit comments