aes晶片內部劃分為四個模組(Module),分別是資料控制模組(Data Controller)、金鑰擴充套件模組(Key Expand)、加密模組(Encryption)、解密模組(Decryption)。 資料控制模組:負責AES晶片內部時序控制、資料傳遞,是整個晶片運作的中樞,實現輸入/輸出資料的串並轉換及狀態控制,透過MODE訊號控制選擇加密模組還是解密模組工作,並按照工作模組排程儲存金鑰與明(密)文分組資料。
金鑰擴充套件模組:負責擴充套件初始金鑰,生成輪金鑰,並存儲下來,供資料控制模組排程。
加/解密模組:內部按照AES加密輪函式實現方案設計,每輪加/解密消耗一個時鐘,加上輸入分組資料佔用時鐘,共消耗12個時鐘完成一次加/解密。
key_expand 模組按照演算法方式,以四個位元組為單元進行擴充套件變換,每個位元組輸入是上個單元進過SubByte、異或輪常數等操作得到的輸出結果,迴圈變換,直至擴展出所有輪金鑰為止,擴充套件過程中使用暫存器儲存輪金鑰。
data_controller模組包含晶片電路主狀態機,透過判斷輸入控制管腳值,切換不同工作頻率,控制晶片介面時序及內部電路的串並轉換、金鑰分配、加解密資料搬運等
aes晶片內部劃分為四個模組(Module),分別是資料控制模組(Data Controller)、金鑰擴充套件模組(Key Expand)、加密模組(Encryption)、解密模組(Decryption)。 資料控制模組:負責AES晶片內部時序控制、資料傳遞,是整個晶片運作的中樞,實現輸入/輸出資料的串並轉換及狀態控制,透過MODE訊號控制選擇加密模組還是解密模組工作,並按照工作模組排程儲存金鑰與明(密)文分組資料。
金鑰擴充套件模組:負責擴充套件初始金鑰,生成輪金鑰,並存儲下來,供資料控制模組排程。
加/解密模組:內部按照AES加密輪函式實現方案設計,每輪加/解密消耗一個時鐘,加上輸入分組資料佔用時鐘,共消耗12個時鐘完成一次加/解密。
key_expand 模組按照演算法方式,以四個位元組為單元進行擴充套件變換,每個位元組輸入是上個單元進過SubByte、異或輪常數等操作得到的輸出結果,迴圈變換,直至擴展出所有輪金鑰為止,擴充套件過程中使用暫存器儲存輪金鑰。
data_controller模組包含晶片電路主狀態機,透過判斷輸入控制管腳值,切換不同工作頻率,控制晶片介面時序及內部電路的串並轉換、金鑰分配、加解密資料搬運等