Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
capture [2017/09/07 05:56] mcmastercapture [2020/09/24 15:17] (current) – [Degate] Updated the software presentation with the latest news about the project. dorianbdev
Line 27: Line 27:
  
 Tools that rely on standard cells or other regular layout Tools that rely on standard cells or other regular layout
 +
 +[[https://twitter.com/furrtek/status/1216091911020253184?s=20|Furrtek experiment]]
  
 ===== ARES ===== ===== ARES =====
Line 64: Line 66:
 ===== Degate ===== ===== Degate =====
  
-{{:degate:degate-port_colors.png?450|}}+[[https://github.com/DegateCommunity/Degate|{{ :degate:degate-logo.png?150 |Degate}}]]
  
-[[http://www.degate.org/screenshots/degate-port_colors.png|Source]]+==== The project ==== 
 + 
 +[[https://github.com/DegateCommunity/Degate|Degate]] is a multi-platform software for semi-automatic VLSI reverse engineering of digital logic in chips. It is the highest profile FOSS tool, with tutorials and other stuff available.  
 + 
 +==== Little history ==== 
 + 
 +Degate was actively developed by Martin Schobert, during his thesis, from 2008 to 2011. For now, the project is inactive and only get some small fixes since 2011. The project is composed of a library (libGate) and a GUI interface (Degate). 
 + 
 +In 2016 it was said here: 
 + 
 +"''Users have noted significant stability issues.  I (JM) tried tool again in 2016 and noted considerable stability improvements, but still had it crash on me before I was able to get any results.  Still, it might not take that much work to stabilize the tool and unite the community behind it.''" 
 + 
 +Degate has definitely a great potential, mainly because it is the only free and open-source software for hardware reverse engineering of chips, but never knew how to impose itself in the community. One possible reason for that is because Degate was known to be unstable and have impacting bugs in a first place. 
 + 
 +You can visit the initial project website to learn more:
  
 [[http://degate.org/|http://degate.org/]] [[http://degate.org/|http://degate.org/]]
  
-The highest profile FOSS tool Tutorials and other stuff available.+==== Current status ==== 
 + 
 +In 2019, I ([[https://github.com/DorianBDev|Dorian Bachelot]]) forked the project. This new version aims to totally replace the old Degate, with a focus on Windows and Linux support, getting better stability and general modernization. To achieve this the aim was to drop GTK and move to Qt and merge the lib and the GUI part of the project. Another objective was to minimize the number of dependencies, for now it uses only Boost and Qt and the mid-term objective is to only keep Qt and remove Boost. 
 + 
 +The stability was the main problem of the old Degate and the main reason why the community hadn't already united around itRegarding that, we want to have fewer bugs as possible, even if some functionality needs to be dropped (for the moment). 
 + 
 +A lot of bugs were fixed in this newer version, and it should be a better base to improve Degate even more in the future. 
 + 
 +{{ :degate:degate-annotation.png?850 |Degate}}  
 + 
 +\\ 
 + 
 +[[https://github.com/DegateCommunity/Degate|Degate repository]] 
 + 
 +[[https://github.com/DegateCommunity/DegateDocs|Degate documentation]] 
 + 
 +[[https://github.com/DegateCommunity/DegateDemoProjects|Degate demo projects]] 
 + 
 + 
 +====== bsim ====== 
 + 
 +[[https://bitbucket.org/spramod/bsim-tetc14/overview|bitbucket.org/spramod/bsim-tetc14/overview]]
  
-Users have noted significant stability issues I (JM) tried tool again in 2016 and noted considerable stability improvements, but still had it crash on me before I was able to get any results.  Still, it might not take that much work to stabilize the tool and unite the community behind it.+Implements the following paper algosProvides aggregation and function inference scheme, but doesn't reach behavioural HDL level.
  
  
Line 84: Line 121:
 {{pr0ntools:cfcv:pr0nsweeper:overview.png?400}} {{pr0ntools:cfcv:pr0nsweeper:overview.png?400}}
  
-An experimental semi-automated polygon capture tool for chips using lambda rules (grid layout)+An experimental crowdsourced semi-automated polygon capture tool for chips using lambda rules (grid layout)
  
 [[https://siliconpr0n.org/wiki/doku.php?id=pr0ntools:cfcv:pr0nsweeper|Link]] [[https://siliconpr0n.org/wiki/doku.php?id=pr0ntools:cfcv:pr0nsweeper|Link]]
  
 +Above: Playstation 1 CPU top metal test using confocal microscope
  
 ===== psxdev ===== ===== psxdev =====
Line 101: Line 139:
  
 For the most part people use Inkscape, gimp, or photoshop with it mostly being personal preference which tool you use For the most part people use Inkscape, gimp, or photoshop with it mostly being personal preference which tool you use
 +
 +===== Automated methods =====
 +
 +A number of people have tried but IMHO nobody has beat manual methods yet:
 +  * Robert B: experimented with using neural networks to capture 7400 series chips. Promising, but last I saw needs more testing
 +  * John M: misc tests. Main result was that active layer should be feasible if delayered
 +  * Ken S: tried some things, but think didn't get far
 +  * Visual 6502: don't recall details except that they claimed although they could get some automated, it took more time to fix mistakes than it would to do from scratch
 +  * [[https://nerdstuffbycole.blogspot.com/2020/01/end-of-year-update.html|ColeJ AY-3-8500 experiments]]
 +
  
 ===== Inkscape ===== ===== Inkscape =====
Line 148: Line 196:
  
  
-===== Automated methods ===== +===== Visual 6502 tool =====
- +
-A number of people have tried but IMHO nobody has beat manual methods yet: +
-  * Robert B: experimented with using neural networks to capture 7400 series chips. Promising, but last I saw needs more testing +
-  * John M: misc tests. Main result was that active layer should be feasible if delayered +
-  * Ken S: tried some things, but think didn't get far +
-  * Visual 6502: don't recall details except that they claimed although they could get some automated, it took more time to fix mistakes than it would to do from scratch +
- +
- +
-===== Visual 6502 =====+
  
 {{:v6502:capture:visual6502_editor.png?400|}} {{:v6502:capture:visual6502_editor.png?400|}}
Line 165: Line 204:
 Internal python tool to help draw polygons.  Not publicly released Internal python tool to help draw polygons.  Not publicly released
  
-They also explored automation+====== Netlist extraction ====== 
 + 
 +A lot of people roll their own for this and that 
 + 
 +===== dietools ===== 
 + 
 +https://github.com/SiliconAnalysis/dietools 
 + 
 +"Series of tools for die shot reverse-engineering" 
 + 
 +A few people use this one, so its arguably the most popular 
 + 
 +===== polychip ===== 
 + 
 +https://github.com/RobertBaruch/polychip 
 + 
 +"Python app to extract a netlist of NMOS transistors from an Inkscape diagram." 
 + 
 +===== magic ===== 
 + 
 +Magic VLSI, along with many other semi tools, should have something of this sort 
 + 
 + 
 +====== References ======
  
-TODOI had a screencap of thisWhere did it go?+    * Reverse Engineering Digital Circuits Using Functional Analysis (Pramod Subramanyan)[[http://www.academia.edu/2909575/Reverse_Engineering_Digital_Circuits_Using_Functional_Analysis|http://www.academia.edu/2909575/Reverse_Engineering_Digital_Circuits_Using_Functional_Analysis]]
  
 
capture.1504763768.txt.gz · Last modified: 2017/09/07 05:56 by mcmaster
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution 4.0 International
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki