Altera_Forum
Honored Contributor
8 years agoRS232 UART not generated correctly in Quartus 17.0
I have a Quartus 16.1 project where I generated an "RS232 UART" from the IP Catalog and it worked fine. When I try to do this in a newer Quartus 17.0 project, it does not work correctly. I did a diff between the old and new generated core and the source of the problem is Quartus 17.0 is not using the correct clock to compute divisors.
In both cases I generate it with Avalon Type = streaming, Baud = 115,200, parity none, Data = 8, Stop = 1: https://alteraforum.com/forum/attachment.php?attachmentid=13702&stc=1 In Quartus 16.1 it generated fine, but now gives an error about the clock having to be specified at generate time: https://alteraforum.com/forum/attachment.php?attachmentid=13703&stc=1 It is not at all clear where Quartus 16.1 grabbed the clock frequency from. The parameter editor does not have a value for it. However, it inserted a line in the UART.qsys file: <parameter name="clk_rate" value = "50000000" /> that is not present in the 17.0 version: https://alteraforum.com/forum/attachment.php?attachmentid=13704&stc=1 This caused the file UART\synthesis\submodules\uart_rs232_0.v to have 0 values for certain counters: https://alteraforum.com/forum/attachment.php?attachmentid=13705&stc=1 When I manually edit these to be correct, the UART functions again. But something happened in 17.0 to make this not generate correctly. Again, it's not at all clear where the core gets the clock frequency from in the first place (in 16.1 or 17.0). I always seem to have trouble uploading images. They always appear tiny.