国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      具有可重定位處理器硬核的集成電路的制作方法

      文檔序號(hào):6558902閱讀:111來源:國知局
      專利名稱:具有可重定位處理器硬核的集成電路的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明關(guān)于一種半導(dǎo)體集成電路,如專用集成電路(ASICs)和現(xiàn)場(chǎng)可編程門陣列(FPGAs),尤其是一種具有可重定位處理器硬核的集成電路設(shè)計(jì)。
      背景技術(shù)
      集成電路一般構(gòu)成于薄的硅晶片或襯底上。構(gòu)成集成電路的半導(dǎo)體器件和電互聯(lián)器件一般由在彼此襯底頂端上建立的一些掩模層形成。每個(gè)連續(xù)掩模層可具有一使用掩碼定義的圖案。掩碼具有一個(gè)圖案以使其在制造過程的特殊工藝步驟中形成特定形狀。掩模層通過一系列使用掩碼的圖案定義步驟形成,在這些步驟中也交替進(jìn)行了其他的工藝步驟,如氧化、蝕刻、噴漆以及材料沉積。當(dāng)一個(gè)掩模層通過使用用戶選擇或提供的掩碼定義時(shí),則該掩模層是可編程的或稱之為定制的。
      最底層,基底層包括半導(dǎo)體器件的活躍區(qū)域,例如擴(kuò)散區(qū)域和門極氧化物區(qū)域,以及聚硅酸鹽門電極所需的圖案。一層或多層金屬層和絕緣層沉積在基底層的頂端并構(gòu)圖,以形成傳導(dǎo)段,該傳導(dǎo)段與形成于基底層內(nèi)的各種半導(dǎo)體器件互相連接。電接觸或通道的形成使其中一個(gè)金屬層的傳導(dǎo)段與晶片上其他層上的傳導(dǎo)段或半導(dǎo)體器件電連接。
      現(xiàn)在已經(jīng)開發(fā)出多種類型的集成電路,這種集成電路的晶體管模塊或程序塊是部分固定或部分可編程和/或可定制的。這些模塊芯片的實(shí)用性由多種因素決定,如復(fù)雜度、成本、時(shí)間,以及從這些通用晶體管模塊中制造功能電子元件的設(shè)計(jì)約束。現(xiàn)場(chǎng)可編程門陣列(FPGA)是指一種邏輯芯片,其中所有的掩模層由專用集成電路(ASIC)的供貨商在事先制造,并且還具有一種功能,即可以在現(xiàn)場(chǎng)通過簡單的修改進(jìn)行輕松的重新編程。但是,F(xiàn)PGAs,一般體積很大,每項(xiàng)功能具有相對(duì)高的成本,速度相對(duì)較慢,并且具有較大功耗。專用集成電路(ASIC)是一種專為特殊應(yīng)用或用途設(shè)計(jì)的集成電路。在一個(gè)可完全編程的專用集成電路(ASIC)中,所有的掩模層均由邏輯設(shè)計(jì)者設(shè)計(jì)或制定??赏耆幊痰膶S眉呻娐?ASIC)的一個(gè)典型的例子就是基于單元的專用集成電路(CBIC)。雖然相對(duì)于FPGAs,可完全編程的ASIC更有效地利用能量和區(qū)域,但是,它的設(shè)計(jì)和模式化更加復(fù)雜。在半可編程的ASIC中,其中一些,但不是全部的掩模層可實(shí)現(xiàn)編程。例如,一些或所有的基底層可由ASIC供貨商在事先制造,而其它層,如金屬層,由邏輯設(shè)計(jì)者設(shè)計(jì),使半導(dǎo)體元件相互連接,以執(zhí)行所需要的功能。半可編程ASIC的一個(gè)典型例子是基于門陣列的ASIC。半可編程ASIC可將標(biāo)準(zhǔn)元件ASIC高密度、高性能的優(yōu)點(diǎn)和FPGAs可快速上市及可專用化的優(yōu)點(diǎn)結(jié)合起來。
      因此,近來,半可編程ASICs已經(jīng)變得更受歡迎。集成電路生產(chǎn)廠家已經(jīng)開始開發(fā)標(biāo)準(zhǔn)或基礎(chǔ)平臺(tái),正如我們所知的包括集成電路基底層但是不含有金屬互連層的程序片。通過生產(chǎn)商提供的工具,對(duì)基底層進(jìn)行構(gòu)圖以形成可構(gòu)成單元的門電路。芯片設(shè)計(jì)者為基礎(chǔ)平臺(tái)設(shè)計(jì)另外的金屬層,進(jìn)而使該集成電路成為使用用戶知識(shí)產(chǎn)權(quán)的用戶ASIC。這種可配置基礎(chǔ)平臺(tái)的一個(gè)實(shí)例為加利福尼亞州米爾皮塔斯市LSI邏輯公司的RapidChip基礎(chǔ)平臺(tái)。RapidChip基礎(chǔ)平臺(tái)以顯著降低的設(shè)計(jì)制造風(fēng)險(xiǎn)和成本,在極短的時(shí)間內(nèi)完成了復(fù)雜的、高密度ASICs的開發(fā)。
      對(duì)半可編程ASIC的設(shè)計(jì)工作包括幾個(gè)階段。當(dāng)芯片尺寸已選定,并且輸入/輸出(I/O)單元被放置在基礎(chǔ)平臺(tái)的布局模式中之后,包括存儲(chǔ)器和其他大的硬核的巨型單元得到布置。然后,置入標(biāo)準(zhǔn)單元以完成芯片設(shè)計(jì)。
      本發(fā)明的一個(gè)實(shí)施方式涉及處理器核心或設(shè)計(jì)布局中硬核的布局(對(duì)于ASIC或FPGA的布局),該布局與基礎(chǔ)平臺(tái)以及從設(shè)計(jì)到標(biāo)準(zhǔn)的存儲(chǔ)器映象或并入基礎(chǔ)平臺(tái)的基本存儲(chǔ)器有關(guān)??紤]這樣一種基礎(chǔ)平臺(tái),該基礎(chǔ)平臺(tái)包括既定類型的存儲(chǔ)器基本組,例如偽隨機(jī)存取存儲(chǔ)器(PRAMs)。PRAMs是具有相同類型存儲(chǔ)器的系列組,它們間隔緊湊,并且具有內(nèi)置的測(cè)試和自我修復(fù)功能。通常,集成電路(IC)設(shè)計(jì)者不愿意使用所有的既得PRAM存儲(chǔ)器組,因而未被使用的存儲(chǔ)器組可應(yīng)用在自我修復(fù)程序中?;A(chǔ)平臺(tái)還可能包括諸如單一擴(kuò)散存儲(chǔ)器的單一存儲(chǔ)器。IC設(shè)計(jì)者的設(shè)計(jì)中可能包括用戶自定義的存儲(chǔ)器,這里,有時(shí)被稱作用戶存儲(chǔ)器,它們映射入基礎(chǔ)平臺(tái)的一個(gè)或多個(gè)在先定義的存儲(chǔ)器位置。
      典型的,用戶設(shè)計(jì)包括一個(gè)或多個(gè)處理器。一個(gè)處理器執(zhí)行一系列存儲(chǔ)指令以完成用戶程序定義的任務(wù)。不同類型的處理器使用不同的指令組以完成程序定義的任務(wù)。舉例來說,一般的目的指令組屬于典型的微處理器。當(dāng)需要提高某一計(jì)算任務(wù)的速度時(shí),使用專用指令組。例如,數(shù)字信號(hào)處理器(DSP)配有可提高特定數(shù)學(xué)算法計(jì)算能力的指令組。
      并且,由于不同的性能和資源權(quán)衡折中,相同指令組得到不同的執(zhí)行在硬件上也是可能的。這種不同出現(xiàn)的比較普遍的方式之一,由可獲得多少支持存儲(chǔ)器以及這些存儲(chǔ)器是如何安排決定的。例如,一個(gè)處理器可能利用高速緩沖存儲(chǔ)器,通過再用地址,使一個(gè)大的地址空間映射入一個(gè)相對(duì)小的地址空間內(nèi)。另外一種處理器可能利用一個(gè)具有固定地址空間的緊耦合存儲(chǔ)器(TCM),該地址空間對(duì)大多數(shù)程序的關(guān)鍵指令都有效。
      設(shè)計(jì)過程中,支持處理器所需要的支持存儲(chǔ)器一般映射入可獲得的存儲(chǔ)器位置中,該位置在基礎(chǔ)平臺(tái)上預(yù)先定義,并且,存儲(chǔ)器核心對(duì)應(yīng)于存儲(chǔ)器的位置設(shè)置。
      發(fā)明簡介本發(fā)明的一個(gè)實(shí)施方式是關(guān)于集成電路布置,包括一集成電路的基礎(chǔ)平臺(tái),一處理器硬核,以及一支持處理器。基礎(chǔ)平臺(tái)包括橫行和縱列都置有頁元的存儲(chǔ)矩陣。頁元的每一列都具有按一定路線排列成共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序。處理器硬核沿存儲(chǔ)矩陣放置,并具有與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳。處理器硬核的連接引腳沿著硬核邊緣的排列順序?qū)嵸|(zhì)上與沿矩陣邊緣的連接引腳排列順序相同。處理器硬核的支持存儲(chǔ)器沿著硬核邊緣映射入存儲(chǔ)矩陣的一部分。
      本發(fā)明的另一實(shí)施方式是關(guān)于計(jì)算機(jī)可讀介質(zhì),包括對(duì)集成電路和處理器硬核的基礎(chǔ)平臺(tái)的表述。基礎(chǔ)平臺(tái)包括橫行和縱列都置有頁元的存儲(chǔ)矩陣。頁元的每一列都具有按一定路線排列成共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序。處理器硬核具有硬核邊緣,并具有一些與存儲(chǔ)矩陣相應(yīng)的連接引腳連接的連接引腳。處理器硬核的連接引腳沿著硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序完全相同。處理器硬核沿著矩陣邊緣具有一些不同的有效配置位置。
      本發(fā)明的另一實(shí)施方式是關(guān)于集成電路基礎(chǔ)平臺(tái)布局模式中所述的硬核的方法。該方法包括接收基礎(chǔ)平臺(tái)的布局模式,該模式包括橫行和縱列都置有頁元的存儲(chǔ)矩陣,其中頁元的每一列都具有按一定路線排列成共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序;沿存儲(chǔ)器矩陣放置存儲(chǔ)器硬核,其中處理器硬核有與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳。處理器硬核的連接引腳沿著硬核邊緣的排列順序?qū)嵸|(zhì)上與沿矩陣邊緣的連接引腳排列順序相同;將處理器硬核的支持存儲(chǔ)器沿著硬核邊緣映射入存儲(chǔ)矩陣的一部分。


      附圖1是應(yīng)用本發(fā)明所述方法和裝置的計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)的簡化模塊圖。
      附圖2是計(jì)算機(jī)工作站中功能元件的簡化模塊圖,利用該工作站,集成電路的開發(fā)者可以按照本發(fā)明的一個(gè)實(shí)施方式使用設(shè)計(jì)程序。
      附圖3是半導(dǎo)體程序片的簡化模塊圖,設(shè)計(jì)程序可以在這個(gè)程序片上按照本發(fā)明的一個(gè)實(shí)施方式分配集成電路的存儲(chǔ)器。
      附圖4描述了背景技術(shù)中的基礎(chǔ)平臺(tái)程序片400。
      附圖5描述了本發(fā)明一個(gè)實(shí)施方式中的程序片,該程序片具有一些存儲(chǔ)矩陣以及一可編程的晶體管構(gòu)造。
      附圖6是更詳細(xì)的一個(gè)存儲(chǔ)矩陣的示意圖。
      附圖7描述了圖5所示的本發(fā)明一個(gè)實(shí)施方式中的程序片基礎(chǔ)平臺(tái)晶體管構(gòu)造的示例處理器硬核。
      附圖8是本發(fā)明一個(gè)實(shí)施方式中處理器硬核和存儲(chǔ)器矩陣接口的放大圖。
      附圖9-11描述了程序片,該程序片與分配于本發(fā)明另一可選擇實(shí)施方式所述之處理器硬核的支持存儲(chǔ)器具有不同的尺寸。
      附圖12-14按照本發(fā)明另一可選擇實(shí)施方式,描述具有不同處理器硬核的程序片,該硬核沿存儲(chǔ)矩陣放置在不同區(qū)域內(nèi)。
      附圖15-16按照本發(fā)明另一可選擇實(shí)施方式,描述了具有處理器硬核的程序片,該硬核執(zhí)行不同的指令組,被沿存儲(chǔ)矩陣放置,并具有不同的支持存儲(chǔ)需求。
      附圖17-18按照本發(fā)明另一可選擇實(shí)施方式,描述了具有不同數(shù)量和型號(hào)的處理器硬核的程序片。
      具體實(shí)施例方式
      附圖1描述了一個(gè)示例計(jì)算機(jī)系統(tǒng)10,在這個(gè)系統(tǒng)中,能夠安裝或應(yīng)用實(shí)現(xiàn)本發(fā)明某一具體實(shí)施方式
      的一個(gè)或多個(gè)設(shè)計(jì)程序。
      計(jì)算機(jī)系統(tǒng)10被描述為一個(gè)網(wǎng)絡(luò)計(jì)算機(jī)系統(tǒng),該系統(tǒng)包括一個(gè)或多個(gè)客戶端計(jì)算機(jī)12、14和20作為工作站,通過網(wǎng)絡(luò)18與服務(wù)器16相連。服務(wù)器16可以是個(gè)人計(jì)算機(jī),工作站,中型計(jì)算機(jī)或是大型計(jì)算機(jī)。網(wǎng)絡(luò)18代表任何類型的互連網(wǎng)絡(luò),包括但不局限于局域網(wǎng),廣域網(wǎng),無線網(wǎng),以及諸如國際互聯(lián)網(wǎng)和內(nèi)部局域網(wǎng)之類的公眾網(wǎng)絡(luò)。
      計(jì)算機(jī)20實(shí)際上可以代表任何類型的計(jì)算機(jī)、計(jì)算機(jī)系統(tǒng)或者其他可編程的電子設(shè)備,包括與圖1所示計(jì)算機(jī)12、14和20類似的客戶端計(jì)算機(jī);與圖1所示服務(wù)器16類似的服務(wù)器計(jì)算機(jī);便攜式計(jì)算機(jī)、嵌入式控制器,手持式裝置等等。計(jì)算機(jī)20可以是如圖1所示的與網(wǎng)絡(luò)相連,也可以是獨(dú)立的裝置。
      典型地,計(jì)算機(jī)20通過接收一系列輸入和輸出信號(hào)與外界交換信息。為了與使用者或操作者相連,計(jì)算機(jī)20一般包括一個(gè)或多個(gè)用戶輸入裝置26、27,如鍵盤、鼠標(biāo)、跟蹤球、操縱桿、觸摸屏,和/或麥克風(fēng),其他的,還有顯示器22,如陰極射線(CRT)監(jiān)控器,液晶(LCD)顯示屏和/或喇叭。為了附加存儲(chǔ),計(jì)算機(jī)20還可以包括一個(gè)或多個(gè)存儲(chǔ)裝置36,如軟盤或其它可移動(dòng)的磁盤驅(qū)動(dòng),硬盤驅(qū)動(dòng)、直接存取存儲(chǔ)裝置、光盤驅(qū)動(dòng)如CD驅(qū)動(dòng)、DVD驅(qū)動(dòng)等和/或磁帶驅(qū)動(dòng)。在其他計(jì)算機(jī)可讀取介質(zhì)中,可直接或通過存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)或其它網(wǎng)絡(luò)相連。而且,計(jì)算機(jī)20還可包括一接口與一個(gè)或多個(gè)網(wǎng)絡(luò)18相連,如局域網(wǎng),廣域網(wǎng),無線網(wǎng),和/或國際互聯(lián)網(wǎng),以完成與連接于網(wǎng)絡(luò)中其它計(jì)算機(jī)的信息交換。
      附圖2是計(jì)算機(jī)20的簡化模塊圖,本發(fā)明多個(gè)具體實(shí)施方式
      所述的方法或設(shè)備都可安裝在計(jì)算機(jī)上,實(shí)現(xiàn)一個(gè)或多個(gè)應(yīng)用。
      計(jì)算機(jī)20一般包括至少一個(gè)與存儲(chǔ)器32相連的處理器30。處理器30可以表示一個(gè)或多個(gè)處理器或微處理器,存儲(chǔ)器32也可以表示由計(jì)算機(jī)主存儲(chǔ)器30構(gòu)成的隨即存取存儲(chǔ)器(RAM),以及存儲(chǔ)器的任何追加層,如高速緩沖存儲(chǔ)器、永久或備份存儲(chǔ)器,可編程或快速存儲(chǔ)器,只讀存儲(chǔ)器等等。另外,存儲(chǔ)器32還被認(rèn)為包括實(shí)際定位于計(jì)算機(jī)30其它位置的記憶體存儲(chǔ)器,如被用作虛擬內(nèi)存的存儲(chǔ)容量,比如存儲(chǔ)于通過SAN與計(jì)算機(jī)20相連的大容量存儲(chǔ)裝置36,或存儲(chǔ)于通過網(wǎng)絡(luò)1 8與計(jì)算機(jī)20相連的另一計(jì)算機(jī)上。
      計(jì)算機(jī)20可在任何合適的操作系統(tǒng)40的控制下操作。一般操作系統(tǒng)40要操控各種計(jì)算機(jī)軟件應(yīng)用、元件、程序、對(duì)象、模塊等等。比如可執(zhí)行程序42和/或其它元件44。雖然為了開發(fā)集成電路,用來實(shí)現(xiàn)本發(fā)明的一個(gè)或多個(gè)具體實(shí)施方式
      的設(shè)計(jì)程序50可能放置在存儲(chǔ)器32中,但是其實(shí)這些設(shè)計(jì)程序不需要放置在存儲(chǔ)器中。處理器30可以讀取程序、所需要的數(shù)據(jù)、其它各種應(yīng)用元件、程序、對(duì)象、模塊等等,這些內(nèi)容駐留在通過網(wǎng)絡(luò)18與計(jì)算機(jī)20相連的其它計(jì)算機(jī)的一個(gè)或多個(gè)處理器中,比如,在分布式或客戶服務(wù)器計(jì)算環(huán)境下,借助存儲(chǔ)器分配程序的功能,這些處理可以通過網(wǎng)絡(luò)分配于多個(gè)計(jì)算機(jī)中。
      一般的,被用作實(shí)現(xiàn)本發(fā)明一個(gè)或多個(gè)具體實(shí)施方式
      的各種程序50是指設(shè)計(jì)程序,或是作為操作系統(tǒng)的一部分得以執(zhí)行,或是指具體應(yīng)用、數(shù)據(jù)庫、元件、程序、對(duì)象、模塊以及一系列指令。設(shè)計(jì)程序一般包括駐留于計(jì)算機(jī)的各個(gè)存儲(chǔ)器和存儲(chǔ)裝置中的各個(gè)時(shí)間,一個(gè)或多個(gè)指令或數(shù)據(jù)庫,因此,當(dāng)在計(jì)算機(jī)網(wǎng)絡(luò)中被一個(gè)或多個(gè)處理器讀取或執(zhí)行時(shí),該計(jì)算機(jī)完成指令和/或處理數(shù)據(jù)庫,這些指令和數(shù)據(jù)庫是本發(fā)明的各個(gè)方面所體現(xiàn)的。這些指令可存儲(chǔ)于計(jì)算機(jī)可讀介質(zhì)中,這些介質(zhì)包括但不局限于可記錄型的介質(zhì),如易失性以及非易失性記憶裝置、軟盤以及其它可移動(dòng)磁盤,硬盤驅(qū)動(dòng)裝置、光盤如CD-ROM、DVD等,其他的,還有傳輸型介質(zhì),如數(shù)字和模擬通信連接。附圖1和2所示的示例性的環(huán)境不是對(duì)于本發(fā)明的限制。
      附圖3示例性地描述了已部分完成的半導(dǎo)體裝置的基礎(chǔ)平臺(tái)或程序片310,其中已形成與連接層相接的基礎(chǔ)晶片層。程序片310包括一基礎(chǔ)半導(dǎo)體晶片,其內(nèi)部,硬核和其它半導(dǎo)體器件擴(kuò)散入半導(dǎo)體層。擴(kuò)散半導(dǎo)體晶片形成硬核只是意味著在晶片層的形成過程中,晶體管或其它電子元件被特別及永久地嵌入或置入晶片層以獲得具體的功能,如擴(kuò)散存儲(chǔ)器320-338及380-390,數(shù)據(jù)收發(fā)器硬核件I/O PHYs 340-346,時(shí)鐘工廠包括鎖相環(huán)路(PLLs)或延遲鎖定環(huán)路(DLLs)350,控制I/Os352,以及可配置輸入輸出(I/O)硬核354和356。每個(gè)硬核都具有最適宜的密度、布局,以及為特殊功能而排列的晶體管路線。
      為了進(jìn)一步開發(fā),程序片還包括晶體管門陣列,稱為晶體管結(jié)構(gòu)360。晶體管結(jié)360是常規(guī)模式中預(yù)擴(kuò)散晶體管的陣列,通過一系列發(fā)生程序使金屬層與晶體管互相合理連接,從而形成該常規(guī)模式。舉例來說,程序可能會(huì)被用作將一個(gè)或多個(gè),一般是上千個(gè)單元從單元庫中放置到晶體管結(jié)構(gòu)上。單元是連接層的具體體現(xiàn),該連接層示例出晶體管結(jié)構(gòu)的門電路。典型的程序片310一般包括嵌入處理器370,該處理器與總線網(wǎng)375上的程序片的其它元件相連。嵌入處理器370與一系列嵌入到程序片基礎(chǔ)平臺(tái)的支持存儲(chǔ)器相連。
      程序片這樣定義——將程序片上所有可用的功能特征作詳細(xì)說明,比如,晶體管結(jié)構(gòu)、處理器或處理元件或處理電路的詳細(xì)說明,結(jié)構(gòu)和/或可用的硬核I/O和存儲(chǔ)器、結(jié)構(gòu)和硬核I/O的需求、內(nèi)部總線詳細(xì)說明、程序片的成本、程序片預(yù)期的理想功能、預(yù)期的能量消耗以及其它的功能性需求。
      附圖3所示的程序片310只是程序片及其元件的一個(gè)示例。不同的程序片根據(jù)最終集成芯片的目的不同,具有不同數(shù)量的晶體管結(jié)構(gòu),不同數(shù)量和類型的擴(kuò)散和/或經(jīng)過編譯的存儲(chǔ)器,不同類型的固定或結(jié)構(gòu)化I/O硬核,處理器,時(shí)鐘等等。舉例來說,如果芯片最終要做成一個(gè)通信或網(wǎng)絡(luò)集成電路,程序片外圍可能包括許多被固定作PHYs和/或彼此結(jié)構(gòu)不同的I/O模塊。而且,程序片310的基礎(chǔ)平臺(tái)也可選擇地包含接觸掩模和一些固定的較高層連接,這些固定的較高層連接用以分布能量、接地以及外部信號(hào)I/O。
      舉例來說,程序片本身可被定義為寄存器晶體邏輯(RTL)或連線表。RTL邏輯的集合被分類成“命令解釋程序”,并可以包括文件命令解釋程序,驗(yàn)證命令解釋程序,綜合命令解釋程序,靜態(tài)定時(shí)分析命令解釋程序,制造測(cè)試命令解釋程序,所有這些提供設(shè)計(jì)程序的一個(gè)或多個(gè)輸入或輸出。RTL命令解釋程序提供程序片或完成、使用資源的某一方面的邏輯說明。驗(yàn)證命令解釋程序是一種功能性的驗(yàn)證說明,而綜合命令解釋程序則可以被認(rèn)為是一種完成說明。靜態(tài)定時(shí)分析命令解釋程序是一種定時(shí)說明,制造測(cè)試命令解釋程序是一種測(cè)試說明,平面布置命令解釋程序是對(duì)程序片資源布局的說明。其它的命令解釋程序可能包括平面布置命令解釋程序以及RTL質(zhì)量命令解釋程序。
      附圖4描述了背景技術(shù)中的基礎(chǔ)平臺(tái)程序片400?,F(xiàn)在程序片構(gòu)造的核心區(qū)域一般由成列的固定隨機(jī)存取存儲(chǔ)器(RAM)組成,如示例410,412,414,416以及418。每個(gè)所例之RAM都是獨(dú)立的并且具有內(nèi)部自測(cè)(BIST)電路,退耦電容以及與平面布局位置對(duì)齊的硬核。但是,由于每個(gè)所示RAM都是獨(dú)立的,導(dǎo)致平面布局中的區(qū)域沒有充分利用。所述獨(dú)立的RAM沒有共用上層電路導(dǎo)致每個(gè)示例相對(duì)低效的位密度。并且,使用獨(dú)立的RAM也會(huì)導(dǎo)致鈕扣狀器件平面布局,這種布局中所述示例分布在整個(gè)平面布局中。這樣就使與RAM連接的其它器件的布線和布局更加復(fù)雜。而且,這樣會(huì)在每個(gè)示例位數(shù)和特定程序片布局中示例的數(shù)量之間造成顧此失彼的結(jié)果。
      因此提出將所有RAM資源合并在一些稱之為矩陣的小區(qū)域內(nèi),以共用上層電路并降低區(qū)域損失。申請(qǐng)于2004年6月23日,申請(qǐng)?zhí)枮?0/875,128,發(fā)明名稱為“制造驅(qū)動(dòng)存儲(chǔ)器布局系統(tǒng)”的美國申請(qǐng)以及專利號(hào)為6,084,811,發(fā)明名稱為“集成電路存儲(chǔ)矩陣布局方法”的美國專利描述了存儲(chǔ)矩陣的例子,這里將一并引用作為參考。
      附圖5描述了一具有許多存儲(chǔ)矩陣510、512、514以及可編程晶體管構(gòu)造516的程序片500。每個(gè)存儲(chǔ)矩陣將相同的用戶RAMs(舉例說明)壓縮到一起以獲得最大可能的密度。程序片500具有將邏輯電路和存儲(chǔ)器分開的平面布局,以獲得尺寸較小的電路片以及更快地將ASIC設(shè)計(jì)移動(dòng)到程序片資源中。
      附圖6比較詳細(xì)地、示例性地描述了其中一個(gè)矩陣510。在這個(gè)示例中,存儲(chǔ)矩陣510包括放置在橫行和縱列上的許多RAM頁元520。在一個(gè)具體實(shí)施方式
      中,所給出矩陣的每個(gè)頁元520與矩陣中的其它頁元相同。頁元定義為單個(gè)存儲(chǔ)單元的一個(gè)陣列或其它規(guī)則模式,包括一個(gè)或多個(gè)行位和列位。例如,每個(gè)頁元可被程序片設(shè)計(jì)者定義為任何配置(字?jǐn)?shù)×位數(shù))。例如,每個(gè)頁元都可配置為具有2K×20,512×20或256×40的存儲(chǔ)器。在一個(gè)具體實(shí)施方式
      中,每個(gè)頁元與矩陣中的其它頁元相同。
      每個(gè)存儲(chǔ)矩陣510可進(jìn)一步包括在頁元520的行之間的退耦電容522,還可包括公用內(nèi)部自測(cè)(BIST)電路和/或內(nèi)部自我修復(fù)(BISR)電路524。包括BIST,BISR或類似檢測(cè)、修復(fù)電路的存儲(chǔ)矩陣可被稱為是PRAM存儲(chǔ)矩陣。
      在一個(gè)
      具體實(shí)施例方式
      中,存儲(chǔ)矩陣510的所有信號(hào)連接引腳(比如地址、數(shù)據(jù)以及控制)都沿矩陣共用邊緣指定和布置,該邊緣可被稱為是一個(gè)連接信道526。如圖5所示,信道526優(yōu)選沿相鄰于可編程晶體管構(gòu)造516的矩陣邊緣放置。程序片500的設(shè)計(jì)過程中,信道控制器將RRAM信號(hào)引腳的布局路線設(shè)制在邊緣以形成一些虛擬RAM列。邏輯電路設(shè)計(jì)可在存儲(chǔ)矩陣中使用虛擬RAM,該虛擬RAM的數(shù)量可與矩陣中希望達(dá)到的頁元520的總數(shù)相同。邏輯電路設(shè)計(jì)者可指定每個(gè)虛擬RAM的寬度和深度。
      基于RRAM存儲(chǔ)矩陣的程序片平面布局為與現(xiàn)存固定情形的程序片布局相關(guān)的許多問題編址。存儲(chǔ)矩陣共同使用諸如退耦電容以及內(nèi)部自測(cè)電路等上層電路。并且,由于每個(gè)存儲(chǔ)矩陣由緊密組合的頁元構(gòu)成,因而不存在“對(duì)齊網(wǎng)絡(luò)”區(qū)域遺失在存儲(chǔ)矩陣內(nèi)部的情況。這使得存儲(chǔ)器中的存儲(chǔ)密度達(dá)到最大。存儲(chǔ)矩陣還實(shí)現(xiàn)了對(duì)相對(duì)于現(xiàn)有資源來說特殊電路設(shè)計(jì)的存儲(chǔ)器需求的較好匹配。
      重新回到附圖5,晶體管構(gòu)造516的配置可執(zhí)行所需的邏輯功能。如上所述,典型的集成電路設(shè)計(jì)包括一個(gè)或多個(gè)與半導(dǎo)體程序片上一個(gè)或多個(gè)存儲(chǔ)器示例相連的處理器。本發(fā)明的一個(gè)具體實(shí)施方式
      提供一種可重定位處理器硬核,其可置于與基礎(chǔ)平臺(tái)程序片上的存儲(chǔ)矩陣相關(guān)的晶體管構(gòu)造516內(nèi),如矩陣510,依靠最低程度的預(yù)處理或不需預(yù)處理,根據(jù)處理器指令組,處理器的支持存儲(chǔ)需求,程序片示例出的處理器數(shù)量或者平面布局中處理器的絕對(duì)位置,即可構(gòu)成一個(gè)或多個(gè)不同類型的處理程序。
      在ASIC的環(huán)境中,硬核將集成電路芯片中的金屬層限定在一個(gè)特定區(qū)域內(nèi)(例如晶體管結(jié)構(gòu)),以在已知的時(shí)間特征情況下完成特殊的邏輯功能。放置過程中,硬核插入與硬核預(yù)定起點(diǎn)相對(duì)的程序片平面布局的特定區(qū)域中。
      處理器執(zhí)行一系列存儲(chǔ)指令以完成用戶程序定義的任務(wù)。不同類型的處理器使用不同的指令組以完成程序定義的任務(wù)。例如,一般的目的指令組屬于典型的微處理器。當(dāng)需要提高某一計(jì)算任務(wù)的速度時(shí),使用專用指令組。例如,數(shù)字信號(hào)處理器(DSP)配有可提高特定數(shù)學(xué)算法計(jì)算能力的指令組。
      相同指令組得到不同的執(zhí)行在硬件上也是可能的。每種結(jié)果都是不同的性能和資源的權(quán)衡折中。比如,處理器的硬件執(zhí)行情況很大成都上依賴于可獲得多少程序片上的支持存儲(chǔ)器以及這些存儲(chǔ)器是如何安排的。有許多不同類型的支持存儲(chǔ)器和應(yīng)用。例如,高速緩沖存儲(chǔ)器使一個(gè)大的地址空間映射入一個(gè)較小的地址空間內(nèi),成為再用地址。緊耦合存儲(chǔ)器(TCM)使用一個(gè)固定的地址空間,該地址空間對(duì)大多數(shù)程序的關(guān)鍵指令都是足夠的。另外,TCM存儲(chǔ)器與處理器有更直接的聯(lián)系,以使存儲(chǔ)器存取在很短的時(shí)鐘周期內(nèi)完成。
      有很多方法能夠?qū)崿F(xiàn)高速緩沖存儲(chǔ),這通常取決于處理器設(shè)計(jì)。在一個(gè)典型的執(zhí)行過程中,高速緩沖存儲(chǔ)器可能包括三個(gè)子陣列,在某些執(zhí)行過程中指數(shù)據(jù)陣列、標(biāo)志陣列、路徑選擇陣列。數(shù)據(jù)陣列的目的是在一個(gè)給定地址或較大存儲(chǔ)空間的一組地址中存儲(chǔ)當(dāng)時(shí)本地(隱藏的)的數(shù)據(jù)備份。數(shù)據(jù)陣列中地址可重復(fù)使用的程度有時(shí)候取決于它的“置位結(jié)合性”(set associativity),例如“2道置位結(jié)合”或“4道置位結(jié)合”。
      4道構(gòu)造中,入口可選擇存儲(chǔ)在四個(gè)位置。數(shù)據(jù)陣列的入口索引通常由它的一個(gè)低位地址位數(shù)構(gòu)成。剩余的高位地址位通常被用作形成“標(biāo)記”的部分。標(biāo)記還可以包括描述數(shù)據(jù)陣列入口其它屬性的其它信息位。例如,無論入口是否有效,或是否被鎖定。標(biāo)記陣列存儲(chǔ)與數(shù)據(jù)陣列包含的入口相關(guān)的標(biāo)記。標(biāo)記中這種屬性位的含義和解釋是高速緩沖存儲(chǔ)控制器的一個(gè)功能。
      高速緩沖控制器通常用通道選擇陣列來存儲(chǔ)內(nèi)務(wù)處理信息,以按需存儲(chǔ)和恢復(fù)數(shù)據(jù)陣列的入口。例如,在4道單元相聯(lián)的高速緩沖,通道選擇陣列一般包含與需要參考的通道陣列中四個(gè)可選擇位置之一有關(guān)的信息。根據(jù)高速緩沖處理器執(zhí)行的算法和策略,其它信息位也可能出現(xiàn)在通道選擇陣列中。比如,“頁面重寫”標(biāo)志位(或標(biāo)記位)表示高度緩存入口內(nèi)容已被修改,因此當(dāng)高速緩沖的該入口需要被置換時(shí),入口內(nèi)容應(yīng)當(dāng)被備份回較大地址空間的原始位置上。
      高速緩沖控制器負(fù)責(zé)管理通向高速緩沖存儲(chǔ)器的內(nèi)容和訪問。它執(zhí)行用來存儲(chǔ)和查找高速緩沖存儲(chǔ)器中有效入口的算法,也執(zhí)行當(dāng)入口需被重置時(shí)完成策略的算法。大量可能存在的變化意味著為了執(zhí)行高速緩沖存儲(chǔ)器的子陣列,存儲(chǔ)器使用的每個(gè)字中字和位的數(shù)量會(huì)出現(xiàn)很大差異。
      如上所述,適于許多不同應(yīng)用的基礎(chǔ)平臺(tái)程序片,我們希望它具有靈活以使其利用指令組上最小的預(yù)設(shè)條件,在平臺(tái)ASIC設(shè)計(jì)中包含處理器核心。支持存儲(chǔ)器需要處理器、處理器的數(shù)量或平面布局中處理器的絕對(duì)位置。并且,也希望這些處理器能夠具有已知的預(yù)設(shè)性能特征。
      附圖7描述了與存儲(chǔ)矩陣510相關(guān)的基礎(chǔ)平臺(tái)程序片500(如圖5所示)的布局模式中晶體管結(jié)構(gòu)516內(nèi)部示例的處理器硬核700。處理器硬核700與存儲(chǔ)矩陣510的連接信道526相鄰放置,以便利于存儲(chǔ)元件連接引腳和處理器硬核700的相應(yīng)引腳之間的連接。在一個(gè)具體實(shí)施方式
      中,處理器硬核700中相應(yīng)的連接引腳以與沿信道526出現(xiàn)的連接引腳相同的順序沿邊緣702排列。
      當(dāng)處理器硬核的支持存儲(chǔ)器沿著硬核邊緣702映射入部分存儲(chǔ)器矩陣510時(shí),一個(gè)或多個(gè)瓦管(頁元)自存儲(chǔ)矩陣510分配到處理器硬核700中。這些瓦管共同形成具有特定寬度和深度的單元。附圖7中,處理器硬核700被分入一些單元中(1……n)。每個(gè)單元可以具有有任何行數(shù)和列數(shù)的頁元。高速緩存或TCM存儲(chǔ)器的執(zhí)行情況所需的單元的數(shù)量(1……n)形成了處理器硬核700的支持存儲(chǔ)器。因此,處理器支持存儲(chǔ)器是處理器分層的邏輯部分,但是在實(shí)體上是在存儲(chǔ)矩陣510中執(zhí)行。單元的數(shù)量以及這些單元的寬度和深度可以依據(jù)給定存儲(chǔ)器的執(zhí)行情況有所變化。頁元單元的分布的執(zhí)行可如申請(qǐng)?zhí)枮?0/875,128,申請(qǐng)日為2004年6月23日,發(fā)明名稱為“制造驅(qū)動(dòng)存儲(chǔ)器布局系統(tǒng)”的美國專利申請(qǐng)中所描述,其引用在此,作為示例供參考。
      支持存儲(chǔ)器可以根據(jù)處理器硬核700的需要形成各種類型的存儲(chǔ)器,諸如計(jì)數(shù)器寄存器、高速緩沖存儲(chǔ)器、TCM和/或如申請(qǐng)?zhí)枮?0/713,492的美國專利申請(qǐng)記載的存儲(chǔ)器。高速緩沖存儲(chǔ)器或TCM的功能一般包括一組存儲(chǔ)器,邏輯互連關(guān)系一般由RTL描述。支持存儲(chǔ)器單元(1,2,……n)根據(jù)高速緩沖存儲(chǔ)器設(shè)計(jì)、高速緩沖存儲(chǔ)器的關(guān)聯(lián)性以及高速緩沖存儲(chǔ)器的大小和/或TCM的大小分配數(shù)據(jù)、標(biāo)記、有效位等等。
      通過上述具體實(shí)施方式
      的描述,對(duì)支持存儲(chǔ)器(例如,高速緩沖存儲(chǔ)器TCM)尺寸大小的靈活選擇不局限于程序片設(shè)計(jì)時(shí)決定的特定構(gòu)造。與以前的存儲(chǔ)器布局程序相比,支持存儲(chǔ)器的靈活性和尺寸大小的選擇不受處理器預(yù)定單元的超集(或最大共用存儲(chǔ)器)限制。
      存儲(chǔ)單元(RAM引腳位置和引腳順序)的排序具體沿著存儲(chǔ)矩陣的連接信道。在本發(fā)明的一個(gè)具體實(shí)施方式
      中,相關(guān)的引腳位置和引腳排序沿著硬核700的邊緣702布置和安排,以與沿存儲(chǔ)矩陣510的信道526的排序完全匹配。因此,每個(gè)存儲(chǔ)單元以及自一個(gè)單元到下一單元的一個(gè)或多個(gè)數(shù)據(jù)、地址和/或控制引腳的排序與沿著處理器硬核700邊緣702的相關(guān)引腳排序完全相匹配。因而,處理器硬核700和其支持存儲(chǔ)器之間的布線不再重要,并且不具有用來執(zhí)行存儲(chǔ)的瓦管數(shù)量和類型的強(qiáng)大功能。
      附圖8是本發(fā)明一個(gè)具體實(shí)施方式
      中處理器硬核700和存儲(chǔ)矩陣510之間連接的放大的局部分解圖。存儲(chǔ)矩陣510具有一些頁元列800(圖8所示的800-0和800-1)。每個(gè)頁元列800具有一些信號(hào)連接引腳804,這些引腳按照沿著矩陣510的共用邊802布線到信道連接526。這些連接引腳可包括,舉例來說,數(shù)據(jù)、地址或控制引腳。在圖8所示的例子中,列800-0包括數(shù)據(jù)引腳DATA0[n:0],地址引腳ADR0[m:0],以及控制引腳CNTL0[p:0],列800-1包括數(shù)據(jù)引腳DATA1[n:0],地址引腳ADR1[m:0],以及控制引腳CNTL1[p:0]。
      矩陣510每列800中的信號(hào)連接引腳804具有一沿矩陣邊緣802的預(yù)定順序,該順序與矩陣中頁元的每列800順序相同??梢允褂萌魏雾樞?,并且一種類型的引腳可以被其它類型的引腳交叉存取或混合。而且,連接引腳802可以定位在集成電路的任何層,獨(dú)立引腳可與其它引腳在相同層或不同層。
      在一個(gè)
      具體實(shí)施例方式
      中,處理器硬核700具有一些連接引腳704,以連接存儲(chǔ)矩陣510的相應(yīng)連接引腳804。連接引腳704布線入硬核700的邊緣702,并且與引腳804具有相同的排序。這樣使互相連接的布線任務(wù)(如虛線806所示)變得簡單,并且不依賴于硬核700執(zhí)行的支持存儲(chǔ)器的尺寸大小和處理器的類型。硬核引腳704的引腳間距不必與存儲(chǔ)矩陣引腳804的引腳間距相同。但是,優(yōu)選保持相同的引腳排序,這樣,當(dāng)仍舊使用相同的程序片設(shè)計(jì)時(shí),支持存儲(chǔ)器的尺寸、布局和類型以及處理器的尺寸、指令組和類型可以容易的從一個(gè)具體實(shí)施方式
      改變成另一個(gè)。
      附圖9-11描述了程序片500是可改編的,從而為分配給特殊處理器硬核700(或處理器硬核700的不同類型)的支持存儲(chǔ)器提供不同的尺寸變化。圖9描述了程序片500的一個(gè)具體實(shí)施方式
      ,其中存儲(chǔ)矩陣510的一段902被指定為硬核700的支持存儲(chǔ)器。支持存儲(chǔ)器可被分作任何類型的存儲(chǔ)器,比如高速緩沖存儲(chǔ)器、TCM或兩者均可。如圖7所示,段902可包含頁元的一個(gè)或多個(gè)單元,或者頁元的一個(gè)或多個(gè)瓦管。圖9描述了具有4列頁元的存儲(chǔ)器段902。
      附圖10描述了程序片500的一個(gè)具體實(shí)施方式
      ,其中,存儲(chǔ)矩陣510的一段904被指定為硬核700的支持存儲(chǔ)器,該段904大于段902。同樣的,支持存儲(chǔ)器可被分作任何類型的存儲(chǔ)器,比如高速緩沖存儲(chǔ)器、TCM或兩者均可,但是高速緩沖存儲(chǔ)器的尺寸(或TCM的尺寸)與圖9所示的不同。在這個(gè)例子中,存儲(chǔ)段904具有五列頁元。
      附圖11描述了程序片500的一個(gè)具體實(shí)施方式
      ,其中,存儲(chǔ)矩陣510的一段906被指定為硬核700的支持存儲(chǔ)器,該段906大于段904和902。同樣的,支持存儲(chǔ)器可被分作任何類型的存儲(chǔ)器,比如高速緩沖存儲(chǔ)器、TCM或兩者均可,但是高速緩沖存儲(chǔ)器的尺寸(或TCM的尺寸)與圖9和10所示的不同。分配給處理器硬核700的支持存儲(chǔ)器的大小可以根據(jù)需要增加到存儲(chǔ)矩陣中頁元的全部列數(shù)。支持存儲(chǔ)器的大小不局限于設(shè)計(jì)程序片時(shí)的特定結(jié)構(gòu)。
      附圖12-14描述了沿存儲(chǔ)矩陣510的平面布局內(nèi)的處理器硬核700的定位不局限于設(shè)計(jì)程序片500時(shí)給出的特定位置。這樣就可以選擇位置以更適合特殊芯片平面布局中的數(shù)據(jù)流。圖12中處理器硬核700具有一第一位置并且自存儲(chǔ)矩陣510中分配支持存儲(chǔ)器1200。支持存儲(chǔ)器1200中頁元第一單元第一引腳的起始列與存儲(chǔ)矩陣510的第一列1202對(duì)齊。
      附圖13中,在程序片500的平面布局中處理器硬核700具有一第二、不同位置并且自存儲(chǔ)矩陣510中分配支持存儲(chǔ)器1300。同樣的,支持存儲(chǔ)器1300可以具有各種數(shù)量的有任意寬度和深度的單元。支持存儲(chǔ)器1300被映射入存儲(chǔ)矩陣510,這樣支持存儲(chǔ)器1300第一單元(或列)第一引腳的起始列(一般用箭頭1302表示)通過整數(shù)的列1304,從存儲(chǔ)矩陣510的第一列1202偏離(偏到左邊)。偏移量一般對(duì)應(yīng)于處理器硬核700的放置位置。
      附圖14中,處理器硬核700沿存儲(chǔ)矩陣510具有一第三放置位置,這個(gè)位置與圖12和13所述的不同。在這個(gè)具體實(shí)施方式
      中,處理器硬核700在存儲(chǔ)矩陣1104中被分配支持存儲(chǔ)器1400。支持存儲(chǔ)器140可以具有各種數(shù)量的有任意寬度和深度的單元。支持存儲(chǔ)器1400第一單元第一引腳的起始列(一般用箭頭1304表示)通過整數(shù)的列1404,從存儲(chǔ)矩陣510的第一列1202向左偏移。
      由于處理器硬核700的相對(duì)(不是絕對(duì)的)位置及其相應(yīng)的支持存儲(chǔ)器是固定的,因此性能和時(shí)鐘特性也不變。所以處理器硬核700及其支持存儲(chǔ)器的布線互連也不十分重要。
      另外,可在基礎(chǔ)平臺(tái)程序片510上執(zhí)行的處理器類型也不受固定的資源單元的制約。附圖15和16描述了根據(jù)本發(fā)明具體實(shí)施方式
      所述的兩種不同類型的處理器硬核的應(yīng)用。圖15中,具有指令單元類型“A”的處理器硬核1500沿存儲(chǔ)陣列510放置并被分配存儲(chǔ)段1502作為支持存儲(chǔ)器。同樣的,支持存儲(chǔ)器1502可被分作任何類型的存儲(chǔ)器,比如高速緩沖存儲(chǔ)器和/或TCM。圖16中,處理器硬核1600具有與類型“A”不同的指令單元類型“B”,該處理器硬核1600沿存儲(chǔ)陣列510放置并被分配存儲(chǔ)段1602作為支持存儲(chǔ)器。用來執(zhí)行指令單元“B”的硬核不需要與指令“A”的具有相同的高度和寬度。段1602中的存儲(chǔ)單元的數(shù)量或大小不受類型“A”所需的約束。為處理器硬核類型“B”的支持存儲(chǔ)的分配獨(dú)立于程序片500上示例的其它類型的處理器。這樣就使通過相同的程序片設(shè)計(jì)而得到廣泛變化的處理器成為可能。
      附圖17和18描述了根據(jù)本發(fā)明的具體實(shí)施方式
      所示例的,在相同的程序片設(shè)計(jì)中的處理器數(shù)量和類型上的變化。圖17描述了一個(gè)沿存儲(chǔ)矩陣510放置并具有分配到的支持存儲(chǔ)器1702的獨(dú)立處理器硬核1700。處理器硬核1700執(zhí)行一第一指令單元。圖18描述了沿存儲(chǔ)器矩陣510放置的第一及第二處理器硬核1700和1800。處理器硬核1700已分配支持存儲(chǔ)器1702,而處理器硬核1800已分配支持存儲(chǔ)器1802。處理器硬核1700執(zhí)行第一指令單元,處理器硬核1800執(zhí)行第二指令單元。處理器硬核1700的指令單元或高速緩存大小(和/或TCM大小)可以與處理器硬核1800的相同或不同。因而,圖17和18描述了在選擇指令單元及高速緩存/TCM存儲(chǔ)器大小方面的靈活性,使得其不局限于程序片形成時(shí)既定的特定結(jié)構(gòu)。
      正如上面描述的,處理器硬核可用來“嵌”到“虛擬存儲(chǔ)器”的引腳上,該虛擬存儲(chǔ)自存儲(chǔ)矩陣沿著它的I/O信道邊緣形成。由于處理器結(jié)構(gòu)在硬核中完成,因此其不是在程序片形成時(shí)固定的。特殊的處理器結(jié)構(gòu)可以由用戶決定,并且無需指令單元的預(yù)定條件,在集成電路的高位層形成時(shí)固定。處理器硬核不局限于在固定位置使用預(yù)定數(shù)量的處理器。這樣就提供了一種方法,可以根據(jù)需要改變處理器支持存儲(chǔ)器的大小和構(gòu)造而不必進(jìn)形成新的程序片結(jié)構(gòu)。特殊集成電路設(shè)計(jì)獲得的功能依賴于選擇的工藝以及處理器設(shè)計(jì)。處理器硬核的數(shù)量和/或位置沒有預(yù)設(shè)。可以得到多樣的處理器而不必形成新的程序片。存儲(chǔ)矩陣的常規(guī)特性允許處理器硬核沿矩陣嵌入多個(gè)有效位置。這樣也提高了平面布局中的數(shù)據(jù)流。
      本發(fā)明的一個(gè)或多個(gè)具體實(shí)施方式
      可在多種不同的半導(dǎo)體技術(shù)、制造工藝和方法中實(shí)施。例如,一些上述的具體實(shí)施方式
      在半可編程ASIC或全可編程ASIC的環(huán)境中出現(xiàn)。在這些具體實(shí)施方式
      中,基礎(chǔ)平臺(tái)與部分制造的特定用途集成電路(ASIC)程序片一致。處理器硬核在至少一個(gè)金屬層內(nèi)至少部分定義連接或布線模式,使其形成于集成電路程序片上。布置互連模式以執(zhí)行如程序片中的晶體管構(gòu)造所需處理器構(gòu)造和/或指令單元的邏輯。對(duì)于一個(gè)半可編程ASIC來說,基礎(chǔ)平臺(tái)可在為處理器硬核選擇指令單元,選擇程序片平面布局中處理器硬核的放置位置,或確定處理器支持存儲(chǔ)器的類型、大小或映射之前制造。可配置金屬基礎(chǔ)平臺(tái)的一個(gè)半可編程ASIC的實(shí)例為加利福尼亞州米爾皮塔斯市LSI邏輯公司的RapidChip基礎(chǔ)平臺(tái)。
      上述一個(gè)或多個(gè)具體實(shí)施方式
      也可應(yīng)用在現(xiàn)場(chǎng)可編程門陣列(FPGA)中。在一個(gè)FPGA的環(huán)境中,基礎(chǔ)平臺(tái)對(duì)應(yīng)于具有一存儲(chǔ)矩陣的完全制造的現(xiàn)場(chǎng)可編程門陣列(FPGA)。處理器硬核在與存儲(chǔ)矩陣相關(guān)的FPGA重構(gòu)結(jié)構(gòu)中表示處理器的邏輯布局。例如,處理器硬核表示一組FPGA配置位或配置狀態(tài),該配置位或狀態(tài)可在FPGA平面布局中定義處理器的功能,以及與存儲(chǔ)矩陣相關(guān)在平面布局中定義信號(hào)路線。也存在其它的應(yīng)用。
      盡管本發(fā)明通過上述具體實(shí)施方式
      來闡述,但是本領(lǐng)域普通技術(shù)人員可在不背離本發(fā)明精神和范圍的情況下在形式上和細(xì)節(jié)上加以改變。舉例來說,術(shù)語“行”或“列”是可互換的。
      權(quán)利要求
      1.一種集成電路布局,其特征在于,包括一集成電路基礎(chǔ)平臺(tái),該基礎(chǔ)平臺(tái)包括橫行和縱列都置有頁元的存儲(chǔ)矩陣,其中,頁元的每一列都具有布線到共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序;一第一處理器硬核沿存儲(chǔ)矩陣放置,并具有與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳;其中,第一處理器硬核的連接引腳沿著硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序?qū)嵸|(zhì)相同;一處理器硬核的第一支持存儲(chǔ)器,該存儲(chǔ)器沿著硬核邊緣映射入存儲(chǔ)矩陣的一部分。
      2.根據(jù)權(quán)利要求1所述的集成電路布局,其中,基礎(chǔ)平臺(tái)與部分制造專用集成電路(ASIC)程序片的基礎(chǔ)層一致;并且,該第一處理器硬核至少部分定義了形成于集成電路程序片上的至少一層金屬層的互連模式。
      3.根據(jù)權(quán)利要求1的所述的集成電路布局,其中該基礎(chǔ)平臺(tái)與完全制造的現(xiàn)場(chǎng)可編程門陣列(FPGA)相一致;并且該第一處理器硬核表示出在FPGA可重置結(jié)構(gòu)中處理器的邏輯布局。
      4.根據(jù)權(quán)利要求1所述的集成電路布局,其中第一支持存儲(chǔ)器沿硬核邊緣被映射到相應(yīng)的頁元列單元中。
      5.根據(jù)權(quán)利要求1所述的集成電路布局,其中第一處理器硬核沿矩陣邊緣具有許多不同的有效安裝位,并且對(duì)于其中每一安裝位,第一支持存儲(chǔ)器具有一起始列,該起始列自存儲(chǔ)矩陣的一端以頁元列的整數(shù)偏移。
      6.根據(jù)權(quán)利要求1所述的集成電路布局,其中,第一支持存儲(chǔ)器的大小不受基礎(chǔ)平臺(tái)約束成預(yù)定義單元的大小;其中預(yù)定義單元的大小與第一處理器硬核的預(yù)定義配置一致。
      7.根據(jù)權(quán)利要求1所述的集成電路布局,其中,第一處理器硬核具有的寬度與第一支持存儲(chǔ)器大小無關(guān)。
      8.根據(jù)權(quán)利要求1所述的集成電路布局,其中,該集成電路布局包括許多可編程布線層,并且第一處理器硬核包含許多與不同處理器指令單元相應(yīng)的不同配置,這些配置至少部分通過可編程的布線層得到配置。
      9.根據(jù)權(quán)利要求8所述的集成電路設(shè)計(jì),其中,不同的處理器指令單元除了存儲(chǔ)矩陣的大小外,不受存儲(chǔ)矩陣預(yù)定義配置的限制形成預(yù)定義指令單元。
      10.根據(jù)權(quán)利要求1所述的集成電路布局,其進(jìn)一步包括一第二處理器硬核沿存儲(chǔ)矩陣放置,并具有與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳;其中,第二處理器硬核的連接引腳沿著硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序?qū)嵸|(zhì)相同;一第二處理器硬核的第二支持存儲(chǔ)器,該存儲(chǔ)器沿著相應(yīng)的硬核邊緣映射入存儲(chǔ)矩陣的另外一部分。
      11.根據(jù)權(quán)利要求10所述的集成電路布局,其中,第二處理器硬核具有與第一處理器硬核不同的指令單元。
      12.根據(jù)權(quán)利要求10所述的集成電路布局,其中,第二支持存儲(chǔ)器具有與支持存儲(chǔ)器不同的尺寸大小。
      13.一種計(jì)算機(jī)可讀介質(zhì),包括一集成電路的基礎(chǔ)平臺(tái),該平臺(tái)包含橫行和縱列都置有頁元的存儲(chǔ)矩陣;頁元的每一列都具有布線到共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序;還有一處理器硬核,具有一硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳;其中,處理器硬核的連接引腳沿著硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序?qū)嵸|(zhì)相同;處理器硬核沿著矩陣邊緣具有一些不同的有效配置區(qū)域。
      14.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀介質(zhì),其中,一基礎(chǔ)平臺(tái)對(duì)應(yīng)于部分制造的專用集成電路(ASIC)程序片的基礎(chǔ)層;并且,該第一處理器硬核至少部分定義了裝配到集成電路程序片上的至少一層金屬層的互連模式。
      15.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀介質(zhì),其中,該基礎(chǔ)平臺(tái)對(duì)應(yīng)于完全制造的現(xiàn)場(chǎng)可編程門陣列(FPGA);并且該第一處理器硬核表示出在FPGA可重置結(jié)構(gòu)中處理器的邏輯布局。
      16.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀介質(zhì),其進(jìn)一步包括一處理器硬核的支持存儲(chǔ)器,該存儲(chǔ)器沿硬核邊緣被映射入頁元列的相應(yīng)單元中,其中,對(duì)于每一放置位置,支持存儲(chǔ)器都具有一起始列,該起始列自存儲(chǔ)矩陣的一端偏移整數(shù)個(gè)頁元列。
      17.根據(jù)權(quán)利要求16所述的計(jì)算機(jī)可讀介質(zhì),其中支持存儲(chǔ)器的大小不受基礎(chǔ)平臺(tái)約束成預(yù)定義單元的大小;其中預(yù)定義單元的大小與處理器硬核的預(yù)定義配置一致。
      18.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀介質(zhì),其進(jìn)一步包括形成于基礎(chǔ)平臺(tái)上的許多可編程布線層,其中處理器硬核包含許多與不同處理器指令單元相應(yīng)的不同配置,這些配置至少部分通過可編程的布線層得到配置,其中,不同的處理器指令單元不受存儲(chǔ)矩陣預(yù)定義配置的限制。
      19.根據(jù)權(quán)利要求13所述的計(jì)算機(jī)可讀介質(zhì),其進(jìn)一步包括以下表征沿基礎(chǔ)平臺(tái)布局模式中的矩陣邊緣的處理器硬核的第一、第二示例;以及第一、第二存儲(chǔ)器硬核的第一、第二支持存儲(chǔ)器,所述存儲(chǔ)器沿各自的硬核邊緣映射入頁元列的相應(yīng)單元中,其中,每個(gè)支持存儲(chǔ)器都具有一起始列,該起始列自存儲(chǔ)矩陣的一端以頁元列的各自整數(shù)偏移。
      20.根據(jù)權(quán)利要求19所述的計(jì)算機(jī)可讀介質(zhì),其中,第一處理器硬核執(zhí)行與第二處理器硬核不同的指令單元。
      21.根據(jù)權(quán)利要求19所述的計(jì)算機(jī)可讀介質(zhì),其中,第一支持存儲(chǔ)器與第二支持存儲(chǔ)器具有不同的尺寸大小。
      22.一種在集成電路基礎(chǔ)平臺(tái)上完成硬核的方法,該方法包括接收一個(gè)基礎(chǔ)平臺(tái),該基礎(chǔ)平臺(tái)包括橫行和縱列都置有頁元的存儲(chǔ)矩陣,其中頁元的每一列都具有布線到共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序;沿存儲(chǔ)矩陣放置處理器硬核,其中處理器硬核具有與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳;其中,處理器硬核的連接引腳沿著硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序?qū)嵸|(zhì)相同;并且將處理器硬核的支持存儲(chǔ)器沿著硬核邊緣映射入存儲(chǔ)矩陣的一部分。
      23.根據(jù)權(quán)利要求22所述的方法,其中基礎(chǔ)平臺(tái)包括許多沿處理器硬核矩陣邊緣的不同的有效放置位,其中,放置處理器硬核包括將處理器硬核放入其中一個(gè)有效放置位上;以及映射支持存儲(chǔ)器包括映射支持存儲(chǔ)器使其具有一起始列,該起始列自存儲(chǔ)矩陣的一端以頁元列的整數(shù)偏移,并對(duì)應(yīng)于處理器硬核各自的放置位置。
      24.根據(jù)權(quán)利要求22所述的方法,其中映射支持存儲(chǔ)器的步驟,不受基礎(chǔ)平臺(tái)限制成支持存儲(chǔ)器大小的預(yù)定義單元,也不受處理器硬核的預(yù)定義配置的限制。
      25.根據(jù)權(quán)利要求22所述的方法,其中,處理器硬核內(nèi)部具有執(zhí)行指令單元的配置,其除了存儲(chǔ)矩陣的大小外,不受存儲(chǔ)矩陣預(yù)定義配置的限制。
      26.根據(jù)權(quán)利要求22所述的方法,其進(jìn)一步包括沿存儲(chǔ)矩陣再放置一額外處理器硬核,其包括與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳;額外處理器硬核的連接引腳沿著相應(yīng)的硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序?qū)嵸|(zhì)相同;并且將額外支持存儲(chǔ)器沿著該額外硬核邊緣映射入存儲(chǔ)矩陣的一部分。
      27.根據(jù)權(quán)利要求26所述的方法,其中,該額外處理器硬核具有一指令組和尺寸,所述指令組和尺寸中至少一個(gè)與所述的第一處理器硬核不同。
      全文摘要
      本發(fā)明提供一種集成電路布局設(shè)計(jì),包括一集成電路的基礎(chǔ)平臺(tái)、一處理器硬核以及一支持存儲(chǔ)器?;A(chǔ)平臺(tái)包括橫行和縱列都置有頁元的存儲(chǔ)矩陣。頁元的每一列都具有按一定路線排列成共用矩陣邊緣的連接引腳,并且沿矩陣邊緣具有公共的引腳順序。處理器硬核沿存儲(chǔ)矩陣放置,并具有與存儲(chǔ)矩陣邊緣相鄰的硬核邊緣,以及一些與存儲(chǔ)矩陣的相應(yīng)連接引腳連接的連接引腳。處理器硬核的連接引腳沿著硬核邊緣的排列順序與沿矩陣邊緣的連接引腳排列順序完全相同。處理器硬核的支持存儲(chǔ)器沿著硬核邊緣映射入存儲(chǔ)矩陣的一部分。
      文檔編號(hào)G06F13/00GK1881223SQ200610084168
      公開日2006年12月20日 申請(qǐng)日期2006年4月6日 優(yōu)先權(quán)日2005年4月6日
      發(fā)明者M·凱西, T·麥科爾南, D·弗基爾 申請(qǐng)人:Lsi羅吉克公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1