System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于時序控制領域,尤其是涉及一種對fpga?bram讀寫沖突的時序控制方法及電路。
技術介紹
1、現場可編程門陣列(field-programmable?gate?array,fpga)是一種通用的可編程邏輯器件,具有靈活性高、并行度高的特點,通常包括可編程邏輯模塊(configurablelogic?block,clb)、可編程互聯資源(configurable?routing,cr)、輸入輸出模塊(inputoutput?block,iob)以及其它ip資源,如:塊存儲器(block?ram,bram)、數字信號處理器(digital?signal?processing,dsp)等,它為用戶提供了系統可編程或可重配置能力。
2、bram作為fpga中主要的塊存儲資源,其內部主要由靜態隨機存儲器(staticrandom?access?memory,sram)構成,不僅為fpga提供了大量的存儲空間,也同時具備存儲模式靈活、兼容性高、不需要周期性刷新等優點,為fpga的高靈活性功能提供內在助力。fpga?bram具備單端口和雙端口工作結構,工作過程中存在需要對同一存儲地址同一周期內進行讀操作和寫操作的情況,這就出現了讀寫沖突,根據需要決定配置是否讀出這一存儲地址中已經存入的舊數后再進行寫入新數據,還是直接讀取將要寫入的新數,存在沖突。
3、bram讀寫沖突一般包括三種情況:第一、bram雙端口工作模式下,同周期內需要對同一存儲地址進行讀和寫,如a端口進行寫操作,b端口進行讀操作,此情況對應配置
技術實現思路
1、本專利技術要解決的技術問題是怎樣避免bram讀寫沖突,提高bram的開發效率,提出了一種對fpga?bram讀寫沖突的時序控制方法及電路。
2、為解決上述技術問題,本專利技術所采用的技術方案是:
3、一種對fpga?bram讀寫沖突的時序控制方法,當存在讀寫沖突時,使用兩個時序電路用于產生工作時序,第一時序電路和第二時序電路,fpga初始時鐘作用在第一時序電路上,由第一時序電路產生讀操作時序,在第一時序電路讀操作完成后,控制第二時序電路產生寫操作時序;
4、當不存在讀寫沖突時,由第一時序電路完成相應的讀或寫操作。
5、在第一時序電路讀操作完成后,控制第二時序電路產生寫操作時序的方法是,對第一時序電路的讀操作時長進行跟蹤,在讀操作跟蹤完成后,給出跟蹤完成的觸發信號,將該觸發信號發送給第二時序電路,使第二時序電路產生開始工作的工作時鐘信號。
6、對第一時序電路的讀操作時長進行跟蹤的方法是:使用一種跟蹤電路對bram的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤,第一時序電路產生的第一工作時鐘信號輸入給跟蹤電路,跟蹤電路跟蹤完成后給出觸發信號,將觸發信號發送給第二時序電路作為第二時序電路產生開始工作的第二工作時鐘信號。
7、所述跟蹤電路的結構包括行譯碼電路、行模擬跟蹤電路、和列模擬跟蹤電路;
8、所述行譯碼電路用于確定是選擇靜態隨機存儲器的存儲陣列中哪一行的單元在工作的字線信號wl,同時給出對這一行的單元工作時間進行跟蹤的信號;
9、所述行模擬跟蹤電路使用n對nmos管來模擬字線在靜態隨機存儲器的存儲陣列一行中n個單元的打開時間,n對nmos管的柵極分別連接在行跟蹤開始信號上,所述行跟蹤開始信號由全局工作時鐘信號經過所述行譯碼電路確定是哪一行的單元工作后產生高電平,n對nmos管的源極和漏極都連接在接地信號上,在n對nmos管充電完成后,給出行跟蹤完成反饋信號;
10、所述列模擬跟蹤電路使用m個nmos管來模擬位線在靜態隨機存儲器的存儲陣列中一列m個單元的讀寫工作時間,列跟蹤開始信號分別輸入m個nmos管的源極端,m個nmos管的柵極和漏極均連接在接地信號上;
11、列跟蹤開始信號是由行跟蹤完成反饋信號觸發給出的列跟蹤開始信號;
12、列跟蹤開始信號在對m個nmos管充電完成后完成跟蹤,給出下拉電平的觸發信號。
13、進一步地,還包括延時電路,用于在第一時序電路讀完后給出第二時序電路開始寫的觸發信號時,對所述觸發信號進行延時,以滿足第一時序電路模塊控制讀操作的時序充分完成后再進入第二時序電路模塊的寫操作時序控制。
14、進一步地,fpga初始時鐘作用在第一時序電路上時,需結合bram工作使能信號、上電清零信號進行邏輯組合,產生第一工作時鐘信號;
15、第二時序電路的時鐘信號由所述跟蹤電路的觸發信號給出,第二時序電路的bram工作使能信號由讀寫沖突配置位、讀舊數配置位、讀使能配置位以及寫配置位,經過組合邏輯后產生,第二時序電路的上電清零信號與第一時序電路的上電清零信號連接,第二時序電路在時鐘信號、bram工作使能信號、上電清零信號進行邏輯組合,產生第二工作時鐘信號。
16、進一步地,在第一時序電路和第二時序電路的工作時鐘信號之后,還分別經過一個脈寬控制電路,用于對工作時鐘信號位于高電平的脈寬長度進行控制,第一時序電路產生的第一工作時鐘信號經過第一脈寬控制電路后,形成第一全局工作時鐘信號,第一全局工作時鐘信號輸入跟蹤電路,在對bram的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第一觸發信號時,第一觸發信號輸入第一脈寬控制電路將第一全局工作時鐘的高電平下拉,第二時序電路產生的第二工作時鐘信號經過第二脈寬控制電路后,形成第二全局工作時鐘信號,第二全局工作時鐘信號輸入跟蹤電路,在對bram的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第二觸發信號時,第二觸發信號輸入第二脈寬控制電路將第二全局工作時鐘信號的高電平下拉,第一觸發信號同時還輸入延時電路經延時后輸入第二時序電路。
17、進一步地,所述脈寬控制電路模塊結構包括第三反相器3和帶有低電平保持器的第一反相器1、帶有高電平保持器的第二反相器2,所述第一反相器1和第二反相器2的輸出端與第三反相器3連接,第三反相器3的輸出端為全局工作時鐘信號,工作時鐘信號輸入第二反相器2,下降沿的觸發信號輸入第一反相器1。
18、進一步地,帶有低電平保持器的第一反相器1包括由第一nmos管11和第一pmos管12組成的第四反相器10、第二nmos管13和第五反相器14,在所述第一nmos管11的源極端接第二nmos管13的漏極,第二nmos管13的源極本文檔來自技高網...
【技術保護點】
1.一種對FPGA?BRAM讀寫沖突的時序控制方法,其特征在于,
2.根據權利要求1所述的方法,其特征在于,還包括延時電路,用于在第一時序電路讀完后給出第二時序電路開始寫的觸發信號時,對所述觸發信號進行延時,以滿足第一時序電路模塊控制讀操作的時序充分完成后再進入第二時序電路模塊的寫操作時序控制。
3.根據權利要求2所述的方法,其特征在于,FPGA初始時鐘作用在第一時序電路上時,需結合BRAM工作使能信號、上電清零信號進行邏輯組合,產生第一工作時鐘信號;
4.根據權利要求3所述的方法,其特征在于,在第一時序電路和第二時序電路的工作時鐘信號之后,還分別經過一個脈寬控制電路,用于對工作時鐘信號位于高電平的脈寬長度進行控制,第一時序電路產生的第一工作時鐘信號經過第一脈寬控制電路后,形成第一全局工作時鐘信號,第一全局工作時鐘信號輸入跟蹤電路,在對BRAM的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第一觸發信號時,第一觸發信號輸入第一脈寬控制電路將第一全局工作時鐘的高電平下拉,第二時序電路產生的第二工作時鐘信號經過第二脈寬控制電
5.根據權利要求4所述的方法,其特征在于,所述脈寬控制電路模塊結構包括第三反相器(3)和帶有低電平保持器的第一反相器(1)、帶有高電平保持器的第二反相器(2),所述第一反相器(1)和第二反相器(2)的輸出端與第三反相器(3)連接,第三反相器(3)的輸出端為全局工作時鐘信號,工作時鐘信號輸入第二反相器(2),下降沿的觸發信號輸入第一反相器(1)。
6.根據權利要求5所述的方法,其特征在于,帶有低電平保持器的第一反相器(1)包括由第一NMOS管(11)和第一PMOS管(12)組成的第四反相器(10)、第二NMOS管(13)和第五反相器(14),在所述第一NMOS管(11)的源極端接第二NMOS管(13)的漏極,第二NMOS管(13)的源極接地,且第四反相器(10)的輸出端接第五反相器(14)后輸入第二NMOS管(13)的柵極,第四反相器(10)的輸出端接第二反相器(2)的輸出端后輸入第三反相器(3)形成全局工作時鐘信號;
7.一種對FPGA?BRAM讀寫沖突的時序控制電路,使用權利要求1至6任一項所述的一種對FPGA?BRAM讀寫沖突的時序控制方法,其特征在于,包括第一時序電路模塊、第二時序電路模塊、延時電路模塊、配置判斷電路模塊和跟蹤電路模塊;
8.根據權利要求7所述的時序控制電路,其特征在于,第一時序電路模塊和第二時序電路模塊的工作時鐘信號,還分別經過一個脈寬控制電路,用于對工作時鐘信號位于高電平的脈寬長度進行控制,第一時序電路模塊產生的第一工作時鐘信號經過第一脈寬控制電路后,形成第一全局工作時鐘信號,第一全局工作時鐘信號輸入跟蹤電路,在對BRAM的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第一觸發信號時,第一觸發信號輸入第一脈寬控制電路將第一全局工作時鐘的高電平下拉,第二時序電路模塊產生的第二工作時鐘信號經過第二脈寬控制電路后,形成第二全局工作時鐘信號,第二全局工作時鐘信號輸入跟蹤電路,在對BRAM的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第二觸發信號時,第二觸發信號輸入第二脈寬控制電路將第二全局工作時鐘信號的高電平下拉,第一觸發信號同時還輸入延時電路經延時后輸入第二時序電路。
...【技術特征摘要】
1.一種對fpga?bram讀寫沖突的時序控制方法,其特征在于,
2.根據權利要求1所述的方法,其特征在于,還包括延時電路,用于在第一時序電路讀完后給出第二時序電路開始寫的觸發信號時,對所述觸發信號進行延時,以滿足第一時序電路模塊控制讀操作的時序充分完成后再進入第二時序電路模塊的寫操作時序控制。
3.根據權利要求2所述的方法,其特征在于,fpga初始時鐘作用在第一時序電路上時,需結合bram工作使能信號、上電清零信號進行邏輯組合,產生第一工作時鐘信號;
4.根據權利要求3所述的方法,其特征在于,在第一時序電路和第二時序電路的工作時鐘信號之后,還分別經過一個脈寬控制電路,用于對工作時鐘信號位于高電平的脈寬長度進行控制,第一時序電路產生的第一工作時鐘信號經過第一脈寬控制電路后,形成第一全局工作時鐘信號,第一全局工作時鐘信號輸入跟蹤電路,在對bram的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第一觸發信號時,第一觸發信號輸入第一脈寬控制電路將第一全局工作時鐘的高電平下拉,第二時序電路產生的第二工作時鐘信號經過第二脈寬控制電路后,形成第二全局工作時鐘信號,第二全局工作時鐘信號輸入跟蹤電路,在對bram的靜態隨機存儲器的存儲陣列相應的存儲地址單元進行讀寫時長模擬跟蹤完成給出第二觸發信號時,第二觸發信號輸入第二脈寬控制電路將第二全局工作時鐘信號的高電平下拉,第一觸發信號同時還輸入延時電路經延時后輸入第二時序電路。
5.根據權利要求4所述的方法,其特征在于,所述脈寬控制電路模塊結構包括第三反相器(3)和帶有低電平保持器的第一反相器(1)、帶有高電平保持器的第二反相器(2),所述第一反相器(1)和第二反相器(2)的輸出端與第三反相器(3)連接,第三反相器(3)的輸出端為全局工作時鐘信號,工作時鐘信號輸入第二反相器(2...
【專利技術屬性】
技術研發人員:周冬冬,韋援豐,蔡剛,魏育成,
申請(專利權)人:中科億海微電子科技蘇州有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。