Close

TTL radio button for the clock

A project log for Nits Processor

8-bit TTL technology processor

cedCed 10/31/2021 at 13:172 Comments

This new version of the CPU required a new approach for the clock. This is why I thought it would be much easier to use pushbuttons instead of slide switches. That is where the idea of a 4 radio-button style clock selector came from.

There are 4 clock signals to select from: 

We needed the following features:

We have selected a combination of 4 elements to perform this task:

So how does it work?

At this step we have a valid binary value stored in the register to represents the current selected channel. We then need to perform 2 tasks:

To display the selected channel, we will simply use a 74LS138 (8 output decoder). It will light the proper LED according to the stored value in the register. Note that the outputs of the 74LS138 are active low.

To select the clock, we will use an 8-channel multiplexer (74LS151): based on the binary value inputted on its 3-bit input, it will select and output the right clock channel. Note that there is a side benefit as this chip also provides the inverted signal.

Discussions

Ced wrote 11/05/2021 at 09:16 point

Hi Michael, good question, but you acutally do not need debounce as the combination of the 148 and the 173 act as latch. The first time a contact is made on one pushbutton, the GS pin of the 148 acts as the clock for the 173 and latches the value. This clock signal is not linked in any way with the CPU clock. Even if multiple bounce arise, the value is latched and therefore will not change on the bounces. Now if multiple pushbuttons are pressed at the same time, the 148 acts as a priority encoder, therefore only the most significant button pressed will trigger the output.

Hope I make sense.

  Are you sure? yes | no

Michael Möller wrote 11/05/2021 at 09:08 point

So where is the button debounce? But I suppose if the clock changes 4 times in rapid succession between 1 and 4Mhz it wont matter.

Nice to see the project continued. My CPU will also be resumed RealSoonNow™

  Are you sure? yes | no