Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

Instruction set design

Name: Anonymous 2012-03-28 5:03

I'm working on a compact CPU architecture, and I'm writing the instruction set now. How does it look?

http://jsbin.com/ofegem

Name: Anonymous 2012-03-28 5:14

How does it look?
Try to guess.

Name: Anonymous 2012-03-28 5:24

>>2
It's missing significant functionality, but it looks alright to me so far. I've taken care to lay out the instruction opcodes in a way that would be very easy to decode and split off to respective circuitry.

Name: Anonymous 2012-03-28 5:59

>>1
You should start from "001 00000". This way all or at least most common instructions would fit into printable ASCII, which is kinda nice in more than one aspect!

Name: Anonymous 2012-03-28 6:02

>>4
There isn't really much point in doing so, because the instructions are two bytes long, and the second byte can be anything. Only the first byte is the opcode.

Name: Anonymous 2012-03-28 6:02

So you have a lobotomized x86, what is the purpose of this?

Name: Anonymous 2012-03-28 6:02

>>6
x86 is shit.

Name: Anonymous 2012-03-28 6:05

>>6
It's a CPU architecture not designed by jews; what's not to like?

Name: Cudder !MhMRSATORI!FBeUS42x4uM+kgp 2012-03-28 6:21

compact
Too many blank spaces. Huge waste of bits.

You want a "compact" instruction set, look at: Z80, H8, AVR, 1802 for inspiration.

>>6
Looks more like MIPS (yuck) to me.

Name: Anonymous 2012-03-28 6:33

>>9
Blank spaces as in, unassigned opcodes? The opcodes are laid out in logical groupings to be easier to design decoding hardware.

Name: Anonymous 2012-03-28 6:41

Update: minor formatting and layout fixes
http://jsbin.com/ofegem/3

Name: Anonymous 2012-03-28 6:42

>>7
So if you cut a couple of instructions x86 somehow becomes less shit?

>>8
Yes it is, it just lacks some functionality, the rest of it is designed by Jews.

Name: Anonymous 2012-03-28 6:46

cmp and cmpf should be moved to the ALU and floating point sections respectively, as on real hardware they would be handled by those circuits.

Name: Anonymous 2012-03-28 6:47

>>13
I hadn't thought about that; thanks.

Name: Anonymous 2012-03-28 8:00

Why would you only have a 2 operands per instruction? That's what's bad about x86.

Name: Anonymous 2012-03-28 8:32

>>9
MIPS (yuck)
Fuck off goy

Op just use MIPS

Name: Anonymous 2012-03-28 10:06

>>6,12
It doesn't look like x86 to me except for the names of the jump instructions. Multiply and divide are regular arithmetic instructions and there's no accumulator.

Name: Anonymous 2012-03-28 18:28

>>15
two operands per instruction
Having three operands is superfluous and would require 32-bit instructions.

Name: Anonymous 2012-03-28 21:10

ADD R1 R2
ADD R1 R3



VS


ADD R1 R2 R3

Name: Anonymous 2012-03-29 3:43

>>19
They have different meaning and thus can't be compared. The first one adds R2 and R3 to R1, with R1's resultant value being R1_old+R2+R3. The second one adds R2 and R3, replacing R1's old value with the result.

Name: Anonymous 2012-03-29 6:16

how about a CAS instruction, OP?

Name: Anonymous 2012-03-29 6:28

001 10111 dubz ----  |  chk  |  if (doubles) check_em

Name: Anonymous 2012-03-29 14:36

>>20

ADD R2 R3
MOV R1 R2


VS


ADD R1 R2 R3


HAPPY NIGGER?

Name: Anonymous 2012-03-29 14:37

>>23
MOV R1 R2
ADD R1 R3

LESS ANAL

Name: Anonymous 2012-03-29 14:52

self analingus

Name: Anonymous 2012-03-30 16:17

anus

Don't change these.
Name: Email:
Entire Thread Thread List