Vivado中Tri_mode_ethernet_mac的時序約束、分析、調整——(一)時序約束的基本概念

1、基本概念

推薦閱讀,Ally Zhou編寫的《Vivado使用誤區與進階》系列文章,熟悉基本概念、tcl語句的使用。

《Vivado使用誤區與進階》電子書開放下載!!

2、Vivado中的語法例程

1)語法例程

約束的語句可以參考vivado中的,注意其中的rise_data是指由上升沿采樣的數據,默認由fall發出。實際使用時也可以由rise發出rise_data,并由rise采樣,比如以太網MAC IP中的用法。

??

2)input約束

input delay:外部時鐘發送沿到數據頭的最大/最小延時;

  • 中心對齊DDR:

采樣時,時鐘沿直接采樣自己下方的數據即可。由發送方調整好對齊關系。

  • Edge-Aligned(clock directly to FF)DDR

? ? ? 邊沿對齊,時鐘邊沿和數據邊沿同時變化(數據不是該時鐘沿發出的,而是上一個沿發出的),采樣時可對clk延時1/4周期時間完成中心對齊采樣。

?

  • Edge-Aligned(clock with MMCM)DDR

注意此處的MMCM是指phase shift mode采用waveform ,而不是latency模式。采用latency模式的時的約束同clock directly to FF。

3)output約束

output delay:數據頭到達采樣沿的最大最小時間(這是下游器件對FPGA管腳處的時序要求)。不論是skew based還是setup/hold based,都是告知FPGA數據頭/尾到采樣沿需要的時間max/min。

3、時序分析

? ? input,output中的-max用于分析setup,-min用于分析hold。vivado中對output做時序分析的點在FPGA的輸出管腳端,即在此處比大小slack。

4、forwarded clock

源同步輸出時的clock處理方式用ODDR轉發,相位不翻轉180°時用如下源語及約束,反相180時.D1(1'b0),.D2(1'b1),時鐘約束中增加-invert。

? ?ODDRE1 #(
? ? ? .IS_C_INVERTED(1'b0), ? ? ? ? ? // Optional inversion for C
? ? ? .IS_D1_INVERTED(1'b0), ? ? ? ? ?// Unsupported, do not use
? ? ? .IS_D2_INVERTED(1'b0), ? ? ? ? ?// Unsupported, do not use
? ? ? .SIM_DEVICE("ULTRASCALE_PLUS"), // Set the device version for simulation functionality (ULTRASCALE,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // ULTRASCALE_PLUS, ULTRASCALE_PLUS_ES1, ULTRASCALE_PLUS_ES2)
? ? ? .SRVAL(1'b0) ? ? ? ? ? ? ? ? ? ?// Initializes the ODDRE1 Flip-Flops to the specified value (1'b0, 1'b1)
? ?)
? ?ODDRE1_clk (
? ? ? .Q(O_src_clk), ? // 1-bit output: Data output to IOB
? ? ? .C(W_rsc_clk), ? // 1-bit input: High-speed clock input
? ? ? .D1(1'b1), // 1'b1 -same with clk,1'b0 -invert to clk
? ? ? .D2(1'b0), // 1'b0 -same with clk,1'b1 -invert to clk
? ? ? .SR(!I_rst_n) ?// 1-bit input: Active-High Async Reset
? ?);?

create_generated_clock -name O_src_clk -source [get_pins clk_wiz_0_inst/clk_out1] -multiply_by 1 [get_ports O_src_clk]

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/65695.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/65695.shtml
英文地址,請注明出處:http://en.pswp.cn/web/65695.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于Spring Boot的城市垃圾分類管理系統設計與實現(LW+源碼+講解)

專注于大學生項目實戰開發,講解,畢業答疑輔導,歡迎高校老師/同行前輩交流合作?。 技術范圍:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容:…

springboot整合admin

1. 添加依賴 首先&#xff0c;在你的admin服務端pom.xml文件中添加Spring Boot Admin的依賴&#xff1a; <dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-starter-server</artifactId><version>2.5.4<…

【YOLOv8雜草作物目標檢測】

YOLOv8雜草目標檢測 算法介紹模型和數據集下載 算法介紹 YOLOv8在禾本科雜草目標檢測方面有顯著的應用和效果。以下是一些關鍵信息的總結&#xff1a; 農作物幼苗與雜草檢測系統&#xff1a;基于YOLOv8深度學習框架&#xff0c;通過2822張圖片訓練了一個目標檢測模型&#xff…

比亞迪夏直插家用MPV腹地,“迪王”開啟全面銷冠新征程

文/王俁祺 導語&#xff1a;比亞迪前腳剛收獲2024年的全面成功&#xff0c;后腳立刻就開始布局2025年的產品矩陣了。比亞迪夏的橫空出世&#xff0c;看來家用MPV市場也要感受“迪王”的恐怖如斯了。 家用MPV市場的“意外之喜” 1月8日&#xff0c;比亞迪夏終于在萬眾矚目之下…

左值引用(Lvalue Reference)和右值引用(Rvalue Reference)詳解

左值引用&#xff08;Lvalue Reference&#xff09;和右值引用&#xff08;Rvalue Reference&#xff09;詳解 文章目錄 左值引用&#xff08;Lvalue Reference&#xff09;和右值引用&#xff08;Rvalue Reference&#xff09;詳解1. 什么是左值和右值&#xff1f;左值&#x…

探索數據存儲的奧秘:深入理解B樹與B+樹

key value 類型的數據紅黑樹&#xff08;最優二叉樹&#xff0c;內存最優&#xff09;&#xff0c;時間復雜度&#xff1a;O&#xff08;logn&#xff09;,調整方便&#xff1b;一個結點分出兩個叉B樹一個節點可以分出很多叉數據量相等的條件下&#xff1a;紅黑樹的層數很高&am…

聯邦大語言模型典型系統: FATE - LLM、FedLLM、FederatedScope - LLM、PrimiHub

聯邦大語言模型典型系統: FATE - LLM、FedLLM、FederatedScope - LLM、PrimiHub 目錄 聯邦大語言模型典型系統: FATE - LLM、FedLLM、FederatedScope - LLM、PrimiHubPEFT 技術及簡單舉例PEFT 技術代碼實現提示詞工程不僅僅在聊天對話框實現,還可以再代碼中實現聯邦大語言模…

L1G5000 XTuner 微調個人小助手認知

使用 XTuner 微調 InternLM2-Chat-7B 實現自己的小助手認知 1 環境配置與數據準備步驟 0. 使用 conda 先構建一個 Python-3.10 的虛擬環境步驟 1. 安裝 XTuner 修改提供的數據步驟 0. 創建一個新的文件夾用于存儲微調數據步驟 1. 創建修改腳本步驟 2. 執行腳本步驟 3. 查看數據…

網絡協議安全的攻擊手法

1.使用SYN Flood泛洪攻擊&#xff1a; SYN Flood(半開放攻擊)是最經典的ddos攻擊之一&#xff0c;他利用了TCP協議的三次握手機制&#xff0c;攻擊者通常利用工具或控制僵尸主機向服務器發送海量的變源端口的TCP SYN報文&#xff0c;服務器響應了這些報文后就會生成大量的半連…

人工智能學習路線全鏈路解析

一、基礎準備階段&#xff08;預計 2-3 個月&#xff09; &#xff08;一&#xff09;數學知識鞏固與深化 線性代數&#xff08;約 1 個月&#xff09;&#xff1a; 矩陣基礎&#xff1a;回顧矩陣的定義、表示方法、矩陣的基本運算&#xff08;加法、減法、乘法&#xff09;&…

Redis 安裝與 Spring Boot 集成指南

安裝 Redis 和將其與 Spring Boot 應用集成是構建高效緩存解決方案的常見步驟。以下是詳細的指南&#xff0c;幫助你在本地環境中安裝 Redis&#xff0c;并在 Spring Boot 項目中配置和使用它。 1. 安裝 Redis Windows 環境 Redis 官方并不直接支持 Windows&#xff0c;但你…

3d打印材料是塑料么?pla petg

3D 打印材料不僅限于塑料&#xff0c;但塑料確實是最常見的材料類型之一。以下是一些常用的3D打印塑料材料的介紹&#xff1a; 1. PLA&#xff08;聚乳酸&#xff09; ? 特點&#xff1a;可生物降解&#xff0c;環保&#xff0c;容易打印&#xff0c;表面光滑。 ? 適用…

linux-磁盤io性能指標!

一. 引文&#xff1a; 平時查看或者監控磁盤io時&#xff0c;基本上都是用的現成的工具/腳本&#xff0c; 對其了解的還是很淺&#xff0c;特參考一些資料整理了下&#xff0c;留個隨筆。 二.磁盤I/O性能指標: 磁盤 I/O 是 Unix/Linux 系統管理中一個非常重要的組成部分。磁盤…

Excel 技巧08 - 如何計算某類(比如紅色背景色)單元格的總和? (★)

本文講了如何在Excel中計算某類(比如紅色背景色)單元格的總和。 1&#xff0c;如何計算某類(比如紅色背景色)單元格的總和&#xff1f; 技巧就是先把它們給標記出來&#xff0c;然后就好統計了。 那么如何找出來呢&#xff1f; 對&#xff0c;就是通過紅色。 按下Ctrl F 點…

awr報告無法生成:常見分析手段

awr報告無法生成:常見分析手段 STATISTICS_LEVEL和OPEN_MODEAWR快照是否能自動生成?AWR快照能否手動生成?日志有無ORA-12751或ORA-32701報錯?MMON進程是否被掛起?排查數據庫隱藏參數分析快照生成錯誤信息分析AWR Snapshot Tracing分析AWR Table Flush是否超時STATISTICS_L…

uni-app無限級樹形組件簡單實現

因為項目一些數據需要樹形展示&#xff0c;但是官網組件沒有。現在簡單封裝一個組件在app中使用&#xff0c;可以無線嵌套&#xff0c;展開&#xff0c;收縮&#xff0c;獲取子節點數據等。 簡單效果 組件TreeData <template><view class"tree"><te…

互聯網架構變遷:從 TCP/IP “呼叫” 到 NDN “內容分發” 的逐浪之旅

本文將給出關于互聯網架構演進的一個不同視角。回顧一下互聯網的核心理論基礎產生的背景&#xff1a; 左邊是典型的集中控制通信網絡&#xff0c;很容易被摧毀&#xff0c;而右邊的網絡則沒有單點問題&#xff0c;換句話說它很難被全部摧毀&#xff0c;與此同時&#xff0c;分…

移遠BC28_opencpu方案_pin腳分配

先上圖&#xff0c;BC28模塊的pin腳如圖所示&#xff1a; 下面看看GPIO的復用管腳 然后我自己整理了一份完整的pin功能列表

Eureka緩存機制

一、Eureka的CAP特性 Eureka是一個AP系統&#xff0c;它優先保證可用性&#xff08;A&#xff09;和分區容錯性&#xff08;P&#xff09;&#xff0c;而不保證強一致性&#xff08;C&#xff09;。這種設計使得Eureka在分布式系統中能夠應對各種故障和分區情況&#xff0c;保…

2025年第三屆“華數杯”國際賽A題解題思路與代碼(Python版)

游泳競技策略優化模型代碼詳解 第一題&#xff1a;速度優化模型 在這一部分&#xff0c;我們將詳細解析如何通過數學建模來優化游泳運動員在不同距離比賽中的速度分配策略。 1. 模型概述 我們的模型主要包含三個核心文件&#xff1a; speed_optimization.py: 速度優化的核…