新四季網

協議輔助學習實現方法、裝置、計算機終端及存儲介質與流程

2024-04-13 02:11:05



1.本發明涉及計算機技術領域,尤其涉及一種協議輔助學習實現方法、裝置、計算機終端及存儲介質。


背景技術:

2.晶片firmware開發和測試,需要對sata(serial advanced technologyattachment,串口硬碟)協議或nvme協議和pcie協議比較了解。然而無論是sata協議,還是nvme協議和pcie協議,文檔都是純英文的,而且每一個文檔都是幾百頁,還有很多的附件,而且協議文檔的內容,經常是各種章節不停的跳轉,往往會看了後面的忘了前面的,所以學習起來是一個非常枯燥與困難的過程。目前各個公司都是通過,老帶新,新員工自主學習,不懂的請教老員工,一段時間後,老員工稍等的分任務給新員工,邊學邊工作,加快進度。但是,對於剛入門的人來說,每一頁協議基本都有問題,老員工也不可能每個問題都一一回答,所以學習進度依舊是非常慢。


技術實現要素:

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.圖1示出了本技術實施例一種協議輔助學習實現方法流程示意圖;
29.圖2示出了本技術實施例命令參數表示意圖;
30.圖3示出了本技術實施例命令表示意圖;
31.圖4示出了本技術實施例又一命令表示意圖;
32.圖5示出了本技術實施例命令示意圖;
33.圖6示出了本技術實施例命令傳輸示意圖;
34.圖7示出了本技術實施例五層模型傳輸結構示意圖;
35.圖8示出了本技術實施例一種協議輔助學習實現裝置結構示意圖。
具體實施方式
36.下面將結合本發明實施例中附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。
37.通常在此處附圖中描述和示出的本發明實施例的組件可以以各種不同的配置來布置和設計。因此,以下對在附圖中提供的本發明的實施例的詳細描述並非旨在限制要求保護的本發明的範圍,而是僅僅表示本發明的選定實施例。基於本發明的實施例,本領域技術人員在沒有做出創造性勞動的前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
38.在下文中,可在本發明的各種實施例中使用的術語「包括」、「具有」及其同源詞僅意在表示特定特徵、數字、步驟、操作、元件、組件或前述項的組合,並且不應被理解為首先排除一個或更多個其它特徵、數字、步驟、操作、元件、組件或前述項的組合的存在或增加一個或更多個特徵、數字、步驟、操作、元件、組件或前述項的組合的可能性。
39.此外,術語「第一」、「第二」、「第三」等僅用於區分描述,而不能理解為指示或暗示相對重要性。
40.除非另有限定,否則在這裡使用的所有術語(包括技術術語和科學術語)具有與本發明的各種實施例所屬領域普通技術人員通常理解的含義相同的含義。所述術語(諸如在一般使用的詞典中限定的術語)將被解釋為具有與在相關技術領域中的語境含義相同的含義並且將不被解釋為具有理想化的含義或過於正式的含義,除非在本發明的各種實施例中被清楚地限定。
41.本技術應用於對晶片命令相關協議的請求,命令從控制器下發到磁碟需要進行命令轉換,具體轉換下去的命令根據不同的協議,有不同的組裝格式,設定複雜,不容易掌握。本技術的協議輔助學習實現方法通過建立協議命令參數表,對命令標識符進行匹配,確定該命令標識符對應的命令參數有哪些,各個參數在一個命令中的佔位如何,以及各個參數的取值範圍,生成隨機的示例性的目標命令,幫助學習人員學習。
42.接下來以具體實施例說明本技術的技術方案。
43.實施例1
44.如圖1所示,本技術的協議輔助學習實現方法包括以下步驟:
45.步驟s100,當讀取命令標識符時,確定需要進行轉換的目標協議,根據所述命令標識符以及所述目標協議,在預設的協議命令參數表進行匹配,尋找對應的命令參數。
46.本技術的協議輔助學習實現方法用於學員對sata命令協議轉換的學習,不同的命令,都會有各自的命令標識符,該命令標識符根據下發工具的不同而有所不同,例如對硬碟進行讀操作的命令,其命令標識符可以是「read」,也可以是經過自定義工具定義的「rd」等,這些命令標識符用來代表這些具體的sata命令。
47.目標協議指的是sata命令要轉換成哪種協議,例如轉換成sg_raw命令,而轉換成該命令的協議標準有多種,不同的協議標準下,所得到的命令也是不同的,因此在讀取命令標識符時,還會確定需要進行轉換的目標協議,以確定該命令需要遵循何種協議轉換。可以理解的是,這裡的目標協議可以自行設定,學員需要學習哪種協議轉換,便進行對應的選擇。
48.一個命令根據協議會有不同的組成方式和命令參數,命令參數有各自代表的含
義,並且按照協議規定,以一定的排序的位置組成了命令。
49.例如,某個命令是一個從硬碟上讀數據的命令,則該命令會需要目標地址、源地址、讀取類型等等需要設定的參數,以便硬碟在執行時可以按照這些參數運行。若該命令是一個存儲命令,則相較於上述舉例的參數,不會有源地址和讀取類型的命令參數。
50.因此本實施例中,為了使得命令標識符和各自的參數能對應起來,需要預先建立命令參數表。該命令參數表中記錄了各個命令字標識符。
51.具體該命令參數表如圖2所示。
52.command列記載有所有的命令標識符,data列則記載有和對應命令標識符相關的命令參數,以及各個命令參數所對應的取值範圍,表中命令標識符和命令參數的對應關係以及參數的取值範圍,都是根據協議的規定設立的,不同的協議下,有不同的這種命令參數表。
53.圖2中以85h為例,當程序讀取到用戶輸入的一個命令標識符後,會先在command列進行遍歷查詢,尋找到該命令後,就找到了和該85h相關的各個命令參數,即找到了feature、lba、count、devcie、length、type這些命令參數,這些命令參數的不同取值,可以表示該命令的不同效果和屬性。例如length表示該命令支持的28bit還是48bit,或者兩種都支持。lba可以標識該命令作用的地址等。
54.步驟s200,獲取各個命令參數的位置以及參數取值範圍,並按照所述取值範圍,隨機生成各個命令參數的參數值。
55.根據協議的規定,上述的命令參數如何排列組成轉換後的命令,是有具體的規定的,並不是將這些參數隨意拼湊起來就是一條有效的命令,且不同的命令參數,取值範圍不同,因此不同參數還會有不同的位數,不同參數的不同位數怎麼設置也需要按照協議規則設置,因此,會需要先確定各個命令參數的位置。
56.如圖3所示,為命令表,該命令表表示的是一個命令在一種協議下的組裝結構。
57.左邊的第一列byte\bit列,是表示命令的比特數,即命令的長度,圖中一共16行,則表示一個命令16個字節,右邊第一行的7至0表示每個byte (字節)的長度是二進位下的8位,往下的則是在每一位上所應該填寫的命令參數,以及對應該命令參數的位數。
58.例如標號為0的字節作為命令的首部,記載命令的命令標識符,例如標號為1的字節,可以用於記錄三個參數,其7、6、5位用於記載obsolete, 4、3、2、1位用於記載protocol,第0位用於記載extend參數。上述各個參數所表示的含義由協議規定,在此不做贅述。
59.後面的標號為3的字節中記錄的features(15:8)表示命令參數features的高8位數據需要記錄在該命令的標號為3的字節上,其他位置的參數表述以此類推,可以確定該命令每一位的數據來源與哪個參數的哪些位置。
60.每個參數有自己的取值範圍或者固定的參數值,如圖2中,length的值固定位48b,表示該命令支持48bit的形式,features的值為reserved,為字符形式的參數值,而lba參數的取值範圍是0-65535,則lba的取值不定且有範圍限定,有效參數只能在該範圍內選取,因此對於上述有固定值的參數,採取固定值為該命令參數的參數值,對於沒有固定值,有取值範圍的命令參數,從取值範圍內隨機選取一個值作為該命令參數的參數值。
61.步驟s300,將各個命令參數的參數值按照所述目標協議進行組裝,生成對應的目標命令。
62.獲取了各個命令的參數值後,將這些參數值,按照上述的命令表中的結構進行組裝,形成最終的目標命令。
63.對上述命令表中填入具體的參數值後,得到的命令表如圖4所示,可以理解的是,無論是數字還是字符,在計算機中都是以「0」「1」的二進位數存儲,例如英文可以通過acsii(american standard code for informationinterchange,美國信息交換標準代碼)碼進行轉換變成二進位數,二進位轉換成更方便的16進位數進行顯示表示。
64.則當輸入了命令字符85h後,本步驟得到的目標命令就是如下形式:
[0065]「85072d000100f1001000000000402500」[0066]
上述命令是最終的目標命令,因為其中的參數都是在取值範圍內的隨機數,因此得到的目標命令只是一個示例,通過和圖3圖4中的兩個命令表來展示一個命令根據協議轉化之後,每一位數據的組成跟含義。
[0067]
如圖5所示,為形成目標命令後,顯示給用戶的命令樣式。命令的每一個字節單獨成列,並且通過工具名稱列和下發盤符列來說明,當前生成的命令是依照怎樣的協議下發至什麼硬碟中的。其中,每一個字節上都設置了下拉列表的按鈕,用戶通過點擊該按鈕,可以得到該字節的解釋信息,說明該自己參數的意義、來源和取值範圍等。方便學員查閱,而不需要為了了解命令的組成,翻閱龐雜的協議說明書,便於對協議的理解。
[0068]
顯然,學習人員可以在短時間內,輸入多個不同的命令標識符,從而得到多個示例性的目標命令,通過每個命令的結構展示,掌握不同嗎命令結構特點,以及各個字節的參數來源與規則,節省翻閱協議說明等閱讀資料進行查閱的步驟。
[0069]
此外,硬碟從上電到和主機建立連接,再到主機和盤之間相互發送接收命令是一個複雜的過程,且根據sata協議,將整個傳輸結構分為5層,分別為應用層、命令層、傳輸層、鏈路層和物理層,其中,命令層包含於應用層,也可以認為是4層結構。
[0070]
一個命令從主機下發至碟片會經過這5層,每經過一層,命令的形態都會改變。以上述的目標命令為例,可以將該命令視為一個字符串組成的數據包,通過不同的層,會需要為該數據包增加特定的包頭包尾,或者去掉包頭數據等操作,因此一個命令從開始下發到下髮結束,會經過多次轉換操作,整個流程繁雜不易表述。主機與設備的應用層、傳輸層和鏈路層之間也可以進行邏輯交互,可見在不同的應用場景下,命令的傳輸方式多種多樣,傳輸路徑也會有所不同,因此命令在這些傳輸中的形態是有必要掌握的。
[0071]
本技術根據協議模型,以圖像的形式,展現命令在各個層之間傳輸時的變化。
[0072]
如圖6所示,為最簡單的傳輸情況,也是最外層的傳輸情況,即主機100向所連接的碟片200發送命令時的情況,在該最外層模型下,會顯示從主機發送給碟片的命令,但是不會顯示命令在各個層之間傳輸時的變化。
[0073]
如圖7所示,為相較於圖6為更細緻的命令傳輸圖,顯示了主機和碟片中各自的五層結構,對於主機和主機連接的碟片設備都是如此的五層模型,命令可以從主機下發至設備,也可以由設備發送給主機,形成命令交互。
[0074]
例如圖6的層級為1,圖7的層級為2,則在輸入了命令和層級後,根據層級數據,確定要給用戶顯示的傳輸圖像,例如輸入的層級是1,則顯示圖6。
[0075]
在外層圖中,可以通過點擊圖中的模塊進入更深層的圖像,例如點擊圖6中的主機,可以進入圖7中的傳輸圖,其中也可以單獨顯示主機一側的數據傳輸。在圖7中,就會顯
示命令在各層之間傳輸時的具體形態,並且還可以具體的點擊其中的傳輸路徑(圖中的箭頭),來看在該路徑上該命令轉換的詳細情況。
[0076]
本技術提供的協議輔助學習實現方法,通過讀取輸入的命令標識符,在命令參數表中匹配,以確定該命令的各個命令參數各個命令參數的取值範圍,從而可以生成示例性的目標命令。並且還通過圖像化的傳輸模型,對傳輸命令的傳輸過程進行細緻化的展現,使得學習人員可以直觀清楚的了解到sata命令協議傳輸過程的一系列變化,以及命令的組成結構原理,幫助學員可以快速的學習。
[0077]
實施例2
[0078]
如圖8所示,本技術還提供一種協議輔助學習實現裝置,包括:
[0079]
匹配模塊10,用於當讀取命令標識符時,確定需要進行轉換的目標協議,根據所述命令標識符以及所述目標協議,在預設的協議命令參數表中尋找對應的命令參數;
[0080]
參數生成模塊20,用於獲取各個所述命令參數的位置以及參數取值範圍,並按照所述取值範圍,隨機生成各個所述命令參數的參數值;
[0081]
命令組裝模塊30,用於將各個所述命令參數的參數值按照所述目標協議進行組裝,生成對應的目標命令。
[0082]
本技術還提供一種計算機終端,包括處理器和存儲器,所述存儲器存儲有電腦程式,所述電腦程式在所述處理器上運行時執行所述的協議輔助學習實現方法。
[0083]
本技術還提供一種可讀存儲介質,其存儲有電腦程式,所述電腦程式在處理器上運行時執行所述的協議輔助學習實現方法。
[0084]
在本技術所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,也可以通過其它的方式實現。以上所描述的裝置實施例僅僅是示意性的,例如,附圖中的流程圖和結構圖顯示了根據本發明的多個實施例的裝置、方法和電腦程式產品的可能實現的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用於實現規定的邏輯功能的可執行指令。也應當注意,在作為替換的實現方式中,方框中所標註的功能也可以以不同於附圖中所標註的順序發生。例如,兩個連續的方框實際上可以基本並行地執行,它們有時也可以按相反的順序執行,這依所涉及的功能而定。也要注意的是,結構圖和/或流程圖中的每個方框、以及結構圖和/或流程圖中的方框的組合,可以用執行規定的功能或動作的專用的基於硬體的系統來實現,或者可以用專用硬體與計算機指令的組合來實現。
[0085]
另外,在本發明各個實施例中的各功能模塊或單元可以集成在一起形成一個獨立的部分,也可以是各個模塊單獨存在,也可以兩個或更多個模塊集成形成一個獨立的部分。
[0086]
所述功能如果以軟體功能模塊的形式實現並作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基於這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟體產品的形式體現出來,該計算機軟體產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是智慧型手機、個人計算機、伺服器、或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、移動硬碟、只讀存儲器(rom, read-only memory)、隨機存取存儲器(ram,random access memory)、磁碟或者光碟等各種可以存儲程序代碼的介質。
[0087]
以上所述,僅為本發明的具體實施方式,但本發明的保護範圍並不局限於此,任何熟悉本技術領域的技術人員在本發明揭露的技術範圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護範圍之內。

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀