빨리 · CHAPTER 05

2비트 4상과 FPGA 안착

빨리읽기판 · 칸마다 주장 하나, 숫자 하나, 증거 하나.

---

결론부터

2비트 두 개로 4상(음·옴·티·타)을 완전히 표현할 수 있으며, 크(Cr1=2.75)와 카(Ka1=0.375)는 곱셈 없이 비트 시프트만으로 1클럭에 연산됩니다. 이 두 상수는 FPGA 칩에 영구 하드웨어 상수로 새겨지고, 발생하는 오차는 음(Um) 버퍼가 자동 흡수합니다.

---

2비트 → 4상 인코딩

주장: 비트 수가 에너지 수준과 1:1 대응한다.

2비트상역할
00음(Um)기저·버퍼 바다 (에너지 최저)
01옴(Om)중립·대기
10티(Ti)팽창·+1 방향
11타(Ta)수축·−1 방향

숫자: 4가지 상태, 2비트. 증거: 모든 데이터 헤더 첫 2비트로 FPGA가 즉시 방향을 판정 — 추가 디코딩 사이클 없음.

---

크(Cr1) FPGA 안착값: 2.75

주장: 이상값 e≈2.71828 대신 2.75를 선언하면 곱셈 게이트가 0개 필요하다.

2.75 = 10.11 (이진 소수)
     = x + (x >> 1) + (x >> 2)

숫자: 오차 = 2.75 − 2.71828 = +0.0318. 증거: 3회 비트 이동 + 2회 덧셈 = 1클럭 완료. 오차 +0.0318은 음 버퍼로 라우팅.

---

카(Ka1) FPGA 안착값: 0.375

주장: 이상값 1/e≈0.36788 대신 0.375를 선언하면 역시 곱셈 없이 처리된다.

0.375 = 0.011 (이진 소수)
      = (x >> 2) + (x >> 3)

숫자: 오차 = 0.375 − 0.36788 = +0.0071. 증거: 2회 비트 이동 + 1회 덧셈 = 1클럭. 오차 +0.0071도 음 버퍼 흡수.

---

오차 처리 — 음 버퍼 라우팅

주장: 오차를 '모른다'고 방치하지 않고, 갈 곳을 설계에 명시한다.

  • Cr1 파생오차 +32(×1000 고정소수점 기준)
  • Ka1 파생오차 +7(×1000 고정소수점 기준)
  • 두 오차 모두 Layer 0(음, 00) 버퍼로 즉시 덤프.

숫자: 음 버퍼 파생 +32 / +7. 증거: 사상인코더.한선 47줄 컴파일·실행 검증 완료. FPGA RTL 크라우니시프트.v iverilog 12/12 PASS, yosys 298셀 0 problems.

---

하드웨어 상수로 영구 확정

주장: 2.75와 0.375는 실행 중 계산하는 값이 아니라 칩 배선에 새겨진 상수다.

  • 부동소수점 곱셈기: 0개 필요
  • 0.1 + 0.2 ≠ 0.3 같은 부동소수점 오차 구조적 제거
  • 오차 행선지가 설계 단계에서 확정됨

숫자: 부동소수점 곱셈기 0개. 증거: rtl/크라우니시프트.v crowny_shift 모듈 — 티=x+x≫1+x≫2, 타=x≫2+x≫3, err_x1000 포트가 음 파생 오차를 별도 출력.

---

요약 수치표

항목이상값FPGA 선언값이진분수음버퍼 파생
Cr12.71822.7510.11+0.0318
Ka10.36780.3750.011+0.0072

연산 예) V=15.7 → 프레임 20(Cr3 올림) / 깃든수 15(내림) / 음 5(덤프).

내 맘 –

독자 게시판 — 함께 읽고 남기는 곳

불러오는 중…

크라우니 책방에 가입하고 무료로 읽기

첫 번째 책은 선물이에요. 가입하면 100맘을 드리니까, 두 번째 책부터 자유롭게 읽을 수 있어요. 친구를 추천하면 50맘도 생겨요.