Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17252 Discusiones

Error 10346: Formal port or parameter "write" must have a actual or default value

Altera_Forum
Colaborador Distinguido II
10.891 Vistas

i use quartus ii for vhdl compile work, and met this error message: error 10346: formal port or parameter "write" must have a actual or default value 

as the "write" is the port of a sram, i don't know why this port needs actual or default value. 

please help me to debug this issue, thanks!
0 kudos
7 Respuestas
Altera_Forum
Colaborador Distinguido II
6.810 Vistas

usually this error happens when the component has a generic clause: 

 

entity blablabla... 

generic( width := 8 ) -- default value 

port( 

... 

 

Please, post the code better understanding of the error.
Altera_Forum
Colaborador Distinguido II
6.810 Vistas

Thanks for your kindly reply. 

But the "write" is a 1-bit port! this port doesn't have any parameter defination in the design! 

 

As the design shows bellow: 

component syncram 

generic (tech : integer := 0; abits : integer := 6; dbits : integer := 8; 

testen : integer := 0); 

port ( 

clk : in std_ulogic; 

address : in std_logic_vector((abits -1) downto 0); 

datain : in std_logic_vector((dbits -1) downto 0); 

dataout : out std_logic_vector((dbits -1) downto 0); 

enable : in std_ulogic; 

write : in std_ulogic; 

testin : in std_logic_vector(TESTIN_WIDTH-1 downto 0) := testin_none); 

end component;
Altera_Forum
Colaborador Distinguido II
6.810 Vistas

When you instantiate the component. Did you connect that port to any signal? 

 

In same line of code you have. 

 

toto_unit : syncram.... 

port map(.... 

 

write => some_signal, -- did you place this connection?
Altera_Forum
Colaborador Distinguido II
6.810 Vistas

yes, they are some others signals need to be assign by the write. 

For example: 

xwrite <= write; 

 

Does this cause the error?
Altera_Forum
Colaborador Distinguido II
6.810 Vistas

The kind of error suggest that you omitted to connect the input "write" to the circuit. Can you post the code where u instantiated the component?

Altera_Forum
Colaborador Distinguido II
6.810 Vistas

It sounds like you forgot to connect the write port. All ports of mode in must be connected to something, even if it is '0' or '1'. They cannot be left open.

Altera_Forum
Colaborador Distinguido II
6.810 Vistas

 

--- Quote Start ---  

It sounds like you forgot to connect the write port. All ports of mode in must be connected to something, even if it is '0' or '1'. They cannot be left open. 

--- Quote End ---  

 

 

Problem solved, Thanks!
Responder