22.09.2015 Views

of Microprocessors

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

MICROPROCESSORS 159<br />

right will set it. Since indexed addressing is available with the shifts, very<br />

efficient bit testing and control loops are possible.<br />

Besides logic replacement, the 6502 can be used quite successfully for<br />

general-purpose applications. The main factor inhibiting this besides the<br />

course <strong>of</strong> history is its reliance on a base page and its limited indexed<br />

addressing range. The base page complicates a relocating linking loader<br />

considerably because both base page and regular memory relocation are required.<br />

Although the 6502 is a model <strong>of</strong> efficiency when processing tables<br />

less than 256 bytes in length, bigger lists cannot be handled using<br />

straightforward indexed addressing. Instead, pointers must be formed on the<br />

base page and address calculation done with normal arithmetic instructions.<br />

Direct synthesis can be done significantly faster with the 6502 than<br />

with other 8-bit processors. The addressing modes are quite efficient in<br />

handling the waveform and other tables involved provided they do not exceed<br />

256 bytes in length. Properly programmed, translation <strong>of</strong> a byte via table<br />

lookup may add as little as 4 f.Lsec to execution time. An 8 X 8 unsigned<br />

multiply can be performed by s<strong>of</strong>tware in as little as 92 clock cycles average<br />

for a full 16-bit product. These figures make the idea <strong>of</strong> using a 6502<br />

microprocessor for each voice in a direct synthesis system at least worth<br />

considering.<br />

The 68000 for General Purpose and High Performance<br />

Of the existing 16-bit microprocessors available for use by anyone in<br />

1984, the Motorola 68000 is clearly the best performer in musical<br />

applications. It is inherently fast with speeds as high as 3 million register-toregister<br />

instructions per second. It has a rich register complement <strong>of</strong> 16 32­<br />

bit general-purpose registers, which makes that speed claim meaningful.<br />

And it can handle big applications using very large data arrays because <strong>of</strong> its<br />

unsegmented addressing range <strong>of</strong> 16M bytes. These factors together allow an<br />

instruction set that is very easy to program in assembly language and has the<br />

power necessary for efficient code generation by high-level language<br />

compilers.<br />

Whereas an 8-bit microprocessor can be thoroughly documented in a<br />

16- or 24-page brochure, Motorola needs a 200-page paperback book to do<br />

the same for the 68000. Much <strong>of</strong> this bulk concerns usage in very complex,<br />

multiuser, time-sharing computer systems for which it has been highly<br />

promoted. In fact, the performance <strong>of</strong> the 68000 is comparable to that <strong>of</strong><br />

large minicomputers typically used in time-sharing systems and beats the<br />

pants <strong>of</strong>f the room-sized IBM 360/40 the author used in 1970. However, it is<br />

possible, even easy, to use the 68000 in small single-user systems or even<br />

logic-replacement-dedicated applications as well, which is the case for most<br />

musical applications. These are the usage modes that will be covered here<br />

with emphasis on those features that make the 68000 unusually effective in<br />

high-performance single-user applications.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!