System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請實施例涉及計算機領域,具體而言,涉及一種片上系統的頂層文件的生成方法及裝置、程序產品。
技術介紹
1、片上系統是在一塊上集成了一個完整的信息處理系統,片上系統的研發和生產流程主要包括功能需求、系統級設計驗證、架構、硬件設計驗證、軟件設計驗證和制造等。其中,硬件設計驗證階段的主要工作就是通過頂層文件將多個不同功能的模塊整合在一起,形成一個完整片上系統的硬件設計過程。為了將各個模塊組合在一起,頂層文件不僅定義了輸入和輸出接口,還需要定義時鐘和復位信號,以及與外圍設備的通信。
2、隨著片上系統的功能需求增加,片上系統需要集成的模塊數量增加,在頂層文件中描述的端口也隨之增加,頂層文件的寄存器傳輸級代碼(register?transfer?levelcode,簡稱為rtl代碼)復雜程度進一步提升。目前,片上系統頂層文件的編寫方式大多使用人工編寫rtl代碼的方式進行。由于片上系統的頂層文件中需要例化的端口數量較多,若片上系統的設計工程師手動對各個模塊進行集成,很難確保頂層文件中對端口描述的正確性,因此,會導致片上系統的開發周期增加。
3、近年來,為了縮減片上系統開發周期,部分研發人員通過使用verilog?mode軟件實現了自動生成組合邏輯敏感列表、模塊端口和端口映射等,降低頂層文件編寫的工作量,但verilog?mode軟件只能實現對輸出端口和實例化的端口進行操作。此外,在片上系統研發過程中,需要不斷修改接口信號,但在verilog?mode軟件自動例化的功能執行時,如果修改模塊端口名稱,頂層文件會恢復到默認
技術實現思路
1、本申請實施例提供了一種片上系統的頂層文件的生成方法及裝置、程序產品,以至少解決相關技術中頂層文件設計效率不高的問題。
2、根據本申請的一個實施例,提供了一種片上系統的頂層文件的生成方法,包括:獲取片上系統的第一設計文件,其中,上述第一設計文件是基于硬件描述語言預先生成的代碼文件,上述第一設計文件中包括上述片上系統中各個組件的參數設計文件和端口設計文件;解析上述第一設計文件,并將第一解析結果轉換為第一預設格式的文件,得到第一文件庫,其中,上述第一預設格式為輕量級的數據交換格式;基于上述第一文件庫生成端口文件庫和參數文件庫,其中,上述端口文件庫中包括上述端口設計文件中的端口信息,上述參數文件庫中包括上述參數設計文件中的參數信息,上述端口設計文件和上述參數設計文件均為上述輕量級的數據交換格式;利用上述端口文件庫、上述參數文件庫以及目標配置文件生成目標頂層文件,其中,上述目標頂層文件用于配置各個上述組件的運行參數,上述目標配置文件中包括聲明上述第一設計文件的信息。
3、在一個示例性實施例中,獲取片上系統的第一設計文件,包括:按照獲取的第一存儲路徑訪問文件數據庫,其中,上述文件數據庫中包括存儲的多個設計文件;從上述設計數據庫中查找與各個上述組件的參數和/或端口匹配的設計文件,并讀取上述設計文件,得到上述第一設計文件。
4、在一個示例性實施例中,解析第一設計文件,并將第一解析結果轉換為第一預設格式的文件,得到第一文件庫,包括:將上述第一設計文件解析為抽象語法樹,其中,上述抽象語法樹中包括上述第一設計文件的文件結構和生成上述第一設計文件所使用的語法結構;將上述抽象語法樹轉換為上述第一預設格式的文件,得到上述第一文件庫。
5、在一個示例性實施例中,將第一設計文件解析為抽象語法樹,包括:將第一設計文件分割為n個詞法單元,其中,上述詞法單元是上述第一設計文件的最小語法單位,上述n是正整數;將n個上述詞法單元按照預設語法規則進行組合,得到m個語法結構,其中,上述語法結構是上述硬件描述語言的語法規則,上述m是小于或等于上述n的正整數;基于m個上述語法結構生成上述抽象語法樹。
6、在一個示例性實施例中,基于第一文件庫生成端口文件庫和參數文件庫,包括:解析上述第一文件庫,并整合解析出的上述端口設計文件中的端口信息和上述參數設計文件中的參數信息,得到第一集合;存儲上述第一集合,得到第二文件庫;基于上述第二文件庫生成上述端口文件庫和上述參數文件庫。
7、在一個示例性實施例中,基于第二文件庫生成端口文件庫和參數文件庫,包括:從上述第二文件庫中獲取端口名稱;按照上述端口名稱從上述第一文件庫中提取上述端口設計文件中的端口信息,并存儲上述端口信息,得到上述端口文件庫;從上述第二文件庫中提取信息屬性為參數的信息,得到上述參數設計文件中的參數信息,并存儲上述參數信息,得到上述參數文件庫。
8、在一個示例性實施例中,利用端口文件庫、參數文件庫以及目標配置文件生成目標頂層文件,包括:從上述目標配置文件中提取頂層文件的名稱;解析上述端口文件庫、上述參數文件庫以及上述頂層文件的名稱,得到第二解析結果,其中,上述第二解析結果中包括各個上述端口之間的連接關系;利用上述第二解析結果生成上述目標頂層文件。
9、在一個示例性實施例中,解析端口文件庫、參數文件庫以及頂層文件的名稱,得到第二解析結果,包括:從上述端口文件庫、上述參數文件庫和上述頂層文件的名稱中解析出各個上述組件之間的端口的連接情況,得到上述第二解析結果。
10、在一個示例性實施例中,從端口文件庫、參數文件庫和頂層文件的名稱中解析出各個組件之間的端口的連接情況,得到第二解析結果,包括:從上述端口文件庫中解析出各個上述端口之間的第一連接關系,得到第一連接子文件;從上述第一連接子文件中確定未指明連接情況的第一目標端口;設置第一參數以建立上述第一目標端口與各個上述組件之間的關聯關系,并利用上述參數文件庫、上述頂層文件的名稱以及上述第一參數生成上述第二解析結果。
11、在一個示例性實施例中,從端口文件庫、參數文件庫和頂層文件的名稱中解析出各個組件之間的端口的連接情況,得到第二解析結果之后,上述方法還包括:基于各個上述組件之間的端口的連接情況和預設端口的連接優先級,確定第二目標端口的連接方式,其中,上述第二目標端口是上述解析結果中包括的任一端口;基于上述第二目標端口的連接方式,確定上述第二目標端口和第三目標端口之間的端口信息是否一致,其中,上述第三目標端口是與上述第二目標端口連接的端口;在上述第二目標端口和第三目標端口之間的端口信息一致的情況下,利用上述第二解析結果生成上述目標頂層文件;上述第二目標端口和第三目標端口之間的端口信息不一致的情況下,發出異常信息,其中,上述異常信息用于表示上述第一文件庫中的端口信息存在異常。
12、在一個示例性實施例中,利用解析結果,生成目標頂層文件之后,上述方法還包括:將上述目標頂層文件存儲至文件數據庫中,并生成第二存儲路徑;在接收到獲取指令的情況下,響應上述獲取指令,按照上述第二存儲路徑從上述文件數據庫中查找上述片上系統的第二設計文件,其中,上述第二設計文件是除了上述目標頂層文件之外,且用于配置各個上述組件的運行參數的文件;解析本文檔來自技高網...
【技術保護點】
1.一種片上系統的頂層文件的生成方法,其特征在于,應用于模塊生成裝置,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,獲取所述片上系統的第一設計文件,包括:
3.根據權利要求1所述的方法,其特征在于,解析所述第一設計文件,并將第一解析結果轉換為第一預設格式的文件,得到第一文件庫,包括:
4.根據權利要求3所述的方法,其特征在于,將所述第一設計文件解析為抽象語法樹,包括:
5.根據權利要求1所述的方法,其特征在于,基于所述第一文件庫生成端口文件庫和參數文件庫,包括:
6.根據權利要求5所述的方法,其特征在于,基于所述第二文件庫生成所述端口文件庫和所述參數文件庫,包括:
7.根據權利要求1所述的方法,其特征在于,利用所述端口文件庫、所述參數文件庫以及目標配置文件生成目標頂層文件,包括:
8.根據權利要求7所述的方法,其特征在于,解析所述端口文件庫、所述參數文件庫以及所述頂層文件的名稱,得到第二解析結果,包括:
9.根據權利要求8所述的方法,其特征在于,從所述端口文件庫、所述參數文
10.根據權利要求8所述的方法,其特征在于,從所述端口文件庫、所述參數文件庫和所述頂層文件的名稱中解析出各個所述組件之間的端口的連接情況,得到所述第二解析結果之后,所述方法還包括:
11.根據權利要求7所述的方法,其特征在于,利用所述解析結果,生成所述目標頂層文件之后,所述方法還包括:
12.根據權利要求11所述的方法,其特征在于,對所述第五文件庫執行驗證操作,并基于驗證結果更新所述第二設計文件,包括:
13.根據權利要求12所述的方法,其特征在于,按照所述驗證結果更新所述第二設計文件,包括:
14.根據權利要求7所述的方法,其特征在于,利用所述第二解析結果生成所述目標頂層文件,包括:
15.一種模塊生成裝置,其特征在于,包括:
16.一種片上系統,其特征在于,包括如權利要求15所述的模塊生成裝置。
17.一種片上系統的頂層文件的生成裝置,其特征在于,包括:
18.一種計算機程序產品,包括計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至14任一項中所述的方法的步驟。
19.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質中存儲有計算機程序,其中,所述計算機程序被處理器執行時實現所述權利要求1至14任一項中所述的方法的步驟。
20.一種電子設備,包括存儲器、處理器以及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現所述權利要求1至14任一項中所述的方法的步驟。
...【技術特征摘要】
1.一種片上系統的頂層文件的生成方法,其特征在于,應用于模塊生成裝置,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,獲取所述片上系統的第一設計文件,包括:
3.根據權利要求1所述的方法,其特征在于,解析所述第一設計文件,并將第一解析結果轉換為第一預設格式的文件,得到第一文件庫,包括:
4.根據權利要求3所述的方法,其特征在于,將所述第一設計文件解析為抽象語法樹,包括:
5.根據權利要求1所述的方法,其特征在于,基于所述第一文件庫生成端口文件庫和參數文件庫,包括:
6.根據權利要求5所述的方法,其特征在于,基于所述第二文件庫生成所述端口文件庫和所述參數文件庫,包括:
7.根據權利要求1所述的方法,其特征在于,利用所述端口文件庫、所述參數文件庫以及目標配置文件生成目標頂層文件,包括:
8.根據權利要求7所述的方法,其特征在于,解析所述端口文件庫、所述參數文件庫以及所述頂層文件的名稱,得到第二解析結果,包括:
9.根據權利要求8所述的方法,其特征在于,從所述端口文件庫、所述參數文件庫和所述頂層文件的名稱中解析出各個所述組件之間的端口的連接情況,得到所述第二解析結果,包括:
10.根據權利要求8所述的方法,其特征在于,從所述端口文件庫、所述參數文件庫和所述頂層文件的名稱中解析出各個所述組件之間的端口的連接情況,...
【專利技術屬性】
技術研發人員:李瑞東,宋超,劉奇浩,石鵬,
申請(專利權)人:山東云海國創云計算裝備產業創新中心有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。