정이십면체의 각 면은 작은 삼각형으로 나뉩니다. 그 작은 삼각형 하나가 타일입니다. 현재 설정은 타일 한 변을 다시 32개로 나누고, 그 안의 더 작은 삼각 셀마다 색을 저장합니다.
면 안의 7·7·7·8 분할
한 면은 타일 한 변에 각각 7개, 7개, 7개, 8개가 놓이는 네 영역으로 나뉩니다. 각 영역의 타일 수는 49개, 49개, 49개, 64개이고, 합하면 면당 211개입니다.
면당 타일 = 7² + 7² + 7² + 8² = 211
전체 타일 = 20 × 211 = 4,220
타일당 작은 삼각 셀 = M²
M=32 → 타일당 1,024셀, 전체 4,321,280셀
7·7·7·8 분할에서 생기는 삼각형이 타일입니다. 각 타일을 다시 M개씩 나눠 생기는 작은 삼각형이 색을 저장하는 셀입니다. M을 두 배로 늘리면 타일당 셀 수는 네 배가 됩니다.
현재 해상도와 확장
| M | 타일당 셀 | 전체 셀 | 설명 |
|---|---|---|---|
| 8 | 64 | 270,080 | 분할 수가 적은 설정 |
| 16 | 256 | 1,080,320 | 기존 M=16 배포 경로 |
| 32 | 1,024 | 4,321,280 | 현재 검증된 두 투영코어 구성 |
출력 코어는 M=8·16·32를 지원하며 현재 검증 경로는 M=32입니다. 전체 셀 수는 M=16의 네 배지만 정상 갱신에서는 변경된 타일만 투영·합성·전달합니다. 앱 글꼴을 그대로 둔 채 M만 올려서는 글씨가 자동으로 선명해지지 않습니다.
타일 내부 셀 인덱스
BS25는 셀 데이터를 DDR에 두므로 M=32의 전체 4,220타일 장면을 패킹할 수 있습니다. 이 장면은 팔레트·디렉터리와 정렬을 포함해 1,084,800워드입니다. 현재 M=32 경로는 보드에서 증분 갱신과 HDMI 출력을 검증했습니다. 장면 버퍼 하나는 4,339,200 bytes이며 HDMI 화면 버퍼와는 별개입니다. 자세한 캐시 구성은 출력 코어 RTL에서 설명합니다.
타일 안의 셀 주소는 행 순서로 정합니다. 각 행에서 서로 반대 방향을 향한 삼각형이 번갈아 나타나며, 행 끝에는 한 방향의 삼각형만 남습니다.
cell_index = row² + 2 × column + orientation
row = 0 … M-1
orientation = 0 또는 1 (행 마지막은 하나만)
출력 코어는 화면 픽셀의 방향으로 면, 타일, 셀을 차례로 찾습니다. 그 결과를 정사각형 이미지 좌표로 바꾸지 않고 삼각 셀 주소로 사용합니다.
원본: 출력 코어 배열 정의, 장면 패킹 코드.