Image Map Image Map
Results 1 to 8 of 8

Thread: Help with 74181 ALU needed

  1. #1

    Default Help with 74181 ALU needed

    Hallo,

    I'm building three different TTL processors. One of them is really TTL only, that is, Without any programmable ICs like GALs or EPROMs. This CPU uses two 74181 ALUs. I found out that the 74181 has only one shift instruction, Shift Left, which is in fact the function "A + A". It misses the Shift Right and any rotate instruction where Carry is involved as well.

    I want to implement these instructions but without adding extra hardware (see later). I have some ideas how to do that but it involves a lot of loops, so may that I'm sure I'm doing something wrong or overlooking something. So my question: has anybody any idea how to do that?

    In the worst case, that is I have no solution and really need these instructions, I can replace each 74181 with a PCB containing a FlashRAM that emulate a 74181 in the first place. But some "nonsense" functions will be replaced by more usuable ones like the mentioned shift and rotate functions.

    May thanks in advance!

    Edit: The pages with TTL processors are still under construction and even haven't been spell checked. So ignore the errors, please
    With kind regards / met vriendelijke groet, Ruud Baltissen

    www.baltissen.org

  2. #2
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,889
    Blog Entries
    20

    Default

    Ruud, you could do a shift-right externally, or you could drop the 181 for a 481, which is considerably more powerful (has both logical and arithmetic shifts, as well a whole raft of other features).

  3. #3
    Join Date
    Jun 2012
    Location
    UK - Worcester
    Posts
    2,071

    Default

    I would checkout the logic for one of the later PDP-8's - they use 74181's - but the shift logic is performed outside of the 74181 by (effectively) Multiplexers.

    Dave

  4. #4

    Default

    Quote Originally Posted by Ruud View Post
    Hallo,

    I'm building three different TTL processors. One of them is really TTL only, that is, Without any programmable ICs like GALs or EPROMs. This CPU uses two 74181 ALUs. I found out that the 74181 has only one shift instruction, Shift Left, which is in fact the function "A + A". It misses the Shift Right and any rotate instruction where Carry is involved as well.

    I want to implement these instructions but without adding extra hardware (see later). I have some ideas how to do that but it involves a lot of loops, so may that I'm sure I'm doing something wrong or overlooking something. So my question: has anybody any idea how to do that?


    May thanks in advance!

    Edit: The pages with TTL processors are still under construction and even haven't been spell checked. So ignore the errors, please
    I once made a similat TTL processor and solved this problem by using 74194 as the accumulator.
    Schematics are on my FTP site under T3

    Jos

  5. #5

    Default

    Thank you for all the answers!

    The problem is that the board is nearly finished so adding extra hardware to the original design is out of the question. But even if I could, I want to keep the hardware as simple as possible. The primary idea was using software anyway. And as said, if really needed the next idea was replacing the 74181s by FlashRAMs on a little PCB. But I rather would prefer to replace them with other type of ALUs like the 74481 Chuck mentioned. I myself never heard of it. But it seems that getting it is a problem also: I haven't found any vendor yet, not even ebay (I looked for 74s481 as well).

    I found this Apollo181 site. Maybe this guy can help me.
    With kind regards / met vriendelijke groet, Ruud Baltissen

    www.baltissen.org

  6. #6

    Default

    The least complex way to do a right shift is what I call a wired shift. Just shift the wires right one bit going from your input register to your output selector. The right most shifted out bit can be wired and selected to replace the carry out so you can test it. Doesn't require any special shift register I.C. . That is how I did that in the relay computer I designed and built. It has a sixteen function ALU that is all relays and diodes including the right shift function. I did the left shift by adding the A input to itself. I used 74181s in my home brew TTL I.C. based mini-computer back in 1975. I added some strange processing elements in that to handle all sorts of things that could have used less hardware but would have been slower.

    Stephen

  7. #7

    Default

    Hallo Stephen,

    Quote Originally Posted by stephen frey View Post
    The least complex way to do a right shift is what I call a wired shift.
    I have thought about this solution as well. But I don't have any spare control lines left to operate the needed hardware. So I either come up with a decent software solution or I replace the 74181s with EPROMs.

    Thank you anyway for your contribution!
    With kind regards / met vriendelijke groet, Ruud Baltissen

    www.baltissen.org

  8. #8
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    28,889
    Blog Entries
    20

    Default

    Assuming that you can feed the carryout into the carryin of the 181, you could implement a left-rotate, which, with a bit of masking will get you to the equivalent of a right-shift.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •