TW298651B - - Google Patents
Download PDFInfo
- Publication number
- TW298651B TW298651B TW085107452A TW85107452A TW298651B TW 298651 B TW298651 B TW 298651B TW 085107452 A TW085107452 A TW 085107452A TW 85107452 A TW85107452 A TW 85107452A TW 298651 B TW298651 B TW 298651B
- Authority
- TW
- Taiwan
- Prior art keywords
- ram
- port
- read
- cells
- cell
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17704—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Logic Circuits (AREA)
- Static Random-Access Memory (AREA)
Description
經濟部中央標準局員工消費合作社印製 208651 3;五、發明説明(1 ) 發明範圍 本發明一般涉及可程式邏輯裝置,且尤其涉及利用可程 式功能單元的場可程式閘陣列。 發明背景 應用指定積體電路(ASICs)是設計來完成一指定功能,與 之相反的微處理器,其可程式來完成不同的功能。ASICs 典型的最大好處是較低的單位成本與較高的性能。ASICs 通常以一些互補金屬氧化半導體(CMOS)技術的形式製造 ,利用特製,標準細胞,實體配置邏輯(PPL),閘陣列, 或場可程式閘陣列(FGPA)來設計。 閘陣列與FGPAs屬於半訂製裝置,包含一固定組的閘結 構,其可以幾種方式互相連結來達到所要的邏輯功能。在 閘陣列中,互相連結的模式係由廠商以定製處理光罩來定 義。在FGPAs中,互相連結的模式則由使用者以電氣方式 加以程式。 FPGAs通常包含一個陣列的可程式功能單元(PFUs)。FPU 也稱爲可配置邏輯區塊(CLB)或可配置邏輯元件(CLE)。每 一個PFU就是一個小的可程式邏輯區塊,通常包含一或多 個輸入線’一或多個輸出線》—或多個检閘,及一或多個 查看表(LUTs)。通常輸入線的數目大於輸出線,每條輸入 線不是指定資料線就是指定控制線。LUT可加以程式來執 行不同的功能,包含有一般的組合或控制邏輯,唯讀記憶 體(ROM),随機存取記憶體(RAM),或是在輸入與輸出線 之間的資料路徑功能。這樣子,LUT決定出個別的PFU要 -4- (請先閲t背面之注意事ί. ^填寫本頁) •裝. 訂 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ297公釐) 經濟部中央標準局員工消費合作社印製 A7 B7五、發明説明(2 ) 執行的是普通邏輯,或是如加法器,減法器,計數器,累 加器,暫存器的特別模式,或如單埠ROM或單埠RAM的 記憶體細胞。在某些例子中,LUT可與栓閘相當獨立的使 用。FGPAs通常含有100-1000級次數目的本質上相同的 PFUs ° FPGAs也包含一圍繞PFUs的可程式連結網路。此連結網 路包含可程式交又點開關以及金屬連結區段(路線安排節 點),來選擇性連結不同的PFUs。此交叉點也稱爲可程式 連結點(PIPs)。此交叉點開關提供信號切換,放大,及隔 離。此金屬連結區段可在FPGAs的水平與垂直軸上對稱的 配置。 FPGA的功能由PFU的組合程式與互相連結網路來決定。 使用者選擇FPGA的功能係在開機或在系統控制下載入一 配置位元流到FPGA來完成此组合程式。配置位元流的不 同的位元儲存在FPGA的内部配置RAM中。此配置RAM連 結到LUTs及交叉點開關。因此,此配置位元流決定每個 PFU的指定功能,如不同PFU的輸入及輸出之間的互相連 結,外部的連結墊,以及FPGA中的其他電路。配置位元 流可以在啓始時存在於電氣式可抹去之可程式ROM (EEPROM),電路板上的ROM,或FPGA夕卜部的任何其他儲 存媒體。 FPGAs也可以可程式邏輯細胞(PLCs)及可程式輸入-輸出 細胞來加以定義。PLCs包含PFUs,各個不同的配置RAM ,及部分連接到PFUs的連結網路。如此,各個不同的邏 -5- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) ~~一 請先閱t背面之注意事| 乂填寫本頁) -裝- -m 線 B7 五、發明説明(3 ) 輯功能可在PLCs中完成。PiCs位於裝置的周圍,PLCS的外 面。PLCs包含輸入-輸出缓衝器,各個不同的配置ram, 以及部分連接到連結整的連結網路β例如,每個pic可包 含四個缓衝器做爲與四個連結墊的介面。每個緩衝器可配 置爲輸入’輸出,或雙向的輸入_輸出。每個緩衝器均可 配置成與TTL或CMOS相容。 FPGAs在美國專利編號 5,386,156 ; 5,384,497 ; 4,870,302 ;美國再發行專利编號34,363 ;以及歐洲專利説明書公告 編號0 177 261中有進一步的説明;並在此_併做爲參考之 用。 RAMs包含一或多個細胞(記憶體單元),其中每個細胞儲 存一個位元的資訊。每個細胞可在一固定時間内以讀或寫 的動作存取,而這與細胞的位置或位址無關。這區別出 RAM與序列,或部分序列的存取儲存裝置如磁帶,磁鼓及 磁片的不同。後者的存取時間由資料的位址或位置來決定 。與RAM結合的位址,資料及控制線合起來構成一或多個 埠。單埠RAMs只可由一個埠來存取記憶體細胞。如此, 單埠的RAMs不能同時用不同的位址來工作。多埠RAMs則 可由兩個以上功能獨立的埠來存取。這樣,多埠厌八]^8可 同時用不同的位址來工作。多埠RAMs包含雙埠RAMs,三 埠RAMs,四埠RAMs等等。雙埠RAMs被用在需要以讀及 寫的動作做即時更新之,例如,緩衝器,佇列及暫存器。 雙埠RAMs的應用包含了電信通道,其從一來源處接收資 料(也就是電話線)並傳送到另一個來源(也就是電腦)。在 -6- 經濟部中央標準局員工消費合作社印製 A7 __B7_五、發明説明(4 ) 這個例子中,電話線連接到第一埠,而電腦則接到第二埠 0 PFUs係發明來實現雙埠RAMs。例如,一有N個輸入的 LUT含有一個2N位元庫的記憶體細胞,一 N對2N位元解碼 器及一輸出。這可提供一單埠ROM,以便將配置位元流載 入記憶體,而解碼器選出適當的細胞來回應位址信號。如 果要提供單埠RAM,則須包含額外的邏輯電路來寫資料到 LUT。依先前技藝的敎授,藉由提供單埠RAM—第二個N 對2N位元解碼器,可以得到一雙埠RAM。此第二解碼器選 出一 RAM細胞來回應第二位址信號。第一與第二解碼器可 以藉由分別的位址信號來同時存取RAM細胞。同樣的,第 三個N對2〜位元解碼器可提供三埠RAM,以此類推。 很不幸的,此額外的解碼器通常就只有用在多埠RAM的 動作中。如果一PFU並不是當做一多埠RAM的話,則此解 碼器很少會用到或甚至不用。既然FPGAs的原來目的是實 現廣泛不同功能之能力,使用只用來支援多埠RAMs的解 碼器變爲耗費成本及沒有效率的手段。 另一種在FPGAs中實現雙埠RAM的手段在最近的Xilinx, Inc.,May 2, 1995產品預覽"XC4000E Logic Cell Array Family" 中有報告。在第一模式中,CLB中一 16x2單埠RAM由一 16x1單埠之"F-RAM"及一 16x1之單埠"G-RAM"所組成。在 第二模式中,16x2的單埠RAM轉換成一 16x1之雙埠RAM。 在雙埠模式中,任何寫到F-RAM的動作會用F-位址自動寫 到G-RAM。然而,這樣的最大缺點是雙埠模式的G-位址不 請先閱讀^'面之>5.-意事\/彳填寫本頁) 裝· 訂 Γ 線 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) 經濟部中央標準局員工消費合作社印製 A7 B7五、發明説明(5 ) 能用來寫G-RAM。結果,16x1的雙埠RAM有一利用F-位址 的讀/寫埠,但有一利用G-位址的唯讀埠。 一致的,FPGA將需要可有效率地實現在每一埠均可同 時支援讀與窝的動作之多埠RAM。 發明概要 本發明之基本觀點是一實現多埠RAM的FPGA藉可程式 切換裝置來提供在不同RAM細胞間之位元層次連結。 根據本發明之一觀點,一 FPGA含有一 LUT來實現數個功 能,包含第一及第二RAM細胞,及指定來做RAM細胞連結 與解除連結的可程式切換裝置。第一與第二RAM細胞分別 連結到第一與第二讀/寫埠。當被切換裝置解除連結時, RAM細胞分別的動作,就像單埠RAM。然而,在被切換裝 置連結時則共用資料,就像雙埠RAM般一起動作。雙皡 RAM細胞可同時讓第一與第二讀/寫埠存取。 圖式之簡單説明 本發明與它的幾項特色及優點可一起由以下伴有附圖的 詳細説明加以了解,其中 圖1是一簡化的概要圖表,一般性地説明本發明之具體 實例, 圖2是一簡化的概要圖表,根據本發明之另一具體實例 説明兩個16x1的單埠RAM如何轉換成一 16x1的雙埠RAM, 圖3是一簡化的電路圖,説明圖2中某些元件的具體實例 圖4是一簡化的概要圖表,根據本發明之另一具體實例 _-8- 本紙張尺度適用中國國家標準(CNS ) A4規格(210 X 297公釐) ---------裝-- (請先閲讀f面之注意事b4填寫本頁) Γ 經濟部中央標準局員工消費合作社印製 ZQSGhl at ______ B7_ 五、發明説明(6 ) 説明兩個16x2的單埠RAM如何轉換成一個16x2的雙埠RAM , 圖5是一簡化的概要圖表,根據本發明之另一具體實例 説明一個16x2的單埠RAM與一個32x1單埠RAM如何轉換成 一個雙埠RAM,以及 圖6是一簡化的概要圖表,根據本發明之另一具體實例 説明三個16x1的單埠RAM如何轉換成16x1的三埠RAM。 圖式之詳細説明 參考圖1 ’顯示一簡化的概要圖表,一般性地説明本發 明的具體實例。如示,RAM 102經通道106連結到埠104, 而RAM 108則經通道112連結到埠110。另外,切換開關114 經通道116連結在RAM 102與108之間。RAM,通道與切換 裝置是像半導體晶片的積體電路實例中FPGA的一部分。 RAM 102與108由可程式元件所提供,如回應於配置位元 流之一或多個LUTs。埠104與110最好是讀/寫埠,而通道 106與112則説明性的包含位址線,讀取線,寫入線及讀/ 寫控制線。切換裝置114也同樣的回應配置位元流。最好 ’切換裝置104與連結網路中通用性的交又點開關相反, 只指定來轉換單埠RAM爲多埠RAM » 當配置位元流指示切換裝置114將RAM 102與RAM 108解 除連結,則RAM 102與RAM 108如同分開的單埠RAM—樣 ’個別的動作。也就是關於通道116,ram 102與埠110解 除連結,RAM 108與埠104解除連結。 另一方面,在配置位元流指示切換裝置114將RAM 102與 _______ -9- 本紙張適用中家標準(CNS ) Α4·_ (21QX297公釐) (請先閏讀背面之注意事少吴填寫本頁) •裝·
、1T 線 A7 B7 經济部中央榡準局貝工消費合作·社印製 五、發明説明(7 ) RAM 108連結,則RAM 102與RAM 108—起動作的像一個 多埠RAM。這種模式下,切換裝置114經由通道il6提供 RAM 102與108間的連結。RAM 102中每個細胞連結到RAM 108的單一細胞,而RAM 108中每個細胞連結到RAM 1〇2的 單一細胞。這形成記憶體細胞的連結對,每個連結對包含 來自RAM 102的一個細胞與來自RAM 108的一個細胞。連 結對的兩個細胞共同資料。也就是,存在連結對中每個細 胞的邏輯値是相同的。結果,RAM 102連結到i丰11〇, RAM 108連結到埠104。如此,RAM 102與RAM 108均可經 由埠104與埠110加以存取來支援多埠RAM的動作。 參考圖2,是一簡化的概要圖表,根據本發明之另一具 體實例説明兩個16x1的單蜂RAM如何轉換成一 16x1的雙痒 RAM » LUTs 202與204回應配置位元流來分別實現16xl RAM »可理解的是,LUTs 202與204是單一 LUT或個別 LUTs的部分(也就是半個LUTs)。任何情況下,LUTs 202與 204可以換成一個較大的LUT。同樣的,LUTs 202與204也 可以換成較多數目的較小LUTs。例如,LUT 202可用兩個 做成8x1單埠ram的LUTs來取代。雖然,LUTs 202與204最 好放在同一個PFU,但是它們也可以放在分開的PFUs,這 種情形下的分開PFUs最好是相鄰的。 LUT 202包含16個RAM細胞C0-C15。爲説明清晰的目的 ’只顯示CO、C14與C15。LUT 202接收位址線A0-A3來選 出細胞C0-C15中的一個。LUT 202也包含在位址線A0-A3 與細胞C0-C15間的一個4x16解碼器(未顯示)來完成選擇。 本紙張尺度顧中國國家榡準(CNS)从麟_ (2丨Gx297公廣) I---------裝------訂-----「線 (請先閲讀f'面之注意事'^4填寫本頁) 經濟部中央標準局貝工消費合作社印褽 A7 _B7_ 五、發明説明(8 ) LUT 202接收窝入資料線WDA來提供寫入細胞C0-C15的資 料。LUT 202也接收寫入致能線WEA做爲讀/寫控制線來選 擇細胞C0-C15的讀窝動作。LUT 2〇2將細胞C0-C15的内容 連結到讀取資料線RDA線。線A0-A3、WDA、WEA及RDA 集合起來做爲細胞C0-C15之讀/寫埠。 LUT 204相似於LUT 202。LUT 204包含16個RAM細胞 C16-C31,顯示了細胞C16、C30與C31。LUT 204接收位址 線B0-B3,並經由一 4x16解碼器(未顯示)來選擇細胞C16-C31中的一個。LUT 204也接收細胞C16-C31的寫入資料線 WDB與寫入致能線WEB。相似的,LUT 204將細胞C16-C3 1 的内容連結到讀取資料線RDB。線B0-B3、WEB、WDB及 RDB集合起來做爲細胞Cl6-C:31之讀/寫埠。 切換装置S0-S15係爲切換装置114之説明性配置的表示 ,連結在LUTs 202與204之間。爲説明清晰的目的,只顯 示切換裝置SO、S14與S15。每個切換裝置S0-S15連結在一 細胞C0-C15與一細胞C16-C31之間。舉例’切換裝置S0連 結在細胞C0與細胞C16之間,切換裝置S14連結在細胞C14 與細胞C30之間,切換裝置S15連結在細胞C15與細胞C31 之間。切換裝置S0-S15—般也連接到FPGA的配置RAM細 胞206。細胞206決定切換裝置S0-S15是否要如普通的設定 來做連結或解除連結。如果細胞2〇6儲存了 一個第一邏輯 値,則切換裝置S0-S15會全部設定成連結(也就是接合), 相反的,如果細胞206儲存的是第二邏輯値,則切換裝置 會全部設定成解除連結(也就是斷路)。儲存在細胞206的 -11 - 本紙張尺度適用中國國家標準(CNS ) A4規格(2丨〇><297公瘦) ' " 請先閲t».背面之·注意事^ 4·填寫本頁) 裝. 訂 線 2QaGSl A7 ___ B7 經濟部中央標準局員工消費合作社印製 五、發明説明(9 ) 邏輯値係由配置位元流決定。因此,切換裝置so_s丨5是可 程式化的,以回應於配置位元流’來做細胞C〇_ci5與cie-CS 1 間的連 結或解 除連結 β 如果設定切換裝置S0-S15做解除連結的話,則LUTs 202 與204個別的動作,如通一單埠的16xl ram。另外,如果 5又疋切換裝置s〇-si5做連結的話,則LUTs 202與2〇4轉換成 一 16x1的雙埠ram。在雙埠模式中,細胞C0-C15以一對一 的關係做位元層次的連結到細胞C16-C3 1。也就是,細胞 C0與細胞C16形成第一連結對,細胞C1與細胞C17形成第 二連結對,而細胞C15與細胞C31形成第十六連結對。再 者’細胞C0-C15可由包含線B0-B3、WDB、WEB與RDB的 讀/寫埠加以存取,而細胞C10-C31則可由含線A0-A3、 WDA、WEA與RDA的讀/寫埠加以存取。 參考圖3,顯示一簡化的電路圖,説明圖2中某些元件的 具禮實例。細胞C0包含反向連結的反向器3〇2與304,其在 節點306與308連結在一起。與Lut 202結合的4x16解碼器 係由解碼電路310與電晶體312及314組合提供。解碼器電 路310連結到位址線八〇-/\3。如果將位址線八0-八3設定爲 〇〇〇〇’則解碼器電路310使電晶體312與314導通。在寫入 動作的期間,WEA使電晶體316導通,這將WDA連結到電 晶體312,接著將WDA連結到節點306藉以將WDA上的邏 輯値窝入細胞C0»在讀取動作的期間,WEA將電晶體316 截止’其解除WDA與電晶體312間的連結。節點308上的邏 輯値被反向器318加以反向,而且反向器318的輸出由電晶 {請先閱讀¾1-面之注意事&-?.填寫本頁) -裝. 訂 線 -12- 經濟部中央標準局員工消費合作社印製 A 7 _B7五、發明説明(1〇 ) 體314連結到RDA。結果,RDA被認爲是儲存在節點308上 的邏輯値。 相同的方式,C16包含反向連結的反向器322與324,其 在節點326與328連結在一起。與LUT 204結合的4x16解碼 器包含解碼電路330與電晶體332及334。當位址線B0-B3設 定爲0000,解碼器電路330使電晶體332及334導通,藉以 在讀取動作時送出節點326上的邏輯値到RDB,並且在 WEB允許的寫入動作中儲存在節點326上的WDB邏輯値。 細胞C0及C16連結到切換裝置S0,其包含了電晶體320。 電晶體360的源極與洩極分別連結到節點306與326。電晶 體320的閘極連結到配置RAM細胞206。於是,細胞206決 定出電晶體320是否將節點306及326連結在一起。如果細 胞206存的邏輯LOW (或0),則電晶體320截止,並且不連 結節點306與節點326。相反的,如果細胞206存的是邏輯 HIGH (或1),則電晶體320導通,並將節點306與節點326短 路在一起。這短路的情形提供細胞C0與C16間位元層級的 連結。 如果電晶體320導通而C0與C16中存的是不同的邏輯値, 則在細胞C0與C16之間的共同邏輯値會是未定的。然而, 因爲配置位元流是在細胞C0細胞C16完成資料處理動作前 載入,所以不應發生細胞C0與C16間的衝突。可假定的, 當LUTs 202與204可由配置位元流加以程式來分別實現細 胞C0與C16,則細胞C0與C16在經由電晶體320的位元層次 連結發生前重設爲相同的邏輯値(例如LOW)。 -13- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) (請先閱免背面之注意事1.4·填寫本瓦) -裝. --s 線 經濟部中央標準局貝工消費合作社印製 A7 _____B7_ 五、發明説明(彳1 ) 電晶體320只根據細胞206的指令來指定做細胞C0與C16 間連結或解除連結。最好每個切換裝置S0-S15包含一類似 於電晶體320的電晶體,而通常電晶體的閘極接到細胞206 。當然,可以使用其他形式的切換裝置,例如互補的通道 電晶體對。再者,爲了速度與雜訊的考量,額外的反向器 可以當做緩衝器來連結細胞C0與C16。 參考圖4,顯示一簡化的概要圖表,根據本發明之另一 具體實例説明兩個16x2的單埠RAM如何轉換成一個16x2的 雙埠RAM。很多前面的討論適用於本具鱧實例所以不須重 複。然而,LUT 402包含第一組(或庫)的RAM細胞C0-C15 ,及第二組(或庫)的RAM細胞C32-C47。另夕卜,WDA用 WDA1 與 WDA2取代,而 RDA 用 RDA1 與 RDA2取代。WDA1 與RDA1連結到第一組RAM細胞C0-C15。相類以的,WDA2 與RDA2連結到第二组RAM細胞C32-C47。LUT 402有一 4x16的解碼器(未顯示出來)。位址線A0-A4選出兩個RAM 細胞’一個在細胞C0-C15中,另一個在細胞C32-C47中。 例如,位址〇〇〇〇選出C0與C16,而位址1111則選出C1 5與 C47。如果位址是〇〇〇〇而WEA爲高電位,則WDA1上的邏 輯値儲存在細胞C0中,而WDA2上的邏輯値儲存在細胞 C32中。如果位址是〇〇〇〇而WEA爲低電位,則細胞C0與 C32的内容分別連結到RDA1與RDA2。 LUT 404類似於LUT 402。LUT 404包含第一組的RAM細 胞C16-C31,及第二組的RAM細胞C48-C63。另外,以 WDB1與WDB2取代WDB,並以RDB1與RDB2取代RDB。 -14- 本紙張尺度適用中國國家標準(CNS > A4規格(210X297公釐> --------丨裝------訂-----「線 (請先閱讀背面之注意事^東填寫本頁) 經濟部中央標準局員工消費合作社印製 A7 ___B7 五、發明説明(12 ) WDB1與RDB1連結到第—組的ram細胞C16-C31,而WDB2 與RDB2連結到第二組的RAM細胞CM8-C63。位址線B0-B3 選出兩個RAM細胞,一個在細胞C16-C31,而另一個在細 胞C48-C63 〇 LUTs 402與404都含有16x2,或32個RAM細胞。因此, 切換裝置S0-S31連結在LUTs 402與404之間。顯示出來的 是切換裝置有SO、S15、S16及S31。切換裝置S0連結在細 胞C0與C16之間,切換裝置S16連結在細胞C32與C48之間 ’切換裝置S15連結在細胞C15與C31之間,切換裝置S31連 結在細胞C47與C63之間。另外,如果必要的話,切換裝 置可以連結在LUT 402中的第一组細胞及LUT 404中的第二 组細胞’反過來也一樣。 圖5是一簡化的概要圖表,根據本發明之另一具體實例 説明一個16x2的單埠RAM與一個32x1單埠RAM如何轉換成 一個雙埠RAM。很多前面的討論適用於本具體實例所以不 須重複。例如,LUT 402是一個16x2的單埠RAM,有細胞 C0-C15與細胞C32-C47。然而,LUT 504是一個32x1的單蜂 RAM ’有細胞C16-C31與細胞C48-C63。LUT 504包含額外 的位址線B4。LUT 504也包含一 5x32的解碼器(未顯示出來) ’讓位址線B0-B4選出細胞C16-C31與細胞C48-C63中任何 一個β切換裝置S0-S31連結於LUT 402於LUT 504之間,其 中顯示了切換裝置S0 ' S15、S16及S31。LUT 402與504提 供一’'角落旋轉"的雙埠RAM,其中兩個位元流(分別與細 胞C0-C15及細胞C32-C47結合)可以轉換成單一的位元流( ____ -15- 本氏張尺度適用中( CNS ) A4規格(210X297公釐) '~~~~~~ (請先閔免背面之注意事ί4·填寫本頁) 裝 ,1Τ 線 經濟部中央標準局貝工消費合作社印裝 A7 ___B7_ 五、發明説明(13 ) 與細胞C16-C31及C48-C63結合)。 圖6是一簡化的概要圖表,根據本發明之另一具體實例 説明三個16x1的單埠RAM如何轉換成16x1的三埠RAM。很 多前面的封論適用於本具體實例所以不須重複。例如, LUTs 202與204是16x1的單埠RAMs,然而,LUT 606是第 三個16x1的單埠RAM。LUT 606類似於LUTs 202與204。 LUT 606包含16個RAM細胞C32-C47,其中顯示了細胞C32 、C46及C47。LUT 606接收位址線F0-F3來選出細胞C32-C47中的一個。LUT 606連結到寫入資料線WDF,寫入致能 線WEF,及讀取資料線RDF »線F0-F3、WEF、WDF及RDF 集合起來作爲細胞C32-C47的讀/寫埠。 切換裝置S0-S15連結於LUTs 202與204之間,其中顯示了 切換裝置SO、S14及S15。類似的,切換裝置S16-S31連結 於LUTs 204與606之間,其中顯示了切換裝置S16、S30及 S31。一對的切換裝置連結於一細胞C0-C15與一細胞C16-C31以及一細胞C32-C47之間。例如,切換裝置S0連結在細 胞C0與C16之間,而切換裝置S16則連結在細胞C16與C32 之間。切換裝置S0-S31通常連接到配置RAM細胞206。當 設定切換裝置S0-S31爲解除連結時,LUTs 202、204與606 獨立的動作,像一分開的16x1單埠RAMs。相反的,當設 定切換裝置S0-S3 1爲連結時,LUTs 202、204與606則轉換 成一 16x1的三埠RAM »在三埠模式中,細胞C0-C15以一對 一的關係做位元層次的連結到細胞C16-C3 1及細胞C32-C47 。也就是,細胞CO、C16與C32經切換裝置S0與S16形成第 _ -16- 張尺度顧中關家^"準(CNS )以麟· ( 210X297公釐) ~~ (請先Μ讀^-面之;1-意事卜;填寫本1 -裝· -訂 線 五、發明説明(u ) A7 B7 經濟部中央樣準局員工消費合作社印製 一連結組,而細胞C15 ' C31與C47經切換裝置S15與S31形 成第十六連結組。再者,細胞C0_C15、(:16_(:31與(:32_以7 可經由與LUTs 2〇2 ' 204及6〇6結合的三個讀/寫埠加以存取 〇 經本發明的敎授,可以相當少的額外硬體將FpGA升級 來提供多埠RAM *例如,切換裝置114所佔的矽晶面積遠 小於額外的解碼器。因此,本發明提供在FpGA中多埠 RAM之一高效率實行方法。 本發明的其他變化對熟習本技藝的人來說是相當明顯的 。例如,以LUT (LUTs)實現的rAM細胞可以用不同大小的 陣列來配置。雖然顯示的配置RAM細胞2〇6是一分開的細 胞’來接收配置位元流的特定位元,可以理解的,FpGA 中其他的配置RAM細胞可以經解碼後,提供做爲切換裝置 114的連結/解除連結指令。除LUT外,其他的可程式元件 也可以用來實現RAM。再者,在一已知FPga中,部分但 非全部的PFUs可以包含切換裝置114。如果依序的使用了 第一與第二配置位元流,—pFU可以先實現2n+1個單埠 RAM細胞,再來實現2N個雙埠RAM細胞。相類似的,一 配置位兀流可對基本上相同的第一與第二pFU加以程式, 如此第一 PFU實現2N+1個單埠RAM細胞,而第二pFU實現 2N個雙埠RAM細胞。送到第—及第二配置位元流部 分可以只有一個位元値不同。利用FPGA來製造出—多埠 RAM的方法可以從前文中明顯的了解。 在描述了本發明之較佳具體實例後’本技藝之尋常技藝 (請先閱讀背面之注意事^ y填寫本頁)
J1 1 J-J -裝. 線
A7 B7 五、發明説明(15 ) 人士很明顯的可以合併使用此想法之其他具體實例。因此 ,本發明不應讓揭示的具體實例限制住,而應只限制在後 附的申請專利範圍的範疇與精神内。 — 訂 「< 線 (請先閱讀背面之注意事填寫本頁) 經濟部中央標準局員工消費合作社印製 -18- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐)
Claims (1)
- C8 -—________D8 六、申請專利範圍 r -種積體電路,其包含場可程式閘陣列(fpga),其中含 有可程式單元(PFU),其包含: 產生不同功能的第-與第二可程式元件,分別包含第 —與第二RAM細胞(102 , 108)來回應於配置位元流;及 -可程式切換裝置⑴4)’其喊於@&置位元流來提供 Ram細胞間的位几層次連結,如此,幾個ram細胞集合 起來提供一多埠的RAM細胞。 2. 根據申請專利範圍第i項之積體電路,其中第一與第二 可程式元件包含在一或多個查看表(LUTs)(2〇2,2〇4)中 〇 3. 根據申請專利範園第1項之積體電路,其中第一與第二 可程式元件包含在一個PFU中。 4·根據申請專利範圍第1項之積體電路,其中第一與第二 可程式元件包含在相鄰的PFU中。 5. 根據申請專利範圍第1項之積體電路,其中第一與第二 RAM細胞分別連結到第一與第二讀/寫埠(1〇4,丨1〇),藉 之提供多埠RAM細胞最少有兩個讀/寫埠。 6. —種程式與操作一包含數個可程式功能單元(pFUs)及一 可程式連結網路之場可程式閘陣列(FP(jA)之方法,包含 的步驟有: 送出一配置位元流到FPGA來指示第一;PFU動作像第一 組RAM細胞(1〇2)的連結到第一讀/寫埠(104),及像第二 组RAM細胞(1〇8)的連結到第二讀/寫埠(110),及來指示 第一 PFU中的切換裝置(114)來提供RAM細胞對之間位元 ___-19- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) ' 請先閲讀t·面之注意事填寫本頁) -裝· 訂 線_ 經濟部中央標準局員工消費合作社印製 經濟部中央標準局員工消費合作杜印製 A8 B8 C8 D8六、申請專利範圍 層次的連結,如此每個RAM細胞是一連結對之一份子, 每個連結對包含在第一組RAM細胞中的一個RAM細胞以 及在第二組RAM細胞中的一個RAM細胞,其中每個連結 細胞對提供一可被第一與第二讀/窝埠同時存取的雙槔 RAM細胞; 經第一讀/寫埠窝入資料到最少一個雙埠RAM細胞;及 經第二讀/寫埠從最少一個雙埠RAM細胞處讀取資料。 7. 根據申請專利範圍第6項之方法,其包含: 經第一讀/寫埠從最少一個雙埠RAM細胞處讀取資料; 及 經第二讀/寫埠寫入資料到最少一個雙埠RAM細胞。 8. 根據申請專利範圍第7項之方法,其包含·· 經第一讀/寫埠寫入資料到最少一個雙埠RAM細胞;及 同時 經第二讀/寫埠從最少一個雙埠RAM細胞處讀取資料。 (請先閱讀背面之注意事項再填寫本頁) 裝. 訂 線 -20- 本纸張尺度適用中國國家標準(CNS ) MC格(210X297公釐)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/507,957 US5559450A (en) | 1995-07-27 | 1995-07-27 | Field programmable gate array with multi-port RAM |
Publications (1)
Publication Number | Publication Date |
---|---|
TW298651B true TW298651B (zh) | 1997-02-21 |
Family
ID=24020792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW085107452A TW298651B (zh) | 1995-07-27 | 1996-06-21 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5559450A (zh) |
EP (1) | EP0756383B1 (zh) |
JP (1) | JPH0983347A (zh) |
DE (1) | DE69633370T2 (zh) |
TW (1) | TW298651B (zh) |
Families Citing this family (130)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5566123A (en) * | 1995-02-10 | 1996-10-15 | Xilinx, Inc. | Synchronous dual port ram |
US5943242A (en) * | 1995-11-17 | 1999-08-24 | Pact Gmbh | Dynamically reconfigurable data processing system |
US5804986A (en) * | 1995-12-29 | 1998-09-08 | Cypress Semiconductor Corp. | Memory in a programmable logic device |
US7266725B2 (en) | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
US5744980A (en) * | 1996-02-16 | 1998-04-28 | Actel Corporation | Flexible, high-performance static RAM architecture for field-programmable gate arrays |
US5623217A (en) * | 1996-02-26 | 1997-04-22 | Lucent Technologies Inc. | Field programmable gate array with write-port enabled memory |
US5726584A (en) * | 1996-03-18 | 1998-03-10 | Xilinx, Inc. | Virtual high density programmable integrated circuit having addressable shared memory cells |
US5977791A (en) | 1996-04-15 | 1999-11-02 | Altera Corporation | Embedded memory block with FIFO mode for programmable logic device |
US5894565A (en) * | 1996-05-20 | 1999-04-13 | Atmel Corporation | Field programmable gate array with distributed RAM and increased cell utilization |
US5715197A (en) | 1996-07-29 | 1998-02-03 | Xilinx, Inc. | Multiport RAM with programmable data port configuration |
US5933023A (en) * | 1996-09-03 | 1999-08-03 | Xilinx, Inc. | FPGA architecture having RAM blocks with programmable word length and width and dedicated address and data lines |
US5920882A (en) * | 1996-11-21 | 1999-07-06 | Tsi Telsys Inc. | Programmable circuit assembly and methods for high bandwidth data processing |
DE19651075A1 (de) | 1996-12-09 | 1998-06-10 | Pact Inf Tech Gmbh | Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen |
US6338106B1 (en) | 1996-12-20 | 2002-01-08 | Pact Gmbh | I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures |
DE19654593A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit |
DE19654595A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen |
EP1329816B1 (de) | 1996-12-27 | 2011-06-22 | Richter, Thomas | Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.) |
DE19654846A1 (de) | 1996-12-27 | 1998-07-09 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.) |
US5821776A (en) * | 1997-01-31 | 1998-10-13 | Actel Corporation | Field programmable gate array with mask programmed analog function circuits |
US5959466A (en) | 1997-01-31 | 1999-09-28 | Actel Corporation | Field programmable gate array with mask programmed input and output buffers |
DE19704044A1 (de) * | 1997-02-04 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine |
DE19704728A1 (de) * | 1997-02-08 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines |
US6542998B1 (en) | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
DE19704742A1 (de) | 1997-02-11 | 1998-09-24 | Pact Inf Tech Gmbh | Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand |
US6150837A (en) | 1997-02-28 | 2000-11-21 | Actel Corporation | Enhanced field programmable gate array |
US6020759A (en) * | 1997-03-21 | 2000-02-01 | Altera Corporation | Programmable logic array device with random access memory configurable as product terms |
US6160419A (en) * | 1997-11-03 | 2000-12-12 | Altera Corporation | Programmable logic architecture incorporating a content addressable embedded array block |
US5905385A (en) * | 1997-04-01 | 1999-05-18 | Advanced Micro Devices, Inc. | Memory bits used to couple look up table inputs to facilitate increased availability to routing resources particularly for variable sized look up tables for a field programmable gate array (FPGA) |
US6011744A (en) * | 1997-07-16 | 2000-01-04 | Altera Corporation | Programmable logic device with multi-port memory |
US8686549B2 (en) | 2001-09-03 | 2014-04-01 | Martin Vorbach | Reconfigurable elements |
US6052327A (en) * | 1997-10-14 | 2000-04-18 | Altera Corporation | Dual-port programmable logic device variable depth and width memory array |
US6191998B1 (en) | 1997-10-16 | 2001-02-20 | Altera Corporation | Programmable logic device memory array circuit having combinable single-port memory arrays |
US6288970B1 (en) | 1997-10-16 | 2001-09-11 | Altera Corporation | Programmable logic device memory array circuit having combinable single-port memory arrays |
US6127843A (en) * | 1997-12-22 | 2000-10-03 | Vantis Corporation | Dual port SRAM memory for run time use in FPGA integrated circuits |
DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
DE19807872A1 (de) | 1998-02-25 | 1999-08-26 | Pact Inf Tech Gmbh | Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl. |
US6262933B1 (en) | 1999-01-29 | 2001-07-17 | Altera Corporation | High speed programmable address decoder |
JP3616518B2 (ja) | 1999-02-10 | 2005-02-02 | 日本電気株式会社 | プログラマブルデバイス |
EP1228440B1 (de) | 1999-06-10 | 2017-04-05 | PACT XPP Technologies AG | Sequenz-partitionierung auf zellstrukturen |
GB2351824B (en) | 1999-07-02 | 2004-03-31 | Altera Corp | Embedded memory blocks for programmable logic |
US6400635B1 (en) | 2000-03-15 | 2002-06-04 | Altera Corporation | Memory circuitry for programmable logic integrated circuit devices |
US6373779B1 (en) * | 2000-05-19 | 2002-04-16 | Xilinx, Inc. | Block RAM having multiple configurable write modes for use in a field programmable gate array |
ATE476700T1 (de) | 2000-06-13 | 2010-08-15 | Richter Thomas | Pipeline ct-protokolle und -kommunikation |
US7346644B1 (en) | 2000-09-18 | 2008-03-18 | Altera Corporation | Devices and methods with programmable logic and digital signal processing regions |
US7119576B1 (en) | 2000-09-18 | 2006-10-10 | Altera Corporation | Devices and methods with programmable logic and digital signal processing regions |
US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
US6990555B2 (en) * | 2001-01-09 | 2006-01-24 | Pact Xpp Technologies Ag | Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.) |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
WO2005045692A2 (en) | 2003-08-28 | 2005-05-19 | Pact Xpp Technologies Ag | Data processing device and method |
US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
US6720796B1 (en) | 2001-05-06 | 2004-04-13 | Altera Corporation | Multiple size memories in a programmable logic device |
JP2004533691A (ja) | 2001-06-20 | 2004-11-04 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データを処理するための方法 |
US7996827B2 (en) | 2001-08-16 | 2011-08-09 | Martin Vorbach | Method for the translation of programs for reconfigurable architectures |
US7434191B2 (en) | 2001-09-03 | 2008-10-07 | Pact Xpp Technologies Ag | Router |
US8686475B2 (en) | 2001-09-19 | 2014-04-01 | Pact Xpp Technologies Ag | Reconfigurable elements |
WO2003060747A2 (de) | 2002-01-19 | 2003-07-24 | Pact Xpp Technologies Ag | Reconfigurierbarer prozessor |
AU2003214003A1 (en) | 2002-02-18 | 2003-09-09 | Pact Xpp Technologies Ag | Bus systems and method for reconfiguration |
US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
US20030229738A1 (en) * | 2002-06-05 | 2003-12-11 | Dactron | Controller interface |
US7657861B2 (en) | 2002-08-07 | 2010-02-02 | Pact Xpp Technologies Ag | Method and device for processing data |
AU2003286131A1 (en) | 2002-08-07 | 2004-03-19 | Pact Xpp Technologies Ag | Method and device for processing data |
US6948030B1 (en) * | 2002-09-04 | 2005-09-20 | Cypress Semiconductor Corporation | FIFO memory system and method |
JP4388895B2 (ja) | 2002-09-06 | 2009-12-24 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | リコンフィギュアラブルなシーケンサ構造 |
KR100475093B1 (ko) * | 2002-09-13 | 2005-03-10 | 삼성전자주식회사 | 둘 이상의 입력포트를 구비하는 집적 회로 장치 및 시스템 |
JP3958232B2 (ja) * | 2003-03-05 | 2007-08-15 | 富士通株式会社 | 動作継続中にデータ書き換え可能な論理装置 |
US7350026B2 (en) * | 2004-12-03 | 2008-03-25 | Thales | Memory based cross compare for cross checked systems |
US8620980B1 (en) | 2005-09-27 | 2013-12-31 | Altera Corporation | Programmable device with specialized multiplier blocks |
US7463056B1 (en) | 2005-12-12 | 2008-12-09 | Xilinx, Inc. | Writeable shift register lookup table in FPGA with SRAM memory cells in lookup table reprogrammed by writing after initial configuration |
US7392032B2 (en) * | 2005-12-30 | 2008-06-24 | L3 Communications Corporation | Modular ASIC with crosspoint switch |
EP1974265A1 (de) | 2006-01-18 | 2008-10-01 | PACT XPP Technologies AG | Hardwaredefinitionsverfahren |
US8266198B2 (en) | 2006-02-09 | 2012-09-11 | Altera Corporation | Specialized processing block for programmable logic device |
US8301681B1 (en) | 2006-02-09 | 2012-10-30 | Altera Corporation | Specialized processing block for programmable logic device |
US8041759B1 (en) | 2006-02-09 | 2011-10-18 | Altera Corporation | Specialized processing block for programmable logic device |
US8266199B2 (en) | 2006-02-09 | 2012-09-11 | Altera Corporation | Specialized processing block for programmable logic device |
US7836117B1 (en) | 2006-04-07 | 2010-11-16 | Altera Corporation | Specialized processing block for programmable logic device |
US7822799B1 (en) | 2006-06-26 | 2010-10-26 | Altera Corporation | Adder-rounder circuitry for specialized processing block in programmable logic device |
US8386550B1 (en) | 2006-09-20 | 2013-02-26 | Altera Corporation | Method for configuring a finite impulse response filter in a programmable logic device |
US8386553B1 (en) | 2006-12-05 | 2013-02-26 | Altera Corporation | Large multiplier for programmable logic device |
US7930336B2 (en) | 2006-12-05 | 2011-04-19 | Altera Corporation | Large multiplier for programmable logic device |
US7814137B1 (en) | 2007-01-09 | 2010-10-12 | Altera Corporation | Combined interpolation and decimation filter for programmable logic device |
US7865541B1 (en) | 2007-01-22 | 2011-01-04 | Altera Corporation | Configuring floating point operations in a programmable logic device |
US8650231B1 (en) | 2007-01-22 | 2014-02-11 | Altera Corporation | Configuring floating point operations in a programmable device |
US8645450B1 (en) | 2007-03-02 | 2014-02-04 | Altera Corporation | Multiplier-accumulator circuitry and methods |
US7949699B1 (en) | 2007-08-30 | 2011-05-24 | Altera Corporation | Implementation of decimation filter in integrated circuit device using ram-based data storage |
US8959137B1 (en) | 2008-02-20 | 2015-02-17 | Altera Corporation | Implementing large multipliers in a programmable integrated circuit device |
US8244789B1 (en) | 2008-03-14 | 2012-08-14 | Altera Corporation | Normalization of floating point operations in a programmable integrated circuit device |
US8626815B1 (en) | 2008-07-14 | 2014-01-07 | Altera Corporation | Configuring a programmable integrated circuit device to perform matrix multiplication |
US8255448B1 (en) | 2008-10-02 | 2012-08-28 | Altera Corporation | Implementing division in a programmable integrated circuit device |
US8307023B1 (en) | 2008-10-10 | 2012-11-06 | Altera Corporation | DSP block for implementing large multiplier on a programmable integrated circuit device |
US8706790B1 (en) | 2009-03-03 | 2014-04-22 | Altera Corporation | Implementing mixed-precision floating-point operations in a programmable integrated circuit device |
US8645449B1 (en) | 2009-03-03 | 2014-02-04 | Altera Corporation | Combined floating point adder and subtractor |
US8886696B1 (en) | 2009-03-03 | 2014-11-11 | Altera Corporation | Digital signal processing circuitry with redundancy and ability to support larger multipliers |
US8549055B2 (en) | 2009-03-03 | 2013-10-01 | Altera Corporation | Modular digital signal processing circuitry with optionally usable, dedicated connections between modules of the circuitry |
US8805916B2 (en) | 2009-03-03 | 2014-08-12 | Altera Corporation | Digital signal processing circuitry with redundancy and bidirectional data paths |
US8468192B1 (en) | 2009-03-03 | 2013-06-18 | Altera Corporation | Implementing multipliers in a programmable integrated circuit device |
US8650236B1 (en) | 2009-08-04 | 2014-02-11 | Altera Corporation | High-rate interpolation or decimation filter in integrated circuit device |
US8396914B1 (en) | 2009-09-11 | 2013-03-12 | Altera Corporation | Matrix decomposition in an integrated circuit device |
US8412756B1 (en) | 2009-09-11 | 2013-04-02 | Altera Corporation | Multi-operand floating point operations in a programmable integrated circuit device |
US7948267B1 (en) | 2010-02-09 | 2011-05-24 | Altera Corporation | Efficient rounding circuits and methods in configurable integrated circuit devices |
US8539016B1 (en) | 2010-02-09 | 2013-09-17 | Altera Corporation | QR decomposition in an integrated circuit device |
US8601044B2 (en) | 2010-03-02 | 2013-12-03 | Altera Corporation | Discrete Fourier Transform in an integrated circuit device |
US8458243B1 (en) | 2010-03-03 | 2013-06-04 | Altera Corporation | Digital signal processing circuit blocks with support for systolic finite-impulse-response digital filtering |
US8484265B1 (en) | 2010-03-04 | 2013-07-09 | Altera Corporation | Angular range reduction in an integrated circuit device |
US8510354B1 (en) | 2010-03-12 | 2013-08-13 | Altera Corporation | Calculation of trigonometric functions in an integrated circuit device |
US8539014B2 (en) | 2010-03-25 | 2013-09-17 | Altera Corporation | Solving linear matrices in an integrated circuit device |
US8589463B2 (en) | 2010-06-25 | 2013-11-19 | Altera Corporation | Calculation of trigonometric functions in an integrated circuit device |
US8862650B2 (en) | 2010-06-25 | 2014-10-14 | Altera Corporation | Calculation of trigonometric functions in an integrated circuit device |
US8577951B1 (en) | 2010-08-19 | 2013-11-05 | Altera Corporation | Matrix operations in an integrated circuit device |
US8645451B2 (en) | 2011-03-10 | 2014-02-04 | Altera Corporation | Double-clocked specialized processing block in an integrated circuit device |
US9600278B1 (en) | 2011-05-09 | 2017-03-21 | Altera Corporation | Programmable device using fixed and configurable logic to implement recursive trees |
US8812576B1 (en) | 2011-09-12 | 2014-08-19 | Altera Corporation | QR decomposition in an integrated circuit device |
US8949298B1 (en) | 2011-09-16 | 2015-02-03 | Altera Corporation | Computing floating-point polynomials in an integrated circuit device |
US9053045B1 (en) | 2011-09-16 | 2015-06-09 | Altera Corporation | Computing floating-point polynomials in an integrated circuit device |
CN102436427B (zh) * | 2011-11-07 | 2014-10-08 | 华为技术有限公司 | 一种数据读写方法和存储设备 |
US8762443B1 (en) | 2011-11-15 | 2014-06-24 | Altera Corporation | Matrix operations in an integrated circuit device |
US8543634B1 (en) | 2012-03-30 | 2013-09-24 | Altera Corporation | Specialized processing block for programmable integrated circuit device |
US9098332B1 (en) | 2012-06-01 | 2015-08-04 | Altera Corporation | Specialized processing block with fixed- and floating-point structures |
US8996600B1 (en) | 2012-08-03 | 2015-03-31 | Altera Corporation | Specialized processing block for implementing floating-point multiplier with subnormal operation support |
JP6564186B2 (ja) * | 2012-10-28 | 2019-08-21 | 太陽誘電株式会社 | 再構成可能な半導体装置 |
US9207909B1 (en) | 2012-11-26 | 2015-12-08 | Altera Corporation | Polynomial calculations optimized for programmable integrated circuit device structures |
US8923089B2 (en) * | 2012-12-21 | 2014-12-30 | Lsi Corporation | Single-port read multiple-port write storage device using single-port memory cells |
US9189200B1 (en) | 2013-03-14 | 2015-11-17 | Altera Corporation | Multiple-precision processing block in a programmable integrated circuit device |
US9348795B1 (en) | 2013-07-03 | 2016-05-24 | Altera Corporation | Programmable device using fixed and configurable logic to implement floating-point rounding |
US9379687B1 (en) | 2014-01-14 | 2016-06-28 | Altera Corporation | Pipelined systolic finite impulse response filter |
US9305618B2 (en) | 2014-01-30 | 2016-04-05 | International Business Machines Corporation | Implementing simultaneous read and write operations utilizing dual port DRAM |
US9374094B1 (en) | 2014-08-27 | 2016-06-21 | Altera Corporation | 3D field programmable gate array system with reset manufacture and method of manufacture thereof |
US9684488B2 (en) | 2015-03-26 | 2017-06-20 | Altera Corporation | Combined adder and pre-adder for high-radix multiplier circuit |
US10168938B2 (en) * | 2016-11-25 | 2019-01-01 | Hughes Network Systems, Llc | LDPC decoder design to significantly increase throughput in ASIC by utilizing pseudo two port memory structure |
US10942706B2 (en) | 2017-05-05 | 2021-03-09 | Intel Corporation | Implementation of floating-point trigonometric functions in an integrated circuit device |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5960793A (ja) * | 1982-09-30 | 1984-04-06 | Fujitsu Ltd | 半導体メモリ |
US4870302A (en) * | 1984-03-12 | 1989-09-26 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
USRE34363E (en) * | 1984-03-12 | 1993-08-31 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
US4642487A (en) * | 1984-09-26 | 1987-02-10 | Xilinx, Inc. | Special interconnect for configurable logic array |
US5343406A (en) * | 1989-07-28 | 1994-08-30 | Xilinx, Inc. | Distributed memory architecture for a configurable logic array and method for using distributed memory |
US5128559A (en) * | 1989-09-29 | 1992-07-07 | Sgs-Thomson Microelectronics, Inc. | Logic block for programmable logic devices |
US5255221A (en) * | 1991-04-02 | 1993-10-19 | At&T Bell Laboratories | Fully configurable versatile field programmable function element |
US5282174A (en) * | 1992-01-31 | 1994-01-25 | At&T Bell Laboratories | Dual-port memory with read and read/write ports |
US5384497A (en) * | 1992-11-04 | 1995-01-24 | At&T Corp. | Low-skew signal routing in a programmable array |
US5386156A (en) * | 1993-08-27 | 1995-01-31 | At&T Corp. | Programmable function unit with programmable fast ripple logic |
US5442306A (en) * | 1994-09-09 | 1995-08-15 | At&T Corp. | Field programmable gate array using look-up tables, multiplexers and decoders |
-
1995
- 1995-07-27 US US08/507,957 patent/US5559450A/en not_active Expired - Lifetime
-
1996
- 1996-06-21 TW TW085107452A patent/TW298651B/zh active
- 1996-07-17 EP EP96305238A patent/EP0756383B1/en not_active Expired - Lifetime
- 1996-07-17 DE DE69633370T patent/DE69633370T2/de not_active Expired - Lifetime
- 1996-07-23 JP JP8192623A patent/JPH0983347A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
US5559450A (en) | 1996-09-24 |
EP0756383A2 (en) | 1997-01-29 |
EP0756383B1 (en) | 2004-09-15 |
DE69633370D1 (de) | 2004-10-21 |
EP0756383A3 (en) | 2000-11-15 |
JPH0983347A (ja) | 1997-03-28 |
DE69633370T2 (de) | 2005-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW298651B (zh) | ||
JP2642671B2 (ja) | ディジタルクロスバースイッチ | |
US6038627A (en) | SRAM bus architecture and interconnect to an FPGA | |
US6242946B1 (en) | Embedded memory block with FIFO mode for programmable logic device | |
US5315178A (en) | IC which can be used as a programmable logic cell array or as a register file | |
EP0461798B1 (en) | Configurable interconnect structure | |
US6853215B1 (en) | Programmable I/O element circuit for high speed logic devices | |
US7088134B1 (en) | Programmable logic device with flexible memory allocation and routing | |
JP3616518B2 (ja) | プログラマブルデバイス | |
JPH02259866A (ja) | マルチプロセッサシステムのメモリ装置 | |
US7269089B1 (en) | Divisible true dual port memory system supporting simple dual port memory subsystems | |
US6249143B1 (en) | Programmable logic array integrated circuit with distributed random access memory array | |
EP1488522B1 (en) | Configuration memory implementation for lut-based reconfigurable logic architectures | |
Konishi et al. | PCA-1: A fully asynchronous, self-reconfigurable LSI | |
US6483344B2 (en) | Interconnect circuitry for implementing logic functions in a field programmable gate array and method of operation | |
US7444456B2 (en) | SRAM bus architecture and interconnect to an FPGA | |
US7460431B1 (en) | Implementation of double data rate embedded memory in programmable devices | |
US5475644A (en) | Crosspoint memory | |
US8116334B1 (en) | Dataflow FIFO communication buffer using highly-multiported memories | |
JP2020530700A (ja) | 再構成可能回路のためのルーティングネットワーク | |
US5917337A (en) | Programmable I/O cell with data conversion capability | |
JP2000036738A (ja) | 書き換え可能な論理回路およびラッチ回路 | |
JPS6149271A (ja) | 半導体装置 | |
JPH03214492A (ja) | マルチポートメモリ |