--- Log opened Fri Apr 15 00:00:22 2016 | ||
olofk | wallento: Was this supposed to be in the patch? https://github.com/olofk/fusesoc/pull/96/files#diff-a2c7373da35c3fb28d86b2d585f8ac17R145 | 01:56 |
---|---|---|
wallento | olofk: oh, shit, sorry, no | 02:59 |
wallento | that was in a long git add -p session | 02:59 |
wallento | I will send an updated one | 02:59 |
wallento | olofk: fixed it and rebased | 05:55 |
olofk | wallento: Cool. I'll hope to work a bit on this over the weekend | 06:25 |
wallento | great, it seems I am done with the naming for now | 06:28 |
wallento | verilator works | 06:28 |
wallento | and I will test verilator today | 06:28 |
wallento | *vivado | 06:28 |
olofk | wallento: I pushed a patch yesterday that probably requires some changes in your vivado backend | 06:36 |
olofk | Sorry. Forgot to tell you | 06:36 |
wallento | Okay, I will check | 06:36 |
olofk | Check the changes in quartus and ise | 06:36 |
olofk | It | 06:36 |
wallento | yep, will do, thanks | 06:37 |
olofk | 's just that I'm using FileList instead of PathList in section.py, so all file lists will be a list of File instead of a list of str | 06:37 |
wallento | ah, I see | 06:38 |
wallento | yes, will update the vivado PR | 06:38 |
wallento | olofk: not needed, because I already used filesections in vivado | 08:25 |
wallento | there are no special files in the backend section | 08:25 |
wallento | but they are supplied as filesets with file_type=xdc | 08:26 |
olofk | wallento: Ah. Nice! | 08:37 |
-!- Netsplit *.net <-> *.split quits: wallento, julzmb, clopez_, robtaylor, simoncook | 11:26 | |
-!- wallento_ is now known as wallento | 11:26 | |
-!- Netsplit over, joins: robtaylor | 11:30 | |
-!- Netsplit *.net <-> *.split quits: Amadiro | 12:13 | |
-!- Netsplit over, joins: Amadiro | 12:19 | |
-!- Netsplit *.net <-> *.split quits: mwfc, Amadiro, rohitksingh | 13:27 | |
-!- Netsplit *.net <-> *.split quits: julzmb | 13:27 | |
-!- Netsplit *.net <-> *.split quits: wallento, sandeepkr | 13:28 | |
-!- Netsplit *.net <-> *.split quits: kaaliakahn, aburgess, heroux | 13:28 | |
-!- wallento_ is now known as wallento | 13:28 | |
-!- Netsplit over, joins: rohitksingh | 13:38 | |
olofk | wallento: Are you happy with the vivado backend so I can start testing and reviewing it? | 14:38 |
olofk | andrzejr: I'm (finally) looking at your provider patches and going to try them out with a few cores of my own | 14:58 |
olofk | I don't like this part in the tcl script -> set_property part xc7a100tcsg324-1 [current_project] | 14:59 |
olofk | Would like to think if we can provide a way to not hardcode the device here | 14:59 |
olofk | Not sure we can do that actually though | 14:59 |
olofk | hmm... the device is already specified in the xci file, so we can't really target different devices anyway | 15:02 |
olofk | Crappy Xilinx IP | 15:02 |
olofk | But I think we could probably generate the tcl file actually. So instead of specifying a tcl file, we can have options for target language and part | 15:04 |
olofk | OTOH, a tcl file gives us more freedom to do other stuff if that is needed | 15:05 |
wallento | olofk: yes, no further changes | 15:05 |
olofk | wallento: Cool. I'll do that when I have looked at the provider patches | 15:05 |
wallento | the tcl files are minimal for vivado | 15:06 |
wallento | because it tracks dependencies on its own | 15:06 |
wallento | you could run some command that build the IP | 15:06 |
olofk | wallento: That's good. I think we should leave as much as possible to the user to support a wider range of flows | 15:06 |
wallento | but vivado handles this pretty good | 15:06 |
olofk | FuseSoC is supposed to get out of the way when it can :) | 15:06 |
wallento | even does it in multiple jobs | 15:06 |
wallento | the next days I will have a look of merging the parts with xsim too | 15:07 |
wallento | so maybe you want to wait for this | 15:07 |
wallento | but for synthesis I am happy for now | 15:07 |
olofk | wallento: Wait with the vivado stuff or the provider stuff? | 15:07 |
wallento | with vivado | 15:08 |
wallento | I did not look at the provider so far | 15:08 |
wallento | the provider generates the IP, right? | 15:08 |
wallento | to provide the output files to other flows | 15:08 |
olofk | vivado is pretty integrated, but I think we should keep the synth and sim flows separated for now | 15:08 |
olofk | Yep, that's correct | 15:08 |
wallento | yes, that is good | 15:09 |
wallento | I will prepare the readthedocs patch also soon | 15:09 |
olofk | andrzejr: I think we could create a tcl file that sets some variables (xci_file and core_name perhaps?) and prepend that to the script file. Then your tcl file would look like this instead | 15:10 |
olofk | http://0d6ce66aa79ff3aa.paste.se/ | 15:11 |
olofk | But this could be done later on | 15:11 |
olofk | wallento: Nice! Every piece of documentation is welcome | 15:11 |
olofk | hmm.. I wonder if we can read the part from the xci file | 15:21 |
andrzejr | olofk, I've basically copied configuration files "as is". Each core generator is different in some way and it would be difficult to generalize it. | 15:29 |
andrzejr | unless you want plugins like "coregen-mig" etc. | 15:30 |
olofk | andrzejr: No, you're right, I want something generic | 15:31 |
olofk | Fuck it. It works, and you can just set stuff in the tcl file, so I'll pull it :) | 15:32 |
olofk | oh.. but one thing. We don't want to copy all files in the directory. Only the ones we specify in xci_file and script_file | 15:33 |
olofk | I had a dir with lots of xci files. It copied all of them and then complained that there were multiple xci files in the same dir | 15:34 |
olofk | Should I just update your patch? | 15:34 |
andrzejr | This was needed for MIG generator. Xilinx coregen was not happy without some extra files, even though they were not referenced by anything. | 15:36 |
andrzejr | https://github.com/andrzej-r/orpsoc-cores/tree/nexys4ddr/systems/nexys4ddr/nexys4ddr_ddr2 | 15:37 |
andrzejr | https://github.com/andrzej-r/orpsoc-cores/tree/nexys4ddr/systems/nexys4ddr/nexys4ddr_xadc | 15:37 |
andrzejr | not sure about the logicore, I only used it for a relatively simple core: | 15:40 |
andrzejr | https://github.com/andrzej-r/orpsoc-cores/tree/nexys4ddr/cores/xilinx_mii_to_rmii | 15:40 |
olofk | andrzejr: I think we should instead reference all needed files | 15:41 |
olofk | ah yes. mig needs the .prj file | 15:41 |
olofk | I wonder if we could just use filesets in the provider section. That would make it more uniform | 15:53 |
olofk | Another option would be to just add an extra_files parameter | 15:53 |
wallento | isn't xci plain IPXACT? | 16:28 |
olofk | yes and no :) | 16:36 |
olofk | It's a IP-XACT design file, not a component file | 16:37 |
olofk | When you run it through the Vivado IP generator you get HDL files (or a netlist) and an IP-XACT component file | 16:37 |
olofk | But unfortunately the files are often so full of vendorextensions so that they are hardly usable outside of Vivado | 16:38 |
olofk | Peter Gielda from AntMicro has apparently managed to open up some Xilinx IP-XACT file in Kactus, changed stuff, saved it and still been able to read it in Vivado, so they aren't breaking the standard completely though | 16:39 |
olofk | So the xci file isn't that usable outside of Vivado | 16:41 |
olofk | But the generated xml (IP-XACT component file) could potentially be useful for FuseSoC to pick up the filesets from | 16:42 |
olofk | Now the next problem is that there are four revisions of IP-XACT (1.4, 1.5, 2009 and 2014) and tools often just support one or a few of them | 16:43 |
olofk | Cool! I managed to get FuseSoC to read the filesets from Vivado-generated IP-XACT file | 16:53 |
olofk | With a few hacks :) | 16:53 |
olofk | 1. FuseSoC complains if it can't find the XML file, but the file isn't created until the provider runs. This should be fixed so that the provider runs first of all | 16:54 |
olofk | And my ugly hack to detect the IP-XACT version didn't work for this file. Need to find a better ugly hack. If I hardcoded to 2009 it works | 16:55 |
olofk | So once that works, we don't need to list all the HDL files in the .core file with a logicore provider. Only need to reference the IP-XACT component file | 16:56 |
olofk | Life's good! :) | 16:56 |
olofk | And I need to sleep. More investigation tomorrow | 16:56 |
olofk | andrzejr: I think we could just go with a extra_files parameter to list the other files we need in the logicore provider instead of copying everything | 16:57 |
olofk | If that is fixed, I'm happy to pull that one | 16:57 |
olofk | wallento: Does the vivado backend detect xci files from dependencies? (Haven't checked) | 16:58 |
wallento | olofk: yes | 17:37 |
wallento | any file with usage = vivado and file_type = xci | 17:38 |
wallento | actually I use it in submodules | 17:38 |
wallento | because you cannot have multiple xci files in one output folder | 17:38 |
wallento | https://github.com/wallento/fusesoc_cores/tree/master/boards/nexys4ddr | 17:39 |
jumbo | is there any reasonably priced, typically recommended FPGA board I should get for just trying out OpenRISC and playing around with it some? I'd like VGA output | 20:56 |
--- Log closed Sat Apr 16 00:00:23 2016 |
Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!