Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Hitachi HM6116ZP-4 CMOS RAM Datasheet

Status
Not open for further replies.
blueroomelectronics said:
3V0 managed to focus Krumlink for a short while, and Krumlinks school robot (with the globe) looked great (was it a VEX?).
Krumlink appears to be driven by visual / physical projects. A microcontroller IC looks pretty meek and may appear uninteresting compared to something mechanical.
I still study PIC mcu and I am still very much interested in it. The robot was built out of scratch, no prefab parts (I hate lego and vex because of this). I LOVE PIC and mcu, it is just understanding a 2nd language is hard, aka C (I know english, leet and learning c :rolleyes:)

Nigel Goodwin said:
Considering this
https://www.electro-tech-online.com/threads/googl-the-beam-light-seeker.37348/
is about as far as he goes, I can't see him building anything like a relay based computer :p

And to be honest, it's seriously a complete waste of time and money anyway, if (for historical reasons) you wanted to see what one was like, it would be fairly easy to write a simulator on a PC.
UH NIGEL? HELLO BINARY CLOCK???
 
So, at what speed will the SRAM output? will it just spew out data as fast as possible or at a set speed?

(I am thinking it output's at the clock speed)
 
Krumlink said:
So, at what speed will the SRAM output? will it just spew out data as fast as possible or at a set speed?

(I am thinking it output's at the clock speed)

It will output just as fast as you ask it to, you set it's address lines, and it outputs the data from that address on the data lines. It's a static RAM (CMOS so can be battery backed) so can be run as slow as you like.

I've got an old Microtan 65 memory card with battery backed 6116's on, from years and years ago.
 
My work with Krumlink has been plagued by equipment problems on his end. Once we got that sorted he was too busy to keep appointments.

Krumlink has too many irons in the fire. We postponed further study till after the FIRST robotic competitions are over. Maybe till after school is out.

When things are less hectic and he has the time to be serious about learning we will try again. :D

blueroomelectronics said:
3V0 managed to focus Krumlink for a short while, and Krumlinks school robot (with the globe) looked great (was it a VEX?).
Krumlink appears to be driven by visual / physical projects. A microcontroller IC looks pretty meek and may appear uninteresting compared to something mechanical.
 
Nigel Goodwin said:
You don't really, you set it's address lines, and the output reflects what's in that address - so how fast you change the address lines sets the speed.
Ok! So I send in the clock signal into the address lines to change it, and it changes lines at that speed?

Edit: so this is where the finite state machine comes in?
 
Uh that was a question, I send in the signal to change address lines?
 
If you want some 6116's and other static rams to play with you can have all of mine for free (well, plus postage)... in fact I probably have 8255's as well.

Let me know,
P.
 
Krumlink said:
Uh that was a question, I send in the signal to change address lines?

hi,
If you used a 8255 PIO to connect to the 6116 SRAM, you would do the following write/read sequence.

Change the PIO's portA to output.
Set the PIO's portA to say the 8 bit data you want to write to the SRAM.
Then set the PIO's portB and portC[low nibble] to the the address [location] in the SRAM where you want the data on portA to be written.
Then set the SRAM WR and CS low and high,[using portC[high nibble] this will write the data to the addressed SRAM location.

For reading the SRAM,
Change the PIO's portA to input.
Then set the PIO's portB and portC[low] to the the address [location] in the SRAM where you want the data on portA to be read from
Then set the SRAM CS low and high, this will place the data of the addressed SRAM location onto the portA, which the program then reads.

As you can see, the write/read cycle is much longer than the 'clock' rate.

It would help if you could post a block diagram of your project.
 
Last edited:
ericgibbs said:
hi,
If you used a 8255 PIO to connect to the 6116 SRAM, you would do the following write/read sequence.

Change the PIO's portA to output.
Set the PIO's portA to say the 8 bit data you want to write to the SRAM.
Then set the PIO's portB and portC[low nibble] to the the address [location] in the SRAM where you want the data on portA to be written.
Then set the SRAM WR and CS low and high,[using portC[high nibble] this will write the data to the addressed SRAM location.

For reading the SRAM,
Change the PIO's portA to input.
Then set the PIO's portB and portC[low] to the the address [location] in the SRAM where you want the data on portA to be read from
Then set the SRAM CS low and high, this will place the data of the addressed SRAM location onto the portA, which the program then reads.

As you can see, the write/read cycle is much longer than the 'clock' rate.

It would help if you could post a block diagram of your project.

Yes that would help a lot, I am looking for a schematic of the 8255, but it appears (from a websites description) sounds like a easy process.

Aussieproof: Yes that would also help out a lot, I PM ed you :)
 
I have the datasheets for 8255 and the 6116, so it is easier to understand what you are talking about (eric). I am wondering though how I would put the SRAM in standby mode, aka hold the data (since it's static ram). What's the minimal amout of power can I feed it just so it hold's its data? The power to everything else will be off. I still want to feed it the 5V line when the entire computer turns on.

So I was thinking cannabalizing some of my 4.8V batteries (taking the plastic thing off) and making a 9.6V battery pack, that way I can put it parallel to the 12V line, so it charges the battery through a current limiting resistor, then the battery goes through a 5V regulator that will only be switched on when I am about to turn off the computer. Here's what Im thinking of in a paint schematic pain stakingly drawn :)
 

Attachments

  • thebestpaintpikchur.gif
    thebestpaintpikchur.gif
    5 KB · Views: 367
hi,
Can you get the LA version of the 6116. It is designed for data retention down to 2V with standby currents of less than 10mA.???

There are also non volatile Rams, with inbuilt battery and auto switchover at power down/up. Ref the Dallas range of ic's.
 
ericgibbs said:
hi,
Can you get the LA version of the 6116. It is designed for data retention down to 2V with standby currents of less than 10mA.???

There are also non volatile Rams, with inbuilt battery and auto switchover at power down/up. Ref the Dallas range of ic's.

I will see if aussie has the LA series, but I want to stick to the 6116 :)
 
You should be able to back the data up in a 6116LA for several years with a pair of AAA batteries because the chip typically draws VERY little current (typ 2uA) in standby mode.
 
kchriste said:
You should be able to back the data up in a 6116LA for several years with a pair of AAA batteries because the chip typically draws VERY little current (typ 2uA) in standby mode.

I would check what's still in mine, but they haven't been powered for 20 years or so, and the backup was a NICAD, which don't last very long :D

It's in a Microtan65 system, plugged in the backplane, and can be page selected in place of the normal expansion RAM - so you could load programs off tape into the 6116's, then just run them from there, and they were still there the next time you powered up. I actually bought the 6116 board as a kit from the guy who designed and sold them, I can't remember where he lived now, but it wasn't too far away, and I fetched it from his house.
 
Ok, after reading what eric posted I am still having problems understanding what he is saying.

Change the PIO's portA to output.
Set the PIO's portA to say the 8 bit data you want to write to the SRAM.
Then set the PIO's portB and portC[low nibble] to the the address [location] in the SRAM where you want the data on portA to be written.
Then set the SRAM WR and CS low and high,[using portC[high nibble] this will write the data to the addressed SRAM location.

For reading the SRAM,
Change the PIO's portA to input.
Then set the PIO's portB and portC[low] to the the address [location] in the SRAM where you want the data on portA to be read from
Then set the SRAM CS low and high, this will place the data of the addressed SRAM location onto the portA, which the program then reads.

As you can see, the write/read cycle is much longer than the 'clock' rate.

It would help if you could post a block diagram of your project.
 
Krumlink,
You'll have more fun with a bunch of LEDs and toggle switches connected to your RAM chip than playing around with 8255s or PIO chips. The 8255 or PIO is only "helpful" if you want to control the RAM chip from a micro controller and would be a hindrance to your relay based CPU in my opinion.
Nigel,
I checked my old Z80 project which I built in 1989. I think I have changed the batteries once or twice and the RAM data is still valid today! I'm powering two 6116's with a pair of AAA batteries:
 

Attachments

  • Z80-project.jpg
    Z80-project.jpg
    205.1 KB · Views: 343
kchriste,

Prepare to be bombarded with questions and schematic requests from Mark256.:D

Mike.
 
I think I already provided him with diagram snippets of it a few years ago. I think Marks256 is over the Z80, but Krumlink appears to be on the way to Z80 land. But first he must pass through relay hell and fight the Back EMF wizard with his trusty diode! :D
 
Status
Not open for further replies.

New Articles From Microcontroller Tips

Back
Top