Wednesday, 2019-03-20

*** tpb has joined #yosys00:00
*** somlo has quit IRC00:08
*** somlo has joined #yosys00:17
*** GuzTech has quit IRC00:25
*** emeb has quit IRC03:37
*** rohitksingh_work has joined #yosys03:41
*** emeb_mac has joined #yosys03:57
emeb_maclol - tried using the up5k PLL as a clock for generating video.03:58
emeb_macSo much jitter - monitor was shimmering like crazy.03:58
emeb_macSwitched to using xtal osc for video clock - rock steady.03:59
*** rohitksingh_work has quit IRC04:26
*** rohitksingh_work has joined #yosys04:27
*** danieljabailey has joined #yosys04:34
*** pie__ has joined #yosys04:35
*** pie___ has quit IRC04:38
*** citypw has joined #yosys04:39
*** danieljabailey has quit IRC04:53
*** gsi__ has joined #yosys05:06
*** gsi_ has quit IRC05:09
*** s3ntry has joined #yosys05:53
*** futarisIRCcloud has joined #yosys06:51
*** emeb_mac has quit IRC06:55
*** s3ntry has quit IRC07:04
*** s3ntry has joined #yosys07:04
*** m4ssi has joined #yosys08:26
*** futarisIRCcloud has quit IRC09:07
*** leviathanch has joined #yosys09:22
*** citypw has quit IRC09:57
cr1901_modernWhen did icetime start using such an obscene amount of memory during compilation? I can't even get it to compile in 2GB RAM + 2GB swap anymore10:04
tnticetime ?10:05
cr1901_modernyes, icetime10:05
cr1901_modernit's taking up 3GB of virtual memory just to compile on my Pinebook10:06
cr1901_modernand chances are it just crashed the system, so now I have to do it ALL OVER AGAIN10:06
tntAh yeah indeed all the timings are in a auto generated c file that gets compiled ...10:08
cr1901_modernprob been compiling close to 40 mins now10:09
cr1901_modernAnd I _know_ ppl used to native compile yosys and icestorm on their Pi 3s10:11
cr1901_modernand that had half the memory10:11
cr1901_modernhell I compiled icestorm on a 10 year old netbook w/ 1GB RAM10:11
tntOriginally it only supported a few chips. Each new chip support has been growing the timing database.10:14
cr1901_modernThe bitter irony of it all is that it would still take me longer to setup a cross compile environment thatn it would to just wait this out10:15
cr1901_modernb/c gcc is such an absolute clusterf***10:15
tpbTitle: diff --git a/icetime/Makefile b/icetime/Makefile index b1cd18d..f268b99 100644 - - (at
tntthis might ease the pain a bit.10:25
tntinstead of making one large file, it splits it into one per device10:25
cr1901_moderntnt: Thanks... and noted. I'll try that next. Perhaps it can be a compile-time option10:26
* cr1901_modern is probably killing a USB flash drive doing this10:27
tntThe UP5k is probaly the biggest culprit here because of all the DSP configuration variants and the high number of in/out ports ... (and timings are from every in to every out so N*N)10:28
cr1901_moderntnt: I'll try that patch later today, thanks10:30
cr1901_modernI'm curious to see whether compilation completes or dies10:31
tnthehehe :)10:31
cr1901_modernThis of course doesn't solve the problem of bbasm taking a long time, but afaik those can be compiled ahead of time and are arch-agnostic?10:33
tntyeah, the bba are arch agnostic.10:34
tntBut I thin there is a way to not have them built-in into the binary but have them separate as binary files.10:34
tntThose binary files are _not_ fully arch agnostic, but if the endianness is the same, it should be good enough.10:35
cr1901_modernwhile I would love to see nextpnr run on a big endian arch, it's not my main concern right now10:36
*** rohitksingh_work has quit IRC12:36
*** AlexDaniel has quit IRC12:36
*** rohitksingh has joined #yosys13:32
*** AlexDaniel has joined #yosys13:34
*** rohitksingh has quit IRC13:42
*** emeb has joined #yosys14:12
*** phire has quit IRC14:16
*** phire has joined #yosys14:17
*** PyroPeter has joined #yosys14:34
*** develonepi3 has joined #yosys16:16
*** danieljabailey has joined #yosys16:56
mwkexternal bba is broken on ice40 on master right now though :(17:27
tntreally ?17:27
mwkand tbh I have no idea what is the "proper" procedure to obtain the external chipdbs17:27
*** gsi__ is now known as gsi_17:27
* mwk just snatched the .bba files from a non-external-chipdb nextpnr compile tree and manually bbasm'ed them17:28
tpbTitle: ice40: Fix u4k in external chipdb mode. by koriakin · Pull Request #251 · YosysHQ/nextpnr · GitHub (at
mwkit says 'u4k', but since nextpnr always mmaps all chipdbs, this completely breaks ice4017:28
tntoh :/17:29
tntwell afaict it would break it for up5k17:29
tnt(overwriting the entry)17:29
mwkit will throw an exception on start, because it tries to open an already-open file object17:31
tntOh ... right.17:33
mwkhm, anyway17:34
mwkdaveshah: can we get that merged? what's the official procedure for that?17:34
mwkthat and #248 while we're at it17:34
daveshahcan you ask clifford to check #248? don't know the bba codebase myself17:35
*** m4ssi has quit IRC17:37
*** danieljabailey has quit IRC18:02
*** GuzTech has joined #yosys18:17
*** leviathanch has quit IRC18:19
*** thoughtpolice has quit IRC18:38
*** daveshah has quit IRC18:39
*** swetland has quit IRC18:39
*** arnd has quit IRC18:39
*** marex-cloud has quit IRC18:39
*** elms has quit IRC18:39
*** thoughtpolice has joined #yosys18:40
*** daveshah has joined #yosys18:40
*** elms has joined #yosys18:42
*** arnd has joined #yosys18:52
emebtnt: got composite video working w/ basic on that up5k 6502 system ->
tpbTitle: Dropbox - 0320191242.jpg (at
tntemeb: ahaha, nice !  Composite ?19:02
tntwith just a gpio ?19:02
emebtnt: yes - NTSC composite done with two io bits.20:29
emebone for sync, one for luma20:29
tntinteresting. I never really looked at what a composite signal looks like.20:29
tntAlso you mentionned the PLL jitter. Was the PLL locked ?20:30
tntis that on the upduino by anychance ?20:30
emebThe PLL was locked and running at the right frequency but pretty wiggly20:30
emebthis is on my own up5k board with "proper" supply circuits.20:31
emeb(the little purple board w/ 3 PMOD connectors in the foreground of that picture)20:31
tntMmm that's weird. I mean I used the PLL to generate HDMI clock without any trouble :/20:32
emebI'm going to do a bit more study of the PLL to see if I can clean it up some.20:33
emebthere's that filter parameter that always seems to be set to 3'b00120:33
tntWhat was the in/out frequency ?20:34
emebWell, looking at my setup it could also be the PLL tracking the jitter on the reference.20:36
emebI was using the on-chip 48MHz HOSC for the reference. Maybe try it with the external 16MHz xtal instead.20:36
emeb(this is what happens when you forget what you coded last week :P )20:37
emebtnt: that was the problem - noisy reference.20:42
emebusing external 16MHz into PLL then getting 16MHz out seems to have cleaned up the video stability to be equal to what I saw with xtal only.20:42
emeb\o/ - PLL is not a piece of junk.20:43
*** maikmerten has joined #yosys20:45
tntemeb: is that micro usb for power only or do you have the data lines connected to the up5k ?20:54
emebtnt: I have the data lines connected via resistors and a pullup line on DP as well.21:13
emebtnt: I tried to put tinyfpga's bootloader in it but it doesn't enumerate.21:14
tntemeb: you can try :)21:14
tpbTitle: ice40-playground/projects/riscv_usb at experimental · smunaut/ice40-playground · GitHub (at
tnt(shameless plug :p)21:14
emebtnt: I'll give it a try!21:15
emebtnt: I assume you've gotten it working for yourself?21:15
tntYeah. But it's a sample of 1 board, so curious to see if it works for others, on other board and other hosts.21:16
emebcool - I'm very curious to see if I can make this work.21:16
tntIt's not a bootloader atm .... it just enumerates a couple of useless endpoints, but the hw is there, just need a DFU firmware :p21:16
emebtnt: sure, that makes sense. I just want Linux to give me happy reports in the dmesg...21:17
tnt(you'll need to build and flash the riscv fw in the fw/ directory in addition ot the hw)21:17
emebAha - a bit of extra work. I assume the firmware goes into the SPI flash?21:18
tntyes, at the 1M offset. The makefile has a 'make fwprog' target, but of course that uses iceprog ...21:20
emebthat's fine - I have to use iceprog to load the flash.21:23
emebmy little usb/spi board only knows the simple protocol for loading the sram in the up5k21:23
emebtnt: getting an error during make in yosys: ERROR: Module `SB_RAM40_4K' referenced in module `usb_trans' in cell `mc_rom_I' does not have a parameter named 'INIT_FILE'.21:26
emebis my yosys out of date?21:26
tntyeah :/21:26
tntThat got merged last week.21:26
emebOK - is it safe to pull & rebuild? I saw some stuff earlier today about bugs in the git repo...21:27
tntyeah, should be safe.21:27
tntit's only nextpnr that has an issue and it's only if you try to use external chipdb which isn't the default option21:28
tntbut you don't need to rebuild next-pnr, just yosys.21:28
emeblivin' large on the bleeding edge...21:29
*** maikmerten has quit IRC21:35
emebyosys is happier now.21:42
emebjust need to tweak the .pcf and top level for my board.21:42
emebheh - timing just barely fails21:43
tntemeb: you might need to tweak the PLL settings if your ref is 16 MHz btw.21:47
tntemeb: try another seed for timing. Here is succeeds like 90% of the time but sometimes it's unlucky ...21:48
emebtnt: yeah - was just looking at the sysmgr.v22:00
*** danieljabailey has joined #yosys22:03
emebmaybe my older nextpnr isn't able to make timing - tried lots of seeds and the 24MHz clock always fails by a small amount. backing off the requirement to 24MHz to see if it'll finish.22:21
tntemeb: how small ?22:28
emebtnt: missing by < 1MHz22:30
tntMeh, should be fine.22:31
emebbut then I backed off constraint from 25 to 24 and it still missed - seems like the constraint affects the effort the algo exerts.22:31
emeband since that failure results in an error condition on exit from nextpnr, make halts.22:32
tntjust retype make, it'll go through.22:32
*** emeb_mac has joined #yosys22:40
*** emeb_mac has quit IRC22:42
tntemeb: any success ?22:52
*** cr1901_modern has quit IRC23:05
*** GuzTech has quit IRC23:29
*** Cerpin has quit IRC23:36
*** cr1901 has joined #yosys23:41
cr1901tnt: Thought I'd give an update on your patch... indeed, up5k is the culprit here. With your patch, I still requires 2GB of swap. However, the laptop is marginally usable now instead of completely and utterly unusable. Thanks to your patc23:45
cr1901In fact, it's compiling right now as I type :)23:46
cr19011878 MB RAM/1529 MB swap23:46
cr1901and I still have a responsive system (for now!)23:47

Generated by 2.13.1 by Marius Gedminas - find it at!