查看: 1237|回复: 0

[评测分享] 【ALINX AXU2CGB试用】实时降温(一)

[复制链接]

该用户从未签到

发表于 2021-8-3 21:24:21 | 显示全部楼层 |阅读模式
分享到:
1.总体目标简介
由于该板卡在运行的时候温度较高,因此详设计一个实时降温功能,能够根据CPU的温度,并利用小风扇对系统降温。另外这个系统是基于深度学习加速系统,深度学习推理计算计算量较大,功耗也较高,如果风扇直接上最高转速,在普通休眠状态又比较浪费。
之前在ALINX淘宝了个小风扇,采取PWM控制方式对其进行风速调节,调节的指标是温度,采取PID算法。
2.硬件工程设计
首先在搭载了DPU以及UART的工程上搭建硬件工程,这里采取axi-lite进行自定义ip,并且在axi-lite中添加使用寄存器控制的PWM模块,这个与ALINX提供的例程类似。PWM的Verilog代码如下。
module PWM(
    input       clk,
    input       rst_n,
    input [31:0]fre_set,
    input [31:0]wav_set,
    output      PWM_o
);
reg [31:0]fre_cnt;
always @(posedge clk)begin
    if(rst_n==1'b0)begin
        fre_cnt <=32'd0;
    end
    else begin
        if(fre_cnt<fre_set) begin
            fre_cnt <= fre_cnt+1'b1;
        end
        else begin
            fre_cnt<=32'd0;
        end
    end
end
assign PWM_o = (wav_set>fre_cnt);
endmodule
就只有占空比和频率两个值需要设定,也没有设计使能、极性等信号。最终的硬件工程如图所示。并在sdc文件中添加管脚,编译即可。需要注意的是,一定要先把M03那个接口给disable掉,免得后期编译DPU出错。
2021-08-01 22-29-03 的屏幕截图.png
                              
2.验证硬件工程
上述PWM硬件工程还需要验证可行性,免得上Linux系统之后一大堆问题,发现却是硬件上设计问题。首先到处xsa文件,具体如图。然后在vivado界面启动vitis,搭建平台工程和应用程序。平台工程只需要在搭建的时候选择上一步导出的xsa文件就可以,然后编译该平台。紧接着编写应用程序,也就是pwm的控制,为了明显的看出PWM的效果,这里编写了四路PWM控制器,三路LED,一路风扇,LED采取呼吸灯的效果。效果如视频所示。
风扇不太能看得到效果,LED较为明显。并编写sysmon的相关程序,在串口中打印出温度以及电压参数如下图,这是没上PWM风扇散热的温度,温度较高,因此需要设计降温系统。在console窗口显示了CPU的温度,也表明硬件工程设计合理。
2.png
加入风扇散热后:
3.png

回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条

手机版|小黑屋|与非网

GMT+8, 2024-11-23 10:13 , Processed in 0.124951 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.