<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns="http://purl.org/rss/1.0/"
 xmlns:content="http://purl.org/rss/1.0/modules/content/"
 xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:syn="http://purl.org/rss/1.0/modules/syndication/"
 xmlns:admin="http://webns.net/mvcb/"
>
<channel rdf:about="http://blog.livedoor.jp/hardyboy/">
<title>まごころせいじつ堂 - ROM</title>
<link>http://blog.livedoor.jp/hardyboy/</link>
<description>浜町庄金　研究開発
　マイコンで遊んでばっかりで

</description>
<dc:language>ja</dc:language>
<admin:generatorAgent rdf:resource="http://blog.livedoor.com/?v=2.0" />
<items>
 <rdf:Seq>
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/10062917.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/9842652.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/9620950.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/9620242.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/9448294.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/9446044.html" />
  <rdf:li rdf:resource="http://blog.livedoor.jp/hardyboy/archives/9098403.html" />
 </rdf:Seq>
</items>
</channel>

<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/10062917.html">
<title>27512on2532 V01L02 ROM変換基板</title>
<link>http://blog.livedoor.jp/hardyboy/archives/10062917.html</link>
<description>　試作したROM 2532-27512変換基板を改版しました。試作V01L01からV01L02の修正点：・スリム化・2532のVppをVddに接続する端子を追加。これにより2732~27512に対応したROMライタなどで2532の読み出しが可能。回路図部品表：・28ピンICソケット 中央に桟がないタイプ https://...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2022-06-26T23:14:54+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[<div>　試作した<a  href="http://blog.livedoor.jp/hardyboy/archives/9842652.html" target="_blank" title="">ROM 2532-27512変換基板</a>を改版しました。</div><br /><div>試作V01L01からV01L02の修正点：<br /></div><div>・スリム化</div><div>・2532のVppをVddに接続する端子を追加。これにより2732~27512に対応したROMライタなどで2532の読み出しが可能。<br /></div><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/5/0/501d7224.jpg" title="2022-06-26 22.33.01" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/5/0/501d7224-s.jpg" alt="2022-06-26 22.33.01" class="pict" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/1/0/10f385cc.jpg" title="2022-06-26 22.32.38" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/1/0/10f385cc-s.jpg" alt="2022-06-26 22.32.38" class="pict" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>回路図</div><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/8/5/8559bf7f.png" title="2532-27512-sch" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/8/5/8559bf7f-s.png" alt="2532-27512-sch" class="pict" width="480" hspace="5" height="391" border="0"></a><br /></div><br /><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/2/9/29bc8e7c.png" title="2532-27512-pcb" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/2/9/29bc8e7c-s.png" alt="2532-27512-pcb" class="pict" width="480" hspace="5" height="791" border="0"></a><br /><br /></div><div>部品表：</div><div>・28ピンICソケット 中央に桟がないタイプ <a  href="https://akizukidenshi.com/catalog/g/gP-06740/" target="_blank" title="">https://akizukidenshi.com/catalog/g/gP-06740/</a><br /></div><div>・24ピン連結ソケット　または12ピン1列連結ソケットx2 <a  href="https://akizukidenshi.com/catalog/g/gP-01758/" target="_blank" title="">https://akizukidenshi.com/catalog/g/gP-01758/</a></div><div>・スライドスイッチ x4(任意)　<a  href="https://akizukidenshi.com/catalog/g/gP-12723/" target="_blank" title="">https://akizukidenshi.com/catalog/g/gP-12723/</a><br /></div><br /><div>　はんだ付けは両面から行うためやや面倒です。まずICソケットをはんだ付けし、次に連結ソケットをはんだ付けするとうまくいきます。<br /></div><br /><div>　2532 ROMを読み出す用途にも使用できます。この場合はVpp-Vddをショートし、24ピンICソケットと28ピン連結ソケットを使用してください。<br /></div><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/8/b/8b49cbef.jpg" title="2022-06-26 22.33.24" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/8/b/8b49cbef-s.jpg" alt="2022-06-26 22.33.24" class="pict" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>　<a  href="https://keisanki.booth.pm/" target="_blank" title="">booth</a>にて配布予定です。<br /></div><div>→販売開始しました。<a  title="" target="_blank" href="https://keisanki.booth.pm/items/3963943">2532-27512変換基板セット2枚</a></div><br />]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/9842652.html">
<title>ROM 2532 - 27512変換基板</title>
<link>http://blog.livedoor.jp/hardyboy/archives/9842652.html</link>
<description>　MZ-80CやCBM3032(PET2001)には4Kバイト、2532タイプのROMが使われている。この頃のPROMは2732タイプと2532タイプのピン配列があって、後の2764、27128、27256、27512タイプは2732のピン配置を元にしている。　この時期、2732でなく2532が好んで？使われた理由は不明だけど...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2021-06-23T17:53:48+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[<div>　MZ-80CやCBM3032(PET2001)には4Kバイト、2532タイプのROMが使われている。この頃のPROMは2732タイプと2532タイプのピン配列があって、後の2764、27128、27256、27512タイプは2732のピン配置を元にしている。</div><br /><div><img  class="pict" alt="スクリーンショット 2021-06-23 172408" src="https://livedoor.blogimg.jp/hardyboy/imgs/2/b/2bb270e0.png" width="384" hspace="5" height="532" border="0"><br /></div><br /><div><a  target="_blank" title="スクリーンショット 2021-06-23 172628" href="https://livedoor.blogimg.jp/hardyboy/imgs/0/7/075f0950.png"><img  class="pict" alt="スクリーンショット 2021-06-23 172628" src="https://livedoor.blogimg.jp/hardyboy/imgs/0/7/075f0950-s.png" width="480" hspace="5" height="265" border="0" align="left"></a><br /></div><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><div>　この時期、2732でなく2532が好んで？使われた理由は不明だけど、故障した2532タイプのROMを交換するには入手困難で手持ちのPROMライターでは書き込みも対応していない。代わりに中古で入手しやすい2764〜27512や新品で入手できるW27C512を使うために変換基板を作成した。</div><br /><div>回路図：2532に27512の各信号を対応させ、あまったアドレスA12~A15を外部でセレクト。</div><div><a  target="_blank" title="スクリーンショット 2021-06-21 014629" href="https://livedoor.blogimg.jp/hardyboy/imgs/f/8/f8a673cd.png"><img  class="pict" alt="スクリーンショット 2021-06-21 014629" src="https://livedoor.blogimg.jp/hardyboy/imgs/f/8/f8a673cd-s.png" width="480" hspace="5" height="193" border="0"></a><br /><br /></div><br /><br /><br /><div>配置配線：秋月D基板サイズで取り付け穴まで用意したが、そこまで必要ではなかった。</div><br /><div><a  target="_blank" title="スクリーンショット 2021-06-21 014704" href="https://livedoor.blogimg.jp/hardyboy/imgs/9/3/935a2c50.png"><img  class="pict" alt="スクリーンショット 2021-06-21 014704" src="https://livedoor.blogimg.jp/hardyboy/imgs/9/3/935a2c50-s.png" width="480" hspace="5" height="622" border="0"></a><br /><br /></div><div>基板：</div><br /><div><a  target="_blank" title="2021-06-23 17.12.54" href="https://livedoor.blogimg.jp/hardyboy/imgs/7/e/7e1cc53a.jpg"><img  class="pict" alt="2021-06-23 17.12.54" src="https://livedoor.blogimg.jp/hardyboy/imgs/7/e/7e1cc53a-s.jpg" width="480" hspace="5" height="270" border="0"></a><br /></div><br /><div>組み立て例：2532ソケットに27C256を取り付け。これはCBM3032のCGROMの代わり。</div><div><a  target="_blank" href="http://blog.livedoor.jp/hardyboy/archives/9446044.html">2764,27128,27256ではVppをしっかり"H"レベルにしていないと正常に動作しないことがある。</a>これらのVppは27512ではA15、ピン1に対応する。</div><br /><div><a  target="_blank" title="2021-06-23 17.13.38" href="https://livedoor.blogimg.jp/hardyboy/imgs/c/4/c4f25dcc.jpg"><img  class="pict" alt="2021-06-23 17.13.38" src="https://livedoor.blogimg.jp/hardyboy/imgs/c/4/c4f25dcc-s.jpg" width="480" hspace="5" height="270" border="0"></a><br /><br /></div><div>　逆に24ピン側にICソケットを、28ピン側に連結ソケットをはんだ付けし、ROMライタで2764などの設定にして2532のデータを読み出すこともできる。当初これを想定していなかったので2532のVppはオープンのまま(2532を取り付ける基板側で処理されていることを想定)。なので2532のピン21-Vppをピン24-Vccとショートさせる改造が必要になる。</div><br /><div><a  target="_blank" title="2021-06-23 17.14.08" href="https://livedoor.blogimg.jp/hardyboy/imgs/b/5/b5589477.jpg"><img  class="pict" alt="2021-06-23 17.14.08" src="https://livedoor.blogimg.jp/hardyboy/imgs/b/5/b5589477-s.jpg" width="480" hspace="5" height="270" border="0"></a><br /></div><br /><div><a  target="_blank" title="2021-06-23 17.44.33" href="https://livedoor.blogimg.jp/hardyboy/imgs/e/0/e09db6be.jpg"><img  class="pict" alt="2021-06-23 17.44.33" src="https://livedoor.blogimg.jp/hardyboy/imgs/e/0/e09db6be-s.jpg" width="480" hspace="5" height="270" border="0"></a><br /></div><br /><div>　MZ-80CはCGROMとモニタROMの２つで場所も離れているので問題ないが、CBM3032はBASIC ROMが4個並んでいてこのままでは使えない。ICソケットを継ぎ足してゲタにし高さを調整すればささらないこともないが、作り直しますかね……</div><br /><br /><div><div  class="amazon Default"><div  class="pictBox" align="left"><a  target="_blank" href="https://www.amazon.co.jp/dp/B097K4C3GF?psc=1&amp;tag=keisanki-22&amp;th=1&amp;linkCode=osi"><img  class="pict" style="margin-right:10px" alt="【ポリエステル製】のぼり ちゃんぽん 絶品 No.YNS-2532 （三巻縫製 補強済み）" src="https://m.media-amazon.com/images/I/41LUidDFMUL._SL160_.jpg" hspace="5" border="0" align="left"></a></div><div  class="itemTitle"><a  target="_blank" href="https://www.amazon.co.jp/dp/B097K4C3GF?psc=1&amp;tag=keisanki-22&amp;th=1&amp;linkCode=osi">【ポリエステル製】のぼり ちゃんぽん 絶品 No.YNS-2532 （三巻縫製 補強済み）</a></div><div  class="itemSubTxt">のぼりストア</div></div><br  style="clear:left" clear="left"><br /></div><br /><br /><br /><br /><br /><br /><br /><br /><br />]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/9620950.html">
<title>PASOPIA(PA7002)のマスクROM TMM2364Pのタイミング</title>
<link>http://blog.livedoor.jp/hardyboy/archives/9620950.html</link>
<description>　PASOPIA(PA7012)の分解写真と予防保守の続き。内蔵のOA-BASICは$0000-$7FFFに位置し、8KバイトのROM 4個で構成されている。これを追っていくと写真左上のLS139でデコードされ、右下-右上-左下-左上の順に$0000~、$2000~、$4000~、$6000~に対応する。　最初のROMは普通のUV-...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2020-06-09T02:03:56+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[<div>　<a  target="_blank" href="http://blog.livedoor.jp/hardyboy/archives/9603853.html">PASOPIA(PA7012)の分解写真と予防保守</a>の続き。内蔵のOA-BASICは$0000-$7FFFに位置し、8KバイトのROM 4個で構成されている。これを追っていくと写真左上のLS139でデコードされ、右下-右上-左下-左上の順に$0000~、$2000~、$4000~、$6000~に対応する。</div><div><a  target="_blank" title="PASOPIA-INTERNAL-ROM-MARK" href="https://livedoor.blogimg.jp/hardyboy/imgs/8/5/85db3f98.png"><img  class="pict" alt="PASOPIA-INTERNAL-ROM-MARK" src="https://livedoor.blogimg.jp/hardyboy/imgs/8/5/85db3f98-s.png" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>　最初のROMは普通のUV-PROMで残りはマスクROM。出荷直前にパッチでも当てる必要があったのだろうか。これらを<a  target="_blank" href="http://blog.livedoor.jp/hardyboy/archives/9620242.html">前回作ったROMリーダ</a>で読んでみる。するとマスクROMが読めない。正確には常に同じ値になってしまう。</div><div>/CEを変化させてないのがいけないのかなと /CE="H"、アドレス設定、/CE="L"、データ読み出し の順で<br /></div><div>やってみたら読み出せた。これはどういうことかな？</div><div>TMM2364Pのデータシートを見てみるとVpp(1)="H"、CS1(27)="H"、CS2(26)="H"、/OE(22)="L"にする。それぞれ基板上ではそのように接続されていた。</div><div>(CS1/CS2のenableはプログラマブルらしいがここでは"H"と判断できる)</div><div>となると/CEの挙動が通常のPROMとは異なることになる。</div><br /><div>　データシートをみると/CEの立ち下がりでアドレスをラッチして後はOutput Enableに出力を任せるような動作だった。<br /></div><div><a  target="_blank" title="スクリーンショット 2020-06-08 16.41.58" href="https://livedoor.blogimg.jp/hardyboy/imgs/d/4/d433c803.jpg"><img  class="pict" alt="スクリーンショット 2020-06-08 16.41.58" src="https://livedoor.blogimg.jp/hardyboy/imgs/d/4/d433c803-s.jpg" width="480" hspace="5" height="117" border="0"></a><br />　となるとTMM2364PがROMライタTL866CSで読めなかった理由も推測できる。Device IDを厳密に見て弾いたのか、あるいはTL866CSが/CEを変化させないでenableにしたまま、というのが考えられる。</div><br /><div>　また、はまってしまった。<br /></div><br /><div>ROMリーダのスケッチもアップデートしときました：<br /></div><div><a  target="_blank" href="https://gist.github.com/houmei/7ce0aef4632cebb38876423c84b843cb">https://gist.github.com/houmei/7ce0aef4632cebb38876423c84b843cb</a></div><br /><br />]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/9620242.html">
<title>Arduino MEGA直結ROMリーダーのトラブル</title>
<link>http://blog.livedoor.jp/hardyboy/archives/9620242.html</link>
<description>※追記　27512(64Kバイト)まで対応のソフトができました → readROM27512.ino Intel HEX対応　ROMライタTL866CSでは読めないマスクROM(TMM2364P)があったので、Arduino MEGA用のアダプタを作った。秋月電子の片面D基板、ピンヘッダははみ出るので少しけずっている。　Vcc-GND...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2020-06-07T04:13:47+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[<div>※追記　27512(64Kバイト)まで対応のソフトができました → <a  target="_blank" href="https://gist.github.com/houmei/7ce0aef4632cebb38876423c84b843cb">readROM27512.ino</a> Intel HEX対応<br /></div><br /><br /><div>　ROMライタTL866CSでは読めないマスクROM(TMM2364P)があったので、Arduino MEGA用のアダプタを作った。秋月電子の片面D基板、ピンヘッダははみ出るので少しけずっている。<br /></div><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/5/e/5e9f3a28.jpg" title="IMGP3589" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/5/e/5e9f3a28-s.jpg" alt="IMGP3589" class="pict" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>　Vcc-GND間に3.3μFの電解コンデンサと0.1μFのセラミックコンデンサ。<br /></div><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/b/9/b9df62e2.jpg" title="IMGP3590" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/b/9/b9df62e2-s.jpg" alt="IMGP3590" class="pict" width="480" hspace="5" height="360" border="0"></a><br /><br /></div><br /><div>　ROMの端子とArduino MEGAのピン番号の対応は以下のとおり。27512の場合はROM(1)がA15、ROM(27)がA14、ROM(26)がA13。</div><div>あとpin52にタクトスイッチを繋いでGNDに落としている。これはPROMダンプ開始用。</div><div><a  href="https://www.cs.ou.edu/~fagg/classes/general/atmel/ArduinoMega.pdf" target="_blank">Arduino MEGA pinout diagram</a>(pdf)<br /></div><div><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/1/e/1ee10c6a.png" alt="readROM" class="pict" width="404" hspace="5" height="639" border="0"><br /><br /></div><br /><div>　さて、こんな単純な配線なのにArduinoスケッチを書いて読み込んでみるとデータが化ける。なぜだ。<br /></div><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/1/7/17e71bc9.jpg" title="IMGP3588" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/1/7/17e71bc9-s.jpg" alt="IMGP3588" class="pict" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>データの読み込みが不安定な時点で以前の経験を思い出すべきだった。</div><div><a  href="http://blog.livedoor.jp/hardyboy/archives/9446044.html" target="_blank">PROMで*PGMをオープンにしていると読めないことがある</a></div><div>ここでやるべきだったのはアドレスと制御線の見直し、ソフトでの初期化だった。<br /></div><br /><br /><div>　解決までの顛末は以下のスレッドにある。<br /></div><div><blockquote  class="twitter-tweet"><a  href="http://twitter.com/houmei" target="_blank"><span  class="avatar"><img  src="http://pbs.twimg.com/profile_images/1112623837617635328/LjXlJFeB_normal.jpg"></span><span  class="fn">ほうめい　マイコンで遊んでばっかりで</span><span  class="nickname">@houmei</span></a><p>とても単純なつくりなんだがTL866CSで読んだ値と微妙に異なるのはなんでだ <a  href="https://t.co/xhrrgp22OA" target="_blank">https://t.co/xhrrgp22OA</a></p><a  href="http://twitter.com/houmei/status/1268885793805750273" target="_blank">2020/06/05 21:42:02</a></blockquote><br />
　さて、解決までには間違った道をどんどん進んでいっているのだが以下に整理しておく。</div><br /><div>・ハードウェアの絞り込み</div><div>PROMの2764/マスクROMのTMM2364P/W27C512で読み込み時のデータ化けが発生する。W27C512に特定のパターンを書き込んだものを調査対象とする。</div><br /><div>・Arduino MEGA 2560のバリエーションによるものかどうか</div><div>互換品を3つ持っていたのでそれぞれで確認。どれも同様に発生するのでArduino MEGA個別についてまわる問題ではない。1枚を選んで調査対象とする。</div><br /><div>・類似例の調査</div><div>どこかのだれかが同じようなことをしていないか検索。あった。</div><div><a  href="https://danceswithferrets.org/geekblog/?p=315" target="_blank">Reading a Parallel ROM with an Arduino</a>(The Oddbloke geek Blog)<br /></div><div>これによるとほぼ同等のハードウェア構成で成功している。ブレッドボード上にPROMを載せてジャンパ線でArduino MEGAに繋いでいるので電気的にはより条件が悪いはずだが動いている。</div><br /><div>・土台の確認</div><div>上記、The Oddbloke geek Blogのコードをこちらのボード向けにピンアサインを変更し、ダンプを5回実行して結果を比較。5回とも問題なし。</div><br /><div>ここまででソフトウェアの違いに問題点が隠されているとわかった。前後してデータ化けの発生率が変わるようなコードの変更（主に時間的なタイミング）をいじっては観測を繰り返している。挿入するディレイによって化け方の頻度が変わるなど、ハードウェアのピンが浮いているような指摘を受けている。</div><br /><div>・知恵を借りる</div><div>デバッグの状況は適時tweetしていた。こまめに書くことで気付くこともあるし、識者からのツッコミもある。このあたりで泥沼にハマっていたら@mkogaxさんよりコードの初期化漏れの指摘が。</div><div>PROMのA15についてArduino MEGAからの出力設定はされていても値が設定されていなかった。この状態で確認したらA15はオープンだった。修正し、ダンプを10回とって比較したら全部OK。</div><br /><div>以下は23行目に初期化の抜けがあるコード。<br /></div><div><a  href="https://gist.github.com/houmei/526371f9e76a9313210b80b3060fd2eb" target="_blank">https://gist.github.com/houmei/526371f9e76a9313210b80b3060fd2eb</a></div><br /><br /><div>　ということで思考の過程を整理してみました。動物が沼にはまってもがいている様子がわかると思います。突っ込んでくれた皆さんどうもありがとうございました。</div><br /><div>　ちゃんとしたPROM読みのコードは次回。</div><br /><br /><br /><div><div  class="amazon Default"><div  class="pictBox" align="left"><a  href="https://www.amazon.co.jp/dp/B01COV7KRS?psc=1&amp;tag=lvdrfree-22&amp;th=1&amp;linkCode=osi" target="_blank"><img  src="https://m.media-amazon.com/images/I/51FWaTNgEwL._SL160_.jpg" alt="KEYESTUDIO Mega 2560 R3 ATMEGA2560 マイコン 開発ボード + USBケーブル キット for Arduino アルディーノ アルドゥイーノ アルデュイーノ メガ 互換" style="margin-right:10px" class="pict" hspace="5" border="0" align="left"></a></div><div  class="itemTitle"><a  href="https://www.amazon.co.jp/dp/B01COV7KRS?psc=1&amp;tag=lvdrfree-22&amp;th=1&amp;linkCode=osi" target="_blank">KEYESTUDIO Mega 2560 R3 ATMEGA2560 マイコン 開発ボード + USBケーブル キット for Arduino アルディーノ アルドゥイーノ アルデュイーノ メガ 互換</a></div><div  class="itemSubTxt">keyes</div></div><br  style="clear:left" clear="left"><br /></div><script src="//platform.twitter.com/widgets.js" charset="utf-8"></script>]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/9448294.html">
<title>SORD M5 ROMカートリッジ調査</title>
<link>http://blog.livedoor.jp/hardyboy/archives/9448294.html</link>
<description>　SORD M5のROMカートリッジについて。　基板上にM5E-00の文字。レジストなしの両面基板。SRAM 6116(2Kx8)のパターンが2つ、ROM 2764(8Kx8)のパターンが2つ、16pinのTTL、RAMのアドレスデコード用74LS139のパターンが1つ。右の方からRAM0、RAM1、ROM0、ROM1と呼ぶことにする...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2019-08-13T23:26:03+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[<div>　SORD M5のROMカートリッジについて。</div><br /><div>　基板上にM5E-00の文字。レジストなしの両面基板。SRAM 6116(2Kx8)のパターンが2つ、ROM 2764(8Kx8)のパターンが2つ、16pinのTTL、RAMのアドレスデコード用74LS139のパターンが1つ。</div><div><a  target="_blank" title="2019SORDM5ROM1" href="https://livedoor.blogimg.jp/hardyboy/imgs/4/4/4459c23f.jpg"><img  class="pict" alt="2019SORDM5ROM1" src="https://livedoor.blogimg.jp/hardyboy/imgs/4/4/4459c23f-s.jpg" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>右の方からRAM0、RAM1、ROM0、ROM1と呼ぶことにする。BASIC-IやゲームのROMはROM0に直接はんだ付けされている。これはBASIC-Iの写真でROMのラベルにはM5 BA4と書いてありますね。</div><div>RAM0の*OE(SRAM/ROM共通)は471(470pF)のコンデンサでGNDに接続してある。信号のタイミングを遅くして調整しているのだろうか。<br /></div><br /><div><a  target="_blank" href="http://www.retropc.net/mm/m5/basic-g-logic.html">BASIC-Gカートリッジ内部構成</a>(RettoPC.net)を参考に見ていくとBASIC-Gも同じ基板。ただし16KバイトあるのでROM0/ROM1を使用し、SRAMも4Kバイト分実装している。</div><br /><div>RAMのアドレスデコードは以下のとおり。</div><div><a  target="_blank" title="SORDM5_2019-08-13 22_52_41" href="https://livedoor.blogimg.jp/hardyboy/imgs/9/f/9f1c2c18.jpg"><img  class="pict" alt="SORDM5_2019-08-13 22_52_41" src="https://livedoor.blogimg.jp/hardyboy/imgs/9/f/9f1c2c18-s.jpg" width="480" hspace="5" height="644" border="0"></a><br /></div><br /><div>　カードエッジの端子は以下のとおり。ただし必要のない*IORDなどは端子ごと削除されている。<br /></div><br /><div><img  class="pict" alt="スクリーンショット 2019-08-13 23.01.03" src="https://livedoor.blogimg.jp/hardyboy/imgs/a/3/a39e9d36.jpg" width="148" hspace="5" height="614" border="0"><br /><br /></div><br /><div>　次回はSRAMを32K、ROMを512Kからソフトを選択できるよう改造します。</div><br />]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/9446044.html">
<title>PROMで*PGMをオープンにしていると読めないことがある</title>
<link>http://blog.livedoor.jp/hardyboy/archives/9446044.html</link>
<description>　ハマったのでメモ。　パラレル接続のPROMは容量が違っても互換性があるようにピン配置にを決めてある。　さて、この28ピンパッケージでVppやP#(*PGM)をオープンにしたままでROMの種類を変えていたらリードできないものがあった。使ったのはいずれも富士通製のUVEPROM。　Vp...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2019-08-08T12:00:22+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[<div>　ハマったのでメモ。</div><br /><div>　パラレル接続のPROMは容量が違っても互換性があるようにピン配置にを決めてある。</div><br /><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/3/e/3eb16daa.jpg" title="スクリーンショット 2019-08-08 7.37.01" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/3/e/3eb16daa-s.jpg" alt="スクリーンショット 2019-08-08 7.37.01" class="pict" width="480" hspace="5" height="323" border="0"></a><br /></div><br /><div>　さて、この28ピンパッケージでVppやP#(*PGM)をオープンにしたままでROMの種類を変えていたらリードできないものがあった。使ったのはいずれも富士通製のUVEPROM。</div><br /><div><a  href="https://livedoor.blogimg.jp/hardyboy/imgs/2/e/2eeef1fa.jpg" title="2019UVEPROM" target="_blank"><img  src="https://livedoor.blogimg.jp/hardyboy/imgs/2/e/2eeef1fa-s.jpg" alt="2019UVEPROM" class="pict" width="480" hspace="5" height="360" border="0"></a><br /></div><br /><div>　Vpp,*PGMをオープンにしたままでの結果は以下のとおり。</div><br /><div>MBM2764　読める</div><div>MBM27C128　読めない</div><div>MBM27C256　読める</div><br /><div>　データシートを確認してみると、リード時ではVppはVccと同じ、*PGMはVIH(=Hレベル)とあった。追加実験としてMBM27C128で*PGMを4.7KΩでプルアップしたらリードできた。</div><br /><div>　ということでサボってハマってしまったという話でした。</div><br /><br /><br /><br /><a  target="_blank" href="https://www.amazon.co.jp/dp/B079JS4PRP?tag=keisanki-22">富士通(FUJITSU) UV EPROM 32K 2732A-30Z MBM2732A-30Z-G</a><br  clear="all">
<table  border="0">
<tbody><tr  align="left">
<td>
<a  target="_blank" href="https://www.amazon.co.jp/dp/B079JS4PRP?tag=keisanki-22"><img  alt="B079JS4PRP" aligh="left" src="https://images-fe.ssl-images-amazon.com/images/I/411O1BzniOL._SL200_.jpg" border="0"></a>
</td>
<td  align="left">
<br />
<br />
￥ 980<br />
</td></tr></tbody></table><br /><br /><br /><br />]]>
</content:encoded>
</item>
<item rdf:about="http://blog.livedoor.jp/hardyboy/archives/9098403.html">
<title>検証の計画ーEPROMの二度焼きは有効かどうか(実験なし)</title>
<link>http://blog.livedoor.jp/hardyboy/archives/9098403.html</link>
<description>　ツイッターを楽しんでたらPROMの二度焼きに関する話題が流れてきた。ROMに対する書き込みを確実にするために同じデータを二回書くと解釈した。これはまじないのたぐいだが上司がこれを本気にし一回だけの書き込みで大丈夫かどうか心配しだして検証を依頼された、という感じ...</description>
<dc:creator>hardyboy</dc:creator>
<dc:date>2018-04-07T20:42:38+09:00</dc:date>
<dc:subject>ROM</dc:subject>
<content:encoded><![CDATA[　ツイッターを楽しんでたらPROMの二度焼きに関する話題が流れてきた。ROMに対する書き込みを確実にするために同じデータを二回書くと解釈した。これはまじないのたぐいだが上司がこれを本気にし一回だけの書き込みで大丈夫かどうか心配しだして検証を依頼された、という感じで検証の計画を考えてみる。<br />（なお実験は一切ありません）<br /><br />☆現在の部署の設備環境でROMを書き込む時に二度焼きは必要か？<br />→ROMが化けると製品納入後にトラブル発生の可能性がある。<br />→二度焼きをすることによりデータが確実に書き込めるという主張。しかしその根拠はない。<br />→一回の書き込みより二回書き込んだほうが良さそうな雰囲気を感じるが、それは製造やコスト上影響があるほどのことなのか？<br />→落とし所は、一回の書き込みで充分ですよという客観的な内容。<br /><br />　ROMの書き込みとデータ保持に関するしくみのおさらい。ROMはFETのゲート部分に電荷を溜めることによってFETのON/OFFを行い、これでデータを表現する。<br /><a  href="https://en.wikipedia.org/wiki/Floating-gate_MOSFET" target="_blank">Floating gate MOSFET</a>(Wikipedia)<br />　ROMライタがFloating Gateを飽和されるほど充分に書き込んでいれば問題ないし実際そうなんだろうけど、それでも疑うというのであれば検証するしかない。(実は答えはここで出ている。Floating Gateに溜まっている電子の量が一回の書き込みでしきい値を越えていれば上書きしても無意味)<br /><br /><br />　検証対象、検証に必要な機材を検討する。<br />・ROMライター　量産で使用するもの。<br />・PROM。複数のメーカーより同一ロットを複数個。<br />・ROMサイズ分のランダムなテストパターン。<br />・ROM読み出しの治具。マイコンで走査する、またはROMライターのVerify機能を使う。<br /><br />　データ化けがより起こりやすいパラメータの検討。<br />・データの読み出し速度<br />・データの読み出し　順かランダムか<br />・動作電圧　±5%、±10%<br />・温度<br /><br />　パラメータは振りやすいものからいじっていく。例えば温度を-10℃にしたいときはチャンバーが必要になりおおげさでこれはやりにくい。動作電圧等は振りやすい。データの読み出し速度は実際の製品で使う速度に合わせておく。<br />　データの読み出し方向については、治具が簡単になる方向にしておく。例えばランダム読み出しをしようと思えばマイコンを採用してコードを書いたり、と治具の設計が複雑になり治具のデバッグになってしまう恐れがある。<br /><br />　異常な現象を出やすくするためには、まずTypicalな設定で基準となる動作を確認し、パラメータを１つずつ現象が出やすいと思われる方向へ振る。例えば電圧＋10%で正常動作したら、＋5%ではおそらく出ないだろうという予測ができる。<br /><br />　異常現象が出ないことの検証は、設定した検証項目すべてをクリアすることで確認するので時間がかかる。<br />・PROM 同一ロット10個に同じランダムパターンを書き込み、治具により読み出しテストを1個あたり5分×3セット<br />　このへんで決めた数値は大きければおおきいほどよいのだが、それでは実験が終わらないので聞かれたら次のように答えることにする。<br />　5分の根拠→ROMのデータ読み込みn周分なので回数的に充分<br />　3回の根拠→1回じゃでないかもしれないので3回もやれば充分<br />このへんで決めた実験回数はあとで減らすことができない。減らしたせいで出なかったじゃないかと疑われる可能性がある。<br /><br /><br />　では以上の設定で実験をやってみたという設定で話はつづく。<br /><br />・A社のROM 10個について、電圧±10%、温度25℃でパス<br />・B社のROM 10個について、電圧±10%、温度25℃でパス<br />・C社のROM 10個について、電圧±10%、温度25℃でパス<br /><br />　一週間でこれだけ済んで上司に報告すれば、おおよそ「まあ出ないんだろうな」という雰囲気になるのでもう一つパラメータを振って現象が出なければ終了、となりそう。ということで今度は温度を振ってみる。温度を振るためには低い方と高い方を設定して上記のテストを行うか、またはチャンバーを借りて連続的に変化させ連続読み出しを行わせる。<br /><br />　温度を二点設定する方法：<br />10℃雰囲気について、前回のテストを行う。<br />40℃雰囲気について、前回のテストを行う。<br /><br />　チャンバーを使う方法：<br />室温→50℃→室温→-10℃→室温を5日間の間で行い、最後まで正常動作することを確認。治具は検証済みのものが複数台あると望ましい。例えば動作電圧をそれぞれ変えたもの。<br /><br />　チャンバーを使った温度連続変化の方が、動作時間/温度環境ともに厳しくなるのでこれをパスすればおそらくどこからも問題がないと言えるだろう。チャンバーの借用も含めおそらく二週間コースですね。<br /><br />　　さて、それでもランダムな読み出しでは検証できていないじゃないかという話が出るかもしれない。そんなこともあろうかとランダム読み出しの治具は検証の間に検討を済ましておく。これを実際行うかどうかは上司の判断となる。担当者がこの実験にかかりっきりになる時間もタダではないのだ。<br /><br />　検証はこういう条件でこれだけの時間行ったことについてOK/NGが言えるので、設定した条件の理由についてはすべて説明ができなければいけない。時間については検証にかかるコストとそれにみあう成果―それはひょっとしたら上司の安心感かもしれないが、周囲が納得できる長さにしなければならない。これはきりがないので充分に相談してゴールを設定する。リソースが有限な箇所は検証も有限なので、やはり最終的にはコストとの調整になる。<br /><br /><br />　ここまでは異常がないことを前提に話を進めてきた。もし異常な現象が出たのなら、デバッグに切り替わる。パラメータは異常な現象が再現する方向に倒して再現回数を上げ、次に最初のテーマであった二度焼きで改善されるのかどうか比較する。ここで正常動作の方向に倒れれば、はじめて二度焼きは効果がありそうだということが言える。そうなると、一回書き込んだROMで発生するエラーの回数と二回書き込んだROMで発生するエラーの回数で有意な差があるかどうかの検証に変わるだろう。<br /><br />　二度書きでも改善しない、あるいは差がなければ部品や機材が疑わしくなる。もし部品であるROMそのものに異常が見られたら？大きいメーカーでは部品をまとめて大量に購入するため、購入する部品の評価をする部門を持っていたりするので、そこが検証を引き取ってくれる場合がある。こうなるといま設計している物とは関係がなくなってくるので、開発部門としては別の方式や部品の検討に入らなければならない。<br /><br /><br />
<table  cellpadding="5" border="0"><tbody><tr><td  valign="top"><a  target="_top" href="http://www.amazon.co.jp/exec/obidos/ASIN/B079KLZDD9/keisanki-22/"><img  alt="ATMEL AT27C010-70PU ONE TIME PROGRAMMABLE (OTP) EPROM IC (1 piece) [並行輸入品]" src="https://images-fe.ssl-images-amazon.com/images/I/21ZyJAHOmvL._SL160_.jpg" border="0"></a></td><td  valign="top"><span><a  target="_top" href="http://www.amazon.co.jp/exec/obidos/ASIN/B079KLZDD9/keisanki-22/">ATMEL AT27C010-70PU ONE TIME PROGRAMMABLE (OTP) EPROM IC (1 piece) [並行輸入品]</a><br /><br />Tough Guy  <br />売り上げランキング : <br /><br /><a  target="_top" href="http://www.amazon.co.jp/exec/obidos/ASIN/B079KLZDD9/keisanki-22/">Amazonで詳しく見る</a></span><span> by <a  href="http://www.goodpic.com/mt/aws/index.html">G-Tools</a></span></td></tr></tbody></table>
<br />]]>
</content:encoded>
</item>

</rdf:RDF>
