Magic's Stoopid CPU - Printable Version +- Forums - Open Redstone Engineers (https://forum.openredstone.org) +-- Forum: ORE General (https://forum.openredstone.org/forum-39.html) +--- Forum: Projects & Inventions (https://forum.openredstone.org/forum-19.html) +---- Forum: In Progress (https://forum.openredstone.org/forum-20.html) +---- Thread: Magic's Stoopid CPU (/thread-5679.html) |
RE: Magic's Stoopid CPU - Magic :^) - 02-10-2015 OOh what's this? I have a fetch time prediction unit installed! It looks at the current address of the prom +1 and compares it to see if it will be a fast or slow decode time :3 Lookahead on the left, current address on the right: And look! I'm almost done the main part of the CPU, I have to figure out the optimal timing for my instructions here... but once I figure it out, the cpu will be able to carry out all the main ops I just have to get going on the branching stage now, I'm putting it in the middle of my prefetch buffer. It's going to be doing some speculative prefetching too :3 RE: Magic's Stoopid CPU - LordDecapo - 02-11-2015 Yay for dynamic branch prediction.. I think you and I are the only ones who currently have it xD RE: Magic's Stoopid CPU - Magic :^) - 02-14-2015 Here's a tentative list of ops and the syntax they will use in asm: Code: regLoad (!)r1, (!)r2 RE: Magic's Stoopid CPU - Magic :^) - 02-18-2015 Oh yeah the cpu's done, I'm gonna make another one soon. It's gonna be very similarly laid out, but will be much more optimised with twice as many pipeline stages and support for interrupts and some fancy code injection. (I'mma bypass the main program flow with a preloaded hi-speed instruction buffer to spam my dataloop and i/o stage with ops. It is going to be like microcode, but the code can be modified from external sources) I might also do support for hardware register renaming/context switching. It would be nice to switch between two protected register banks. RE: Magic's Stoopid CPU - Spidermy9 - 02-18-2015 Love the time thingy i remember me and i believe hawk also did something like this, but never really implemented it in a good fashion RE: Magic's Stoopid CPU - LordDecapo - 02-23-2015 The dual register banks is helpful, but I have played with that idea before, and it's a little... picky sometimes lol. try using 15 instead of 7 registers, and make some of the special purpose. just a thought RE: Magic's Stoopid CPU - Magic :^) - 02-23-2015 Yeah, I have a lot of stuff to improve in the new version. The arch is still similar, but only in spirit xD I'm going for some speedup techniques for the instruction pipeline too. I'll elaborate on it later. Also working on better i/o hardware. So far so good! I got me some 1 tick/bit with input buffering so I don't drop bytes. I'll try for 16 registers, but I'm not sure if I can get a low tick loop out of it.... I might be able to do the context shifting by having every bit of the register actually be a 2-bit barrel shift. Hmmmmnn RE: Magic's Stoopid CPU - LordDecapo - 02-23-2015 That could work, I'll be on later if you wanna TS and talk about it. I'm curious to here the new upgrades and more in depth thinking as to what the changes do. RE: Magic's Stoopid CPU - Magic :^) - 02-23-2015 I won't be able today, but maybe tommorrow My instruction queue optimisation would really only be explainable with a diagram though xD RE: Magic's Stoopid CPU - LordDecapo - 02-24-2015 Kk, diagrams are always helpful xD I'll be on today after work and I change my dad's serpentine belt on his truck. When ever ur on we can talk about ur stuffs, got some idea about my stuffs I wanna run by u too. |