sb0 changed the topic of #m-labs to: ARTIQ, Migen, MiSoC, Mixxeo & other M-Labs projects :: fka #milkymist :: Logs http://irclog.whitequark.org/m-labs
cr1901 has joined #m-labs
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
fengling has joined #m-labs
<cr1901>
sb0: Ping when you get the chance. I think there's a bug with the migen Simulator (emphasis on THINK). Could you run the testbench for artiq's spi core and open it in gtkwave?
<cr1901>
I think wishbone reads aren't working properly; according to GTKWave, the wishbone read data bus becomes valid immediately after the address lines are loaded with a new address. According to artiq's spi.py, the wishbone read data bus is registered. Therefore this shouldn't be possible. The data should become valid the next cycle.
<cr1901>
sb0: Ignore; rjo updated the wishbone read behavior in artiq, and I was looking at a VCD of an old commit. My mistake.
sb0 has joined #m-labs
<sb0>
whitequark, not even the FSM generation part?
<whitequark>
sb0: why bother with that?
sb0 has quit [Ping timeout: 240 seconds]
<whitequark>
sb0: so I'm porting the OR1K LLVM backend to 3.9, since Rust recently bumped the requirement to that
<whitequark>
I just talked to Chandler and apparently there is a strong interest in LLVM project to see OR1K upstream
<whitequark>
y/n on scheduling time to do that after Rust lands? this should cut down considerably on maintenance
<stekern>
16/6
<stekern>
oops, wrong window
rohitksingh_work has joined #m-labs
sb0 has joined #m-labs
<sb0>
whitequark, what does post-llvm-3.9 rust bring to the table for our purposes?
<sb0>
and how does upstreaming or1k llvm lower our maintainance work? I would think it does exactly the opposite:
<sb0>
with a fork, we can keep the old version that works as long as there is no new feature we need, whereas if it's upstreamed we always need to keep it up to dat
<sb0>
is there a clear indication that someone else is going to take care of the or1k port, and do quality work that won't mess things up?
<sb0>
my first assumption about open CPUs is it is a wasteland of broken code where very few people can really help, and publicizing/upstreaming isn't always the best way forward. look at riscv: highly fashionable, but no usable fpga implementation and didn't you say its llvm backend was messed up?
<cr1901>
sb0: Re: FPGA impl, I'm under the impression that RISC-V community is thumbing their noses at FPGAs and only wants ASICs.
<sb0>
I'm also skeptical of their ASIC plans
<cr1901>
How so? I'm not in a position to make a judgment other than ASICs are still a bit outside hobbyist/enthusiast realm.
<sb0>
also, what I said doesn't apply to open CPU environments only, see x86, ACPI, etc.
<whitequark>
sb0: re post-llvm-3.9 rust: bugfixes that just happen to pull in 3.9 requirement
<whitequark>
re upstreaming or1k: the vast majority of changes to the LLVM backends is pure churn
<whitequark>
I don't expect anyone to mess or1k up simply because no one is going to modify it in interesting ways
<whitequark>
upstreaming it is letting the person who desires the churn to do it in the or1k backend.
<whitequark>
also, I know nothing about the risc-v LLVM backend. I can say it will be good once it's upstreamed since the LLVM project has rather strict requirements on that
<whitequark>
the backend that was awful was the LM32 one
<whitequark>
sb0: I just discovered the OR1K backend already has FPU instructions
<whitequark>
not sure how I haven't noticed them before
mumptai has joined #m-labs
FabM has joined #m-labs
rohitksingh_work has quit [Quit: Leaving.]
rohitksingh_work has joined #m-labs
mumptai has quit [Remote host closed the connection]
key2 has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
cr1901 has quit [Ping timeout: 240 seconds]
cr1901 has joined #m-labs
rohitksingh_work has quit [Read error: Connection reset by peer]
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
sb0 has quit [Quit: Leaving]
cr1901_modern has joined #m-labs
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
FabM has quit [Quit: ChatZilla 0.9.92 [Firefox 47.0/20160604131506]]
<sb0>
is there not a risk of shorting the ion pump with the deposited titanium film?
<sb0>
also, if I want to oxidize steel to make it less permeable to H2, do I need any special precaution or just stick the vacuum components into the oven for a while?
<rjo>
sb0: the tsp start with a pretty long connector section after the feedthrough and then there are the Ti wires.
<rjo>
sb0: i the Ti wires are far enough to the right of the pump that there is no path to any insulator inside the pump.
<rjo>
sb0: yes that steel oxidization is done in air. just make sure that you are not burning/heating something else in the oven at the same time (silicone or any oil etc)
<rjo>
if it smells, it's bad.
<rjo>
the oxidization is a contentious issue. many (me included) think that it is not really helpful.
<sb0>
I have the impression that many vacuum-related topics are contentious issues...
<rjo>
yes.
<sb0>
ok, I'll have a close look at my ion pump to check if there's a risk of spraying insulators. the high voltage feedthrough is on the inlet, which can make it more problematic than on that pump at NIST
<rjo>
that guy is really cool. in the second slide deck p35 he talks about air bake.
<rjo>
it also depends on exactly where your Ti wire starts in the TSP. but the good thing is that it only goes ballistic. if you can't see insulators from where the wire is, you are ok.
<key2>
sb0: what is NextValue() used for in an FSM
<key2>
i don't get whats teh diff between foo.eq(1) and NextValue(foo, 1)
<sb0>
foo.eq(1) is equivalent to comb += If(fsm_in_that_state, foo.eq(1)) (modulo any conditions you add on foo.eq(1))
<sb0>
NextValue is equivalent to the same thing with sync +=
<key2>
thx
<larsc>
does simulation support generating vcd files?
<sb0>
yes
<larsc>
thanks, just found it in the examples
<key2>
when simulating a CSRStorage, I have to yield yield mystorage.re.eq(1) ?
<key2>
there is something to write in CSR from simulation
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
<sb0>
there's something to make transactions on the CSR bus, for something that drives the CSRs directly, pull requests accepted
kuldeep has joined #m-labs
<key2>
what you mean pull request acceptes ? the .ack ?
<sb0>
means you should write that code yourself and it is something that can be merged upstream
<key2>
my python skills are not good enough to do quality code that would go into upstream yet :)
<key2>
right now I am training on migen/misoc to be able to do somethig fancy.. So far I am doing a sdcard core
sb0 has quit [Quit: Leaving]
<larsc>
how do they say, aim for the moon, even if you miss you'll end up in the endless, dark and empty vacuum of space
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
key2 has quit [Ping timeout: 264 seconds]
FabM has quit [Quit: ChatZilla 0.9.92 [Firefox 47.0/20160604131506]]
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
kuldeep_ has joined #m-labs
sandeepkr_ has joined #m-labs
sandeepkr has quit [Ping timeout: 244 seconds]
sandeepkr_ has quit [Max SendQ exceeded]
kuldeep has quit [Ping timeout: 276 seconds]
sandeepkr_ has joined #m-labs
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
fengling has joined #m-labs
fengling has quit [Ping timeout: 240 seconds]
sandeepkr_ has quit [Read error: Connection reset by peer]
kuldeep_ has quit [Read error: Connection reset by peer]