HP 42S のメモリーを 32KB にアップグレード
細田 隆之
Oct. 10, 2007
hp42s-0.jpg

English English edition is here.



上面図 バッテリカバーを外した
底面図
4箇所の溶着部と
薄板用ドリル (3.8mm)
溶着部の上部 1.5mm を
削り取る
hp42s-2.jpg hp42s-3.jpg hp42s-4.jpg hp42s-5.jpg
上端が開いたところ 見えない4箇所の溶着部を
外してケースが分離した
バックプレートと圧電ブザー プリント基板上に MPU と
SRAM が1個乗っている
hp42s-6.jpg hp42s-7.jpg hp42s-8.jpg hp42s-9.jpg
SRAM と ROM パッド部の
拡大図
8KB SRAM を取り外した
(洗浄前なのでちょっと汚い)
ジャンパ設定を変更して 32KB SRAM を実装
フラックスを取り除きさらに洗浄した
hp42s-10.jpg hp42s-11.jpg hp42s-12.jpg 元々付いていた S-MOS
system の 8KB SRAM
SRM2264LM10
  Isb(typ) = 0.5μA
  Isb(max) = 20μA
を 28ピン 300mil 幅の標準
SOIC パッケージ 省電力品の
32KB SRAM と交換した。
ここで使ったのは Cypress の
CY62256LL-70SNC
  Isb(typ) = 0.1μA
  Isb(max) = 5.0μA
Available Memory:
31533 Bytes

(ファームウェア Rev.C)
おまけ 1 *note1
クロックバッファ出力波形
fclock = 32.768kHz
おまけ 2 *note2
SRAM の Vdd 端雑音波形
SRAM の _WR 波形
おまけ 3 *note3, *note13
固体タンタルコンデンサを
積層セラミックに交換
hp42s-13.jpg hp42s-14.jpg hp42s-16.jpg hp42s-17.jpg
SN=3242S09191

*note1 : クロック周波数
クロック発振器のバッファ出力らしきテストポイントが水晶発振子の隣にあって、 この写真はそこの波形と
32.78kHz (実際には周波数カウンタで測定すると 32.768kHz) の周波数を表している。
*note2 : 雑音と波形
これらの波形は下記のテストプラグラムを実行中に測定した。
SRAM の Vdd 端子での雑音は許容できる程度で RAM_WR の波形もそんなに悪くなかった。

00 { 15-Byte Prgm }
01 LBL "W"
02 STO "C"
03 CLX
04 RCL "C"
05 GTO "W"
06 .END.
*note3 : コンデンサの交換 (随意)
これらの固体タンタルコンデンサを積層セラミックコンデンサに交換することにより
その洩れ電流を低減し、また寿命と信頼性を改善することが出来る。
大きい方の 100μF/6.3V のコンデンサは電源のデカップリング用で、
他の小さいのは LCD 用の昇圧回路の平滑用である。
ここで使用したコンデンサは、TDK の最新の高性能コンデンサ(部品の型番は下に記す) なので、まだ幾分高価である。
元の部品パッドは C3225 サイズのコンデンサには、ぎりぎりにしか適合しないので 注意が必要である。

TDK C3225(EIA CC1210) 100μF±20%/6.3V C3225JB0J107M
TDK C3225(EIA CC1210) 10μF±20%/16V C3225JB1C106M

そういう意図ではないが、 SRAM の Vdd 端子での雑音は このコンデンサ交換ではそんなには低減されなかった。
SRAM とプロセッサの間のパッドに 100nF〜1uF の積層セラミックコンデンサを実装して、 それの電源のデカップリングにするのもよい。
*note4 : 電源電流 (fclock=32.768kHz, Vbattery=4.70V(SR44×3), Ta=26°C)
Irun≈3.3mA
Iidle≈380μA
Istandby≈8.9μA
standby current monitor resistor スタンバイ電流測定用抵抗 (1kΩ±0.05%//10μF±20%)
*note5 : SR44 の標準容量は 165mAh。


水晶振動子を交換して 42S を倍速に
細田 隆之
Jan. 08, 2008

元の 32.768kHz の
水晶振動子を外す
65.536kHz の水晶振動子を
実装する
元の波形
クロック (上) と
SRAM_WR (下)
修正後の波形
クロック (上) と
SRAM_WR (下)
hp42s-a.jpg hp42s-b.jpg hp42s-c.jpg hp42s-d.jpg
SN=3242S09191

セルフテストの結果は正常で、また伝送線路のパラメータを求めるユーザープログラムの結果は期待通りであった。

内蔵のデバッガを使い 0x40300 番地にあるスピードレジスタを 0xF にすることによって、
この改造した 42S は新しい電池を入れた状態でユーザープログラムをオリジナルの 42S の4倍のスピードでエラー無しで実行することが出来た。

様々な周波数と電圧における自己診断テスト ([EXIT]+[LN]) の結果 (Ta=27°C)
Ta=27°COscillator frequency [kHz] Comment
Vbattery65.536100.000131.072
4.7VO.K.O.K. O.K.Nominal voltage of SR44×3 at 20°C
3.8VCut-off voltage of SR44×3 at -10°C
3.7VROM O.K.
DRAM FAIL
URAM O.K.
ROM O.K.
DRAM FAIL
URAM O.K.
-
3.4V
3.0V
cann't turn oncann't turn on Low battery indicator turns on when
Vbattery ≤ 3.0V
2.9V
2.8V
ROM O.K.
DRAM FAIL
URAM O.K.
2.7V
Cut-off voltage of LR44×3 at 20°C

*note6 : 電源電流 (fclock=65.536kHz, *(0x40300)==0x7, Vbattery=4.72V(SR44×3), Ta=24°C)
Irun ≈ 5.3mA
Iidle ≈ 440μA(typ.) (420μA/minimum contrast ~ 560μA/maximum contrast)
Iidle ≈ 440μA(typ.) (420μA/minimum contrast ~ 520μA/maximum contrast, Diode=BAR43CFILM)
Istandby ≈ 15 μA
Istandby ≈ 14.9 μA (Diode=BAR43CFILM)
Isleep ≤ 100 nA *note15
*note7 : 電源電流 (fclock=65.536kHz, *(0x40300)==0xF, Vbattery=4.71V(SR44×3), Ta=23°C)
Irun ≈ 7.6mA
Iidle ≈ 480μA(typ.)

*note8 : Calculator Benchmark (N-queen problem) の結果
y:8
x:876

6:07.5 [min:sec] HP-42S (Rev.C) Keystroke / RPN / fosc=65.536kHz
3:28.0 [min:sec] HP-42S (Rev.C) Keystroke / RPN / fosc=65.536kHz / fast mode
*note9 : 重量
136.0g + 6.6g(batteries)

初期モデルの 42S の改造
細田 隆之
Jan. 20, 2008

初期モデルの 42S (ファームウェア Rev.A) に上記の改造を施して倍速でうまく動作している。
だが今のところ高速モード(fast mode)には設定することが出来ていない。 また、fast mode にも問題なく設定出来るようだ。

PCB の裏面
(ファームウェア Rev.A)
LCD の裏面

LCD アセンブリ内側の埃を
HFC134a のエアロダスター
ZC-32 で吹き飛ばして除去
PCB の改造後の上面

バックプレート
Kapton®テープ付加*note13
hp42s-e.jpg hp42s-f.jpg hp42s-i.jpg hp42s-g.jpg hp42s-h.jpg
SN=3005S02826

この改造に使用した部品は: *note10 : 電源電流 (fclock=65.536kHz, *(0x40300)==0x7, Vbattery=4.73V(SR44×3), Ta=24°C)
Irun ≈ 5.0mA
Iidle ≈ 440μA(typ.) (400μA/minimum contrast ~ 540μA/maximum contrast)
Iidle ≈ 380μA(typ.) (340μA/minimum contrast ~ 420μA/maximum contrast, Diode=BAR43CFILM)
Istandby ≈ 14 μA
Istandby ≈ 13.5 μA (Diode=BAR43CFILM)
Isleep ≤ 100 nA
*note11 : 電源電流 (fclock=65.536kHz, *(0x40300)==0xf, Vbattery=4.50V(SR44×3), Ta=22°C)
Irun ≈ 6.8mA
Iidle ≈ 440μA(typ.)
*note12 : Calculator Benchmark (N-queen problem) の結果
y:8
x:876

5:48.2 [min:sec] HP-42s (REv.A) Keystroke / RPN / fosc=65.536kHz
3:30.4 [min:sec] HP-42s (Rev.A) Keystroke / RPN / fosc=65.536kHz / fast mode
*note13 : バックプレートに Kapton® テープ付加
100μF の固体タンタルコンデンサを積層セラミックコンデンサに交換した場合は、コンデンサ上部の
バックプレートに Kapton®テープなどの強靭な絶縁テープを付加し不慮の短絡事故を防ぐべきである。
*note14 : 重量
139.5g + 6.6g(電池)
*note15 : ディープスリープモード
[EXIT] と [+] と [XEQ] を同時に押すとディープスリープモードに入ります。

HP 42S 部分回路図 (LCDへの配線は省略)
細田 隆之
Nov. 15, 2009
回路図 (316KB png)
HP 42S schematic

Rev.0.20 : Nov. 17 2020 : L1R2 のピンアサインを修正しました。
Rev.0.16 : Jan. 30, 2010
Rev.0.15 : Jan. 27, 2010
Rev.0.14 : Dec. 22, 2009

キースイッチが壊れた HP-42S のメンブレン・スイッチの移植による修理
細田 隆之
Nov. 17, 2009

壊れているメンブレン・スイッチ 移植後のメンブレン・スイッチ 部品の移植元と提供先
dead key switch after transplantation donor and acceptor
(→SN=2942S30206)


LCD の調整が出来なくなった HP-42S の暫定対策
Takayuki HOSODA
Jan. 23, 2010
LCD contrast

プロセッサ内のスイッチング・トランジスタが壊れて LCD のコントラストが極めて薄くなって調整出来なくなる問題は 倍電圧回路を代わりに使う事で対処できました。
そのために発振器のモニタ出力信号をその電源に使っています。

改造した LCD バイアス電圧発生器 プリント基板の改造箇所 電圧波形
Schematic PCB mod. waveform
SN=2942S30206 (ハウジングは前にキースイッチを修理した物と交換した)

  • SRAMと水晶振動子の交換を含み、この改造に使用した部品は: *note10 : 電源電流 (fclock=65.536kHz, *(0x40300)==0xF, Vbattery=4.70V(SR44×3), Ta=25°C)
    Iidle ≈ 450μA(typ.) (440μA/minimum contrast ~ 550μA/maximum contrast)
    Istandby ≈ 22 μA
    Isleep ≈ 660 nA


    32Kバイト不揮発性メモリで倍速の HP 42S
    Takayuki HOSODA
    Dec. 10, 2013
    2.7-5.5V の動作電圧範囲と 20μA のスタンバイ電流、 1014 回の読み書きの耐久性と38年のデータ保持力 を持っている Cypress/Ramtron 社の最新の 強誘電体RAM(Ferroelectric RAM)のおかげで HP 42S のメモリを不揮発化することができました。 不揮発性メモリ(NV-RAM) FM18W08 を使うにはチップイネーブル信号を NV-RAMに合うようにするための簡単な変更が必要です。 この NV-RAM では *CE 信号はアドレスをラッチするために使われるので *CE1 はアドレスストローブ AS でゲートされなけなければなりません (つまり *CE = *CS1 & AS)。
    HP 42S のバス制御線の波形
    hp42s *CS/AS
    ch1:*CS, ch2:AS (2V/div, 1μ/s, Vdd=4.2V, Ta=25°C)

    不揮発性メモリのための PCB 改造
    配線とデカップリングコンデンサ
    hp42s NV PCB
    FRAM(FM18W08-SG)のクロースアップ
    hp42s NV FM18W08
    多機能ゲート(SN74LVC1G97)のクロースアップ
    hp42s NV SN74LVC1G97
    SN=3005S02826
    hp42s/NV-RAM 回路図
    クリックで全回路図 (155KB gif)
    hp42s NV schematic
    Rev.0.19 : Dec. 11, 2013

    この改造に使用した部品: 結果
    HP 42S/NV は供給電圧が 2.9V に下がるまで動作し続けました。
    次の状況を乗り越えて計算機の内容は生き残りました。
    *note17 : 電源電流 (fclock=65.536kHz, Vbattery=4.70V(SR44×3), Ta=25°C, SN=3005S02826/FM28W08-SGTR)
    Irun ≈ 3.97mA
    Iidle ≈ 445μA
    Istandby ≈ 31.7μA
    Isleep ≈ 17.5μA
    *note18 : 電源電流 (fclock=65.536kHz, Vbattery=4.70V(SR44×3), Ta=25°C, SN=3242S09191/FM28W08-SGTR)
    Irun ≈ 4.13mA
    Iidle ≈ 476μA
    Istandby ≈ 22.84μA
    Isleep ≈ 7.52μA

    32Kバイト不揮発性メモリと保護ダイオード付きで倍速の HP 42S
    Takayuki HOSODA
    Nov. 13, 2020
    hp42s NV internal

    "HP 42S のメモリーを 32KB にアップグレード" のときの 42S に "32Kバイト不揮発性メモリで倍速の HP 42S" と同じ改造を施し、 併せて固体タンタルキャパシタを2個の MLCC と1本の保護用ショットキーダイオードに交換しました。 このダイオードは ESD や電池の逆挿入からプロセッサやメモリーを保護してくれるかも知れません。

    hp42s/NV-RAM / MLCC and SiSBD schematic diagram
    クリックで全回路図 (400KB png)
    hp42s NV schematic
    Rev.0.20 : Nov. 17, 2020 : L1R2 のピンアサインを修正しました。
    交換した部品 追加した部品 保護ダイオードの漏れ電流と順方向電圧
    DUT = BAT43, Ir ≈ 40 nA (Ta = 21 °C, Vr = 5 V), Vf ≈ 304mV (Ta = 21 °C, If = 2 mA)

    HP 42S を不揮発化する別の方法
    Takayuki HOSODA
    Dec. 15, 2013

    HP 42S は電池電圧が 3.0V に下がるまで動作可能なので、 3.3V の LDO(低電圧降下)レギュレータと併せて使って アドレス変化検出検出器を備えた最新の低電圧不揮発性FRAM (例えば Cypress/Ramtoron の FM28V020) を利用することができます。 その FRAM は比較的多めの 90μA のスタンバイ電流と引き換えに アドレスをラッチする目的の *CE の制御は不要となっています。 45μA の LDOレギュレータの静止電流と合わせるとスタンバイ電流は 135μA 以上になってしまいます。 そのことはスリープモードに於いてすら、一組の新しい SR44 電池が 50日以上 持たないことを意味します。 従って、この改造は実用にはお勧め出来ません。

    不揮発性メモリのための基板の改造
    電源のオン・オフサイクルのリセット時に マイクロプロセッサのピンが高インピーダンス状態になる ことが想定されるため、その間 FRAM の *CE ピンを 'High' に保持するためにプルアップが必要です。

    FRAM, LDOレギュレータ, デカップリングコンデンサとプルアップ抵抗
    hp42s VR PCB
    SN=2909S32377
    hp42s/NV-RAM/LDO 回路図
    クリックで全回路図 (43KB gif)
    hp42s VR schematic
    Rev.0.19x : Dec. 15, 2013
    *note19 : 電源電流 (fclock=65.536kHz, Vbattery=4.70V(SR44×3), Vcc=3.30V, Ta=25°C)
    Isleep ≈ 133μA
    お断り
    これらの改造は実験的なもので結果を保障されたものと考えてはなりません。 ここに記載してある内容は筆者による改造の推奨もそそのかしも意図していません。

    参考文献
    MoHPC HP Articles Forum, Increasing HP-42s Memory to 32K, Paul J. Brogger
    MoHPC HP Articles Forum, Pioneer keyboard schematic, Randy Slayer
    他には
    HP pioneer series calculator internals
    Hewlett-Packard Calculator - Eric's site
    追補 - プログラムライブラリ

    外部リンク
    www.finseth.com - HPDATAbase
    www.hp42s.com - Home on the net for everything HP-42S
    www.hpmuseum.org - The Museum of HP Calculators
    MoHPC HP Articles Forum, Pioneer "Observational Internals", Paul J. Brogger
    MoHPC HP Articles Forum, HP-42S: New Facts, J-F Garnier
    HP-42S Fast Mode under program control, Gene

    Cypress
    TDK
    Maxell

    www.finetune.co.jp [Mail] © 2000 Takayuki HOSODA.
    Powered by
     Finetune