mumptai has quit [Quit: Verlassend]
<awygle> gotta love a net named "low data rate high speed output"
<pie__> xD
<pie__> its got redundancy!
<pie__> (id guess)
<pie__> or...low latency?
<awygle> na it's just that the net was "ldr_dout" and somebody copy-pasted and changed it to "ldr_dout_HS" without thinking about what "ldr" might stand for
<awygle> ("somebody" might even be me)
soylentyellow has joined ##openfpga
wpwrak has quit [Read error: Connection reset by peer]
wpwrak has joined ##openfpga
<awygle> okay, awesome, i figured out the problem. unfortunately it is probably not solveable.
<azonenberg> lol
<azonenberg> gotta love those
m_t has quit [Quit: Leaving]
<awygle> or more like "trivially solveable but i can't update the gateware at the customer site so let's see if i can work around it in software, what fun"
unixb0y has quit [Ping timeout: 268 seconds]
unixb0y has joined ##openfpga
thallia has quit [Ping timeout: 252 seconds]
thallia has joined ##openfpga
rohitksingh_work has joined ##openfpga
cr1901_modern has quit [Ping timeout: 268 seconds]
cr1901_modern has joined ##openfpga
<awygle> cr1901_modern: this looks like your kind of thing http://laughtonelectronics.com/Arcana/KimKlone/Kimklone_short_summary.html
<cr1901_modern> awygle: Ty for the link. I've seen it before and find it very fascinating, but not a machine I'd personally use (e.g. programs written for that particular machine's extensions will never run on anything else)
<awygle> cr1901_modern: fair 'nough :-)
Bike has quit [Quit: Lost terminal]
m_w has joined ##openfpga
<cr1901_modern> awygle: Someone in #snes IRC channel just forwarded me the same link LOL. Did it go viral or something?
<awygle> cr1901_modern: Orange Website
<cr1901_modern> Ahhh, no wonder why I didn't see
<awygle> a wise choice lol
<cr1901_modern> IRC, Twitter, and forums are enough for me. I don't need to lose 10% of my lifespan to the Orange Hivemind
<awygle> i'm glad you've found a setup that works for you!
<Xark> cr1901_modern: I just pasted it in another channel, it is currently on Hacker News -> https://news.ycombinator.com/
<awygle> personally i find twitter much more mentally difficult than HN most days. still trying to dial it in
<cr1901_modern> awygle: That's fair. Twitter is the final stop on the social media express where all hopes and dreams go to die.
<cr1901_modern> Might explain my affinity for it...
<rqou> cr1901_modern: on a different topic, why a ym2151?
<rqou> why not an OPL2/OPL3?
<cr1901_modern> B/c everybody on the planet's already doing YM2612. I like the extra FM channels of the YM2151 (c.f. Any of Utabi's MDX/x68k work for really good use of the chip. Even FM drums), and
<cr1901_modern> I don't find OPL as aesthetically pleasing
<rqou> and why not an OPN?
<cr1901_modern> B/c OPM was simply the chip I was most interested in at the time when Lord_Nightmare tricked me into vectorizing it.
<cr1901_modern> s/tricked/persuaded/
<rqou> <drama>make yet another SID emulator?</drama>
<cr1901_modern> Look, I have 2 SIDs sitting 5 feet away from me. I've never successfully hooked them up and got them to make sound/analyze waveforms, and dealing w/ the analog stuff isn't all that appealing to me.
<rqou> lol
<cr1901_modern> Doesn't help they require a 12v rail
<rqou> are they attached to a c64? :P
<awygle> as someone who usually pays almost no attention to retrocomputing or the details of old gaming consoles, i've had reason in the last week to 1) read 6502 assembly and 2) learn about the "1chip snes"
<cr1901_modern> No I got them as a gift in 2010
<rqou> do the filters work? :P
<cr1901_modern> (2:19:50 AM) cr1901_modern: I've never successfully hooked them up and got them to make sound/analyze waveforms
<rqou> oh
<rqou> i have three SIDs with working filters
<awygle> jeez it's late, even at -3 hours from that timestamp. i should go to bed.
<cr1901_modern> They sit in a drawer until I can be arsed to play with them
<cr1901_modern> which is a shame, but... :(
<rqou> unfortunately i still don't have a good way to play with them (they're attached to working c64s)
<rqou> transferring data to/from a c64 is a pain in the ***
<cr1901_modern> awygle: Where did 1chip snes come up?
<cr1901_modern> rqou: Indeed, that's why my VIC20 sits on a shelf in the box
<rqou> well, one of them is attached to a c128
<rqou> these are also all disassembled waiting for me to put in a KERNAL swap
<rqou> that i've been too lazy to do
<awygle> cr1901_modern: something to do with speedrunning, iirc. i think somebody was asking about that vs. the new FPGA thing
<awygle> super nt
<cr1901_modern> kevtris is a cool guy. He spent some time in #snes after the Super NT was announced fielding technical q's/discoveries for emulation.
<awygle> which by the way, i was pretty into until i learned about the wireless controllers
<rqou> wait O_o kevtris is behind that fpga thing?
<cr1901_modern> Yea... he did both the analogue nt and super nt
<rqou> wait there are multiple FPGA things?
<cr1901_modern> why are you so surprised :P?
<rqou> both SNES or?
<awygle> wait has the nt mini been around a while?
<Xark> He has done countless arcade and console cores (for a bunch of obscure ones too).
<awygle> or is that like "the next thing"?
<cr1901_modern> analogue nt is a multi system emulator IIRC
<rqou> is it based on the decap work?
<cr1901_modern> but it started as a NES core
<awygle> 1) no 2) damn why is it 500$?
<cr1901_modern> No, if memory serves kevtris has been incrementally working on his FPGA NES core since 2005
<awygle> oh huh, this company is local
<awygle> (to me)
<cr1901_modern> awygle: 1chip snes is made fun of a lot by emu devs. It's more like a knockoff clone than an official console.
kc8apf_ has joined ##openfpga
<cr1901_modern> Idk if it's as bad as Genesis 3 tho
<rqou> wait why?
<rqou> also why is there no full vector of the SNES chip images yet?
<Lord_Nightmare> sid is fairly well understood, though a lot of research into the filter stuff is "locked" behind gplv3 now
<rqou> um, that's not how copyright works?
<Lord_Nightmare> afaik the full state machine of the digital parts, discounting wack-ass analog effects, is known
<rqou> yes i know
<cr1901_modern> rqou: There are.
<rqou> er, are what?
<cr1901_modern> oh you said vector
<cr1901_modern> nevermind
<Lord_Nightmare> IIRC dag lem threatened me when i asked if i could derive info about the filter from his implementation in resid2-fp
<cr1901_modern> Erm, there's no full vector of the SNES chip b/c nobody wants to do it and they haven't been available that long
<awygle> ah and the analog nt is built on the real cpu. this stuff is pretty cool.
<Lord_Nightmare> so i'm staying the fuck away from that code
<rqou> cr1901_modern: what about gb?
<cr1901_modern> built on the real CPU
<cr1901_modern> rqou: Same deal, and I want nothing to do w/ the gb after seeing the die ._.
<Lord_Nightmare> i'm a heathen: i actually prefer the 8580/6582 sound to the 6581
<rqou> cr1901_modern: why?
<rqou> the die looks pretty normal to me?
<Lord_Nightmare> since i believe the 8580 better reflects what yannes intended the sid to sound like
<cr1901_modern> I find it unpleasant to look at for long periods
jn___ has joined ##openfpga
<cr1901_modern> awygle: built on the real CPU?
<awygle> cr1901_modern: according to wikipedia - https://en.wikipedia.org/wiki/Analogue_Nt
<awygle> "uses the original nintendo cpu and ppu"
<Lord_Nightmare> (and the filter is actually stable and behaves mostly sanely, unlike the 6581 where the end of the cutoff dac is actually floating to virtual ground due to not working at all any other way?)
<Lord_Nightmare> you get some neat distortion effects because of that on the 6581, and the poor nmos inverters used as amplifiers
<Lord_Nightmare> the 8580 uses "proper-ish" hmos-ii op-amps instead, and has a sane filter
<Lord_Nightmare> anyway, sorry for interrupting
<cr1901_modern> awygle: Ahhh didn't know that
* Lord_Nightmare gone for a bit
<awygle> apparently the "mini" is FPGA-based
<awygle> despite its inexplicable price tag
<awygle> (okay it's probably explicable)
moho2 has joined ##openfpga
jn__ has quit [*.net *.split]
kc8apf has quit [*.net *.split]
moho1 has quit [*.net *.split]
kc8apf_ is now known as kc8apf
pie___ has joined ##openfpga
balrog has quit [Ping timeout: 240 seconds]
renze has quit [Ping timeout: 260 seconds]
stefanct has quit [Ping timeout: 260 seconds]
pie__ has quit [Ping timeout: 240 seconds]
stefanct has joined ##openfpga
stefanct has joined ##openfpga
stefanct has quit [Changing host]
balrog has joined ##openfpga
renze has joined ##openfpga
pie___ has quit [Ping timeout: 264 seconds]
pie___ has joined ##openfpga
pie___ has quit [Ping timeout: 240 seconds]
rohitksingh_wor1 has joined ##openfpga
rohitksingh_work has quit [Ping timeout: 240 seconds]
m_w has quit [Ping timeout: 264 seconds]
m_w has joined ##openfpga
rohitksingh_work has joined ##openfpga
rohitksingh_wor1 has quit [Ping timeout: 268 seconds]
ondrej2 has joined ##openfpga
pie_ has joined ##openfpga
<pie_> saw a switch on display the other day, looks pretty sturdy actually
rohitksingh_wor1 has joined ##openfpga
<rqou> pie_: the nintendo switch?
<pie_> yea
<rqou> help me dump the bootrom? :P
<pie_> buy me a switch :P
rohitksingh_work has quit [Ping timeout: 240 seconds]
<pie_> tbh im probably too noob still to help with that anyway
jn___ is now known as jn__
user10032 has joined ##openfpga
pie_ has quit [Ping timeout: 264 seconds]
moho2 is now known as moho1
rohitksingh_wor1 has quit [Read error: Connection reset by peer]
pie_ has joined ##openfpga
m_t has joined ##openfpga
pie_ has quit [Ping timeout: 260 seconds]
rohitksingh has joined ##openfpga
soylentyellow has quit [Ping timeout: 255 seconds]
pie_ has joined ##openfpga
<whitequark> awygle: btw any luck with MPSSE?
pie_ has quit [Ping timeout: 264 seconds]
pie_ has joined ##openfpga
eric_j has quit [Read error: Connection reset by peer]
eric_j has joined ##openfpga
<awygle> whitequark: some. Day job went nuts. Most of that should be behind me now.
<awygle> Still adjusting to Migen... I run tests with pytest and I'm like "wait that's it, no icarus, no verilator, just pytest?"
rohitksingh has quit [Quit: Leaving.]
SaLo has joined ##openfpga
m_w has quit [Ping timeout: 240 seconds]
eduardo_ has quit [Ping timeout: 276 seconds]
eduardo_ has joined ##openfpga
<whitequark> heh
rohitksingh has joined ##openfpga
rohitksingh has quit [Client Quit]
sunxi_fan has quit [Ping timeout: 240 seconds]
m_t has quit [Quit: Leaving]
m_w has joined ##openfpga
RaivisR_ has quit [Read error: Connection reset by peer]
RaivisR_ has joined ##openfpga
digshadow has quit [Ping timeout: 268 seconds]
<mithro> Morning
<mithro> daveshah: Is pull request #77 ready to merge?
<daveshah> mithro: Yes, it's ready to go from my POV
digshadow has joined ##openfpga
_whitelogger has joined ##openfpga
<daveshah> mithro: Typo - sorry - I was converting spaces to tabs, because IIRC that's what all your SLICEL code uses, in which case it's only lut.sim.v that's broken (but I think I'll tidy up the IO specification in ff.sim.v too)
<mithro> daveshah: I don't care about what formatting we use, as long as it consistent :-P
<daveshah> mithro: Should be fixed now
<daveshah> mithro: I'll rename carry4_top as well now we've decided on a vaguely tolerable name, so don't merge quite yet
<mithro> daveshah: Just one other comment
<mithro> daveshah: We should have consistent clock/input/output/parameter ordering
<daveshah> mithro: Yes, to the extent permissible by vendors' cell libraries at least
<mithro> daveshah: These don't need to be compatible with vendor's cell libraries
<mithro> daveshah: There should be a separate library which maps vendor's cell libraries onto out primitives
<daveshah> mithro: OK. I suggest parameter, clock, input, output then
m_t has joined ##openfpga
<mithro> daveshah: SGTM!
<mithro> daveshah: So I think the next thing to be looking into is finishing off the rr_graph manipulation stuff
<daveshah> mithro: Where is that at right now?
<mithro> daveshah: I've been working on it here -> https://github.com/SymbiFlow/symbiflow-arch-defs/pull/52
<mithro> daveshah: I've been working on getting the library able to import and then patch an existing rr_graph
<mithro> daveshah: Which is why I started working on the testarch because to get something simple enough that I can manually inspect the rr_graphs
<daveshah> mithro: OK, I see. That makes sense
<mithro> daveshah: we also discussed the possibility of adding the xc2064 part as kind of a "demo part" as well
<daveshah> mithro: The other option is possibly the iCE40LP384, although even that might be too large?
<mithro> The XC2064 is 64 blocks which is still a bit large
<mithro> I've been working with 4x4 size test device :-P
<daveshah> mithro: What about the GP4? Or is that not FPGA enough?
<mithro> daveshah: I have no idea about the GP4?
<daveshah> mithro: GreenPAK4
<daveshah> azonenberg has created open tools for it
<mithro> daveshah: How many LUTs is it?
<whitequark> twenty or so
<mithro> oh - • Four Combinatorial Look Up Tables (LUTs) - • Seven Combination Function Macrocell
<daveshah> but they're all different sizes which is annoying
<daveshah> the macrocell is basically just a LUTFF with a few other modes (counter etc)
<mithro> Are the GPAK3 included?
<whitequark> no
<daveshah> I think the smallest supported device is the SLG46140
<daveshah> which is something like 16 luts
<daveshah> but it's OTP
<whitequark> there are only three supported ones, SLG46140, SLG46620 and SLG46621, and the last two are the same die
<whitequark> all GP4 devices are OTP and all support loading the bitstream into SRAM
<daveshah> ah, that's OK then. thought they were OTP only for some reason
<whitequark> I think that's actually how all GP* devices work period, but not 100% sure
<whitequark> GP5 supports loading the bitstream via I2C
<whitequark> the rest has a wide-ish interface
<daveshah> actually seems there are some GP4 like the SLG46826 with MTP NVM
<whitequark> oh, these are very new
<whitequark> DS published 28-Dec-2017
<whitequark> so I didn't know about them
<whitequark> also wow, TSSOP
<rqou> random observation: lots of students don't know how to use 4-wire impedance measurement
<awygle> I didn't even hear the phrase until two years into my working career
<rqou> i definitely did it in lab a few times
<awygle> My favorite "oh that's a thing??" was power supplies with remote sense lines
<rqou> I've definitely never used one of those
<awygle> super useful in a variety of situations
user10032 has quit [Quit: Leaving]
<mithro> daveshah: So, I think the next step is to finish of the rr_graph library and get some simple patching of rr_graphs
<mithro> But the rr_graph stuff isn't really something two people can work on at the same time...
<mithro> daveshah: Do you maybe want to have a go at digging into the vpr codebase?
<daveshah> mithro: yes, that's something I'd be willing to look at. Are there specific issues you have in mind?
<mithro> daveshah: Yes!
<mithro> daveshah: I'd eventually like you to get comfortable enough that you could do this change -> https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/286
<mithro> daveshah: But I think that is too big of a task to start with
<mithro> daveshah: But there are some simple stepping stones which might make sense to get comfortable enough with that
<daveshah> mithro: Sure. That sounds sensible
<mithro> daveshah: This might be a good first issue -> https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/279
<daveshah> mithro: Looks like a good place to start
<mithro> daveshah: Another option might be stealing this one off of kc8apf -> https://github.com/verilog-to-routing/vtr-verilog-to-routing/issues/281
<awygle> tinyfpga: do you think you'll have a chance to put your initial ecp5 work on https://github.com/SymbiFlow/prjtrellis anytime soon?
<awygle> (i promise not to ping you about this _every_ time i'm frustrated with Diamond :P)
<mithro> tinyfpga: ping about the above too :-P
<mithro> daveshah: How about I put together a list of things in my vtr-verilog-to-routing repo?
<daveshah> mithro: yes, that sounds like a good
<daveshah> idea
<awygle> mithro: i know you've been working on documentation for prjxray, is there a "i want to work on a new tile type, where do i start" guide?
<mithro> awygle: Not yet
<awygle> (no this is not me bailing on doctests i just have to wait for a p&r run and i'm looking for fun stuff to read)
<mithro> awygle: Are you talking bitstream documentation or getting things for pnr?
<awygle> mithro: i was thinking bitstream documentation. can you expand more on the distinction you're presenting?
<mithro> awygle: bitstream documentation is - figuring out what the bits do
<mithro> awygle: Then there is still work needed to describe the architecture in a format that vpr can pnr
<awygle> mithro: okay, great, that's more or less what i figured you meant
<mithro> awygle: They are obviously loosely related
<mithro> awygle: But there is no reason the bitstream format has to be *sane* at all
<awygle> mithro: sure. other than that $vendor has to work with their own format and adding insanity adds complexity.
<mithro> awygle: Sure
<mithro> awygle: For example the bitstream doesn't really give you a good feeling about what should be at the "routing" and what should be at the "placement" level
<daveshah> tinyfpga and mithro: I started working out the low level format of the bitstream (frame layout, commands and CRCs) for the ecp5. Luckily it's fairly well documented by Lattice. Code is not worthy of prjtrellis yet but is a gist here atm: https://gist.github.com/daveshah1/d92024856e718efaa220cdc93751e46b
<mithro> daveshah: That looks worthy to me
<daveshah> I can unpack a simple bitstream to a list of bits as (bit, frame) and compare successfully to the output of Lattice's bstool dump command
<daveshah> The python is a bit hacky still
<awygle> daveshah: did you find the output to be something other than a giant "data" block? i looked at this briefly a while back and that was basically what i saw
<daveshah> Basically. The main content is a single command which contains all the frames. Between each frame is a CRC16 and a 0xFF dummy byte. EBR is loaded using separate commands, but I don't parse that yet
<daveshah> There is a lot of helpful output from various Lattice tools
_whitelogger has joined ##openfpga
<mithro> daveshah: Going to have them all finished for me by the time I get in tomorrow? :-P
<daveshah> mithro: I'll see what I can do :P
<daveshah> Will open a PR on prjtrellis imminently with initial bitstream code. At least documents it
<mithro> daveshah: Feel free to ask questions about the vpr code
mumptai has joined ##openfpga
<kc8apf> awygle: there is a little bit of overview on http://prjxray.readthedocs.io/en/latest/ about the process. If you want to start on a new tile type, first thing is making a very simple design that uses the tile. Then figure out where that tile is in the frame address space. IOBs would be a good place to start since we haven't looked at them but I roughly know where they are in the bitstream
Lord_Nightmare has quit [Ping timeout: 260 seconds]
<awygle> kc8apf: what i'm looking for is the rest of the sentence you just started. "First, make a bitstream using the tile, and figure out where it is in the frame address space [link to what the frame address space is/means]. Next....". does that make sense?
<awygle> kc8apf: i basically understand "build the thing, find where it is. build lots of the thing and through $PROCESS, figure out the bits." i don't have a definition for $PROCESS, and my thoughts on followup steps are kind of vague ("build many pairs of the thing, figure out the routing bits between them" maybe?)
Lord_Nightmare has joined ##openfpga
<kc8apf> 7-series configuration data is contained within the tiles. The addressing scheme follows the chip's internal structures
<kc8apf> IOBs are always the first and last columns of a row which makes them easy to find
<kc8apf> $PROCESS is more an art than science. Each subdir in prjxray/fuzzers is a TCL program that repeats a verilog module with slightly different parameters
<kc8apf> It uses multiple tiles to try various combinations in a single bitstream generation. By recording some configuration info via TCL, we can see which bits correspond to which configuration signal names
indy has quit [Quit: ZNC - http://znc.sourceforge.net]
indy has joined ##openfpga
Bike has joined ##openfpga
<rqou> O_o
<rqou> i guess we won't have The Semiconductor Company until the Cheeto leaves office
<rqou> not sure if that's a good or bad thing
<sorear> do we know yet which of them benefits from this
<rqou> O_o i think i just realized why
<whitequark> do tell
<rqou> Hock Tan is Singaporean
<rqou> i.e. not white
<Bike> "national security" is probably just so he can be dictatorial instead of going through the legislature.
<rqou> what are the chances that trump thinks hock tan is chinese from china?
<sorear> what are the chances that this is about general protectionism/race as opposed to somebody with influence having a concrete financial incentive?
<rqou> eh, hard to say for sure
<rqou> maybe both?
<awygle> could easily be both. I love the dramatic language too. "uncovered" national security problems. not "decided this was probably an issue" - "uncovered", doubtless with much sleuthing
<awygle> then again i read this headline and got confused because "qualcomm is korean" (i was thinking of Samsung) so clearly i should just shush.
<sorear> i have no idea what nationality owns them but I know that they're a top employer in my city
<rqou> qualcomm is an american company
<rqou> founded by a bunch of white guys including the pretty well known andrew viterbi
<jn__> qcom seems to have a large office in india, but that's probably irrelevant to this discussion
<rqou> so is the non-avago broadcom btw
<awygle> i guess if lattice is too important qualcomm definitely is
<whitequark> lattice is too important?
<whitequark> when did that happen
<rqou> some chinese company (i forget which) tried to buy lattice a while back
<awygle> sequoia or something like that? some VC firm
<awygle> Canyon Bridge Capital
mumptai has quit [Remote host closed the connection]
<pointfree> I'm actually kind of okay with having more than one semiconductor company tbh.
<rqou> yeah, i think even in the future there will be more than one
<rqou> Intel, NotIntel, and Huawei :P
m_w has quit [Ping timeout: 240 seconds]