Sunday, 2023-12-10

*** tpb <[email protected]> has joined #yosys00:00
*** shoragan <shoragan!~shoragan@user/shoragan> has quit IRC (Quit: quit)01:15
*** shoragan <shoragan!~shoragan@user/shoragan> has joined #yosys01:16
*** pbsds <[email protected]> has quit IRC (Quit: The Lounge - https://thelounge.chat)04:02
*** pbsds <[email protected]> has joined #yosys04:03
*** pbsds <[email protected]> has quit IRC (Quit: The Lounge - https://thelounge.chat)04:09
*** pbsds <[email protected]> has joined #yosys04:11
*** tokamak <tokamak!~Tokamak@2603:c020:4004:f00::4> has quit IRC (Quit: ZNC 1.8.2+deb2build5 - https://znc.in)04:45
*** tokamak <[email protected]> has joined #yosys04:46
*** singham <[email protected]> has joined #yosys04:58
singhamtnt: Thanks, I read the docs for the 3 tiles04:59
singhamAs a hello world, I want to assign the pin M12 to zero by editing asc file04:59
singhamHow do I figure out logic cell closest to pin M12 in iCE40HX8K?05:00
singhamAlso, how is the grid laid out? 05:01
singhamThanks in advance05:01
singhamSorry, I meant assigning M12 pin to 105:04
singhamAn led is connected to M1205:04
singhamBasically, I want to store all values of LUT close to IO pin to 1 and connect via span interconnects to pad05:06
*** pbsds <[email protected]> has quit IRC (Quit: The Lounge - https://thelounge.chat)05:16
*** pbsds <[email protected]> has joined #yosys05:19
*** singham <[email protected]> has quit IRC (Remote host closed the connection)05:22
Myrl-sakiFWIW, form what I understand, doesn't HeAP do that for you? At least that's what I understood from the rationale.05:22
*** singham <[email protected]> has joined #yosys05:29
* singham was afk05:29
* singham is back05:29
Myrl-sakiI just realized I replied exactly as you left lol05:32
singhamsorry05:33
singhamCan you please repeat?05:33
Myrl-sakisingham: IIRC, you don't need to manually place the logic cell, because that's what HeAP's whole rationale is.05:33
Myrl-sakiBut I'm not 1000% sure.05:33
Myrl-saki(I'm relatively new to this.)05:33
singhamWhat's HeAP?05:36
singhamI wrote ramtest program for testing RAM on Olimex HX8K board05:37
singhamand it is not working correctly05:37
singhamI mean verilog program05:41
singhamFor ramtest, I believe I'd rather write asc directly and make FSMs on paper05:41
Myrl-sakiHeAP is a placement algorithm which nextpnr also supports.05:43
singhamI'm talking about writing asc by hand and then going to bitstream with icepack05:44
singhamIt doesn't concern nextpnr05:44
*** singham <[email protected]> has quit IRC (Read error: Connection reset by peer)05:57
*** ec <ec!~ec@gateway/tor-sasl/ec> has quit IRC (Remote host closed the connection)06:08
*** singham <[email protected]> has joined #yosys06:15
*** singham <[email protected]> has quit IRC (Read error: Connection reset by peer)06:25
*** singham <[email protected]> has joined #yosys07:34
loftysingham: I have to ask why you want to do this, because this is setting yourself up for misery.07:47
singhamI find it simpler to do fsm and binary code than verilog07:48
loftyAt least if you were using nextpnr you could still entirely manually place and route everything.07:48
singhamAlso, procedural things confuse me in HDL07:48
singhamHow do I figure out logic cell closest to pin M12 in iCE40HX8K? And assign it to 1 in asc file07:49
loftywhich chip package?07:50
singhamct25607:51
loftyM12 is X27/Y0/io1, so that would be X27/Y1/lc008:01
loftysingham: ^08:01
loftyhow do you assign it to 1? well, I would put a LUT4 in there with an all-ones LUT mask08:02
singhamHow to find that 27 0 is M12?08:14
singhamWhich logic cell is closest to it?08:15
singham27 0 ?08:15
singhamI mean 27 1?08:15
loftysingham: https://github.com/YosysHQ/icestorm/blob/master/icebox/icebox.py#L488308:23
singhamlofty: Beautiful, beautiful! Thank you so much!08:23
singhamBow down to you08:24
loftyI still strongly urge you not to try to directly write an ASC from this08:25
loftyI could probably write your FSM faster than you could write the necessary infrastructure needed to do this manually08:26
singhamHow?08:28
singham:D08:29
loftybecause the tooling already knows all of this, and is designed to make your life as easy as possible08:29
singhamI don't think so.08:29
loftyyou were asking how to make a logic cell emit a 108:29
loftyif you have to ask that, you probably don't presently possess the knowledge required to encode your logic in the hardware08:30
*** singham <[email protected]> has quit IRC (Read error: Connection reset by peer)08:33
*** singham <singham!~singham@2405:204:2026:a72e::11cd:58a5> has joined #yosys08:42
singhamWell, I'm an IITian and IIT students cover quite some ground in mere days08:43
singhamDon't worry about that. All tools will be made as simple as possibly can and will be omitted altogether to help the user!08:44
loftythis is a recipe for burnout, I think.08:44
singhamI mean I'd update and contribute if need be08:45
singhamBy default, it is not a state of burnout08:45
singhamBy default, our IITian's state of mind is energetic and independent08:46
loftyI think you completely misunderstood me there08:47
loftyI work for YosysHQ. I work on Yosys and nextpnr and the open tooling in general.08:47
loftyso, I would like to say I have a reasonably informed opinion on this topic.08:47
singhamThe only issue I find is help is scarce even amongst people who should align. See, we both want to improve coding FPGAs and so you helped me but normally, I don't find such co-operation08:47
singhamThanks again man!08:47
loftydon't get me wrong, I think Verilog is bad08:48
loftybut manually playing "connect the dots" on an FPGA will not scale for anything more than trivial tasks08:48
loftypeople just do not have time for it08:48
loftyeven if they did, nextpnr already supports that!08:48
singhamYeah, I too feel so many transistors aren't needed.08:48
singhamI just have to implement a few instructions happening again and again like a processor08:49
lethalbityeah, using a pnr tool is the best way, doing it manually is an exercise in madness and tbh likely a huge waste of time08:49
lethalbittrust lofty here, they know what they're talking about08:51
singhamBut when things don't work, it's even worse to find the issue in the code08:51
singhamI mean verilog code08:51
loftythat's what simulators are for08:51
lethalbit^^08:51
singhamSimulator and synthesis are different08:51
lethalbitAlso you could use something else, like VHDL, or Chisle, et. al.08:51
singhamWith Synthesis, so many features are not even present08:52
loftythey are different, yes, but if your design simulates correctly it should synthesis correctly08:52
jixsingham: there's post-synth simulation for that08:52
loftyor you could use a language which does not have such a difference in features between simulation and synthesis, like Amaranth or such08:52
lethalbithi jix! it's been a while, hope you're doing well :308:53
loftyo/ jix08:53
*** singham <singham!~singham@2405:204:2026:a72e::11cd:58a5> has quit IRC (Remote host closed the connection)08:58
*** singham <singham!~singham@2405:204:2026:a72e::11cd:58a5> has joined #yosys08:59
singhamI thank you all09:02
* singham ought to leave09:03
*** singham <singham!~singham@2405:204:2026:a72e::11cd:58a5> has quit IRC (Remote host closed the connection)09:03
jixlethalbit: hi! sry went afk right after my last msg (and will again shortly)... can't complain overall ... your collab stream with lina the other day looks really cool from the short peek I had so far, meaning to watch it fully when I can finde the time, looks like it's at the right level and pace for me if I want to finally figure out magic and related stuff09:18
lethalbitit's all good~09:19
lethalbitIt's some really basic intro stuff, I wasn't able to go into a lot of details for questions that Lina asked as it got to the edge of my knowledge but I hope it's helpful enough for people just getting into it09:19
lethalbitI was also pretty sleepy during it so that doesn't help, but *shrug*09:20
jixwell on the asic side I don't even know the basic stuff, I know some basic things in theory but never got around to use any of the tooling09:20
lethalbitYeah, 09:20
lethalbitthe main issue imo is the tooling atm, OpenLANE is good, but for the manual cell layout magic is a mess and kinda janky and klayout is just not as capable so it's not a good replacment 09:21
lethalbitso i'm poking on writing my own VLSI Layout tool that takes a bit after KiCads pcbnew so hopefully it'll be more useable :v 09:22
lethalbitanywho, i've gotta crash, have a good one!09:22
jixthe thing I saw so far was part of you showing how to actually use magic and the one time I wanted to do that in the past I didn't have the patience to figure that out09:22
lethalbitfair, magic is pretty hard to divine how to use09:22
lethalbitand even when you know how to use it, it's kinda moody09:22
*** schaeg <schaeg!~anabrid@2a02:3036:263:1ffc:bce5:9e84:1665:dd9> has joined #yosys14:38
*** schaeg <schaeg!~anabrid@2a02:3036:263:1ffc:bce5:9e84:1665:dd9> has quit IRC (Ping timeout: 255 seconds)15:11
*** schaeg <schaeg!~anabrid@2a02:3036:263:1ffc:130d:b2e9:40a2:2621> has joined #yosys16:05
*** singham <[email protected]> has joined #yosys19:32
singhamFolks19:41
*** singham <[email protected]> has quit IRC (Ping timeout: 255 seconds)19:46
*** unkraut <[email protected]> has quit IRC (Remote host closed the connection)20:05
*** unkraut <[email protected]> has joined #yosys20:07
*** schaeg_ <schaeg_!~anabrid@2a02:3036:263:1ffc:130d:b2e9:40a2:2621> has joined #yosys20:38
*** schaeg <schaeg!~anabrid@2a02:3036:263:1ffc:130d:b2e9:40a2:2621> has quit IRC (Ping timeout: 260 seconds)20:38
*** derekn <[email protected]> has quit IRC (Ping timeout: 264 seconds)21:04
*** derekn <[email protected]> has joined #yosys21:10
*** nonchip <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)23:21
*** nonchip <[email protected]> has joined #yosys23:21
*** bjorkintosh <bjorkintosh!~bjork@user/bjorkintosh> has quit IRC (Ping timeout: 240 seconds)23:58

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