• PS端时钟供给PL使用的问题


       ZYNQ PS端最多可以分配四个时钟供给PL端使用,通过PS端供给PL使用的时钟,在最后添加约束文件时,只需要对功能I/O进行约束,

    不需要再关注时钟约束的问题。

     一个简单的例子:PS产生一个100MHz的时钟,供给PL使用。利用该时钟,使PL端两颗led闪烁

    module led_tst(
            led_o
    
        );
        output [1:0] led_o;
        
        reg       [25:0] clk_cnt = 26'd0; 
        reg       [1:0]  led_o_r = 2'd0;
        wire          clk;
        
        always @(posedge clk)begin 
            if(clk_cnt == 26'd49999999) begin 
                clk_cnt <= 'd0;
                led_o_r <= ~led_o_r;
            end 
            else begin 
                clk_cnt <= clk_cnt + 1'b1;
                led_o_r <= led_o_r;
            end 
        end
         
        system_wrapper    led_wrapper
        (
           .FCLK_CLK0_0(clk)
        );
            
            
            
        assign     led_o = led_o_r;
            
    endmodule

      需要注意的是,时钟是由PS端产生的,PS端的ARM必须运行,才能供给PL时钟信号。直接将bit流文件下载到ZYNQ中,PS端不会工作。

    因此,需要将bit流文件导入到SDK端。在SDK中新建一个empty prj 。最后将文件下载到ZYNQ中即可正常运行

  • 相关阅读:
    一转眼,十年间~~~
    怎样安装PHPnow,并开始使用?
    js的事件类型
    ie兼容性问题 前传
    外层div撑不开的解决办法
    CSS3 新属性搜罗整理
    webApp学习之路
    花式使用CSS3 transition
    20种新颖的按钮风格和效果【附源码】
    酷酷的文本效果
  • 原文地址:https://www.cnblogs.com/pangshian/p/13357433.html
Copyright © 2020-2023  润新知