kazkojima / db-workspace-for-kintex7

workspace for prjxray DB for kintex7
0 stars 1 forks source link

Example project for missing tags #2

Closed hansfbaier closed 2 years ago

hansfbaier commented 2 years ago

Can you please share your example project you use to determine the missing tags from commit 5ad8495643e78fedc0a41f353e89fab6fe81cb74? That would help me reproduce the issues.

kazkojima commented 2 years ago

I'm using LiteX to generate the example.

./qmtech_xc7k325t.py --with-daughterboard --cpu-type femtorv --with-ethernet --build

I've added testcase/ which includes the diff files for the qmtech_xc7k325 support against litex-boards and the xc7k325t support against litex. I've added these files for LiteX because testcase/qmtech_xc7k325t.v isn't self-contained and requires .v for FemtoRV32 for example, as you know. Also I'd like to add testcase/qmtech_xc7k325t.fasm.bz2 which can be used stand-alone for DB tests.

fasm2frames.py --part xc7k325tffg676-1 --db-root ~/opt/nextpnr/prjxray-db/kintex7 qmtech_xc7k325t.fasm > qmtech_xc7k325t.frames 2>segdberr.log
hansfbaier commented 2 years ago

Is that from LiteX? I can't find qmtech_xc7k325t in litex_boards... Ahh... in testcase... Sorry, should have read that.

hansfbaier commented 2 years ago

Ah, now I have the following:

Info: Generating output buffer for '$iopadmap$qmtech_xc7k325t.ddram_cas_n'
get BEL: IOB_X1Y122/IOB33/PAD
terminate called after throwing an instance of 'nextpnr_xilinx::assertion_failure'
  what():  Assertion failure: s != -1 (/home/jack/HDL/nextpnr-xilinx/xilinx/arch.h:1602)
[1]    304290 abort (core dumped)  nextpnr-xilinx --chipdb /usr/share/nextpnr/xilinx-chipdb/xc7k325tffg676-1.bin

I think the IOB_X1Y122/IOB33/PAD should be IOB_X1Y122/IOB18/PAD, right? Do you have the same error? What did I do wrong here? I used the iob18-trial branch of your nextpnr-xilinx.

kazkojima commented 2 years ago

Yes, it should be IOB_X1Y122/IOB18/PAD. Could you confirm that "grep -n IOB18/PAD xilinx/pack_io_xc7.cc" returns

317:            pad->attrs[ctx->id("BEL")] = std::string(site + "/IOB18/PAD");

line?

hansfbaier commented 2 years ago

Yes, it does. I also recompiled and reinstalled. That's weird.

 grep -n IOB18/PAD xilinx/pack_io_xc7.cc
317:            pad->attrs[ctx->id("BEL")] = std::string(site + "/IOB18/PAD");
kazkojima commented 2 years ago

Is there any difference when running nextpnr-xilinx directly?

pushd build/qmtech_xc7k325t/gateware/
your-iob18-trial-nextpnr-xilinx --chipdb /opt/nextpnr/xilinx-chipdb/xc7k325tffg676-1.bin --xdc qmtech_xc7k325t.xdc --json qmtech_xc7k325t.json --write qmtech_xc7k325t_routed.json --fasm qmtech_xc7k325t.fasm --verbose --debug --log top.log
hansfbaier commented 2 years ago

Yes, I run it directly. Will investigate further. Aaaaah, I had a stale compile of nextpnr-xilinx in /usr/local/bin. Will delete that.

hansfbaier commented 2 years ago

Ah, now it runs. Got the fasm!

hansfbaier commented 2 years ago

And I got a bitstream!

hansfbaier commented 2 years ago

But nothing works... Do you still have your example project with the button -> LED?

hansfbaier commented 2 years ago

Ah, I know why. The .fasm file was empty. Now I got the missing tags messages. Good!

hansfbaier commented 2 years ago

OK great so far. I think I can close this ticket.