-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathideas.html
More file actions
263 lines (249 loc) · 17.4 KB
/
ideas.html
File metadata and controls
263 lines (249 loc) · 17.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
<html>
<head>
<title>GSoC 2014 Ideas Page</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta property="og:url" content="http://binpy.github.io/" />
<meta property="og:type" content="website" />
<meta property="og:title" content="BinPy GSoC 2014" />
<meta property="og:image" content="http://binpy.github.io/images/img2.png" />
<meta property="og:description" content="Ideas page for Google Summer of Code 2014" />
<meta name="keywords" content="binpy,binpy-soc,hardware in python">
<link href='//fonts.googleapis.com/css?family=Alegreya+Sans:400' rel='stylesheet' type='text/css'>
<link href='//fonts.googleapis.com/css?family=Alegreya+Sans+SC:400,700' rel='stylesheet' type='text/css'>
<link href='//fonts.googleapis.com/css?family=Open+Sans:400' rel='stylesheet' type='text/css'>
<link href="http://fonts.googleapis.com/css?family=Cuprum:400,700" rel="stylesheet" type="text/css">
</head>
<body style="font-family: Alegreya Sans;width:80%;margin:auto;">
<div style="width:100%;height:60px;background: black;padding-top:20px;padding-left:20px;">
<div style="float:right;margin-right: 10px;">
<a style="padding:5px;border:1px solid black;border-radius:3px;background: #009925;color:white;" href="http://binpy.github.io">Home</a>
<a target="_blank" style="padding:5px;border:1px solid black;border-radius:3px;background: #009925;color:white;" href="http://pythonhosted.org/BinPy/">Documentation</a>
<a target="_blank" style="padding:5px;border:1px solid black;border-radius:3px;background: #009925;color:white;" href="https://github.com/BinPy/BinPy/">Source</a>
</div>
<h1 style="font-family:Cuprum;margin-top:0px;color:white;">BinPy</h1>
</div>
<div style="text-align:center;">
<h1 style="font-size:320%;color:#3498db;font-family:Alegreya Sans SC"><span style="color:#3369E8;">Google</span> <span style="color:#D50F25;">Summer</span> <span style="color:#EEB211;">of</span> <span style="color:#009925;">Code</span> 2014 <span style="color:#D50F25;">Ideas</span></h1>
</div>
<br>
<a id="howtouse" style="float:right;padding-right:10px;padding:8px;border:1px solid white;border-radius:5px;background: #009925;color:white;" target="_blank" href="http://binpy.github.io/BinPy/">How to use BinPy</a>
<div id="introduction">
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">Introduction</h1>
<p style="margin-left:3%;font-size:20px;">It is a library which will serve as a base to develop circuit based applications and educational software on top of it. BinPy is a clear representation of fundamentals. Everything has been written from scratch such as gates, logical operations, etc. This package does not depend on any external library other than pure Python.<br/>We want to extend the hardware programming concepts to Python. We are looking for extremely motivated developers who are willing to break amazing things.</p>
<p style="margin-left:3%;font-size:20px;">We look forward to add more and more features to this project which simplifies user experience in the world of hardware designing and simulation.</p>
</div>
<!---
<div id="getting started">
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">Getting Started</h1>
<p style="margin-left:3%;font-size:20px;">We use GitHub for project management and collaborations.<br/>
Setting up development environment for BinPy is pretty easy. You just need to have Python installed on your computer.<br/><br/>
<strong>Install using pip</strong><br/><br/>
sudo apt-get install pip setuptools ipython<br/>
sudo pip install https://github.com/BinPy/BinPy/zipball/master<br/><br/>
<strong>Install using git</strong><br/><br/>
sudo apt-get install git setuptools ipython<br/>
git clone https://github.com/BinPy/BinPy.git<br/>
cd BinPy/<br/>
sudo python setup.py install<br/><br/>
That's all! Start contributing!<br/><br/>
<span style="color:#1abc9c;">For further queries mail us at binpylib@gmail.com or join our Google group(binpy@googlegroups.com)</span>
</p>
<h1 style="font-size:100%;color:#e74c3c;font-family:Alegreya Sans SC;margin-left:3%;">Example</h1>
<img src="images/example.png" style="margin-left:3%;"/>
</div>
-->
<br/>
<h3 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC; text-align:center;"><b><u>GSoC 2014 Proposal Application has started</u></b></h3>
<br/>
<h3 style="font-size:125%;color:#e74c3c;font-family:Alegreya Sans SC;">NOTE</h3>
<div style="font-size:18px;">
We will begin holding GSoC IRC hours starting from March 2, 2014. We will be available from 2 to 4 pm IST on Monday to Friday. We ask that students use this as their primary means of communication with mentors. We kindly ask that you do not do any of the following:
<ul style="margin-left:3%;font-size:18px;">
<li>Email mentors directly about BinPy related questions.</li>
<li>Submit github issues related to GSoC. </li>
</ul>
</div>
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">Students We Are Looking For</h1>
<div style="font-size:18px;">
We are looking for talented undergraduate and graduate students who want to help us change build an open source software for circuit simulation. Students are not required to have a background in electronics but they must be interested in using open source software to make the world a better place. A good candidate student should have interest in any or all of the following computer science sub-disciplines: Electornics, Simulations, Graphics, Programming.
</div>
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">Mentors</h1>
<div style="font-size:18px;">
You will be working with Abhinav Gupta, Anant Kamath, Jay Rambhia and Salil Kapur.
</div>
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">Project Ideas</h1>
<div id="idea-1">
<h1 style="font-size:140%;color:#e74c3c;font-family:Alegreya Sans SC;">1. Extending Core Libraries and Classes</h1>
<p style="margin-left:3%;font-size:20px;">
<strong>Description : </strong> The scope of algorithms and gates used in hardware design are numerous.
Some basic work has been done and important gates, ICs and algorithms have been implemented but we would like
to further expand our libraries to various other aspects of digital electronics. Visit our homepage
<a target="_blank" href="http://binpy.github.io">BinPy</a> to view some of the work already done.<br/><br/>
For instance, you can develop more integrated circuit libraries as the no of ICs are numerous, also you can develop
on vaious algorithms used in hardware design to reduce the circuit size so that user can directly develop
on that without having to reduce the size of circuit himself. You can see our IC classes and algorithms
for example.<br/><br/>
Addition of following features will increase the use cases of the project.
<ul style="margin-left:3%;font-size:20px;">
<li>Introduction of problem solving algorithms</li>
<li>Addition of Microprocessors and Analog Devices</li>
<li>Generation of Verilog code from design</li>
</ul>
<br/></p>
<p style="margin-left:3%;font-size:20px;">
<strong>Difficulty : </strong>Medium<br/>
<strong>Requirements : </strong>Experience in Python and hardware design<br/>
<strong> Contacts: </strong><a href="mailto:aag999in@gmail.com">Abhinav Gupta</a> and <a href="mailto:jayrambhia777@gmail.com">Jay Rambhia</a></a>
</p>
</div>
<br>
<div id="idea-2">
<h1 style="font-size:140%;color:#e74c3c;font-family:Alegreya Sans SC;">2. Circuit Design Software</h1>
<p style="margin-left:3%;font-size:20px;">
<strong>Description : </strong> Creating a GUI using Python and Qt where you can directly drag and drop elemets like wires , gates, ICs, etc and connect them to our Python code. This will reduce the amount of programming to be done by the user by a huge margin so that even amature programmers and even the hardware designers can start off easily.<br/>
There's a free and open source software called <a href="http://www.kicad-pcb.org/" target="_blank" >KiCad</a> which is very useful in designing PCBs. But it doesn't have feature to simulate the design. We want to start with a simple circuit designing software which should also be capable of realtime simulation.<br/>
Ultimate goal of this software is to generate Verilog HDL code from the design itself.<br/><br/>
Here are few type of simulations you can work on:
<ul style="margin-left:3%;font-size:20px;">
<li>Transistor simulation – low-level transistor-simulation of a schematic/layout's behavior, accurate at device-level.</li>
<li>Logic simulation – digital-simulation of an RTL or gate-netlist's digital (boolean 0/1) behavior, accurate at boolean-level.</li>
<li>Behavioral Simulation – high-level simulation of a design's architectural operation, accurate at cycle-level or interface-level.</li>
<li>Hardware emulation – Use of special purpose hardware to emulate the logic of a proposed design. Can sometimes be plugged into a system in place of a yet-to-be-built chip; this is called in-circuit emulation.
Technology CAD simulate and analyze the underlying process technology. Electrical properties of devices are derived directly from device physics.</li>
<li>Electromagnetic field solvers, or just field solvers, solve Maxwell's equations directly for cases of interest in IC and PCB design. They are known for being slower but more accurate than the layout extraction above.</li>
</ul>
<br/>
</p>
<p style="margin-left:3%;font-size:20px;">
<strong>Difficulty : </strong>Hard<br/>
<strong>Requirements : </strong>Experience in Qt and Python<br/>
<strong> Contacts: <a href="mailto:aag999in@gmail.com">Abhinav Gupta</a> and <a href="mailto:kamathanant@gmail.com">Anant Kamath</strong></a>
</p>
<img src="images/img1.jpg" style="width:80%;margin-left:10%;border:4px solid black;" />
</div>
<br>
<div id="idea-3">
<h1 style="font-size:140%;color:#e74c3c;font-family:Alegreya Sans SC;">3. Development of Interactive Educational Software</h1>
<p style="margin-left:3%;font-size:20px;">
<strong>Description : </strong> While creating BinPy, it was always kept in mind to make it as descriptive as possible. Since all the components have been made from scratch, developing an educational software to teach people electronics is a very good idea.<br/><br/>
Following features can be implemented in the software:
<ul style="margin-left:3%;font-size:20px;">
<li>Demonstration of things like working of gates, flip flops, counters and many other components will enrich people's understanding of electronics. Above all it will be more effective if they do it on their own.</li>
<li>The user interface should be clean and simple just like a bread board where users put components and connect them with ease.</li>
<li>Current flow should be visible at intermediate stages.</li>
<li>Clock speed should be user controllable.</li>
</ul>
<br/>
</p>
<p style="margin-left:3%;font-size:20px;">
<strong>Difficulty : </strong>Medium<br/>
<strong>Requirements : </strong>Experience in Qt and Python<br/>
<strong> Contacts: </strong><a href="mailto:jayrambhia777@gmail.com">Jay Rambhia</a>
</p>
</div>
<div id="idea-4">
<h1 style="font-size:140%;color:#e74c3c;font-family:Alegreya Sans SC;">4. Documentation, Examples and Tutorials</h1>
<p style="margin-left:3%;font-size:20px;">
<strong>Description : </strong> BinPy is a great tool for hardware designers and novice programmers who want to design various complicated circuits. It reduces the work effort required in other simulation tools present right now by many folds. It is a great way to bring hardware to masses through python. But this BinPy API lacks a good tutorial section. So most of the time, people find it difficult to start their projects with BinPy. We would like someone to study BinPy API properly and make a proper tutorial and documentation for BinPy.<br/><br/>
<strong>Difficulty : </strong>Easy<br/>
<strong>Requirements : </strong>Experience in Python<br/>
<strong> Contacts: </strong><a href="mailto:kamathanant@gmail.com">Anant Kamath</a>
</p>
</div>
<br>
<br>
<div><p style="font-size:120%">These ideas are just for reference but we would like developers to come up with their own ideas on various algorithms and circuits that are being used in harware design so that user can start developing on top of these.</p></div>
<div id="apply">
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">How To Apply</h1>
<p style="margin-left:3%;font-size:20px;">
You should apply through the main GSoC webpage. Your project description should be your own plan of action to address one of the project ideas we listed above. From this application we should be able to discern who you are, what you are doing (i.e. where you study, what you study), and any cool things you have done with BinPy. We place a lot more emphasis on demonstrating your abilities than where you study or what grades you have.
We don’t care where you are from or your current experience level, we will take students who can show that they are up to the task of working on the project. In real terms this means that you should do one or more of the following before submitting an application:
<ul style="margin-left:3%;font-size:18px;">
<li>Fix a bug or add a feature - this is the NUMBER ONE indicator of GSoC success. If you can set up the dev environment, read a ticket, fix a bug, and send us a pull request we can teach you everything else.</li>
<li>Make a cool BinPy demo - Show us that you have figured out how BinPy works and you are now using it solve practical problems. Make a cool demo, write a blog post about it, and send it to us.</li>
</ul>
</p>
</div>
<div id="proposal">
<h1 style="font-size:200%;color:#e74c3c;font-family:Alegreya Sans SC;">Project Proposal Template</h1>
<p style="margin-left:3%;font-size:20px;">
Writing a good project proposal is the most essential part. You have to elaborate your project and yet be brief about it. A lot of students apply so it's really difficult to go through every proposal thoroughly. The proposal must be in the following template.
<ul style="margin-left:3%;font-size:18px;">
<li> <strong>Title</strong>: BinPy: < Project Title ></li>
<li> Sub-org information </li>
<li> Student Information
<ul style="margin-left:3%;font-size:18px;">
<li> Name </li>
<li> Email ID </li>
<li> Contact Number </li>
<li> <strong> Time Zone </strong> </li>
<li> IRC nick </li>
<li> <strong> Blog Link </strong> </li>
<li> Other Infor </li>
</ul>
</li>
<li> University Information
<ul style="margin-left:3%;font-size:18px;">
<li> University Name </li>
<li> Degree and Major (if any) </li>
<li> Graduation Year </li>
</ul>
</li>
<li> Project Abstract </li>
<li> Detailed Project Description </li>
<li> Detailed Project Timeline, goals and milestones </li>
<li> Your contribution to BinPy (solved issues, bugs, docs, etc) </li>
<li> Blogposts about BinPy </li>
<li> Any other information that you find relevant which would amaze us</li>
</ul>
</p>
</div>
<br>
<br>
<footer>
<div style="padding-right:10px;float:right;margin-top:5px;font-size:20px;font-weight:bold;"><a target="_blank" href="mailto:binpylib@gmail.com">E-Mail</a> <a target="_blank" href="https://webchat.freenode.net/?channels=binpy-soc">IRC</a></div>
<p style="margin-top:40px;">© Copyright 2014 Binpy Developers</p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="mrsud94@gmail.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="item_name" value="Binpy">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_SM.gif:NonHostedGuest">
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
<nav style="text-align:center;">
<a href="resources/LICENSE.txt"<li>License</li></a>
<a href="https://www.ohloh.net/p/BinPy"<li>Ohloh</li></a>
<a id="pypi" href="https://pypi.python.org/pypi/BinPy"<li>PyPi</li></a>
</nav>
</div>
</br>
</footer>
<style>
footer{
font-family:DejaVu Sans;
color:white;
height:140px;
border:1px solid rgb(10,10,10);
padding-left:20px;
background:black;
position: relative;
font-family:Alegreya Sans;
}
footer a{
text-decoration: none;
color:white;
}
footer a:hover{
color:#3498db;
}
a{
color:#e74c3c;
text-decoration: none;
}
</style>
</body>
</html>