OVP Peripheral Model: AtmelTimerCounter
Model Specific Information
This page provides introductory usage information for an Imperas OVP peripheral behavioral model.
The page is split into sections providing specific information for this peripheral,
including any ports for connecting into a platform, registers, other component parts, and configuration options and general information for peripheral modeling with Imperas OVP.
Description
TC: Timer Counter This model contains an accurate Register set interface. The functionality has only been implemented to sufficiently boot uClinux The Timer Counter block includes three identical 16-bit timer counter channels. Each channel can be independently programmed to perform a wide range of functions including frequency measurement, event counting, interval measurement, pulse generation, delay timing and pulse width modulation. The Timer Counter can be used in Capture or Waveform mode, and all three counter channels can be started simultaneously and chained together. for more information visit http://www.atmel.com/products/at91
Licensing
Open Source Apache 2.0
Limitations
This model is sufficient to boot Linux
Reference
Rev. 1354D ARM08/02
Location
The TimerCounter peripheral model is located in an Imperas/OVP installation at the VLNV: atmel.ovpworld.org / peripheral / TimerCounter / 1.0.
Net Ports
This model has the following net ports:
Table : Net Ports
Name | Type | Must Be Connected | Description |
---|
IRQ0 | output | F (False) | |
IRQ1 | output | F (False) | |
IRQ2 | output | F (False) | |
Bus Slave Ports
This model has the following bus slave ports:
Bus Slave Port: bp1
Table 1: Bus Slave Port: bp1
Name | Size (bytes) | Must Be Connected | Description |
---|
bp1 | 0x4000 | T (True) | |
Table 2: Bus Slave Port: bp1 Registers:
Name | Offset | Width (bits) | Description | R/W | is Volatile |
---|
REG_TC_CCR0 | 0x0 | 32 | | | |
REG_TC_CMR0 | 0x4 | 32 | | | |
REG_TC_CVR0 | 0x10 | 32 | | | |
REG_TC_RA0 | 0x14 | 32 | | | |
REG_TC_RB0 | 0x18 | 32 | | | |
REG_TC_RC0 | 0x1c | 32 | | | |
REG_TC_SR0 | 0x20 | 32 | | | |
REG_TC_IER0 | 0x24 | 32 | | | |
REG_TC_IDR0 | 0x28 | 32 | | | |
REG_TC_IMR0 | 0x2c | 32 | | | |
REG_TC_CCR1 | 0x40 | 32 | | | |
REG_TC_CMR1 | 0x44 | 32 | | | |
REG_TC_CVR1 | 0x50 | 32 | | | |
REG_TC_RA1 | 0x54 | 32 | | | |
REG_TC_RB1 | 0x58 | 32 | | | |
REG_TC_RC1 | 0x5c | 32 | | | |
REG_TC_SR1 | 0x60 | 32 | | | |
REG_TC_IER1 | 0x64 | 32 | | | |
REG_TC_IDR1 | 0x68 | 32 | | | |
REG_TC_IMR1 | 0x6c | 32 | | | |
REG_TC_CCR2 | 0x80 | 32 | | | |
REG_TC_CMR2 | 0x84 | 32 | | | |
REG_TC_CVR2 | 0x90 | 32 | | | |
REG_TC_RA2 | 0x94 | 32 | | | |
REG_TC_RB2 | 0x98 | 32 | | | |
REG_TC_RC2 | 0x9c | 32 | | | |
REG_TC_SR2 | 0xa0 | 32 | | | |
REG_TC_IER2 | 0xa4 | 32 | | | |
REG_TC_IDR2 | 0xa8 | 32 | | | |
REG_TC_IMR2 | 0xac | 32 | | | |
REG_TC_BCR | 0xc0 | 32 | | | |
REG_TC_BMR | 0xc4 | 32 | | | |
Platforms that use this peripheral component
Peripheral components can be used in many different platforms, including those developed by Imperas or by other users of OVP. You can use this peripheral in your own platforms.
Table 3: Publicly available platforms using peripheral 'TimerCounter'