日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Xilinx IP解析之Processor System Reset v5.0

發布時間:2025/3/13 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Xilinx IP解析之Processor System Reset v5.0 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一. IP概述

可參考Xilinx官網Processor System Reset Module概述,

以下翻譯自官網此IP的概述。

產品描述:

Xilinx處理器系統復位模塊允許客戶通過設置某些參數來啟用/禁用功能,從而根據自己的應用來定制設計。

主要功能和優勢:

  • 使異步外部復位(External Reset)信號與時鐘同步
  • 使異步輔助復位(Auxillary Reset)信號與時鐘同步
  • 可選外部/輔助復位信號是低電平有效還是高電平有效
  • 可選復位信號需持續的最小脈寬
  • 可選負載均衡
  • DCM鎖定輸入
  • 生成上電復位信號

二. IP產品手冊

可參考Xilinx官網Processor System Reset Module文檔

下載PG164 - Processor System Reset Module v5.0 Product Guide (v5.0)

三. IP框圖與信號端口

IP模塊框圖:

名稱方向位寬有效電平說明
slowest_sync_clkI1-最慢同步時鐘
ext_reset_inI1可配置,
默認低電平有效
外部復位
aux_reset_inI1可配置,
默認低電平有效
輔助復位
mb_debug_sys_rstI1總線調試復位
dcm_lockedI1dcm的locked信號
mb_resetO1總線復位
bus_struct_resetO1 ~ 8,
默認1
總線高電平復位
peripheral_resetO1 ~ 16,
默認1
外設高電平復位
interconnect_aresetnO1 ~ 8,
默認1
互聯低電平復位
peripheral_aresetnO1 ~ 16,
默認1
外設低電平復位

四. IP配置

部分配置選項解釋:

外部/輔助復位有效寬度:配置外部復位信號有效電平需要持續幾個時鐘周期才被視為有效信號,才會有復位輸出。

五. IP仿真

5.1 仿真框圖

將proc_sys_reset IP核的端口信號引出,在testbench中進行賦值。

5.2 testbench

/** @Author : Xu Dakang* @Email : XudaKang_up@qq.com* @Date : 2021-05-11 22:12:28* @LastEditors : Xu Dakang* @LastEditTime : 2021-12-16 20:14:42* @Filename : procSysReset_tb.sv* @Description : 測試proc_sys_reset IP核的特性 */module procSysReset_tb();timeunit 1ns; timeprecision 10ps;logic clk; logic ext_reset_in; logic aux_reset_in; logic mb_debug_sys_rst; logic dcm_locked;logic mb_reset; logic [0:0]bus_struct_reset; logic [0:0]peripheral_reset; logic [0:0]interconnect_aresetn; logic [0:0]peripheral_aresetn;PrcoSysReset_system_wrapper PrcoSysReset_system_wrapper_inst(.*);// 生成時鐘 localparam CLKT = 4; initial beginclk = 0;forever #(CLKT / 2) clk = ~clk; endint cnt; always_ff @(posedge clk) begincnt <= cnt + 1; endlocalparam EXT_RESET_WIDTH = 4; localparam N = 100;initial beginext_reset_in = 1;aux_reset_in = 1;mb_debug_sys_rst = 0;dcm_locked = 1;#(CLKT * N)ext_reset_in = 0;aux_reset_in = 1;mb_debug_sys_rst = 0;#(CLKT * EXT_RESET_WIDTH) ext_reset_in = 1;#(CLKT * EXT_RESET_WIDTH) ext_reset_in = 0;#(CLKT * EXT_RESET_WIDTH) ext_reset_in = 1;#(CLKT * 100) $stop; endendmodule

5.3 仿真波形

仿真條件1:在testbench中設置dcm_locked=0,觀察到此IP核輸出的復位值會一直有效,并且不會響應輸入。

仿真條件2:N = 100,再使得ext_reset_in = 0(持續4個周期),dcm_locked = 1。波形如下圖所示。

在初始階段,輸入為不定態X(或是非有效電平,效果一樣),此時所有復位輸出均有效。

46個時鐘周期后,bus_struct_rst和interconnect_areset最先失效

再過16個時鐘周期,peripheral_reset與peripheral_areset接著失效

再過16個時鐘周期,mb_reset最后失效

然后,等到ext_reset_in = 0(持續4個周期),此時IP應檢測到外部輸入復位有效

經過6個時鐘周期后,各復位輸出開始有效。

32個時鐘周期后,bus_struct_rst和interconnect_areset最先失效。

再過16個時鐘周期,peripheral_reset與peripheral_areset接著失效。

再過16個時鐘周期,mb_reset最后失效。

可見,5個輸出信號的相對關系是確定的,如下:

bus_struct_rst與interconnect_areset持續32個周期有效后同時最先失效 -> 過16周期,peripheral_reset與peripheral_areset失效 -> 再過16周期,mb_reset最后失效

這正如IP產品手冊第9頁(下圖)所說明的。

仿真條件3:N = 36,再使得ext_reset_in = 0(持續4個周期),dcm_locked = 1。波形如下圖所示。

從仿真條件2,我們知道初始此IP有46個周期輸出有效的復位信號,但這46個周期不是固定的,經過多次仿真發現,前4個時鐘周期,此IP不檢測復位信號,到第5個時鐘周期,IP開始檢測復位信號。所以在這里,初始經過N=36個周期后,外部復位開始低電平有效,此時初始復位輸出將持續(46 + N - 4 = 78)個時鐘周期。當N = 5 時,初始復位輸出將持續(46 + 5 - 1 = 47)個時鐘周期,以此類推。

仿真條件4:N = 37,再使得ext_reset_in = 0(持續4個周期),dcm_locked = 1。波形如下圖所示。

可見,N = 37 時,bus和interconnect這個兩個輸出會出現(37 - 36 = 1)個時鐘周期的無效段,另外三個輸出則沒有。以此類推 N = 100,bus和interconnect輸出無效段會持續 100 - 36 = 64個時鐘周期的無效段,此特性在仿真條件1中也可以得到印證。

仿真條件5:N = 37 + 16 + 16,再使得ext_reset_in = 0(持續4個周期),dcm_locked = 1。波形如下圖所示。

此條件下,5個輸出均出現無效段,其中,bus_struct_reset無效段持續一個時鐘周期。

總結一下:此IP在初始階段默認輸出復位信號,信號寬度默認為46個時鐘周期,如果在N(范圍4~36)個時鐘周期內,輸入的復位有效,則輸出復位信號寬度會延長N-4個時鐘周期。超過36個時鐘周期還沒有有效的復位輸入,輸出復位信號會部分失效,超過36+16+16 = 68個周期沒有有效復位輸入,輸出復位信號會全部失效。此時初始階段結束,IP進入等待輸入復位信號有效的階段

此后,IP檢測到外部輸入復位有效,經過6個時鐘周期后,各復位輸出開始有效。

32+X(這一段不確定,與輸入復位信號有效寬度和有效次數有關)個時鐘周期后,bus_struct_rst和interconnect_areset最先失效。

再過16個時鐘周期,peripheral_reset與peripheral_areset接著失效。

再過16個時鐘周期,mb_reset最后失效。

手冊中,展示了ext_reset_in作為輸入時,各輸出的時序圖,如下圖所示。

另外,特別注意dcm_locked信號,此信號為低時表示時鐘還未穩定,此時reset IP的復位輸出全部有效,只有當dcm_locked信號為高時,reset IP的輸出才受外部復位輸入與輔助復位輸入的控制。

5.4 仿真工程分享

ProcSysResetV5.0 Xilinx IP解析 Vivado 2021.2工程.7z

鏈接:https://pan.baidu.com/s/1Z-bNBqHFauf7kPDd1ysS3A
提取碼:ttfy

六. IP性能

對于7系列FPGA,性能最低的A7此IP核頻率也可到508MHz。K7和V7可到704MHz

七. IP使用示例

通常在Block Design中使用此復位IP,輸出作為自定義模塊,AXI總線等的復位信號。外部輸入可自行給定,特別的對于ZYNQ,外部輸入通常為PS側提供的FCLK_RESET_N信號。如下圖所示。

八. 總結

此IP使用簡單,用作復位時,在不提供外部復位輸入時,還是可以提供初始復位輸出信號。使用時需要注意的是ext_reset_in和aux_reset_in的有效寬度必須大于設定的寬度才能被識別為有效復位輸入,另外,各輸出之間有固定的時序關系,此時序關系的目的是讓不同功能模塊開始工作的時間不同,使用時需要合理使用各輸出。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Xilinx IP解析之Processor System Reset v5.0的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。