From: Borge on
I'm using Ken Chapman's uart_tx in a Spartan3A design.

The HDL compler can't find the module/primitive, so I wonder if I did
everything right here.

What I did was the following:
- Download and unpack xapp223.zip from Xilinx
- Include uart_tx.EDN in my design, no problem
- Instantiate it in my code, copy/paste from Spartan3A demo source
"terminal.v"
- Compile, got error

I know the uart documentation says it's fit for any Virtex or Spartan-
II, but seeing that it works in the Spartan3A demo I should be able to
use it in my code on the same board.

Can you explain what went wrong here?

Thanks,
Børge


Here's my instantiation:
uart_tx uart_transmitter (
.data_in(outdata_uart),
.write_buffer(write_to_uart),
.reset_buffer(reset_local),
.en_16_x_baud(en_16_x_baud),
.serial_out(RS232_DCE_TXD),
.buffer_full(uart_buffer_full),
.buffer_half_full(),
.clk(clk_100)
);

Here's my comple error message:
=========================================================================
* Design Hierarchy
Analysis *
=========================================================================
ERROR:HDLCompilers:87 - "sources/implementation.v" line 346 Could not
find module/primitive 'uart_tx'
-->

From: mh on
Hi Borge

Place EDN files in the project directory and declare the instance as a
black box. To avoid this error of synthesis, Add a verilog file with
same module name and port list (and no RTL) followed by endmodule.

Hope it works
/MH











Borge wrote:
> I'm using Ken Chapman's uart_tx in a Spartan3A design.
>
> The HDL compler can't find the module/primitive, so I wonder if I did
> everything right here.
>
> What I did was the following:
> - Download and unpack xapp223.zip from Xilinx
> - Include uart_tx.EDN in my design, no problem
> - Instantiate it in my code, copy/paste from Spartan3A demo source
> "terminal.v"
> - Compile, got error
>
> I know the uart documentation says it's fit for any Virtex or Spartan-
> II, but seeing that it works in the Spartan3A demo I should be able to
> use it in my code on the same board.
>
> Can you explain what went wrong here?
>
> Thanks,
> Børge
>
>
> Here's my instantiation:
> uart_tx uart_transmitter (
> .data_in(outdata_uart),
> .write_buffer(write_to_uart),
> .reset_buffer(reset_local),
> .en_16_x_baud(en_16_x_baud),
> .serial_out(RS232_DCE_TXD),
> .buffer_full(uart_buffer_full),
> .buffer_half_full(),
> .clk(clk_100)
> );
>
> Here's my comple error message:
> =========================================================================
> * Design Hierarchy
> Analysis *
> =========================================================================
> ERROR:HDLCompilers:87 - "sources/implementation.v" line 346 Could not
> find module/primitive 'uart_tx'
> -->