You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, if you try to use a flip flop with a shaped input, the conversion fails when using XilinxPlatform.
Other places in the code might be affected to, I haven't checked that.
Traceback (most recent call last):
File ".../venv/lib/python3.10/site-packages/amaranth/lib/data.py", line 865, in __getattr__
item = self[name]
File ".../venv/lib/python3.10/site-packages/amaranth/lib/data.py", line 833, in __getitem__
field = self.__layout[key]
File ".../venv/lib/python3.10/site-packages/amaranth/lib/data.py", line 344, in __getitem__
return self._fields[key]
KeyError: 'attrs'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File ".../ff_shape.py", line 37, in <module>
verilog.convert(Foo(), name="foo", platform=MicroZedZ020Platform())
File ".../venv/lib/python3.10/site-packages/amaranth/back/verilog.py", line 60, in convert
fragment = _ir.Fragment.get(elaboratable, platform)
File ".../venv/lib/python3.10/site-packages/amaranth/hdl/_ir.py", line 63, in get
new_obj = obj.elaborate(platform)
File ".../venv/lib/python3.10/site-packages/amaranth/hdl/_dsl.py", line 687, in elaborate
fragment.add_subfragment(Fragment.get(submodule, platform), name, src_loc=src_loc)
File ".../venv/lib/python3.10/site-packages/amaranth/hdl/_ir.py", line 63, in get
new_obj = obj.elaborate(platform)
File ".../venv/lib/python3.10/site-packages/amaranth/lib/cdc.py", line 94, in elaborate
return platform.get_ff_sync(self)
File ".../venv/lib/python3.10/site-packages/amaranth/vendor/_xilinx.py", line 1243, in get_ff_sync
flops[0].attrs["amaranth.vivado.false_path"] = "TRUE"
File ".../venv/lib/python3.10/site-packages/amaranth/lib/data.py", line 867, in __getattr__
raise AttributeError(
AttributeError: View with layout StructLayout({'one': 1, 'two': 2}) does not have a field 'attrs'; did you mean one of: 'one', 'two'?
I suspect this is because this line creates a signal with the shape:
Currently, if you try to use a flip flop with a shaped input, the conversion fails when using
XilinxPlatform
.Other places in the code might be affected to, I haven't checked that.
To reproduce:
The error:
I suspect this is because this line creates a signal with the shape:
amaranth/amaranth/vendor/_xilinx.py
Lines 1238 to 1241 in 590cba1
Which is then accessed here:
amaranth/amaranth/vendor/_xilinx.py
Line 1244 in 590cba1
But because of the
metaclass
ofSignal
what actually gets created is aView
:amaranth/amaranth/hdl/_ast.py
Lines 1941 to 1946 in 590cba1
The text was updated successfully, but these errors were encountered: