All Topics  
Motorola 6809

 
Motorola 6809

   Email Print
   Bookmark   Link






 

Motorola 6809



 
 
The Motorola 6809 is an 8-bit
8-bit

Eight-bit CPUs normally use an 8-bit data bus and a 16-bit address bus which means that their address space is limited to 64 KBs. This is not a "natural law", however, so there are exceptions....
 (arguably, an 8/16-bit
16-bit

16-bit architectureThe HP 2100#Descendants and variants , introduced in 1975, was the world's first 16-bit microprocessor.Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816....
) microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
 CPU
Central processing unit

A central processing unit is an electronic circuit that can execute computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread usage....
 from Motorola
Motorola

Motorola, Inc. is an United States, multinational, Fortune 100, telecommunications company based in Schaumburg, Illinois. It is a manufacturer of wireless telephone handsets, also designing and selling wireless network infrastructure equipment such as cellular transmission base stations and signal amplifiers....
, introduced circa 1977-78. It was a major advance over both its predecessor, the Motorola 6800
Motorola 6800

The 6800 is an 8-bit microprocessor produced by Motorola and released shortly after the Intel 8080 in late 1974. It had 78 instructions, including the famous, undocumented Halt and Catch Fire bus test instruction....
, and the related, MOS Technology 6502
MOS Technology 6502

The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured central processing unit on the market by a considerable margin, costing less than one-sixth the price of competing designs from larger companies such...
.

g the significant enhancements introduced in the 6809 were the use of two 8-bit accumulator
Accumulator (computing)

In a computer's central processing unit , an accumulator is a processor register in which intermediate arithmetic logic unit results are stored....
s (A and B, which could be combined into a single 16-bit
16-bit

16-bit architectureThe HP 2100#Descendants and variants , introduced in 1975, was the world's first 16-bit microprocessor.Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816....
 register
Processor register

In computer architecture, a processor register is a small amount of Computer storage available on the CPU whose contents can be accessed more quickly than storage available elsewhere....
, D), two 16-bit index register
Index register

An index register in a computer's central processing unit is a processor register used for modifying operand addresses during the run of a program, typically for doing vector/array operations....
s (X, Y) and two 16-bit stack
Stack (data structure)

In computer science, a stack is an abstract data type and data structure based on the principle of LIFO . Stacks are used extensively at every level of a modern computer system....
 pointers (U, S).






Discussion
Ask a question about 'Motorola 6809'
Start a new discussion about 'Motorola 6809'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Mc6809ep
The Motorola 6809 is an 8-bit
8-bit

Eight-bit CPUs normally use an 8-bit data bus and a 16-bit address bus which means that their address space is limited to 64 KBs. This is not a "natural law", however, so there are exceptions....
 (arguably, an 8/16-bit
16-bit

16-bit architectureThe HP 2100#Descendants and variants , introduced in 1975, was the world's first 16-bit microprocessor.Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816....
) microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
 CPU
Central processing unit

A central processing unit is an electronic circuit that can execute computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread usage....
 from Motorola
Motorola

Motorola, Inc. is an United States, multinational, Fortune 100, telecommunications company based in Schaumburg, Illinois. It is a manufacturer of wireless telephone handsets, also designing and selling wireless network infrastructure equipment such as cellular transmission base stations and signal amplifiers....
, introduced circa 1977-78. It was a major advance over both its predecessor, the Motorola 6800
Motorola 6800

The 6800 is an 8-bit microprocessor produced by Motorola and released shortly after the Intel 8080 in late 1974. It had 78 instructions, including the famous, undocumented Halt and Catch Fire bus test instruction....
, and the related, MOS Technology 6502
MOS Technology 6502

The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured central processing unit on the market by a considerable margin, costing less than one-sixth the price of competing designs from larger companies such...
.

Description

6809registers
Among the significant enhancements introduced in the 6809 were the use of two 8-bit accumulator
Accumulator (computing)

In a computer's central processing unit , an accumulator is a processor register in which intermediate arithmetic logic unit results are stored....
s (A and B, which could be combined into a single 16-bit
16-bit

16-bit architectureThe HP 2100#Descendants and variants , introduced in 1975, was the world's first 16-bit microprocessor.Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816....
 register
Processor register

In computer architecture, a processor register is a small amount of Computer storage available on the CPU whose contents can be accessed more quickly than storage available elsewhere....
, D), two 16-bit index register
Index register

An index register in a computer's central processing unit is a processor register used for modifying operand addresses during the run of a program, typically for doing vector/array operations....
s (X, Y) and two 16-bit stack
Stack (data structure)

In computer science, a stack is an abstract data type and data structure based on the principle of LIFO . Stacks are used extensively at every level of a modern computer system....
 pointers (U, S). The index and stack registers allowed very advanced addressing mode
Addressing mode

Addressing modes are an aspect of the instruction set architecture in most central processing unit designs. The various addressing modes that are defined in a given instruction set architecture define how Machine code Instruction in that architecture identify the operand of each instruction....
s.

The 6809 was source-compatible with the 6800, though the 6800 had seventy-eight instructions to the 6809's fifty-nine. Some instructions were replaced by more general ones which the assembler
Assembly language

An assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture....
 translated into equivalent operations and some were even replaced by addressing mode
Addressing mode

Addressing modes are an aspect of the instruction set architecture in most central processing unit designs. The various addressing modes that are defined in a given instruction set architecture define how Machine code Instruction in that architecture identify the operand of each instruction....
s. The instruction set
Instruction set

An instruction set is a list of all the instruction , and all their variations, that a processor can execute.Instructions include:* Arithmetic such as add and subtract...
 and register complement were highly orthogonal
Orthogonality

In mathematics, two vectors are orthogonal if they are perpendicular, i.e., they form a right angle. The word comes from the Greek language ' , meaning "straight", and ' , meaning "angle"....
, making the 6809 easier to program than the 6800 or 6502.

Other features were one of the first hardware-implementations of a multiplication instruction in an MPU, full 16-bit arithmetic and an especially fast interrupt
Interrupt

In computing, an interrupt is an asynchronous communication signal from hardware indicating the need for attention or a synchronous event in software indicating the need for a change in execution....
 system. The 6809 was also highly optimized, up to five times faster than the 6800 series CPUs. Like the 6800, it included an undocumented address bus test instruction that would exceed the limits of some memory controllers, evoking the nickname Halt and Catch Fire (HCF)
Halt and Catch Fire

Halt and Catch Fire, known by the mnemonic HCF, was originally a fictitious computer machine code instruction claimed to be under development at IBM for use in their IBM System/360 computers, along with many other amusing instructions such as "Execute Operator"....
.

The 6809's state machine and control logic, unlike many processors of the day, was mostly implemented using a large PLA
Programmable logic array

A programmable logic array is a programmable device used to implement combinational logic electrical network. The PLA has a set of programmable AND gate planes, which link to a set of programmable OR gate planes, which can then be conditionally complemented to produce an output....
 and asynchronous random logic
Hardwired control

To execute instructions, a computer's processor must generate the control signals used to perform the processor's actions in the proper sequence. This sequence of actions can either be executed by another processor's software or in hardware....
 (a trait of early designs and, partly, of RISC) rather than microcoded. The 6809 used the two-phase clock cycle directly as the basic machine cycle.

Although this means fewer clock cycles per instruction compared to the Z80 for instance, the latter's higher resolution state machine allowed clock frequencies 3-5 times as high without demanding faster memory chips, which was often the limiting factor; it could combine two full (but short) clock cycles into a relatively long memory access period compared to the clock, while the more asynchronous 6809 instead had relatively short memory access times: depending on version and speed grade, approximately 60% of a single clock cycle was typically available for memory access in a 6809 (see data sheets).

The 6809 had an internal two-phase clock generator (needing only an external crystal) whereas the 6809E needed an external clock generator. There were also variants such as the 68A09(E) and 68B09(E); the internal letter indicates the processor's rated clock speed.

History

The Motorola 6809 was originally produced in 1 MHz, 1.5 MHz (68A09) and 2 MHz (68B09) speed ratings. Faster versions were produced later by Hitachi and perhaps others. It is sometimes considered to be the conceptual precursor of the Motorola 68000
Motorola 68000

The Motorola 68000 is a 16/32-bit Complex instruction set computer microprocessor core designed and marketed by Freescale Semiconductor ....
 family of processors, though this is mostly a misunderstanding. The 6809 and 68000 design projects ran partly in parallel and has quite differing architectures as well as radically different implementation principles. However, there is a certain amount of design philosophy similarity (eg, considerable orthogonality and flexible addressing modes), some assembly language
Assembly language

An assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture....
 syntax resemblance, as well as opcode mnemonic similarity, but the 6809 is a derivative of the 6800 whereas the 68000 was a totally new design. An 8-bit data bus version of the 68000 (ie, the 68008) was intended for use in future 8-bit designs. In that respect, the 6809 was rather quickly an evolutionary dead-end.

The 6809 design team believed that future system integrators would look to off-the-shelf code in ROMs to handle common tasks. An example of this might be binary floating point
Floating point

In computing, floating point describes a system for numerical representation in which a String of digits represents a rational number.The term floating point refers to the fact that the radix point can "float": that is, it can be placed anywhere relative to the Significant figures of the number....
 arithmetic, which is a common requirement in many systems. In order to speed time to market, common code modules would be purchased, rather than developed in-house, and integrated into systems with code from other manufacturers. Since a CPU designer could hardly guarantee where this code would be located in a future system, the 6809 design focused heavily on support of position-independent
Position-independent code

In computing, position-independent code or position-independent executable is machine instruction code that executes properly regardless of where in computer storage it resides....
, reentrant (subroutine) code that could be freely located anywhere in the memory map. This expectation was, in reality, never quite met: Motorola's only released example of a ROM'd software module was the MC6839 floating-point ROM. However, the decisions made by the design team made for a very powerful processor and made possible advanced operating systems like OS-9
OS-9

OS-9 is a family of real-time computing, process , computer multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware for the Motorola 6809 microprocessor....
 and UniFlex
UniFlex

UniFlex is a Unix-like operating system developed by Technical Systems Consultants for multitasking, multiprocessing for the Motorola Motorola 6809 family....
, which took advantage of the position-independent, re-entrant nature of the 6809.

The 6809 was used in Commodore's dual-CPU SuperPET
Commodore PET

The PET was a home computer-/personal computer produced by Commodore International starting in 1977. Although it was not a top seller outside the Canadian, US, and UK educational markets, it was Commodore's first full-featured computer and would form the basis for their future success....
 computer, and, in its 68A09 incarnation, in the unique vector graphics based Vectrex
Vectrex

The Vectrex is an 8-bit video game console that was developed by Smith Engineering. It was licensed and distributed first by General Consumer Electric , and then by Milton Bradley Company after their purchase of GCE....
 home video game console
Video game console

A video game console is an game development that produces a video signal which can be used with a display device to display a video game. The term "video game console" is used to distinguish a machine designed for consumers to buy and use solely for playing video games from a personal computer, which has many other functions, or arcade machi...
 with built-in screen display. The 6809E was used in the TRS-80 Color Computer (CoCo)
TRS-80 Color Computer

The Radio Shack TRS-80 Color Computer was a home computer launched in 1980. Despite the name, the "Color Computer" was a radical departure from earlier TRS-80 Models - in particular it had a Motorola 6809 processor, rather than the TRS-80's Zilog Z80....
, the Acorn System 2
Acorn System 2

The System 2 was a home computer produced by Acorn Computers Ltd from 1980. It was the successor to the Acorn System 1.It had a memory of 32 kilobyte, a clock rate of 1.006 megahertz....
, 3 and 4 computers (as an optional alternative to their standard 6502
MOS Technology 6502

The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured central processing unit on the market by a considerable margin, costing less than one-sixth the price of competing designs from larger companies such...
), the Fujitsu FM-7
FM-7

FM-7 is a home computer released in 1982 in Japan.The Fujitsu FM-7 was Fujitsu's first entry into the Japanese home computer market, and for their debut computer, they chose to come out with a Motorola 6809-based personal computer very similar to Radio Shack's Color Computer....
, the Welsh
Wales

native_name = Cymru|conventional_long_name = Wales|common_name = Wales|image_flag = Flag of Wales 2.svg|national_motto = ...
-made Dragon 32/64
Dragon 32/64

The Dragon 32 and Dragon 64 are home computers that were built in the 1980s. The Dragons are very similar to the TRS-80 Color Computer , and were produced for the European market by Dragon Data, Ltd., in Port Talbot, Wales....
 home computers (clones of the CoCo), and the SWTPC
SWTPC

The United States company SWTPC started in 1964 as DEMCO . It was incorporated in 1967 as Southwest Technical Products Corporation of San Antonio, Texas....
, Gimix, Smoke Signal Broadcasting, etc. SS-50 bus systems, in addition to several of Motorola's own EXORmacs development systems. In France, Thomson micro-informatique
Thomson SA

Thomson SA , formerly known as Thomson Multimedia is an international provider of -- for the creation, management, delivery and access of video, for the Communication, Media and Entertainment industries....
 produced a series of micro-computers based on the 6809E (TO7, TO7/70, TO8, TO8D, TO9, TO9Plus, MO5
Thomson MO5

The Thomson SA MO5 was an Motorola 6809-based computer introduced in France in 1984. It featured 32K of Random_access_memory, a 40 x 25 text display, and built-in Microsoft BASIC....
, MO6, MO5E and MO5NR).

In addition to home computers and game consoles, the 6809 was also utilized in a number of arcade games released during the early to mid 1980s. Williams Electronics
Williams (gaming company)

WMS Industries, Inc. is a long-standing United States electronic gaming and amusement company based in Waukegan, Illinois. WMS traces its roots far back as 1943 as the Williams Manufacturing Company founded by Harry E....
 was an especially prolific user of the processor, which was deployed in arcade hits such as Defender, Joust, Sinistar
Sinistar

Sinistar is an arcade game released by Williams in 1982. It belongs to a class of video games from the 1980s called "twitch games". Other "twitch games" include Tempest , Defender , and Robotron: 2084....
, and Robotron: 2084
Robotron: 2084

Robotron: 2084 is an Arcade game video game developed by Vid Kidz and released by WMS Industries in 1982. It is a Shoot 'em up that features 2D computer graphics....
. Williams also utilized the processor in many of its solid-state pinball
Pinball

Pinball is a type of arcade game, usually coin-operated, where a player attempts to score points by manipulating one or more metal balls on a playfield inside a glass-covered case called a pinball machine....
 machines; a specialized version of the 6809 CPU formed the core of the successful Williams Pinball Controller
Williams Pinball Controller

The Williams Pinball Controller is an arcade system board used for several pinball games designed by Williams and Midway Games between 1990 and early-1999....
.

Software development company Microware
Microware

Microware is a United States corporation that produced the OS-9 Real-time computing operating system.Microware Systems Corporation existed as a separate entity from 1977 until September 2001, when it was bought by RadiSys, and became a division of that company....
 developed the original OS-9
OS-9

OS-9 is a family of real-time computing, process , computer multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware for the Motorola 6809 microprocessor....
 operating system (not to be confused with the more recent Mac OS 9
Mac OS 9

Mac OS 9 is the final major release of Apple Inc. "Classic" Mac OS. Introduced on October 23 1999, Apple positioned it as "The Best Internet Operating System Ever," highlighting Apple Sherlock Internet search capabilities, integration with Apple's free online services known as .Mac, and improved Open Transport networking....
) for the 6809, later porting it to the 68000 and i386 series of microprocessors.

The Hitachi 6309
Hitachi 6309

The 6309 is Hitachi, Ltd. CMOS version of the Motorola 6809 microprocessor. While in "Emulation Mode" it is fully compatible with the 6809. To the 6809 specifications it adds higher clock rates, enhanced features, new instructions, and additional processor register....
 was an enhanced version of the 6809 with extra registers and additional instructions, including block move, additional multiply instructions and hardware-implemented division. It was used in unofficially-upgraded CoCo 3 computers and a version of OS-9 was written to take advantages of the 6309's extra features: NitrOS-9.

Hitachi
Hitachi, Ltd.

is a multinational corporation specializing in high-technology and services headquartered in Marunouchi Itchome, Chiyoda, Tokyo, Tokyo, Japan. The company is the parent of the Hitachi Group as part of the larger DKB Group companies....
 also produced its own 6809-based machines, the MB6890 and later the S1. These were primarily for the Japanese market, but some were exported to and sold in Australia
Australia

Australia, officially the Commonwealth of Australia, is a country in the southern hemisphere comprising the Australia of the world's smallest continent, the major island of Tasmania, and numerous list of islands of Australia in the Indian Ocean and Pacific Oceans....
. There the MB6890 was dubbed the "Peach", probably in ironic reference to the popularity of the Apple II. The S1 was notable in that it contained paging
Paging

In computer operating systems that have their main memory divided into page , paging is a transfer of pages between main memory and an auxiliary store, such as hard disk drive....
 hardware extending the 6809's native 64 kilobyte
Kilobyte

Kilobyte is a unit of Computer data storage equal to either 1,024 bytes or 1,000 bytes , depending on context.It is abbreviated in a number of ways: KB, kB, K and Kbyte....
 (64×210 byte
Byte

A byte is a basic unit of measurement of Computer storage in computer science. In many computer architectures it is a Byte addressing memory address space....
) addressing range to a full 1 megabyte
Megabyte

Megabyte is a SI prefix-multiple of the unit byte for digital information computer storage or transmission and is equal to 106 bytes....
 (1×220 byte) in 4 KB pages. It was similar in this to machines produced by SWTPC
SWTPC

The United States company SWTPC started in 1964 as DEMCO . It was incorporated in 1967 as Southwest Technical Products Corporation of San Antonio, Texas....
, Gimix, and several other suppliers. TSC produced a Unix-like operating system uniFlex
UniFlex

UniFlex is a Unix-like operating system developed by Technical Systems Consultants for multitasking, multiprocessing for the Motorola Motorola 6809 family....
 which ran only on such machines. OS-9
OS-9

OS-9 is a family of real-time computing, process , computer multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware for the Motorola 6809 microprocessor....
 Level II, also took advantage of such memory management facilities. Most other computers of the time with more than 64 KB of memory addressing were limited to bank switching
Bank switching

Bank switching was a technique common in 8-bit microcomputer systems, to increase the amount of addressable random-access memory and read-only memory without extending the address bus....
 where much if not all the 64 KB was simply swapped for another section of memory.

Neither Motorola nor Hitachi produce 6809 processors or derivatives anymore, despite the 6809 being one of the most powerful general-purpose 8-bit CPUs ever produced. Many of its innovative features have since been copied. 6809 cores are available in VHDL and can be programmed into FPGA and used as an embedded processor with speed ratings up to 40 MHz. Some 6809 opcodes also live on in the Freescale embedded processors.

External links

  • – Collection of 6809 instructions, emulators, tools, debuggers, disassemblers and assemblers
  • (PDF
    Portable Document Format

    Portable Document Format is a file format created by Adobe Systems in 1993 for document exchange. PDF is used for representing two-dimensional documents in a manner independent of the application software, hardware, and operating system....
    ) – By Terry Ritter and Joel Boney, co-designers of the 6809; BYTE magazine reproductions by tim lindner
  • news://comp.sys.m6809 – Usenet newsgroup
    Newsgroup

    A newsgroup is a repository usually within the Usenet system, for messages Posting style from many users in different locations. The term may be confusing to some, because it is usually a discussion group....
     for 6809 enthusiasts


  • By Chris Lomont