Saturday, 2020-06-27

*** tpb has joined #yosys00:00
emebwell sort of. touched the code and reran synth and now it doesn't work.00:00
emebtime to re-write this with synchronous logic.00:03
*** lutsabound has joined #yosys00:28
*** Degi has quit IRC01:59
*** Degi has joined #yosys01:59
*** citypw has joined #yosys02:20
*** lutsabound has quit IRC02:37
az0rewhitequark: Understood.  TBH the only reasons I've found for wanting boost are: 1) as a dependency for minipart2, but daveshah's hypergraph partitioning implementation will eliminate the need for that; 2) boost bimap for the .hgr file formatting code in `partition`, which would reduce memory usage.  Not a big deal.03:40
az0reBut frankly I disagree about boost in particular, and I would much sooner introduce a dependency boost bimap than scons, for example.  But I will always try to avoid boost (or any dependencies) if possible03:41
az0reThen again I don't do much cross-compiling, so I'm ignorant of the challenges boost can cause for that.  Is there anything in particular?03:43
az0reEspecially for header-only libraries (IIRC bimap is one) I wouldn't expect any serious difficulties03:45
*** emeb has quit IRC03:47
*** _whitelogger has quit IRC05:54
*** _whitelogger has joined #yosys05:56
*** emeb_mac has quit IRC05:58
az0reOh shit, how did I miss this? https://vlsicad.ucsd.edu/GSRC/bookshelf/Slots/Partitioning/MLPart/06:00
daveshahThe dependency chain is quite annoying for that one06:03
az0reI can't even download the source code lol06:03
az0reI have to send an email to a GMail account06:03
az0relolwut06:03
daveshahI did find a link somewhere06:04
az0reIt *does* seem MIT licensed, though06:04
az0rehttps://vlsicad.ucsd.edu/GSRC/bookshelf/Slots/Partitioning/MLPart/COPYRIGHT06:04
daveshahhttp://vlsicad.eecs.umich.edu/BK/PDtools/tar.gz/OLD_RELEASES/06:04
tpbTitle: Index of /BK/PDtools/tar.gz/OLD_RELEASES (at vlsicad.eecs.umich.edu)06:04
az0reSooo once a copy is obtained, it could henceforth be published as part of Yosys06:04
daveshahSome of the dependencies have weird licenses06:04
daveshahAnd you effectively need a big chunk of UCLAPack, not just MLPart06:04
az0reOh, nice catch06:05
az0reI see06:05
daveshahIt could be possible to get it to work and strip out the dubious bits06:05
az0reI'll look around later and see if it might be worth the effort06:08
az0reThe attractive part is that it's permissively licensed and apparently a performance-competitive Real Serious Tool actually used to tape out real designs06:09
daveshahYes, other bits might be useful too06:13
daveshahA more general package with the dodgy bits stripped out would be handy06:13
*** _whitelogger has quit IRC08:06
*** _whitelogger has joined #yosys08:08
*** indy has quit IRC08:14
*** Asu has joined #yosys08:51
*** indy has joined #yosys09:31
*** indy has quit IRC10:41
*** indy has joined #yosys10:46
*** kraiskil has joined #yosys11:02
*** kraiskil has quit IRC11:23
*** dys has quit IRC11:40
*** mirage335 has quit IRC11:48
*** mirage335 has joined #yosys12:00
*** thardin has joined #yosys12:31
*** kraiskil has joined #yosys12:44
*** esden has quit IRC12:45
*** esden has joined #yosys12:47
*** elGamal has quit IRC13:31
*** elGamal has joined #yosys13:31
*** dys has joined #yosys14:04
*** emeb has joined #yosys14:09
*** m4ssi has joined #yosys14:43
*** mirage335 has quit IRC14:45
*** X-Scale` has joined #yosys14:55
*** X-Scale has quit IRC14:57
*** X-Scale` is now known as X-Scale14:57
*** X-Scale` has joined #yosys14:59
*** X-Scale has quit IRC15:01
*** X-Scale` is now known as X-Scale15:01
*** mirage335 has joined #yosys15:13
*** m4ssi has quit IRC15:39
*** mirage335 has quit IRC16:05
whitequarkaz0re: boost's build system is technically documented, but not in any useful way, so if you want to get it to work, you'd better start reading its sources and guessing what all the different parts do16:12
whitequarkit's significantly worse than cmake in that aspect16:12
whitequarkit took me a day to get yosys compiled to wasm. it took me a week consisting of nothing but pain to get boost to do the same thing16:13
az0reI see, so the pain comes from building boost from source, not necessarily from the dependency itself16:20
az0reFor platforms without boost packages, though, I guess it's a distinction without a difference16:21
whitequarkaz0re: note that b2 is just a part of the problem16:22
whitequarkthere's also the other part of the problem, namely that boost is one of those libraries with infinite scope16:22
whitequarkyou can't just pull in a small part of boost. you take a large part of the entire thing and then it starts creeping all over your code16:23
whitequarkyou're no longer writing c++. you're writing boost::c++. i do not like boost::c++ and i do not want to maintain it.16:23
*** mirage335 has joined #yosys16:23
az0reMeh, that shouldn't be a problem with code review and requiring a justification for using boost stuff16:37
az0reI agree it should not be relied on heavily16:38
az0reBut boost has some great stuff and ideally it wouldn't be categorically rejected16:38
*** mirage335 has quit IRC16:40
whitequarkmwk: on #2195, do you want my review on the content or on the tex stuff?16:43
*** mirage335 has joined #yosys16:47
mwkwhitequark: both really16:48
whitequarkso I can't really do much wrt tex, I cargo culted stuff in my own changes to the manual16:49
whitequarkit's quite frustrating to work with16:50
az0remwk: WRT #2195 I think you cannot do line breaks inside `lstinline`16:51
mwkI did mention I hate tex already, right16:51
az0relol yes16:51
az0reThough to be pedantic, you probably hate LaTeX16:51
az0reTeX is fine16:51
whitequarkafter seeing how the verbatim environment is implemented i'm pretty sure tex is not fine16:52
mwkwhat I hate most is the fucking cult about tex, and it being the most perfect thing ever16:52
az0reI know very few people who believe LaTeX is the most perfect thing ever16:54
az0reActually I only ever met one person like that16:54
az0reI don't think it's so much a cult as a lack of realistic alternatives16:54
* mwk points to the entire faculty at her university16:54
az0reYou must be at a funny university!16:54
whitequarkseems similar to verilog, then16:54
qu1j0t3az0re: yeah mostly that16:54
whitequarkpeople converting stockholm syndrome into obsession with the tool16:54
whitequark"i have suffered for years to learn all the pitfalls, if you don't too, you're just bad at it"16:55
mwkas for alternatives, how about sphinx for software documentation?16:56
SarayanWhat's better?  What's even equivalent w.r.t collaborative work?16:56
az0reFrom what I understand after collaborating on multiple papers with a skilled LaTeX user is that cargo culting gets you 95% of the way but you really have to go and understand LaTeX from first principles, and that's not something I'm willing to do for that extra 5%16:56
SarayanAt least for reports and papers, that kind of stuff16:56
mwkI don't know, fucking libreoffice?16:57
az0reOh god please no16:57
whitequarkyou can't version control libreoffice files16:57
mwkyeah, just16:57
az0reIf only there was a markup language widely deployed, something flexible and powerful that everyone can render16:57
mwkannoyed at the contempt you get here if you submit PDFs from something that isn't tex16:58
SarayanI've done reports with fucking libreoffice, I almost killed some people16:58
az0re;)16:58
whitequarkah, yeah16:58
az0reWhy not HTML?16:58
Sarayanit can't manage tables worth shit16:58
daveshahI did my masters project in libreoffice16:58
daveshahIt definitely wound a lot of people up16:58
Sarayanwhat I loved with libreoffice is when I had a 89 pages document, did backspace on a page end and went to 81, did undo and went 8217:00
Sarayanit's the 82 I wanted, but, errr17:01
az0reYeah, layout needs to be specified by markup text in the source file, otherwise it's a nightmare trying to get a consistent look and layout, especially with collaborators17:02
az0reSo no libreoffice17:03
az0reI haven't seen sphinx before17:03
az0reMarkdown would be a good choice except it's too limited for this context17:03
daveshahYeah sphinx could well be a good option for Yosys17:03
az0reHTML I think is a good alternative17:03
az0reNot ideal, but arguably better than LaTeX17:04
az0reYeah Sphinx looks interesting, maybe better than raw HTML17:06
daveshahI haven't looked at it much, but I think you can extend it with Python which could be useful17:06
SarayanSphinx is quite good for docs17:06
whitequarkreST isn't *great* but it's fairly easy to work with17:17
whitequarkthe main problem i found is that it's not composable17:17
whitequarke.g. you cannot make a link italic17:17
whitequarkit's so much more accessible than TeX and the non-pdf outputs are so vastly better that I'll take it any day of year17:18
*** kraiskil has quit IRC17:18
*** citypw has quit IRC17:18
qu1j0t3yeah composeability can't be an afterthought (in prog langs either)17:19
* qu1j0t3 is just glad nobody said DocBook17:20
SarayanI'd love something with the style/content separation of latex, the text format, and the typesetting quality, but I suspect network effects are such that it will never happen17:21
qu1j0t3someone on twitter announced they were embarking on another LaTeX replacement about six weeks ago17:24
*** craigo has joined #yosys17:41
Sarayanqu1j0t3: I suspect the hard part is deciding what the documents markup should look like17:56
Sarayanso much bideshdding17:56
qu1j0t3heh17:57
qu1j0t3so many ways to reinvent badly17:57
*** kraiskil has joined #yosys18:02
*** craigo has quit IRC18:16
*** kraiskil has quit IRC18:57
thardindo I understand correctly that ram blocks in the iCE40 can be programmed with default values? with the caveat that one needs to wait 36 cycles for the values to "take"20:21
whitequark36 cycles?20:25
whitequarkwhere'd you get that number?20:25
*** az0re has quit IRC20:26
thardinfound somewhere when searching for the "Warning: Replacing memory \pp with list of registers." warning20:27
thardinhttps://github.com/YosysHQ/icestorm/issues/76#issuecomment-28927041120:28
tpbTitle: Block ram reads within ~36 cycles of device reset always return 0, but only on the first reset after device reconfiguration. · Issue #76 · YosysHQ/icestorm · GitHub (at github.com)20:28
whitequarkright so this delay isn't cycle-based20:29
whitequarkhttps://github.com/nmigen/nmigen/blob/master/nmigen/vendor/lattice_ice40.py#L350-L36620:29
tpbTitle: nmigen/lattice_ice40.py at master · nmigen/nmigen · GitHub (at github.com)20:29
thardinhmm.. I wonder how the reset circuitry actually works20:31
thardinI've done a couple of passes over the family datasheets so far20:31
thardinif it works the way I want then it seems very handy for say a sine LUT20:35
thardinblock RAM that is20:35
whitequarkyes, you can use initialized block RAMs on iCE40 if that's the question20:35
whitequarkjust like on most other FPGAs20:35
thardin"By preloading the RAM block during the chip configuration cycle and disabling the write controls, the sysMEM block can also be utilized as a ROM."20:36
thardinsweet20:36
thardincould be used to replace some logic blocks too, if it starts getting cramped20:37
thardin*reading TN1250*20:39
whitequarkyep20:39
thardinand the bram location in the gui corresponds nicely with what the datasheet says20:42
*** emeb_mac has joined #yosys20:51
*** Asuu has joined #yosys20:56
*** Asu has quit IRC20:56
thardinjust about the perfect size for a sine LUT for a 12-bit DAC20:58
*** Asuu has quit IRC21:26
*** alexhw has quit IRC21:59
*** alexhw has joined #yosys21:59
*** maartenBE has quit IRC22:07
mithrowhitequark / daveshah / az0re: About 2 years ago I tried to convince Yosys to convert to sphinx based documentation, even offering to pay for people to do the conversion but was told it was not something that was needed or wanted. I've been trying to improve sphinx for documenting HDL related projects with things like http://sphinxcontrib-verilog-diagrams.rtfd.io/ for a while now.22:10
tpbTitle: Sphinx Verilog Diagrams Sphinx Verilog Diagrams 0.0-86-g8c16b8f documentation (at sphinxcontrib-verilog-diagrams.rtfd.io)22:11
mithroThis was back when prjxray / vpr / prjtrellis and fasm started using Sphinx.22:12
*** maartenBE has joined #yosys22:41
whitequarkmithro: whoa neat i'm going to use verilog-diagram in nmigen i think22:47
whitequarkwell22:47
whitequarkcan we get nmigen-diagram? :p22:47
mithrowhitequark: I mean it is just yosys + netlistsvg22:48
whitequarksure, i mean22:48
whitequarkcan you consider renaming the project to something like sphinxcontrib-hdl-diagram and allowing other inputs?22:48
whitequarkrtlil or nmigen or vhdl or...22:48
mithrowhitequark: oh - sure22:48
mithroIf Yosys' opinion has changed on using sphinx for documentation, I might still be able to scrounge together some funding to pay people to do the boring part of transferring over existing documentation22:49
whitequarkI do not speak for the project, but I would personally be in favor of Sphinx22:50
whitequarkthe current latex docs are a massive PITA to contribute to, and more than once I just gave up22:50
whitequarkI can raise that on the next meeting22:50
mithrowhitequark: The OpenROAD project, Verilog to Routing and the SkyWater PDK I'm working on also use Sphinx -- so it would enable inter-linking docs22:51
mithroI've been meaning to resurrect the sphinx documentation for LiteX stuff I did a long time ago22:52
whitequarkyes, there are multiple good things in sphinx22:52
mithroIt's by no mean perfect -- but perfect is the enemy of getting things done :-)22:52
whitequarkit's okay. reST is not all that good, but neither is TeX22:53
mwkseconded about sphinx for yosys23:15
*** emeb has quit IRC23:25

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!