Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Can't understand 68000 user manual

Status
Not open for further replies.
Hi everyone.

I'm a huge fan of the 68000 CPU architecture. I have read the 68000 Programmer's Reference Manual and I feel as though I fully understand it. When I was younger I used to program the Amiga computer in assembly and I "get" it. I've also learned to program in C and dabbled in C++.

Recently I've tried to learn the hardware side of things. My hardware skills are much more modest than my software skills. I've been building small circuits with LEDs and resistors and the occasional transistor.

I've tried to read the 68000 user manual. It contains an awful lot of information about how the various input/output pins of the 68000 handshake with peripheral chips, such as RAM. I can't visualise how it works. I want to know how I can fill the gap.

Are the input/output pins of a 68000 more or less the same from one CPU to another? If so, is there some reference for a different CPU that I can learn from? I guess what I want is to be able to design a 68000-based computer.

Richard
 
Hi,

While I can understand your interest in the old systems and your fond memories of programming some of the original computers in assembly and machine code I think you will find building one today an arduous task.
The price and availabliltiy of the parts and limited forum resources are always going to be an issue.

I would suggest you move forwards to the more modern Pic or Arduino micros which have masses of online help and tutorials.

You can purchase small starter systems for either types for around £20 to £50

You can program them in the free versions of Assembler or C/C++ as you wish.

Feel sure you will enjoy learning/ building/ programming them as much as the old systems.
 
Theres a 68008 chip which is similar to the 68000 only it has only 8 of its data bus pins brought out, so the device is smaller, its designed with embedded applications in mind.

There are several handshakes on the 68k, when it came out it was faster than a lot of ram so handshakes were required, the only tricky one is dtack, data transmission acknowledge.
 
The 68008 isn't much simpler than the 68000 or even the 68010, in terms of hardware. It's compatible with an 8-bit data bus though.

My concern is that there are complicated diagrams of how the lines handshake and I'm too dumb to understand them.
 
Which manual are you referring to? https://www.electro-tech-online.com/custompdfs/2012/12/68kUM.pdf shows the timing diagrams and has complete explanation of the steps during each cycle; it doesn't seem that crazy for connecting a single memory device. Because the 68k uses a bussed architecture (or memory-mapped), you'll need some address decoding circuitry to route the signals to the devices (e.g. RAM, ROM, IO I/F IC, etc.) on the bus; it's common to use a PLD for the mapping, although you could alternately use e.g. 74HC138.

**broken link removed**
https://www.bigmessowires.com/2011/08/25/68000-interleaved-memory-controller-design/
https://www.electro-tech-online.com/custompdfs/2012/12/10-MemInterface.pdf -- seems to have at least one error in figure 10.19 (I would think DTACK should be fed through an AND gate, not an OR gate).
 
Hi,

The trouble with datasheets and user manuals is that they are written by professionals for the industrial market, not the hobbist, so they pack in all the info they can which looks very confusing for the likes of us.

Those Read and Write timing diagrams do seems complex with the many signals that chips uses.

Basically it outputs the Address data to whatever device is required followed by opening the read or write data port.

Its a concept often not realised by the users of todays modern micros with intergrated ram and roms.

If you first identify the function of all those extra lines , like LDS and FC0-2, then follow though those flow chart in line with the timing diagrams and you should start to see how a complete read or write cycle functions.

You may also need to look at the datasheet of the other devices used like the ram chips and what pins tie up the that timing diagram.

I don't know if you have any 68000 hardware, but when I worked on similar devices, way before simulation software etc, you used to have a feature called Single Step together with a latch and leds on the Address and Data bus so you can examine how each machine instruction is working.
That would go a long way to helping you understand how it all works.
 
Back when I played with 6502,s instead of pics I used the higher bits of the address bus inverted as chip selects for memory and io control, works well but restricts the overall capacity of the system, not a problem if your building a Simple system with only few k and few io.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top