Skip to content

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

가전 / 가젯 / 테크 : 가전 제품, 멀티미디어, 각종 IT 기기와 여기에 관련된 기술의 이야기, 소식, 테스트, 정보를 올리는 게시판입니다.

Extra Form

제가 버블 메모리 에뮬레이터 제작 시 나가는 신호 일일히 캡쳐한 다음 디코딩 프로그램 만드는 것 보다

 

기존에 있는 에뮬레이터의 저장매체인 FRAM을 바로 읽어서 정제된 데이터를 뽑아서 출력데이터와 비교분석 하려고 합니다.

 

후지쯔 FRAM MB85RS4MTPF을 사용하고, SPI를 지원하는지라 보통 SPI지원하는 EEPROM이랑 호환성 문제될 일은 없습니다.

 

다만 FRAM이라 지원 안 하는 프로그래머들이 많아서 보통의 4메가비트 Standard SPI지원 EEPROM으로 세팅을 해 놓고 읽기쓰기를 하려고 하는데요,

 

일단 후지쯔나 Cypress같은 FRAM제조사들은 비표준 SPI 커맨드를 못 쓰는 거 빼고는 모두 호환 가능해서 별 문제 없다고는 합니다.

 

벤더 ID 체크를 꺼 놓고 쓰면 어차피 SPI신호를 똑같이 사용하니 별 문제 없을 것 같은데,

 

EEPROM은 쓰기 전에 소거를 하고, FRAM은 그냥 그 위에 바로 쓰면 자동으로 덮어쓰기가 되거든요. 여기 erase 작업에 다소 차이가 있긴 합니다만

 

별 문제 없겠죠?

 

임베디드 시스템에 써 보신 분이 있는지 궁금합니다.



  • ?
    archwave 2019.05.08 17:04
    직접 써본바 없지만, 데이타시트를 보니 아주 간단하네요.

    일단 WEL 은 파워온리셋되기 때문에 WREN 명령 내리기 전에는 모든 종류의 쓰기가 금지됩니다.
    따라서 안심하고 이거 저거 해볼 수 있겠네요.

    작업해야 할 순서는

    1. 앞으로 여러번 할 가능성을 생각해서 에뮬레이터 보드에서 SPI 선들을 단절하고 다시 이을 수 있는 점퍼를 마련하고 외부 연결할 수 있는 헤더 부착.

    2. 몇천원이면 사는 아두이노 아무거나 준비.

    3. 아두이노로 SPI 제어하고 데이터 리드라이트하는 프로그램 작성
    앞으로 verilog 로 FPGA 프로그래밍도 하신다 하시니 이 정도는 반드시 해봐야 할 작업일겁니다.
    FPGA 용 프로그래머로 SPI 제어를 할 수도 있는데, 이건 FPGA 트레이닝 보드 마련한 후라야 할테니..

    4. RDID 명령을 내려서 칩 정보 읽기

    5. RDSR 명령을 내려서 block protect 설정을 파악해놓기 ( FRAM 데이터와 이걸 같이 다운로드받아야 함 )

    6. READ 로 데이터 읽기

    -------------- 주의할 점

    그 보드 제작자가 했다는거 보니 FRAM 데이터도 그냥 RAW data 가 들어가지 않을 것 같군요.
    FPGA 에 약간의 암호화 기능을 넣었을 가능성이 커보입니다.
    즉 똑 같은 데이터라도 에뮬레이터마다 FRAM 에는 서로 다른 데이터가 들어갈 가능성이 있다는 얘기죠.

    따라서 FRAM 에서 읽은 데이터는 원래 데이터가 아니니까, 앞으로 할 작업으로 망칠 가능성을 대비해서
    백업 받아놓는 것이라고 생각하시는 것이 안전할 듯 합니다.
  • ?
    이카무스메 2019.05.08 17:20
    제가 암호화를 걱정해서 개발자 트위터 개발로그를 전부 쭉 읽어봤는데, 그냥 RAW데이터가 들어가있을듯합니다. 암호화 여부는 추출부터 해봐야 알겠습니다. RAW라면 버블 메모리 게임 데이터가 바로 보이겠고(형태를 아니) 아니라면 꼬여있는 데이터가 들어있겠죠.

    다만, FRAM에는 기본적으로 FRAM어드레스-버블 메모리 섹터 변환 테이블이 들어있는 것 같습니다.
  • ?
    archwave 2019.05.08 17:25
    데이터 자체는 그대로 넣지만, 섹터 변환 테이블은 각각 다르게 기록했을 가능성도 있겠네요.
    데이터는 다 그대로 보이지만, 주소는 제각각.

    생각해보니 이 방법을 택했을 가능성이 더 클 것 같네요. 간단하니까요.
  • ?
    이카무스메 2019.05.08 17:32
    이게 버블 메모리 128바이트 한 섹터를 내보낼 때 버블 메모리 내 섹터의 고유값을 내보내는 것입니다. 따라서 원래 FRAM에 있는 덤프된 데이터의 시작 어드레스같은 것을 변환로직을 이용해서 버블 메모리 섹터에 맞게 변환해서 내보내는 것이었는데 변환하는데 시간이 좀 걸려서 그냥 램에 테이블을 올려두고 FRAM어드레스가 뭐면 어느 버블 섹터라고 출력해라 하는 형식으로 했다네요.

    섹터 변환 테이블로 덤프시 들어오는 데이터와 FRAM에의 적재 순서를 섞었을 수도 있겠습니다만, 저번에 개발자한테 뭐 물어봤는데 암호화를 먼저 상정하고 제작한다는 느낌은 못 받았습니다. 물론 그냥 일언반구 안 했을 수도 있지만요.
  • ?
    archwave 2019.05.08 17:06
    주의할 점 또 하나.

    FRAM 데이터 중 일부에는 FPGA 와 서로 연동하면서 일종의 프로텍트를 하는 기능이 들어가 있을 수 있습니다.

    따라서 앞에 말한 점퍼/헤더는 반드시 전원선까지 포함해야 할 것이고요.

    데이터 뽑아내기 하는 중에는 에뮬레이터에 전원이 아예 들어가 있지 않아야 하고, FRAM 과 아두이노에만 전원이 들어가도록요.
  • ?
    이카무스메 2019.05.08 17:35
    저는 아는 분께 부탁하여 열풍기로 떼어낸 후에 ZIF소켓에 넣고 작업하려는 생각을 하고 있었습니다. 역시 떼어내어 놓는 게 낫겠네요.
  • ?
    archwave 2019.05.08 17:20
    정작 물어보신 내용에는 대답을 안 했었네요.

    FRAM 명령어 세트를 보니 Standard SPI지원 EEPROM 로 세팅하고 읽으면 될 것 같긴 합니다만, 앞서 말씀드린 block protect 세팅 읽기는 이걸로 안 된다는 문제가 있네요. 이 세팅값이 뭔가 의미를 가질지 아닐지 미지수이긴 한데..

    하여튼 앞서 말씀드린대로 전원 포함 점퍼/헤더 마련해놓고 하시면 적어도 망가트릴 일은 없겠군요.
  • ?
    이카무스메 2019.05.08 17:27
    감사합니다. 근데 블럭 프로텍트는 그냥 해당 블럭 쓰기 금지 기능 아니었나요?

    그나저나 그 암호화는, 제작자가 간간히 게임의 저작권 문제를 언급해서 기능을 넣지 않았을 가능성이 큽니다. 제가 툴툴댔던 데이터 추출 기능이 없다 이런 것도(사실 XMODEM포트는 만들어둔 것 같긴 합니다) 저작권타령을 계속 했길래 그걸 의식해서 그런 게 아닌가 싶기도하구요. 또 FRAM어드레스-버블 메모리 섹터를 변환식을 사용하려고 했더니 타이밍 맞춰 데이터를 내보내야 하는데 한두클럭 사이에 해결이 안 되어서 그냥 변환 테이블을 램에 넣어뒀다고 하는 것으로 보아 인크립션/디크립션 기능은 없는 것 같습니다. 저장된 데이터를 처음부터 모두 인크립션해서 램에 올려두고 거기서 불러오는 것도 아닌 것 같고, 단순한 섹터 변환식을 써야 하는데 타이밍 맞춰야 하는데 타이밍 맞출 시간이 모자란다고 툴툴댔던 걸 보면 실시간 디크립션에도 분명 시간이 걸릴텐데 안 넣었지 않나 싶네요. 혹시 암호화에 대한 아이디어가 더 있을까요?

    생각할 수 있는 것으로는 에뮬레이터 고유번호를 넣어둬서 이게 맞지 않으면 부팅을 거부할 수도 있다는 것이네요.
  • ?
    archwave 2019.05.08 18:37
    저작권 얘기가 있길래 이미 에뮬레이터를 만들었는데, 무슨 저작권 얘기인건가. 저도 좀 헷갈립니다.
    하여튼 저작권 관련이라면 암호화 기능을 넣었을 가능성이 있다는 생각이라서요.

    눈 가리고 아웅이긴 한데, FRAM 에서 데이터를 뽑아내도 그 데이터에 예를 들어 메이커, 게임명등이 직접적으로 드러나지 않는다면 저작권 어쩌고를 피할 수 있다 ?

    고속 암호화의 기본은 XOR 패턴 마스크입니다.
    HDMI 에서 쓰는 HDCP 암호화가 바로 이걸 이용해서 수십 Gbps 속도로 실시간 암호화를 하죠.

    XOR 패턴 제너레이터가 데이타 전송중에 따로 실행되는 식입니다.
    RAW data 와 패턴을 XOR 해서 암호화 데이타가 만들어지는 것이고, FPGA 프로그래밍해보시면 아시겠지만, 여기에 걸리는 딜레이는 사실상 제로입니다. FPGA 게이트 소모량도 매우 적고요.

    수신 측에서는 송신측과 동일한 방식, 키로 XOR 패턴 제너레이터가 실행되고
    암호화된 데이터와 패턴을 XOR 해서 RAW data 가 복원되는 방식. 이 역시 딜레이는 사실상 제로.

    -----------

    이에 반해 섹터 변환식은 조금 문제가 될 수 있습니다. 버블메모리의 섹터 크기가 정확히 2 의 배수가 아니라면 곱셈 연산까지도 들어가야 하니까요. FPGA 의 곱셈은 무척 빠릅니다만 왜 안 썼는지..

    버블 메모리 어드레스 -- 연산 -- FRAM 어드레스 출력 -- 데이타 받아오기 이렇게 되니 연산시간만큼 고스란히 딜레이 추가. 이 추가분이 골치아팠다는 얘기겠죠.
  • ?
    이카무스메 2019.05.08 18:45
    저도 사실 헷갈립니다(...) 고장난 버블 시스템 기판을 위해 정상적인(손상되지 않은) 게임 소프트웨어를 공유할 수 없다는 것에는 저작권 타령을 했는데요(그러면서 MAME롬이나 기판 BIOS같은것은 잘도 찾더란), 에뮬레이터 제작은 하드웨어 발매(기판) 이후 20년이 넘었으니까 게임 롬을 포함시켜 판매하지 않으면 괜찮겠지 이렇게 글 쓴 것이 보입니다. 말씀대로 법적으로 따지고 들어가면 눈가리고 아웅일 것 같네요. 롬 데이터 컴퓨터로의 출력기능 삭제는 사람들이 이걸 공유해서 발생되는 문제를 차단하고자 하는 것 같습니다. 이걸로 소송걸리면 에뮬레이터 제작자한테로 불똥이 튈 수 있으니...

    고속 암호화는 제가 좀 더 알아봐야 할 것 같습니다. 처음 들어서요. 감사합니다.

    네 그 연산부분에서 그 사람이 만든 에뮬레이터 상에서 허용될 수 있는 수 클럭정도의 딜레이보다 시간을 더 잡아먹어서(몇 MHz 오실레이터를 썼는지 모르겠습니다) 그냥 변환테이블을 넣었다는 것 같네요.

    ---

    그렇다면 XOR게이트로 체크섬같은것도 구현할 수 있는 것인지요?
  • ?
    archwave 2019.05.08 19:04
    XOR 게이트로 체크섬 같은 것을 구현할 수 있다고 말하기보다는
    체크섬 구현할려면 XOR 게이트 써야만 한다라고 얘기하는 편이 더 적절합니다.

    체크섬 구할때 흔히 데이타들을 들어오는 순서대로 덧셈해서 하위 자리를 체크섬으로 쓴다라고 말합니다만, 덧셈 연산의 자리올림 때문에 쓸데없는 딜레이가 추가됩니다. 물론 파이프라인 식으로 실행하면 그런 딜레이는 무시 가능합니다만 대신 회로가 복잡해지죠.

    그래서 덧셈을 쓰는 체크섬 구하기는 그냥 소프트웨어로 구현할 때나 간혹 쓰는 정도라고 봐야 할겁니다.

    https://www.novatel.com/assets/Documents/Bulletins/apn030.pdf
    위 문서를 보면 몇 가지 CRC 코드, checksum 코드들이 나와 있는데요.

    이미 아시겠지만 고정된 길이 시프트 연산이나 2 의 배수로 곱셈/나눗셈 같은 것은 하드웨어 (verilog) 에서는 실행시간, 게이트 소모 모두 그냥 제로입니다. 단순히 배선만 적절하게 연결되면 끝나는 것이니까요.

    CRC 코드, checksum 모두 XOR 게이트와 약간의 AND, OR 게이트로 모두 간단히 끝납니다.
    그래서 예로부터 매우 널리 쓰인거죠.

    데이타를 클럭 맞춰서 XOR/AND/OR 게이트에 공급하고 받는 부분만 있으면 끝납니다. 시리얼 통신에서는 이 역시 어차피 들어가는 회로라서 CRC, checksum 기능은 거의 부담 제로로 거저 얻어지는 것이나 다름없습니다.
  • ?
    이카무스메 2019.05.08 19:10
    오 감사합니다.
  • ?
    이카무스메 2019.05.09 02:52
    아, 제작자에게 암호화가 있냐고 좀 애둘러서 물어봤는데, 그런 것은 없다고 답장이 왔습니다. 다행입니다.
  • ?
    이카무스메 2019.05.08 18:58
    자세한 답변 매번 감사합니다.

    지금 생각났는데요, 저번에 제작자가 올린 개발 과정에서 ISIM으로 작업중인 사진을 두 번 정도 찍어 올렸었는데, 화면을 보니 그냥 FRAM(SPI모드)으로부터 FPGA로 들어오는 데이터와 암호화되지 않은 게임 롬의 데이터가 같은 것으로 보아 아마 암호화는 안 되어있을 것 같은 분위기입니다.

    암호화되어있다면 제가 그냥 버블 메모리로부터 나가는 신호를 디코딩해야겠네요.

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


  1. LED 전등 그 심오한 세계 - 기초상식-

    라고 거창한 이름을 달지만 결국 수박 겉할기로만 알게된 사실을 적어봅니다.   에이 별거 아니네 하실 수도 있겠지만 잠깐 읽고 지나가시라고 적어봅니다.   사실 기초상식편 외에 더 자세한건 기글에 계실 전공자분들께서 설명해주실겁...
    Date2019.05.10 일반 Bytitle: 가난한AKG-3 Reply30 Views3893 file
    Read More
  2. 샤오미 무팬 타워형 선풍기

    샤오미 무팬 타워형 선풍기 SS4입니다. 가격은 599위안. 11종 풍속 모드, 블로워 팬으로 바람을 내보내며, 당연히 미지아 앱과 연동돼고 음성 컨트롤도 가능합니다. 무게 2.4kg, 높이 0.96m, 90도 회전, 8시간 예약, 수면 모드, 낮은 전력...
    Date2019.05.10 소식 By낄낄 Reply4 Views2275 file
    Read More
  3. No Image

    그러고 보니 기글 사진 편집기능이 사라졌네요?

    언제적부턴가 기글의 사진 편집 기능이 정상적으로 작동하지 않았습니다.   사진 편집 버튼을 눌러도, 검은 배경의 에디터가 떴다가 순간적으로 종료되었습니다.   그래서 이 기능을 사용하지 않고, 그림판을 사용하여 글을 쓴 지 오래입...
    Date2019.05.10 질문 ByVeritas Reply2 Views609
    Read More
  4. 새집이사

    본가가 이사를 합니다.   분명 34평에서 34평 그것도 동일면적으로 이사 가는데 집이 더 좁습니다. 심지어 천장 높이도 지금 집대비 8cm는 더 낮아요;(덕분에 등도 최대한 얇은걸 써야 합니다)   이런저런 난관이 있습니다만...   제게 닥...
    Date2019.05.10 일반 Bytitle: 가난한AKG-3 Reply2 Views1179 file
    Read More
  5. 세상에서 제일 가치있는 기업은 나델레상스가 있다

    블룸버그의 기사는 완전번역하면 안 될 것 같습니다. 일단 읽는데 돈을 받는 기사니까요. 그러니 이번에도 역시 인용번역으로 간단하게 전해드리기만 합니다. 자세한 내용은 들어가서 보세요.    "사티아 나델라 CEO각하의 령도 하에 마이...
    Date2019.05.09 일반 By냐아 Reply12 Views3515 file
    Read More
  6. 구글 Nest Hub Max 10인치 스마트 홈 디바이스

    구글이 10인치 크기의 스마트 홈 디바이스인 Nest Hub Max를 올해 여름에 229달러에 출시합니다. 기존 모델은 129달러로 인하. 구글 홈은 99달러, 구글 홈 맥스는 299달러로 인하. 구글 홈 허브로 나왔다가 Nest Hub로 이름을 바꾼 7인치 ...
    Date2019.05.09 소식 By낄낄 Reply3 Views1079 file
    Read More
  7. No Image

    [사진없음] 홈매트 홈컨트롤 리퀴드알파 플러스 IoT 훈증기 간략사용기

    제가 지금 사는 원룸텔은 창문이 방과 화장실 공용인데, 화장실에 습기가 차길래 환기시키려고 방충망 없는 창문을 열어놨더니 하루살이들이 엄청나게 천장에 달라붙더군요. 게다가, 화장실 문을 닫아뒀음에도 불구하고 벌레들이 방 안쪽...
    Date2019.05.08 테스트 By쮸쀼쮸쀼 Reply6 Views1899
    Read More
  8. No Image

    요즘 접지에 대한 회의감이 듭니다.

    90년대 후반에 지어진 본가에 집은 접지공사가 아주 잘 되어 있었습니다. 그당시에는 접지에 대한 규정이 없었는데도 콘센트 대부분이 접지가 되어 있었어요.   그리고 저는 전기가 통하는 느낌이 굉장히 불쾌해서(남들보다 더 민감하게 ...
    Date2019.05.08 일반 ByMinny Reply10 Views4191
    Read More
  9. 구글 홈 허브 분해 사진

    구글의 탁상용 스마트 스피커인 구글 홈 허브의 분해 사진입니다. 구글 홈 허브. 날씨나 시간 등을 표시하는 물건이겠군요. 뒷면에는 다양한 정보. 다른편엔 규격. 기본적인 음성 명령을 소개합니다. 본체, 설명서, 전원 어댑터. 어댑터는...
    Date2019.05.08 분석 By낄낄 Reply6 Views4335 file
    Read More
  10. No Image

    표준 SPI지원 메가비트 FRAM 써보신 분?

    제가 버블 메모리 에뮬레이터 제작 시 나가는 신호 일일히 캡쳐한 다음 디코딩 프로그램 만드는 것 보다   기존에 있는 에뮬레이터의 저장매체인 FRAM을 바로 읽어서 정제된 데이터를 뽑아서 출력데이터와 비교분석 하려고 합니다.   후지...
    Date2019.05.07 일반 By이카무스메 Reply14 Views681
    Read More
  11. No Image

    오프라인에서 문화상품권 / 구글플레이 Redeem 코드 구매.

    최근에 받은 용돈 아닌 용돈 (...?) 으로, 엔스파이어를 사고 나서 남은 돈이 좀 있습니다.   현금이고요, 비상금으로 꽁쳐놓은 돈입니다. 대부분 물건을 사거나 팔고 남으며, 이들은 주로 택배 나눔 수령 비용 등으로 활용됩니다.     각...
    Date2019.05.07 질문 ByVeritas Reply13 Views760
    Read More
  12. No Image

    해킹할 수 없는 프로세서 아키텍처, 모피어스

    미시간 대학에서 해킹이 불가능한 프로세서 아키텍처인 모피어스의 개발을 발표했습니다. 1초에 20번 코드/데이터를 암호화하고 무작위로 재구성해, 공격 자체가 불가능하게 만든다는 개념입니다. 지금은 취약점이 발견되면 이를 막는 식...
    Date2019.05.07 소식 By낄낄 Reply10 Views1371
    Read More
  13. No Image

    아반때 HD 오토 미션 후진 문제...

    아반떼 HD를 몰고 다니고 있습니다.  09년식이고 주행거리는 14만 키로로 그렇게 길진 않습니다. 지금까지 큰 수리는 한 적 없구요. 소모품 교환와 예방정비 정도는 꼬박꼬박 했습니다. 뭐 옆에서 박아서 수리하거나, 점화코일 수명이 다...
    Date2019.05.07 질문 ByMinny Reply18 Views2683
    Read More
  14. No Image

    사우스웨스트가 A220을 알아보고 있답니다

    아직은 잘해봤자 간만 보는거고 실질적으로는 루머 수준이겠지만서도, 그 737 성애자들조차 손절각을 재고 있다니… 보잉 이 등신들아 이거 어쩔거야…   참고로 사우스웨스트가 보유한 737 NG만 650대이며, 그중 500여대는 A220-300과 동체...
    Date2019.05.06 소식 By아스트랄로피테쿠스 Reply7 Views728
    Read More
  15. No Image

    음악을 검색하는 좋은 방법?

    Shazam, 네이버 음악검색, Google 음악검색 등을 잘 활용하고 있습니다.   오래 전에 보았던, 하지만 듣보잡인 인터넷 합성 음악이 있습니다. 하드디스크에 들어있었고요, 오랫만에 찾게 되었습니다.   샤잠과 네이버 음악검색 모두 No Re...
    Date2019.05.04 질문 ByVeritas Reply13 Views763
    Read More
목록
Board Pagination Prev 1 ... 259 260 261 262 263 264 265 266 267 268 ... 357 Next
/ 357

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

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


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

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소