使用vcs、vivado仿真了e203+helloworld例程。这个例程的功能是通过UART外设,以115200波特率,打印一堆信息,这已经上板测试过了。但是问题来了,我查看了仿真及RTL代码,始终没有看到UART外设打印的信息是如何由仿真器终端输出的。仿真阶段,软件中的printf信息,理应只能在UART Tx端口观察到波形变化。但是,由上图可知,仿真器终端居然能显示printf信息。这到底是怎么实现的?
verilog中的控制终端打印函数不是printf,而是fwrite系统函数
在uart_tx里面,提供fwrite函数实现的打印