This book is intended for software engineers who are interested in writing firmware programs for dedicated microprocessors. It is a collection of topics designed to familiarize the reader with hardware design, work in a stand-alone environment, some specialized instrumentation, and the development of code to interact with power-up/reset hardware. The Zilog Z80 microprocessor is used as the basic control unit.
A brief introduction is given in chapter 1. Firmware development techniques are given in chapter 2, which is a short write-up of a number of terms used in the design and development. For example, the term signature analysers is explained in one short paragraph. This is a very important testing tool used in modern systems. It will be of no use to a software engineer simply to know this term. He or she will have to look elsewhere fully to grasp and use it in writing a firmware program. Chapter 3 describes some aspects of hardware design. “It is not intended that the reader should gain a full understanding of electronic engineering. . . .”
The interrupt facility of the Z80 and its need for firmware programmers is explained in chapter 5. Input/output is considered in chapter 6. Multitasking is briefly explained in chapter 7, while a multitasking executive is described in chapter 8. The possible use of a high-level language in the development of firmware is briefly considered in chapter 9. Some techniques for diagnosing a microprocessor-based system and their implementation are outlined in chapter 10. The book concludes with a discussion of “the aspects pertinent to firmware design and implementation” of a communication system.
A software engineer will need to take a course in microprocessor-based design to understand the hardware concepts necessary to write firmware programs. This book does not provide enough material for such a course. On the other hand, it does allude to the terminology currently needed to design systems using microprocessors. As such, it can be used as a reference by designers. It will be easier for designers with an electronics background than for software engineers with a pure programming background to use this book.