那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FPGA編程技巧系列之輸入輸出偏移約束詳解

FPGA研究院 ? 來源:FPGA研究院 ? 2023-02-15 11:52 ? 次閱讀

1. 偏移約束的作用

偏移約束(Offset Constraint)用來定義一個外部時鐘引腳(Pad)和數(shù)據(jù)輸入輸出引腳之間的時序關(guān)系,這種時序關(guān)系也被稱為器件上的Pad-to-Setup或Clock-to-Out路徑。這些約束對與外部元器件相連的接口十分重要,在這里,需要解釋兩個術(shù)語:

Pad-to-Setup:也被稱為OFFSET IN BEFORE約束,是用來保證外部輸入時鐘和外部輸入數(shù)據(jù)的時序滿足FPGA內(nèi)部觸發(fā)器的建立時間要求的。如下圖TIN_BEFORE約束使得FPGA在進行DATA_IN和CLK_SYS布線時努力保證DATA_IN相對于CLK_SYS的延時小于TIN_BEFORE。

Clock-to-Out:也被稱為OFFSET OUT AFTER約束,是用來滿足下游器件建立保持(setup/hold)要求或輸出時鐘和數(shù)據(jù)之間時序要求的。

OFFSET IN BEFORE 或OFFSET OUT AFTER約束允許用戶指定外部輸入或輸出引腳相對于時鐘邊沿到內(nèi)部數(shù)據(jù)的延時。

4e62ba9e-ac4b-11ed-bfe3-dac502259ad0.jpg

1?1 輸入偏移約束時序參考圖

4e77acc4-ac4b-11ed-bfe3-dac502259ad0.jpg

1?2 輸出偏移約束時序參考圖

Xilinx FPGA有三個層次的約束:

Global OFFSET:為所有輸入或輸出指定相對某個特定時鐘的約束;

Group OFFSET:為一組輸入或者輸出指定相對驅(qū)動他們的時鐘的約束

Net-Specific OFFSET:為某個特定的輸入或者輸出指定相對其驅(qū)動時鐘的約束;

在進行約束的詳細講解之前,必須明確兩個概念:

建立時間setup time

指在觸發(fā)器始終上升沿到來之前,數(shù)據(jù)必須保持穩(wěn)定的時間,如果建立時間不夠,數(shù)據(jù)將不能被打入觸發(fā)器;

保持時間hold time

指觸發(fā)器的時鐘上升沿到來之后數(shù)據(jù)必須穩(wěn)定不變的時間,如果保持時間不夠,數(shù)據(jù)不能被打入觸發(fā)器;

4e8b3dd4-ac4b-11ed-bfe3-dac502259ad0.jpg

1?3 建立保持時間時序圖

2. OFFSET IN約束

OFFSET IN約束用來設(shè)定Pad-to-Setup時序要求。OFFSET IN是對數(shù)據(jù)時鐘關(guān)系的一種說明。它當(dāng)分析建立時間要求(data_delay+setup-clock_delay-clock_arrival要求滿足約束條件)的時候,需要考慮時鐘延時(clock delay)、時鐘邊沿(clock edge)、DLL/DCM引入的時鐘相位。

2.1. OFFSET IN BEFORE 約束

OFFSET IN BEFORE約束限定了數(shù)據(jù)從引腳傳播到同步元件并在同步元件建立起來的所需的時間。比如 “OFFSET = IN 2 ns BEFORE clock_pad”這個約束,限定數(shù)據(jù)必須在下一個時鐘邊沿到來之前2ns內(nèi)讀取,因此FPGA會規(guī)劃使得數(shù)據(jù)相對時鐘邊沿的超前2ns之內(nèi)。

4ea5c244-ac4b-11ed-bfe3-dac502259ad0.jpg

2?1 OFFSET IN BEFORE約束帶校準功能的電路

上圖FPGA在布線時會盡力去滿足如下不等式:

TData + TSetup - TClock 《= Toffset_IN_BEFORE;

2.1.1. VALID約束

OFFSET IN約束往往和VALID約束一起使用。OFFSET IN約束在建立時間分析中作為建立時間要求使用,而VALID約束在保持時間約束中作為保持時間要求使用。VALID約束指定了輸入數(shù)據(jù)的持續(xù)時間。在默認情況下,F(xiàn)PGA指定VALID和OFFSET的值相等,也即FPGA在默認情況下認為保持時間為0。

4ebc1224-ac4b-11ed-bfe3-dac502259ad0.jpg

2?2 帶有VALID約束的輸入偏移約束

2.1.2. OFFSET IN約束的一個簡單例子

FPGA的分析工具在綜合時經(jīng)常會用到一個詞:Slack,即松弛時間,當(dāng)Slack》0時,該路徑設(shè)計滿足時序要求;當(dāng)Slack《0時,該路徑不滿足時序要求。

Slack = (Requirement - (Data Path - Clock Path - Clock Arrival))

4ee4f554-ac4b-11ed-bfe3-dac502259ad0.jpg

2?3 OFFSET IN的簡單例子時序

該約束為:

TIMESPEC TS_clock = PERIOD clock_grp 10 ns HIGH 50%;

OFFSET = IN 3 ns BEFORE clock;

4efdd8f8-ac4b-11ed-bfe3-dac502259ad0.jpg

2?4 OFFSET IN約束時序報告

從時序約束報告的Slack的值可以看出,Data不能被Clock成功打入觸發(fā)器FF0.

2.2. OFFSET IN AFTER約束

OFFSET IN AFTER和OFFSET IN BEFORE在本質(zhì)上是一樣的,只是形式上不一樣,其約束效果是完全一樣的。OFFSET IN AFTER的約束公司如下:

TData + TSetup - TClock 《= TPeriod – Toffset_IN_AFTER;

3. OFFSET OUT約束

OFFSET OUT約束用來定義clock-to-pad時序要求。OFFSET OUT約束是對外部clock-to-data的說明并且必須考慮clock_delay、clock edge和DLL/DCM時鐘相位等。

3.1. OFFSET OUT AFTER約束

OFFSET OUT AFTER約束定義了數(shù)據(jù)從同步元件傳播到管腳最長允許時間。可以形象地理解為時鐘邊沿到達器件邊界時數(shù)據(jù)離開器件邊界的時間。“OFFSET = OUT 2 ns AFTER clock_pad”約束意思是從FPGA數(shù)據(jù)端口傳輸?shù)较掠纹骷臄?shù)據(jù)在參考時鐘2ns之后一定可讀。

4f3d7e40-ac4b-11ed-bfe3-dac502259ad0.jpg

3?1 OFFSET OUT AFTER約束帶校準功能的電路

下面公式規(guī)定了數(shù)據(jù)時鐘的這種關(guān)系:

TQ + TClock2Out + TClock 《= Toffset_OUT_AFTER;

OFFSET OUT AFTER約束沿著參考時鐘路徑和數(shù)據(jù)路徑的最大延時不超過偏移值。

3.1.1. OFFSET OUT AFTER約束的一個簡單例子

同樣的,OFFSET OUT的Slack也定義了輸出約束的松弛時間:

Slack = (Requirement - (Clock Arrival + Clock Path + Data Path))

4f4bf6dc-ac4b-11ed-bfe3-dac502259ad0.jpg

3?2 OFFSET OUT 約束的簡單例子

其約束應(yīng)寫為:

TIMESPEC TS_clock = PERIOD clock_grp 10 ns HIGH 50%;

OFFSET = OUT 3 ns AFTER clock;

4f5d0814-ac4b-11ed-bfe3-dac502259ad0.jpg

3?3 OFFSET OUT 時序約束報告

時序報告中Slack=-0.865ns,不滿足時序約束要求。

3.2. OFFSET OUT BEFORE約束

同樣地,OFFSET OUT BEFORE和OFFSET OUT AFTER約束本質(zhì)上沒有什么不同,只是形式上的不一樣的,其約束效果完全一樣。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21798

    瀏覽量

    606065
  • 元器件
    +關(guān)注

    關(guān)注

    113

    文章

    4747

    瀏覽量

    92828
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    2003

    瀏覽量

    61353

原文標題:FPGA編程技巧系列之輸入輸出偏移約束詳解

文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Xilinx FPGA編程技巧常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧常用時序約束詳解,話不多說,上貨。 基本的約束
    發(fā)表于 04-12 17:39

    Xilinx FPGA編程技巧常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧常用時序約束詳解,話不多說,上貨。 基本的約束
    發(fā)表于 05-06 15:51

    用Cyclone FPGA實現(xiàn)雙倍數(shù)據(jù)率輸入輸出接口

    Cyclone 系列芯片是美國A ltera 公司推出的低價格、高容量現(xiàn)場可編程門陣列器件(FPGA ) , 本文概述了他的主要特點, 給出了其在與外部存儲器接口時用到的雙倍數(shù)據(jù)率輸入輸出
    發(fā)表于 06-27 16:27 ?45次下載
    用Cyclone <b class='flag-5'>FPGA</b>實現(xiàn)雙倍數(shù)據(jù)率<b class='flag-5'>輸入輸出</b>接口

    6.2 通用輸入輸出GPIO(神舟王207)

    此文檔是關(guān)于神舟王開發(fā)板輸入輸出GPIO的介紹和講解;
    發(fā)表于 05-25 10:01 ?2次下載

    FPGA開發(fā)之時序約束(周期約束

    時序約束可以使得布線的成功率的提高,減少ISE布局布線時間。這時候用到的全局約束就有周期約束偏移約束。周期
    發(fā)表于 02-09 02:56 ?739次閱讀

    一文詳解FPGA編程技巧輸入輸出偏移約束

    偏移約束(Offset Constraint)用來定義一個外部時鐘引腳(Pad)和數(shù)據(jù)輸入輸出引腳之間的時序關(guān)系,這種時序關(guān)系也被稱為器件上的Pad-to-Setup或Clock-to-Out路徑這些
    的頭像 發(fā)表于 07-14 07:14 ?5559次閱讀
    一文<b class='flag-5'>詳解</b><b class='flag-5'>FPGA</b><b class='flag-5'>編程</b>技巧<b class='flag-5'>輸入輸出</b><b class='flag-5'>偏移</b><b class='flag-5'>約束</b>

    添加時序約束的技巧分析

    。 在添加全局時序約束時,需要根據(jù)時鐘頻率劃分不同的時鐘域,添加各自的周期約束;然后對輸入輸出端口信號添加偏移約束,對片內(nèi)邏輯添加附加
    發(fā)表于 11-25 09:14 ?2621次閱讀

    XD和XL系列編程控制器的規(guī)格參數(shù)和輸入輸出接線及運行維護的說明

    本手冊涉及XD/XL系列編程控制器的選型、系統(tǒng)構(gòu)成,主要介紹XD/XL系列編程控制器的基本單元的規(guī)格參數(shù)、輸入輸出接線、運行維護等。
    發(fā)表于 12-12 15:01 ?4次下載
    XD和XL<b class='flag-5'>系列</b>可<b class='flag-5'>編程</b>控制器的規(guī)格參數(shù)和<b class='flag-5'>輸入輸出</b>接線及運行維護的說明

    nRF24LE1低功耗應(yīng)用詳解輸入輸出口設(shè)計

    關(guān)鍵詞:nRF24LE1 如需詳細資料,請與我聯(lián)系。 無線世界,應(yīng)用無限 nRF24LE1低功耗應(yīng)用詳解輸入輸出口設(shè)計.jpg(79.65 KB, 下載次數(shù): 39) 2012-4-19 16:12:46 上傳 下載次數(shù): 3
    發(fā)表于 02-27 14:05 ?422次閱讀
    nRF24LE1低功耗應(yīng)用<b class='flag-5'>詳解</b><b class='flag-5'>之</b><b class='flag-5'>輸入輸出</b>口設(shè)計

    STM32的8種GPIO輸入輸出模式

    STM32的8種GPIO輸入輸出模式參考文章“STM32的8種GPIO輸入輸出模式深入詳解”和“STM32中GPIO的8種工作模式!”輸入模式- 浮空
    發(fā)表于 11-26 17:06 ?16次下載
    STM32的8種GPIO<b class='flag-5'>輸入輸出</b>模式

    2、【STM32F0系列學(xué)習(xí)】—通用輸入輸出端口(GPIO)

    【STM32F0系列學(xué)習(xí)】—通用輸入輸出端口GPIO1、GPIO端口配置說明1、GPIO端口配置說明
    發(fā)表于 11-29 16:51 ?66次下載
    2、【STM32F0<b class='flag-5'>系列</b>學(xué)習(xí)】<b class='flag-5'>之</b>—通用<b class='flag-5'>輸入輸出</b>端口(GPIO)

    創(chuàng)建輸入輸出接口時序約束的竅門

    輸入輸出接口的約束,整理出了一套非常實用的InputDelay/Output Delay Constraints Language Templates。
    的頭像 發(fā)表于 08-02 09:54 ?2567次閱讀
    創(chuàng)建<b class='flag-5'>輸入輸出</b>接口時序<b class='flag-5'>約束</b>的竅門

    Logos系列FPGA輸入輸出接口(IO)用戶指南

    電子發(fā)燒友網(wǎng)站提供《Logos系列FPGA輸入輸出接口(IO)用戶指南.pdf》資料免費下載
    發(fā)表于 09-26 10:19 ?8次下載
    Logos<b class='flag-5'>系列</b><b class='flag-5'>FPGA</b><b class='flag-5'>輸入輸出</b>接口(IO)用戶指南

    PyTorch教程6.6.文件輸入輸出

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程6.6.文件輸入輸出.pdf》資料免費下載
    發(fā)表于 06-05 10:18 ?0次下載
    PyTorch教程6.6.<b class='flag-5'>之</b>文件<b class='flag-5'>輸入輸出</b>

    CW32通用輸入輸出端口詳解

    CW32通用輸入輸出端口詳解
    的頭像 發(fā)表于 10-30 17:33 ?1151次閱讀
    CW32通用<b class='flag-5'>輸入輸出</b>端口<b class='flag-5'>詳解</b>
    金矿百家乐的玩法技巧和规则 | qq百家乐网络平台| 威尼斯人娱乐城官方网址| 万豪娱乐| 网络百家乐官网现金游戏哪里的信誉好啊| 百家乐最常见的路子| 二八杠语音报牌器| 宾利百家乐官网游戏| 刀把状的房子做生意| 普通牌二八杠分析仪| 网上百家乐官网信誉度| 皇室百家乐娱乐城| 元游棋牌游戏大厅| 百家乐官网平台在线| 百家乐赌博娱乐| 国际环球娱乐| 德晋百家乐官网的玩法技巧和规则 | 现金百家乐代理| 联博娱乐| 新东泰百家乐官网的玩法技巧和规则| 全讯网高手世家| 百家乐官网打法内容介绍| 百家乐桌德州扑克桌| 真人棋牌游戏| 百家乐官网官网游戏| 威尼斯人娱乐城平台打不开| 新濠百家乐官网现金网| 百家乐必知技巧| 乐陵市| 百家乐赌法| 开心8娱乐城| 百家乐庄闲点数| 大发888真钱官网| 百家乐官网伴侣破解版| 上海二八杠分析仪| 百家乐官网赌博公司| 桐城太阳城招聘| 百家乐官网存1000送| 全讯网777| 百家乐官网路纸下| 大发888娱乐游戏下载 客户端|