<promach>
have anyone experienced "loop warnings" yosys LTP command ?
rohitksingh_work has joined #yosys
awordnot has quit [Read error: Connection reset by peer]
awordnot has joined #yosys
adjtm_ has joined #yosys
adjtm has quit [Remote host closed the connection]
MoeIcenowy has quit [Quit: ZNC 1.6.5+deb1+deb9u1 - http://znc.in]
MoeIcenowy has joined #yosys
proteusguy has quit [Ping timeout: 272 seconds]
MoeIcenowy has quit [Client Quit]
MoeIcenowy has joined #yosys
mirage335 has quit [Ping timeout: 264 seconds]
dys has quit [Ping timeout: 272 seconds]
citypw has quit [Read error: Connection reset by peer]
mirage335 has joined #yosys
proteusguy has joined #yosys
emeb_mac has quit [Ping timeout: 245 seconds]
jakobwenzel has quit [Read error: Connection reset by peer]
jakobwenzel1 has joined #yosys
jakobwenzel1 is now known as jakobwenzel
MoeIcenowy has quit [Quit: ZNC 1.6.5+deb1+deb9u1 - http://znc.in]
MoeIcenowy has joined #yosys
rohitksingh_work has quit [Read error: Connection reset by peer]
m4ssi has joined #yosys
citypw has joined #yosys
vidbina has joined #yosys
s_frit has quit [Remote host closed the connection]
s_frit has joined #yosys
vidbina has quit [Ping timeout: 268 seconds]
vidbina has joined #yosys
vidbina has quit [Ping timeout: 246 seconds]
promach has quit [Quit: WeeChat 2.3-dev]
AlexDaniel has quit [Ping timeout: 245 seconds]
citypw has quit [Ping timeout: 246 seconds]
rrika has quit [Ping timeout: 246 seconds]
rrika has joined #yosys
<trmm>
thanks, dave. the orpsoc example is very relevant since I'm trying to get the SDRAM on the ulx3s to work and that's exactly what the BIDIR pins are doing.
<trmm>
I'm a little uncertain about the clocking on the SDRAM -- it looks your orpsoc is using the system clock for the SDRAM, although my reading of the data sheet suggests that the SDRAM should be clocked with a 180-degree out of phase clock
MoeIcenowy has quit [Quit: ZNC 1.6.5+deb1+deb9u1 - http://znc.in]
<trmm>
since the fpga is all positive edge clocked and the sdram is also positive edge clocked, it seems that this would cause the transitions to happen when the sdram expects the inputs to be stable.
MoeIcenowy has joined #yosys
AlexDaniel has joined #yosys
alexhw has quit [Ping timeout: 244 seconds]
vonnieda has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
rohitksingh has joined #yosys
vonnieda has joined #yosys
emeb has joined #yosys
cr1901_modern has quit [Ping timeout: 258 seconds]
proteusguy has quit [Ping timeout: 245 seconds]
citypw has joined #yosys
gsi__ is now known as gsi_
m4ssi has quit [Remote host closed the connection]
cr1901_modern has joined #yosys
tlwoerner has quit [Quit: Leaving]
proteusguy has joined #yosys
dys has joined #yosys
vonnieda has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
fsasm_ has joined #yosys
rohitksingh has quit [Ping timeout: 245 seconds]
AlexDaniel has quit [Read error: Connection reset by peer]
AlexDaniel has joined #yosys
rohitksingh has joined #yosys
flammit has joined #yosys
dys has quit [Ping timeout: 244 seconds]
tlwoerner has joined #yosys
fsasm_ has quit [Ping timeout: 245 seconds]
citypw has quit [Ping timeout: 268 seconds]
rohitksingh has quit [Ping timeout: 245 seconds]
dys has joined #yosys
vonnieda has joined #yosys
vonnieda has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
vonnieda has joined #yosys
<ovf>
macro evaluation order seems to differ between yosys and icarus: http://vpaste.net/wQ2rg?raw . i don't have an opinion yet on which is correct or even why would anyone write code like this.
<ZirconiumX>
daveshah: Don't know if you're awake, but I found a Verilog module where I've got leaking $_DFF_PP[01]_ cells
<daveshah>
ZirconiumX: they would be flipflops with an async set or reset
<ZirconiumX>
So I need to find/define a cell that has those?
<daveshah>
Yes, once you do that dfflibmap should map them
<daveshah>
If you don't care about strict correctness, async2sync will turn them into soft logic and a normal DFF
<daveshah>
This will break any design relying on actual asynchronous behaviour though
<ZirconiumX>
I'm not entirely sure about how correct my existing designs are, though
<ZirconiumX>
Well
<ZirconiumX>
"design"
<ZirconiumX>
With `async2sync`, Yosys can turn a 6502 core into ~400 chips
<daveshah>
Incidentally, I think the default for abc is to optimise for delay rather than area
<ZirconiumX>
I did consider including delay information
<daveshah>
Passing -D 100000 to abc should cause it to optimise almost entirely for area instead
<daveshah>
or some other arbitrary big number
<ZirconiumX>
The AC family is a bit limited
<ZirconiumX>
Fast, but limited
<ZirconiumX>
daveshah: synthesis results appear to be identical for using -D 100000 versus not
<ZirconiumX>
Probably because I didn't add any delay information
<daveshah>
Yes, it might be optimising for area in any case then
<ZirconiumX>
I should probably add delay information, though, right?
<daveshah>
Yes, I'm not very familiar with the liberty format though
<daveshah>
I think you can even model things like drive strength and capacitance to get an idea of delay vs fanout
<daveshah>
Intended for ASIC cells but should have some relevance to discrete chips too...
<ZirconiumX>
One thing the 74151 has is an inverting output
<ZirconiumX>
I haven't looked into it much, but is there a way of telling Yosys "can you try doing an inverted mux too to see if that logic is easier?"
<daveshah>
No, not easily
<bwidawsk>
Has anyone done any work on documenting the quality differences on the generated bitstreams of diamond vs. yosys/nextpnr/trellis?
<ZirconiumX>
Failing that, can you pattern-match a mux followed by a not gate?
<daveshah>
ZirconiumX: there is the pmgen framework for building pattern matchers in Yosys
<daveshah>
But it's not that easy to use
<daveshah>
bwidawsk: I haven't done much experimentation, but usually yosys/nextpnr is about 30% behind
<bwidawsk>
in what, number of LEs used?
<daveshah>
Both number of LEs and Fmax
<bwidawsk>
daveshah› I'd really like to know how I can take those measurements myself, any help advice would be very much appreciated
<bwidawsk>
I'm happy to post what I find publicly
<daveshah>
Have a look at the log output for both, in particular the number of LUTs (after synthesis) of SLICEs (during pnr)
jakobwenzel has quit [Ping timeout: 244 seconds]
<daveshah>
Timing is a bit harder particularly with Diamond you will need to search around a bit for the clock constraint that gives the best Fmax
<bwidawsk>
daveshah› is it scritable?
<bwidawsk>
scriptable
<daveshah>
nextpnr is, Diamond is a bit harder
<bwidawsk>
if you know off the top of your head what to grep, would you be so kind to share? If not, I can figure out
<bwidawsk>
as a software person... I'm very ignorant, what's in between blicky, and like a risc-v core in terms of complexity?
<bwidawsk>
s/blicky/blinky
<daveshah>
Some of the smaller processor cores are quite interesting
<daveshah>
Like j1a, a forth processor
* bwidawsk
nods
<bwidawsk>
daveshah› do you happen to know if there is any hope of acheiving the same data with vivado, or quartus? I've looked at quartus and couldn't really get much out of it
<bwidawsk>
well, and I suppose much of the pipeline isn't done with open tools, as well
<daveshah>
Yes, definitely. But check the EULA because some tools don't allow public benchmarking (I think Diamond is fine)
<daveshah>
Both Vivado and Quartus have Tcl APIs that can be scripted
<daveshah>
There should be some examples out there of command line flows for both
<bwidawsk>
I just couldn't get quartus to dump much that seemed interesting, but I can't say I tried too hard
<ZirconiumX>
bwidawsk: I've been using a 6502 core which seems to be about halfway between the two
<ZirconiumX>
For even picorv32
<daveshah>
At least in Vivado there are loads of report_ Tcl commands for this kind of thing
<daveshah>
e.g. report_utilization
<bwidawsk>
I'll take another look after I generate something with diamond, which seems more tractable given that you've actually done it :-)