Adding more RAM to the Propellor
A.C. fishing
Posts: 262
Is there a way I could add a whole lot more RAM to the propellor chip?
thanks,
ACfishing
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
thanks,
ACfishing
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
·Somebody said...
-Never Underestimate the power of human stupidity.
Comments
However,
I was thinking it would be nice to be able to access SRAM etc.
But dont SRAM memory cells generally require 6 transistors ? or is that fixed now ? How many do they take now?
I don't think DRAM would be the best choice.
SRAM's store bits (1's or 0's) in memory cells that are basically flip flops. In a logic diagram, an SRAM memory cell may look like two cross-connected NAND or NOR gates - that is, the output of each NAND or NOR gate is connected to one input of the other NAND or NOR gate.This is a "flip flop", which can store a 1 or a zero for as long as you apply power - but not very much power. Very little power consumption is experienced except during transitions – writing into the memory cell. Static power consumption (without transitions) is very low because the flip flop is based on CMOS NAND or NOR gates where either a P-channel or an N-channel transistor conducts, but not both – and the P and N channel transistors are connected in such a way that there is no conduction path from the power supply to ground so power is not consumed in the static state (except through leakage). The advantages of SRAM's are their very high speed and very low power consumption.
DRAM’s store bits in memory cells that are basically capacitors under transistors. The transistor is used as a relay to the capacitor, and the capacitor stores a bit (a "1" or a "0") as either storing charge on the capacitor or not storing charge. However, the charge on a capacitor gradually leaks out over time – so, periodically (generally several thousand times per second), the contents of a DRAM need to read out and then rewritten back in – this is called a "refresh cycle", or a "refresh". As you might expect, the refresh consumes a lot of power. DRAM’s consume more power, and are slower than SRAM’s – but because a DRAM cell uses just one transistor (with a capacitor) compared to 6 transistors for an SRAM cell (I think).
There has been some talk about SRAM in other threads.
http://forums.parallax.com/showthread.php?p=592605
Could someone please prototype a design ?
I will get to it, but right now. I'm trying to get my finger out from under my propeller chip.
-Areal
Post Edited (Areal Person) : 11/30/2006 2:24:10 AM GMT
The Internal RAM is SRAM, and yes it does require 6 transistors for each RAM bit.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Beau Schwabe
IC Layout Engineer
Parallax, Inc.
-Areal
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Beau Schwabe
IC Layout Engineer
Parallax, Inc.
-ACfishing
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
·
I was thinking in terms of an end-user solution. As a product user and a software programmer
the first thing I want to do is buy an SRAM (or other) RAM chip. Plug it into my breadboard,
and write a device driver for the prop that will see that extra SRAM chip and use it just like
the real internal SRAM.
Now, I know it would be an application, it would be slower in nano's (or whatever)
But,·because you are an IC Layout Engineer, can't you do that kind of fancy footwork
at the design level and make it better than a software driver ?
So, I was asking if that stuff is possiable ?
-Areal
Post Edited (Areal Person) : 11/30/2006 3:05:18 AM GMT
It's something Ive been working on in my spare time, and yes it's a Propeller used as glue logic to enable another Propeller to access a 128kB SRAM requiring only·10 I/O of the host Propeller. Ive also been toying with throwing a micro-SD interface onto it as well. I don't know when I'll have time to complete the prototype. There is a little more circuitry (such as the write pulse generator, EEPROM·and crystal) I haven't added yet either.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
I just finnished up my testing board today, and It would be nice to be able to use
an external RAM solution. I need the memory so I can move hi-res image data around.
I need to move the image data from one memory bank to another.
It's going to be one of my soon upcoming sub-projects, I've got to do that as well
as design & build a proprietary memory storage circuit that will also be used during
the image transfer. I need about a meg of accessable memory.
-Areal
Post Edited (Areal Person) : 11/30/2006 3:42:52 AM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 11/30/2006 3:55:13 AM GMT
Well, I really should not have said "a meg"
The memory size part is still in design, I'm not sure exactly how much I will need for
everything yet, could be less. I do like your design, very nice!, and as it progresses, I'm sure
I'll use it, but I'm at the level that I must use other's designs, I could not build my own
stuff yet. As I'm not as advanced.
I was thinking of the flash Card also, thats probly what I'll use at first for prototype + maybe forever.
I heard people are using DOSonChip ? Is that the best and a easy solution, or should I just wire
up a USB jump drive ?
-Areal
Yes, you could just wire in a USB jump drive but have you seen the software complexity and layers required just to drive these things?
I am a bit perplexed as to how you intend to use external RAM in such an inefficient and slow manner although using SD memory I can understand. Usually we don't try to make something fit that doesn't fit in the first place, it's usually a good idea to identify the requirements beforehand and from there apply a set of criteria to select the best components for the design. As much as I love the Propeller I wouldn't try to use it if I needed lot's of fast RAM.
*Peter*
Interestingly, it doesn't need to be full-duplex.
Several folks here (not me, unfortunately) have also played with the USBWiz chips, which allow you to hook up a USB mass storage device like a thumb drive. Mike may be able to tell more about that.
Jim C
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
A pointer to my 256K external memory expander is in the thread here:
http://forums.parallax.com/showthread.php?p=629266
Andre Lamothe has designed a superior 512KB Memory expander for his propeller based Hydra system, that can also be used with any other propeller based design. A thread about it can be found here:
http://forums.parallax.com/showthread.php?p=638724
Finally, some people are working on a "large memory model", a software solution that uses external memory, or the 32K base memory, to create a much larger code space for propeller assembly. More information can be found in this thread:
http://forums.parallax.com/showthread.php?p=615022
Mahjongg.
the only reason i could see that it would not work is because it would use 32 pins for a duplex bus and 64 for a non-duplex bus. Maybe the PROP2 could use a 16 or 8 bit external data-bus for reduced bus pin count?
Post Edited (Matthew Burmeister) : 5/9/2009 7:15:35 AM GMT