Author Topic: EPROM pin replacement compatibility questions  (Read 4346 times)

0 Members and 1 Guest are viewing this topic.

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
EPROM pin replacement compatibility questions
« on: August 13, 2019, 04:56:35 pm »
I'm looking to replace a 2732 EPROM with a 27512 and similarly a 2764 replaced with a 27010 (or the equivalent EEPROMs). The additional pins of the larger chips will be used for 16x bank-switching via a 4-way DIP switch.
Since the other pins are more or less pin-pin compatible it appears I can just use a "through socket" for them and only re-route the additional ones (which will extend past the existing EPROM sockets anyway).

I've seen a photo of a similar adapter PCB (2732 to 27512) which only plugs into the topmost 4 pins of the 27512 (pins 1, 2, 27 and 28) but this puzzles me since pin 26 of the 27512 (A13) goes to pin 24 of the 2732 (Vcc). The other pins' signals match.
Can this work (A13 goes to Vcc)?


For the 2764 to 27010 things become more complicated as several of the 2764's pins have different signals, so I'll need to reroute multiple pins.

Offline rhodges

  • Frequent Contributor
  • **
  • Posts: 306
  • Country: us
  • Available for embedded projects.
    • My public libraries, code samples, and projects for STM8.
Re: EPROM pin replacement compatibility questions
« Reply #1 on: August 13, 2019, 06:16:27 pm »
Yes, you can have A13 also be Vcc. But instead of having 16 pages, you will only get 8. Page 0 will load from page 2, page 1 from 3, and so on. Because A13 is always high.
Currently developing STM8 and STM32. Past includes 6809, Z80, 8086, PIC, MIPS, PNX1302, and some 8748 and 6805. Check out my public code on github. https://github.com/unfrozen
 

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #2 on: August 14, 2019, 06:51:17 am »
Aha! Thanks for clearing that up.
I should have thought of that myself, because it's logic high and lows for the 4 highest address pins that are used to select different memory banks of the EPROM, right?

The confusing thing is that according to the photo of the adapter PCB (which gave me the idea to build something similar mysef) it allows for 16 banks. The poster in the forum where I found it also confirms that it's used to replace a 2732. How can this be? And the picture appears to show only the
Unfortunately I've been unable to get in touch with the poster for a more detailed photo and additional info.


That aside, for my own adapter I'm thinking the best solution would be to have a "through" pin socket for the 2732 (or 2764), then offset the new EPROM (27512 or 27010) to the left or right of it and reroute the signals appropriately. And to lower costs I could go for a single adapter PCB with solder-jumper-pads to allow for a 2732-27512 or a 2764-27010 configuration. Would this be a good solution, or are there better ways to do it?

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #3 on: August 18, 2019, 04:55:29 pm »
I think I've more or less worked out a PCB design for this (see attachement below and disregard the newbie design layout :) ).

I still don't understand how that other adapter in the photo I posted earlier can have A13 connected to VCC and still allow for 16 banks as the photo says, so in my design I've offset two sets of IC sockets, joining and separating each pin as needed.

The bottom-most socket (silk-screen marked 2764/2732) is a "through socket" and plugs into where the 2732/2764 EPROMs used to be while the topmost socket (silk-screened as a 32-pin socket) houses the 27512 or 27010 for 16 banks worth of data.
A solder-pad jumper is used so that the same PCB can be used for either a 2732/27512 combo or 2764/27010 combo.
Unless I've made any mistakes there are only two things I haven't figured out yet:

1) VPP: pin 1 of the 2764 and pin 1 of the 27010 is for the VPP signal. I'm not completely sure what it is, but from the datasheets it appears to have something to do with the programing voltage. Can these pins be disconnected (as they are now, perhaps even disconnected from each other)?

2) I'm aiming for a rotary type 16-way DIP switch for ease of use. Actually the board will have an option for an internal (on-board) DIP switch or an external type (also rotary, but with a longer shaft similar to a potmeter with a knob on) with a jumper to choose one or the other.
But how do I know which switch combination corresponds to a particular bank selection/address?
To avoid confusion it would be great to have DIP switch setting 1 to correspond with the lowest address EPROM bank while setting 16 would correspond to the highest and final bank in the 27512/27010 EPROM. I can't find any info on this in the various EPROM datasheets -does anyone have info on this they can share here?

 
« Last Edit: August 18, 2019, 07:18:53 pm by analogix »
 

Online soldar

  • Super Contributor
  • ***
  • Posts: 3221
  • Country: es
Re: EPROM pin replacement compatibility questions
« Reply #4 on: August 19, 2019, 11:41:27 am »
Just in case it is of any interest to readers of this thread, I just posted this in the sales department:
EEPROM UV Erasable for sale

I have the following lying around:

QTY 3 of TMS2516JDL
QTY 1 of TMS2532
QTY 12 of HN482764G
QTY 2 of HN4827128G-25

The lot offered for 0.01 Eur (one euro cent), as is, where is, without any guarantee. Buyer pays shipping, postage, and any and all incidental expenses such as, but not limited to, beer, etc.
All my posts are made with 100% recycled electrons and bare traces of grey matter.
 

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #5 on: August 20, 2019, 11:56:52 am »
I believe you just hijacked my thread  >:(

Back to the subject, let me explain my question a little better....
The aim is to replace a 2732 (2K) with a 27512 which is split up into sixteen banks of 2K. Similarly, I also want to replace a 2764 (4K) somewhere else with a 27010 split up into sixteen banks of 4K, like this:
815361-0

Now, I believe the best way to do this is probably with a 4-bit (16 position) DIP switch, and I've chosesn to use a rotary type for practical purposes, as seen here along with a switch configuration (code table):
815367-1

So, how do I connect the DIP switch (to A11-A15 for the 27512, and A12-A16 for the 27010) so that the lowest/first bank in the EPROM corresponds to position "1" and the highest/last bank corresponds to positon "F"?
« Last Edit: August 20, 2019, 12:00:48 pm by analogix »
 

Online oPossum

  • Super Contributor
  • ***
  • Posts: 1418
  • Country: us
  • Very dangerous - may attack at any time
Re: EPROM pin replacement compatibility questions
« Reply #6 on: August 20, 2019, 01:00:30 pm »
Code: [Select]
27C512
Vcc --> C
A15 --> Gnd
A14 --> 8
A13 --> 4
A12 --> 2
A11 --> 1
Pulldown resistor on A11 to A14


27C010
Vcc --> C
A16 --> Gnd
A15 --> 8
A14 --> 4
A13 --> 2
A12 --> 1
Pulldown resistor on A12 to A15
 

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #7 on: August 24, 2019, 03:55:19 pm »
I always thought you had to use the most significant bits (MSB) for bank-switching. I've also been told to use pullup resistors, not pulldown. Perhaps there are different ways of doing this....

Here are two sets of schematics: the top ones done your way and the bottom ones my way. Disregard the DIP switch type. It's meant to be a 16-way rotary type but I couldn't find any such part in the Eagle library.

818832-0


Offline helius

  • Super Contributor
  • ***
  • Posts: 3644
  • Country: us
Re: EPROM pin replacement compatibility questions
« Reply #8 on: August 24, 2019, 05:12:50 pm »
You can use any address bits you like for bank switching, and arbitrarily re-arrange the address bits (as long as the image you burn to the EPROM is swizzled similarly). There are no special pipelining or page mode requirements on these memories, so any address pin is as good as another.
 

Offline sokoloff

  • Super Contributor
  • ***
  • Posts: 1799
  • Country: us
Re: EPROM pin replacement compatibility questions
« Reply #9 on: August 24, 2019, 05:17:52 pm »
I believe you just hijacked my thread  >:(
Someone hijacking a thread to sell parts for 1 Euro cent probably has fairly pure motivation and it's likely relevant to some readers of the thread. Either that or it's the least effective get rich quick spamming scheme I've ever seen.  :-DD
 

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #10 on: August 24, 2019, 06:31:41 pm »
You can use any address bits you like for bank switching, and arbitrarily re-arrange the address bits (as long as the image you burn to the EPROM is swizzled similarly). There are no special pipelining or page mode requirements on these memories, so any address pin is as good as another.

So both schematics will work equally well, but the DIP switch combinations will be different?
What's the method for finding out the DIP combinations in relation to the address pins? Are there tables to be found somewhere?

Offline helius

  • Super Contributor
  • ***
  • Posts: 3644
  • Country: us
Re: EPROM pin replacement compatibility questions
« Reply #11 on: August 24, 2019, 11:49:36 pm »
Unless I am overlooking something really obvious, I don't think that there is anything special about the DIP switches; they simply act to pull one address pin low (or high).

When you burn an image to an EPROM, the burner sees the address pins in reverse lexicographic order (A15, A14, A13, ... , A3, A2, A1, A0) and the least-significant address bits vary most quickly. So the first byte in the file is at address 0b000000000000000, the next is at 0b000000000000001, and so on.

But there is no particular reason that your application needs to use the pins in the same way. You could use them in the order (A8, A7, A6, A15, A14, A13, A12, A11, A10, A9, A5, A4, A3, A2, A1, A0) if that made the circuit simpler to lay out. Or in the reverse order, or any permutation. At that point, you have two choices for how to burn the image. The first and most intuitive is to plug your adapter, with DIP switches, into the EPROM burner and burn your banks as separate 2732 images (changing the DIPs appropriately). Now you are guaranteed to burn the image in the same way that the application will see it.

The second way is to pre-swizzle the ROM file to send each byte to its "image" in the new chip. The way you would do this is to write a program that takes in a ROM file and loops over each byte, with a counter going up from 0; each byte then gets written out to the target ROM file at a position that you calculate by swapping the address bit of the application with the address bit of the ROM.
 

Online oPossum

  • Super Contributor
  • ***
  • Posts: 1418
  • Country: us
  • Very dangerous - may attack at any time
Re: EPROM pin replacement compatibility questions
« Reply #12 on: August 25, 2019, 01:52:07 am »
I always thought you had to use the most significant bits (MSB) for bank-switching. I've also been told to use pullup resistors, not pulldown. Perhaps there are different ways of doing this....

If you use a rotary BCD switch, then using the switch for Vcc and pulldown resistors is required to keep the blocks in the order shown in the diagram you posted. Using the switch for ground and pullup resistors puts the blocks in opposite order from 15 at the bottom to 0 at the top. The diagram you posted showed only half the capacity of the EPROM being used, so the msb is grounded.
« Last Edit: August 25, 2019, 01:54:29 am by oPossum »
 

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #13 on: August 25, 2019, 10:53:34 am »
My mistake (I earlier referred to the 2732 being 2K and the 2764 as 4K -they're twice that).
But the rest should be correct (16 banks of 2732 data (4K) fitting inside a 27512 (64K) and likewise for the 2764/27010). Source: Dataman EPROM memory size chart.

Regarding the rest of what you oPossum and helius write: I'll have to study that in more detail as a lot of this is new to me, but it's certainly useful to know that there are more ways to hook this up so I can possibly redesign it with physical size contraints in mind.

As for programming the 27512/27010:
I'll first join together the appropriate 16 files (BIN files meant to be burnt into 2732 or 2764 chips) using the following DOS command (only 4 files in the examples below):

Code: [Select]
copy /b FILE_1.BIN+FILE_2.BIN+FILE_3.BIN+FILE_4.BIN COMBINED_1234.BIN
or in UNIX (Mac):

Code: [Select]
cat FILE_1.BIN FILE_2.BIN FILE_3.BIN FILE_4.BIN > COMBINED_1234.BIN

With the new EPROMs ready, I should end up with "FILE_1.BIN" as the first/lowest address file and "FILE_16.BIN" as the last/highest file, accessable with the DIP switch combination and I should be able to burn the 27512 or 27010 chips the usual way using the merged files.

DIP switch settings:
I was told by someone else that with the EPROMs prepared that way above along with my schematic (the ones with the 4 highest address bits connected to the DIP switch/pulldown resistors) it's simply a matter of counting upwards in binary code from 0 to 15 with the DIP switch combinations.

oPossum: you suggest using a BCD switch in your schematic, but doesn't BCD refer to rotary DIP switches with just 10 positions? While "Hexidecimal" types have 16 positions.

(from Grayhill 94H series datasheet).

« Last Edit: August 25, 2019, 11:01:12 am by analogix »
 

Online oPossum

  • Super Contributor
  • ***
  • Posts: 1418
  • Country: us
  • Very dangerous - may attack at any time
Re: EPROM pin replacement compatibility questions
« Reply #14 on: August 25, 2019, 11:00:09 am »
oPossum: you suggest using a BCD switch in your schematic, but doesn't BCD refer to rotary DIP switches with just 10 positions? While "Hexidecimal" types have 16 positions.

If the switch is marked 0 to 15 then I would call it BCD. Decimal digits are 0 to 9, but decimal numbers can have may digits.
If the switch is marked 0 to 9, A to F then I would call it hexidecimal.
 

Offline analogixTopic starter

  • Regular Contributor
  • *
  • Posts: 172
  • Country: no
Re: EPROM pin replacement compatibility questions
« Reply #15 on: August 25, 2019, 11:21:11 am »
So it only has to do with the markings on the outside, not with how they're set up inside?
Are there 16-way rotary DIP switches with decimal number labelling (i.e. .....7,8,9,10,11,12....)? I've only found ones with hex labelling.

Also, are there rotary DIP switches which can be front panel mounted (like a potmeter)? For my project I need both PCB through-hole right-angle mountable DIP switches (no problem finding those) and the equivalent with front panel mounting.



Online oPossum

  • Super Contributor
  • ***
  • Posts: 1418
  • Country: us
  • Very dangerous - may attack at any time
Re: EPROM pin replacement compatibility questions
« Reply #16 on: August 25, 2019, 11:39:56 am »
Thumbwheel or pushwheel switches are typically used for panel mounting.

Pushwheel with 0 to 15 markings... https://www.datasheets360.com/pdf/5841758742966473284

 

Offline sokoloff

  • Super Contributor
  • ***
  • Posts: 1799
  • Country: us
Re: EPROM pin replacement compatibility questions
« Reply #17 on: August 25, 2019, 11:41:16 am »
oPossum: you suggest using a BCD switch in your schematic, but doesn't BCD refer to rotary DIP switches with just 10 positions? While "Hexidecimal" types have 16 positions.
If the switch is marked 0 to 15 then I would call it BCD. Decimal digits are 0 to 9, but decimal numbers can have may digits.
BCD only has a range of one decimal digit per coding group. (Typically uses 4 bits to encode the digits 0-9 and "wastes" 6 of the possible states.) So a BCD selector would naturally have a range of 0-9, not 0-15.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf