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

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

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

FPGA設(shè)計(jì)中這兩種情形該怎么約束

FPGA技術(shù)驛站 ? 來源:FPGA技術(shù)驛站 ? 2023-09-07 09:47 ? 次閱讀

FPGA設(shè)計(jì)中,我們經(jīng)常會(huì)碰到這樣的情形:從快時(shí)鐘域到慢時(shí)鐘域完成位寬轉(zhuǎn)換,這時(shí),這兩個(gè)時(shí)鐘是同步的。例如:源時(shí)鐘是400MHz,數(shù)據(jù)位寬為4;目的時(shí)鐘為200MHz,數(shù)據(jù)位寬為8,這樣源時(shí)鐘域和目的時(shí)鐘域的吞吐率是一致的。這種位寬轉(zhuǎn)換可直接通過寄存器采樣實(shí)現(xiàn),時(shí)序關(guān)系如下圖所示。

wKgaomT5K7mANDKqAAAKJKhvKiQ648.png

圖中Source為源時(shí)鐘域(400MHz)4位數(shù)據(jù),L0代碼0號(hào)數(shù)據(jù)的低4位,H0代表0號(hào)數(shù)據(jù)的高4位,L1代表1號(hào)數(shù)據(jù)的低4位,H1代表1號(hào)數(shù)據(jù)的高4位,依此類推。Delay1為源時(shí)鐘域經(jīng)一級(jí)流水寄存器的輸出結(jié)果。Destination為目的時(shí)鐘域(200MHz)8位數(shù)據(jù)。

我們很容易搭建此電路,如下圖所示。圖中綠色計(jì)數(shù)器為400MHz時(shí)鐘域計(jì)數(shù)器,產(chǎn)生源端4位數(shù)據(jù),藍(lán)色模塊為源端流水寄存器,紅色模塊為目的端采樣寄存器。

wKgaomT5K7mAALLXAACeZCm9IX4652.png

在這種情況下,能否使用多周期路徑約束呢?這里我們看一下數(shù)據(jù)的發(fā)起沿和捕獲沿的位置,如下圖所示。圖中紅色方框?yàn)閿?shù)據(jù)發(fā)起沿(400MHz),綠色方框(黃色標(biāo)記線所在位置)為捕獲沿,兩者相差一個(gè)400MHz時(shí)鐘對(duì)應(yīng)的時(shí)鐘周期。因此,并不滿足多周期規(guī)則。這時(shí),我們只用做常規(guī)的時(shí)鐘周期約束即可,工具會(huì)自動(dòng)將這里的跨時(shí)鐘域按400MHz進(jìn)行約束。

wKgaomT5K7mAYLyuAADerVUkYmw958.png

那么快時(shí)鐘域到慢時(shí)鐘域在什么情況下可以用多周期路徑進(jìn)行約束呢?本質(zhì)上,多周期路徑是指數(shù)據(jù)的采樣率(SampleRate)是按慢時(shí)鐘域的速率進(jìn)行變化,其變化周期在慢時(shí)鐘域是單周期(一個(gè)時(shí)鐘周期變化一次),而在快時(shí)鐘域是多周期(多個(gè)時(shí)鐘周期變化一次)。滿足這種情形就可以判斷為多周期路徑。

有時(shí)在設(shè)計(jì)中會(huì)有測(cè)試模塊,或者出現(xiàn)這樣的狀況:模塊1和模塊2都工作在相同的時(shí)鐘下,該時(shí)鐘會(huì)根據(jù)設(shè)計(jì)的需要頻率會(huì)發(fā)生變化,但無論怎么變化模塊2只要滿足最低時(shí)鐘頻率的要求即可。因此,這時(shí)可對(duì)模塊2放松時(shí)序要求。只按照最低時(shí)鐘頻率約束即可。問題是只要定義了全局時(shí)鐘(通過create_clock創(chuàng)建),該時(shí)鐘就會(huì)在模塊2中發(fā)生作用。如何覆蓋這個(gè)約束呢?如果仍通過create_clock創(chuàng)建時(shí)鐘,選項(xiàng)-period的值為時(shí)鐘周期最大值(對(duì)應(yīng)最低頻率),但以模塊2作為頂層,指定該約束針對(duì)的對(duì)象為模塊2是否可行呢?答案是否定的,因?yàn)檫@時(shí)時(shí)序分析工具會(huì)把BUFG作為時(shí)鐘的起點(diǎn),而不是把全局時(shí)鐘管腳作為起點(diǎn)。

wKgZomT5K7mANmsUAADEKluJeRw776.png

一種可行的方法是用set_max_delay,其對(duì)象是模塊2內(nèi)的所有時(shí)序單元(模塊2內(nèi)只有一個(gè)時(shí)鐘),采用如下方式約束。第一條Tcl命令用于獲取模塊2內(nèi)所有的時(shí)序單元。

wKgZomT5K7mANmVIAAAWj0BD2IA758.png

這時(shí)就可以看到時(shí)鐘的起點(diǎn)是期望的位置了。這里可以看到set_max_delay的一個(gè)用法就是覆蓋create_clock創(chuàng)建的約束。

wKgZomT5K7qAOD3QAANkn5fD8d0783.png

審核編輯:湯梓紅

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

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598938
  • FPGA設(shè)計(jì)
    +關(guān)注

    關(guān)注

    9

    文章

    428

    瀏覽量

    26423
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5253

    瀏覽量

    119206
  • 時(shí)鐘
    +關(guān)注

    關(guān)注

    10

    文章

    1673

    瀏覽量

    130959

原文標(biāo)題:這兩種情形該怎么約束

文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA設(shè)計(jì)兩種IO約束:管腳約束,延遲約束

    I/O約束 I/O約束是必須要用的約束,又包括管腳約束和延遲約束。 管腳約束 管腳
    的頭像 發(fā)表于 10-30 16:08 ?1.4w次閱讀
    <b class='flag-5'>FPGA</b>設(shè)計(jì)<b class='flag-5'>中</b><b class='flag-5'>兩種</b>IO<b class='flag-5'>約束</b>:管腳<b class='flag-5'>約束</b>,延遲<b class='flag-5'>約束</b>

    蜂鳴器驅(qū)動(dòng)電路,下面這兩種有什么區(qū)別?

    請(qǐng)問下面這兩種電路都可以用嗎?能不能給講一下工作原理?
    發(fā)表于 11-18 12:55

    大家看看這兩種電路接法對(duì)嗎?哪個(gè)好點(diǎn)?

    大家?guī)臀铱纯?b class='flag-5'>這兩種電路的接法對(duì)嗎?用于51單片機(jī)的輸出口。如果對(duì)的話,幫我分析下哪個(gè)好?
    發(fā)表于 10-15 11:31

    這兩種放大電路有什么區(qū)別呢

    這兩種放大電路有什么區(qū)別呢
    發(fā)表于 07-06 09:23

    請(qǐng)問TPS74201和TPS74301這兩種LDO的主要區(qū)別是什么?

    小弟問題有點(diǎn)多……1、請(qǐng)問TPS74201和TPS74301這兩種LDO的主要區(qū)別是什么?我看了datasheet,感覺這兩種芯片的性能基本一樣。2、LDO的靜態(tài)電流主要影響什么?這兩種芯片的靜態(tài)
    發(fā)表于 07-16 11:21

    為什么我的Altium只有這兩種模式?

    為什么我的只有這兩種模式?設(shè)置那邊是三
    發(fā)表于 09-09 01:56

    多路電子負(fù)載在這兩種電源測(cè)試的優(yōu)勢(shì)是什么

    電源是保障電子儀器正常工作的裝置,因此對(duì)于電源各項(xiàng)性能指標(biāo)都有嚴(yán)格要求。隨著電子設(shè)備對(duì)電源的要求不斷變化,電源對(duì)于測(cè)試儀器及技術(shù)的要求也越來越高。本文著重對(duì)多路輸出電源和大功率電源測(cè)試進(jìn)行闡述,分析多路電子負(fù)載在這兩種電源測(cè)試的優(yōu)勢(shì)?!?/div>
    發(fā)表于 05-10 07:03

    如何使HDMI和VGA這兩種接口互連?

    先進(jìn)的半導(dǎo)體解決方案和靈巧的軟件如何幫助實(shí)現(xiàn)HDMI?如何使HDMI和VGA這兩種接口互連?
    發(fā)表于 05-11 06:47

    常見的ARM架構(gòu)分為兩種是M系列另外一是A系列,這兩種有什么區(qū)別?。?/a>

    現(xiàn)在市面上常見的ARM架構(gòu)分為兩種是M系列另外一是A系列,這兩種有什么區(qū)別啊,用的時(shí)候他們一般分別用在什么地方啊。
    發(fā)表于 10-26 07:00

    終于看懂了iic與spi這兩種通訊協(xié)議了

    )的身影。原因是這兩種通信協(xié)議非常適合近距離低速芯片間通信。Philips(for IIC)和Motorola(for SPI) 出于不同背景和市場(chǎng)需求制定了這兩種標(biāo)準(zhǔn)通信協(xié)議。
    的頭像 發(fā)表于 11-02 11:06 ?17.5w次閱讀
    終于看懂了iic與spi<b class='flag-5'>這兩種</b>通訊協(xié)議了

    FPGA的時(shí)序約束設(shè)計(jì)

    一個(gè)好的FPGA設(shè)計(jì)一定是包含個(gè)層面:良好的代碼風(fēng)格和合理的約束。時(shí)序約束作為FPGA設(shè)計(jì)
    發(fā)表于 11-17 07:54 ?2478次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的時(shí)序<b class='flag-5'>約束</b>設(shè)計(jì)

    FPGA時(shí)序約束分析余量

    FPGA在與外部器件打交道時(shí),端口如果為輸入則與input delay約束相關(guān),如果最為輸出則output delay,這兩種約束的值究竟是什么涵義,在下文中我也會(huì)重點(diǎn)刨析,但是前提是
    發(fā)表于 11-10 10:06 ?4157次閱讀
    <b class='flag-5'>FPGA</b>時(shí)序<b class='flag-5'>約束</b>分析余量

    Vivado進(jìn)行時(shí)序約束兩種方式

    上面我們講的都是xdc文件的方式進(jìn)行時(shí)序約束,Vivado還提供了兩種圖形界面的方式,幫我們進(jìn)行時(shí)序約束:時(shí)序約束編輯器(Edit Tim
    的頭像 發(fā)表于 03-08 17:17 ?1.9w次閱讀
    Vivado進(jìn)行時(shí)序<b class='flag-5'>約束</b>的<b class='flag-5'>兩種</b>方式

    在MATLAB/simulink建模時(shí)的兩種不同實(shí)現(xiàn)方式

    導(dǎo)讀:本期文章主要介紹在MATLAB/simulink建模時(shí)的兩種不同實(shí)現(xiàn)方式,一是直接用現(xiàn)成的文件庫的模塊進(jìn)行搭建,一是用Sfun
    的頭像 發(fā)表于 09-15 10:07 ?1731次閱讀

    MATLAB/simulink兩種實(shí)現(xiàn)建模方式的優(yōu)勢(shì)

    導(dǎo)讀:本期文章主要介紹在MATLAB/simulink建模時(shí)的兩種不同實(shí)現(xiàn)方式,一是直接用現(xiàn)成的文件庫的模塊進(jìn)行搭建,一是用Sfun
    的頭像 發(fā)表于 09-15 10:10 ?4766次閱讀