FPGA 基础总结
1、关于signed
Verilog中的signed类型加减乘除,不能和usigned类型混用。
Verilog中的signed类型除2^n不要用“/”,但unsigned 类型可以,且消耗资源少。
$unsigned() 函数 并不改变数值内容,只改变了形式,如下:
参考:
https://xilinx.eetrend.com/blog/2023/100576242.html
https://blog.csdn.net/szsfate/article/details/107501893
2、关于IP核,乘法,除法等,一般输入变量的位宽和设置的不同会出错,如果位宽不够,需要手动补齐。
mult_gen_deadtime mult_gen_deadtime1 (
.CLK (clk_200 ), // input wire CLK
.A ({5'd0,deadtime_phase_in }), // input wire [15 : 0] A
.B (8'd180 ),
.CE (pwm_en ), // input wire CE,Active high Clock Enable
.SCLR (!rst_n ), // input wire SCLR
.P (phase_sub2 ) // output wire [23 : 0] P
);