7-1
CHAPTER 7
PERIPHERAL SUBSYSTEM
The peripheral (I/O) interface is an essential part of any embedded processor system. It supports
communications between the microprocessor and the peripherals. Given the variety of existing
peripheral devices, a peripheral system must allow a variety of interfaces. An important part of a
microprocessor system is the bus that connects all major parts of the system. This chapter de-
scribes the connection of peripheral devices to the Intel486™ processor microprocessor bus. This
chapter presents design techniques for interfacing different devices with the Intel486 processor,
such as LAN controllers and EISA, VESA local bus, and PCI chip sets.
The peripheral subsystem must provide sufficient data bandwidth to support the Intel486 proces-
sor. High-speed devices like disks must be able to transfer data to memory with minimal CPU
overhead or interaction. The on-chip cache of the Intel486 processor requires further consider-
ations to avoid stale data problems. These subjects are also covered in this chapter.
The Intel486 processor supports 8-bit, 16-bit and 32-bit I/O devices, which can be I/O-mapped,
memory-mapped, or both. It has a 106 Mbyte/sec memory bandwidth at 33 MHz. Cache coher-
ency is supported by cache line invalidation and cache flush cycles. I/O devices can be accessed
by dedicated I/O instructions for I/O-mapped devices, or by memory operand instructions for
memory-mapped devices. In addition, the Intel486 processor always synchronizes I/O instruction
execution with external bus activity. All previous instructions are completed before an I/O oper-
ation begins. In particular, all writes pending in the write buffers are completed before an I/O read
or write is performed. These functions are described in this chapter.
7.1
PERIPHERAL/PROCESSOR BUS INTERFACE
Because the Intel486 processor supports both memory-mapped and I/O-mapped devices, this sec-
tion discusses the types of mapping, support for dynamic bus sizing, byte swap logic, and critical
timings. An example of a basic I/O controller implementation is also included. Some system-ori-
ented interface considerations are discussed because they can have a significant influence on
overall system performance.
7.1.1
Mapping Techniques
The system designer should have a thorough understanding of the system application and its use
of peripherals in order to design the optional mapping scheme. Two techniques can be used to
control the transmission of data between the computer and its peripherals. The most straightfor-
ward approach is I/O mapping.
The Intel486 processor can interface with 8-bit, 16-bit or 32-bit I/O devices, which can be I/O-
mapped, memory-mapped, or both. All I/O devices can be mapped into physical memory ad-
dresses ranging from 00000000H to FFFFFFFFH (four-gigabytes) or I/O addresses ranging from
00000000H to 0000FFFFH (64 Kbytes) for programmed I/O, as shown in
Figure 7-1
.
Содержание Embedded Intel486
Страница 16: ......
Страница 18: ......
Страница 26: ......
Страница 28: ......
Страница 42: ......
Страница 44: ......
Страница 62: ......
Страница 64: ......
Страница 138: ......
Страница 139: ...5 Memory Subsystem Design Chapter Contents 5 1 Introduction 5 1 5 2 Processor and Cache Feature Overview 5 1 ...
Страница 140: ......
Страница 148: ......
Страница 150: ......
Страница 170: ......
Страница 172: ......
Страница 226: ......
Страница 228: ......
Страница 264: ......
Страница 282: ......
Страница 284: ......