System information

9.1 VGA Function Performance
PCI accesses also contains the overhead of the interrupt handling. An interrupt handle
spends a large amount of processing time because it causes the processor to save its state
of execution via a context switch. However, the interrupt handle spends approximately
20 µs of processor time, which does not have a relevant impact while processing the whole
Request Buffer. To examine the VGA processing time of the CHARM card, a test bench
program which sets up a video mode and writes large amounts of data to the CHARM
card was developed. The test program runs on Microsoft DOS. This approach avoids the
impact of the screen handling from a modern operating system. Furthermore, the video
mode is set up by a BIOS real mode interrupt of which function is not available in modern
operating systems. The test program measures the throughput to the video card for all
VGA video modes. Additionally, the processing time of the VGA data was examined via
the synchronous trace of the PCI bus. The CHARM card rejects the PCI requests while
processing the received VGA data. The PCI trace is inspected for long periods of PCI retry
cycles which is an indicator of the VGA data processing. Following a part of the PCI trace
mentioned above is shown:
SAMPLE ADDRESS DATA C/BE# CYCLE TIME (Relative)
--------------------------------------------------------------
54148 000A6658 0111 MEM WR 120. ns
54149 11223344 0000 DATA 1.29 us
54150 0000 IDLE 60. ns
54151 000A6654 0111 MEM WR 120. ns
54152 11223344 0000 DATA 1.08 us
54153 0000 IDLE 60. ns
54154 000A6650 0111 MEM WR 120. ns
54155 11223344 0000 DATA 29.9343 ms
54156 0000 IDLE 60. ns
54157 000A664C 0111 MEM WR 120. ns
54158 11223344 0000 DATA 1.08 us
The first column shows the sample number of the PCI trace, which represents the chronol-
ogy of the PCI requests. The second and the third column represent the PCI address and
the PCI data of the access. Furthermore, the column C/BE# contains the PCI command or
the PCI byteenable value. In this process, the CYCLE column presents the meaning of the
PCI command value. Finally, the last column shows the period between the specific PCI
cycles. Sample # 54155, for example, shows a large period of a PCI write access. During
this time the CHARM processes the Request Buffer and rejects all PCI requests (see figure
4.10 in section 4.2.2). Figure 9.2 shows a diagram of the processing time of the content of
the Request Buffer. By the reason, the amount of data inside the Request Buffer is not
fixed, the processing time is normalized corresponding to the processing of 1 MB of data.
Most processing time is spend by the graphical video modes 0x4-0x6 and 0xF-0x13. They
use one till four video planes. As a matter of fact, the number of video planes used does not
have a relevant impact on the processing time. However, a single write request to a VGA
card can cause several internal write accesses to the video memory, which is divided into
four video planes. One will expect that the number of video planes used by the mode has an
117