Tri state buffer and Bus Questions

Deleted member 115935

Joined Dec 31, 1969
0
Yes that's right.... I can't wait till it is complete so I can write an operating system for it, assemblers and so on... I need to learn how to generate composite video signals for it before... I have only a vague idea of how to do it. Alternatively I am thinking of creating a screen made of small LED's and then controlling it rather than using a TV. It will also play 8bit music !

This project was supposed to be built with a wirewrap technique, and I will redo it when it's functional... I just need to see if working fast before I build the final one. But the end product will be a fully functional 8 bit computer built with wirewrap techniques.. Kind of like the magic1 homebrew computer that is on the net somewhere...

I am sorry I forgot to post a photo of the capacitors on each iC... here it goes...



I am worried about terminating resistors... Where to put them and what value they should have.,..

well done on putting the decoupling capacitors on top of the chips,
nice short leads is the key .

To be honest I am amazed that you have even this working,
I'd have thought one sneeze and those wires would become temperamental.

Are they bulk decoupling I see on the power lines as well ?
100 uf ?

Termination, personally I'd say don't worry .
to use termination, you will need to use more holes / connections on those boards, which would probably be more detrimental to the signal than not using termination.

Coding your own processor in an FPGA would mean you can concentrate on the design and the Assembler / codding without worrying about this . Just a thought.


Good luck,
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
well done on putting the decoupling capacitors on top of the chips,
nice short leads is the key .

To be honest I am amazed that you have even this working,
I'd have thought one sneeze and those wires would become temperamental.

Are they bulk decoupling I see on the power lines as well ?
100 uf ?

Termination, personally I'd say don't worry .
to use termination, you will need to use more holes / connections on those boards, which would probably be more detrimental to the signal than not using termination.

Coding your own processor in an FPGA would mean you can concentrate on the design and the Assembler / codding without worrying about this . Just a thought.


Good luck,

Thank you a lot for your kind comments :)

These breadboards actually have something inside the holes that holds the wires to some extent, they are not easily loosened.

The capacitors on the power rails were my first options before I decided to put them across the power pins of each IC. I left them there for now.

It's more difficult to put the caps across and on top of each IC because they take more room and interfere a bit with the wires, and also there is a danger their legs might touch other pins by accident. I am being watchful of this.

I have an FPGA, but I think that it would remove the magic of actually seeing the hardware. The whole point of this is to have the actual hardware and look at it, and then see the amazing connection between the hardware and software working together. I find it fascinating!

There isn't much to be done now... Just need to finish a few circuits and then start working on the microcode. I have 5 ROMS in parallel, amounting to 40 control signals, but I have to code the signals by hand using a ROM programmer.

Each instruction is given in the form of a sequence of control signals one by one... And these go inside the ROMS
 

ScottWang

Joined Aug 23, 2012
7,501
You didn't arrange the wires and tie them together with the same function like data buses and address buses and control buses, so they look very messed, using the pure logic ICs to build a big system can be learn many things from the basic structures.

I have 5 ROMS in parallel
What kind of ROM are you using, EPROM or EEPROM?

If you don't want to using the TV to be the display then maybe you can using 16 of 7x5 or 8x8 dot matrix LEDs.
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
You didn't arrange the wires and tie them together with the same function like data buses and address buses and control buses, so they look very messed, using the pure logic ICs to build a big system can be learn many things from the basic structures.


What kind of ROM are you using, EPROM or EEPROM?

If you don't want to using the TV to be the display then maybe you can using 16 of 7x5 or 8x8 dot matrix LEDs.

For now it's a couple of EEPROMS... But they are slow at 150ns access time, I will be looking for 40ns ones later on....

I would like a resolution of about 640x480, so I will probably need the TV. But my idea was to actually build a large matrix of LED's controlled by transistors, and then control this screen directly. I find the generation of composite TV signals a bit messy to deal with although I would actually love to learn how to do it.

If I find small enough LED's, then I can assemble them into a large matrix and have a nice screen for display.

What do you think ?
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
You didn't arrange the wires and tie them together with the same function like data buses and address buses and control buses, so they look very messed, using the pure logic ICs to build a big system can be learn many things from the basic structures.


What kind of ROM are you using, EPROM or EEPROM?

If you don't want to using the TV to be the display then maybe you can using 16 of 7x5 or 8x8 dot matrix LEDs.

I have tried my best too keep the IC's and wires organized. The wires that are serving the same IC's are together. Actually I know that keeping wire bundles is bad because it generates cross talk between the wires, so keeping them as loose as possible is a good thing. I'm sure it does look messy, but when I look at it I can understand what's going on although it becomes harder and harder to find spaces to put wires!

And actually the control bus is not even implemented yet! That's another 40 wires going everywhere. Will be chaos!

As for the low level design yes... It's a great experience to design it on paper and then build it from basic logic...
 

ScottWang

Joined Aug 23, 2012
7,501
I know that keeping wire bundles is bad because it generates cross talk between the wires,
I thought that before, but according to my experience was not that serious, sometimes I was insert the wires through a soft plastic pipe, I meant that they still could working correctly in a z80 or 8051 system when I used some buffer as 74LS244 or the Bus Transceivers 74LS245, the other as 74HC273, 74HC374 or 74HC574, etc,...

For a commercial dot matrix LEDs, I saw they used three R,G,B LEDs to be one dot(pixel), and to make a large LEDs screen.

A frequency counter used CD4518 to do the counter and CD4511 do the BCD to 0-9 7-segs LED display, I was used Silver-plated wires to wired them.

C01-InternalStructure-59555_800x600.jpg
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
I thought that before, but according to my experience was not that serious, sometimes I was insert the wires through a soft plastic pipe, I meant that they still could working correctly in a z80 or 8051 system when I used some buffer as 74LS244 or the Bus Transceivers 74LS245, the other as 74HC273, 74HC374 or 74HC574, etc,...

For a commercial dot matrix LEDs, I saw they used three R,G,B LEDs to be one dot(pixel), and to make a large LEDs screen.

A frequency counter used CD4518 to do the counter and CD4511 do the BCD to 0-9 7-segs LED display, I was used Silver-plated wires to wired them.

View attachment 117811

I'm glad to know it should have no effect. With all these wires, breadboards, potentially loose connections......... I hope everything works out ok.

I will also make some kind of UART for it, so it can communicate with other PC's, I will also make a Cassette tape driver for it. I specially want a cassette reader and recorder for this computer... Imagine that!

And then finally write a nice operating system for it. I find these ideas inspiring and great fun!

Those 7seg displays would not be good for my project because they only show numbers.... I think I will have to go with composite signals on TV's. That will take some learning! The signals are so strange!
 

ScottWang

Joined Aug 23, 2012
7,501
Those 7seg displays would not be good for my project because they only show numbers
I'm not suggest you to using the 7-segs led, it just to show you the frequency counter was made by basic digital ICs, no large IC, no uC.

I think I will have to go with composite signals on TV's. That will take some learning! The signals are so strange!
Do you want to using digital or analog interface, if you want to using analog interface then you can find the apple II circuit and you will get it.
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
I'm not suggest you to using the 7-segs led, it just to show you the frequency counter was made by basic digital ICs, no large IC, no uC.


Do you want to using digital or analog interface, if you want to using analog interface then you can find the apple II circuit and you will get it.

Im not sure yet, It should be a circuit that reads the RAM constantly and dumps it onto the TV.... I probably wont bother with values, that is, I will be happy with black and white rather than an analogue variation of values... that is much simpler to do as it just takes 0 and 1's literally.... I find it difficult to understand how to generate the signals but i havent read it in depth yet...
 

Deleted member 115935

Joined Dec 31, 1969
0
I'm still amazed at this ,

a suggestion, from the past,
If you use the ram for the dispaly and the processor, you have an access problem,
you cna get dual port rams, but single port ones are much cheaper.

the 'answer' form old was to let the display access the ram during the 'line' time,
and the processor access the ram during the blanking time,

mind you, finding an anlaog TV is getting more difficult as time goes by,

things like the BBC and the Apple II used to use a modulator to get to a TV frequency,
I'd guess your looking at VGA ?

Again getting VGA to work with those bread boards is going to be very difficult,

as for those boards holding the wires in,
Nah, they just have two bits of metal bent down, so when you pull, the metal closes ,
just like some cable clamps

They vibrate out easily , and also tarnish, as they are not 'gas tight' as 'proper' plug / sockets are.

just keep this in mind when your finding faults,
there will quickly be a point when the boards will drive you nuts..
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
I'm still amazed at this ,

a suggestion, from the past,
If you use the ram for the dispaly and the processor, you have an access problem,
you cna get dual port rams, but single port ones are much cheaper.

the 'answer' form old was to let the display access the ram during the 'line' time,
and the processor access the ram during the blanking time,

mind you, finding an anlaog TV is getting more difficult as time goes by,

things like the BBC and the Apple II used to use a modulator to get to a TV frequency,
I'd guess your looking at VGA ?

Again getting VGA to work with those bread boards is going to be very difficult,

as for those boards holding the wires in,
Nah, they just have two bits of metal bent down, so when you pull, the metal closes ,
just like some cable clamps

They vibrate out easily , and also tarnish, as they are not 'gas tight' as 'proper' plug / sockets are.

just keep this in mind when your finding faults,
there will quickly be a point when the boards will drive you nuts..

I thought about letting the CPU access RAM whenever the Display circuit is reading that byte to display it. Since the video clock is much faster than the CPU clock, this should also work. I still havent spent time trying to design such circuit. But I am about to build the RAM card, so I will need to decide this soon...

Whenever the CPU needs a certain byte, it sends a request to the memory circuit, and the display immediately halts the CPU clock until the video circuit is reading the required address that the CPU needs, then it puts the byte on the bus and "unhalts" the CPU.

I am looking at PAL signals since I am in the UK. Is VGA easier ? I have a small analogue TV at home, I am just unsure whether it is PAL or NTSC since I bought it in the UK but it comes from china..
 

Deleted member 115935

Joined Dec 31, 1969
0
I thought about letting the CPU access RAM whenever the Display circuit is reading that byte to display it. Since the video clock is much faster than the CPU clock, this should also work. I still havent spent time trying to design such circuit. But I am about to build the RAM card, so I will need to decide this soon...

Whenever the CPU needs a certain byte, it sends a request to the memory circuit, and the display immediately halts the CPU clock until the video circuit is reading the required address that the CPU needs, then it puts the byte on the bus and "unhalts" the CPU.

I am looking at PAL signals since I am in the UK. Is VGA easier ? I have a small analogue TV at home, I am just unsure whether it is PAL or NTSC since I bought it in the UK but it comes from china..
Re clock,
if you make the video clock a multiple of the cpu clock,
then you minimise any asynchronous switching problems with the ram.

Re PAL. To use that, you'd normaly need to generate a tv signal, and feed that to a modulator box onto a TV channel,, for the TV to de modulate. VGA, no modulator needed,

I still dont think this would work on those bread boards,
but good luck
 
Top