- •Preface
- •About this document
- •Intended audience
- •Organization
- •Typographical conventions
- •Timing diagram conventions
- •Further reading
- •ARM publications
- •Other publications
- •Feedback
- •Feedback on this document
- •Feedback on the ARM PrimeCell PS2 Keyboard/Mouse Interface (PL050)
- •1 Introduction
- •1.1 About the ARM PrimeCell PS2 Keyboard/Mouse Interface (PL050)
- •1.1.1 Features of the PrimeCell KMI
- •1.2 AMBA compatibility
- •2 Functional Overview
- •2.1 ARM PrimeCell PS2 Keyboard/Mouse Interface (PL050) overview
- •2.2 PrimeCell KMI functional description
- •2.2.1 AMBA APB interface and register block
- •2.2.2 Transmit block
- •2.2.3 Receive block
- •2.2.4 Controller block
- •2.2.5 Timer/clock divider blocks
- •2.2.6 Synchronization logic
- •2.2.7 Test registers and logic
- •2.3 PrimeCell KMI operation
- •2.3.1 Interface reset
- •2.3.2 Clock signals
- •2.3.3 Keyboard clock and data signals
- •2.3.4 Keyboard/mouse data output
- •2.3.5 Keyboard data input
- •2.3.6 Timing requirements
- •3 Programmer’s Model
- •3.1 About the programmer’s model
- •3.2 Summary of PrimeCell KMI registers
- •3.3 Register descriptions
- •3.3.1 KMICR: [6] (+ 0x00)
- •3.3.3 KMIDATA: [8] (+ 0x08)
- •3.3.4 KMICLKDIV: [4] (+ 0x0C)
- •3.3.5 KMIIR: [2] (+ 0x10)
- •3.4 Interrupts
- •3.4.1 Interrupt generation logic
- •4 Programmer’s Model for Test
- •4.1 PrimeCell KMI test harness overview
- •4.2 Scan testing
- •4.3 Test registers
- •4.3.2 KMITCR [5] (+0x80)
- •4.3.3 KMITMR [4] (+0x84)
- •4.3.4 KMITISR [2] (+0x88)
- •4.3.5 KMITOCR [3] (+0x8c)
- •4.3.6 KMISTG1 [6] (+0x90)
- •4.3.7 KMISTG2 [5] (+0x94)
- •4.3.8 KMISTG3 [8] (+0x98)
- •4.3.9 KMISTATE [4] (+0x9c)
- •A.1 AMBA APB signals
- •A.2 On-chip signals
- •A.3 Signals to pads
Functional Overview
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
KMICLK
Stop
KMIDATA |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Parity |
Line control bit
Figure 2-4 Data sent to the keyboard (KMI transmit)
2.3.6Timing requirements
KMICLK
KMIDATA receive
KMIDATA transmit
KMICLK request- to-send
KMIDATA request- to-send
The timing requirements of the interface are shown in Figure 2-5 and Table 2-3.
Tkclk
Tkckl |
Tkckh |
Tdsi
Tdhi
Tdso |
Tdho |
|
Tki |
|
|
|
|
Tkrg |
|
|
||||||
|
|
|
||||
|
|
|
|
|
|
|
Tksb
Figure 2-5 PrimeCell KMI timing and controller request to send protocol
DDI 0143C |
© Copyright ARM Limited 1999. All rights reserved. |
2-11 |
Functional Overview
Table 2-3 shows the nominal timings for the interface signals.
Table 2-3 Interface signals
Symbol |
Parameters |
Min |
Typ |
Max |
Units |
Notes |
|
|
|
|
|
|
|
Tkclk |
Keyboard clock period |
1 |
- |
100 |
μs |
- |
|
|
|
|
|
|
|
Tkckl |
Keyboard clock LOW time |
0.5 |
- |
50 |
μs |
- |
|
|
|
|
|
|
|
Tkckh |
Keyboard clock HIGH time |
0.5 |
- |
50 |
μs |
- |
|
|
|
|
|
|
|
Tdsi |
Setup on KMIDATA to |
1 |
- |
Tkckh |
μs |
1 |
|
KMICLK falling for receive |
|
|
- 1μs |
|
|
|
|
|
|
|
|
|
Tdhi |
Hold on KMIDATA to |
1 |
- |
Tkckh |
μs |
1 |
|
KMICLK rising for receive |
|
|
- 1μs |
|
|
|
|
|
|
|
|
|
Tdso |
Setup on KMIDATA to |
Tkckl |
- |
Tkckl |
- |
1 |
|
KMICLK rising for transmit |
- 1μs |
|
|
|
|
|
|
|
|
|
|
|
Tdho |
Hold on KMIDATA from |
0ns |
- |
1μs |
- |
1 |
|
KMICLK falling for transmit |
|
|
|
|
|
|
|
|
|
|
|
|
Tki |
Time for which KMICLK is |
60.0 |
64 |
85.3 |
μs |
1, 2 |
|
held low to request a send |
|
|
|
|
|
|
|
|
|
|
|
|
Tkrg |
KMICLK LOW from controller |
1 |
- |
- |
μs |
1 |
|
to KMICLK LOW from |
|
|
|
|
|
|
peripheral for request to send |
|
|
|
|
|
|
|
|
|
|
|
|
Tksb |
KMICLK LOW to KMIDATA |
1 |
- |
- |
μs |
1, 3 |
|
LOW hold time for request to |
|
|
|
|
|
|
send |
|
|
|
|
|
Note 1 The KMIDATA and KMICLK signals in the diagrams and tables in this section relate to the respective external pad connections.
Note 2 Tki must be greater than 60.0 μs in order to guarantee that a keyboard will recognize a request-to-send command from the system. The request-to-send is timed by 512 cycles of the internal 8MHz clock, and this determines the maximum value of Tki.
Note 3 The KMIDATA will precede the KMICLK in this implementation, so the value for Tksb shown on the diagram above is negative, that is safe.
2-12 |
© Copyright ARM Limited 1999. All rights reserved. |
DDI 0143C |