芯片自適應調節讀數時序路徑的方法和裝置的制造方法
【技術領域】
[0001]本發明涉及一種芯片自適應調節讀數時序路徑的方法和裝置。
【背景技術】
[0002]隨著SOC芯片技術的發展,用戶對芯片性能要求越來越高,由于芯片的運行頻率直接影響到性能,所以芯片的主頻越跑越高。同時由于SRAM存儲電路的復雜性,而且在功能上是要求收到命令的下一個時鐘節拍就完成操作,所以在芯片頻率快速提升的時候,SRAM的讀取速度就明顯的成為了限制芯片頻率的關鍵路徑。目前芯片讀數的時序路徑是從SRAM的命令采集到SRAM內部取數并輸出到SRAM端口再到發出命令的單元再到發出命令單元完成數據采樣,特別在總線上掛載的模塊多的時候,SRAM返回命令發起端的數據路徑會非常的長從而造成很大的延時。
【發明內容】
[0003]本發明要解決的技術問題,在于提供一種能根據運行頻率自動調節時序路徑的方法及裝置,在低頻時采用原始的SRAM時序路徑,在運行頻率超過SRAM的最高頻率時,采用寄存器打斷原有時序路徑方法,大幅提尚SRAM的最尚運彳丁頻率。
[0004]本發明方法是這樣實現的:一種芯片自適應調節讀數時序路徑的方法,包括下述步驟:芯片初始化完成后開始工作并產生工作時鐘;根據芯片輸入的低頻時鐘和所述工作時鐘進行工作時鐘頻率判斷;讀控制單元存儲器輸出讀命令給存儲器單元進行讀操作,同時在讀命令的一個周期后將原始讀數據有效指示位設置為有效;所述存儲器單元根據收到的讀命令和工作時鐘,在使用工作時鐘采樣到讀命令后,經過其電路固有的讀動作延遲時間后輸出原始讀數據;所述原始讀數據分別經一級延遲一個周期和經兩級延遲兩個周期得到延遲一個周期讀數據和延遲兩個周期讀數據;根據所述工作時鐘頻率判斷的結果進行通路選擇操作,將所述原始讀數據、所述延遲一個周期讀數據以及所述延遲兩個周期讀數據這三個輸入中的一路選為輸出讀數據;所述原始讀數據有效指示位分別經一級延遲一個周期和經兩級延遲兩個周期得到延遲一個周期讀數據有效指示位和延遲兩個周期讀數據有效指示位;根據所述工作時鐘頻率判斷的結果進行通路選擇操作,將所述原始讀數據有效指示位、延遲一個周期讀數據有效指示位和延遲兩個周期讀數據有效指示位這三個輸入中的一路選為輸出讀數據有效指示位。
[0005]進一步的,所述工作時鐘頻率判斷的具體過程是:
[0006]對工作時鐘進行計數;使用低頻時鐘對所述計數所得的實時計數值進行采樣,并將每次采樣值對前一次的采樣值做減法操作,得到差值;該差值就代表每個低頻時鐘周期內有多少個工作時鐘周期;得到每個低頻時鐘周期內有多少個工作時鐘周期值后,讀取芯片初始化時預存的檔位門閥值,該檔位門閥值包括延遲一周期門閥值和延遲兩個周期門閥值;將檔位門閥值與低頻時鐘周期內的工作時鐘周期值進行比較,判斷工作時鐘周期落入哪個區間;如果低頻時鐘周期內的工作時鐘周期值比所述延遲一周期門閥值小,則說明工作時鐘周期比較慢,不需要進行延遲處理;如果低頻時鐘周期內的工作時鐘周期值比所述延遲一周期門閥值大,但是小于所述延遲兩個周期門閥值,則所述存儲器單元需要進行延遲一周期處理;所述判斷的判斷結果作為所述通路選擇操作的根據。
[0007]本發明裝置是這樣實現的:一種芯片自適應調節讀數時序路徑的裝置,包括時鐘產生單元、頻率監控判斷單元、存儲器單元、讀控制器單元存儲器、第一級數據緩存寄存器單元、第二級數據緩存寄存器單元、第一通路選擇器單元、第一級有效信號緩存寄存器單元、第二級有效信號緩存寄存器單元、第二通路選擇器單元;所述時鐘產生單元分別與所述頻率監控判斷單元、存儲器單元、讀控制器單元存儲器以及第一級數據緩存寄存器單元連接;所述讀控制器單元存儲器通過所述存儲器單元依次與第一級數據緩存寄存器單元、第二級數據緩存寄存器單元連接;所述頻率監控判斷單元、存儲器單元、第一級數據緩存寄存器單元以及第二級數據緩存寄存器單元還直接連接所述第一通路選擇器單元;所述讀控制器單元存儲器通過所述第一級有效信號緩存寄存器單元連接第二通路選擇器單元,所述頻率監控判斷單元、所述讀控制器單元存儲器、所述第一級有效信號緩存寄存器單元以及第二級有效信號緩存寄存器單元均連接第二通路選擇器單元;
[0008]芯片初始化完成后開始工作;所述時鐘產生單元產生工作時鐘,并送往所述頻率監控判斷單元、存儲器單元、第一級數據緩存寄存器單元和讀控制器單元存儲器;所述頻率監控判斷單元根據輸入的低頻時鐘和工作時鐘進行工作時鐘頻率判斷,并將判斷結果送往所述第一通路選擇器單元和第二通路選擇器單元;所述讀控制單元存儲器輸出讀命令給所述存儲器單元進行讀操作,同時在讀命令的一個周期后將原始讀數據置設置為有效并送至所述第一級有效信號緩存寄存器單元和第二路選擇器單元;所述存儲器單元根據收到的讀命令和工作時鐘,在使用工作時鐘采樣到讀命令后,經過其電路固有的讀動作延遲時間后輸出原始讀數據,送到所述第一通路選擇器單元和所述第一級數據緩存寄存器單元;所述第一級數據緩存寄存器單元對收到的原始讀數據延遲一個周期得到延遲一個周期讀數據后送至所述第一通路選擇器單元和第二級數據緩存寄存器單元;所述第二級數據緩存寄存器單元對收到的延遲一個周期讀數據再延遲一個周期得到延遲兩個周期后的讀數據后送到所述第一通路選擇器單元;所述第一通路選擇器單元根據收到的頻率監控判斷單元輸出的判斷結果進行通路選擇操作,將原始讀數據、延遲一個周期后的讀數據以及延遲兩個周期后的讀數據這三個輸入中的一路選為輸出讀數據;所述第一級有效信號緩存寄存器單元將收到的所述原始讀數據有效指示位經一級延遲一個周期得到延遲一個周期讀數據有效指示位,并送至所述第二級有效信號緩存寄存器單元和所述第二通路選擇器單元;所述第二級有效信號緩存寄存器單元將收到的延遲一個周期讀數據有效指示位再延遲一個周期得到延遲兩個周期讀數據有效指示位并發送至所述第二通路選擇器單元;所述第二通路選擇器單元根據所述工作時鐘頻率判斷的結果進行通路選擇操作,將所述原始讀數據有效指示位、延遲一個周期讀數據有效指示位和延遲兩個周期讀數據有效指示位這三個輸入中的一路選為輸出讀數據有效指示位。
[0009]進一步的,所述頻率監控判斷單元進一步包括門閥值存儲單元、計數器單元以及多拍切換判斷單元,所述門閥值存儲單元和計數器單元均連接所述多拍切換判斷單元,且計數器單元還連接所述時鐘產生單元,所述多拍切換判斷單元還連接第一通路選擇器單元和第二通路選擇器單元;
[0010]所述計數器單元對工作時鐘進行計數;所述多拍切換判斷單元使用低頻時鐘對所述計數器單元輸出的實時計數值進行采樣,并將每次采樣值對前一次的采樣值做減法操作,得到差值;該差值就代表每個低頻時鐘周期內有多少個工作時鐘周期;得到每個低頻時鐘周期內有多少個工作時鐘周期值后,所述多拍切換判斷單元讀取所述門閥值存儲單元中芯片初始化時預存的檔位門閥值,該檔位門閥值包括延遲一周期門閥值和延遲兩個周期門閥值;將檔位門閥值與低頻時鐘周期內的工作時鐘周期值進行比較,判斷工作時鐘周期落入哪個區間;如果低頻時鐘周期內的工作時鐘周期值比所述延遲一周期門閥值小,則說明工作時鐘周期比較慢,不需要進行延遲處理;如果低頻時鐘周期內的工作時鐘周期值比所述延遲一周期門閥值大,但是小于所述延遲兩個周期門閥值,則所述存儲器單元需要進行延遲一周期處理;如果低頻時鐘周期內的工作時鐘周期值比延遲兩個周期門閥值大,則存儲器單元需要進行延遲兩個周期處理;所述判斷的判斷結果被送到所述第一通路選擇器單元和第二通路選擇器單元作為所述通路選擇操作的根據。
[0011 ]本發明具有如下優點:本發明在低頻時采用原始的SRAM時序路徑,在運行頻率超過SRAM的最高頻率時,在SRAM的輸出端直接增加一級寄存器,從而將整個時序路徑幾乎從中間打斷,將時序路徑大幅減短,大幅提尚SRAM的最尚運彳丁頻率;且低頻和尚頻的時序路徑能自動完成切換。
【附圖說明】
[0012]下面參照附圖結合實施例對本發明作進一步的說明。
[0013]圖1為本發明芯片自適應調節讀數時序路徑的裝置的結構框圖。
[0014]圖