LFSR 的多項式表示法
我跟隨Christof Paar 關於線性回饋移位寄存器的講座。他將結構連貫地解釋為一組觸發器,其中“抽頭”由位向量定義(0 表示該觸發器上沒有抽頭,1 表示該觸發器上有抽頭)。這對我來說很有意義。
但隨後他提出,人們將 LFSR 描述為不是一組觸發器和一個用於定義抽頭的位向量,而是一個多項式方程。
我不明白這個多項式表示試圖做什麼。
P(x) = x^4 + x + 1
將代表一個由 4 個觸發器組成的網路,最右邊的兩個被“輕敲”以異或到新位。價值
P(x)
應該是多少?事實上,我什至不確定x
價值是多少。對我來說還有更多的謎團:(1)最右邊的觸發器用 1 表示。這是 的簡寫x^0
嗎?(2)x^4
術語….四個觸發器標記為 0,1,2,3。那麼為什麼要使用四次冪呢?讓我想知道這個“方程式”是否真的不是您希望發出使用值的方程式,而是某種手動方式來描述 LFSR 的架構?
什麼是價值 $ P(x) $ 應該是?
沒有什麼。我們對多項式的係數感興趣 $ P(x) $ , 僅限於布爾值 $ {0,1} $ . 這些係數反映了 LFSR 的佈線。對於其他多項式,它們可以反映 LFSR 的狀態。我們很少¹需要評估那個多項式 $ P(x) $ ,或我們使用的其他多項式,用於特定值 $ x $ ,甚至指定集合 $ x $ 屬於。考慮到 $ x $ 作為一個未指定的變數,無論是整數 $ \mathbb Z $ , 有理數 $ \mathbb Q $ , 真實的 $ \mathbb R $ , 配合物 $ \mathbb C $ ,如你所見;並根據代數的標準規則自信地對此類多項式進行算術運算,修改為 $ 1+1=0 $ (等效地,通過減少多項式的所有係數模 $ 2 $ ).
最右邊的觸發器表示為 $ 1 $ . 這是簡寫嗎 $ x^0 $ ?
是的。我們寫作的另一個原因 $ 1 $ 是為了避免必須定義 $ 0^0 $ .
四個觸發器被標記 $ 0,1,2,3 $ . 那麼為什麼要使用四次冪呢?
四度學期僅在 $ P(x) $ ,它代表 LFSR 的接線,而不是它的觸發器的狀態。在處理狀態時,它將由多項式表示 $ S(x) $ 最多三級。
另外:當我們以多項式為模減少任何多項式時 $ P(x) $ , 其餘的 $ S(x) $ 度數嚴格低於 $ P(x) $ ,因此它的係數(通常是 LFSR 的新狀態)適合四個觸發器。
另一種看待它的方式是 $ x^4 $ 在 $ P(x) $ 對應於當我們移位一位時從移位寄存器中取出的位(相當於將狀態乘以 $ x $ ),而其他位對應於每個觸發器的新狀態的調整。
讓我想知道這個“方程式”是否真的不是您希望發出使用值的方程式,而是某種手動方式來描述 LFSR 的架構?
的確, $ P(x) $ 是關於LFSR的架構。多項式的表示 $ P(x) $ 對於建築和 $ S(x) $ for state 有助於建立 LFSR 的屬性。特別是,對於伽羅瓦形式的 LFSR,狀態每 $ S_{i+1}(x)=S_i(x),x\bmod P(x) $ , 從中得出 $ S_i(x)=S_0(x),x^i\bmod P(x) $ .
注意:這裡, $ \bmod $ 產生每個多項式除法的餘數,同樣使用布爾值中的係數。
¹ 例外:評估 $ P(x) $ 在 $ x=1 $ 在布爾值中,或 $ x=2 $ 對於整數,偶爾會產生有趣的值。