Zynq注(6):PL精度タイマ割り込み

  ソフトウェアタイマ割り込みは正確PL-PSの完全な正確なタイミングを中断することによって中断することができ、エッジトリガの位置を制御することは困難です。PL割り込みVerilogコードによって生成された非常に密接に統合処理PS-PLは、その強さに遊びます。

 

、PL下タイマ割り込み

1.実際の要件

 

①エッジ割り込みを上昇; 
②1US未満ではない、高レベルの幅; 
;③割込みカウンタは、200MHzのクロックされ
3MSと:④2つの割り込みあり0 0.5ミリ秒

 

2.Verilog割り込みコード

1  // *********************************************** ***************************
 2  // ***名前:genintr3ms05ms.v
 3  // ***著者:xianyu_FPGA
 4  // ***ブログ:https://www.cnblogs.com/xianyufpga/ 
5  // ***日:2019年8月10日
 6  // ***説明:3MSと0.5msの遅延精度
 7  // ** ************************************************** ********************** 
。8  
。9  
10  Module1標準genintr3ms05ms
 。11  // ================== <ポート> ================================================= = 
12  13 // INPUT ----------------------------------------- 
14  INPUT   ワイヤー                  CLK、/ / クロック、200MHzの
15  INPUT   ワイヤー                  RSTは、// アクティブハイリセット
 16  // 出力を----------------------------- ----------- 
17  の出力 REGの                   intr3ms、// 3MS割り込み
18  出力の REGの                   intr05ms               // 0.5msで割り込み
19  );
 20  //================== <パラメータ> ============================= ===================== 
21です 。パラメータ CNT3MS_END = 600000             ;
 22は、 パラメータ CNT05MS_END = 100000             ;
 23れる パラメータ PULSEW = 200である                ; //は、高いメンテナンス時間中断
 24  @ ================== <信号> ============================= ===================== 
25  REG   [ 23である0 ] cnt3ms;
 26は、 ワイヤ                        add_cnt3ms;
 27  ワイヤ                        end_cnt3ms;
28  REG   [ 230 ] cnt05ms。
29  ワイヤ                        add_cnt05ms。
30  ワイヤ                        end_cnt05ms。
31  
32  // ============================================== ============================
 33個の // == 0.5msの延时
 34  // ========== ================================================== ============== 
35  常に @(posedgeの CLK)開始
36      場合(RST)
37          cnt3ms <= 0 38      他の 場合(add_cnt3ms)は開始
39          であれば(end_cnt3ms)
 40              cnt3ms <= 0 41          
42              cnt3ms <= cnt3ms + 1 43      端部
44  端部
45  
46  アサイン add_cnt3ms = 1 図47は、 割り当て end_cnt3ms = add_cnt3ms && cnt3ms == CNT3MS_END- 1 48  
49  常に @(posedgeの CLK)開始
50     もし(RST)開始
51          intr3ms <= 0 52      端部
53      他の 場合(end_cnt3ms)が始まる
54          intr3ms <= 1 55      端部
56      他の 場合(add_cnt3ms && cnt3ms == PULSEW- 1開始
57          intr3ms <= 0 58      終了
59  終了
60  
61  // ========================================== ================================
 62  // == 3msの延时
 63  //================================================== ======================== 
64  常に @(posedgeの CLK)開始
65      であれば(RST)
 66          cnt05ms <= 0 67      他に あれば(add_cnt05ms)が始まる
68          であれば(end_cnt05ms)
 69              cnt05ms <= 0 ;
70          
71              cnt05ms <= cnt05ms + 1 72      端部
73  端部
74  
75  アサイン add_cnt05ms = 1 76 割り当て add_cnt05ms && cnt05ms == CNT05MS_END- end_cnt05msの= 1 ;
77  
78  常に @(posedgeの CLK)開始
79を     場合(RST)開始
80          intr05msを<= 0 81      端部
82      他の 場合(end_cnt05ms)が始まる
83          intr05ms <= 1 84      端部
85      他の 場合(add_cnt05ms && cnt05ms == PULSEW- 1開始
86          intr05ms <= 0 87      終了
88  終了
89  
90  
91  
92  ENDMODULE

 

プライベートIPにカプセル化3.PL中断

...

二、のZynqのハードウェア割り込みの使用状況

...

 

おすすめ

転載: www.cnblogs.com/xianyufpga/p/11442211.html