Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a writable EEPROM with persistent data capability #1968

Open
MazinCE opened this issue Feb 22, 2024 · 6 comments
Open

Add a writable EEPROM with persistent data capability #1968

MazinCE opened this issue Feb 22, 2024 · 6 comments

Comments

@MazinCE
Copy link

MazinCE commented Feb 22, 2024

I would like to request the addition of a writable EEPROM element with the capability to store data persistently. It should allow the information to be readable even after the software is closed.

@maehne
Copy link
Member

maehne commented Feb 22, 2024

PRs in this direction are welcome! However, first the requirements should be more precisely defined, and it should be checked whether they are not already (at least partially) fulfilled by the RAM or ROM component. The RAM component already has the attribute "Ram type" allowing to choose between "volatile" and "non volatile". It also offers in its context menu the possibility load/store an image. Maybe this already fulfils most of your needs?

@MazinCE
Copy link
Author

MazinCE commented Feb 22, 2024

Hello maehne,

I usually work with RAM and haven't had much with ROMs. Would it be possible to include a write option for ROM elements?

@maehne
Copy link
Member

maehne commented Feb 22, 2024

Would it be possible to include a write option for ROM elements?

No, by definition ROM is Read-Only Memory. Therefore, it would be confusing.

Nevertheless, what is the motivation for your initial enhancement request? Describing your use case would help to understand better what is needed. In any case, we want to have component models, which behave as common digital building blocks.

@MazinCE
Copy link
Author

MazinCE commented Feb 22, 2024

I want to use it as a storage device for a project I'm currently working on.

@Quantodeluz
Copy link

Quantodeluz commented Apr 23, 2024

The RAM component already has the attribute "Ram type" allowing to choose between "volatile" and "non volatile". It also offers in its context menu the possibility load/store an image. Maybe this already fulfils most of your needs?

Actually, if you save data to a "Non-volatile" RAM, close the program, and then open it again, the data is not preserved, and though you can save the state of the memory to restore it later, it's quite tedious to do it every time you open / close the program. The memory he's asking for should save an image of itself automaticlally.
I hope this helps to clarify why an EEPROM would be useful.

@maehne
Copy link
Member

maehne commented Apr 26, 2024

@Quantodeluz: Thanks for suggesting a reasonable behaviour. Maybe the NVRAM content could be stored as part of the CIRC file so that it can be explicitly saved/discarded using the standard save dialog for Logisim schematics. PRs in this direction are welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants