|
|
Last visit was: Mon Dec 09, 2024 7:21 am
|
It is currently Mon Dec 09, 2024 7:21 am
|
Processor Design Principles
Author |
Message |
B.Bibby
Joined: Tue Dec 18, 2018 11:25 am Posts: 43 Location: Hampshire, UK.
|
Over on Hackaday.com, Yann Guidon / YGDES ( https://hackaday.io/whygee), who has undertaken a number of varied processor designs, has compiled a collection of notes on how he designs his processors and may be interesting or useful to others here- https://hackaday.io/project/46000-pdp-processor-design-principlesQuote: 1. Use binary, 2s complement numbers 2. Use registers. 3. Use bytes and powers-of-two 4. Your registers must be able to hold a whole pointer. 5. Use byte-granularity for pointers. . . . 40. Be ready to change your opcode map a lot, until you can't 41. The perfect ISA doesn't exist. 42. Learn and know when to stop 43. The 4 spaces
|
Wed Apr 01, 2020 9:40 pm |
|
|
oldben
Joined: Mon Oct 07, 2019 2:41 am Posts: 698
|
I always felt signed magnitue was the better way to go, you still need that for floating point (binary or decimal). Bytes can be any size bigger than 6. 7, 8 or 9 or 12 bits wide even. IBM shoe horned data size from 36 bits to 32 bits, with the 360 instruction set giving a CSIC design, and character data as addon in the late 50's. Byte and half word adressing cost 2 bits of address space.You need 128KB to replace 32K memory from a 36 bit cpu. Single word floating point went from OK (36 bits) to TOO small for most use. No problem just use 64 bits and twice as much memory. 40 bits would have been a better size than 32, thus 10 bit bytes. I think you need to fit the processor design to the computing needs and go from there.
|
Thu Apr 02, 2020 1:39 am |
|
|
BigEd
Joined: Wed Jan 09, 2013 6:54 pm Posts: 1807
|
Thanks for sharing Yann's notes, B! I think it's good to know what your values are when you set off on an engineering journey.
There's certainly a mix there, on the one hand we see personal preferences like byte-addressability and power-of-two sizes, on the other hand we see the wisdom of experience, like points 40 to 42. We can all learn from the experience, even if we have different technical preferences.
What's rather nice is that Yann has written a piece on each of his personal preferences to say where it came from.
|
Thu Apr 02, 2020 7:57 am |
|
|
robinsonb5
Joined: Wed Nov 20, 2019 12:56 pm Posts: 92
|
Thanks for sharing that - it was quite an enjoyable read!
|
Sat Apr 04, 2020 4:10 pm |
|
|
plainsteve
Joined: Fri Nov 22, 2019 5:31 pm Posts: 4
|
@oldben We don't need sign-magnitude for floating point. Check out what has to be my favorite computer engineering development in the last decade, the "posit" number format by John Gustafson. https://www.youtube.com/watch?v=N05yYbUZMSQhttps://www.youtube.com/watch?v=JJgT-YphE1YNow that's wholesome.
|
Mon Apr 06, 2020 4:04 am |
|
|
oldben
Joined: Mon Oct 07, 2019 2:41 am Posts: 698
|
I'll wait for the book. Sign/magnitude floating is most common one, others have been around as well.As for me, plan to add excess 3 addition, subtraction to my 32 bit (FPGA/TTL) design. I just need to check how the 68000 did BCD numbers.( Since this TTL adding excess 3 is just two more chips per 4 bit slice, where using a 2901 I don't have that feature).
|
Mon Apr 06, 2020 7:00 pm |
|
|
plainsteve
Joined: Fri Nov 22, 2019 5:31 pm Posts: 4
|
@oldben I love those videos so much it didn't occur to me that others wouldn't want to sit through it. Sorry! Here is some reading: http://www.johngustafson.net/pdfs/Beati ... gPoint.pdfhttps://web.stanford.edu/class/ee380/Ab ... slides.pdf
|
Mon Apr 06, 2020 7:32 pm |
|
|
robinsonb5
Joined: Wed Nov 20, 2019 12:56 pm Posts: 92
|
plainsteve wrote: @oldben
I love those videos so much it didn't occur to me that others wouldn't want to sit through it. Sorry! Personally I'm not a fan of video as a learning format - but I did watch the first video from start to finish, and found it fascinating - thanks for sharing!
|
Mon Apr 06, 2020 8:57 pm |
|
Who is online |
Users browsing this forum: CCBot, DotBot and 0 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|