Skip to content

기글하드웨어기글하드웨어

커뮤니티 게시판 : 아주 기본적인 네티켓만 지킨다면 자유롭게 쓸 수 있는 커뮤니티 게시판입니다. 포럼에서 다루는 주제는 각각의 포럼 게시판을 우선 이용해 주시고, 민감한 소재는 비공개 게시판이나 수상한 게시판에, 홍보는 홍보/외부 사용기 게시판에 써 주세요. 질문은 포럼 게시판의 질문/토론 카테고리를 사용해 주세요.

image.png

붉은색 다각형 안의 회로를 전부 분석하는데 지난 9월부터 네달가량 걸렸습니다. 길지도 않고 짧지도 않네요.

 

image.png

이렇게, 칩 전체의 회로도를 작성한 후 베릴로그로 옮깁니다.

 

 

FM음원... DX7이라고 야마하 신디사이저에서 시작해서 80-90년대 많이 썼던 찡찡거리는 소리나는 칩입니다. 버블보블 게임 BGM이 되게 유명한데, 그것도 FM음원을 사용했지요.

 
제가 그 중에서 YM2151(OPM) 칩 전체를 이번에 리버스 엔지니어링하게 되었습니다. 이유는 기존 오픈소스 HDL 코어의 라이센스가 마음에 들지 않아서였어요. 
저는 요새 FPGA에 아케이드 게임을 원칩화해서 넣는 일을 취미로 하고 있는데, 기존에 있는 YM2151 HDL코어의 라이센스가 GPL라이센스였습니다. 근데 제가 GPL라이센스를 별로 안 좋아합니다. 제 코드를 공개하지 않는 것도 아닌데, 클로즈드 베타 중에도 일단 뭘 배포만 하면 코드 공개 의무가 붙는다는 건 굉장히 너무한 것 같았거든요. 
그래서 "꼬우면 니가 직접 해라" 정신으로 직접 만들었습니다. 게다가 기존 코어는 계측치와 남의 리버싱 데이터를 기반으로 제작한 건데, 저는 처음부터 끝까지 실리콘만 보고 만들었다는 큰 차이도 있고요.
 
원래 YM3812(OPL2), YM3438(OPN2C), YM2413(OPLL)등의 다른 시리즈의 칩들을 리버싱하고 싶었으나, 가장 근본이 되는 YM2151이라는 칩을 먼저 리버싱해 보았습니다. 근본이 되는 이유는, 이게 맨 처음 나온 FM음원의 원칩 설계여서 그렇습니다.
 
근데요, 인터넷에 FM음원의 원리에 대해 아주 많은 설명이 있고, 오픈소스 소스들도 많지만 정말 실제로 칩 안에서 무슨 일이 벌어지는지에 대해서는 잘 정돈된 설명이 전무했습니다. 거의 10년에 걸친 외국 포럼의 토론글, 소스에 적혀있는 파편화된 설명과 회로들, 아무런 지식도 없이 이것만 가지고 원리를 이해하긴 너무 어려웠습니다.
 
그래서 리버싱도 거의 다 끝나가는 이 시점에, 큰맘먹고 야마하 FM음원칩이 기본적으로 어떤 구조를 가지고 동작하나 글을 한번 써 보려고 합니다. 이해하기 위해서는 기초적인 논리회로 지식이 필요하나(게이트, 플립플롭, 가산기정도) 최대한 쉽게 써 보려고 합니다. 평소에 FM음원 좋아하는데 원리를 알고싶었다 하시는 분들이 계신지 궁금합니다.
 
 


  • ?
    laphir 2023.01.27 22:29
    선생님, fm음원이 아니라 도대체 칩을 어떻게 리버싱해서 소프트웨어로 에뮬레이션 하는지가 궁금합니다.
  • ?
    이카무스메 2023.01.27 22:35
    700nm공정까지는 편광 광학현미경으로 보면 뭔가 보여요. 트랜지스터랑 저항같은걸 식별할 수 있다면 디지털 회로를 이루는 구성 요소들을 그릴 수가 있어요. 그걸 전부 보고 회로도를 그립니다. 회로도가 있으면 동작을 분석할 수 있죠. 그걸 C든 자바든 아니면 하드웨어 기술 언어든 같은 동작을 하게 짜면 돼요.

    말은 쉬운데, 트랜지스터 종류에 따라 난이도도 천차만별이고, 90년대 초중반의 구공정 칩까지만 유효해요. 그 이후부터는 트랜지스터가 작아지고, 배선 층이 점점 많아지고(물리적으로 트랜지스터가 안 보입니다) 컴퓨터가 설계에 끼여들기 때문에 회로의 분석이 아주 까다로워집니다. 사람이 설계했다면 설계자의 의도를 파악하기 쉽지만 컴퓨터가 설계를 최적화했다면 컴퓨터가 왜 그딴 짓을 했는지 따라가기 아주 어렵습니다.
  • ?
    laphir 2023.01.27 22:37
    아니 선생님, 저는 그냥 “우와…” 밖에 말이 안나오는데요. 대단하십니다
  • profile
    T.Volt_45      Into the Unknown, Show Yourself !! // ThunderVolt_45 2023.01.27 22:30
    그런 고급스러운 정보는 언제나 환영입니다!
    근데 도대체 칩을 어떻게 리버싱해서 소프트웨어로 에뮬레이션 하는지도 궁금합니다...
  • profile
    가우스군      푸른 풍경속으로..... 2023.01.27 22:32
    리버싱 엔지니어링이 이젠 취미로 해 볼 만한 세상이 왔군요 ㄷㄷ
  • ?
    title: 삼성uss0504 2023.01.27 22:32
    무슨 이야기인진 알겠지만 이걸 하려는것 자체가 굇수에요...
  • ?
    title: 민트초코고토_히토리      봇치 더 락! 2기 기원 / 2700X + 6700 XT Owner 2023.01.27 22:38
    진정한 능력자... 대단하십니다 ㄷㄷ
  • profile
    title: 몰?루호시노이치카      자, 부탁드립니다! / 블로그 https://randomstar.blog 2023.01.27 22:45
    진정한 능력자이시군요.
    사실 전부터 느껴왔었던 거지만, 보면 볼수록 대단하다는 말밖에 안 나옵니다.
  • profile
    쿤달리니 2023.01.27 22:55
    완벽하게 이해했어요..!
    다음 강의까지 게이트, 플립플롭, 가산기 공부해오면 되는거죠?
  • ?
    이카무스메 2023.01.27 23:00
    오 읽어주시면 감사하죠
  • profile
    title: 명사수가네샤      https://924717.tistory.com/ 2023.01.27 23:35
    와....오실때마다 엄청난걸 들고 오시는군요 ㄷㄷ
  • ?
    므시므시      닉네임만 이렇지 MSI와 별다른 관계는 없습니다(핳핳) 2023.01.27 23:37
    이런 정보는... 귀하군요....
    기대하고 있겠습니다!
  • profile
    Induky      자타공인 암드사랑 정회원입니다 (_ _) 2023.01.27 23:37
    오실때마다 놀라운걸 가져오시네요 ㄷㄷㄷ
  • profile
    title: AINormie 2023.01.28 00:19
    FM 라디오 같은데 쓰이는 변조기를 생각했는데 다른 물건인가 보네요. 흔히 8비트 음악이라 하는 고전게임에서 뿅뿅거리는것 같은 소리를 만들어내는 역할을 하는 것인가요...
  • profile
    title: 컴맹픔스      2018년도 비봉클럽의 해 2023.01.28 00:19
    평소 YM2608(OPNA)에 관심 있게 살펴보고는 했는데, 이걸 리버스 엔지니어링 시도할 생각은 사실 아무도 없었을 겁니다. 매번 대단하시네요.
  • profile
    qua1121      대학원 후 스타트업의 길을 걷습니다. 날 죽여줘... 2023.01.28 00:24
    귀한 분이시다.
  • profile
    霊夢      레무/연약한 대학생 Nikon FE2 35/2 1480일차 2023.01.28 00:42
    와 20세기 청계천의 기운이 느껴져요
  • profile
    천군낙원 2023.01.28 01:45
    어..음... 보물지도 같은 건가요.
    이젠 놀라다못해 작성자 닉네임보면 끄덕하게 만들어지는게 무섭습니다.
  • profile
    이유제 2023.01.28 03:13
    아니 이게왜 취미....
    https://youtu.be/n5tGhY5t5yI
  • profile
    유지니1203 2023.01.28 10:24
    우와...능력자...대단하십니다 ㄷㄷㄷ
    기대됩니다!!
  • profile
    캐츄미      5700g, 5800x, 5950x 2023.01.28 10:32
    옛날 애드립 같은건가요? 기대됩니다 ㅎㅎ
  • profile
    title: 명사수AZUSA      збройовий завод 2023.01.28 10:36
    전부 이해했어(이해못했음)
  • profile
    title: 명사수린네      Someday out of the blue 2023.01.28 10:53
    와... 대단하십니다. 어떻게든 컴공과 들어가려고 하는중인데(그래서 재수행 당첨) 언젠가 들어가서 기초 배우면 꼭 이해하려고 노력해보겠습니다ㄷㄷㄷㄷㄷ...
  • profile
    K_mount      고양이 확대중,. 2023.01.28 12:54
    (뭔지 모르겠으니 그냥 가만히 있어야겟다)
  • ?
    렉사 2023.01.28 13:27
    와......감탄만 나오네요.
  • ?
    waterblue 2023.01.28 14:10
    대단합니다. 질문이 몇개 있습니다.
    혹시 die 몇층인가? 사진은 one metal one poly 처럼 보이기도 하는데요?
    schematic는 무슨 툴로 작업하셨는지요? 그리고 die photo도 무슨 툴로 작업하시는지요?
    앞으로 강좌 잘 부탁드립니다.^^
  • ?
    이카무스메 2023.01.28 23:50
    아주 정확하십니다. 메탈 1층 폴리 1층입니다. 야마하가 이상하게 90년대 초반까지 메탈 2층을 잘 안 썼습니다. 아마 광학현미경으로 작업할 수 있는 최고 범위는 600배로 확대해서 메탈 3층 폴리 1층까지같습니다.
    대부분의 80-90년대 초 가성비 공정이었던 칩들이 메탈 2층 폴리 1층인데, 메탈이 너무 빽빽해서 불산으로 에칭해서 폴리실리콘 모양을 봐야 하는 경우를 제외하고는 무난하게 decap만으로 리버싱 가능한 것 같습니다.

    회로도는 Kicad 6.0에 커스텀 심볼을 만들어서 사용중입니다. Netlist랑 연계하여 타 툴을 사용하고 있지는 않습니다.

    다이샷 위에 주석 달고 게이트 표시하는 건 잉크스케이프를 사용하고 있습니다. 아주 편리하네요.
  • ?
    waterblue 2023.01.30 13:59
    친절한 답변 감사드립니다.. ^^ 언젠가 저도 한번 시도해보고 싶네요..~ㅋㅋ
  • profile
    Adora27 2023.01.28 15:21
    하드웨어를 좋아하시는 분들은 대부분 관심을 가질 주제같아요. 평소 글도 잘보고 있었는데 강의글은 오랜만인거같네요 기대됩니다!
  • profile
    veritas      ლ(╹◡╹ლ)  2023.01.28 15:49
    칩 내부 트랜지스터급 레벨에서 YM3812를 통으로 에뮬레이션할 수 있는 그날이 오..겠죠?
  • ?
    염발 2023.01.28 17:54
    이.. 이게 뭐지..?
  • ?
    볶은완두콩 2023.01.28 19:42
    굇수시군요

작성된지 4주일이 지난 글에는 새 코멘트를 달 수 없습니다.


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 이벤트 [23일] 마이크로닉스 MA-600T 쿨러를 드립니다 14 file 낄낄 2024.04.17 574
70581 핫딜 [핫?딜] LEVEN JS600 SSD 2TB 장바구니 쿠폰시 98270 7 file 360Ghz 2023.01.28 944
70580 잡담 생긴 건 20년 전 노트북같은 물건 50 file title: 부장님유니 2023.01.28 8858
70579 잡담 바보괭이님의 지름에 도움 안되는 뻘글. 16 file K_mount 2023.01.28 488
70578 장터 부품용 전동킥보드 판매합니다. 5만원 5 file 가지 2023.01.28 666
70577 잡담 로봇청소기의 단점 5 file 공탱이 2023.01.28 776
70576 잡담 요즘 카메라 생각이 너무 머릿속에 가득하군요 10 title: 오타쿠바보괭이 2023.01.28 407
70575 잡담 nsys님께서 나눔하신 2683v3 CPU 택배 잘 받았습니다 2 file 야간순찰™ 2023.01.28 355
70574 잡담 일본 맥도날드 사무라이맥 후기 4 file title: 부장님유니 2023.01.28 4294
70573 퍼온글 아내를 위해 TV 자가 수리에 도전한 스윗남 8 file cowper 2023.01.28 848
70572 잡담 희귀한 DAC가 왔습니다. 6 file title: 민트초코고토_히토리 2023.01.28 1114
70571 장터 MSI B660M 박격포 DDR5 풀박스 팝니다. file T.Volt_45 2023.01.28 498
70570 잡담 현대차가 진짜 굉장히 못하는거 54 file veritas 2023.01.28 4792
70569 잡담 마우스 폴링레이트가 성능에 영향을 미칠 수가 있... 22 Adora27 2023.01.28 6335
70568 퍼온글 한국이 일본화 되가고 있는게 너무 안타깝다. 16 file title: 가난한AKG-3 2023.01.28 1369
70567 잡담 전주에 왔어요 14 file 냐아 2023.01.28 397
70566 잡담 오랫만에 포낙 이어폰 꺼내 봤네요. 20 file 雨日 2023.01.28 805
70565 잡담 이번엔 튀김이 최강 돈베이 카키아게 소바 컵라면 8 file title: 부장님유니 2023.01.28 1096
70564 장터 (업데이트) 새해맞이 창고 대방출 4 file Astro 2023.01.28 1087
70563 잡담 며칠전 핫딜로 올라온 게임 타이탄폴2 굉장하네요 9 file title: AI아즈텍 2023.01.27 857
» 잡담 FM음원 구조분석 관심있으신 분 계신가요? 32 file 이카무스메 2023.01.27 1011
70561 핫딜 [핫?딜] UE600 [28750원] 9 file 360Ghz 2023.01.27 838
70560 퍼온글 미국에서 반려견이 주인을 쏴 사망 16 타미타키 2023.01.27 1217
70559 잡담 크롬 바이 두리 2023.01.27 450
70558 잡담 [잡담] 진열상품 주워오기 file title: 컴맹임시닉네임 2023.01.27 553
70557 잡담 듀얼 모니터 셋업 고민이네요 10 file title: 저사양DoTheJihun 2023.01.27 641
70556 잡담 겨울이 다 되어야 솔이 푸른 줄 안다고 하죠. 8 file title: 부장님유니 2023.01.27 468
70555 잡담 소비자원 후라이팬 테스트에서 테팔이 구린 이유... 7 file 슈베아츠 2023.01.27 1991
70554 퍼온글 30일부터 은행 영업시간 정상화...오전 9시∼오후 4시 5 cowper 2023.01.27 1835
70553 퍼온글 29살을 15살로 속일 수 있군요. 12 file 타미타키 2023.01.27 1078
70552 잡담 요코하마에서 볼만한 것들.. 4 file title: 부장님유니 2023.01.27 414
목록
Board Pagination Prev 1 ... 428 429 430 431 432 433 434 435 436 437 ... 2785 Next
/ 2785

더함
MSI 코리아
한미마이크로닉스
AMD

공지사항        사이트 약관        개인정보취급방침       신고와 건의


기글하드웨어는 2006년 6월 28일에 개설된 컴퓨터, 하드웨어, 모바일, 스마트폰, 게임, 소프트웨어, 디지털 카메라 관련 뉴스와 정보, 사용기를 공유하는 커뮤니티 사이트입니다.
개인 정보 보호, 개인 및 단체의 권리 침해, 사이트 운영, 관리, 제휴와 광고 관련 문의는 이메일로 보내주세요. 관리자 이메일

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소