산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial Internet of Things >> 임베디드

바이너리, 그레이 및 원-핫 인코딩 비교

이 기사는 FPGA에서 상태 머신을 구현하기 위해 바이너리, 그레이 및 원-핫 인코딩을 사용한 결과의 구현 비교를 보여줍니다. 이러한 인코딩은 종종 합성 및 구현 도구에 의해 평가되고 적용되므로 소프트웨어가 이러한 결정을 내리는 이유를 아는 것이 중요합니다.

유한 상태 기계(FSM)는 거의 모든 디지털 시스템의 매우 일반적인 부분입니다. 이것이 바로 합성 도구가 FSM을 감지하고 상태 인코딩을 수정할 수 있는 최적화를 수행하기 위해 코드를 검사하는 이유입니다. 소스 코드에서 상태를 구현하는 값을 신중하게 선택하고 지정했다면 합성 도구는 해당 값을 원래 인코딩과 비트 길이가 다른 값으로 대체할 수도 있습니다.

Verilog에서 상태 머신을 구현하는 방법에 대해 자세히 알아보려면 Verilog에서 유한 상태 머신 만들기라는 제목의 제 기사를 읽어야 합니다.


상태의 인코딩:회색 대 이진 대 원-핫

FSM 상태에 대해 가장 널리 사용되는 세 가지 인코딩은 바이너리, 그레이 및 원-핫입니다.

이진 인코딩

이진 인코딩은 상태에 순차적으로 값을 할당할 때 직관적으로 사용할 수 있는 간단한 방법입니다. 이렇게 하면 상태를 인코딩하는 데 가능한 한 적은 수의 비트를 사용하게 됩니다.

원 핫 인코딩의 예. Steve Arar의 이미지

회색 인코딩

그레이 코드는 한 값과 다음 값 사이에서 단 하나의 비트만 변경되는 시퀀스로 구성됩니다. 최소 비트 수를 사용하는 것 외에도 이 인코딩은 상태 시퀀스를 최적으로 따를 경우 동적 전력 소비를 최소화합니다.

회색 코드 휠. Marie Christiano의 이미지

원-핫 인코딩

마지막으로, 원-핫 인코딩은 각 상태를 나타내는 하나의 비트를 사용하는 것으로 구성되어 어느 시점에서든 상태는 현재 상태를 나타내는 비트에서 1로, 다른 모든 비트에서 0으로 인코딩됩니다. 이것은 사용된 비트 수와 잘못된 상태의 과도한 수로 인해 처음에는 그다지 효율적이지 않은 것처럼 보일 수 있습니다. 그러나 원-핫 인코딩은 상태를 디코딩할 필요가 없기 때문에 플립플롭에 대한 자극 논리를 단순화하는 데 매우 좋습니다. 비트는 다음과 같습니다 상태.

원 핫 인코딩의 예. Steve Arar의 이미지

상태 인코딩에 대한 자세한 내용은 Steve Arar의 Encoding States of the States of the Finite State Machine in VHDL 문서를 참조하세요.

어떤 인코딩이 가장 좋습니까?

이것은 어려운 질문입니다. 대부분 각 인코딩에는 장점과 단점이 있기 때문에 많은 요인에 따라 최적화 문제가 발생하기 때문입니다.

<울>
  • 매우 단순한 시스템이 여러 인코딩에서 매우 유사한 결과를 산출한다면 원래 인코딩이 최선의 선택입니다.
  • FSM이 카운터와 같은 하나의 경로에서 상태를 순환하는 경우 그레이 코드가 매우 좋은 선택입니다.
  • FSM에 임의의 상태 전환 세트가 있거나 고주파수에서 실행될 것으로 예상되는 경우 원-핫 인코딩을 사용하는 것이 좋습니다.
  • 이제 이러한 모든 주장은 교육받은 추측일 뿐이며 최적의 상태 할당을 찾는 것은 복잡한 문제입니다. 이 때문에 내 공식 조언은 컴파일러가 결정하도록 하는 것입니다. 즉, 세 가지 다른 개발 도구와 세 가지 상태 머신에서 이 세 가지 인코딩에 대한 결과를 비교하기로 결정했습니다.

    다음 기사에서는 실험 결과에 대해 논의하겠습니다.


    임베디드

    1. 300, 400 및 500 시리즈 강철 비교
    2. 8진수 및 16진수 계산
    3. 이진 덧셈
    4. 이진법 뺄셈
    5. C++의 구조 및 클래스
    6. 6 시그마와 린 제조 비교
    7. 어떤 인코딩 유형을 사용해야 합니까? FPGA 애플리케이션의 예
    8. 모스 부호와 이중 갈취:오늘날의 맬웨어 현황
    9. EDM 및 CNC 기계 화재 방지:옵션 비교
    10. 회주철 특성 및 등급 설명