ChanServ changed the topic of #nmigen to: nMigen hardware description language · code at https://github.com/nmigen · logs at https://freenode.irclog.whitequark.org/nmigen · IRC meetings each Monday at 1800 UTC · next meeting TBD
<_whitenotifier> [nmigen] whitequark commented on issue #588: Left shift + simulator = infinite (?) loop - https://git.io/JtE6N
lkcl has quit [Ping timeout: 264 seconds]
<_whitenotifier> [YoWASP/nextpnr] whitequark pushed 1 commit to develop [+0/-0/±1] https://git.io/JtEi4
<_whitenotifier> [YoWASP/nextpnr] whitequark 391c007 - Update dependencies.
<_whitenotifier> [nmigen] anuejn commented on issue #317: Stream Abstraction for nmigen.lib - https://git.io/JtEiE
<_whitenotifier> [nmigen] anuejn edited a comment on issue #317: Stream Abstraction for nmigen.lib - https://git.io/JtEiE
lkcl has joined #nmigen
<_whitenotifier> [nmigen] whitequark commented on pull request #563: Unify Xilinx platforms into a single class, support more devices - https://git.io/JtEPP
Bertl_oO is now known as Bertl_zZ
<_whitenotifier> [nmigen] whitequark commented on pull request #575: Lattice: Add support for MachXO2/XO3L internal oscillator - https://git.io/JtEXe
lf has quit [Ping timeout: 258 seconds]
lf has joined #nmigen
lkcl has quit [Ping timeout: 240 seconds]
lkcl has joined #nmigen
futarisIRCcloud has joined #nmigen
lkcl has quit [Ping timeout: 240 seconds]
electronic_eel has quit [Ping timeout: 240 seconds]
electronic_eel has joined #nmigen
lkcl has joined #nmigen
electronic_eel_ has joined #nmigen
electronic_eel has quit [Ping timeout: 272 seconds]
revolve has quit [Read error: Connection reset by peer]
revolve has joined #nmigen
Degi_ has joined #nmigen
Degi has quit [Ping timeout: 264 seconds]
Degi_ is now known as Degi
electronic_eel_ has quit [Ping timeout: 265 seconds]
electronic_eel has joined #nmigen
PyroPeter_ has joined #nmigen
PyroPeter has quit [Ping timeout: 264 seconds]
PyroPeter_ is now known as PyroPeter
chipmuenk has joined #nmigen
lkcl has quit [Ping timeout: 240 seconds]
lkcl has joined #nmigen
jjeanthom has joined #nmigen
lkcl has quit [Ping timeout: 240 seconds]
lkcl has joined #nmigen
emeb_mac has quit [Quit: Leaving.]
jjeanthom has quit [Ping timeout: 240 seconds]
revolve has quit [Read error: Connection reset by peer]
jjeanthom has joined #nmigen
revolve has joined #nmigen
<_whitenotifier> [nmigen] anuejn edited a comment on issue #317: Stream Abstraction for nmigen.lib - https://git.io/JtEiE
Bertl_zZ is now known as Bertl
jjeanthom has quit [Ping timeout: 246 seconds]
<Chips4Makers> @lkcl @vup Seems we won't need Verilog file anymore for defining blackboxes; nice.
<Chips4Makers> (Chips4Makers == Staf Verhaegen for those who don't know)
electronic_eel has quit [Ping timeout: 264 seconds]
electronic_eel has joined #nmigen
<lkcl> agg, vup : yes, nmigen Module rather than nmigen-Instance or verilog-Instance.
* lkcl waves to Chips4Makers
bvernoux has joined #nmigen
<Chips4Makers> @lkcl wink
jjeanthom has joined #nmigen
jjeanthom has quit [Ping timeout: 240 seconds]
pftbest has joined #nmigen
revolve has quit [Read error: Connection reset by peer]
revolve has joined #nmigen
jjeanthom has joined #nmigen
<anuejn> does anyone know a good intro to FPGAs in general
<anuejn> preferably not specific to a HDL or with nMigen as the HDL of example
<anuejn> I am looking for something that basically explains the things that one needs to know before reading the nMigen documentation
<anuejn> (my usecase is basically that I want to reference it in the beginning of a projects documentation so that after reading that intro and the nmigen docs a person knowing python can somehow understand whats going on)
<awygle> sadly, not really. if you come across something i'd be interested in hearing about it
<anuejn> is that something that is generally in scope for the nMigen documentation or not really?
<d1b2> <TiltMeSenpai> are you asking about the physical functionality of an FPGA or its programming model
<anuejn> its programming model
<d1b2> <TiltMeSenpai> although I guess it's a chicken and egg problem there, it's hard to talk about a programming model without a programming language
<d1b2> <TiltMeSenpai> and the physical functionality of an fpga is just confusing until you have a solid grasp on the programming model imo
<whitequark> it's also somewhat confusing after
<d1b2> <TiltMeSenpai> it's just confusing in general
<whitequark> indeed
<d1b2> <TiltMeSenpai> fpga's (and most modern electronics) are all magic, who knows how or if they work
<d1b2> <TiltMeSenpai> I think nmigen and/or visual HDL's may be a better place to begin thinking about the programming models of fpga's though, since they're all data structures that natively express (to some degree) parallelism and layout
<whitequark> i've reverse-engineered an ancient CPLD (ATF15xx) and it's... i don't even know
<whitequark> i feel like it was made using a biosimilar design process, if you know what i mean
<sorear> the exciting question for me is "what is the Kolmogorov complexity of the routing database
<anuejn> ah now I see the TODO at the top of the intro.rst document, so it seems to be in scope :)
<anuejn> nice :)
<anuejn> is that something where helping out would be good or better to wait?
<whitequark> i already struggle to keep up with PRs at the moment, so...
<anuejn> ok, I understand
jjeanthom has quit [Remote host closed the connection]
jjeanthom has joined #nmigen
<Sarayan> sorear: It's regular except where it isn't, if you get my drift
<Sarayan> anuejn: 99% of a fpga is an alternance of lookup-table-based n:1 combinatorials followed by a flip-flop
<Sarayan> and you really really really don't want any loops in the combinatorials, you want something beautifully structured separated by ffs
<Sarayan> and then you can add logic blocks that give you specialized functions replacing the combinatorials, things like memories, or multipliers
<Sarayan> even these really, really like having clocks and ffs everywhere
<Sarayan> nmigen is nice because it is very much oriented as "on that clock, here is the combinatorial result I want you to store", e.g. it follows the fpga structure very naturally
<Sarayan> but if your metal model is "instantaneous computation, store on a clock (possibly with a store enable)", you won't go very wrong
<Sarayan> mental
<Sarayan> the timing analysis will tell you how not instanteneous it really is later :-)
<d1b2> <dub_dub_11> haha it's true, the luts are the easy part and everyone always brushes the routing under the rug
<d1b2> <TiltMeSenpai> the routing is a problem for someone that actually understands algorithms (aka not me) 😛
<Sarayan> Plus the routing is not something you act on
jjeanthom has quit [Ping timeout: 246 seconds]
jjeanthom has joined #nmigen
emeb_mac has joined #nmigen
Bertl is now known as Bertl_oO
bvernoux has quit [Quit: Leaving]
XgF has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
XgF has joined #nmigen
pftbest has quit [Remote host closed the connection]
pftbest has joined #nmigen
revolve has quit [Read error: Connection reset by peer]
jjeanthom has quit [Ping timeout: 240 seconds]
revolve has joined #nmigen
chipmuenk has quit [Quit: chipmuenk]
<_whitenotifier> [nmigen-boards] shenki commented on pull request #137: Add iCE40-feather - https://git.io/JtuNX
revolve has quit [Read error: Connection reset by peer]
revolve has joined #nmigen
revolve has quit [Read error: Connection reset by peer]