1984년에 설계해서 1985년에 나온 3um공정의 야마하 게이트 어레이입니다.
저 칩을 완전히 리버스엔지니어링 할 일이 있어서 하고 있는데, 잉크스케이프로 셀 이름이랑 배선을 표시해가면서 작업중입니다.
그런데, 이 칩을 생산한 야마하 LSI사업부가 좀 하꼬였는지 1985년에도 3um 공정에 메탈층이 하나인 칩을 주력으로 설계하고 있었습니다. 심지어 NMOS도 만들었었다니까요. (이걸로 FM음원칩을 다 만들었는데, 그걸로도 충분했었나봐요) 오히려 역으로 트랜지스터 크기가 크고 메탈층이 겹치는 일이 없어서 회로 보기는 쉽네요.
원래는 OpenCV+파이썬으로 셀 매핑 프로그램을 만드려고 했었는데, 지금껏 야마하 게이트 어레이는 이거 한 개밖에 못 봐가지고 그냥 셀 목록을 만들어주고 직접 대조해가면서 셀을 매핑중입니다. 표를 만들어놨지만 유니크한 셀은 4-5개고, 나머지는 단순 게이트들이라 실제로는 굳이 대조하지 않고 바로바로 게이트 식별해가면서 작업할수가 있네요.
원랜 저 칩이 달려있는 기판이 200만원정도 해가지고 이 돈을 어떻게 마련하나 전전긍긍 했었어요. 사실, 저 칩을 뚜따해도 게이트 어레이가 아닌 스탠다드 셀 ASIC라거나, NMOS거나, MCM구조거나 MCU가 들어있으면 참 리버스엔지니어링 하기 애매해지기 때문에 더 주저했었습니다.
그런데 운이 참 좋았죠, 제가 작년 말에 저기 스페인에 사는 MAME개발자가 칩 뚜따하라고 뚜따 전문가한테 칩 기부를 한 걸 발견하게 되었습니다. 목록에 올라와있더라구요. 이게 웬 떡이냐, 손안대고 코풀기라고 생각을 했지요.
하지만 그냥 그렇게 둬 버리면 작업이 세월아네월아 되든가, 그냥 저해상도 이미지만 올라오는 상황이 될 수가 있어서, 약간 투자도 좀 할 겸, 제가 뚜따 전문가한테 이미징작업 가급적 빨리, 고해상도로 해달라고 말하면서 150불정도 찔러줬습니다. 효과가 있었나 3-6개월 걸린다는 걸 한달반만에 후딱 해주고 업데이트 로그에 크게 걸어주기까지 하더라구요.
좀 더 자세한 얘기를 하자면... 일단 MAME에 코나미 버블 시스템이 추가된 것이 2019년 5월의 일입니다. 구현 자체는 아까 말했던 스페인에 사는 Eduardo Cruz와 미국에 사는 BrianMcPhail씨가 했지요. 그리고 그 당시, 마메월드 커뮤니티에서 해당 구현에 대해 "정확한 에뮬레이션이 아니다" 라는 지적이 나오자, 주요 개발자 David Haywood씨가 "미래에 이 칩을 뚜따해서 에뮬레이션을 개선할 계획이 있다"라고 써 놓은 적이 있었습니다. 보통 저런 말은 항상 그냥 하는 말이 대부분이니까, 기대하지 않고 있었어요.
저는 그게 기억나서 혹시나 싶어서 뚜따 전문가 John McMaster씨에게 이 칩을 누가 기증했냐고 물어봤습니다. 스페인의 어떤 단체가 기증했다고 하더라구요. 스페인하니 뭔가 짚이는 게 있어서 그 단체 홈페이지를 들어가봤더니 스탭중에 그 스페인 아저씨 이름이 있었습니다. 무슨 일인지는 모르겠지만, 단체 명의로 기부를 했더라구요.
암튼, 마메 소스의 구현은 상당히 하이 레벨입니다. 버블 메모리 프로토콜을 구현하지 않고, 그냥 완성된 데이터만 블럭별로 업로드해주는 식입니다. 주석에는 저 칩이 게이트 어레이가 아니라 Fujitsu MCU라고 적혀있습니다. 언제 제가 주석 수정을 좀 해야겠다고 생각중이예요.