κΉμ μ
νμΈλνκ΅ 22νλ² μ»΄ν¨ν°κ³΅νκ³Ό
νμΈλνκ΅ 22νλ² μ»΄ν¨ν°κ³΅νκ³Ό
CRC(Cyclic Redundancy Check)λ λμ§νΈ ν΅μ λ° λ°μ΄ν° μ μ₯ λΆμΌμμ μ€λ₯ κ²μΆμ μν΄ λ리 μ¬μ©λλ μ½λμ
λλ€.
μ‘μ μΈ‘μμ λ°μ΄ν° λΉνΈμ€νΈλ¦Όμ νΉμ ν μμ± λ€νμ(Generator Polynomial)λ‘ λλμ
(Modulo-2 Arithmetic)μ μνν΄ λλ¨Έμ§(R, FCS)λ₯Ό ꡬν ν, μ΄λ₯Ό λ°μ΄ν° λ€μ λΆμ¬ μ μ‘νλ©°, μμ μΈ‘μμλ λμΌν μμ± λ€νμμΌλ‘ κ²μ¦νμ¬ μ€λ₯λ₯Ό νλ³ν©λλ€.
1οΈβ£ λ°μ΄ν°(Message, M) μ€λΉ
2οΈβ£ λ°μ΄ν° λ€μ μμ± λ€νμ P(x)μ μ°¨μ(n)λ§νΌ 0μ λΆμ
T = M Γ 2βΏ
3οΈβ£ Modulo-2 λλμ μν
T Γ· P(x) = Q (λͺ«), R (λλ¨Έμ§)
4οΈβ£ μ μ‘ λ°μ΄ν° μμ±
T* = T + R
1οΈβ£ T* μμ ν λμΌν P(x)λ‘ λλμ μν**
T* Γ· P(x) = Q', R'
λ°μ΄ν° μ μ‘ μ€ λ¨μΌ λΉνΈκ° λ€μ§νλ μ€λ₯(μ: 1β0 λλ 0β1)κ° λ°μνλ©΄ μ€λ₯ λ€νμ E(x)=xα΅λ‘ λνλΌ μ μλ€.
T*' = T* + E(x)
(T*' Γ· P(x)) = (T* Γ· P(x)) + (E(x) Γ· P(x)) = 0 + (E(x) Γ· P(x))
β CRCλ λ¨μΌ λΉνΈ μ€λ₯λ₯Ό 100% κ²μΆνλ€.
CRC λ€νμμ ꡬ쑰μ λ°λΌ 2λΉνΈ, 3λΉνΈ μ€λ₯ κ²μΆλ ₯μ΄ κ²°μ λλ€.
β CRCμ μ€λ₯ κ²μΆ λ₯λ ₯μ μμ± λ€νμ P(x)μ μ€κ³μ λ¬λ €μλ€.
μ΄λ¬ν λ€νμλ€μ IEEE, ITU λ± νμ€ν κΈ°κ΄μμ μ€λ₯ κ²μΆ μ±λ₯μ μνμ μΌλ‘ λΆμν ν μ±νλ κ²μ΄λ€.
| λ¨κ³ | μμ |
|---|---|
| μ‘μ λ°μ΄ν° μ€λΉ | T = M Γ 2βΏ |
| λλ¨Έμ§ κ³μ° | R = T mod P(x) |
| μ μ‘ λ°μ΄ν° | T* = T + R |
| μμ μ κ²μ¦ | T* Γ· P(x) = Rβ |
| μ€λ₯ νλ³ | Rβ = 0 β μ μ, Rβ β 0 β μ€λ₯ |
β
CRCλ Modulo-2 μ°μ°μ μ¬μ©νμ¬ λ°μ΄ν° μ μ‘ μ€ λ°μν μ μλ λ¨μΌ λΉνΈ μ€λ₯, λ€μ€ λΉνΈ μ€λ₯(2λΉνΈ, 3λΉνΈ) λ° Burst Errorλ₯Ό κ²μΆνλ κ°λ ₯ν λ°©μμ΄λ€.
β
CRCκ° μ€λ₯λ₯Ό μ κ²μΆνλ μ΄μ λ μμ± λ€νμ P(x)λ₯Ό μ΄λ»κ² μ ννλλμ λ¬λ €μμΌλ©°, νμ€ CRC λ€νμμ μ΄λ¬ν μ€λ₯ κ²μΆ λ₯λ ₯μ κ·Ήλννλλ‘ μ€κ³λμλ€.
β
λ°λΌμ CRCλ λ€νΈμν¬ ν΅μ , λ°μ΄ν° μ μ₯ μ₯μΉ, 무μ ν΅μ λ±μμ λ°μ΄ν° 무결μ±μ κ²μ¦νλ λ° λ§€μ° μ€μν μν μ μννλ€.
νμνλ€λ©΄ μ€μ μμ (Modulo-2 λλμ )λ νΉμ CRC λ€νμ μ€κ³ κ³Όμ κΉμ§ μμΈν μΆκ°λ‘ λ€λ£° μ μμ΄μ. μΈμ λ λκΈμ΄λ λ¬Έμμ£ΌμΈμ! π