library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity blink is
port (
clk : in std_logic;
inp : in std_logic_vector(63 downto 0);
ou : out std_logic_vector(63 downto 0)
);
end blink;
architecture RTL of blink is
signal internal : std_logic;
begin
process(clk) begin
if rising_edge(clk) then
internal <= inp(0);
if (internal = '1') then
ou <= inp;
else
ou <= (others => '0');
end if;
-- n
end if;
end process;
end RTL;
you can see that the name of signal internal whuch is internal signa, in the blink.cpp the name is given is different what is assign in vhdl code
i_auto_24_ghdl_2e_cc_3a_806_3a_import__module_24_2
This looks like an issue with the VHDL plugin. I see you have already opened an issue there as well: ghdl/ghdl-yosys-plugin#196 I am closing this one, we can reopen if it turns out Yosys is at fault.
Version
git clone https://github.com/ghdl/ghdl-yosys-plugin.git
On which OS did this happen?
Linux
Reproduction Steps
the command i use
ghdl analyze blink_basic.vhdl
/usr/local/bin/yosys -m ghdl -p "ghdl blink; write_cxxrtl blink.cpp
the blink.cpp genrated
you can see that the name of signal internal whuch is internal signa, in the blink.cpp the name is given is different what is assign in vhdl code
i_auto_24_ghdl_2e_cc_3a_806_3a_import__module_24_2
how can I fix this
Expected Behavior
Assign similar name as in vhdl code
Actual Behavior
assign random name