Personal tools

Difference between revisions of "Main Page"

From Motorola 68000 Homebrew Computer Project

Jump to: navigation, search
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
'''The Motorola 68000 Homebrew Computer Project'''
 
'''The Motorola 68000 Homebrew Computer Project'''
  
==History of the Project==
+
=History of the Project=
 
I've always wanted to build my own computer system from "scratch", at least to the level of using ICs & the circuit design. I'm not looking to wire wrap individual transistors here lol. I've previously built a Z80-based system, but since I'm mainly a C/C++ programmer I quickly reached the limitations of a 64k address space.
 
I've always wanted to build my own computer system from "scratch", at least to the level of using ICs & the circuit design. I'm not looking to wire wrap individual transistors here lol. I've previously built a Z80-based system, but since I'm mainly a C/C++ programmer I quickly reached the limitations of a 64k address space.
  
 
So, this time around I'm designing a 32-bit system with a 24-bit (16MB) address bus. I'll be publishing schematics and PCB information as the design progresses and documenting as much as possible here on this wiki. I will be using "human-friendly" chips and sockets as much as possible with 0.100" (2.54mm) pin spacing, I want this design to be able to be reproduced and built by real people and not just soldering experts and machines.
 
So, this time around I'm designing a 32-bit system with a 24-bit (16MB) address bus. I'll be publishing schematics and PCB information as the design progresses and documenting as much as possible here on this wiki. I will be using "human-friendly" chips and sockets as much as possible with 0.100" (2.54mm) pin spacing, I want this design to be able to be reproduced and built by real people and not just soldering experts and machines.
  
==Hardware==
+
=Hardware=
 
  * Note: throughout this site if I use MB/KB/etc. I mean Megabyte/Kilobyte/etc. I will use Mbit/Kbit for Megabits/Kilobits.
 
  * Note: throughout this site if I use MB/KB/etc. I mean Megabyte/Kilobyte/etc. I will use Mbit/Kbit for Megabits/Kilobits.
 +
==Memory Map & Busses==
 +
[[Hardware:Memory Map|Memory Map]]<br />
 +
[[Hardware:Schematic Busses|Busses & Signals]]
 +
 +
==Schematics==
 +
[[Schematic:CPU, Memory, and Main Memory Decoder|CPU, Memory, and Main Memory Decoder]]<br />
 +
[[Schematic:MMIO Decoder|Memory Mapped IO Decoder]]<br />
 +
[[Schematic:MFP|Multi Function Peripheral (MFP)]]<br />
 +
[[Schematic:Reset Circuit|Reset Circuit]]<br />
 +
 +
==Individual Components==
 
[[Hardware:CPU|CPU - Motorola 68000]]<br />
 
[[Hardware:CPU|CPU - Motorola 68000]]<br />
 
[[Hardware:ROM|ROM - 1MB]]<br />
 
[[Hardware:ROM|ROM - 1MB]]<br />
 
[[Hardware:RAM|RAM - 12MB]]<br />
 
[[Hardware:RAM|RAM - 12MB]]<br />
[[Hardware:Memory Map|Memory Map]]<br />
+
[[Hardware:Other ICs|Other potential ICs]]<br />
[[Hardware:Other ICs|Other potential ICs]]
+
[[Hardware:Expansion Bus|Expansion Bus]]
  
==Software==
+
=Software=
 +
Most likely toolchain for development: GCC 4.4.5 [http://gcc.gnu.org/] + Binutils 2.21 [http://www.gnu.org/software/binutils/]<br />
 
[[Software:Bootloader|Bootloader]]<br />
 
[[Software:Bootloader|Bootloader]]<br />
 
[[Software:OS|Operating System/Kernel]]<br />
 
[[Software:OS|Operating System/Kernel]]<br />
 +
[[Software:libc|Standard C Library]]<br />
 
[[Software:Updater|Updater]]<br />
 
[[Software:Updater|Updater]]<br />
  
==Potential Toolchains==
+
=Licensing=
GCC 4.4.5 [http://gcc.gnu.org/] + Binutils 2.21 [http://www.gnu.org/software/binutils/]
 
 
 
==Licensing==
 
 
Everything (information, schematics, designs, etc.) on this site is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License version 3.0 unless otherwise noted. More information on this license can be found here: [http://creativecommons.org/licenses/by-nc-sa/3.0/].
 
Everything (information, schematics, designs, etc.) on this site is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License version 3.0 unless otherwise noted. More information on this license can be found here: [http://creativecommons.org/licenses/by-nc-sa/3.0/].
  
==Other Sources==
+
=Other Sources=
===Documentation & Tutorials===
+
==Documentation & Tutorials==
 
[http://blog.fke.utm.my/~nadzir/courses/SEE3223-08092/notes/ Microprocessor College Lectures]: These are good starting point for those new to 68000 hardware design, busses, etc. The good stuff starts around lesson 7 or 8.
 
[http://blog.fke.utm.my/~nadzir/courses/SEE3223-08092/notes/ Microprocessor College Lectures]: These are good starting point for those new to 68000 hardware design, busses, etc. The good stuff starts around lesson 7 or 8.
===Similar Projects===
+
==Similar Projects==
 
[http://n8vem-sbc.pbworks.com N8VEM: Homebrew Computer Project]: Open source design using a Z80 CPU and Eurocard backplane for expansion. Also includes M68K CPU boards and S-100 bus versions.
 
[http://n8vem-sbc.pbworks.com N8VEM: Homebrew Computer Project]: Open source design using a Z80 CPU and Eurocard backplane for expansion. Also includes M68K CPU boards and S-100 bus versions.

Latest revision as of 21:53, 16 March 2011

The Motorola 68000 Homebrew Computer Project

History of the Project

I've always wanted to build my own computer system from "scratch", at least to the level of using ICs & the circuit design. I'm not looking to wire wrap individual transistors here lol. I've previously built a Z80-based system, but since I'm mainly a C/C++ programmer I quickly reached the limitations of a 64k address space.

So, this time around I'm designing a 32-bit system with a 24-bit (16MB) address bus. I'll be publishing schematics and PCB information as the design progresses and documenting as much as possible here on this wiki. I will be using "human-friendly" chips and sockets as much as possible with 0.100" (2.54mm) pin spacing, I want this design to be able to be reproduced and built by real people and not just soldering experts and machines.

Hardware

* Note: throughout this site if I use MB/KB/etc. I mean Megabyte/Kilobyte/etc. I will use Mbit/Kbit for Megabits/Kilobits.

Memory Map & Busses

Memory Map
Busses & Signals

Schematics

CPU, Memory, and Main Memory Decoder
Memory Mapped IO Decoder
Multi Function Peripheral (MFP)
Reset Circuit

Individual Components

CPU - Motorola 68000
ROM - 1MB
RAM - 12MB
Other potential ICs
Expansion Bus

Software

Most likely toolchain for development: GCC 4.4.5 [1] + Binutils 2.21 [2]
Bootloader
Operating System/Kernel
Standard C Library
Updater

Licensing

Everything (information, schematics, designs, etc.) on this site is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License version 3.0 unless otherwise noted. More information on this license can be found here: [3].

Other Sources

Documentation & Tutorials

Microprocessor College Lectures: These are good starting point for those new to 68000 hardware design, busses, etc. The good stuff starts around lesson 7 or 8.

Similar Projects

N8VEM: Homebrew Computer Project: Open source design using a Z80 CPU and Eurocard backplane for expansion. Also includes M68K CPU boards and S-100 bus versions.