<Sprite_tm>
daveshah: (or anyone else): I have an issue that I tweaked something in my design and now my routing times have shot up to 20 minutes. Verbose output shows it's using lots of effort to route JRSTx_MULT18 to ground... anything I can change in my design to improve that?
<swedishhat[m]>
Hi everyone. I have (what I hope to be) a simple FPGA/CPLD project that I wanted to use as a way to learn Migen. Does it make sense to go through those tutorials or should I look instead at nMigen? Is nMigen meant to replace Migen at some point?
<GenTooMan>
short words nmigen is the successor to migen see https://github.com/m-labs/nmigen it however is in development. Their is far more documentation for migen as a consequence.
<GenTooMan>
So you might be better off learning with migen first then switch to nmigen when it is further along in development depending on how you learn.
<swedishhat[m]>
Okay, that sounds like a good idea. Thanks
Maylay has quit [Ping timeout: 268 seconds]
Maylay has joined ##openfpga
m_w has quit [Quit: Leaving]
Maylay has quit [Ping timeout: 240 seconds]
Maylay has joined ##openfpga
Maylay has quit [Quit: No Ping reply in 300 seconds.]
Maylay has joined ##openfpga
Maylay has quit [Ping timeout: 265 seconds]
Maylay has joined ##openfpga
lolsborn has joined ##openfpga
Maylay has quit [Quit: No Ping reply in 300 seconds.]
genii has quit [Quit: Welcome home, Mitch]
Maylay has joined ##openfpga
<zignig>
does anyone have a working nmigen example of running PLL into a platform ? lambdaconcept has upadated their usb stack and I'm having trouble getting a 48Mhz clock.
Jybz has joined ##openfpga
Jybz has quit [Quit: Konversation terminated!]
OmniMancer has joined ##openfpga
tpw_rules has quit [Read error: Connection reset by peer]
tpw_rules has joined ##openfpga
Bob_Dole has quit [Read error: Connection reset by peer]
Bob_Dole has joined ##openfpga
tlwoerner has quit [Excess Flood]
tlwoerner has joined ##openfpga
<daveshah>
Sprite_tm: coincidentally someone pointed me to your repo and I was looking at that last night
<daveshah>
I know what the problem is and I have a few solutions to deal with it (it's to do with some conflicts between adjacent DSPs and how the router handles them)
<daveshah>
The easy solution is just leave those RST ports disconnected, as the DSPs aren't clocked anyway
<daveshah>
I'll try and do a proper fix later
emeb_mac has quit [Quit: Leaving.]
davidthings has joined ##openfpga
<Sprite_tm>
daveshah: That seems reasonable, thanks.
Asu has joined ##openfpga
<ZirconiumX>
swedishhat[m]: I think you should learn just nMigen; while it's true oMigen has more documentation at present, nMigen feels a lot more cohesive.
<ZirconiumX>
zignig: maybe just make an Instance of a PLL primitive?
davidthings has quit [Read error: Connection reset by peer]
<zignig>
ZirconiumX: as it turns out I got it compiling about 5 minutes ago
<zignig>
I stole^W libertated some code from kbob for a PLL object and modified for updated nmigen and my needs.
<ZirconiumX>
That works :P
<zignig>
the timing says max freq of 38Mhz , when I need 48, I'l try loading it tonight , see if works.
OmniMancer has quit [Quit: Leaving.]
<zignig>
if it does nmigen has a gateware usb stack... w00h00
<daveshah>
tnt: the problem is that trellis is missing data for IO registers in the bottom IO banks (I didn't realise they had them at all). I'll look into a fix
<tnt>
daveshah: but I built that exact project a few days ago just fie.
<daveshah>
nextpnr didn't pack IO registers until a couple of weeks ao
<daveshah>
*ago
<daveshah>
Yosys just turned those primitives into normal ones
<tnt>
Oh, it packs them without me asking it ? Any way to disable that ?
qu1j0t3 has left ##openfpga ["WeeChat 0.4.3"]
<daveshah>
No, it shouldn't
<daveshah>
But previously if you used an IO register primitive it turned it into a normal register
<tnt>
Oh :/
<tnt>
ok, yeah, I definitely use those ...
<tnt>
That might actually explain some weird behavior I was seeing ... I was trying to push a parallel bus higher in freq and couldn't get it to work reliably, with run-to-run variation that shouldn't have been there.
ironsteel has joined ##openfpga
emeb has joined ##openfpga
Asu has joined ##openfpga
<daveshah>
tnt: try pulling latest trellis
<daveshah>
it packs for me at least
<daveshah>
(haven't actually tested that bottom bank IO registers work on hw...)
<tnt>
daveshah: do I need to rebuild nextpnr too ?
<daveshah>
tnt: nope
<tnt>
Mm, I get what(): no enum named 'IOLOGICB.CEMUX'
<daveshah>
Did you `make install`?
<tnt>
Well yeah, the error changed from std::out_of_range before to that now.
<tnt>
it's std::runtime_error now with what(): no enum named 'IOLOGICB.CEMUX'
<daveshah>
weird, packs fine here
<daveshah>
perhaps a git issue, did the database submodule update itself
<tnt>
mm, let me make clean to make sure
<tnt>
Oh ... no, it hadn't
genii has joined ##openfpga
<daveshah>
git is very weird
<daveshah>
I'm pretty sure a git pull should update submodules, but sometimes it doesn't
<daveshah>
idek why
<tnt>
I did a git merge origin/master not git pull, so that's probably why
<tnt>
I forgot the db was a submodule, my bad
<daveshah>
ah
<tnt>
xobs: would you mind making sure that last fix is also in your build ? :p
<xobs>
It takes a long time to rebuild everything, so I'll let you know the status tomorrow.
<tnt>
xobs: sure, tx.
<tnt>
daveshah: looks to work fine in hw at first glance.
<daveshah>
Great
<tnt>
tx for the quick fix :)
<_whitenotifier>
[libfx2] mithro commented on issue #2: cdc-acm example: port disabled by hub - https://git.io/JeETE
<_whitenotifier>
[libfx2] whitequark commented on issue #2: cdc-acm example: port disabled by hub - https://git.io/JeETg
<kc8apf>
daveshah: depends on the setting of `--recurse-submodules`
<kc8apf>
idk what the default is.
Jybz has joined ##openfpga
OmniMancer has quit [Quit: Leaving.]
kernlbob has quit [Read error: Connection reset by peer]
kernlbob has joined ##openfpga
kernlbob has quit [Ping timeout: 240 seconds]
<_whitenotifier>
[libfx2] jedrzejboczar commented on issue #2: cdc-acm example: port disabled by hub - https://git.io/JeEkx
kernlbob has joined ##openfpga
kernlbob has quit [Ping timeout: 240 seconds]
kernlbob has joined ##openfpga
kernlbob has quit [Read error: Connection reset by peer]
kernlbob has joined ##openfpga
kuldeep has joined ##openfpga
fsasm has joined ##openfpga
rombik_su has joined ##openfpga
emeb_mac has joined ##openfpga
Jybz has quit [Quit: Konversation terminated!]
Asu` has joined ##openfpga
Asu has quit [Ping timeout: 268 seconds]
pie_ has quit [Ping timeout: 250 seconds]
<swedishhat[m]>
I've been reading through the Migen docs and I found something in the Tri-state I/O section that confuses me a bit: "A triplet (O, OE, I) of one-way signals defining a tri-state I/O port is represented by the TSTriple object. Such objects are only containers for signals that are intended to be later connected to a tri-state I/O buffer, and cannot be used as module specials."
<swedishhat[m]>
What is meant by a module special?
<swedishhat[m]>
Does this mean that it doesn't automatically map to a tri-state buffer upon V*HDL generation and instead requires some manual intervention once the design has been simulated?
rombik_su has quit [Quit: Leaving]
genii has quit [Quit: Welcome home, Mitch]
<whitequark>
yes
<whitequark>
you need to do triple.get_tristate()
Asu` has quit [Remote host closed the connection]
fsasm has quit [Ping timeout: 268 seconds]
emeb has quit [Quit: Leaving.]
carl0s has quit [Remote host closed the connection]