Page 1 of 1
Freenode #cpudev
Posted: Wed Aug 23, 2017 3:07 pm
by glauxosdever
Hi,
Along with other CPU design hobbyists and enthusiasts, we have decided to create the #cpudev channel on freenode.net. If we manage to populate it, a wiki about CPU development is coming!
Regards,
glauxosdever
Re: Freenode #cpudev
Posted: Fri Aug 25, 2017 12:57 am
by Octacone
Are you guys doing it practically or theoretically?
Building an 8 bit processor sounds fairly interesting.
Or you want to build a next gen 128 bit 600 cores 500 threads processor that uses 20 ^ -250 watts?
Re: Freenode #cpudev
Posted: Fri Aug 25, 2017 1:10 am
by glauxosdever
Hi,
To be fair, I'd like to build something real (but I'm aware of the costs involved, unlike some people that for a couple of months recently have been talking about subleq and its superiority). Then again, most people are doing it for fun and I suppose no-one has done anything more than an emulator and/or an assembler.
Note that we are very few still (about 10 at the peak).
Regards,
glauxosdever
Re: Freenode #cpudev
Posted: Fri Aug 25, 2017 2:05 pm
by glauxosdever
Hi,
It was decided to put a (temporary?) wiki anyway.
https://cpudev.miraheze.org/wiki/Main_Page
Regards,
glauxosdever
Re: Freenode #cpudev
Posted: Fri Aug 25, 2017 2:37 pm
by onlyonemac
I once designed a CPU. There were only a few instructions and they were all decoded and executed in hardware, usually in a single clock cycle. Every instruction was more or less a move instruction with two parameters (a source register and a destination register) plus additional flags. With no flags set, the value would be copied directly from the source register to the destination register. With the indirection flag set for the source or destination, the value copied will instead come from or go to the memory location at the address given by the specified register rather than the register itself. There was also a flag that would swap the high and low bytes (it was a fully 16-bit CPU, including memory access), this was to allow one to write the high byte of a 16-bit value from memory to some registers that were only 8-bit, and other flags that would only execute the operation if the contents of a specific "conditional execution" register met particular conditions, required for conditional jumps (or a "shortcut" conditional execution where a particular value was only written to a register, to memory, or to memory-mapped IO if a particular condition was true, without actually changing the program counter).
Re: Freenode #cpudev
Posted: Thu Aug 31, 2017 3:07 pm
by onlyonemac
Why is this in auto-delete? I'm pretty sure it wasn't in here originally.
Re: Freenode #cpudev
Posted: Thu Aug 31, 2017 11:39 pm
by glauxosdever
Hi,
I originally put it here. I don't exactly remember my reasoning for this though. Mods: Feel free to move it to General Ramblings or General Programming if you find this thread useful.
As for your CPU, I find it quite interesting. In what language/program did you design it? Do you have some test programs for it?
Too bad however you limited it to 16-bit.
Regards,
glauxosdever
Re: Freenode #cpudev
Posted: Fri Sep 01, 2017 3:17 am
by AJ
Done - I decided it was an announcement
Cheers,
Adam
Re: Freenode #cpudev
Posted: Fri Sep 01, 2017 4:30 am
by alexfru
glauxosdever wrote:Then again, most people are doing it for fun and I suppose no-one has done anything more than an emulator and/or an assembler.
You couldn't be more wrong!
http://www.homebrewcpu.com/
Re: Freenode #cpudev
Posted: Fri Sep 01, 2017 6:08 am
by glauxosdever
Hi,
alexfru wrote:glauxosdever wrote:Then again, most people are doing it for fun and I suppose no-one has done anything more than an emulator and/or an assembler.
You couldn't be more wrong!
http://www.homebrewcpu.com/
I was talking about us, the ones in the channel. I know that many others have done physical implementations and they are of course welcome to the channel.
Regards,
glauxosdever
Re: Freenode #cpudev
Posted: Fri Sep 01, 2017 12:21 pm
by glauxosdever
Hi,
We have setup a proper
CPUDev Wiki now. Let's now hope it won't have the same fate as compilerdev.org
Regards,
glauxosdever
Re: Freenode #cpudev
Posted: Wed Sep 27, 2017 7:54 am
by onlyonemac
glauxosdever wrote:As for your CPU, I find it quite interesting. In what language/program did you design it? Do you have some test programs for it?
Too bad however you limited it to 16-bit.
I missed this because the thread was moved, sorry.
I never actually produced a completed design for this CPU because I wanted to be able to interface with standard peripherals (VGA, PS/2, floppy disk or even IDE hard disk) and the design of those held me back. I had already produced and ran in a simulator a "proof-of-concept" 8-bit design of a completely different and rather inelegant architecture just to prove that it was possible for me to design and implement a CPU. That was actually quite an amazing experience, seeing how hardware and software fitted together at the very layer where they meet, and was something that I didn't really understand before (I understood the concept of a CPU but the whole thing seemed a bit like magic to me, to have a device that could take software, something that's non-physical, and turn it into physical outcomes). CPUs are actually pretty fascinating devices.
My design isn't limited to 16-bit. I was originally going to build an 8-bit CPU but decided to extend it to 16-bit because 256 bytes of memory seemed far too restrictive and I didn't want to have to deal with paging or a 16-bit address line on an 8-bit CPU (I know the 6502 managed this somehow but it was too complicated for me at the time and I still think it's rather messy). I extended it to 16-bit because it seemed like a good compromise between complexity and functionality, but in the end it proved too expensive to build. The actual design however is very modular and can easily be extended to any number of bits (and extra bits means more bits are available for encoding the source and destination registers for each instruction which means more registers are available and more complex features could be mapped directly to "virtual" registers as with the ALU in the original design).
Re: Freenode #cpudev
Posted: Fri Feb 17, 2023 10:04 am
by immibis
After this wiki disappeared some time ago, I got the domain (
https://cpudev.org) and put another wiki up, themed after the osdev wiki, and the #cpudev channel on irc.libera.net. It's not much more than a placeholder.
Re: Freenode #cpudev
Posted: Fri Feb 17, 2023 4:50 pm
by BigBuda
immibis wrote:After this wiki disappeared some time ago, I got the domain (
https://cpudev.org) and put another wiki up, themed after the osdev wiki, and the #cpudev channel on irc.libera.net. It's not much more than a placeholder.
Props to you, really.
As a suggestion, would you consider looking into Bookstack instead of Mediawiki?
Re: Freenode #cpudev
Posted: Mon Feb 20, 2023 2:17 am
by Alexey1994
glauxosdever wrote:Hi,
Along with other CPU design hobbyists and enthusiasts, we have decided to create the #cpudev channel on freenode.net. If we manage to populate it, a wiki about CPU development is coming!
Regards,
glauxosdever
Take a look at my processor circuit
https://github.com/Alexey1994/simple-processor-circuit
It is much easier to program and implement any other scheme. Does not include obvious implementations of adder, multiplier, binary operations, and other ALU components. You implement only the operations you need (binary only, arithmetic only, binary and arithmetic, etc.)
If you need a translation from Russian to English, write to me, the translation will be done in a week.