- •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
Chapter 4
Programmer’s Model for Test
This chapter describes the additional logic for functional verification and production testing. It contains the following sections:
•PrimeCell KMI test harness overview on page 4-2
•Scan testing on page 4-4
•Test registers on page 4-5.
DDI 0143C |
© Copyright ARM Limited 1999. All rights reserved. |
4-1 |
Programmer’s Model for Test
4.1PrimeCell KMI test harness overview
The test block performs the following functions:
•generation of test clock enable ( ClkEn), based on the contents of KMITCR
•generation of internal test resets ( nReset, nKMIRES), based on the contents of KMITCR and the level on the SCANMODE pin
•write interface for the test register
•test input stimulus multiplexing for non-AMBA inputs ( KMICLKIN and
KMIDATAIN)
•capture of output signals ( nKMIDATAEN and nKMICLKEN).
These test features are controlled by test registers. This allows testing of the PrimeCell KMI in isolation from the rest of the system using only transfers from the AMBA APB.
Off-chip test vectors are supplied via a 32-bit parallel External Bus Interface (EBI) and converted to internal AMBA bus transfers. The application of test vectors is controlled via the Test Interface Controller (TIC) AMBA bus master module.
During test the KMIREFCLK signal must be driven by the free-running PCLK clock signal so that the test vectors can be frequency-independent. This clock multiplexing must be performed externally from the PrimeCell KMI. Figure 4-1 shows the PrimeCell KMI test harness.
|
|
|
|
|
|
|
|
|
|
|
Non- |
Non- |
|
|
|
|
|
|
|
||||
AMBA |
|
|
|
|
|
PrimeCell |
|
|
|
|
AMBA |
APB |
|
|
KMI |
|
|
|
|
APB |
|||
inputs |
|
|
|
|
|
|
|
outputs |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Test stimulus |
AMBA APB interface |
Test results |
|
capture |
|
|
|
|
|
|
|
Figure 4-1 PrimeCell KMI test harness
4-2 |
© Copyright ARM Limited 1999. All rights reserved. |
DDI 0143C |
Programmer’s Model for Test
In the normal mode, the ClkEn signal is pulled high. If the TestModeEn bit is set, the device is said to be in the test mode. In the test mode, if the TestClkEn bit is not set, ClkEn is pulled HIGH. Otherwise, the internal test clock enable is selected, based on the RegClkMode bit value. If RegClkMode is set, a pulse on the ClkEn line is generated only on accesses to the KMITCER register address, that is, when the SelKMITCER input is asserted. If the RegClkMode bit is not set, a clock enable is generated on every access to the device. The ClkEn signal is generated with PENABLE and PSEL as gating terms.
When the SCANMODE pin is LOW, the test reset generated by ORing the external reset with the test reset is driven as the internal reset (nReset for PCLK-domain logic, and nKMIRES for REFCLK-domain logic). When SCANMODE is HIGH, the test reset does not have any effect, and the external resets BnRES and nKMIRST are driven on the internal reset lines. The test registers themselves are not affected by test reset.
When the TESTINPSEL bit in the KMITCR register is set, non-AMBA inputs such as KMICLKIN and KMIDATAIN are multiplexed with the corresponding bits in the KMITISR register.
DDI 0143C |
© Copyright ARM Limited 1999. All rights reserved. |
4-3 |
Programmer’s Model for Test
4.2Scan testing
This block has been designed to simplify the insertion of scan test cells and the use of Automatic Test Pattern Generation (ATPG) for an alternative method of manufacturing test.
During scan testing, the SCANMODE input must be driven HIGH to ensure that all internal data storage elements can be asynchronously reset. For normal use and application of manufacturing test vectors via the TIC, SCANMODE must be negated LOW.
4-4 |
© Copyright ARM Limited 1999. All rights reserved. |
DDI 0143C |