nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 01:19



Reply to topic  [ 5 posts ] 
Build Your Computer using Logic & Memory (APOLLO181) 
Author Message
Junior

Joined: 15 Feb 2013 23:39
Posts: 2
Location: 79.7.160.79
Reply with quote
I'm at the end of Apollo181 project (only few missing algorithms for fun)and so I have finally released the video:

Build Your Computer using Logic & Memory, before the advent of microprocessor

which is about a homemade didactic 4-bit CPU made exclusively of TTL logics and bipolar memories, in particular about the 74181 Arithmetic and Logic Unit.

I'm very glad you have already discussed about it.
So, please leave here your comments if you wish. I will reply on any questions.

I hope you will enjoy it.

Thanks
GG


15 Feb 2013 23:54
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Glad to see u here, mr. GianlucaG.! :lol:

Thanks a lot for your attention to our 4-BIT forum!

I've found your Apollo181 project to be interesting,
so we have a little discussion about it here.

I think, the replys on any questions about Apollo181
from its author will be very useful for those interested in.

_________________
iLavr


16 Feb 2013 04:42
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
So, I myself have two main questions after our discussion about Apollo181 here.

The first is - why don't you realize the memory space more than 256 bytes?
256 bytes is so not enough... :(

And the second is - why don't you implemented "write" operation into programs
RAM, as well as instructions CALL and RET?

_________________
iLavr


16 Feb 2013 14:45
Profile
Junior

Joined: 15 Feb 2013 23:39
Posts: 2
Location: 79.7.160.79
Reply with quote
Post 
Hi Mr Lavr,
It a pleasure for me to meet you here.
Thanks for all you have written about my project.

As you may have read in my website: "Being very fond of the Bugbooks, the reference to these books became to me a strict requirement of the project: all 7400-series chips in my custom CPU had to be described in one of two volumes of the TTL Bugbooks®."
This has driven the full project, with all resulting restrictions.

Said this, the largest TTL 7400 chip memory you can find in the book is the 74200 that is 256x1 bit, that means that to double my memory to 512 byte, I had to use 16 chips, i.e. a lot of space and power (2 Ampere). Also they are expensive and hard to find (5 euro each) and I need back-up replacements for all chips in my machines in case of future failures.
Also I had to add a new counter stage and switches for the extra bit. Then, as you may see, my GOTO instruction can address any location of the 256 byte, because it uses 4-bit of accumulator plus 4 bit of operand. If you rise memory to 512 byte you need to segment the memory in two, that means extra command and chip to point one of the two segments.

With only 256 Ram I succeed to run a clock, a stepper motor, a led dimmer, a 12 bit calculator, then next two projects, an orgue (music) and a led game: given the solely educational purpose of the machine, I experienced that 256 words of program were anyway more than enough.

The last: to write by hand 512 binary program locations is hard even you are a patient guy!

Second question: I had only 16 commands possibility, being a 4-bit machine and I wanted to be able to run all 32 functions of the 74181. I had to give up to two instructions, in order to implement a call and ret.
Also, as ROM, I used the 74188 (size limited by Bugbook..), a bank of four.
That means sixteen control lines. I used all. How to implement Call and Ret? Extending the ROM bank with extra two 74188 chips. As you may see each improvement is possible but it would have required to exponentially cause difficulties in the project. But you are right: it is a big miss; it came to my mind at the end of the project (like the missing of a shift right chip, very easy to implement). Too late!

I can anyway implement a Call and Ret by software, creating a GOTO lookup conditional table.

Write into RAM: same issues and circumstances as before.

It was my first (and probably last) CPU. It is easy, just didactic, but it covers a lot of applications. I acquired a huge experience to design it. Now I would be able to build a more powerful CPU with the same Bugbook component set.
Kind regards
GG


17 Feb 2013 00:19
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
GianlucaG. wrote:
Second question: I had only 16 commands possibility, being a 4-bit machine
and I wanted to be able to run all 32 functions of the 74181.
I had to give up to two instructions, in order to implement a call and ret.

Don't u think about using prefix, which may give u a possibility
to enlarge the number of avaliable commands?
May be something like this?...

_________________
iLavr


17 Feb 2013 06:31
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 5 posts ] 

Who is online

Users browsing this forum: No registered users and 16 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

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.