專利名稱:健壯的時(shí)間借用脈沖鎖存器的制作方法
技術(shù)領(lǐng)域:
001本發(fā)明涉及集成電路中的鎖存電路,更具體涉及可用于幫
助邏輯電路設(shè)計(jì)者提高電路性能的可配置的時(shí)間借用鎖存電路和相關(guān) 電路。
背景技術(shù):
002集成電路一般包含組合邏輯和時(shí)序邏輯。組合邏輯不包含 存儲(chǔ)元件。因此給定的組合邏輯電路的輸出只由其當(dāng)前的輸入決定。 時(shí)序邏輯電路包含存儲(chǔ)元件,其輸出反映其輸入值以往的順序。結(jié)果, 時(shí)序電路的輸出由其當(dāng)前的輸入和存儲(chǔ)在其存儲(chǔ)元件中的數(shù)據(jù)共同決 定。
003通常使用的時(shí)序電路存儲(chǔ)元件包括電平敏感鎖存器和觸發(fā)
器°
004在電平敏感鎖存器中,鎖存輸出受時(shí)鐘(使能)輸入電平 控制。當(dāng)時(shí)鐘信號(hào)為高電平時(shí),鎖存輸出追蹤輸入值。當(dāng)時(shí)鐘信號(hào)由 高電平變?yōu)榈碗娖綍r(shí),無(wú)論在轉(zhuǎn)變前的值是多少,鎖存器的輸出狀態(tài) 就被凍結(jié)在該值。只要時(shí)鐘信號(hào)為低電平,鎖存器的輸出都會(huì)維持在 其凍結(jié)狀態(tài)。
005觸發(fā)器是沿觸發(fā)器件,它在使能信號(hào),如時(shí)鐘信號(hào)的上升 沿或下降沿改變狀態(tài)。在上升沿觸發(fā)的觸發(fā)器中,觸發(fā)器僅在時(shí)鐘信 號(hào)的上升沿取樣其輸入狀態(tài)。這個(gè)取樣值一直保持到時(shí)鐘信號(hào)的下一 個(gè)上升沿。
006基于觸發(fā)器的邏輯電路通常優(yōu)于基于鎖存器的電路,因?yàn)?觸發(fā)器的沿觸發(fā)特性造成的規(guī)律性使電路同步行為相對(duì)直觀進(jìn)行建 模,因此簡(jiǎn)化了設(shè)計(jì)。
007然而,在傳統(tǒng)的基于觸發(fā)器的邏輯電路中,時(shí)鐘頻率一般 必須被充分減慢,以適應(yīng)與電路的最慢組合邏輯路徑相關(guān)的延遲。即使在快速邏輯路徑的電路用少于慢邏輯路徑的時(shí)間產(chǎn)生了一個(gè)有效信 號(hào),在下一個(gè)時(shí)鐘脈沖的有效邊沿前也不使用這個(gè)信號(hào)。雖然傳統(tǒng)觸 發(fā)器電路強(qiáng)加的規(guī)律性有益于方便電路設(shè)計(jì),但是它易于在某些情況 下限制性能。
008已經(jīng)開發(fā)時(shí)間借用方案來嘗試解決這個(gè)問題。例如,已經(jīng) 開發(fā)的時(shí)間借用方案在電路的沿觸發(fā)觸發(fā)器的時(shí)鐘輸入中提供各種延 遲。電路設(shè)計(jì)者通過為時(shí)鐘選擇合適的延遲來配置邏輯電路,這樣較 慢路徑中的觸發(fā)器使它們的時(shí)鐘沿延遲。這允許從快速邏輯路徑中借 來時(shí)間并且提供給慢速邏輯路徑,這樣不必為適應(yīng)最差情況下的延遲 而調(diào)慢整個(gè)電路的時(shí)鐘速度。
009使用這些傳統(tǒng)的時(shí)間借用方案,可能難于獲得最優(yōu)的性能, 因?yàn)榭蓮臅r(shí)鐘網(wǎng)絡(luò)獲得的延遲數(shù)量有限。其它這樣提升同步性能的方 案可能擁有有限的應(yīng)用性或需要不可接受的復(fù)雜分析。例如,已開發(fā) 出提供固定的、相對(duì)小量的時(shí)間借用的時(shí)間借用觸發(fā)器。這些方案不 能夠在很多電路中提供最佳性能。
010另外,傳統(tǒng)的時(shí)間借用方案容易有和競(jìng)爭(zhēng)情況和時(shí)鐘同步 問題相關(guān)的問題。
011希望能夠提供改進(jìn)的時(shí)間借用電路,用于優(yōu)化集成電路, 如可編程邏輯器件上的電路性能。
發(fā)明內(nèi)容
012根據(jù)本發(fā)明,可以提供脈沖鎖存器作為可配置的時(shí)間借用 觸發(fā)器。脈沖鎖存器可以使用時(shí)鐘脈沖計(jì)時(shí)??梢蕴峁┳酝矫}沖生 成電路以生成時(shí)鐘脈沖。當(dāng)存在競(jìng)爭(zhēng)風(fēng)險(xiǎn)時(shí),脈沖生成電路生成短時(shí) 鐘脈沖,它們能夠最小化通過條件競(jìng)爭(zhēng)的風(fēng)險(xiǎn)。當(dāng)不存在競(jìng)爭(zhēng)風(fēng)險(xiǎn)時(shí), 脈沖生成電路可以生成更寬的時(shí)鐘脈沖,以支持脈沖鎖存時(shí)間借用操 作。
013時(shí)鐘樹結(jié)構(gòu)可以用于向邏輯電路分配時(shí)鐘信號(hào)。例如,時(shí) 鐘樹中的兩個(gè)單獨(dú)路徑可用于為兩個(gè)實(shí)體上相鄰的邏輯電路分配同一 時(shí)鐘信號(hào)的各自潛在偏移版本。為了防止時(shí)鐘偏移,可使用可配置時(shí) 鐘樹短路結(jié)構(gòu)把時(shí)鐘分配路徑一起短路。當(dāng)用可配置時(shí)鐘樹短路結(jié)構(gòu)把時(shí)鐘分配路徑一起短路時(shí),可使用低競(jìng)爭(zhēng)時(shí)鐘驅(qū)動(dòng)器來防止短路電 流的流動(dòng)。
014脈沖鎖存器可以配備額外的鎖存電路。當(dāng)脈沖鎖存器被用
于時(shí)間借用時(shí),額外的鎖存電路被禁用(或禁能)。當(dāng)存在通過條件競(jìng) 爭(zhēng)的風(fēng)險(xiǎn)的情況下,額外的鎖存電路被啟用(或使能),以將脈沖鎖存 器轉(zhuǎn)換為沿觸發(fā)的觸發(fā)器。
015通過附圖和下面優(yōu)選實(shí)施例的詳細(xì)描述,本發(fā)明的其它特 點(diǎn)、本性和各種優(yōu)點(diǎn)將會(huì)更加明顯。
016圖1是根據(jù)本發(fā)明實(shí)施例的說明性的可編程邏輯器件集成 電路的圖示。
017圖2是傳統(tǒng)觸發(fā)器的圖示。
018圖3是根據(jù)本發(fā)明的實(shí)施例的時(shí)序圖,顯示了可配置時(shí)間 借用觸發(fā)器中同步限制的定義。
019圖4顯示了電路中的最差情況路徑如何限制傳統(tǒng)電路中的
時(shí)鐘頻率。
020圖5顯示了圖4所示類型的電路性能如何通過使用根據(jù)本
發(fā)明實(shí)施例的可配置時(shí)間借用觸發(fā)器得到提升。
021圖6是根據(jù)本發(fā)明的實(shí)施例的說明性系統(tǒng)環(huán)境圖,其中可 使用包含可配置時(shí)間借用觸發(fā)器的可編程電路。
022圖7是根據(jù)本發(fā)明的實(shí)施例的設(shè)計(jì)和配置含有可配置時(shí)間 借用觸發(fā)器的可編程電路涉及的說明性步驟流程圖。
023圖8是根據(jù)本發(fā)明的實(shí)施例的基于脈沖鎖存器的可配置時(shí)
間借用觸發(fā)器的圖示。
024圖9是根據(jù)本發(fā)明的實(shí)施例的可在圖8所示電路類型中生 成的說明性可配置寬度時(shí)鐘脈沖的圖示。
025圖10是顯示了當(dāng)使用根據(jù)本發(fā)明的實(shí)施例的可配置時(shí)間 借用觸發(fā)器時(shí),在邏輯電路中如何發(fā)生競(jìng)爭(zhēng)情況的可能性的圖示。
026圖11是根據(jù)本發(fā)明的實(shí)施例的基于脈沖鎖存器的可配置 時(shí)間借用觸發(fā)器的圖示。027圖12是根據(jù)本發(fā)明的實(shí)施例的自同步脈沖生成器電路的 圖示,該電路可用于控制圖ll所示類型的時(shí)間借用電路,以減少競(jìng)爭(zhēng) 的可能性。
028圖13是根據(jù)本發(fā)明的實(shí)施例的時(shí)鐘樹的圖示,它可以應(yīng) 用于集成電路,如可編程邏輯器件集成電路,用來分配時(shí)鐘信號(hào)。
029圖14是根據(jù)本發(fā)明的實(shí)施例的時(shí)鐘驅(qū)動(dòng)電路的圖示,這 種電路類型可以用于驅(qū)動(dòng)時(shí)鐘信號(hào)至?xí)r鐘路徑上,如圖13所示的時(shí)鐘 行路徑。
030圖15和圖16是根據(jù)本發(fā)明的實(shí)施例的脈沖鎖存電路的圖,
該電路可以選擇地配置為沿觸發(fā)觸發(fā)器。
031圖17是根據(jù)本發(fā)明的實(shí)施例的時(shí)序圖,顯示了信號(hào)CLK、 LAB一CLK和PE的行為。
032圖18是根據(jù)本發(fā)明的實(shí)施例的時(shí)序圖,顯示了用于低競(jìng) 爭(zhēng)時(shí)鐘驅(qū)動(dòng)的說明性同步電路中的信號(hào)CLK和其它信號(hào)之間的關(guān)系。
具體實(shí)施例方式
033本發(fā)明涉及提升使用時(shí)間借用技術(shù)的同步邏輯電路的電路 性能。邏輯電路可以是任意合適的集成電路的一部分。例如,本發(fā)明 的邏輯電路和時(shí)間借用電路可以在可編程邏輯器件集成電路上實(shí)現(xiàn)。 如果需要,邏輯電路和時(shí)間借用電路可以在傳統(tǒng)上不被稱為可編程邏 輯器件的可編程集成電路上實(shí)現(xiàn)??删幊踢壿嬈骷氖纠邪删?程邏輯的微處理器,包含可編程邏輯的數(shù)字信號(hào)處理器,包含可編程 邏輯區(qū)的自定義(定制的)集成電路,或其它包含可編程邏輯的可編 程集成電路。本發(fā)明大體在集成電路的背景下進(jìn)行描述,例如可編程 邏輯器件集成電路作為例子。
034圖1顯示了根據(jù)本發(fā)明的說明性集成電路,比如可編程邏 輯器件10。
035可編程邏輯器件10有輸入/輸出電路12,用于驅(qū)動(dòng)信號(hào)離 開器件IO,并通過輸入/輸出針腳14接收來自其它器件的信號(hào)?;ヂ?lián) 資源16,比如全局和局部垂直和水平導(dǎo)線和總線可以用來路由器件10 中的信號(hào)?;ヂ?lián)資源16包括導(dǎo)線和各導(dǎo)線之間的可編程連接,因此有時(shí)也被稱作可編程互連16。
036可編程邏輯18可包括組合和時(shí)序邏輯電路??梢耘渲每?編程邏輯18執(zhí)行定制的邏輯功能??删幊袒ミB16可以被認(rèn)為是一種 可編程邏輯18。
037可編程邏輯器件10包含可編程存儲(chǔ)元件20。存儲(chǔ)元件20 可使用針腳14和輸入/輸出電路12加載配置數(shù)據(jù)(也稱作編程數(shù)據(jù))。 一旦被加載,每個(gè)存儲(chǔ)元件提供相應(yīng)的靜態(tài)控制信號(hào),該信號(hào)控制可 編程邏輯18中關(guān)聯(lián)的邏輯組件的操作。在典型應(yīng)用中,加載的存儲(chǔ)元 件20的輸出被應(yīng)用于可編程邏輯18中的金屬-氧化層-半導(dǎo)體晶體管 的柵極,以導(dǎo)通或斷開特定的晶體管,從而配置可編程邏輯18中的邏 輯和路由路徑。可以以這種方式控制的可編程的邏輯電路元件包括部 分多路復(fù)用器(比如,用于在可編程互連16中形成路由路徑的多路復(fù) 用器)、査找表、邏輯陣列、與門、或門、與非門和或非門、傳輸門等 等。
038存儲(chǔ)元件20可以使用任何合適的易失性和/或非易失性存 儲(chǔ)結(jié)構(gòu),比如隨機(jī)存取存儲(chǔ)(RAM)單元、熔絲、反熔絲、可編程只讀 存儲(chǔ)器存儲(chǔ)單元、掩模編程結(jié)構(gòu)和激光編程結(jié)構(gòu)(mask-programmed and laser-progr翻ed structures)、這些結(jié)構(gòu)的結(jié)合等等。因?yàn)榇鎯?chǔ)元 件20在編程時(shí)加載配置數(shù)據(jù),所以存儲(chǔ)元件20有時(shí)也稱作配置存儲(chǔ) 器、配置RAM或可編程存儲(chǔ)元件。
039器件10的電路可以使用任何合適的體系結(jié)構(gòu)進(jìn)行組織。 例如,可編程邏輯器件10的邏輯可以用較大可編程邏輯區(qū)的一系列行 和列進(jìn)行組織,每個(gè)較大的可編程邏輯區(qū)包含多個(gè)較小的邏輯區(qū)。例 如,較小的區(qū)可以是有時(shí)被稱作邏輯元件的邏輯區(qū),每個(gè)元件包含一 個(gè)查找表, 一個(gè)或多于一個(gè)寄存器和可編程多路復(fù)用電路。例如,較 大的區(qū)可以是包含多個(gè)邏輯元件的邏輯陣列塊。在圖1的示例中,其 中一個(gè)較大的可編程邏輯區(qū)18 (作為示例,它可以是邏輯陣列塊)中 顯示了示例性的邏輯元件22。在典型的可編程邏輯器件10中,可以有 數(shù)百或者數(shù)千的邏輯元件22。圖1所示的4個(gè)邏輯元件22僅僅作為示 例。
040在器件編程過程中,配置數(shù)據(jù)被加載至器件10上,配置數(shù)據(jù)配置邏輯元件22,使得每個(gè)邏輯元件在其輸入處執(zhí)行期望的邏輯 功能,并且在一個(gè)或多個(gè)邏輯元件的輸出處生成相應(yīng)的輸出信號(hào)。
041器件10的資源,例如可編程邏輯18,可以由可編程互連 16互相連接?;ミB16 —般包括垂直和水平導(dǎo)線。這些導(dǎo)線可包括基本 遍布整個(gè)器件10的全局導(dǎo)線,分布在器件10部分區(qū)域的半線或四分 之一線這類部分導(dǎo)線,特定長(zhǎng)度的錯(cuò)排線(例如,足以互連若干邏輯 陣列塊或其它這樣的邏輯區(qū)域),較小的局部線,或任意其它適合的互 連資源布局。如果需要,器件10的邏輯可以按更多的等級(jí)或?qū)舆M(jìn)行排 列,其中多個(gè)大的區(qū)域被互連形成更大的邏輯部分。其它器件布局也 可以使用不是以行或列排列的邏輯。
042除了圖1所示的相對(duì)大的可編程邏輯塊,器件10 —般還 包括一些與可編程互連、存儲(chǔ)器和器件10上的輸入-輸出電路相關(guān)聯(lián) 的可編程邏輯。例如,輸入-輸出電路12可以包含可編程輸入和輸出 緩存器。互連16也可以被設(shè)置為路由信號(hào)至想要到達(dá)的目的地。
043器件10中的大多數(shù)邏輯電路包含被稱作觸發(fā)器的存儲(chǔ)元 件。觸發(fā)器是沿觸發(fā)的器件,可以存儲(chǔ)數(shù)字化數(shù)據(jù)(例如,邏輯1或 邏輯0)。
044圖2顯示了傳統(tǒng)的觸發(fā)器24。觸發(fā)器24有數(shù)據(jù)輸入導(dǎo)線 30和數(shù)據(jù)輸出導(dǎo)線32。電平敏感鎖存器26和28用于存儲(chǔ)數(shù)據(jù)。鎖存 器26和28由時(shí)鐘輸入導(dǎo)線34處的時(shí)鐘信號(hào)CLOCK計(jì)時(shí)。鎖存器26 有反相時(shí)鐘輸入62。鎖存器28有非反相時(shí)鐘輸入64。因?yàn)檩斎?2是 輸入64的反相,所以鎖存器26和28可以有效地被180度異相的時(shí)鐘 信號(hào)計(jì)時(shí)。鎖存器26對(duì)反相的時(shí)鐘信號(hào)做出響應(yīng),鎖存器28對(duì)非反 相的信號(hào)CLOCK做出響應(yīng)。
045如圖2所示觸發(fā)器24的傳統(tǒng)觸發(fā)器的特性由建立時(shí)間Tsu, 保持時(shí)間Th,和時(shí)鐘到輸出(clock-to-output)時(shí)間Tco表示。
046觸發(fā)器的建立時(shí)間Tsu表示信號(hào)CLOCK在時(shí)鐘輸入34上變 為高電平及其反相在鎖存器26的輸入62處變?yōu)榈碗娖角拜斎雽?dǎo)線30 上的數(shù)據(jù)D必須有效的最短時(shí)間。如果數(shù)據(jù)被提供給輸入30的時(shí)刻更 接近時(shí)鐘邊沿而不是Tsu,就不能保證觸發(fā)器24的正確操作。
047保持時(shí)間Th與鎖存器26的行為有關(guān),并且表示在信號(hào)CLOCK邊沿后(也就是在CLOCK的反下降之后)要求數(shù)據(jù)D穩(wěn)定不變的 最小時(shí)間。如果在Th結(jié)束之前D改變了狀態(tài),觸發(fā)器的輸出Q就可能 不正確。時(shí)鐘到輸出時(shí)間Tco表示觸發(fā)器在時(shí)鐘邊沿后改變其輸出所 花費(fèi)的時(shí)間。這些關(guān)系在圖3的時(shí)序圖中說明。
048雖然提供給觸發(fā)器的輸入的數(shù)據(jù)D在時(shí)鐘邊沿前必須穩(wěn)定 的時(shí)間至少為Tsu,但沒有禁止數(shù)據(jù)在更早的時(shí)間抵達(dá)。在時(shí)鐘邊沿前 穩(wěn)定數(shù)據(jù)提供給觸發(fā)器輸入的時(shí)間量被稱作Td。有時(shí)用變量Tcq表示 在時(shí)鐘信號(hào)CLK的邊沿后,對(duì)于給定的Td值,輸出數(shù)據(jù)Q保持穩(wěn)定的 時(shí)間量。在某些情況下,提供數(shù)據(jù)的時(shí)刻非常接近于時(shí)鐘邊沿(例如, 接近或等于建立時(shí)間Tsu表示的最小時(shí)間)。在這種情況下,Td等于 Tsu (或非常接近于Tsu)。在其它情況下,提供數(shù)據(jù)的時(shí)刻遠(yuǎn)離時(shí)鐘邊 沿。在這種情況下,Td大于Tsu。
049Td和Tcq的值是相互關(guān)聯(lián)的。變量Td的值可以調(diào)整,而 變量Tcq是Td的函數(shù)。Td的值大于或等于Tsu時(shí),預(yù)期觸發(fā)器會(huì)工作 正常,Tcq的值為Tco (也就是,Tcq等于時(shí)鐘邊沿后輸出變?yōu)橛行?需的最小時(shí)間,即Tco)。但是當(dāng)Td值小于Tsu時(shí),違反了觸發(fā)器的建 立時(shí)間要求,因?yàn)閿?shù)據(jù)到達(dá)時(shí)太接近時(shí)鐘邊沿。在這種情況下,沒有 有效數(shù)據(jù)提供給觸發(fā)器的輸出,并且觸發(fā)器將不能正常工作。
050對(duì)于圖2所示的傳統(tǒng)觸發(fā)器類型,時(shí)間借用是不可能的, 這限制了電路性能。作為示例,考慮圖4中的示例電路74。在電路74 中,數(shù)據(jù)在由觸發(fā)器76、邏輯電路78、觸發(fā)器80和邏輯電路82組成
的環(huán)路中被處理。
051在圖4的示例中,觸發(fā)器76和80都是不帶時(shí)間借用功能 的傳統(tǒng)觸發(fā)器。因此,觸發(fā)器76和80具有固定的Tsu和Tco值。在 圖4的示例中,觸發(fā)器76和80的Tsu值是200ps, Tco值是100ps。 如圖4所示,邏輯電路78(在本示例中)具有的相關(guān)處理延遲為1000ps。 邏輯電路82具有的相關(guān)延遲為800ps。邏輯82的輸出信號(hào)通過反饋路 徑84被反饋至邏輯電路78。
052在如電路74的電路中,能夠使用的最大時(shí)鐘頻率由最差路 徑延遲決定。在電路74中考慮兩個(gè)相關(guān)的路徑延遲。第一條路徑的延 遲與結(jié)點(diǎn)66至結(jié)點(diǎn)68的路徑有關(guān)。注意,雖然Tsu和Tco與觸發(fā)器的內(nèi)部邏輯有關(guān),但是在此處討論時(shí)它們被視為路徑的一部分,并且 在圖中顯示在觸發(fā)器外部。第一條路徑的延遲等于1300 pS(100ps + 1000 ps + 200 ps)。第二條路徑的延遲與結(jié)點(diǎn)70至結(jié)點(diǎn)72的路徑有 關(guān)。這個(gè)延遲等于1100 ps (100 ps + 800 ps + 200 ps)。因?yàn)榕c最 慢路徑相關(guān)的延遲是決定最大時(shí)鐘速率的限制因素,所以在時(shí)鐘電路 74中可用的最大時(shí)鐘速率由與結(jié)點(diǎn)66至結(jié)點(diǎn)68之間的路徑相關(guān)的路 徑延遲1300 ps控制。即使和結(jié)點(diǎn)70至結(jié)點(diǎn)72之間的路徑相關(guān)的延 遲較低(1100 ps),也不能使用傳統(tǒng)的觸發(fā)器利用這個(gè)較小的延遲。 結(jié)果是,必須將電路74的時(shí)鐘速率設(shè)置為大約1/(1300 ps)或769MHz。053根據(jù)本發(fā)明,脈沖鎖存器和其它電路可以被用作時(shí)間借用 觸發(fā)器。在使用時(shí)間借用鎖存電路(時(shí)間借用觸發(fā)器)的裝置中,可 以通過減少與最差路徑相關(guān)的延遲提升電路性能。作為示例,考慮在 電路74中使用時(shí)間借用觸發(fā)器的情況。
054時(shí)間借用觸發(fā)器的使用可以提高圖4的示例電路74的時(shí)鐘 速率。作為示例,考慮圖5所示的布局。在圖5中,電路74使用可配 置的時(shí)間借用觸發(fā)器86 — 1和86 — 2分別代替圖4中的傳統(tǒng)觸發(fā)器76 和80。在圖5示例中,觸發(fā)器86 — 1工作為Tsu值為200 ps, Tco值 為100ps,與圖4中的觸發(fā)器76—樣。圖5中的觸發(fā)器86 — 2工作為 Tsu值為100 ps, Tco值為200 ps。兩個(gè)觸發(fā)器同步環(huán)境導(dǎo)致的Tdq 值相等,均為300 ps。然而用100ps的Tsu值操作觸發(fā)器86 — 2可使 電路74中與路徑相關(guān)的延遲更加均衡。
055具體地,與結(jié)點(diǎn)66至結(jié)點(diǎn)68之間的路徑相關(guān)的延遲由1300 ps (在圖4的布局中)減少到1200 ps (在圖5的布局中),然而與結(jié) 點(diǎn)70至結(jié)點(diǎn)72之間的路徑相關(guān)的延遲從1100 ps (在圖4的布局中) 增加到1200 ps (在圖5的布局中)。雖然一條路徑比以前慢了,但是 另一條路徑比以前快了,總的來說,圖5的整個(gè)電路74的運(yùn)行速度會(huì) 更快。這是因?yàn)殡娐?4的時(shí)鐘的最大時(shí)鐘速率由最差情況的延遲決定。 在圖4的示例中,電路74的最大時(shí)鐘速率為1/(1300 ps)。在圖5的 示例中,電路74的最大時(shí)鐘速率被提高到1/(1200 ps)或833MHz。電 路性能的提升是觸發(fā)器86 — 2提供時(shí)間借用的結(jié)果。
056當(dāng)使用可配置的時(shí)間借用觸發(fā)器時(shí),與給定的時(shí)間借用觸發(fā)器相關(guān)的時(shí)間借用值可以通過調(diào)整與觸發(fā)器相關(guān)的可配置延遲元件 進(jìn)行調(diào)整。例如,延遲元件的設(shè)置可以配置在作為時(shí)間借用觸發(fā)器的 脈沖鎖存電路的輸入端的脈沖寬度。電路哪個(gè)部分可以容忍更大的延 遲元件值和電路哪個(gè)部分一起相對(duì)低的延遲的具體知識(shí)可以由計(jì)算機(jī) 輔助設(shè)計(jì)(CAD)電路設(shè)計(jì)工具提供。
057圖6顯示了集成電路的示例系統(tǒng)環(huán)境,集成電路例如為包 含可配置時(shí)間借用觸發(fā)器的可編程集成電路??删幊踢壿嬈骷?0 (或 任何其它合適的包含時(shí)間借用觸發(fā)器電路的集成電路)可以被安在系 統(tǒng)38中的主板36上??删幊踢壿嬈骷?0可以接收來自可編程設(shè)備或 任意其它適合的設(shè)備或器件的配置數(shù)據(jù)。
058在圖6的示例中,可編程邏輯器件10是從相關(guān)的集成電路 40接收配置數(shù)據(jù)的可編程邏輯器件類型。利用這種類型的布局,如果 需要,電路40可以與可編程邏輯器件10 —樣,被安在同一主板36上。 集成電路40可以是可編程邏輯器件配置數(shù)據(jù)加載芯片,其從多種器件 中將配置數(shù)據(jù)加載至可編程邏輯器件存儲(chǔ)器,這些器件包括外部可擦 寫可編程只讀存儲(chǔ)(EPR0M)芯片,具有內(nèi)建存儲(chǔ)器的可編程邏輯器件 配置數(shù)據(jù)加載芯片(有時(shí)被稱作配置器件),或任意其它合適的器件。 當(dāng)系統(tǒng)38啟動(dòng)時(shí)(或在其它合適的時(shí)機(jī)),用于配置可編程邏輯器件 的配置數(shù)據(jù)可以由器件40提供給可編程邏輯器件,如圖中路徑42所 示。提供給可編程邏輯器件的配置數(shù)據(jù)可以保存在可編程邏輯器件中 的配置隨機(jī)存取存儲(chǔ)元件20中。
059系統(tǒng)38可以包括處理電路44、存儲(chǔ)器46、與器件10通 信的其它系統(tǒng)組件48。系統(tǒng)38的組件可以安置在一個(gè)或多于一個(gè)如主 板36的主板上,或其它合適的安裝結(jié)構(gòu)或支架。
060通信路徑可以用來將器件10和其它組件互連。例如,通 信路徑37可以用于在安置在主板36上的集成電路39和可編程邏輯器 件10之間傳輸數(shù)據(jù)。通信路徑35和50可以用于在可編程邏輯器件10 和組件44、 46和48之間傳輸信號(hào)。
061配置器件40可以通過路徑,如路徑52,為器件10提供配 置數(shù)據(jù)。例如,配置器件40可以從配置數(shù)據(jù)裝載設(shè)備54或從其它合 適的在配置器件40中存放數(shù)據(jù)的設(shè)備接收配置數(shù)據(jù)。器件40加載數(shù)據(jù)的時(shí)機(jī)可以在安裝到主板36前,或者在安裝到主板36后。
062在可編程邏輯器件中設(shè)計(jì)和實(shí)現(xiàn)期望的邏輯電路是一個(gè)重 大任務(wù)。因此邏輯設(shè)計(jì)者通常使用基于計(jì)算機(jī)輔助設(shè)計(jì)(CAD)工具的 邏輯設(shè)計(jì)系統(tǒng)來輔助他們?cè)O(shè)計(jì)電路。邏輯設(shè)計(jì)系統(tǒng)可以幫助邏輯設(shè)計(jì) 者設(shè)計(jì)和測(cè)試系統(tǒng)的復(fù)雜電路。當(dāng)一個(gè)設(shè)計(jì)完成后,邏輯設(shè)計(jì)系統(tǒng)可 以被用于生成配置數(shù)據(jù),用于對(duì)適當(dāng)?shù)目删幊踢壿嬈骷M(jìn)行電子編程。063如圖6所示,邏輯設(shè)計(jì)系統(tǒng)56生成的配置數(shù)據(jù)可以通過 路徑,例如路徑58,提供給設(shè)備54。設(shè)備54向器件40提供配置數(shù)據(jù), 這樣器件40稍后可以將這個(gè)配置數(shù)據(jù)通過路徑42提供給可編程邏輯 器件10。系統(tǒng)56可以基于一個(gè)或多個(gè)計(jì)算機(jī)和一個(gè)或多個(gè)軟件程序。 一般地,軟件和數(shù)據(jù)可以存儲(chǔ)在系統(tǒng)56中任意計(jì)算機(jī)可讀的介質(zhì)(存 儲(chǔ)器)上,如圖14所示的存儲(chǔ)器60。
064在典型的應(yīng)用中,邏輯設(shè)計(jì)者使用邏輯設(shè)計(jì)系統(tǒng)56創(chuàng)建 定制的電路設(shè)計(jì)。系統(tǒng)56生成提供給配置器件40的對(duì)應(yīng)的配置數(shù)據(jù)。 一旦被供電,可編程邏輯器件10上的配置器件40和數(shù)據(jù)加載電路被 用來將配置數(shù)據(jù)加載到器件10中的可編程存儲(chǔ)元件20上。之后器件 10就可用于系統(tǒng)38的正常運(yùn)行中了 。
065圖7顯示了配置和使用包含可配置時(shí)間借用觸發(fā)器的可編 程邏輯器件10的示例步驟。
066在步驟122,用戶(例如,邏輯設(shè)計(jì)者)使用邏輯設(shè)計(jì)系統(tǒng) 56 (圖6)創(chuàng)建一個(gè)可編程邏輯器件10的定制的邏輯設(shè)計(jì)。用戶為邏 輯設(shè)計(jì)系統(tǒng)56 (圖6)上的計(jì)算機(jī)輔助設(shè)計(jì)(CAD)工具提供關(guān)于定制 邏輯設(shè)計(jì)的信息。輸入數(shù)據(jù)可以是設(shè)計(jì)數(shù)據(jù)的形式(例如,邏輯電路 或其它電路的規(guī)格)和約束數(shù)據(jù)(例如,為可接受的電路性能設(shè)定限 制的設(shè)置和控制計(jì)算機(jī)輔助設(shè)計(jì)工具12如何處理設(shè)計(jì)者輸入的設(shè)置)。 例如,步驟122可以包括構(gòu)建和輸入以具有一定的大小和時(shí)序約束的 特定類型可編程邏輯器件實(shí)現(xiàn)的邏輯電路設(shè)計(jì)。用于輸入邏輯電路輸 入數(shù)據(jù)的工具包括諸如文本編輯器、平面布置編輯器、約束編輯器、 基于庫(kù)和基于向?qū)У脑O(shè)計(jì)和約束輸入輔助等等的工具。又例如,在步 驟122輸入的設(shè)計(jì)和約束數(shù)據(jù)可能與以專用集成電路(ASIC)實(shí)現(xiàn)的 電路設(shè)計(jì)相關(guān)。在這里,用于接受設(shè)計(jì)和約束數(shù)據(jù)的典型計(jì)算機(jī)輔助設(shè)計(jì)工具12是布局布線工具。 一般地,任意合適的格式均可用于設(shè)計(jì) 和約束數(shù)據(jù)。約束數(shù)據(jù)可包括關(guān)于任意合適約束的信息(例如,設(shè)計(jì) 物體放置約束、時(shí)序約束、面積約束、噪聲水平約束、功率耗量約束、
熱量約束等等)。設(shè)計(jì)和約束數(shù)據(jù)可以存儲(chǔ)在系統(tǒng)56的數(shù)據(jù)庫(kù)中(存 儲(chǔ)器60)。
067在步驟124中,可運(yùn)行系統(tǒng)56上的計(jì)算機(jī)輔助設(shè)計(jì)工具實(shí) 現(xiàn)電路設(shè)計(jì)。例如,如果設(shè)計(jì)是用于特定類型的可編程邏輯器件集成 電路的邏輯設(shè)計(jì),就可用計(jì)算機(jī)輔助設(shè)計(jì)工具以目標(biāo)技術(shù)實(shí)現(xiàn)邏輯設(shè) 計(jì)。計(jì)算機(jī)輔助設(shè)計(jì)工具可以包括邏輯編譯器和這種類型的其它程序, 這些程序通常以一組邏輯設(shè)計(jì)和分析工具的形式提供。可以生成代表 已實(shí)現(xiàn)設(shè)計(jì)的編程數(shù)據(jù)(例如,存儲(chǔ)于.pof文件中)或其它適合的輸 出數(shù)據(jù)。如果設(shè)計(jì)是一個(gè)針對(duì)專用集成電路的電路設(shè)計(jì),那么可采用 專用集成電路布局布線工具和/或其它適合的工具生成用于將電路制 成硅芯片的一系列光刻掩模規(guī)范。
068在步驟124中,使用分析工具,比如時(shí)序分析工具,執(zhí)行 分析操作。在步驟124中執(zhí)行的時(shí)序分析允許邏輯設(shè)計(jì)系統(tǒng)56為每一 個(gè)觸發(fā)器和其可配置延遲元件電路確定最優(yōu)時(shí)間借用設(shè)置。對(duì)于一個(gè) 適合的布局,所有觸發(fā)器首先被初始化到最小的時(shí)間借用設(shè)置值。接 下來時(shí)序分析工具可以連續(xù)賦予更大的時(shí)間借用設(shè)置值。這個(gè)過程可 以迭代直到過程收斂。在確認(rèn)操作過程中,時(shí)序分析工具可以檢査建 立時(shí)間約束已滿足,以及最小預(yù)期數(shù)據(jù)到時(shí)時(shí)間(對(duì)數(shù)據(jù)信號(hào)D)沒有 違反對(duì)任何觸發(fā)器的保持時(shí)間要求。 一旦確認(rèn)操作完畢,計(jì)算機(jī)輔助 設(shè)計(jì)工具可以為每一個(gè)未滿足建立時(shí)間約束的觸發(fā)器提高時(shí)間借用設(shè) 置。在步驟124生成的配置數(shù)據(jù)包括用于將每一個(gè)觸發(fā)器的配置延遲 元件(脈沖鎖存脈沖生成電路)調(diào)整到合適設(shè)置值的配置數(shù)據(jù)。
069
一旦確認(rèn)了定制的電路設(shè)計(jì)的最優(yōu)實(shí)現(xiàn),并且在步驟124 已經(jīng)生成用于該設(shè)計(jì)的配置數(shù)據(jù),該配置數(shù)據(jù)就可以被加載到可編程 邏輯器件10 (步驟126),如結(jié)合圖6描述的。加載的數(shù)據(jù)配置時(shí)間借 用觸發(fā)器,使得時(shí)鐘速率比其它可行方式更快。
070如果需要,可以使用可配置脈沖鎖存器實(shí)現(xiàn)時(shí)間借用觸發(fā) 器。可配置脈沖鎖存裝置使用鎖存電路,該電路對(duì)可配置的時(shí)間量Tsk透明(也就是輸出跟蹤輸入),以作為可配置時(shí)間借用觸發(fā)器。
071圖8顯示了基于脈沖鎖存器的可配置時(shí)間借用觸發(fā)器86的 示例實(shí)施例。觸發(fā)器86有基于可配置延遲電路94的可配置脈沖生成 電路87。在時(shí)鐘輸入導(dǎo)線92上提供時(shí)鐘信號(hào)CLK,并通過輸入112將 其分配給延遲元件106。延遲元件106生成4個(gè)不同的延遲(在本示例 中)。因此輸入112上的時(shí)鐘信號(hào)在延遲元件106的輸出IIO處被延遲 的量與這4個(gè)延遲對(duì)應(yīng)。受可編程元件20狀態(tài)調(diào)整的多路復(fù)用器108 通過反相輸出在導(dǎo)線134上提供選擇的一個(gè)延遲的時(shí)鐘信號(hào)。邏輯與 門130在導(dǎo)線134上接收延遲的時(shí)鐘信號(hào),在導(dǎo)線92上接收原始的時(shí) 鐘信號(hào)CLK,并在其輸出132生成可調(diào)寬度為Tpw的脈沖CP。導(dǎo)線134 上的延遲的時(shí)鐘信號(hào)被多路復(fù)用器108的反相輸出反相,該反相可以 看作是180度的相延遲。圖9顯示了示例的時(shí)鐘脈沖CP。寬度Tpw由 多路復(fù)用器108選擇的延遲量決定。
072時(shí)鐘脈沖CP被提供給電平敏感鎖存器128的時(shí)鐘輸入CL。 鎖存器128從觸發(fā)器輸入導(dǎo)線88接收數(shù)據(jù)D,并在觸發(fā)器輸出導(dǎo)線90 上生成相應(yīng)的輸出數(shù)據(jù)Q。使用可配置脈沖生成電路87,可以設(shè)置脈 沖寬度Tpw的值為使鎖存器128維持適當(dāng)時(shí)間的透明狀態(tài),以實(shí)現(xiàn)所 需數(shù)量的時(shí)間借用。
073在邏輯元件22 (圖1)中使用可配置的時(shí)間借用觸發(fā)器是 有利的。典型的邏輯元件可能具有查找表,該査找表提供到觸發(fā)器86 的路徑88的數(shù)據(jù)輸出。如果需要,也可以從其它源為路徑88提供數(shù) 據(jù)(例如,從邏輯陣列塊中的路由線等等)。
074如圖8的脈沖鎖存器可以允許時(shí)間借用,因此提升可編程
邏輯器件上特定邏輯電路的性能。然而,器件上的短路徑可能引起保 持時(shí)間問題。例如,短路徑可能會(huì)引起在特定工藝條件下制造的器件 中的保持時(shí)間沖突。
075如結(jié)合圖8描述的,每個(gè)時(shí)間借用脈沖鎖存電路86可用 電平敏感的鎖存器實(shí)現(xiàn),以使速率最大。為了使圖8所示電路86運(yùn)行 正常,圖9的脈沖必須足夠?qū)捯枣i存數(shù)據(jù)。然而在一些情況下,脈沖 寬度大于其最小設(shè)置,并且數(shù)據(jù)路徑比一般的快,可能發(fā)生競(jìng)爭(zhēng)的情 況。圖IO顯示了具有短數(shù)據(jù)路徑延遲的脈沖鎖存器發(fā)生競(jìng)爭(zhēng)的危險(xiǎn)。076在圖10中,為路徑140提供時(shí)鐘信號(hào)CLK。延遲電路87 在路徑142生成相應(yīng)的時(shí)鐘脈沖CP。時(shí)鐘脈沖分配路徑144可以被用 來向多個(gè)時(shí)間借用觸發(fā)器(也就是脈沖鎖存器A和B)分配時(shí)鐘脈沖 CP。只有在時(shí)鐘信號(hào)CLK由低電平向高電平轉(zhuǎn)變時(shí)才生成相應(yīng)的CP脈 沖,因此鎖存器A和B顯示出了正沿觸發(fā)器件的特性。
077每個(gè)鎖存器可能包含在各自的邏輯元件中(作為示例)。鎖 存器A有與輸入路徑146相連的數(shù)據(jù)輸入。鎖存器B有與輸入路徑154 相連的數(shù)據(jù)輸入。當(dāng)時(shí)鐘脈沖CP到達(dá)鎖存器A的時(shí)鐘輸入處時(shí),鎖存 器A鎖存數(shù)據(jù)信號(hào)D,并通過路徑傳輸相應(yīng)的輸出數(shù)據(jù)信號(hào)Q,這些路 徑包括輸出路徑148、短路由路徑(如局部導(dǎo)線150)、邏輯電路152 (例如,査找表)。因?yàn)槁窂?48、局部導(dǎo)線150和邏輯電路152只產(chǎn) 生少量的延遲,所以鎖存器A的輸出信號(hào)可能在時(shí)鐘脈沖CP結(jié)束前在 鎖存器B的輸入154被接收。結(jié)果,當(dāng)脈沖信號(hào)CP是高電平時(shí),鎖存 器B輸入處的數(shù)據(jù)信號(hào)D可能會(huì)錯(cuò)誤地改變。如果在鎖存器B輸入處 的數(shù)據(jù)信號(hào)D僅在CP下降后轉(zhuǎn)變,則不會(huì)發(fā)生競(jìng)爭(zhēng)情況,并且鎖存器 B的輸出Q將有效。然而,當(dāng)鎖存器B的輸入D正在變化時(shí)CP仍然為 高電平時(shí),鎖存器A的輸出在時(shí)鐘信號(hào)CLK的下一個(gè)周期到來前將影 響鎖存器B。存在這種形式競(jìng)爭(zhēng)情況的電路將不正常工作,應(yīng)該予以避 免。
078根據(jù)本發(fā)明的實(shí)施例,通過提供為時(shí)鐘脈沖CP生成合的適 最小脈沖寬度的脈沖生成電路87以及通過提供故障保護(hù)操作模式可以 避免諸如這些的競(jìng)爭(zhēng)錯(cuò)誤。在故障保護(hù)操作模式中,脈沖鎖存器可以 作為完全的沿觸發(fā)觸發(fā)器運(yùn)行。還可以提供可配置地減小時(shí)鐘分配網(wǎng) 絡(luò)中實(shí)體上局部但是電氣上遠(yuǎn)離部分之間偏移的結(jié)構(gòu)。
079圖11顯示了一個(gè)合適的脈沖鎖存器示例,該脈沖鎖存器可 以用來在諸如可編程邏輯器件集成電路10的集成電路中支持可配置的 時(shí)間借用功能。如圖11所示,脈沖鎖存器86可以有接收邏輯信號(hào)的 輸入156。例如,在輸入156接收的邏輯信號(hào)可以是來自查找表157 (作 為示例)的輸出的組合函數(shù)zO(a,b,cO,dO,e,f)。如果需要,脈沖鎖存 器86還可以在輸入路徑160上接收邏輯信號(hào)sdata??墒褂没パa(bǔ)金屬 氧化物半導(dǎo)體(CMOS)傳輸門162將來自路徑156和路徑160的信號(hào)選擇性地路由至電平敏感鎖存器164中,其中傳輸門162受配置隨機(jī) 存取存儲(chǔ)單元或動(dòng)態(tài)控制信號(hào)控制(例如,來自器件10上核心邏輯的 控制信號(hào))。
080如果需要,通過對(duì)相關(guān)聯(lián)的配置隨機(jī)存取存儲(chǔ)單元120進(jìn) 行適當(dāng)編程,可以導(dǎo)通傳輸晶體管T。當(dāng)傳輸晶體管T斷開時(shí),數(shù)據(jù)可 以被路由到鎖存器164中。當(dāng)希望繞過鎖存器164時(shí),可以禁用鎖存 器164,并用配置隨機(jī)存取存儲(chǔ)單元120導(dǎo)通晶體管T。在該配置中, 數(shù)據(jù)可以通過輸出緩存器166被驅(qū)動(dòng)到輸出158 (并與路由選擇線相 連)。晶體管T可以是例如用厚氧化物低功率設(shè)計(jì)形成的N通道金屬氧 化物半導(dǎo)體傳輸門。當(dāng)晶體管T被禁用,而電平敏感鎖存器164被啟 用時(shí),脈沖鎖存器86可以鎖存zO(a, b, cO, d0, e, f)和sdata中的一個(gè)。
081可以用產(chǎn)生時(shí)鐘脈沖CP和反相時(shí)鐘脈沖NCP的脈沖生成 電路對(duì)脈沖鎖存器86計(jì)時(shí)。如圖11所示,這些時(shí)鐘脈沖信號(hào)可以施 加到互補(bǔ)金屬氧化物半導(dǎo)體傳輸門電路170的終端168。與非門174 的輸入處的導(dǎo)線172可以接收清除控制信號(hào)/CLR。這個(gè)信號(hào)可以用來 異步地清除脈沖鎖存器86。當(dāng)信號(hào)/CLR為低電平時(shí),鎖存器86被置 于其正常脈沖鎖存模式。
082在正常運(yùn)行期間,脈沖CP和NCP可以控制脈沖鎖存器, 比如圖11中的鎖存器86和其它合適的脈沖鎖存電路。根據(jù)本發(fā)明的 實(shí)施例,可以提供脈沖生成電路,該電路以避免競(jìng)爭(zhēng)情況的方式生成 脈沖CP和NCP,。具體地,可以提供大致近似時(shí)鐘脈沖CP和NCP允許 的最小延遲(也就是,可以使電平敏感鎖存器164在運(yùn)行期間正確鎖 存數(shù)據(jù)的最小時(shí)鐘脈沖寬度)的脈沖生成電路。實(shí)際上,由脈沖生成 電路生成的最佳脈沖寬度傾向于略大于鎖存數(shù)據(jù)所要求的絕對(duì)最小寬 度。這是因?yàn)槌^理論最小脈沖寬度的少量額外延遲幫助適應(yīng)噪聲和 片上變量。然而超過這個(gè)少量額外延遲的超額延遲量會(huì)增加競(jìng)爭(zhēng)的風(fēng) 險(xiǎn)。
083圖12顯示了根據(jù)本發(fā)明的示例性的脈沖生成電路176。在 典型的布局中,會(huì)有一個(gè)或兩個(gè)電路,例如器件10上的每個(gè)邏輯陣列 塊會(huì)有一個(gè)電路176。然而這僅是示例。如果需要,在給定的器件上會(huì) 有更多或更少的電路176。084可以在與非門NAND2的輸入導(dǎo)線178接收時(shí)鐘信號(hào)CLK。 與非門NAND2也可以在輸入端180和182分別接收時(shí)鐘使能信號(hào)CE和 脈沖使能信號(hào)PE。與非門NAND2的輸出與反相器INV3的輸入相連。反 相器INV3的輸出在路徑184產(chǎn)生時(shí)鐘脈沖信號(hào)LAB一CLK。如用LAB線 路寄生電容192示意表示的,可以有與驅(qū)動(dòng)路徑184相關(guān)且數(shù)量不可 忽視的寄生電容,因?yàn)樗梢杂脕眚?qū)動(dòng)很多邏輯元件和觸發(fā)器,圖中 僅顯示了其中一個(gè)。結(jié)果是反相器INV3可以使用大晶體管構(gòu)造,如圖 12中用相對(duì)大的反相器INV3示意表示的。
085時(shí)鐘脈沖信號(hào)LAB—CLK可以作為邏輯電路186的輸入。電 路186可以包括可選的多路復(fù)用器電路,允許邏輯元件選擇需要的 LAB一CLK信號(hào)作為其時(shí)鐘脈沖CP,或執(zhí)行反相,作為其反相時(shí)鐘脈沖 NCP。例如,在給定的邏輯區(qū)域中可能有兩個(gè)或更多個(gè)可能的LAB一CLK 信號(hào)供選擇(例如,在多時(shí)鐘體系結(jié)構(gòu)中)。電路186可以包括反相電 路,用于生成反相時(shí)鐘脈沖NCP。如圖12所示,在邏輯186的輸出188 和190分別提供時(shí)鐘脈沖信號(hào)CP和NCP。
086時(shí)鐘脈沖信號(hào)LAB—CLK可以作為反相器INV2的輸入。反相 器INV2的輸出信號(hào)可以被路由到與非門NAND1兩個(gè)輸入中的一個(gè)。與 非門NAND1的另一個(gè)輸入可以接收來自節(jié)點(diǎn)196的信號(hào)PE。用一個(gè)或 多個(gè)延遲元件,如延遲元件106,可以提供可配置數(shù)量的延遲。在圖 12所示的示例中,通過多個(gè)串聯(lián)連接的反相器組成延遲元件106。通 過向相關(guān)聯(lián)的配置隨機(jī)存取存儲(chǔ)單元20加載配置數(shù)據(jù),可以控制多路 復(fù)用器108。單元20的輸出可以通過路徑198作為多路復(fù)用器108的 控制輸入。多路復(fù)用器108有兩個(gè)輸入,因此圖12中所示的脈沖生成 電路176有兩個(gè)延遲設(shè)置(高和低)。 一般地,可以提供任意適合數(shù)量 的延遲設(shè)置。(在圖8的示例中,延遲電路92有4個(gè)相關(guān)聯(lián)的延遲設(shè) 置)
087多路復(fù)用器M1在輸入"1"接收多路復(fù)用器108的輸出, 在輸入"O"接收正電源供應(yīng)電壓Vcc。多路復(fù)用器M1的輸出提供給節(jié) 點(diǎn)196。多路復(fù)用器Ml有一個(gè)控制輸入200,用于決定它的狀態(tài)。控 制輸入200與導(dǎo)線178相連,并接收時(shí)鐘信號(hào)CLK。當(dāng)時(shí)鐘CLK為高電 平時(shí),多路復(fù)用器108的輸出被路由到節(jié)點(diǎn)196。當(dāng)時(shí)鐘CLK為低電平時(shí),多路復(fù)用器M1被配置為將其輸入"O"上的高電壓路由到節(jié)點(diǎn)196。
088當(dāng)在特定電路中競(jìng)爭(zhēng)不是一個(gè)問題時(shí),邏輯設(shè)計(jì)者可以為 圖12所示的配置隨機(jī)存取存儲(chǔ)單元20加載邏輯0。這使延遲元件106 的延遲得到使用,并且激活了脈沖鎖存器86 (圖11)的時(shí)間借用特性。 如果需要,可以提供額外級(jí)別的脈沖延遲調(diào)整(例如,通過使用具有 更多輸入的多路復(fù)用器108)。
089當(dāng)在特定電路中競(jìng)爭(zhēng)是一個(gè)問題時(shí),邏輯設(shè)計(jì)者會(huì)選擇不 使用時(shí)間借用,為圖12所示的配置隨機(jī)存取存儲(chǔ)單元20加載邏輯1。 在這種情況下,電路176生成的時(shí)鐘脈沖CP和NCP有適合鎖存器86 (圖ll)良好運(yùn)行的最小寬度。優(yōu)選選擇與非門NAND1、反相器INV1 和多路復(fù)用器108的特性,使得盡可能近似地復(fù)制脈沖鎖存器86 (圖 11)的延遲,因此電路176可以稱作"自定時(shí)(self-timed)"。
090在不使用時(shí)間借用的情況下,電路176的運(yùn)行可以按如下 所述理解。最初地,時(shí)鐘信號(hào)CLK為低電平,因此多路復(fù)用器M1將其 輸入"0"上的高電壓路由到節(jié)點(diǎn)196。這使信號(hào)PE為高電平。時(shí)鐘使 能信號(hào)CE初始化為高電平。因?yàn)镃LK為低電平,所以與非門NAND2的 輸出為高電平。由于與非門NAND2的輸出是高電平,反相器INV3的輸 出(也就是時(shí)鐘脈沖信號(hào)LAB一CLK)為低電平(如同相關(guān)聯(lián)的信號(hào)CP)。 由于LAB—CLK是低電平,反相器INV2的輸出為高電平。因?yàn)樾盘?hào)PE 為高電平,反相器INV2的輸出為高電平,所以與非門NAND1的兩個(gè)輸 入都是高電平。所以與非門NAND1的輸出為低電平。反相器INV1將與 非門NAND1的低電平輸出反相,在其輸出端(節(jié)點(diǎn)202)生成高電平信 號(hào)。沒有使用時(shí)間借用,因此圖12所示的配置隨機(jī)存取存儲(chǔ)單元20 被加載邏輯1,并指示多路復(fù)用器108將其輸入"1"與其輸出相連。 由于時(shí)鐘CLK為低電平,所以多路復(fù)用器Ml在導(dǎo)線200上的控制輸入 為低電平,并且多路復(fù)用器Ml把其輸入"0"上的高電平信號(hào)連接至 節(jié)點(diǎn)196,保持信號(hào)PE處于高電平值。
091當(dāng)時(shí)鐘信號(hào)CLK從低電平轉(zhuǎn)換為高電平時(shí),導(dǎo)線200上的 多路復(fù)用器M1的控制輸入變成高電平。結(jié)果,多路復(fù)用器M1切換至 其輸入"1",在M1的輸入"1"端將高電平輸入從反相器INV1的輸出 傳遞到Ml的輸出端。因此信號(hào)PE的狀態(tài)沒有即刻改變。092在這個(gè)階段,時(shí)鐘使能信號(hào)CE是高電平,信號(hào)PE是高電 平。相應(yīng)地,當(dāng)時(shí)鐘信號(hào)CLK變?yōu)楦唠娖綍r(shí),與非門NAND2的輸出變 成低電平。反相器INV3在N認(rèn)D2的輸出反相低電平信號(hào),產(chǎn)生高電平 信號(hào)LAB_CLK。反相器INV2反相這個(gè)高電平信號(hào),因此反相器INV2 的輸出變成低電平。與非門NAND1有來自信號(hào)PE的高電平輸入。當(dāng)與 非門NAND1接收到來自反相器INV2的低電平信號(hào),與非門NAND1的輸 出信號(hào)變?yōu)楦唠娖?。反相器INV1接收來自與非門NAND1的高電平輸出, 其輸出為低電平。因?yàn)榕渲秒S機(jī)存取存儲(chǔ)單元在導(dǎo)線198上的輸出是 高電平,所以反相器INV1的低電平輸出經(jīng)過多路復(fù)用器108的輸入"l" 傳到多路復(fù)用器M1的輸入"1"。時(shí)鐘信號(hào)CLK是高電平,因此配置多 路復(fù)用器Ml將其輸入"1"的低電平信號(hào)路由到節(jié)點(diǎn)196。這使信號(hào) PE的電平變低。
093作為脈沖生成電路的運(yùn)行結(jié)果,生成的信號(hào)PE是信號(hào)CLK 的反相和延遲形式,并且在路徑184上生成脈沖形狀的信號(hào)LAB—CLK。 只要時(shí)鐘信號(hào)CLK有上升沿,并在CLK的該上升沿后不久CLK的電平 變低(在短暫延遲后),信號(hào)LAB—CLK的電平就變高(在短暫延遲后), 延遲由LAB—CLK上升所需時(shí)間量與來自延遲鏈106的額外延遲一起決 定。因此信號(hào)LAB—CLK (和信號(hào)CP和NCP,它們分別是LAB—CLK的真 實(shí)形式和補(bǔ)充形式)的特性可以用圖9所示的脈沖形狀類型進(jìn)行描述。 圖17所示的時(shí)序圖顯示了信號(hào)CLK, LAB—CLK和PE的行為。
094脈沖生成電路176的設(shè)計(jì)保證了脈沖LAB—CLK的寬度(和 相關(guān)的脈沖CP和NCP的寬度)可以盡可能的小,同時(shí)又足夠長(zhǎng),使電 平敏感鎖存器86能夠正常運(yùn)行。這是因?yàn)閳D12的與非門NAND1、反相 器INV1和多路復(fù)用器108產(chǎn)生了足夠長(zhǎng)的延遲使鎖存器86 (圖11) 正常工作。
095脈沖生成電路176的設(shè)計(jì)還生成了正確的脈沖,這些脈沖 不受因制程工藝變化造成的額外改變的影響。如果工藝變化沒有很好 地控制,反相器INV3的強(qiáng)度變化可能會(huì)不利地影響脈沖寬度的正確性。 然而,圖12所示的脈沖生成電路176的布局補(bǔ)償了工藝變化。例如, 如果工藝變化使反相器INV3比其標(biāo)稱值更大,反相器INV3將使時(shí)鐘 脈沖LAB—CLK上升太早。然而,這將引起信號(hào)PE過早地重置為低電平值。信號(hào)PE從高電平到低電平的過早轉(zhuǎn)變將使時(shí)鐘脈沖LAB_CLK下降 沿提前轉(zhuǎn)變,從而進(jìn)行補(bǔ)償。類似地,如果反相器INV3由于工藝變化 而低于其標(biāo)稱值,信號(hào)LAB—CLK將上升緩慢。因此這會(huì)使信號(hào)PE的轉(zhuǎn) 變比平常晚,并且將使LAB—CLK的下降比平常更晚。這種補(bǔ)償電路行 為的結(jié)果是最小化因集成電路工藝變化而引起的LAB—CLK (和脈沖CP 和NCP)寬度的變化。
096由于鎖存器之間的時(shí)鐘偏移引起的保持時(shí)間問題使一些集 成電路受潛在競(jìng)爭(zhēng)情況的影響。當(dāng)鎖存器彼此之間的物理位置很接近, 但電氣距離很遠(yuǎn)時(shí)可能發(fā)生這種情況。鎖存器的輸入時(shí)鐘信號(hào)可能引 起偏移。例如,兩個(gè)邏輯陣列塊可能相互鄰接,但位于時(shí)鐘樹的不同 分支上。例如,時(shí)鐘樹可能是H形狀的時(shí)鐘樹,這種類型的時(shí)鐘樹有 時(shí)也被稱作H-樹。
097在諸如可編程邏輯器件集成電路這類的集成電路中,可以 配備多個(gè)H-樹用于提供全局時(shí)鐘。使用可配置多路復(fù)用器或其它可編 程路由電路將時(shí)鐘信號(hào)路由到樹中需要的位置。例如,可以使用可配 置多路復(fù)用器在樹中較低等級(jí)的時(shí)鐘子集中選擇(例如,從可編程邏 輯器件中選擇行時(shí)鐘< R0WCLK > )。
098在這些情況下,兩個(gè)不同鎖存器接收數(shù)據(jù)的相對(duì)延遲可能 小,但兩個(gè)鎖存器之間的時(shí)鐘偏移可能大。這可能會(huì)導(dǎo)致不希望的競(jìng) 爭(zhēng)情況。為了解決這種類型的時(shí)鐘偏移,集成電路(例如,高速電路, 如處理器和可編程邏輯器件)可以配備可配置時(shí)鐘樹短路結(jié)構(gòu)??墒?用存儲(chǔ)元件,如存儲(chǔ)元件20,配置可配置時(shí)鐘樹短路結(jié)構(gòu)。
099圖13顯示了具有可配置時(shí)鐘樹短路結(jié)構(gòu)的示例性的時(shí)鐘 樹210。如圖13所示,時(shí)鐘樹210可以在輸入,如輸入212,從時(shí)鐘 源接收時(shí)鐘。緩存器,如緩存器214,可用來驅(qū)動(dòng)時(shí)鐘到時(shí)鐘樹210 中的導(dǎo)線。時(shí)鐘樹被排列成將時(shí)鐘信號(hào)分割,使之沿長(zhǎng)度相對(duì)相等的 路徑傳輸。這有利于均衡集成電路中的各電路所經(jīng)歷的時(shí)鐘信號(hào)分配 路徑(例如,在可編程邏輯器件10上)。例如,在節(jié)點(diǎn)216,時(shí)鐘信號(hào) 可以被分開沿兩條路徑傳輸,第一條路徑沿方向220將時(shí)鐘信號(hào)傳輸 到節(jié)點(diǎn)228,第二條路徑沿方向218將時(shí)鐘信號(hào)傳輸?shù)焦?jié)點(diǎn)222。在節(jié) 點(diǎn)228和節(jié)點(diǎn)222,時(shí)鐘信號(hào)被再次分開,形成H-時(shí)鐘形狀的時(shí)鐘樹210。特別地,在節(jié)點(diǎn)228,時(shí)鐘信號(hào)被分開沿兩條路徑傳輸,第一條 路徑沿方向230傳輸時(shí)鐘信號(hào),第二條路徑沿方向232傳輸時(shí)鐘信號(hào)。 在節(jié)點(diǎn)222,時(shí)鐘信號(hào)被分開沿兩條路徑傳輸,第一條路徑沿方向224 傳輸時(shí)鐘信號(hào),第二條路徑沿方向226傳輸時(shí)鐘信號(hào)。
100時(shí)鐘信號(hào)可以被路由到以行排列的邏輯電路中,如行234。
可以使用多路復(fù)用器或其它適合的開關(guān)結(jié)構(gòu)將時(shí)鐘傳送到每一行的時(shí) 鐘導(dǎo)線。在圖13所示示例中,多路復(fù)用器240路由行時(shí)鐘信號(hào)到左側(cè) 的路徑242,多路復(fù)用器236路由時(shí)鐘信號(hào)到右側(cè)的路徑238。
101在特定行的中心,來自輸入212的時(shí)鐘信號(hào)的延遲差異可 以引起行左側(cè)時(shí)鐘信號(hào)形式與行右側(cè)時(shí)鐘信號(hào)形式之間的偏移。為了 減少或消除偏移,邏輯設(shè)計(jì)者可以為合適的存儲(chǔ)元件20加載編程數(shù)據(jù)。 這些存儲(chǔ)元件的輸出可以提供給N型金屬氧化半導(dǎo)體(NMOS)傳輸晶 體管的柵極或其它合適的可配置時(shí)鐘樹短路結(jié)構(gòu)。存儲(chǔ)元件中的配置 數(shù)據(jù)可以使傳輸晶體管有選擇地將不同時(shí)鐘路徑導(dǎo)體一起短路。例如, 存儲(chǔ)元件20可以在其輸出端產(chǎn)生控制信號(hào)(例如,邏輯高電平),該 信號(hào)將晶體管246接通,從而將行234中的導(dǎo)線242和導(dǎo)線248 —起 短路。這減少了邏輯區(qū)之間的時(shí)鐘偏移,如邏輯元件252和邏輯元件 254之間的時(shí)鐘偏移,因此邏輯元件252和邏輯元件254可以在高時(shí)鐘 頻率正常工作。
102當(dāng)H-樹的不同分支或其它由晶體管,如晶體管246,提供 的時(shí)鐘分配網(wǎng)絡(luò)用來傳輸同一時(shí)鐘信號(hào)(例如,時(shí)鐘信號(hào)CL)的不同 形式時(shí),會(huì)在分支之間生成低阻抗連接。在可編程邏輯器件集成電路 或其它具有可配置時(shí)鐘結(jié)構(gòu)的集成電路中,有時(shí)可以使用兩條時(shí)鐘樹 分支傳輸不同的信號(hào)。在這種情況下,有時(shí)會(huì)使用合適的可配置時(shí)鐘 樹短路結(jié)構(gòu)(例如,圖13示例中的晶體管246)的存儲(chǔ)元件20生成控 制信號(hào),用來配置可配置時(shí)鐘樹短路結(jié)構(gòu),使之在其終端之間產(chǎn)生開 路。例如,可以關(guān)斷晶體管246,在其源-漏端之間形成開路。當(dāng)時(shí)鐘 路徑傳遞相同的時(shí)鐘信號(hào)時(shí),可僅優(yōu)選使用短路結(jié)構(gòu),如晶體管246, 將時(shí)鐘路徑短接在一起。
103適當(dāng)布局可配置短路連接,使得任何時(shí)候相同時(shí)鐘信號(hào)被 路由到帶有潛在大時(shí)鐘偏移(也就是潛在大時(shí)鐘偏移LAB)的電路時(shí),可以使能一個(gè)可配置短路連接。通過一種合適的技術(shù),可以在電路左 側(cè)右側(cè)的每一對(duì)可能的行時(shí)鐘(rowclks)之間提供可配置短路連接。
104較不復(fù)雜的布局保證時(shí)鐘樹(例如,H-樹)中每一個(gè)時(shí)鐘 可以作為rowclk被路由到每一行。通過這種布局,可能保證在左右兩 邊使用的那些時(shí)鐘可以被路由到帶有可用短路結(jié)構(gòu)的行中的時(shí)鐘路徑 上。在這種配置中,每一行只需配備一個(gè)可配置短路連接。
105例如,在某個(gè)器件中有6個(gè)rowclk,對(duì)每一個(gè)可能的信號(hào) 對(duì),在其左右分支之間需要提供一個(gè)連接,因此需要21個(gè)連接。如果 有足夠的路由靈活性,當(dāng)在左右兩邊使用時(shí)鐘時(shí),將使用同一時(shí)鐘 rowclk。在這種情況下,只需提供6個(gè)連接。如本例所示,靈活的時(shí) 鐘路由布局可以減少所需的可配置時(shí)鐘樹短路連接(例如,從21到6) 的數(shù)量,但對(duì)H-樹而言,可能增加至rowclk多路復(fù)用器的所需容量, 如圖13中的多路復(fù)用器240和多路復(fù)用器236。
106如果需要,可使用傳統(tǒng)的緩存器來驅(qū)動(dòng)rowclk (也就是路 徑上如路徑242和路徑238上的時(shí)鐘信號(hào))。然而,如果相較于后面的 rowclk,當(dāng)前面的rowclk驅(qū)動(dòng)一個(gè)不同值到行時(shí)存在一個(gè)時(shí)間間隔, 這種類型的布局可能導(dǎo)致某些短路電流。為了避免這種類型的競(jìng)爭(zhēng), 當(dāng)驅(qū)動(dòng)時(shí)鐘信號(hào)到選擇一起短路的時(shí)鐘路徑上時(shí),使用低競(jìng)爭(zhēng)的緩存 器是適當(dāng)?shù)?。時(shí)鐘分配緩存器可能的位置由節(jié)點(diǎn)256和節(jié)點(diǎn)258表示 (作為示例)。時(shí)鐘分配緩存器(驅(qū)動(dòng)器)可以按需放置在時(shí)鐘樹210 中任何合適的位置。
107低競(jìng)爭(zhēng)時(shí)鐘分配驅(qū)動(dòng)器可以包括具有快速禁能和延遲使能 特性的驅(qū)動(dòng)晶體管。圖14顯示了這種低競(jìng)爭(zhēng)時(shí)鐘驅(qū)動(dòng)器類型的示例電 路。如圖14所示,時(shí)鐘驅(qū)動(dòng)器260可以有并聯(lián)反相器266和反相器270。 在輸入272可以接收時(shí)鐘信號(hào)CLK,在輸出274可以提供相應(yīng)增強(qiáng)形式 的時(shí)鐘信號(hào)。在典型情形中,輸出274可以與時(shí)鐘分配路徑相連,例 如圖13中所示行路徑中一條(作為示例)。在這種類型的環(huán)境中,使 用驅(qū)動(dòng)器260的低競(jìng)爭(zhēng)能力防止短路電路電流在行中產(chǎn)生,在行中左 右兩側(cè)的時(shí)鐘分配路徑通過使用傳輸晶體管,如傳輸晶體管246, 一起 被短路。然而一般地,驅(qū)動(dòng)器260可以與集成電路中時(shí)鐘分配網(wǎng)絡(luò)的 任何合適部分相連。108反相器266和反相器270 (有時(shí)也被稱作緩存器、驅(qū)動(dòng)器、 驅(qū)動(dòng)電路等等)的輸出與輸出導(dǎo)線274相連。正電源電壓(例如Vcc) 可以施加到正電源導(dǎo)線262,接地電源電壓(例如O伏特的Vss)可以 施加到地電源終端264??梢詮臅r(shí)鐘信號(hào)輸入導(dǎo)線272直接驅(qū)動(dòng)反相器 266。可以用通過脈沖生成電路268的時(shí)鐘信號(hào)形式驅(qū)動(dòng)反相器270。
109反相器266的強(qiáng)度優(yōu)選小于反相器270的強(qiáng)度。反相器266 和反相器270的相對(duì)強(qiáng)度可以通過為反相器266和反相器270中的N 溝道和P溝道金屬氧化半導(dǎo)體晶體管選擇合適的晶體管柵極寬度進(jìn)行 調(diào)整。例如,通過由柵極寬度大于反相器266中使用的晶體管的柵極 寬度的晶體管來形成反相器270,反相器270的強(qiáng)度可以被配置成大于 反相器266的強(qiáng)度。
110反相器266可作為弱維持器(sustainer),弱驅(qū)動(dòng)時(shí)鐘路 徑達(dá)到希望值。由于有時(shí)序電路268,反相器270顯示出了慢接通特性 和快關(guān)斷特性。結(jié)果是在時(shí)鐘上升和下降轉(zhuǎn)變過程中,其中一個(gè)反相 器會(huì)在另一個(gè)反相器晶體管接通前關(guān)斷。這會(huì)暫時(shí)削弱時(shí)鐘驅(qū)動(dòng)器260 的強(qiáng)度,并阻止與相應(yīng)的時(shí)鐘驅(qū)動(dòng)器產(chǎn)生競(jìng)爭(zhēng),該時(shí)鐘驅(qū)動(dòng)器驅(qū)動(dòng)標(biāo) 稱相同的時(shí)鐘信號(hào)到短路時(shí)鐘路徑的另一端。圖18所示的時(shí)序圖顯示 了輸入導(dǎo)線272上的信號(hào)CLK、信號(hào)ng (晶體管TN柵極上的信號(hào))和 pg (晶體管TP柵極上的信號(hào))之間的關(guān)系。
111圖14的示例僅僅是示例。 一般地,當(dāng)驅(qū)動(dòng)時(shí)鐘到時(shí)鐘路 徑時(shí),如圖13中的路徑242和路徑238,可以使用任何合適的低競(jìng)爭(zhēng) 時(shí)鐘驅(qū)動(dòng)器。當(dāng)兩個(gè)低競(jìng)爭(zhēng)驅(qū)動(dòng)器連接到同一路徑,但由延遲稍微不 同的輸入驅(qū)動(dòng)時(shí),第一個(gè)收到時(shí)鐘信號(hào)的驅(qū)動(dòng)器將驅(qū)動(dòng)路徑到新值, 晚收到時(shí)鐘信號(hào)的驅(qū)動(dòng)器將仍然被禁用一小段時(shí)間。這就避免了兩個(gè) 驅(qū)動(dòng)器之間的競(jìng)爭(zhēng)電流。
112如關(guān)于圖10的描述的,脈沖鎖存器的健壯性受到競(jìng)爭(zhēng)的 不利影響。當(dāng)源鎖存器中時(shí)鐘到輸出的時(shí)間(Tco)和經(jīng)過任意中間組 合邏輯的傳播時(shí)延小于目標(biāo)鎖存器的保持時(shí)間(Th,即時(shí)鐘沿后數(shù)據(jù) 必須穩(wěn)定所需的時(shí)間)時(shí),會(huì)產(chǎn)生競(jìng)爭(zhēng)情況。因此,當(dāng)Tco+Tpd〈Th時(shí) 存在競(jìng)爭(zhēng)問題。這個(gè)問題可以通過兩種手段解決要么增加Tco的值, 要么減小Th的值。在脈沖鎖存配置中這樣做,需要注意保持脈沖鎖存器的高速率。只有當(dāng)存在競(jìng)爭(zhēng)危險(xiǎn)時(shí),邏輯設(shè)計(jì)者通過選擇性只增加
Tco可以達(dá)到這個(gè)目標(biāo)。
113根據(jù)本發(fā)明實(shí)施例,通過選擇增加第二鎖存電路可以增加 TCO (例如,在給定脈沖鎖存器的輸出路徑選擇性地增加負(fù)相鎖存)。
圖15所示的脈沖鎖存電路276顯示了這種類型布局。如圖15所示, 鎖存電路276可以有電平敏感鎖存器164和第二選擇使能的鎖存器L2。 一個(gè)適合的布局是圖15所示的電路276可以和圖11所示的電路86并 聯(lián)(也就是電路276和電路86可以都與相同邏輯輸出相連,例如同一 査找表輸出和同一sdata導(dǎo)線)。在這種類型的布局中,給定的邏輯元 件可以有兩個(gè)不同的輸出,其中一個(gè)與圖15所示類型的鎖存電路相聯(lián), 另一個(gè)與圖11所示類型的鎖存電路相聯(lián)。如果需要,諸如圖11和圖 15所示的電路可以在集成電路中分開使用。
114電路276既可以配置為脈沖鎖存器(通過合適地對(duì)器件IO 編程,禁用鎖存器L2),也可以配置為沿觸發(fā)觸發(fā)器(通過合適地對(duì)器 件10編程,使能鎖存器L2)。通過對(duì)應(yīng)可編程存儲(chǔ)元件20的輸出可以 控制傳輸晶體管T1的狀態(tài)。通過給存儲(chǔ)元件加載合適的配置數(shù)據(jù),晶 體管T1可以按需關(guān)斷或接通。
115電路276可以按三種模式運(yùn)行。
116在第一種模式中,可以將電路276配置為脈沖鎖存器。在 這種模式中,控制信號(hào)CA是高電平,控制信號(hào)CB是低電平,晶體管 Tl被關(guān)斷。這將禁用鎖存器L2。鎖存器164的輸出信號(hào)可以經(jīng)過輸出 緩存器166被路由到輸出導(dǎo)線158,不受鎖存電路L2鎖存操作的影響。
117在第二種模式中,通過使能鎖存器L2,電路276可以作為 沿觸發(fā)觸發(fā)器運(yùn)行。在這種模式中,控制信號(hào)CA是反相的時(shí)鐘脈沖 NCP,控制信號(hào)CB是時(shí)鐘脈沖CP,傳輸門Tl關(guān)斷。由于在這種配置中, 電路276有兩個(gè)活動(dòng)的鎖存器,因此電路276作為沿觸發(fā)觸發(fā)器,消
除了集成電路中產(chǎn)生競(jìng)爭(zhēng)的風(fēng)險(xiǎn)。
118在第三種模式中,電路276作為組合電路運(yùn)行。在這種情 況下,通過將控制信號(hào)CA和CB設(shè)為低電平,禁用鎖存器L2。晶體管 Tl接通,繞過鎖存器L1。在這種配置中,來自輸入導(dǎo)線156的組合信 號(hào)將被路由至輸出158。119如果需要,選擇性使能的第二鎖存電路可以增加到電路276
中鎖存器164的上游而不是其下游。圖16顯示了這種類型的配置。如 圖16所示,鎖存電路276在電路系統(tǒng)EL2中可以有第二鎖存電路292, 當(dāng)想減少競(jìng)爭(zhēng)風(fēng)險(xiǎn)時(shí),鎖存電路292作為第二負(fù)相鎖存器。鎖存電路 292可以基于具有反相時(shí)鐘脈沖輸入的電平敏感鎖存器。可以配備單獨(dú) 的傳輸門電路290,用于耦合鎖存器292的輸出和脈沖鎖存器164的輸 入。和圖15中的鎖存電路276 —樣,圖16中的鎖存電路276可以有 三種操作模式。
120在第一種操作模式中,電路276作為脈沖鎖存器運(yùn)行。在 這種運(yùn)行模式中,在鎖存器164中,時(shí)鐘脈沖CP可以作為傳輸門控制 信號(hào)C1,反相時(shí)鐘脈沖NCP可以作為傳輸門控制信號(hào)C2。傳輸門290 的控制信號(hào)C3可以設(shè)置為低電平,這樣將禁用鎖存器EL2。傳輸晶體 管Tl被關(guān)斷,這樣經(jīng)過鎖存器164將信號(hào)路由至輸出158。
121在第二模式中,電路276作為沿觸發(fā)觸發(fā)器運(yùn)行。在這種 配置中,傳輸晶體管R1被關(guān)斷。控制信號(hào)Cl被設(shè)置為低電平,禁用 傳輸門170??刂菩盘?hào)C2可以是反相時(shí)鐘脈沖NCP,控制信號(hào)C3可以 是時(shí)鐘脈沖CP。這將使能鎖存器292,使信號(hào)從輸入156 (或輸入160) 經(jīng)EL2和鎖存器164路由至輸出158。因?yàn)樵谶@種模式中電路276作為 沿觸發(fā)觸發(fā)器運(yùn)行,消除了競(jìng)爭(zhēng)風(fēng)險(xiǎn)。
122在第三種模式中,鎖存電路276作為組合電路運(yùn)行。在這 種模式中,控制信號(hào)C1、 C2和C3設(shè)為低電平,禁用鎖存器EL2和鎖 存器164。晶體管Tl被接通,來自輸入156的組合信號(hào)可以繞過兩個(gè) 鎖存器,經(jīng)過緩存器166傳輸?shù)捷敵?58。
123上述僅是本發(fā)明原則的示例,本領(lǐng)域技術(shù)熟練人員可以在 不偏離本發(fā)明的范圍和實(shí)質(zhì)的情況下做各種修改。
權(quán)利要求
1.選擇性地可配置為脈沖鎖存器和沿觸發(fā)觸發(fā)器的集成電路上的鎖存電路,包括脈沖鎖存器,其由至少一個(gè)時(shí)鐘脈沖控制;和額外的鎖存器,其可配置為以使能模式和禁能模式運(yùn)行,在使能模式中所述脈沖鎖存器和所述額外的鎖存器作為沿觸發(fā)觸發(fā)器運(yùn)行;而在禁能模式中額外的鎖存器被禁用并且不鎖存任何信號(hào)。
2. 根據(jù)權(quán)利要求1所述的鎖存電路,其中所述額外的鎖存器與所 述脈沖鎖存器的輸出相連,并且從所述脈沖鎖存器接收信號(hào)。
3. 根據(jù)權(quán)利要求1所述的鎖存電路,其中所述額外的鎖存器與所 述脈沖鎖存器的輸入相連,并且為所述脈沖鎖存器提供信號(hào)。
4. 根據(jù)權(quán)利要求1所述的鎖存電路,還包括 輸入導(dǎo)線,在此接收到所述鎖存電路的輸入信號(hào); 輸出導(dǎo)線,在此提供來自所述鎖存電路的輸出信號(hào); 至少一個(gè)傳輸晶體管,其耦合在所述輸入和所述輸出之間;和 可編程的存儲(chǔ)元件,該存儲(chǔ)元件有控制線,用于控制所述傳輸晶體管的狀態(tài)。
5. 根據(jù)權(quán)利要求1所述的鎖存電路,還包括輸出導(dǎo)線,所述脈沖鎖存器提供輸出信號(hào)到該輸出導(dǎo)線,其中所 述脈沖鎖存器包括接收所述時(shí)鐘脈沖的第一個(gè)傳輸門和接收所述時(shí)鐘 脈沖的反相形式的第二個(gè)傳輸門。
6. 根據(jù)權(quán)利要求5所述的鎖存電路,其中所述額外的鎖存器包括 時(shí)鐘信號(hào)輸入,所述額外的鎖存器在此輸入處由時(shí)鐘信號(hào)計(jì)時(shí),該時(shí) 鐘信號(hào)選自所述時(shí)鐘脈沖和所述時(shí)鐘脈沖的反相形式。
7. 根據(jù)權(quán)利要求1所述的鎖存電路,還包括 輸入導(dǎo)線,在此處接收到所述鎖存電路的輸入信號(hào); 輸出導(dǎo)線,在此處提供來自所述鎖存電路的輸出信號(hào); 至少一個(gè)傳輸晶體管,其耦合在所述輸入和所述輸出之間;和 可編程存儲(chǔ)元件,該存儲(chǔ)元件有與所述傳輸晶體管相連的控制線,用于控制所述傳輸晶體管的狀態(tài),其中所述額外的鎖存器包括時(shí)鐘信 號(hào)輸入,所述額外的鎖存器在該輸入處由時(shí)鐘信號(hào)計(jì)時(shí),該時(shí)鐘信號(hào) 選自所述時(shí)鐘脈沖和所述時(shí)鐘脈沖的反相形式。
8. 集成電路上的電路,包括時(shí)鐘分配網(wǎng)絡(luò),其有至少兩個(gè)單獨(dú)的時(shí)鐘路徑,它們?yōu)閷?shí)體上相 鄰的邏輯電路饋送各自的同一時(shí)鐘信號(hào)的可能偏移版本, 和 連接所述時(shí)鐘路徑的可配置時(shí)鐘樹短路結(jié)構(gòu)。
9. 根據(jù)權(quán)利要求8所述的電路,還包括有控制輸出的可編程存儲(chǔ) 元件,所述控制輸出為所述可配置時(shí)鐘樹短路結(jié)構(gòu)提供控制信號(hào),其 中所述可配置時(shí)鐘樹短路結(jié)構(gòu)響應(yīng)所述控制信號(hào),將所述兩個(gè)單獨(dú)的 時(shí)鐘路徑一起短路。
10. 根據(jù)權(quán)利要求8所述的電路,其中所述集成電路包括有多個(gè)可 配置隨機(jī)存取存儲(chǔ)元件的可編程邏輯器件集成電路,其中所述可配置 時(shí)鐘樹短路結(jié)構(gòu)包括有門電路的晶體管,其中特定的一個(gè)存儲(chǔ)元件有 為所述門電路提供控制信號(hào)的控制輸出,其中所述晶體管響應(yīng)所述控 制信號(hào),把所述兩個(gè)單獨(dú)的時(shí)鐘路徑一起短路。
11. 根據(jù)權(quán)利要求8所述的電路,還包括各自的時(shí)鐘驅(qū)動(dòng)器,這些 時(shí)鐘驅(qū)動(dòng)器分別驅(qū)動(dòng)所述同一時(shí)鐘信號(hào)的各自可能偏移版本到所述兩 個(gè)單獨(dú)的時(shí)鐘路徑上。
12. 根據(jù)權(quán)利要求11所述的電路,其中每個(gè)時(shí)鐘驅(qū)動(dòng)器包含第一 緩存器和第二緩存器,其中所述第一緩存器比所述第二緩存器弱,并且其中所述第一緩存器和第二緩存器連接到同一輸出導(dǎo)線。
13. 根據(jù)權(quán)利要求12所述的電路,其中每個(gè)時(shí)鐘驅(qū)動(dòng)器含有時(shí)鐘信號(hào)輸入和耦合在所述時(shí)鐘信號(hào)輸入和所述第二緩存器之間的時(shí)序電 路,其中當(dāng)所述時(shí)鐘驅(qū)動(dòng)器驅(qū)動(dòng)信號(hào)到所述時(shí)鐘路徑上,而所述可配 置時(shí)鐘樹短路結(jié)構(gòu)將所述時(shí)鐘路徑相互短路時(shí),所述時(shí)序電路減少各 自時(shí)鐘驅(qū)動(dòng)器之間的競(jìng)爭(zhēng)。
14. 集成電路上的電路,包括脈沖鎖存器,其由電平敏感鎖存器組成,接收至少一個(gè)給定寬度 的時(shí)鐘脈沖;和脈沖生成電路,其生成所述至少一個(gè)時(shí)鐘脈沖,其中所述脈沖生 成電路包括接收時(shí)鐘信號(hào)的輸入、提供所述時(shí)鐘脈沖的輸出和邏輯電 路,通過所述邏輯電路,來自所述輸出的信號(hào)被反饋,并和所述時(shí)鐘 信號(hào)組合。
15. 根據(jù)權(quán)利要求14所述的電路,其中所述邏輯電路包括反饋路 徑和在該反饋路徑中的至少一個(gè)與非門。
16. 根據(jù)權(quán)利要求14所述的電路,其中所述邏輯電路包括與所述 輸出耦合的反饋路徑、延遲元件和在所述反饋路徑中選擇性地包括所 述延遲元件的可配置多路復(fù)用器。
17. 根據(jù)權(quán)利要求14所述的電路,其中所述脈沖生成電路包括一 個(gè)接收所述時(shí)鐘信號(hào)的與非門和來自所述輸出的反饋信號(hào)。
18. 根據(jù)權(quán)利要求17所述的電路,其中所述時(shí)鐘脈沖有脈沖寬度, 其中所述反饋信號(hào)沿反饋路徑反饋,并且其中所述電路在所述反饋路 徑中包括一個(gè)與非門,該與非門至少部分用于設(shè)立所述脈沖寬度。
19. 根據(jù)權(quán)利要求17所述的電路,其中所述時(shí)鐘脈沖有脈沖寬度,其中所述反饋信號(hào)沿反饋路徑反饋,其中所述電路包括 在所述反饋路徑中的與非門; 延遲元件;和可配置地連接所述延遲元件到所述反饋路徑中的第一多路復(fù)用 器,其中當(dāng)所述延遲元件與所述反饋路徑不相連時(shí),所述與非門和該 多路復(fù)用器至少部分用于設(shè)立所述脈沖寬度。
20.根據(jù)權(quán)利要求19所述的電路,還包括在所述反饋路徑中的第 二多路復(fù)用器,其中所述第二多路復(fù)用器有控制輸入,該控制輸入受 所述輸入處的所述時(shí)鐘信號(hào)控制。
全文摘要
可配置的時(shí)間借用觸發(fā)器可以基于可配置的脈沖生成電路和脈沖鎖存器。所述電路可以使用自同步(或定時(shí))體系結(jié)構(gòu),該體系結(jié)構(gòu)控制生成的時(shí)鐘脈沖的寬度,這樣由時(shí)鐘脈沖控制的脈沖鎖存器減小了發(fā)生競(jìng)爭(zhēng)情況的風(fēng)險(xiǎn)??梢蕴峁╂i存電路,該鎖存電路基于脈沖鎖存器以及與脈沖鎖存器串聯(lián)的額外的鎖存器。在集成電路中可能發(fā)生競(jìng)爭(zhēng)的情況下,可切換使用額外的鎖存器,以將鎖存電路轉(zhuǎn)變?yōu)檠赜|發(fā)觸發(fā)器??梢詾闀r(shí)鐘樹提供可配置短路結(jié)構(gòu),用于幫助減小時(shí)鐘偏移。低競(jìng)爭(zhēng)時(shí)鐘驅(qū)動(dòng)器可以驅(qū)動(dòng)信號(hào)到時(shí)鐘樹路徑上。
文檔編號(hào)H03K19/00GK101552600SQ20091013051
公開日2009年10月7日 申請(qǐng)日期2009年3月31日 優(yōu)先權(quán)日2008年4月1日
發(fā)明者D·凱什曼, D·路易斯, J·C·克勞姆扎克 申請(qǐng)人:阿爾特拉公司