Difference between revisions of "5MHz Upgrade hacks"

From Bitchin100 DocGarden
Jump to: navigation, search
(Created page with " == Can we speed up the Model T? Apparently! == I have been investigating various ways to make the Model T run … faster. Currently I have fixed 5hMz upgrade solutions for...")
 
(Fixed 5MHz Upgrades)
 
(105 intermediate revisions by one user not shown)
Line 5: Line 5:
 
I have been investigating various ways to make the Model T run … faster.
 
I have been investigating various ways to make the Model T run … faster.
  
Currently I have fixed 5hMz upgrade solutions for  
+
Initially, I started with fixed 5MHz upgrades.  These are practical if you never ever want to run at 2.5MHz.
 +
But, since 5MHz operation effectively renders the cassette port unusable, a switchable design might also be nice.
 +
Switchable means that you can control the speed from BASIC.
 +
 
 +
== UPDATE June 2022 ==
 +
I've invested some time in trying to make the simplest possible 5M upgrade for M100.
 +
M100 has a couple of issues to overcome
 +
  1) the main ROM is too slow.  This is easily overcome by swapping in an EPROM.
 +
  2) on early M100s the system RAM is also (barely) too slow. Early RAM modules were 250nsec SRAM.
 +
 
 +
I now have a very nice solution that allows one to keep using the original SRAM.
 +
The solution involves modifying the A* signal that is used to enable the SRAM.  By
 +
speeding it up a touch, you can use the original SRAMs (and really any M100 SRAM modules).
 +
 
 +
I'll soon be posting a much revised solution for M100.
 +
The great news is also that I've really tuned the power consumption.
 +
My test M100 had a stock current of about 50mA.  Running 5MHz the current jumped to 70mA.
 +
This is a nice result, better than I have had in the past with other designs.
 +
And you are spending less power per CPU cycle.. so it is a GREEN solution! hah.
 +
 
 +
 
 +
===Switchable solutions===
 +
In the M100/T102, port /Y1 is free to use.  So, for switchable implementations
 +
 
 +
  Power up default is 2.5 MHz
 +
  OUT144,0  sets to 2.5MHz
 +
  OUT144,1  sets to 5MHz
 +
 
 +
== Current Upgrades Status ==
 +
 
 +
{| class="wikitable"
 +
|'''Computer model'''||'''Fixed 5MHz '''||'''Switchable 5MHz'''
 +
|-
 +
|T102|| PCBs, V1.2 instructions available || PCB available
 +
|-
 +
|M100|| PCBs, V1.1 instructions available|| PCBs available
 +
|-
 +
|M100 (UK)|| like M100, but no need for new EPROM || like M100, but no need for new EPROM
 +
|-
 +
|M100+NSC800|| contact me || -
 +
|-
 +
|T200|| not yet investigated || not yet investigated
 +
|-
 +
|PC-8201|| not yet investigated || not yet investigated
 +
|-
 +
|KC-85|| like M100? || like M100?
 +
|-
 +
|}
  
  M100
 
  T102
 
  M100 running NSC800 CPU
 
  
I am currently working on a software switched solution where you can change between stock clock and turbo modes using a simple OUT command in BASIC.
 
  
 
As I test and more-or-less land on a reasonable upgrade process, I will post instruction files here
 
As I test and more-or-less land on a reasonable upgrade process, I will post instruction files here
 
If you have any questions, please get in touch with me at Twospruces at --the google mail service.
 
If you have any questions, please get in touch with me at Twospruces at --the google mail service.
  
 +
Also, since OSHPARK is so clumsy in dealing with PCB revisions (basically you can't remove a bad file design once shared), I've decided to just post PCB gerber files and schematics here.  That way I can control issues that I find and always have the corrected files available.
  
 
== What are the tradeoffs? ==
 
== What are the tradeoffs? ==
  
When installed, your laptop will be running at 2x clock speed. However, the system clock remains unchanged.
+
A fixed solution makes your laptop always run at 5MHz.
  1Processor, memory, LCD, I/O. BCR are all running at 5MHz
+
A switchable solution gives you the option of standard operation or "TURBO mode".
  2.  The serial port, modem and printer ports are unchanged
+
The switchable solution is a nice way to goSwitch up when needed, switch down when necessary.
  3.  Cassette port will not work correctly.  It will be 2x faster. (makes the case for a switchable solution).
+
  
 +
Some of the considerations are captured below.
  
 +
===Laptop functionality===
 +
{| class="wikitable"
 +
|'''Item'''||'''Fixed 5MHz '''||'''Switchable 5MHz'''
 +
|-
 +
|Processor speed|| 5MHz || 2.5 or 5 MHz
 +
|-
 +
|LCD|| 5MHz || 2.5 or 5 MHz
 +
|-
 +
|I/O|| 5MHz || 2.5 or 5 MHz
 +
|-
 +
|BCR|| 5MHz || 2.5 or 5 MHz
 +
|-
 +
|Cassette|| assumed non functional || functional in 2.5 MHz mode
 +
|-
 +
|Modem|| standard || standard
 +
|-
 +
|Printer|| standard || standard
 +
|-
 +
|Power consumption|| ~40% higher || ~40% higher in 5MHz mode
 +
|-
 +
|}
 +
 +
===Complexity of modifications===
 +
{| class="wikitable"
 +
|'''Item'''||'''Fixed 5MHz '''||'''Switchable 5MHz'''
 +
|-
 +
| Clock PCB assembly ease || easiest || small SMT soldering
 +
|-
 +
|Crystal location || swap onboard || mounted on adapter board
 +
|-
 +
| Clock PCB installation ease || easiest || additional wiring
 +
|-
 +
| M100 ROM upgrade|| challenging to build || challenging to build
 +
|-
 +
| M100 main PCB cut tracks? || one clock trace  || one clock trace
 +
|-
 +
| T102 main PCB cut tracks? || one clock trace and RAM mod  || one clock trace and RAM mod
 +
|-
 +
| Reversible? || yes, remove hack and repair cut tracks  || yes, remove hack and repair cut tracks
 +
|-
 +
 +
|}
 +
 +
== What about compatibility with REX#/REXCPM? ==
 +
 +
REX# and REXCPM from November 2021 are built and tested compatible with 5MHz.
 +
In fact my test station runs at 5MHz.
 +
If you have an earlier REX#/REXCPM, contact me to discuss what to do.
  
== What do you need? ==
 
  
  Some hardware skills - soldering, PCB modification etc.
 
  a clock divider circuit board
 
  a small number of parts (depending on the solution)
 
  a 9.803 HC49 crystal
 
  
 
== Instructions ==
 
== Instructions ==
  
 +
Take a look at the instruction files below. Please don't try this if you are not confident of success!
 +
I welcome feedback and comments.  Especially if you find errors or improvements.
 +
 +
 +
 +
===Fixed 5MHz Upgrades===
 +
 +
{| class="wikitable"
 +
|'''Computer model'''||'''Version'''||'''Upgrade file'''||'''Power consumption at 5MHz'''
 +
|-
 +
|T102||Fixed 2x upgrade V1.2 || [[Media:T102 5MHz mod V1.2 Apr2 2022.pdf|T102 5MHz mod V1.2 Apr2 2022.pdf]] ||80-100mA
 +
|-
 +
|M100||Fixed 2x upgrade V1.1 ||[[Media:M100 5MHz mod V1.1 Apr 2022.pdf|M100 5MHz mod V1.1 Apr 2022.pdf]] ||80-100mA
 +
|-
 +
|T102||Fixed 2x upgrade V2.0 || [[Media:tbd.pdf|T102 5MHz mod V2.0 .pdf]] || 65-75mA
 +
|-
 +
|M100||Fixed 2x upgrade V2.0 || [[Media:tbd.pdf|M100 5MHz mod V2.0 .pdf]] || 65-75mA
 +
|-
 +
|}
 +
 +
'''Comments on these upgrades'''
 +
 +
Power consumption:
 +
 +
While effective, and simple, these two initial upgrade designs suffer from higher current than is desirable.
 +
Typical M100/T102 have power consumption in MENU of about 50 mA.  I have observed that using these conversions, power can be between 80 and 100 mA.
 +
This seems to be due in part to how this conversion modifies the A* circuit.
 +
 +
Both of these initial conversions use a simple change to the A* circuit. Here the A* signal is tied to +5V, meaning the RAM is enabled quite early in the CPU cycle.  While there is no conflict with this wiring, I now appreciate that there is an advantage to reducing the time over which the SRAM chips are enabled. 
 +
 +
A* is used, in the standard design, to enable the SRAM only when there is an active READ or WRITE, driven by the /RD and /WR signals.
 +
This has the effect of turning the SRAM on for the minimum time duration.
 +
 +
SRAM has a fairly significant power draw when selected.  So when the A* signal timing is modified (which is needed to support 5MHz operation), the longer the SRAM stays "on" the more power it consumes.
 +
 +
The good news is that I have a design that drops the RAM power significantly.
 +
I'll be posting that design shortly.
 +
 +
 +
 +
 +
'''NSC800 / CP/M @ 5MHz'''
 +
For M100 with NSC800, contact me for a solution.  This would of course be a dedicated CP/M machine with REXCPM installed.
 +
 +
===Switchable 5MHz Upgrades===
 +
 +
{| class="wikitable"
 +
|'''Computer model'''||'''Version'''||'''Upgrade file'''
 +
|-
 +
|T102||Switchable 2x upgrade V1|| design is done.  working on docs
 +
|-
 +
|M100||Switchable 2x upgrade V1|| design is done.  working on docs
 +
|-
 +
|}
 +
 +
== PCBs ==
 +
 +
Posted here so I can maintain and update the designs, are Gerber files and layout images.
 +
 +
{| class="wikitable"
 +
|'''PCB'''||'''Version'''|| '''Comments''' ||'''Gerbers'''||'''Image'''
 +
|-
 +
|Fixed 5MHz clock board (/2 board)|| This board has no small surface mount parts and uses main board crystal. Easiest!  Does not include A* signal generation, so induces higher than ideal power consumption.|| V2 || [[Media:1cpu 80C85 xtal vmin.zip| Divide by 2 PCB Gerbers]] ||  [[Image:5Mfixedv2.jpg]]
 +
|-
 +
|Fixed 5MHz clock board (/2 board) + A*|| This board has no small SMT and uses main board crystal.  Includes A* generation to reduce power consumption to minimum.|| V1 || [[Media:tbd.zip| Divide by 2 + A* PCB Gerbers]] ||  [[Image:5MfixedA.jpg]]
 +
|-
 +
|Switchable 5MHz clock board + A*|| Switchable design, with onboard crystal, timing generation and A* function.  Harder to build, has small surface mount parts. || V4 || [[Media:tbd.zip| Switchable 2x/1x + A* PCB Gerbers]] || [[Image:switchablev4.jpg]]
 +
|-
 +
 +
|}
 +
 +
== Photos ==
 +
 +
'''T102 with a fixed 5MHz board'''.  This board is easy to make, and the 10M crystal is on the main board.  No small SMT soldering!
 +
Note: what is shown is an early board. Latest board is more compact and eliminates the unused parts.
 +
 +
[[Image:T102_fixed.jpg]]
 +
 +
 +
'''T102 with a switchable 5MHz board'''.  This board has to use a crystal on the clock board, and has small SMT soldering.  Harder to build, but has switchable clock.
 +
 +
This board is good, but there is a better solution.
 +
 +
 +
[[Image:T102_switchable.jpg]]
 +
 +
== FAQ ==
  
Fixed 5 MHz upgrade:
+
As this is tried I'm sure questions and comments will arise. We can capture useful information here. Thanks.
[[Media:T102 5MHz mod V1 Nov 2021.pdf|T102 5MHz mod V1 Nov 2021.pdf]]
+
  
coming soon - M100 fixed upgrade, software switchable solutions
 
  
  

Latest revision as of 07:29, 17 June 2022


Can we speed up the Model T? Apparently!

I have been investigating various ways to make the Model T run … faster.

Initially, I started with fixed 5MHz upgrades. These are practical if you never ever want to run at 2.5MHz. But, since 5MHz operation effectively renders the cassette port unusable, a switchable design might also be nice. Switchable means that you can control the speed from BASIC.

UPDATE June 2022

I've invested some time in trying to make the simplest possible 5M upgrade for M100. M100 has a couple of issues to overcome

 1) the main ROM is too slow.  This is easily overcome by swapping in an EPROM.
 2) on early M100s the system RAM is also (barely) too slow. Early RAM modules were 250nsec SRAM.

I now have a very nice solution that allows one to keep using the original SRAM. The solution involves modifying the A* signal that is used to enable the SRAM. By speeding it up a touch, you can use the original SRAMs (and really any M100 SRAM modules).

I'll soon be posting a much revised solution for M100. The great news is also that I've really tuned the power consumption. My test M100 had a stock current of about 50mA. Running 5MHz the current jumped to 70mA. This is a nice result, better than I have had in the past with other designs. And you are spending less power per CPU cycle.. so it is a GREEN solution! hah.


Switchable solutions

In the M100/T102, port /Y1 is free to use. So, for switchable implementations

  Power up default is 2.5 MHz
  OUT144,0   sets to 2.5MHz
  OUT144,1   sets to 5MHz

Current Upgrades Status

Computer model Fixed 5MHz Switchable 5MHz
T102 PCBs, V1.2 instructions available PCB available
M100 PCBs, V1.1 instructions available PCBs available
M100 (UK) like M100, but no need for new EPROM like M100, but no need for new EPROM
M100+NSC800 contact me -
T200 not yet investigated not yet investigated
PC-8201 not yet investigated not yet investigated
KC-85 like M100? like M100?


As I test and more-or-less land on a reasonable upgrade process, I will post instruction files here If you have any questions, please get in touch with me at Twospruces at --the google mail service.

Also, since OSHPARK is so clumsy in dealing with PCB revisions (basically you can't remove a bad file design once shared), I've decided to just post PCB gerber files and schematics here. That way I can control issues that I find and always have the corrected files available.

What are the tradeoffs?

A fixed solution makes your laptop always run at 5MHz. A switchable solution gives you the option of standard operation or "TURBO mode". The switchable solution is a nice way to go. Switch up when needed, switch down when necessary.

Some of the considerations are captured below.

Laptop functionality

Item Fixed 5MHz Switchable 5MHz
Processor speed 5MHz 2.5 or 5 MHz
LCD 5MHz 2.5 or 5 MHz
I/O 5MHz 2.5 or 5 MHz
BCR 5MHz 2.5 or 5 MHz
Cassette assumed non functional functional in 2.5 MHz mode
Modem standard standard
Printer standard standard
Power consumption ~40% higher ~40% higher in 5MHz mode

Complexity of modifications

Item Fixed 5MHz Switchable 5MHz
Clock PCB assembly ease easiest small SMT soldering
Crystal location swap onboard mounted on adapter board
Clock PCB installation ease easiest additional wiring
M100 ROM upgrade challenging to build challenging to build
M100 main PCB cut tracks? one clock trace one clock trace
T102 main PCB cut tracks? one clock trace and RAM mod one clock trace and RAM mod
Reversible? yes, remove hack and repair cut tracks yes, remove hack and repair cut tracks

What about compatibility with REX#/REXCPM?

REX# and REXCPM from November 2021 are built and tested compatible with 5MHz. In fact my test station runs at 5MHz. If you have an earlier REX#/REXCPM, contact me to discuss what to do.


Instructions

Take a look at the instruction files below. Please don't try this if you are not confident of success! I welcome feedback and comments. Especially if you find errors or improvements.


Fixed 5MHz Upgrades

Computer model Version Upgrade file Power consumption at 5MHz
T102 Fixed 2x upgrade V1.2 T102 5MHz mod V1.2 Apr2 2022.pdf 80-100mA
M100 Fixed 2x upgrade V1.1 M100 5MHz mod V1.1 Apr 2022.pdf 80-100mA
T102 Fixed 2x upgrade V2.0 T102 5MHz mod V2.0 .pdf 65-75mA
M100 Fixed 2x upgrade V2.0 M100 5MHz mod V2.0 .pdf 65-75mA

Comments on these upgrades

Power consumption:

While effective, and simple, these two initial upgrade designs suffer from higher current than is desirable. Typical M100/T102 have power consumption in MENU of about 50 mA. I have observed that using these conversions, power can be between 80 and 100 mA. This seems to be due in part to how this conversion modifies the A* circuit.

Both of these initial conversions use a simple change to the A* circuit. Here the A* signal is tied to +5V, meaning the RAM is enabled quite early in the CPU cycle. While there is no conflict with this wiring, I now appreciate that there is an advantage to reducing the time over which the SRAM chips are enabled.

A* is used, in the standard design, to enable the SRAM only when there is an active READ or WRITE, driven by the /RD and /WR signals. This has the effect of turning the SRAM on for the minimum time duration.

SRAM has a fairly significant power draw when selected. So when the A* signal timing is modified (which is needed to support 5MHz operation), the longer the SRAM stays "on" the more power it consumes.

The good news is that I have a design that drops the RAM power significantly. I'll be posting that design shortly.



NSC800 / CP/M @ 5MHz For M100 with NSC800, contact me for a solution. This would of course be a dedicated CP/M machine with REXCPM installed.

Switchable 5MHz Upgrades

Computer model Version Upgrade file
T102 Switchable 2x upgrade V1 design is done. working on docs
M100 Switchable 2x upgrade V1 design is done. working on docs

PCBs

Posted here so I can maintain and update the designs, are Gerber files and layout images.

PCB Version Comments Gerbers Image
Fixed 5MHz clock board (/2 board) This board has no small surface mount parts and uses main board crystal. Easiest! Does not include A* signal generation, so induces higher than ideal power consumption. V2 Divide by 2 PCB Gerbers 5Mfixedv2.jpg
Fixed 5MHz clock board (/2 board) + A* This board has no small SMT and uses main board crystal. Includes A* generation to reduce power consumption to minimum. V1 Divide by 2 + A* PCB Gerbers 5MfixedA.jpg
Switchable 5MHz clock board + A* Switchable design, with onboard crystal, timing generation and A* function. Harder to build, has small surface mount parts. V4 Switchable 2x/1x + A* PCB Gerbers Switchablev4.jpg

Photos

T102 with a fixed 5MHz board. This board is easy to make, and the 10M crystal is on the main board. No small SMT soldering! Note: what is shown is an early board. Latest board is more compact and eliminates the unused parts.

T102 fixed.jpg


T102 with a switchable 5MHz board. This board has to use a crystal on the clock board, and has small SMT soldering. Harder to build, but has switchable clock.

This board is good, but there is a better solution.


T102 switchable.jpg

FAQ

As this is tried I'm sure questions and comments will arise. We can capture useful information here. Thanks.