System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請屬于芯片控制,尤其涉及一種讀寫權限的分配方法、裝置及電子設備。
技術介紹
1、通用輸入/輸出模塊(general-purpose?input/output,gpio)是一種在嵌入式系統中廣泛使用的接口,通過設置在gpio模塊的pad端口與外部設備連接,實現芯片與外部設備之間進行數字信號的交互。
2、在單核芯片中,中央處理器(central?processing?unit,cpu)可對gpio的配置進行相應的修改,以控制pad端口實現相應的功能,如改變信號傳輸方向、控制pad端口電平的上拉或下拉、數字信號或模擬信號的復用等功能。對于多核芯片,則會存在多個cpu對gpio的配置同時進行修改的情況,導致配置的數據不一致、應用系統不穩定甚至崩潰的問題。
3、基于此,可通過對gpio的修改權限進行分配,以減少多個cpu對gpio的配置同時進行修改的情況。目前,可通過使用分布式鎖來確保gpio模塊中每個單元只有一個cpu具備修改的權限,或將gpio的物理訪問通路進行劃分,使得每個cpu僅能訪問gpio模塊中相應的單元,減少多個cpu對gpio的配置同時進行修改的情況。
4、然而,上述方法中每個cpu在gpio模塊中所能修改的單元是固定的,是出廠設置好的,倘若需要變更每個cpu在gpio模塊中所能修改的單元,則需要對芯片進行重置至初始狀態,存在靈活性較低的問題。
技術實現思路
1、本申請實施例提供一種讀寫權限的分配方法、裝置及電子設備,旨在解決現有的需要
2、第一方面,本申請實施例提供一種讀寫權限的分配方法,所述方法應用于芯片系統,所述芯片系統包括至少兩個處理器,至少兩個所述處理器與通用模塊連接,所述通用模塊包括一個或多個寄存器,所述方法包括:
3、獲取權限修改指令;其中,所述權限修改指令包括至少一個所述處理器的身份標識以及至少一個目標寄存器的編號信息,所述目標寄存器為一個或多個所述寄存器中待修改權限的寄存器;
4、根據所述權限修改指令,確定與所述目標寄存器連接的端口對應的目標處理器;
5、根據所述目標處理器的身份標識,為所述目標處理器分配讀寫所述目標寄存器的權限。
6、在上述第一方面的一種可能實現方式中,所述根據所述目標處理器的身份標識,為所述目標處理器分配讀寫所述目標寄存器的權限,包括:
7、將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值。
8、在上述第一方面的一種可能實現方式中,所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值,包括:
9、確定主處理器;其中,所述主處理器為具有修改權限的處理器,所述修改權限為修改所述寄存器的取值的權限;
10、采用所述主處理器將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值。
11、在上述第一方面的一種可能實現方式中,所述方法還包括:
12、在所述處理器對所述通用模塊進行訪問的情況下,將所述處理器的身份標識與每個所述寄存器的取值進行匹配,并在所述處理器的身份標識與所述寄存器的取值相匹配的情況下,允許所述處理器對所述寄存器執行讀寫任務;
13、在所述處理器的身份標識與所述寄存器的取值不匹配的情況下,限制所述處理器對所述寄存器執行讀寫任務。
14、在上述第一方面的一種可能實現方式中,在所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值之前,還包括:
15、根據所述芯片系統的業務需求,確定每個所述寄存器的修改等級;
16、在所述目標寄存器的修改等級為允許修改的情況下,執行所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值的步驟;
17、在所述目標寄存器的修改等級為限制修改的情況下,生成限制修改所述寄存器的提示信息,并基于所述提示信息對用戶進行提示。
18、在上述第一方面的一種可能實現方式中,所述方法還包括:
19、在所述目標寄存器的修改等級為限制修改的情況下,響應復位指令,將所述寄存器的取值修改為復位值,并重新執行所述根據所述芯片系統的業務需求,定義每個所述寄存器的修改等級的步驟;
20、其中,所述復位值與所述芯片系統的版本配置相關,所述版本配置為所述處理器在迭代更新時寫入的。
21、在上述第一方面的一種可能實現方式中,所述通用模塊還包括訪問識別組件,所述訪問識別組件用于在所述處理器對所述通用模塊進行訪問的情況下,識別所述處理器的身份標識。
22、第二方面,本申請實施例提供一種讀寫權限的分配裝置,所述裝置應用于芯片系統,所述芯片系統包括至少兩個處理器,至少兩個所述處理器與通用模塊連接,所述通用模塊包括一個或多個寄存器,所述裝置包括:
23、獲取模塊,用于獲取權限修改指令;其中,所述權限修改指令包括至少一個所述處理器的身份標識以及至少一個目標寄存器的編號信息,所述目標寄存器為一個或多個所述寄存器中待修改權限的寄存器;
24、確定模塊,用于根據所述權限修改指令,確定與所述目標寄存器連接的端口對應的目標處理器;
25、分配模塊,用于根據所述目標處理器的身份標識,為所述目標處理器分配讀寫所述目標寄存器的權限。
26、第三方面,本申請實施例提供一種電子設備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如上述第一方面提供的所述讀寫權限的分配方法。
27、第四方面,本申請實施例提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序被處理器執行時實現如上述第一方面提供的所述讀寫權限的分配方法。
28、第五方面,本申請實施例提供一種計算機程序產品,包括計算機程序,當所述計算機程序在計算機上運行時,使得所述計算機執行上述第一方面提供的所述讀寫權限的分配方法。
29、可以理解的是,上述第二方面至第五方面的有益效果可以參見上述第一方面中的相關描述,在此不再贅述。
30、本申請實施例與現有技術相比存在的有益效果是:
31、在本申請實施例中,通過獲取權限修改指令,權限修改指令包括至少一個處理器的身份標識以及至少一個目標寄存器的編號信息,目標寄存器為一個或多個寄存器中待修改權限的寄存器,根據權限修改指令,確定與目標寄存器連接的端口對應的目標處理器,并根據目標處理器的身份標識,為目標處理器分配讀寫目標寄存器的權限,從而能夠通過處理器的身份標識來分配處理器讀寫每個寄存器的權限,并基于每個處理器的讀寫權限控制處理器對寄存器執行讀寫任務,提高了改變處理器讀寫權限的靈活性。
本文檔來自技高網...【技術保護點】
1.一種讀寫權限的分配方法,其特征在于,所述方法應用于芯片系統,所述芯片系統包括至少兩個處理器,至少兩個所述處理器與通用模塊連接,所述通用模塊包括一個或多個寄存器,所述方法包括:
2.如權利要求1所述的讀寫權限的分配方法,其特征在于,所述根據所述目標處理器的身份標識,為所述目標處理器分配讀寫所述目標寄存器的權限,包括:
3.如權利要求2所述的讀寫權限的分配方法,其特征在于,所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值,包括:
4.如權利要求1所述的讀寫權限的分配方法,其特征在于,所述方法還包括:
5.如權利要求2至4任一項所述的讀寫權限的分配方法,其特征在于,在所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值之前,還包括:
6.如權利要求5所述的讀寫權限的分配方法,其特征在于,所述方法還包括:
7.如權利要求1至4或6任一項所述的讀寫權限的分配方法,其特征在于,所述通用模塊還包括訪問識別組件,所述訪問識別組件用于在所述處理器對所述通用模塊進行訪問的情況下,識別所述處理器
8.一種讀寫權限的分配裝置,其特征在于,所述裝置應用于芯片系統,所述芯片系統包括至少兩個處理器,至少兩個所述處理器與通用模塊連接,所述通用模塊包括一個或多個寄存器,所述裝置包括:
9.一種電子設備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1至7任一項所述的方法。
10.一種計算機程序產品,所述計算機程序產品包括計算機程序,其特征在于,當所述計算機程序在計算機上運行時,使得所述計算機執行如權利要求1至7任一項所述的方法。
...【技術特征摘要】
1.一種讀寫權限的分配方法,其特征在于,所述方法應用于芯片系統,所述芯片系統包括至少兩個處理器,至少兩個所述處理器與通用模塊連接,所述通用模塊包括一個或多個寄存器,所述方法包括:
2.如權利要求1所述的讀寫權限的分配方法,其特征在于,所述根據所述目標處理器的身份標識,為所述目標處理器分配讀寫所述目標寄存器的權限,包括:
3.如權利要求2所述的讀寫權限的分配方法,其特征在于,所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值,包括:
4.如權利要求1所述的讀寫權限的分配方法,其特征在于,所述方法還包括:
5.如權利要求2至4任一項所述的讀寫權限的分配方法,其特征在于,在所述將所述目標寄存器的取值修改為與所述目標處理器的身份標識對應的值之前,還包括:
6.如權利要求5所述的讀寫權限的分配方法,其特征...
【專利技術屬性】
技術研發人員:吳金萱,趙琮,湯江遜,
申請(專利權)人:深圳市銳能微科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。