新四季網

具有邏輯運算和數據存儲功能的可編程功能產生單元的製作方法

2024-02-14 00:43:15

具有邏輯運算和數據存儲功能的可編程功能產生單元的製作方法
【專利摘要】本發明公開了一種FPGA電路中的k輸入可編程功能產生單元。該功能產生單元由寫操作控制模塊、MC陣列、讀操作控制模塊構成。其中,寫操作控制模塊在細粒度RAM寫操作時實現地址解碼、寫使能及時鐘同步等功能。MC陣列中採用了一種能夠存儲不同來源數據的MC結構,在功能產生單元實現用戶邏輯運算功能或細粒度ROM功能時,MC中的存儲數據來自FPGA的配置控制器;在功能產生單元實現細粒度RAM功能時,MC中的存儲數據來自用戶電路。讀操作控制模塊在細粒度RAM或ROM的讀操作時實現對MC陣列中所存儲數據的讀取操作,在用戶邏輯運算時與MC陣列配合實現查找表(LUT)的功能。
【專利說明】具有邏輯運算和數據存儲功能的可編程功能產生單元
【技術領域】
[0001]本發明涉及數字集成電路中現場可編程門陣列(FPGA)設計【技術領域】,具體涉及一種具有邏輯運算和數據存儲功能的可編程功能產生單元。
【背景技術】
[0002]FPGA是一種通用的邏輯電路,具有靈活性高、開發風險低的優點,已廣泛應用於工業控制、航空航天、通信、汽車電子等領域,並且佔據著越來越多的市場份額。目前主流的FPGA產品均採用SRAM來對用戶設計進行編程。FPGA中的最基本單元是基本邏輯單元(Basic Logic Element,BLE),它能夠獨立完成一定的組合、時序邏輯功能,為數字系統設計提供最基本的邏輯運算操作和數據存儲功能。BLE通常由功能產生單元、寄存器以及其他一些邏輯電路構成。功能產生單元是BLE中最核心的單元,可以通過配置來執行組合邏輯、細粒度存儲、算術運算等功能。
[0003]隨著FPGA的應用領域逐步擴大,對片內存儲資源的需要越來越大,形式也越來越靈活。根據不同的應用需求,FPGA中除了需要不同容量的粗粒度存儲器塊外,還需要能提供更加靈活的細粒度存儲單元。
[0004]目前主流的商用FPGA器件,主要包括Altera公司的Stratix系列晶片(StratixII到Stratix V)和Xilinx公司的Virtex系列晶片(Virtex-2到Virtex-7)。現有晶片中所採用的功能產生單元,有些基於查找表(Look Up Table,LUT)結構,僅能實現邏輯運算功能而無法實現細粒度存儲功能;有些需要幾個功能產生單元配合,再利用一些額外的電路,才能夠實現細粒度存儲功能,邏輯資源利用率較低,且配置不夠靈活;有些需要使用數據解碼模塊作為控制模塊,電路結構較為複雜。

【發明內容】

[0005]針對這些問題,本發明提出了一種既可實現用戶邏輯運算功能,又可實現用戶細粒度RAM讀/寫功能以及細粒度ROM讀/寫功能的k輸入功能產生單元。
[0006]本發明公開了一種具有邏輯運算和數據存儲功能的可編程功能產生單元,該功能產生單元可被配置成實現用戶邏輯運算功能、細粒度RAM功能或細粒度ROM功能的用戶電路,其包括:
[0007]寫操作控制模塊:其在用戶電路實現細粒度RAM寫操作時,控制MC陣列存儲所述RAM中的用戶數據;
[0008]MC陣列:其在用戶電路實現用戶邏輯運算以及細粒度ROM功能時,用於存儲配置數據;在用戶電路實現細粒度RAM寫操作時,用於存儲所述RAM中的用戶數據;
[0009]讀操作控制模塊:其用於讀出MC陣列中存儲的數據。
[0010]本發明提出的功能產生單元,既能存儲來自FPGA配置控制器的配置數據以實現用戶邏輯運算操作,又能存儲來自用戶電路的數據並實現對其的讀/寫操作。提高了可編程晶片的資源利用效率。[0011]本發明提出的k輸入功能產生單元,由於結構規整,因此能夠方便快速的設計出k取不同值時對應的功能產生單元,減少了由於輸入個數改變而帶來的額外設計開銷,具有良好的可擴展性。
【專利附圖】

【附圖說明】
[0012]圖1是本發明中存儲單元(MC)的結構框圖;
[0013]圖2是本發明中功能產生單元的結構框圖;
[0014]圖3是本發明中寫操作控制模塊的結構框圖;
[0015]圖4是本發明中時鐘同步單元的時序關係圖。
【具體實施方式】
[0016]為使本發明的目的、技術方案和優點更加清楚明白,以下結合具體實施例,並參照附圖,對本發明進一步詳細說明。
[0017]本發明提出了一種現場可編程門陣列的基本邏輯單元中的功能產生單元,其包括:寫操作控制模塊、存儲單元(MC)陣列和讀操作控制模塊。
[0018]圖1示出了本發明中存儲單元(MC)的結構框圖。MC陣列包括多個MC,如圖1所示,每個MC包括:4個NMOS管、兩個反相器。其中,4個NMOS管為Ml、M2、M3和M4,兩個反相器為INVl和INV2。配置地址輸入埠 CADDR接NMOS管Ml和M3的柵極,用戶地址輸入埠 ADDR接NMOS管M2和M4的 柵極,配置數據輸入埠 CDATA和CDATA分別接NMOS管Ml和M3的源極,用戶數據輸入埠 DATA和DATA分別接NMOS管M2和M4的源極,反相器INVl的輸出埠 Q接反相器INV2的輸入埠,反相器INV2的輸出埠0接反相器INVl的輸入埠,NMOS管Ml和M2的漏極均連接在^端,NMOS管M3和M4的漏極均連接在Q端。此MC結構能夠實現不同來源數據的存儲,具體說明如下:
[0019]I)當功能產生單元實現用戶邏輯運算功能或細粒度ROM功能時,MC存儲來自FPGA配置控制器的配置數據,此時用戶地址輸入埠 ADDR置為0,配置地址輸入CADDR置為1,來自FPGA配置控制器的配置數據CDATA存儲於MC的輸出埠 Q中;
[0020]2)當功能產生單元實現細粒度RAM功能時,MC接收來自用戶電路的用戶存儲數據,此時配置地址輸入埠 CADDR置為0,用戶地址輸入埠 ADDR置為I,將來自用戶電路的用戶存儲數據DATA存儲於MC的輸出埠 Q中。
[0021]圖2示出了 k位輸入的功能產生單元的結構框圖。如圖2所示,在該功能產生單元中,模式控制信號MODE、配置數據CDATA[2k-l: O]信號和CDATA[2k-l:0]信號均來自於FPGA的配置控制器,且MODE要先於CDATA[2k-l: O]和CDATA[2k-丨:0]信號完成配置;WL信
號來自於FPGA配置控制器的字線選擇控制信號。數據DATA信號、存儲器寫使能WE信號、寫時鐘CLK信號、k位寫地址信號WR[k-l:0]及k位讀地址信號RD[k-l:0]來自於用戶電路。
[0022]寫操作控制模塊接收存儲器寫使能信號WE、寫時鐘CLK、k位寫地址信號WR[k-l:0]以及模式控制信號MODE作為輸入;其輸出的2k位地址信號ADDR[2k-l:0]分別連接到MC陣列中2k個MC模塊的用戶地址輸入埠 ADDR。MC陣列中2k個MC模塊的配置數據輸入埠 CDATA分別連接2k位配置數據CDATA[2k-l:O];而FPGA配置控制器中與此2k位配置數據CDATA [2k-l: O]對應的2k位取反配置數據CDATA丨2k-1:0]則分別連接MC陣列中2k個MC模塊的CDATA輸入端;模式控制信號MODE經反相器INVl取反後,與字線選擇控制信號WL —起,分別連接與門ANDl的兩個輸入端,ANDl的輸出CADDR連接MC陣列中2k個MC模塊的配置地址輸入端CADDR ;來自用戶的存儲數據DATA連接MC陣列中2k個MC模塊的用戶數據輸入端DATA ;而DATA信號經反相器INV2取反後的輸出DATA則連接到MC陣列中2k個MC模塊的DATA輸入端。
[0023]讀操作控制模塊接收來自MC陣列中2k個MC模塊的2k位輸出信號Q[2k_l:0]以及來自用戶電路的k位信號RD [k-Ι: O]作為輸入,其輸出信號RO即為整個功能產生單元的輸出。
[0024]圖3示出了本發明中寫操作控制模塊的結構框圖。寫操作控制模塊在細粒度RAM寫操作時實現地址解碼、寫使能及時鐘同步等功能。如圖3所示,該寫操作控制模塊由寫地址解碼單元、時鐘同步單元以及2k個二輸入與門構成。其中,2k個二輸入與門為AND[2k-l:0]。寫地址解碼單元接收k位寫地址信號WR[k-l:0]作為輸入,輸出為經解碼後的2k位地址信號ADDR_I [2k-l: O]。針對每一組地址輸入WR[k_l: O],輸出的ADDR_I [2k_l: O]信號中僅有一位為1,其餘2k-l位均為O。時鐘同步單元接收存儲器寫使能信號WE、寫時鐘CLK以及模式控制信號MODE作為輸入,其輸出信號WE_I分別與ADDR_I [2k_l:O]連接到與門AND[2k-l:0]的兩個輸入端,輸出2k位地址信號ADDR[2k-l:0]。時鐘同步單元各信號間的時序關係如圖4所示。當MODE信號為O時,時鐘同步單元的輸出WE_I為0,則ADDR[2k-l:0]均為O;當MODE信號為I時,時鐘同步單元輸出經CLK信號採樣後的寫使能信號WE_I,經過與門AND [2k-l: O],最終輸出經地址解碼、寫使能及時鐘同步後的2k位地址信號 ADDR[2k-l:0]。
[0025]MC陣列包含2k個MC,能夠根據實際的應用需求,對來自FPGA配置控制器的配置數據或來自用戶電路的用戶存儲數據進行存儲。當模式控制信號MODE為O時,MC陣列對來自FPGA配置控制器的配置數據進行存儲。此時2k個MC的ADDR端均為0,在字線選擇控制信號WL為I時,2k個MC的CADDR端均為1,來自FPGA配置控制器的2k位配置數據
CDATA[2k-l:0]及其對應的2k位取反配置數據CDATA[2k-l:0:I分別存儲至IJ 2k個MC中,通過MC陣列的輸出端Q[2k-1:0]輸出;當模式控制信號MODE為I時,MC陣列對來自用戶電路的存儲數據進行存儲。2k個MC的CADDR端均為0,其ADDR端分別接寫操作控制模塊的2k位輸出ADDR[2k-l:0],將用戶的存儲數據DATA存儲到ADDR輸入為I的那一個MC中,通過輸出端Q[2k-1:0]輸出。
[0026]讀操作控制模塊實現對MC陣列中所存儲數據的異步讀操作。其接收來自MC陣列中存儲的2k位數據Q[2k-1:0]以及來自用戶電路的k位信號RD[k-l:0]。其中,輸入信號RD[k-l:0]作為讀操作的地址信號,其信號來源由FPGA支持軟體根據功能產生單元需要實現的具體功能來確定。當用戶電路實現用戶邏輯運算功能時,RD[k-l:0]來自於用戶邏輯信號;當該模塊實現細粒度RAM或ROM的讀操作時,RD [k-1:0]來自於用戶電路的存儲器讀地址信號。讀操作控制模塊根據RD[k-1:0]輸入的讀地址,選擇Q[2k-1:0]中的對應位,將其值通過RO端輸出。[0027]本發明提出的功能產生單元可以通過配置來實現獨立的用戶邏輯運算功能、獨立的細粒度RAM讀/寫功能、獨立的細粒度ROM讀/寫功能等,具體說明如下:
[0028]I)當實現用戶邏輯運算功能時,模式控制信號MODE為0,此時寫操作控制模塊不工作,RD[k-l:0]信號接用戶邏輯信號。在FPGA配置階段,當字線選擇控制信號WL為I時,來自FPGA配置控制器的2k位配置數據CDATA[2k-l:0]分別存儲到MC陣列的2k個MC中。當配置階段結束進入到用戶電路工作階段時,MC陣列和讀操作控制模塊一起,實現查找表(LUT)的功能;
[0029]2)當實現細粒度ROM功能時,模式控制信號MODE為0,此時寫操作控制模塊不工作,RD[k-l:0]信號接ROM的讀地址信號。在FPGA配置階段,與用戶邏輯運算功能類似,ROM中存儲的2k位數據通過FPGA的配置控制器寫入到MC陣列的2k個MC中。當配置階段結束進入到用戶電路工作階段時,根據讀地址信號RD[k-l:0]的內容,相應MC中存儲的數據通過RO讀出;
[0030]3)當實現細粒度RAM功能時,模式控制信號MODE為1,此時寫操作控制模塊工作,DATA、WE、CLK、WR[k-1:0]信號分別接RAM的數據輸入、寫使能、寫時鐘、寫地址信號,RD [k-1:0]信號接RAM的讀地址信號。在FPGA配置階段,功能產生單元不工作。當配置階段結束進入到用戶電路工作階段時,RAM的寫操作通過寫操作控制模塊和MC陣列一起來實現,而RAM的讀操作則通過MC陣列和讀操作控制模塊一起來實現。
[0031]圖3所示的寫操作控制模塊結構僅為對其實現功能的示意性說明,實際的電路設計中,只要能夠正確實現本發明中所定義的功能,也可以選擇其他的電路結構。
[0032]以上所述的具體實施例,對本發明的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發明的具體實施例而已,並不用於限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1. 一種具有邏輯運算和數據存儲功能的可編程功能產生單元,該功能產生單元可被配置成實現用戶邏輯運算功能、細粒度RAM功能或細粒度ROM功能的用戶電路,其包括: 寫操作控制模塊:其在用戶電路實現細粒度RAM寫操作時,控制MC陣列存儲所述RAM中的用戶數據; MC陣列:其在用戶電路實現用戶邏輯運算以及細粒度ROM功能時,用於存儲配置數據;在用戶電路實現細粒度RAM寫操作時,用於存儲所述RAM中的用戶數據; 讀操作控制模塊:其用於讀出MC陣列中存儲的數據。
2.如權利要求1所述的功能產生單元,其特徵在於,所述MC陣列包括多個MC,每個MC包括:兩個反相器和4個NMOS管,其中一個反相器的兩端分別經一個NMOS管接配置數據輸入端,而另一個反相器的兩端分別經一個NMOS管接用戶數據輸入端;且兩個反相器首尾相接。
3.如權利要求1所述的功能產生單元,其特徵在於,所述寫操作控制模塊用於接收模式控制信號、存儲器寫使能信號、寫地址信號和寫時鐘信號,其在模式控制信號、存儲器寫使能信號和寫時鐘信號的控制下,將所接收到的寫地址信號解碼成用戶存儲數據的地址後輸出至MC陣列的用戶數據的地址輸入端。
4.如權利要求3所述的功能產生單元,其特徵在於,所述寫操作控制模塊包括寫地址解碼單元和時鐘同步單元,所述寫地址解碼單元用於接收寫地址信號並對其進行解碼,所述時鐘同步單元接收模式控制信號、存儲器寫使能信號和寫時鐘信號,其用於在模式控制信號的控制下,利用寫時鐘信號對寫使能信號進行時鐘同步,其輸出結果與所述寫地址解碼單元譯出的地址經與門後,最終輸出至MC陣列的用戶數據的地址輸入端。
5.如權利要求3所述的功能產生單元,其特徵在於,所述模式控制信號用於控制所述寫操作控制模塊是否工作。
6.如權利要求2所述的功能產生單元,其特徵在於,在用戶電路被配置成實現細粒度RAM功能時,所述MC陣列中的每個MC接收寫操作控制模塊解碼輸出的用戶數據的存儲地址和來自用戶電路的用戶存儲數據,並根據所述用戶存儲數據的地址存儲來自用戶電路的所述用戶存儲數據。
7.如權利要求2所述的功能產生單元,其特徵在於,在用戶電路被配置成實現用戶邏輯運算功能或細粒度ROM功能時,所述MC陣列中的每個MC接收來自FPGA的配置地址和配置數據,並根據所述配置地址信號,存儲所述配置數據。
8.如權利要求1所述的功能產生單元,其特徵在於,所述讀操作控制模塊用於實現對MC陣列存儲數據的異步讀出操作;其接收來自MC陣列中存儲的數據和來自用戶電路的讀操作地址信號,並根據所述讀操作地址信號讀出所述MC陣列中存儲的數據;其中,在用戶電路被配置成實現用戶邏輯運算功能時,所述讀操作地址信號來自於用戶電路的用戶邏輯信號;在用戶電路被配置成實現細粒度ROM功能或細粒度RAM功能時,所述讀操作地址信號來自於存儲器讀地址信號。
9.如權利要求1所述的功能產生單元,其特徵在於,在用戶電路被配置成實現用戶邏輯運算功能時,在配置階段,MC陣列接收並存儲來自FPGA的配置數據和配置地址,而在用戶電路工作階段,MC陣列和讀操作控制模塊實現查找表LUT的功能。
10.如權利要求1所述的功能產生單元,其特徵在於,在用戶電路實現細粒度RAM功能時,寫操作控制模塊接收RAM的寫地址信號,並將其進行解碼後輸出至MC陣列,MC陣列接收來自用戶電路中用戶存儲數據和寫操作控制模塊的解碼地址後,根據所述解碼地址存儲所述用戶存儲數據;讀操作控制模塊接收RAM讀地址信號,並根據所述讀地址信號從所述MC陣列中讀出所存儲的用戶存儲數據。
11.如權利要求1所述的功能產生單元,其特徵在於,在實現細粒度ROM功能時,在配置階段,MC陣列接收來自FPGA的配置地址和配置數據,並根據所述配置地址存儲所述配置數據;而在用戶電路工作階段,所述讀操作控制模塊接收來自用戶電路中ROM的讀地址信號,並根據所述讀地址信號從所述MC陣列中讀出所存儲的配置數據。
【文檔編號】H03K19/177GK103633994SQ201310155817
【公開日】2014年3月12日 申請日期:2013年4月28日 優先權日:2013年4月28日
【發明者】楊海鋼, 李威, 高麗江 申請人:中國科學院電子學研究所

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀