TWI531165B - 單相邏輯 - Google Patents

單相邏輯 Download PDF

Info

Publication number
TWI531165B
TWI531165B TW100119702A TW100119702A TWI531165B TW I531165 B TWI531165 B TW I531165B TW 100119702 A TW100119702 A TW 100119702A TW 100119702 A TW100119702 A TW 100119702A TW I531165 B TWI531165 B TW I531165B
Authority
TW
Taiwan
Prior art keywords
circuit
phase pipeline
pipeline circuit
single phase
pipeline
Prior art date
Application number
TW100119702A
Other languages
English (en)
Other versions
TW201208256A (en
Inventor
雷蒙 尼傑森
卡默 卻德瑞
雷吉特 曼諾爾
克理斯多夫 拉法里達
克林頓W 凱莉
維朗莎 艾坎那亞奇
Original Assignee
亞奎尼克斯半導體公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 亞奎尼克斯半導體公司 filed Critical 亞奎尼克斯半導體公司
Publication of TW201208256A publication Critical patent/TW201208256A/zh
Application granted granted Critical
Publication of TWI531165B publication Critical patent/TWI531165B/zh

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/08Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices
    • H03K19/094Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices using field-effect transistors
    • H03K19/096Synchronous circuits, i.e. using clock signals
    • H03K19/0966Self-timed logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Bus Control (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

單相邏輯
本發明之各種實施例包括關於非同步電路之方法、裝置及系統。
與其同步對應物不同,非同步數位系統常在無用以協調操作之集中化控制或全域時脈信號之情況下操作。在一些非同步系統中,在分散式控制下發生操作,且具有良好定義之通信介面之同作模組化硬體組件可在通道上通信並使功能同步,該等通道係在若干導線組上使用發信號協定或訊號交換協定來實施。
在一些實施例中,方法包含:形成包括多相邏輯及應答電路之一非同步線性管線電路;識別該非同步線性管線電路的包括該多相邏輯之一部分之至少一閒置部分;及將該非同步線性管線電路之該經識別之至少一閒置部分轉換成一單相管線電路。識別該至少一閒置部分可包含識別為空之一部分。形成該非同步線性管線電路可包含形成一雙相管線電路或四相管線電路中之至少一者。轉換成該單相管線電路可包含忽略來自對應於該閒置部分之應答電路之應答信號。該單相管線電路可包含複數個導線上之複數個資料信號,且該轉換可包含減少對應於該等資料信號之延遲失配。
額外活動可包含以一場可程式化閘陣列來實施該單相管線,及/或組合來自一第一單相管線電路之第一組資料信號與來自一第二單相管線電路之第二組資料信號,及/或添加一延遲至該等第一單相管線電路或該第二單相管線電路中之一者以實質上匹配與該等第一單相管線電路及該第二單相管線電路中之每一者相關聯之管線延遲。進一步活動可包括添加一應答電路至該等第一單相管線電路或該第二單相管線電路中之一者以在該等第一單相管線電路或該第二單相管線電路中適應一潛在暫停條件。其他活動可包含判定與該第一單相管線電路相關聯之一第一資料速率高於與該第二單相管線電路相關聯之一第二資料速率,且基於該判定,降低該第一資料速率以匹配該第二資料速率或在該第一單相管線電路與該第二單相管線電路之間引入一虛設通信電路以平衡一延遲。可使用含有在由一機器執行時使該機器執行此等方法要素之指令之一機器可讀儲存媒體來完成此等方法要素中之任何者。
在一些實施例中,一電路可包含包括多相邏輯及應答電路之複數個非同步線性管線電路、操作以忽略該複數個非同步線性管線電路之閒置部分中之應答信號的複數個單相管線電路,及用以在所選數目個該複數個非同步線性管線電路與該複數個單相管線電路之間提供一組接線之複數個接線板。在一第一單相管線電路與一第二單相管線電路之間的一接線可由安置於該第一單相管線電路與該第二單相管線電路之間的一虛設電路、該第一單相管線電路中之一延遲元件或該第一單相管線電路中之一應答電路來形成。該等非同步線性管線電路及該等單相管線電路可以一場可程式化閘陣列來實施。
在一些實施例中,一系統包含記憶體、耦接至該記憶體之一或多個處理器,該一或多個處理器用以實施一或多個模組。該等模組可包含用以形成包括多相邏輯及應答電路之一非同步線性管線電路之一形成模組、用以識別該非同步線性管線電路的包括該多相邏輯之一部分之至少一閒置部分之一識別模組,及用以將該非同步線性管線電路之該經識別之至少一閒置部分轉換成一單相管線電路的一轉換模組。該轉換模組可經組態以忽略來自對應於該閒置部分之應答電路之應答信號。該單相管線電路可包含複數個導線上之複數個資料信號,且該轉換模組可經組態以減少對應於該等資料信號之延遲失配。揭示了額外裝置、系統及方法。
所揭示技術之一些實施例係藉由實例來說明且不限於附圖之圖式。
現將描述包括管線之用於提供非同步單相邏輯操作之實例方法、系統及電路。在以下描述中,陳述具有實例特定細節之眾多實例來提供對實例實施例之理解。然而,一般熟習此項技術者將顯而易見,可在無此等實例特定細節之情況下及/或在具有與在此所給之細節不同之細節的組合的情況下來實踐此等實例。因此,為了簡化說明之目的而非限制之目的而給出特定實施例。
就面積、功率及效能而論,與其同步對應物相比,非同步電路具有數個優勢。存在可用以實施非同步邏輯之數個不同電路族。關於用於可由於實施非同步邏輯而改良效能且減少功率消耗及面積消耗之非同步邏輯之電路族揭示諸實施例。此族亦可用於以可重組態組構來實施。
因為在非同步邏輯系統中無時脈信號被用來協調資料通信,所以在導線組上使用發信號協定或訊號交換協定來實施通信通道。
圖1為根據本發明之各種實施例之實例非同步電路晶片組構100的簡圖。組構100含有支援各種可程式化邏輯功能之邏輯區塊(LB)101之可程式化陣列。組構100中之經說明為複數個正交定向軌道之路由軌道102用以攜載電子信號且實施邏輯區塊101之間的可重組態互連。用來互連路由軌道且組態邏輯區塊之可撓性路由架構之主要元件包括接線盒(CB)110及開關盒(SB)111。
在實施中,開關盒111可為將導線連接至導線之開關,該等導線例如水平及垂直路由軌道中之導線:連接至水平軌道中之導線的水平軌道中之導線、連接至垂直軌道中之導線的垂直軌道中之導線,及連接至垂直軌道中之導線的水平軌道中之導線。接線盒110可為將水平及/或垂直軌道中之導線連接至邏輯區塊101元件之開關。為了說明之目的,僅已標記圖式中之例示性元件。然而,一般熟習此項技術者應理解,實務上,可在半導體晶片之表面上複製路由軌道102、接線盒110及開關盒111以便提供所要互連功能性。
接線盒110及開關盒111之結構判定路由軌道102至邏輯區塊101之連接,藉此判定包括該等路由軌道102及該等邏輯區塊101之半導體晶片120之功能性。舉例而言,包括組構100之半導體晶片120可製造為FPGA(場可程式化閘陣列),諸如可購自AchronixTM、XilinxTM、AlteraTM及其他供應商之類型。
圖2為根據本發明之各種實施例之實例路由軌道200、210、220的簡圖。在同步組構中,路由軌道102可包含單一導線200。在非同步資料流組構中,可使用一束導線來實施每一路由軌道102,每一導線提供資料流通信通道。視圖210及220展示實施資料流互連之兩種不同方法。可以包含如視圖210中所展示之導線212、214及216之三導線組態或以包含如視圖220中所展示之導線222及224之兩導線組態來實施路由軌道102。可基於包括本文中所描述之各種類型之所實施的訊號交換協定之類型來選擇導線組態。在許多實施例中,包括在閘陣列半導體晶片(見圖1之晶片120)中,如視圖210及220中所展示,可在所謂之路由軌道中含有導線,該等路由軌道每路由軌道包含具有2或3個導線之群。
在視圖210之三導線組態中,導線212及214可用來發送資料(例如,使用導線212發送資料0信號,且使用導線214發送資料1信號),而可使用導線216發送控制信號,例如應答信號。在亦稱作「單軌道」之視圖220之兩導線組態中,可使用導線222及224中之每一者發送資料或控制信號。因此,路由軌道102可用來實施多種非同步通信協定。此等非同步通信協定包括可使用不同位元寬度用於在電路元件之間通信之多相訊號交換協定,諸如下文所描述之雙相及四相訊號交換協定。
圖3說明根據本發明之各種實施例之四相訊號交換協定。此通信協定可如下用於非同步通信。如圖所示,為了發送資料,協定使用三個導線212、214、216來分別攜載資料1信號312、資料0信號332及應答信號322。標籤「資料1」及標籤「資料0」用來指示並區分在此實例中正傳輸之兩個單獨資料信號。一序列信號轉變可用來將資料自邏輯區塊300發送至邏輯區塊302。首先,邏輯區塊300將導線212設定至邏輯高狀態310以傳輸資料1信號312。接下來,邏輯區塊302偵測到此變化,接收該資料1信號,且接著藉由將導線216設定至邏輯高狀態320以傳輸應答信號322而作出回應。此時,邏輯區塊300知曉邏輯區塊302已成功接收資料1信號312。邏輯區塊300現可將導線212重設至邏輯低狀態314。作為回應,邏輯區塊312將導線216重設至邏輯低狀態324。此等四個相按順序發生以傳輸一位元資訊,且因此此順序稱為四相訊號交換協定。可遵循一類似程序以在導線214上傳輸資料0信號332。此協定可以各種方式(諸如,使用相反邏輯位準值)來實施,為了簡潔起見,在此未提供對該等方式之討論。
圖4說明根據本發明之各種實施例之雙相訊號交換協定。該雙相訊號交換協定自先前所描述之通信相之數目減少通信相之數目。除消除了第三相及第四相(攜載資料信號及應答信號之導線之重設)外,該雙相訊號交換協定類似於圖3之四相訊號交換。簡單地雙態觸發導線上之邏輯狀態,而非設定及重設導線上之邏輯狀態。舉例而言,邏輯區塊400在時間410處雙態觸發導線212以傳輸資料1信號450。邏輯區塊402藉由在時間430處雙態觸發導線216來傳輸應答信號470以指示資料已被接收而作出回應。可遵循相同程序以傳輸資料0信號460,此係藉由在時間420處雙態觸發導線214,繼之以在時間440處之應答信號雙態觸發而達成。
對於資料1信號及資料0信號而言,替代資料表示法亦可為可能的。舉例而言,熟知等級編碼資料表示法(LEDR)使用一導線(例如,圖4之導線212)來表示資料(「D」),且使用第二導線(例如,圖4之導線214)來表示重複動作(「R」)。再次,可藉由雙態觸發兩個導線(D或R)中之一者來發送資料,其中D上之轉變表示自先前發送值之變化,且R上之轉變表示與先前發送值相同之資料。
在一些實施例中,提供發送者與接收者之間的通信協定之進一步簡化。此等實施例可為適用的而不管所使用之資料表示法為何。
圖5為根據本發明之各種實施例之系統方塊圖。系統模組500可包含硬體模組、軟體模組及如個別模組510、520、530、540及550之此等硬體模組與軟體模組之組合。舉例而言,軟體模組可藉由根據各種實施例之圖8之系統圖中的處理器860來實施。在一些狀況下,將個別模組510、520、530、540及550組合成單一模組或組合成某一數目個模組,該數目低於該等模組之個別數目原本可能指示之數目。
形成模組510形成包括多相邏輯及應答電路之非同步線性管線電路。識別模組520識別非同步線性管線電路的包括多相邏輯之一部分之閒置部分。閒置可意謂,在資料到達管線之輸入處時,管線為空的,且因此資料將流經管線而不會暫停。轉換模組530將閒置部分轉換成單相管線電路。組合模組540將來自多個單相管線電路之資料信號組合至一單相管線中。實施模組550以電路(諸如,FPGA)或以如特殊應用積體電路(ASIC)之自訂實施來實施該單相管線。
圖6為說明根據本發明之各種實施例之操作單一相邏輯的方法的流程圖。方法600係圖5之系統模組可藉以操作之方法。在操作610處,可藉由形成模組510來形成包括多相邏輯及應答電路之非同步線性管線電路。以此方式形成之電路可併有關於圖1至圖4所描述之元件中之一些或所有。管線電路可使用四相訊號交換協定而作為四相管線電路操作,或該管線電路可使用雙相訊號交換協定來作為雙相管線電路操作。甚至可形成管線電路來適應雙相操作及四相操作兩者。
在操作620處,藉由識別模組520來識別非同步線性管線之至少一閒置部分。考慮以下狀況:由於在整個系統中並不常常使用管線,所以該管線自身可能主要為閒置的。在此情形中,在資料值到達該管線之輸入處時,該管線之其餘部分通常為空的。此情形意謂資料值將流經該管線,直到該資料值到達該管線之末端時才暫停。因為資料流經管線而不在任何管線級處等待,所以用來調節經過管線之資料流動之應答信號可為多餘的。
更具體而言,在非同步管線之各種實施例中,僅當在管線中之下一級準備好接受新資料(如由應答信號以信號表明)時,資料才可向前移動。在管線為空之狀況下,此條件應始終為真。亦即,管線中之下一級應始終準備好接受新資料。因為在設計時此條件可為已知的,所以可自電路消除應答信號。結果,可使用單相而非雙相來進行通信。因此,在操作630處,藉由忽略關於管線之閒置部分之應答電路中的應答信號而將經識別之閒置部分轉換成單相管線電路。藉由轉換模組530來執行管線電路之此轉換。
在操作640處,減少單相管線內之不同導線上的資料信號之間的延遲失配。進行此減少來減少兩個連續資料值彼此趕上之機會。舉例而言,若在一導線上發送資料0信號,繼之以在鄰近導線上發送資料1信號,且導線上之延遲不同,則接收器有可能在接收資料0信號之前接收到資料1信號。此情形將為一錯誤。為了避免此問題,平衡攜載包含給定資料傳輸之各種資料信號的導線之間的延遲為有用的。延遲中之失配程度將限制可在通信鏈路上傳輸資料之速率。
在一些情況中,不太可能消除應答電路之部分。一常見實例係以下狀況:兩個不同管線交切,且如在由組合模組540執行之操作650中,將來自兩個管線之值組合在一起。在此狀況下,來自一管線之輸出可等待來自另一管線之輸出,使用應答電路來補償時序差異。
操作660判定在管線之間是否存在時序失配。若在管線之間存在時序失配,則可在操作670中執行若干動作中之一者,該等動作包括:添加延遲至管線中之一者以實質上匹配與單相管線電路中之每一者相關聯之管線延遲,添加應答電路至管線中之一者以在第一單相管線電路或第二單相管線電路中適應一潛在暫停條件,降低管線中之一者上之資料速率,及/或在管線之間引入虛設通信電路。虛設通信為用來將資料自慢管線切換至快管線之交越路徑。
圖7說明根據本發明之各種實施例之單一相邏輯電路元件。在接線板710處組合非同步線性管線與單相管線。虛設電路720用來組合兩個單相管線。接線板730用來組合兩個單相管線,其中在該等管線中之一者中插入延遲740。應答電路750用來組合兩個單相管線。
資料在其處可能必須等待之電路中之任何位置應包括適合應答電路。若管線之部分上可能存在顯著暫停,則應存在足夠數目之非同步管線級,該等非同步管線級具有應答電路以容納可能被暫停之所有資料。可藉由判定在系統中之特定位置處可能暫停之資料值的最大數目而引入額外管線級來處置此情形。具有應答電路之管線級之數目取決於如何實施管線級,例如半緩衝級或全緩衝級。與僅一個全緩衝級相比,可能需要兩個半緩衝級來儲存資料值。因此,在半緩衝非同步管線之狀況下,具有應答電路之管線級之數目至少兩倍於被暫停之資料值之預期最大數目。在全緩衝非同步管線之狀況下,具有應答電路之管線級之數目至少為被暫停之資料值之預期最大數目。
減輕許多資料值在兩個管線之接合點處等待之可能性的另一方法係降低將資料插入至較快管線中之速率。此操作應減少較快管線之輸送量,藉此減少兩個不同管線之延遲中的間距,且因此減少等待資料值之數目。舉例而言,該輸送量可減少藉由比較完整系統之總時序行為與快管線區段之時序行為而判定之量。
另外,可修改設計自身以降低等待資料值之數目。可藉由在較慢管線與較快管線之間引入虛設通信而實現此目的,該引入之唯一目的係平衡交切於共同位置處之兩個管線之間的延遲。
存在數個方式來建立雙相邏輯與單相邏輯之間的介面。最直接介面建立方法可為藉由消除應答信號來簡化雙相接收器及傳輸器電路。在傳輸器之狀況下,假定應答信號始終準備好,且可使用此假定藉由消除接收應答信號之電路來簡化該傳輸器。類似地,雖然正常雙相接收器產生應答信號,但因為在單相邏輯系統中忽略了該應答信號,所以可消除用來產生彼應答信號之所有相關聯之電路。一類似方法可用來建立四相邏輯與單相邏輯之間的介面。
為了減輕傳輸器與其接收器之間的延遲失配,可減低傳輸器資料速率以確保在具有足夠延遲時間間隔之情況下發送資料值,使得延遲失配不應導致錯誤。注意,一旦資料已到達含有應答電路之位置處,則此情形不再為一顧慮。因此,重要的是資料最終由含有應答電路之電路來處理。為了提供可靠操作,管線中任何迴路應含有具有應答信號之具有雙相或四相訊號交換協定之至少兩個鄰近電路。管線中之迴路在邏輯區塊之輸出回饋至同一邏輯區塊之輸入時存在。
各種實施例包括數個對此方法之延伸。可將不同雙相、四相或任何其他延遲不敏感通信轉換成其對應單相對應物。舉例而言,代替使用如先前所描述之具有兩個信號導線之雙軌(二分之一)碼,可使用N分之一碼,其中使用N個可用導線中之一者加上應答來傳輸N個可能信號中之一者。四相及雙相N分之一碼以與二分之一碼相同之方式工作。在四相之狀況下,設定所選信號導線,接著設定應答導線,接著重設信號導線,且最後重設應答導線。在雙相之狀況下,如先前所解釋,雙態觸發導線。同樣,以與先前所描述之方式相同之方式來執行將四相或雙相N分之一碼轉換成其單相對應物,該方式涉及在管線被判定為閒置時消除應答信號。
其他延遲不敏感碼存在,其允許在N個導線上傳輸一個以上信號。此等碼包括斯波那碼(Sperner code)及伯格碼(Berger code)及其他碼,且為一般熟習此項技術者所熟知。此等延遲不敏感碼全部具有共同特性:雖然在具有不同延遲之N個導線上傳輸多個信號,但接收器可基於由所接收N個信號之組合形成之碼字來判定最後信號何時已到達。一旦接收器已作出此判定,則其可將應答信號發送回至傳輸器。
以與先前所描述之N分之一碼相同的方式使用四相或雙相訊號交換協定來實施此等多信號碼。同樣,可藉由在管線被判定為閒置時消除應答信號而將此等多信號碼轉換成其單相對應物。
單相邏輯亦可與存在之雙相邏輯或四相邏輯相組合。雖然一些資料位元為單相之混合方法為可能的,但使用習知發信號邏輯之其他方法亦為可能的。
可利用單相邏輯來改良非同步FPGA中之路由架構之設計。特定而言,如由實施模組550所執行,可使用單相邏輯代替雙相或四相邏輯來實施開關盒、邏輯區塊及接線盒之所有組件。此方法可顯著減少整個非同步FPGA之面積、延遲及功率。
在多個管線交切於計算區塊處時,對邏輯之每一輸入可使用不同通信協定。舉例而言,考慮具有輸入「A」及「B」之二輸入AND函式之狀況,其中已知輸入「B」始終在輸入「A」之前到達。將兩個輸入連接至兩個不同發送者:SA(發送在輸入A上到達之資料)及SB(發送在輸入B上到達之資料)。可最佳化實施以使得SB僅在新資料值與所傳輸之先前值不同的情況下才發送資料。由輸入A之到達觸發AND函式之評估,且此時可針對輸入B來推斷正確資料值。在FPGA實施之上下文中,此最佳化亦為有用的,此係因為可能存在一些極少變化之信號之故。可使用此方法來最佳化此等緩慢變化之信號。
實施例可包括一電路,該電路包含:包括多相邏輯及應答電路之複數個非同步線性管線電路;操作以忽略該複數個非同步線性管線電路之閒置部分中之應答信號之複數個單相管線電路;及用以在所選數目個該複數個非同步線性管線電路與該複數個單相管線電路之間提供一組接線之複數個接線板。
進一步實施例可包括一第一單相管線電路與一第二單相管線電路之間的一接線,該接線由安置於該第一單相管線電路與該第二單相管線電路之間的一虛設電路形成。
更進一步實施例可包括一第一單相管線電路與一第二單相管線電路之間的一接線,該接線由該第一單相管線電路中之一延遲元件形成。
更進一步實施例可包括一第一單相管線電路與一第二單相管線電路之間的一接線,該接線由該第一單相管線電路中之一應答電路形成。
更進一步實施例可包括該等非同步線性管線電路及以一FPGA來實施之該等單相管線電路。
圖8為包括根據各種實施例之製品的系統800之方塊圖。系統800可包含一組指令,可執行該等指令以使系統800執行本文中所論述之方法中之任何一者或多者。在替代實施例中,系統800可作為獨立器件操作或可(例如,藉由網路)連接至其他系統。在網路部署中,系統800可作為伺服器-用戶端網路環境中之伺服器或用戶端系統操作,或作為同級間(或分散式)網路環境中之同級系統操作。系統800可實現為呈電腦形式之特定機器。
系統(800)可為操作以建立對FPGA之程式化之電腦輔助設計(CAD)工作站。
系統800可為伺服器電腦、用戶端電腦、個人電腦(PC)、平板PC或能夠執行指定待由彼系統進行之動作之一組指令(循序或以其他方式)的任何系統。另外,雖然僅說明單一系統,但亦應採用術語「系統」來包括個別地或聯合地執行一組(或多組)指令以執行本文中所論述之方法中之任何一者或多者的系統之任何集合。
實例系統800可包括處理器860(例如,中央處理單元(CPU)、圖形處理單元(GPU)或兩者)、主記憶體870及靜態記憶體880,該處理器860、該主記憶體870及該靜態記憶體880中之所有者藉由匯流排808而彼此通信。系統800可進一步包括視訊顯示單元810(例如,液晶顯示器(LCD)或陰極射線管(CRT))。系統800亦可包括文數字輸入器件820(例如,鍵盤)、游標控制器件830(例如,滑鼠)、磁碟驅動單元840、信號產生器件850(例如,揚聲器)及網路介面器件890。
磁碟驅動單元840可包括機器可讀媒體822,可在該機器可讀媒體822上儲存體現本文中所描述之方法或功能中之任何一者或多者的一組或多組指令(例如,軟體)824。指令824亦可在其由系統800執行期間完全或至少部分駐留於主記憶體870及/或處理器860內,其中主記憶體870及處理器860亦構成機器可讀媒體。可進一步經由網路介面器件890在網路882上傳輸或接收指令824。
雖然在實例實施例中將機器可讀媒體822展示為單一媒體,但是應採用術語「機器可讀媒體」來包括儲存一組或多組指令之單一媒體或多個媒體(例如,集中式資料庫或分散式資料庫,及/或相關聯之快取記憶體及伺服器)。亦應採用術語「機器可讀媒體」來包括能夠儲存、編碼或攜載用於由機器執行且使機器執行本技術之方法中之任何一者或多者的一組指令的任何媒體。因此,應採用術語「機器可讀媒體」來包括但不限於包括固態記憶體之有形媒體以及光學及磁性媒體。
系統(800)可實施一或多個模組,該等模組包含:形成包括多相邏輯及應答電路之非同步線性管線電路的形成模組;識別該非同步線性管線電路的包括該多相邏輯之一部分之至少一閒置部分的識別模組;及將該非同步線性管線電路之該經識別之至少一閒置部分轉換成一單相管線電路的轉換模組。
轉換模組可進一步操作以忽略來自對應於閒置部分之應答電路之應答信號。
轉換模組可更進一步操作以減少對應於單相管線中之複數個導線上之複數個資料信號的延遲失配。
已描述非同步單相管線電路之實施例及形成該等非同步單相管線電路之方法。實施此等電路可導致減少之功率消耗、減少之晶粒面積及增加之處理速度。雖然已描述若干特定實施例,但顯而易見,可對此等實施例進行各種修改及改變。因此,將在說明性意義上而非在限制性意義上來看待本說明書及圖式。
提供發明摘要以遵照37 C.F.R. §1.72(b),其要求摘要允許讀者快速確定本技術發明之性質。在理解不應將該摘要用來解釋或限制申請專利範圍之的情況下提交該摘要。另外,在前文實施方式中,可看出,為了使本發明簡單化之目的,在單一實施例中將各種特徵聚集在一起。本發明之此方法不應被解釋為限制申請專利範圍。因此,以下申請專利範圍特此併入於實施方式中,其中每一技術方案依賴其自身而為一單獨實施例。
100...非同步電路晶片組構
101...邏輯區塊
102...路由軌道
110...接線盒
111...開關盒
120...半導體晶片
200...路由軌道/單一導線
210...路由軌道/視圖
212...導線
214...導線
216...導線
220...路由軌道/視圖
222...導線
224...導線
300...邏輯區塊
302...邏輯區塊
310...邏輯高狀態
312...資料1信號
314...邏輯低狀態
320...邏輯高狀態
322...應答信號
324...邏輯低狀態
332...資料0信號
400...邏輯區塊
402...邏輯區塊
410...時間
420...時間
430...時間
440...時間
450...資料1信號
460...資料0信號
470...應答信號
500...系統模組
510...形成模組
520...識別模組
530...轉換模組
540...組合模組
550...實施模組
710...接線板
720...虛設電路
730...接線板
740...延遲
750...應答電路
800...系統
808...匯流排
810...視訊顯示單元
820...文數字輸入器件
822...機器可讀媒體
824...指令
830...游標控制器件
840...磁碟驅動單元
850...信號產生器件
860...處理器
870...主記憶體
880...靜態記憶體
882...網路
890...網路介面器件
圖1為根據本發明之各種實施例之實例非同步電路晶片組構的簡圖;
圖2為根據本發明之各種實施例之實例路由軌道的簡圖;
圖3說明根據本發明之各種實施例之四相訊號交換協定;
圖4說明根據本發明之各種實施例之雙相訊號交換協定;
圖5為根據各種實施例之系統方塊圖;
圖6為說明根據本發明之各種實施例之操作單一相邏輯的方法的流程圖;
圖7說明根據本發明之各種實施例之單一相邏輯電路元件;及
圖8為包括根據本發明之各種實施例之製品的系統之方塊圖。
100...實例非同步電路晶片組構
101...邏輯區塊
102...路由軌道
110...接線盒
111...開關盒
120...半導體晶片

Claims (20)

  1. 一種形成一電路之方法,其包含:識別一非同步線性管線電路的包括多相邏輯之一部分及應答電路之至少一閒置部分;及將該非同步線性管線電路之該經識別之至少一閒置部分轉換成一單相管線電路。
  2. 如請求項1之方法,其中識別該至少一閒置部分包含識別為空之一部分。
  3. 如請求項1之方法,其中形成該非同步線性管線電路包含形成一四相管線電路或一雙相管線電路中之至少一者。
  4. 如請求項1之方法,其中該轉換成該單相管線電路進一步包含忽略來自對應於該閒置部分之應答電路之應答信號。
  5. 如請求項1之方法,其進一步包含以一場可程式化閘陣列來實施該單相管線。
  6. 如請求項1之方法,其中該單相管線電路進一步包含複數個導線上之複數個資料信號,且其中該轉換進一步包含減少對應於該等資料信號之延遲失配。
  7. 如請求項1之方法,其進一步包含組合來自一第一單相管線電路之第一組資料信號與來自一第二單相管線電路之第二組資料信號。
  8. 如請求項7之方法,其進一步包含添加一延遲至該等第一單相管線電路或該第二單相管線電路中之一者以實質上匹配與該等第一單相管線電路及該第二單相管線電路中之每一者相關聯之管線延遲。
  9. 如請求項7之方法,其進一步包含添加一應答電路至該等第一單相管線電路或該第二單相管線電路中之一者以在該等第一單相管線電路或該第二單相管線電路中適應一潛在暫停條件。
  10. 如請求項7之方法,其進一步包含:判定與該第一單相管線電路相關聯之一第一資料速率高於與該第二單相管線電路相關聯之一第二資料速率;及基於該判定,降低該第一資料速率以匹配該第二資料速率。
  11. 如請求項7之方法,其進一步包含:判定與該第一單相管線電路相關聯之一第一資料速率高於與該第二單相管線電路相關聯之一第二資料速率;及基於該判定,在該第一單相管線電路與該第二單相管線電路之間引入一虛設通信電路以平衡一延遲。
  12. 一種包括單相邏輯之電路,其包含:複數個單相管線電路,其操作以忽略複數個非同步線性管線電路之閒置部分中之應答信號;及複數個接線板,其用以在所選數目個該複數個非同步線性管線電路與該複數個單相管線電路之間提供一組接線。
  13. 如請求項12之電路,其中一第一單相管線電路與一第二單相管線電路之間的一接線係由安置於該第一單相管線電路與該第二單相管線電路之間的一虛設電路形成。
  14. 如請求項12之電路,其中一第一單相管線電路與一第二單相管線電路之間的一接線係由該第一單相管線電路中之一延遲元件形成。
  15. 如請求項12之電路,其中一第一單相管線電路與一第二單相管線電路之間的一接線係由該第一單相管線電路中之一應答電路形成。
  16. 如請求項12之電路,其中該等非同步線性管線電路及該等單相管線電路係以一場可程式化閘陣列來實施。
  17. 一種用以形成一電路之系統,其包含:記憶體;耦接至該記憶體之一或多個處理器,該一或多個處理器用以實施一或多個模組,該一或多個模組包括:一識別模組,其用以識別一非同步線性管線電路的包括多相邏輯之一部分及應答電路之至少一閒置部分;及一轉換模組,其用以將該非同步線性管線電路之該經識別之至少一閒置部分轉換成一單相管線電路。
  18. 如請求項17之系統,其中該轉換模組將忽略來自對應於該閒置部分之應答電路之應答信號。
  19. 如請求項17之系統,其中該單相管線電路進一步包含複數個導線上之複數個資料信號,且其中該轉換模組將減少對應於該等資料信號之延遲失配。
  20. 一種含有指令之機器可讀儲存媒體,該等指令在由一機器執行時使該機器執行形成一電路之一方法,該方法包含:識別一非同步線性管線電路的包括多相邏輯之一部分及應答電路之至少一閒置部分;及將該非同步線性管線電路之該經識別之至少一閒置部分轉換成一單相管線電路。
TW100119702A 2010-06-04 2011-06-03 單相邏輯 TWI531165B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/793,756 US7932746B1 (en) 2010-06-04 2010-06-04 One phase logic
US13/043,858 US8106683B2 (en) 2010-06-04 2011-03-09 One phase logic

Publications (2)

Publication Number Publication Date
TW201208256A TW201208256A (en) 2012-02-16
TWI531165B true TWI531165B (zh) 2016-04-21

Family

ID=43880459

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100119702A TWI531165B (zh) 2010-06-04 2011-06-03 單相邏輯

Country Status (3)

Country Link
US (3) US7932746B1 (zh)
TW (1) TWI531165B (zh)
WO (1) WO2011153333A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090116597A1 (en) * 2007-11-06 2009-05-07 Jordi Cortadella Variability-Aware Asynchronous Scheme for High-Performance Communication Between an Asynchronous Circuit and a Synchronous Circuit
US7932746B1 (en) 2010-06-04 2011-04-26 Achronix Semiconductor Corporation One phase logic
US20130159593A1 (en) * 2011-12-20 2013-06-20 Acer Incorporated Apparatus, system, and method for analyzing and managing data flow of interface apapratuses
FR2995476B1 (fr) * 2012-09-13 2015-12-25 Tiempo Circuit asynchrone a ecritures sequentielles
US9520180B1 (en) 2014-03-11 2016-12-13 Hypres, Inc. System and method for cryogenic hybrid technology computing and memory
US20150268962A1 (en) * 2014-03-24 2015-09-24 GoofyFoot Labs Asynchronous Circuit Design
US11641268B2 (en) * 2021-01-19 2023-05-02 Synopsys, Inc. Asynchronous chip-to-chip communication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09251058A (ja) * 1996-03-18 1997-09-22 Hitachi Ltd 非同期2線2相式スキャン回路及び診断方法
US5920899A (en) * 1997-09-02 1999-07-06 Acorn Networks, Inc. Asynchronous pipeline whose stages generate output request before latching data
US6732336B2 (en) * 2001-10-11 2004-05-04 California Institute Of Technology Method and apparatus for an asynchronous pulse logic circuit
US7584449B2 (en) * 2004-11-22 2009-09-01 Fulcrum Microsystems, Inc. Logic synthesis of multi-level domino asynchronous pipelines
US7614029B2 (en) * 2007-01-05 2009-11-03 Achronix Semiconductor Corporation Methods and systems for converting a synchronous circuit fabric into an asynchronous dataflow circuit fabric
US7913007B2 (en) * 2007-09-27 2011-03-22 The University Of North Carolina Systems, methods, and computer readable media for preemption in asynchronous systems using anti-tokens
US7932746B1 (en) 2010-06-04 2011-04-26 Achronix Semiconductor Corporation One phase logic

Also Published As

Publication number Publication date
US7932746B1 (en) 2011-04-26
US20110298495A1 (en) 2011-12-08
US8593176B2 (en) 2013-11-26
US8106683B2 (en) 2012-01-31
TW201208256A (en) 2012-02-16
US20120112792A1 (en) 2012-05-10
WO2011153333A1 (en) 2011-12-08

Similar Documents

Publication Publication Date Title
TWI531165B (zh) 單相邏輯
US10027433B2 (en) Multiple clock domains in NoC
JP5935105B2 (ja) 非同期プロトコル変換装置
US7228373B2 (en) Serial digital communication system and method
US8593313B2 (en) Parallel-to-serial conversion circuit, information processing apparatus, information processing system, and parallel-to-serial conversion method
US7239606B2 (en) Scalable configurable network of sparsely interconnected hyper-rings
US20120044941A1 (en) Data transmission system, data transmission method, and data transmission device
US20050062501A1 (en) Data transfer apparatus for serial data transfer in system LSI
US7719970B1 (en) Serial communications system with optional data path and control plane features
US8300635B2 (en) Programmable crossbar structures in asynchronous systems
US20080168200A1 (en) Method of compensating for propagation delay of tri-state bidirectional bus in a semiconductor device
US8254187B2 (en) Data transfer apparatus, and method, and semiconductor circuit
JP2009265024A (ja) 半導体装置
JP5869134B2 (ja) 非同期ハンドシェイクベースの相互接続のためのシステムおよび方法
Sim et al. A SpaceWire PHY with double data rate and fallback redundancy
US9521016B2 (en) Data transmission apparatus and method for transmitting data in delay-insensitive data transmission method supporting handshake protocol
JP3970278B2 (ja) 長いワイヤを介してデータ伝送を非同期で制御する装置および方法
TWI809741B (zh) 具有命令轉發機制的多晶片系統及地址產生方法
CN113114187B (zh) 异步脉冲传递阻塞单元及其控制方法、超导单磁通量子电路
JP6121690B2 (ja) クロック並走型シリアライザ回路
WO2024103015A1 (en) Retimer training and status state machine synchronization across multiple integrated circuit dies
CN114553797A (zh) 具有命令转发机制的多芯片系统及地址产生方法
JP5110433B2 (ja) データ駆動型情報処理装置
CN110895649A (zh) 一种集成电路后端布线管理系统、布线管理方法和芯片
Levison et al. An asynchronous communication protocol for internode connections in a scalable processor array