本公開涉及監(jiān)控通過集成電路的傳播延遲。
背景技術(shù):
1、集成電路(ic)包括互連邏輯單元的鏈,形成用于對在ic的輸入引腳和輸出引腳之間傳播的信號執(zhí)行邏輯功能的路徑。沿著通過ic的路徑傳播的信號經(jīng)歷一些延遲,這實際上是應(yīng)用于輸入引腳的輸入信號與輸出引腳電平改變之間的時間差。ic電路設(shè)計者考慮路徑的預(yù)期傳播延遲,例如,選擇足夠長的時鐘周期以適應(yīng)延遲。然而,組成邏輯單元的傳播延遲在使用中容易變化,例如,由于不同的操作條件(諸如工藝、電壓和溫度條件),并且還由于老化導(dǎo)致的硅退化。過大的傳播延遲可能引起數(shù)據(jù)處理錯誤,例如,由于傳播延遲使信號延遲超過ic時鐘周期。
技術(shù)實現(xiàn)思路
1、本公開的方面的目的在于提供一種用于確定集成電路中用以監(jiān)控沿集成電路路徑的傳播延遲的監(jiān)控器的合適的放置的方法。通過將這種監(jiān)控器插入ic中,可以監(jiān)控通過ic路徑的傳播延遲,并且可以標識表現(xiàn)出過大傳播延遲的路徑,從而允許采取糾正措施。
2、然而,集成電路可以定義非常大量的路徑,相應(yīng)地,需要非常大量的監(jiān)控器來監(jiān)控每個路徑,從而產(chǎn)生大的面積開銷。而本公開的方面提供了一種用于確定路徑子集以用于監(jiān)控的方法,該子集相對地表示沿所有路徑的傳播延遲。特別地,本公開的方面旨在確定適當(dāng)?shù)谋O(jiān)控器放置,以監(jiān)控最容易出現(xiàn)延遲故障的路徑,并且使得監(jiān)控器覆蓋電路中相對大比例的邏輯單元。
3、因此,本公開的第一方面提供了一種用于確定用于監(jiān)控通過集成電路的路徑中的傳播延遲的監(jiān)控器的放置的計算機實現(xiàn)的方法,計算機實現(xiàn)的方法包括:確定通過集成電路的終止于集成電路的同一觸發(fā)器的一個或多個路徑;確定終止于該觸發(fā)器的一個或多個路徑中的邏輯單元;確定也在終止于由一個或多個監(jiān)控器監(jiān)控的一個或多個備選觸發(fā)器的一個或多個備選路徑中的這些邏輯單元的數(shù)目的測量;確定也在備選路徑中的這些邏輯單元的數(shù)目的測量是否滿足閾值條件;以及基于確定也在備選路徑中的邏輯單元的數(shù)目確實滿足閾值條件,確定用以監(jiān)控到觸發(fā)器的輸入的監(jiān)控器的放置。
4、該方法標識終止于公共觸發(fā)器的路徑,標識這些同終止路徑的組成單元,并且計算這些單元中有多少也處于已由另一監(jiān)控器監(jiān)控的其他路徑中。然后,該方法通過將共享單元的數(shù)目與閾值條件進行比較,來確定這些共享單元是否足夠多,以至于證明插入用以監(jiān)控所考慮的觸發(fā)器的新監(jiān)控器是合理的。可以說,監(jiān)控器監(jiān)控觸發(fā)器,因為它監(jiān)控到觸發(fā)器的輸入信號。
5、共享單元數(shù)目的測量以及閾值條件例如可以是以百分比或比率表示的量。在這種情況下,閾值條件可以預(yù)定義為使得相對低比例的共享單元(指示高比例的單元未被其他監(jiān)控器監(jiān)控)滿足閾值,從而導(dǎo)致放置用以監(jiān)控所考慮的觸發(fā)器的監(jiān)控器。備選地,如果確定終止于所考慮的觸發(fā)器的路徑包含相對大比例的處于已被其他監(jiān)控器監(jiān)控的其他路徑中的單元,則確定放置用以監(jiān)控該觸發(fā)器的監(jiān)控器可能不合理。因此,通過這種方法,例如可能受到可用面積約束實際限制的監(jiān)控器配額可以被有效地用于監(jiān)控ic的最大數(shù)目的邏輯單元。
6、因此,可以改進對ic中傳播延遲的監(jiān)控。
7、在實現(xiàn)方式中,確定通過集成電路的終止于集成電路的同一觸發(fā)器的一個或多個路徑包括:確定通過集成電路的多個路徑;確定沿這些路徑的傳播延遲;以及針對這些路徑中的每個路徑,按傳播延遲遞減的順序:確定各個路徑終止處的觸發(fā)器;確定終止于該觸發(fā)器的其他路徑;以及執(zhí)行對終止于該觸發(fā)器的一個或多個路徑中的邏輯單元的確定、對也在終止于由一個或多個監(jiān)控器監(jiān)控的一個或多個備選觸發(fā)器的一個或多個備選路徑中的這些邏輯單元的數(shù)目的測量滿足閾值條件的確定、以及基于確定也在備選路徑中的這些邏輯單元的數(shù)目確實滿足閾值條件而確定用以監(jiān)控該觸發(fā)器的監(jiān)控器的放置。
8、在實現(xiàn)方式中,對也在備選路徑中的這些邏輯單元的數(shù)目的測量是否滿足閾值條件的確定包括:確定也在備選路徑中的這些邏輯單元的數(shù)目與終止于該觸發(fā)器的一個或多個路徑中的邏輯單元的總數(shù)的比率。
9、在實現(xiàn)方式中,方法包括,基于確定放置用以監(jiān)控觸發(fā)器的監(jiān)控器:創(chuàng)建將觸發(fā)器記錄為被監(jiān)控的觸發(fā)器的機器可讀記錄;和/或創(chuàng)建將終止于觸發(fā)器的一個或多個路徑記錄為被監(jiān)控的路徑的機器可讀記錄;和/或創(chuàng)建將終止于觸發(fā)器的一個或多個路徑中的邏輯單元記錄為被監(jiān)控單元的機器可讀記錄。
10、在實現(xiàn)方式中,對也在終止于由一個或多個監(jiān)控器監(jiān)控的一個或多個備選觸發(fā)器的一個或多個備選路徑中的這些邏輯單元的數(shù)目的測量的確定包括:檢查機器可讀記錄中的至少一個機器可讀記錄,以及基于至少一個機器可讀記錄確定一個或多個路徑中的也在以下各項中的邏輯單元的數(shù)目的測量:終止于被記錄為被監(jiān)控的觸發(fā)器的觸發(fā)器的路徑;和/或被記錄為被監(jiān)控的路徑的路徑;和/或被監(jiān)控單元的記錄。
11、在實現(xiàn)方式中,方法包括針對另一觸發(fā)器重復(fù)方法。
12、在實現(xiàn)方式中,方法包括確定用于監(jiān)控通過集成電路的路徑中的傳播延遲的監(jiān)控器的配額,基于確定放置用以監(jiān)控觸發(fā)器的監(jiān)控器來確定是否已確定全部配額的監(jiān)控器用于放置,其中,針對另一觸發(fā)器重復(fù)方法是基于確定尚未確定全部配額的監(jiān)控器用于放置而被執(zhí)行的。
13、在實現(xiàn)方式中,方法包括針對方法的每個重復(fù)修改閾值條件,使得也在備選路徑中的這些邏輯單元的數(shù)目的測量被要求更小以滿足閾值條件。
14、在實現(xiàn)方式中,確定多個路徑包括:確定與通過集成電路的具有相對短的傳播延遲的其他路徑相比,通過所述集成電路的具有相對長的傳播延遲的多個路徑。
15、在實現(xiàn)方式中,確定多個路徑包括:確定通過集成電路的針對各個不同操作和環(huán)境條件具有最長傳播延遲的多個路徑。
16、在實現(xiàn)方式中,確定通過集成電路的、針對各個不同操作和環(huán)境條件具有最長傳播延遲的多個路徑包括:確定通過集成電路的針對集成電路的各個不同工藝、電壓、溫度和老化條件具有最長傳播延遲的多個路徑。
17、本公開的第二方面提供了一種計算機系統(tǒng),包括:至少一個處理器;以及至少一個存儲器,包括機器可讀指令,其中,至少一個存儲器和機器可讀指令被配置為與至少一個處理器一起使計算機系統(tǒng)通過前述陳述中任一項的方法來確定用于監(jiān)控通過集成電路的路徑中的傳播延遲的監(jiān)控器的放置。
18、本公開的第三方面提供了一種計算機程序,包括指令,指令在由計算機執(zhí)行時使計算機執(zhí)行前述陳述中任一項的方法。
19、本公開的第四方面提供了一種數(shù)據(jù)存儲設(shè)備,其上存儲有前述陳述的計算機程序。
20、本公開的這些和其他方面從下面描述的(多個)實施例中是明顯的。
1.一種用于確定用于監(jiān)控通過集成電路的路徑中的傳播延遲的監(jiān)控器的放置的計算機實現(xiàn)的方法,所述方法包括:
2.根據(jù)權(quán)利要求1所述的計算機實現(xiàn)的方法,其中確定通過所述集成電路的終止于所述集成電路的所述同一觸發(fā)器的所述一個或多個路徑包括:
3.根據(jù)權(quán)利要求1所述的計算機實現(xiàn)的方法,其中確定也在所述備選路徑中的所述邏輯單元的所述數(shù)目的所述測量是否滿足所述閾值條件包括:確定也在所述備選路徑中的所述邏輯單元的所述數(shù)目與終止于所述觸發(fā)器的所述一個或多個路徑中的邏輯單元的總數(shù)的比率。
4.根據(jù)權(quán)利要求1所述的計算機實現(xiàn)的方法,還包括,基于確定用以監(jiān)控所述觸發(fā)器的所述監(jiān)控器的所述放置:
5.根據(jù)權(quán)利要求4所述的計算機實現(xiàn)的方法,其中對也在終止于由一個或多個監(jiān)控器監(jiān)控的一個或多個備選觸發(fā)器的一個或多個備選路徑中的所述邏輯單元的所述數(shù)目的所述測量的所述確定包括:檢查所述機器可讀記錄中的至少一個機器可讀記錄,以及基于所述至少一個機器可讀記錄確定也在以下項中的所述一個或多個路徑中的邏輯單元的所述數(shù)目的測量:
6.根據(jù)權(quán)利要求1所述的計算機實現(xiàn)的方法,還包括針對另一觸發(fā)器重復(fù)所述計算機實現(xiàn)的方法。
7.?根據(jù)權(quán)利要求6所述的計算機實現(xiàn)的方法,還包括:
8.根據(jù)權(quán)利要求6所述的計算機實現(xiàn)的方法,還包括針對所述方法的每個重復(fù)修改所述閾值條件,使得也在所述備選路徑中的所述邏輯單元的所述數(shù)目的所述測量被要求更小以滿足所述閾值條件。
9.根據(jù)權(quán)利要求2所述的計算機實現(xiàn)的方法,其中對所述多個路徑的所述確定包括:確定與通過所述集成電路的具有相對短的傳播延遲的其他路徑相比,通過所述集成電路的具有相對長的傳播延遲的多個路徑。
10.根據(jù)權(quán)利要求2所述的計算機實現(xiàn)的方法,其中對所述多個路徑的所述確定包括:確定通過所述集成電路的針對各個不同操作和環(huán)境條件具有最長傳播延遲的多個路徑。
11.根據(jù)權(quán)利要求10所述的計算機實現(xiàn)的方法,其中對通過所述集成電路的針對各個不同操作和環(huán)境條件具有最長傳播延遲的所述多個路徑的所述確定包括:確定通過所述集成電路的針對所述集成電路的各個不同工藝、電壓、溫度和老化條件具有最長傳播延遲的多個路徑。
12.?一種計算機系統(tǒng),包括:
13.一種計算機程序,所述計算機程序包括指令,所述指令在由計算機執(zhí)行時使所述計算機執(zhí)行根據(jù)權(quán)利要求1所述的方法。
14.一種數(shù)據(jù)存儲裝置,其上存儲有根據(jù)權(quán)利要求13所述的計算機程序。