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

Cache clear flag possible issue #84

Open
sorgelig opened this issue Apr 24, 2018 · 7 comments
Open

Cache clear flag possible issue #84

sorgelig opened this issue Apr 24, 2018 · 7 comments

Comments

@sorgelig
Copy link

cc_clr_r <= #1 {cc_clr_r[0], cpu_cache_ctrl[3]};

CACR[3] is write-only bit, so CPU cannot read the last state, thus if it will write 1 second and more times it won't trigger the clear since internally it's 1 already. Isn't?

@rkrajnc
Copy link
Owner

rkrajnc commented Apr 24, 2018

I didn't implement this correctly in the TG68 code - the C & CE bits should not be latched, it should be just a pulse that should signal the cache to clear itself.

@sorgelig
Copy link
Author

Ok. At least i understood it correctly :)
I'm trying to replace TG68 core with 68EC30 core i've found. Unfortunately Minimig uses some specific to TG68 signals making hard to port standard CPU core.

@rkrajnc
Copy link
Owner

rkrajnc commented Apr 25, 2018

Can you share the 030 core, I can take a look at it and see if anything can be done quickly?

@sorgelig
Copy link
Author

Sure! Would be good if you will help.
It's from Suska project: https://download.experiment-s.de/Configware/rtl/vhdl.zip
Inside you can find 68EC30: vhdl\68K30L

@sorgelig
Copy link
Author

CACR register is not implemented (other MOVEC registers are implemented), but should be not so hard to add. What harder is to re-create cpustate signal. I found something similar in 68EC030, but not sure if it will resemble the same timings.

Overall 68K30L looks like more complete than TG68K.

@sorgelig
Copy link
Author

You will need to add 32bit->16bit bus glue logic which you can get from here: https://github.com/terriblefire/tf530
It has RTL code, so pretty much can be used as-is in minimig.

@apolkosnik
Copy link

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

No branches or pull requests

3 participants