Friday, 2020-06-12

*** tpb has joined #symbiflow00:00
*** srt has quit IRC00:09
*** srt has joined #symbiflow00:15
*** srt has quit IRC00:19
*** srt has joined #symbiflow00:30
*** gsmecher has quit IRC00:32
*** srt has quit IRC01:00
*** emilazy has quit IRC01:12
*** bubble_buster has quit IRC01:13
*** mithro has quit IRC01:14
*** nickray has quit IRC01:14
*** emilazy has joined #symbiflow01:16
*** nickray has joined #symbiflow01:23
*** bubble_buster has joined #symbiflow01:23
*** mithro has joined #symbiflow01:23
*** bgfish has quit IRC01:36
*** srt has joined #symbiflow01:53
*** srt has quit IRC02:21
*** srt has joined #symbiflow02:22
*** srt has quit IRC02:27
*** Degi has quit IRC02:29
*** Degi_ has joined #symbiflow02:29
*** Degi_ is now known as Degi02:29
*** gsmecher has joined #symbiflow03:57
*** gsmecher has quit IRC04:05
*** srt has joined #symbiflow04:08
*** srt has quit IRC04:12
*** citypw has joined #symbiflow04:18
*** gsmecher has joined #symbiflow04:23
*** OmniMancer has joined #symbiflow05:07
*** OmniMancer1 has quit IRC05:10
*** epony has quit IRC05:10
*** OmniMancer has quit IRC05:11
*** OmniMancer has joined #symbiflow05:13
*** OmniMancer1 has joined #symbiflow05:14
*** futarisIRCcloud has quit IRC05:17
*** OmniMancer has quit IRC05:18
*** gsmecher has quit IRC05:23
*** _whitelogger has quit IRC05:33
*** _whitelogger has joined #symbiflow05:35
*** futarisIRCcloud has joined #symbiflow05:41
*** kgugala has quit IRC05:49
*** kgugala has joined #symbiflow05:49
*** kgugala_ has joined #symbiflow05:51
*** kgugala has quit IRC05:53
*** kgugala has joined #symbiflow06:37
*** kgugala_ has quit IRC06:39
*** lopsided98 has quit IRC07:53
*** lopsided98 has joined #symbiflow07:55
tntMm, in the S3, the RAM have "Selectable pipelined or non-pipelined read data".09:48
tntBut is that an additional data register (so latency=2clk) or is that a switch between async read and synchronous read ?09:48
sf-slack<kgugala> tnt: it adds a flip-flop, so you'll get one additional clk latency when using pipelined09:57
tntTx, that's what i would have tought, but I'm having some weird behavior so at this point I'm grasping at straws.10:03
*** futarisIRCcloud has quit IRC10:37
tntSo I need a sanity check ... This is a block diagram of what I'm testing now : https://i.imgur.com/f6DrMF1.png11:02
tntThere is two ram buffers (16 kbits each), configured with assymetric read/write width. One is 32b write / 8b read and the other the opposite.  Once side is connected to wishbone for the ARM to access and on the other side is a small copy machine that continuously copy the first 64 bytes from one RAM to the other.11:03
tntSource: https://github.com/smunaut/qorc-sdk/blob/ram_test/qf_apps/qf_advancedfpga/fpga/rtl/top.v#L12911:03
tpbTitle: qorc-sdk/top.v at ram_test · smunaut/qorc-sdk · GitHub (at github.com)11:03
tnt(for debug purposes I only copy the lower nibble of each byte, the upper nibble is replaces with the 4 LSBs of the write address).11:04
tntFrom the ARM I write for instance 0x00010203  and when reading from the other RAM (which is actually mapped to the same address since one is read only and the other write only), I expect to read that back (at least for the lower nibble).11:05
tntBut ... https://pastebin.com/2qHbrUG611:06
tpbTitle: 00010203 - 37211002 04050607 - 7b655446 08090a0b - bfa9988a 0c0d0e0f - f3eddc - Pastebin.com (at pastebin.com)11:06
tntthis is what I get.  (first column is what I write,  second column is what I read back).11:06
tntThe upper nibble actually properly reflect the LSB of the address ... the lower niblle are all scrambled over the place.11:06
*** epony has joined #symbiflow11:10
sf-slack<kgugala> tnt: what accesses do you do in the ARM CPU? byte/word/double word? I see you do not handle the wb_wstb signal (byte select)11:19
tntkgugala: It should all be double word access.11:19
tntLet me check the disassembly to make sure gcc did what I wanted.11:20
tnthttps://github.com/smunaut/qorc-sdk/blob/ram_test/qf_apps/qf_advancedfpga/src/main.c#L7011:21
tpbTitle: qorc-sdk/main.c at ram_test · smunaut/qorc-sdk · GitHub (at github.com)11:21
tntThat's the test code btw.11:21
tntyeah, all access are 32b. Of course assuming the AHB->WB bridge doesn't split them up but that would be very inconvenient if it did ...11:26
*** citypw has quit IRC11:32
tntThis is driving me nuts, I've been banging my head against it all morning :/11:52
*** kraiskil has joined #symbiflow12:01
*** kgugala_ has joined #symbiflow12:27
*** kgugala has quit IRC12:29
*** kgugala has joined #symbiflow12:36
*** kgugala__ has joined #symbiflow12:37
*** kgugala_ has quit IRC12:37
*** kgugala has quit IRC12:40
tntMmm ... I'm starting to wonder if that's not a hold time viiolation due to (1) high skew because of the global clock buffer getting stripped out   and (2) lack of timing data for RAM.12:43
sf-slack<kgugala> Timing data has been merged12:50
tntkgugala: What repo / branches should I be looking in ?12:51
sf-slack<kgugala> It's here https://github.com/QuickLogic-Corp/symbiflow-arch-defs/tree/quicklogic-upstream-rebase12:52
tpbTitle: GitHub - QuickLogic-Corp/symbiflow-arch-defs at quicklogic-upstream-rebase (at github.com)12:52
tnttx.12:53
*** srt has joined #symbiflow13:05
tntkgugala: Nice to see that the place/route/ql_symbiflow/... scripts install has been fixed as well :)13:44
tnt'route' conflicts with the linux IP routing table manipulation util though :p13:45
sf-slack<kgugala> yep, need to rename it to sth like symbiflow_route or vpr_route13:45
tntI guess not all ports have timing info ?  I still have a lot of stuff like "Warning 1131: Model 'RAM_CE1_FE0_PR1_WSA2_WSB2_VPR' input port 'CLK2EN_0' has no timing specification (no clock specified to create a sequential input port, not combinationally connected to any outputs, not a clock input)"13:50
tnt(but not for Read/Write Address/Data port as well)13:50
sf-slack<kgugala> there is no timing info for those in the https://github.com/QuickLogic-Corp/EOS-S3 so import script cannot get them13:51
tpbTitle: GitHub - QuickLogic-Corp/EOS-S3: QuickLogic EOS S3 FPGA device description (at github.com)13:51
sf-slack<kgugala> fortunately those inputs are suppose to be constants (at least for now)13:51
sf-slack<kgugala> I mean those are suppose to be routed to constants generators13:52
tntMost of them seem not that dynamic.  CSx_y / CLKxEN_y maybe not.13:52
tntAny idea what LS / SD / DS are btw ?13:52
tntAh, my test seems to behave much better now ! Nice.13:53
sf-slack<kgugala> great13:53
sf-slack<kgugala> AFAIK those LS/SD/DS pins are for power control13:56
tntOh yeah "Deep Sleep" "Shut Down"13:58
tntand ... Light Speed (for overclocking I'm sure :p)13:59
sf-slack<kgugala> :)13:59
*** srt has quit IRC14:04
tntI'm trying to use the usb pins  (14,10,15) and I just get a place error as soon as I try to do anything with it ... (I randomly assigned a signal to it) https://pastebin.com/BDjXmJgH14:38
tpbTitle: cd build && place_vpr -e top.eblif -d ql-eos-s3_wlcsp -p /home/tnt/projects/fpga - Pastebin.com (at pastebin.com)14:38
*** futarisIRCcloud has joined #symbiflow14:41
sf-slack<kgugala> Do you have a pcf published somewhere?14:41
sf-slack<kgugala> Currently I'm travelling, but I can take a look on that later14:42
tntIt's https://github.com/smunaut/qorc-sdk/blob/ram_test/qf_apps/qf_advancedfpga/fpga/rtl/quickfeather.pcf14:43
tpbTitle: qorc-sdk/quickfeather.pcf at ram_test · smunaut/qorc-sdk · GitHub (at github.com)14:43
tntbut with the usb stuff uncommented.14:43
tntEven with just usb_dp is I assign it to pin 10 I get that error. If I assign it to pin 37 (random pick), it works.14:44
*** andrewb1999 has joined #symbiflow15:19
litghosttnt: Unclear where the rest of error message ended up, but that error is https://github.com/SymbiFlow/vtr-verilog-to-routing/blob/master%2Bwip/vpr/src/base/read_place.cpp#L254, which is that the type of cluster being placed doesn't match the arch15:19
tpbTitle: vtr-verilog-to-routing/read_place.cpp at master+wip · SymbiFlow/vtr-verilog-to-routing · GitHub (at github.com)15:19
litghosttnt: Open an issue with a tarball with the .net, .pcf and top_io.place files15:21
andrewb1999litghost: In vivado is there a way to create a pblock that, for example, includes the INT_L tiles but excludes the bordering INT_R tiles?  Or does vivado limit it just to aligning to CLBs, BRAMs, etc?15:21
litghostandrewb1999: So a pblock typically uses sites to delimit it, right?15:23
andrewb1999litghost: Yes you give it a range of sites15:24
litghostandrewb1999: INT_L/R tiles contain TIEOFF sites, that might do the trick, but I've never tried it15:25
*** kgugala__ has quit IRC15:28
andrewb1999litghost: Vivado doesn't seem to like that.  Just wondering if it would be possible to do something like that for mixed vivado overlay and vpr region.15:29
litghostandrewb1999: Losing 1 columns of CLB's to maintain the same overlay is doable15:29
litghostandrewb1999: It is also worth noting that if you design the harness using VPR as we had discussed, we have a way to import that into VIvado again, if that is needed15:30
*** kgugala has joined #symbiflow15:33
ryancj14Hello, I'm Ryan Johnson. I'm working with Professor Nelson at BYU, studying fpga performance and device representations. I was wondering if I could get an invitation to the symbiflow slack channel as my professor believes it would be a great way to communicate with this group. We have been working hard on applying the symbiflow tools and would love to participate and help with you all as much as possible. Thanks for15:36
ryancj14your help. My email is [email protected].15:36
sf-slack<mgielda> hi Ryan, this is bridged with Slack15:36
sf-slack<mgielda> so the IRC == Slack15:36
sf-slack<mgielda> kind of15:36
LoftyI think the IRC is the public side of it, while the Slack is a bit more private15:37
sf-slack<mgielda> but if slack is more convenient - https://join.slack.com/t/symbiflow/shared_invite/enQtNTkyMjcyNTkzOTY4LTU0MzhmYWNjOGMyMTkyNjA0MmEyMWM5OWY3ZDg5MWQ3ODlmOWQwZjk2YzBmMDBjMzkzMzNjYjkwYjAxZTMyNjQ15:37
ryancj14Alright thanks!15:38
ryancj14I did notice they are connected. I think slack will be a bit more convenient.15:39
*** gsmecher has joined #symbiflow15:55
*** ryancj14 has left #symbiflow15:57
*** kgugala has quit IRC16:15
*** kgugala has joined #symbiflow16:16
tntkgugala: There was a bunch of small errors in ql_symbiflow and synth script that resulted in the PCF and PINMAP files not to be considered during the synth and so it was using BIDIR instead of SDIO_MUX16:27
tnt(missing the part / pcf argument to synth, also some places used PU64_pinmap.csv and other pinmap_PU64.csv ...)16:28
sf-slack<kgugala> I suspected sth like that16:28
sf-slack<kgugala> Do you have a fix somewhere?16:29
tntyup let me make a patch with the few tweaks I had to make.16:29
tntactuall which one should it use ? pinmap_PU64.csv or PU64_pinmap.csv ?16:30
tntlooks like the scripts all use pinmap_PU64.csv  but the make install puts them in PU64_pinmap.csv16:31
sf-slack<kgugala> The suffixed version looks better16:33
sf-slack<kgugala> I'll check the install target16:33
*** srt has joined #symbiflow16:34
tnthttps://pastebin.com/q5QYSzig16:34
tpbTitle: [Diff] diff --git a/quicklogic/toolchain_wrappers/ql_symbiflow b/quicklogic/toolchain_w - Pastebin.com (at pastebin.com)16:34
tntThen it's just that.16:34
sf-slack<kgugala> thanks16:35
sf-slack<kgugala> do you want to open a PR, or should I include this in the install fix?16:36
tntfeel free to just include it.16:37
sf-slack<kgugala> hmm, from what I see the pinmap naming is already fixed16:40
sf-slack<kgugala> I got pinmap_PD64.csv  pinmap_PU64.csv  pinmap_WR42.csv16:40
sf-slack<kgugala> so only wrapper fix is needed16:40
tntOh yeah, my bad, the ${PACKAGE}_pinmap.csv was from the binary distrib ...16:45
*** srt has quit IRC17:06
*** srt has joined #symbiflow17:09
*** bgfish has joined #symbiflow17:29
*** bgfish has quit IRC17:30
*** kgugala_ has joined #symbiflow17:37
*** kgugala has quit IRC17:39
*** OmniMancer1 has quit IRC18:00
tntLofty: On a full PNR run the changes brough it from 545 LCs to 457 LCs, so pretty nice :)18:04
LoftyWoo!18:05
LoftyThanks for the measurements, tnt18:05
*** andrewb1999 has quit IRC18:31
*** andrewb1999 has joined #symbiflow18:40
andrewb1999litghost: For the top left region of the a50t, does a frame include from the top of the chip up to but excluding the BRKH row, or does it also include the BRKH row?18:42
*** tcal has joined #symbiflow18:58
*** srt has quit IRC19:02
*** srt has joined #symbiflow19:04
*** kraiskil has quit IRC19:09
*** srt has quit IRC19:49
*** srt has joined #symbiflow19:50
sf-slack<timo.callahan> Is symbiflow the best place for Renode questions, or is there another IRC channel?19:57
sf-slack<pgielda> Its fine to ask here. Or open an issue. Or send a PM ;)20:05
sf-slack<timo.callahan> @pgielda Thanks!   Nothing specific yet, but I plan to dive into it this coming week.20:06
tntDoes VTR have a gui to visualize the result of a PnR run ?20:12
*** srt has quit IRC20:17
andrewb1999tnt: It does.  Haven't used it with symbiflow though.20:22
tntI tried adding --disp on ... which did nothing.20:24
litghosttnt: Any chance you are running with a version of VTR with the GUI compiled out?20:25
tntlitghost: well the cmake did say "-- VPR Graphics: Enabled" & "-- EZGL: graphics enabled"  so ... I think I should be good20:26
litghosttnt:  What VPR step are you doing?  --place / --route / --analysis?20:29
tntOh yeah,nm, I must have been calling it wrong ... I added it to place and it popped up ...20:30
*** kgugala has joined #symbiflow20:30
tntI was hoping for a bit more detailled cell view though :/  (more like nextpnr gui or fpga_editor )20:31
litghostI believe VPR's gui is mostly focus on the interconnect graph, with few details inside of the island20:31
litghostBut I don't have much experience20:32
*** kgugala_ has quit IRC20:33
*** az0re has quit IRC22:09
*** andrewb1999 has quit IRC23:50

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!