IC Plus IP210T Data Sheet

Page 1
IP210T
Data Sheet
Serial to Ethernet Controller with A/D
Features General Description
z Embeds a 8051CPU z Includes 32KB SSRAM and 64KB OTP ROM z Includes a 10/100 Ethernet MAC, Ethernet
PHY
z Includes 2 channel DMA z Includes a 7-bit 2 channel ADC(0V~2.5V) z Provides I2C for EEPROM access z Includes 3 timers
- two 8-bit hardware auto load timers
- one 16-bit hardware auto load timer
z Provides a high speed (up to 921 Kbps)
UART(with MODEM control) and 1 simplified UART(Tx, Rx only)
z Supports fiber cable connection z 0.25um CMOS technology z 2.5V core and 3.3V (2.5V) IO power z 48-pin QFN package
The IP210T is a cost effective and highly integrated Serial-to-Ethernet SoC. Embedding a 8051 CPU, 64KB OTP ROM, 32K bytes SRAM, 2 channel 7-bit ADC, 10/100Mbps Ethernet and UART. The IP210T is targeted for network sensor, Serial-to-Ethernet server and security system.
Since all device drivers and protocol stack are embedded inside the SoC, this design provides a neat and cost-effective solution. The 48 pin package allows the designer to build a compact size Serial-to-Ethernet device. 7-bit A/D converter and GPIO pins meet most of design requirements of industrial equipment control. In addition to TP cable connection, the IP210T also provides the fiber cable connection to meet the requirement of long distance communication.
1 / 68
June 10, 2008
Page 2
IP210T
Data Sheet
Table of Contents
Features.................................................................................................................................................................................1
General Description..............................................................................................................................................................1
Table of Contents..................................................................................................................................................................2
Revision History.....................................................................................................................................................................4
1 Pin Diagram...................................................................................................................................................................5
2 Block Diagram...............................................................................................................................................................6
3 Pin Description..............................................................................................................................................................7
4 Function Description........................................................................................................... ........................................10
4.1 CPU......................................................................................................................................10
4.1.1 Memory organization...............................................................................................10
4.1.2 SFR MAP and Default Value...................................................................................11
4.1.3 Bit Addressable Registers’ Bit definition..................................................................11
4.1.4 Non Bit Addressable Registers’ Bit definition..........................................................12
4.1.5 Register Description (Non 8051 standard registers)...............................................12
4.1.6 Register description (8051 standard registers) .......................................................13
4.1.7 CPU Interrupt...........................................................................................................15
4.1.8 CPU Timers/Counters..............................................................................................16
4.1.8.1 Timer0............................................................................................................16
4.1.8.2 Timer1............................................................................................................16
4.1.8.3 Timer2............................................................................................................16
4.1.9 CPU Mirror Mode.....................................................................................................18
4.1.9.1 Purpose..........................................................................................................18
4.1.9.2 Action.............................................................................................................18
4.1.10 Power Management ................................................................................................18
4.1.10.1 Idle Mode.......................................................................................................18
4.1.10.2 Power Down Mode ........................................................................................18
4.1.11 Watch Dog Timers...................................................................................................18
4.1.11.1 Watch Dog Timer 1, WDT..............................................................................18
4.1.11.2 Watch Dog Timer 2, HWWDT........................................................................19
4.2 DMA......................................................................................................................................20
4.2.1 Internal memory to internal memory........................................................................20
4.2.1.1 Purpose..........................................................................................................20
4.2.1.2 Action.............................................................................................................20
4.2.2 OTP to internal memory ..........................................................................................20
4.2.2.1 Purpose..........................................................................................................20
4.2.2.2 Action.............................................................................................................20
4.3 Timer/Counter.......................................................................................................................22
4.3.1 Purpose ...................................................................................................................22
4.3.2 Initialize real-time counter........................................................................................22
4.3.3 Read real-time counter............................................................................................22
4.3.4 Timer/Counter overflow...........................................................................................22
4.4 MAC......................................................................................................................................23
4.4.1 TX MAC...................................................................................................................23
4.4.1.1 TX descriptor registers...................................................................................23
4.4.1.2 IP Checksum and CRC32 calculation for a proprietary p acket.....................24
4.4.2 RX buffer..................................................................................................................24
4.4.2.1 RX Filter.........................................................................................................24
4.5 EEPROM I/F.........................................................................................................................25
4.5.1 Configuration...........................................................................................................25
4.5.1.1 Access through P3[7:6]..................................................................................25
4.5.1.2 Supported EEPROM types............................................................................25
4.5.2 Related Registers....................................................................................................25
2 / 68
June 10, 2008
Page 3
IP210T
Data Sheet
Address of EEPROM...............................................................................................25
4.5.3
4.6 UART....................................................................................................................................26
4.6.1 The operation of the UART in 8051.........................................................................26
4.6.1.1 Serial Port0....................................................................................................26
4.6.1.2 Modes............................................................................................................26
4.6.2 The operation of High Speed UAR T with FIFO.......................................................26
4.6.2.1 Enable High Speed UART.............................................................................26
4.6.2.2 Related Registers’ Briefing............................................................................27
4.7 IP210T OTP ROM................................................................................................................28
4.7.1 Burning OTP Memory..............................................................................................28
4.8 PHY Transceiver Interface....................................................................................................29
4.8.1 Registers definition..................................................................................................29
4.8.2 29
4.8.3 Register0 : Control Register....................................................................................29
4.8.4 Register1 : Status Register......................................................................................30
4.8.5 Register2 : PHY Identifier 1 Register ......................................................................31
4.8.6 Register3 : PHY Identifier 2 Register ......................................................................31
4.8.7 Register4 : Auto-Negotiation Advertisement Register.............................................31
4.8.8 Register5 : Auto-Negotiation Link Partner Ability Register......................................32
4.8.9 Register6 : Auto-Negotiation Expansion Register...................................................33
5 Register Description...................................................................................................................................................34
5.1 Register Address Mapping...................................................................................................34
5.2 Register Descriptions ...........................................................................................................37
6 Electrical Characteristics............................................................................................................................................63
6.1 Absolute Maximum Rating....................................................................................................63
6.2 Power Dissipation.................................................................................................................63
6.3 DC Characteristic .................................................................................................................63
6.3.1 Operating Condition.................................................................................................63
6.3.2 ADC Operating Condition........................................................................................63
6.3.3 Supply Voltage.........................................................................................................64
6.4 AC Timing.............................................................................................................................65
6.4.1 EEPROM Timing .....................................................................................................65
6.5 Thermal Data........................................................................................................................65
7 Order Information........................................................................................................................................................66
8 Package Detail............................................................................................................................................................67
3 / 68
June 10, 2008
Page 4
Revision History
Revision # Change Description
IP210T-DS-R01 Initial release.
IP210T
Data Sheet
4 / 68
June 10, 2008
Page 5
1 Pin Diagram
IP210T
Data Sheet
5 / 68
June 10, 2008
Page 6
2 Block Diagram
IP210T block diagram
Internal
32K RAM
Data
memroy
&
Packet
buffer
DMA
Registers
CTRL
Memory
CTRL
256 byte
RAM
8051
IP210T
Data Sheet
IP210T
HighSpeed
UART
64K
OTP
SFR
Serial Port 0
GPIO
MAC
CTRL
EEPROM
10/100
Mbps
PHY
CTRL
ADC
TP/FX
6 / 68
June 10, 2008
Page 7
3 Pin Description
Type Description
I Input pin O Output pin IPL Input pin with internal pull low IPH Input pin with internal pull high P Power supply
Pin No. Label Type Description PHY transceiver 45
44
46 47
36 FXSD I Fiber signal. This pin is used to control the operating
Pin No. Label Type Description Analog digital converter
RXIP RXIM
TXOP TXOM
I/O
I/O
Receive Input Pair
Differential pair shared by 100Base-TX, and 10Base-T modes.
Transmit Output Pair
Differential pair shared by 100Base-TX, and 10Base-T modes. When configured as 100Base-TX, output is an ML T-3 encoded waveform. When configured as 10Base-TX, the output is the Manchester code.
mode regarding fiber cable. <0.7V: Enable TP cable function.
0.8V ~ 1.6V: Enable fiber cable function. >1.8V: Fiber cable signal detected.
IP210T
Data Sheet
04 ADC0 I ADC channel 0 analog input 05 ADC1 I ADC channel 1 analog input
The upper reference voltage. The maximum input volt age
02 ADC_REFH I
03 ADC_REFL I The lower reference voltage
range is determined by the voltage applied to ADC_REFH and the voltage applied to ADC_REFL
7 / 68
June 10, 2008
Page 8
Pin No. Label Type Description GPIO 1 27 P1_2 (net2otp) IPH/O P1_2 GPIO 1-2
Pin No. Label Type Description GPIO 2 & High Speed UART 17
18 19 20 21 22 23 24
P2_0/HSRXD P2_1/HSTXD P2_2/RTS P2_3/DTR P2_4/CTS P2_5/DSR P2_6/DCD P2_7/RI
IPH/O This port is either set to MODEM control pin or GPIO pin.
All 8 pins should be set to either GPIO mode or MODEM control mode.
IP210T
Data Sheet
Pin No. Label Type Description GPIO 3 28
29 30 31 32 33 37 38
P3_0/SRXD0 P3_1/STXD0 P3_2 P3_3/INT1B P3_4/T0(HA[17]) P3_5/T1(HA[16]) P3_6/SDA P3_7/SCL
IPH/O Port3 is an 8-bit bidirectional I/O port. Port3 also
provides various special features listed below: GPIO P3_0 or SRXD0, serial input port 0 GPIO P3_1 or STXD0, serial output port 0 GPIO P3_2 GPIO P3_3 or INT1, External interrupt 1 GPIO P3_4 or T0, Timer 0 external input GPIO P3_5 or T1, Timer 1 external input GPIO P3_6 or SDA, data pin of EEPROM
(when (0x8001[4] = 1’b1) GPIO P3_7 or SCL, Clock pin of EEPROM (when (0x8001[4] = 1’b1)
8 / 68
June 10, 2008
Page 9
Pin No. Label Type Description Miscellaneous 07 RESETB I Reset, low active. This pin should be kept at “low” st ate for
at least 10 microseconds. Connect this pin to a 1M ohms pull up resistor. There is an internal capacitor between this pin and GND, so the external capacitor is not necessary for a RC reset circuit.
09 CLK25/LINK_LED IPH/O CLK25(O)/ LINK_LED(O)
IP210T
Data Sheet
12 X1 I
11 X2 O 42 BGRES O Band gap resister. Connect a 6.19K ohms resistor
14 VPP I OTP high voltage power (for OTP write).
06 REGOUT O Regulator Control. This pin should be connected to the
26, 25 TEST1, TEST0 IPH
Pin No. Label Type Description POWER&GND 10
13 16 39
01 ADC_VCC P 2.5V Analog Digital Converter Power
15 34 40
43 48
Exposed-PAD VSS P GND Pad (E-PAD) of IP210T.
PVDD P 3.3V (2.5V) PAD Power
CVDD P 2.5V Core Power
AVDD P 2.5V Analog Power
System clock input or crystal input
It is recommended to connect X1 and X2 to a crystal. If the clock source is from another chip, the clock should be active at least for 1ms before RESETB de-asserted
Crystal output
between this pin and the GND.
Normal mode: 2.5V. OTP ROM programming mode: 6.5V
base of a PNP transistor to generate 2.5V output voltage at the collector.
Chip Mode Select (1, 1) : normal mode
(0, 0) : OTP write mode (1, 0) : reserved (0, 1) : reserved
ADC_VCC should be connected to AVDD (2.5v) even if ADC function is not used
9 / 68
June 10, 2008
Page 10
IP210T
Data Sheet
4 Function Description
4.1 CPU
4.1.1 Memory organization
IP210T manipulates operands in three memory spac es: 64KB program memory for internal OTP, 256 bytes 8051 built-in data RAM, and 32KB data memory.
The 256 bytes data RAM space is divided into 256-byte RAM and 128-byte 8051 Special Function Registers (SFR). The lower 128-byte of RAM can be accessed by direct or indirect addressing, the SFR can be access by direct addressing, and the upper 128-byte of RAM can be accessed by indirect addressing only. The 32K data RAM is accessed with instructions different from that for 256-byte RAM.
Program memory address map
8051 built-in memory address map
Data memory address map
0x0000
0xFFFF
0x00
0x7F 0x80
0xFF
0x0000
0x3FFF
0x4000
0x7FFF
0x8000
64 K
internal
OTP
128 byte internal
direct/ indirect
RAM
128 byte internal
indirect
RAM
Data memory
Packet buffer
MAC Registers
64K
8051 SFR
or
32K
interna l
SRAM
10 / 68
June 10, 2008
Page 11
4.1.2 SFR MAP and Default Value Address 0 / 8 1 / 9 2 / A 3 / B 4 / C 5 / D 6 / E 7 / F
0xF8 0xF0
0xE8 0xE0 0xD8 0xD0 0xC8 0xB8 0xB0 0xA8 0xA0 0x98 0x90 0x88
0x80
B Register (00000000) P4 (11111111) ACC (00000000) WDTCON (01000000) PSW (00000000) T2CON (00000000) IP (00000000) P3 (11111111) IE (00000000) P2 (11111111) SCON (00000000) P1 (11111111) TCON (00000000)
P0 (11111111)
WDTWCYC PDCON
(XXXXXX01)
T2MOD (00000000)
SBUF
TMOD (00000000)
SP (00000111)
RCAP2L (00000000)
TL0 (00000000)
DPL (00000000)
RCAP2H (00000000)
TL1 (00000000)
DPH (00000000)
TL2 (00000000)
TH0 (00000000)
DPL1 (00000000)
TH2 (00000000)
TH1 (00000000)
DPH1 (00000000)
CKCON
(00000000) DPS (XXXXXXX0)
X bit is reserved bit.
4.1.3 Bit Addressable Registers’ Bit definition Bit Address Reg
0 1 2 3 4 5 6 7
WDTRST WDTEN HWWDT_CLR HWWDT_DIS PARITY F1 OV RS0 RS1 F0 AC CY
CP/RL2 C/T2 TR2 EXEN2 TCLK RCLK EXF2 TF2 PX0 PT0 PX1 PT1 PS PT2 PS1 RXD TXD INT0 INT1 T0
EX0 ET0 EX1 ET1 ES ET2 ES1 EA RI TI RB8 TB8 REN SM2 SM1 SM0 RXD1 TXD1 IT0 IE0 IT1 IE1 TR0 TF0 TR1 TF1
Flash_Access_En
(Bank A17)
Address 0xD8
0xD0 0xC8 0xB8 0xB0
0xA8 0x98 0x90 0x88
Reg Name
WDTCON PSW
T2CON IP P3
IE SCON P1 TCON
IP210T
Data Sheet
(00000000)
PCON (0XXXXX00)
T1 (Bank A18)
11 / 68
June 10, 2008
Page 12
4.1.4 Non Bit Addressable Registers’ Bit definition
Reg Addres s 0xC9 0x89 0x87 0xE1 0x8E
4.1.5 Register Description (Non 8051 standard registers)
Address Register Name Access Description 0x8E
Reg Name Bit0 Bit1 Bit2 Bit3 Bit4 Bit5 Bit6 Bit7
T2MOD TMOD PCON PDCON CKCON
CKCON
DCEN T2OE M0 M1 C/T GATE M0 M1 C/T GATE IDL PD SMOD PDC JWP MD0 MD1 MD2 T0M T1M T2M WDT0 WDT1
RW Power-down Control register
Bit0-2: Insert wait state for MOVX
MD2 MD1 MD0 Wait state 0 0 0 0 0 0 1 4 0 1 0 8 0 1 1 12 1 0 0 16 1 0 1 20 1 1 0 24
1 1 1 28 Bit3: Timer0 clock = system clock /4 or /12 (1/0) Bit4: Timer1 clock = system clock /4 or /12 (1/0) Bit5: Timer2 clock = system clock /4 or /12 (1/0)
Bit6-7: WDT time-out counter select
IP210T
Data Sheet
WDT1 WDT0 Counter width
0 0 17
0 1 20
1 0 23
1 1 26
0xE1
PDCON
RW Power-down Control register
Bit 0: PDC (Power Down Control) 0 – pull high of P1/P2/P3 when entering power-down mode 1 – pull low of P1/P2/P3 when entering power-down mode Bit 1: JWP (Just Wake Up, it works not only in PowerDown mode, but also in Idle mode) 0 – issue interrupt after WakeUp 1 – don’t issue interrupt after WakeUp
Bit2-7: reserved
0xD8 WDTCON RW Watch-dog control register
Bit0: (WDTRST): Watch-dog reset Bit1: (WDTEN): Watch-dog enabl e Bit2: (HWWDT_CLR): Hardware Watch-dog clear Bit3: (HWWDT_DIS): Hardware Watch-dog disable Bit4: Flash_Access_En
12 / 68
June 10, 2008
Page 13
0- default
1- redirect XDATA Bus to Flash’s Address & DATA Bus Bit5-6: reserved Bit7: SMOD_1 – Serial modification. Double baud rate of serial port 1 if this bit set 1.
0xC8 T2CON RW Control register of T i mer 2 0xC9 T2MOD RW Mode register of Timer 2
Bit0:T2OE(Timer2 Output Enable) Switching Timer 2 clock-out mode, which connects the programmable clock output to external pin T2. Bit1:DCEN(Down Count Enable) 1: Timer 2 as Down counter. 0: Timer 2 as Up counter.(default)
0xCA RCAP2L RW Low byte of Timer 2 re-load register 0xCB RCAP2H RW High byte of Timer 2 re-load registe r 0xCC TL2 RW Low byte of Timer 2 register 0xCD TH2 RW High byte of Timer 2 register
0xE8
0xEF WDTWCYC RW For every (WDTWCYC+1) system clocks, CPU advances WDT
4.1.6 Register description (8051 standard registers)
P4 RW General Purp ose IO
by 1. Used with Watch Dog Timer for easier Time Control.
IP210T
Data Sheet
Address Register Name Access Description
Power Control register:
0x87 PCON RW
0x98 SCON RW
0x99 SBUF RW
0xA8 IE RW
Bit 7- SMOD: this bit is used to double the baud rate when TIMER 1 is used to generate baud rate and Serial port is set in mode 1/2/3
Serial Port Control Register: Bit [7:6] : Serial Port mode
00-Shift Register Baud Rate=Fosc/12 01-8 bit Baud Rate=variable 10-9 bit Baud Rate=Fosc/64 or Fosc/32
11-9 bit Baud Rate=variable Bit5: Enable Multi-processor communication
Bit4: Rx_Enable Bit3: the 9th bit TX value when bit[7:6]=10/11 Bit2: the 9th bit RX value when bit[7:6]=10/1 1
Bit1(TI) : TX Interrupt Status H/W set TI=1 when H/W has sent out data in SBUF. Bit0(RI) : RX Interrupt Status H/W set RI=1 when H/W has received data in SBUF.
Serial Port Buffer: store the data to be transmitted out or received in.
Interrupt Enable: Bit7: 0- disable all interrupts 1- each interrupt source is individually enabled or
Bit6: 0 - disable Serial Port 1 interrupt(RI_1/TI_1) 1 - enable Serial Port 1 interrupt
disabled by setting or clearing its enable bit
13 / 68
June 10, 2008
Page 14
Bit5: 0 - disable Timer 2 interrupt 1 - enable Timer 2 interrupt Bit4: 0 - disable Serial Port interrupt(RI/TI) 1 - enable Serial Port interrupt Bit3: 0 - disable Timer 1 interrupt 1 - enable Timer 1 interrupt Bit2: 0 - disable External 1 interrupt 1 - enable External 1 interrupt Bit1: 0 - disable Timer 0 interrupt 1 - enable Timer 0 interrupt Bit0: 0 - disable External 0 interrupt
1 - enable External 0 interrupt 0xB8 IP RW 0x88 TCON RW Timer Control Register.
0x89 TMOD RW Timer Mode Control Register. 0x8A TL0 RW Timer0 LSB. 0x8B TL1 RW Timer1 LSB. 0x8C TH0 RW Timer0 MSB. 0x8D TH1 RW Timer1 MSB. 0x83 DPH RW DPTR MSB. 0x82 DPL RW DPTR LSB. 0x81 SP RW Stack Pointer. 0x80 P0 RW General Purpose IO 0x90 P1 RW General Purpose IO 0xA0 P2 RW General Purpose IO 0xB0 P3 RW General Purpose IO
Interrupt Priority:
For each interrupt, 1 is high priority and 0 is low priority.
IP210T
Data Sheet
14 / 68
June 10, 2008
Page 15
IP210T
Data Sheet
4.1.7 CPU Interrupt
IP210T supports both hardware interrupt and software interrupt. The following table shows the interrupt types which are implemented in IP210T.
The only one difference between IP210T and standard 8051 about the interrupt is that INT0 pin for external interrupt0 trigger is no longer exist, the interrupt0 is designed to be the interrupt sourcing from Network TX/RX, DMA, Timer/Counter overflow, High Speed UART, ADC and PHY status. Besides IE0, to enable each interrupt the individual enable bit of Interrupt Enable Register (0x8004) should be set, and the Status Register (0x8003) would show the status for each interrupt. When an interrupt is generated, the Interrupt Service Routine (ISR) will check the interrupt source by checking Status Register to know what interrupt is occurring.
Since the interrupt function of External request 0 is designed to respond only to the joint events of Interrupt Enable Register & Interrupt Status Register, pin P3.2 on IP210T is no longer used as the INT0 pin for External Request 0.
Interrupt Source Vector Address Request Flag Enable Flag External Request0
(High Speed UART, Ethernet TX/RX, DMA, ADC, Timer/Counter Overflow and PHY)
Timer0 External Request1 Timer1 Serial Port0
Timer2
0003h Status Register (0x8003)
000Bh TF0/TCON.5 ET0/IE.1 0013h IE1/TCON.3 EX1/IE.2 001Bh TF1/TCON.7 ET1/IE.3 0023h T:TI/SCON.1,
R:RI/SCON.0
002Bh TF2/T2CON.7 ET2/IE.5
Interrupt Enable Register (0x8004) and EX0
ES/IE.4
15 / 68
June 10, 2008
Page 16
IP210T
Data Sheet
4.1.8 CPU Timers/Counters
Like a standard 8052, there are three timers/counters inside IP210T. SFR TMOD & TCON are used to configure the operation modes of Timer0 and Timer1. SFR T2MOD & T2CON are used to configure Timer2’s operation modes.
4.1.8.1 Timer0
Timer0 is a 16-bit timer/counter and functions just like one of a standard 8051. TMOD.bit1 TMOD.bit0 MODE Description 0 0 0 8-bit timer/counter(TH0) with 5-bit prescalar(TL0). 0 1 1 16-bit timer/counter. 1 0 2 8-bit auto-reload timer/counter(TL0), reload from TH0 at
overflow.
1 1 3 TL0 is an 8-bit timer/counter. TH0 is an 8-bit timer using
timer1’s TR1 and TF1 bits.
Note: Only one difference of Timer0 to the timer0 of standard 8051 is the INT0 pin no longer exist. Therefore, Gate bit(TMOD.bit3) for timer0 can’t be used to control the operation of timer0 as TR0 is turned on.( Please refer to CPU Interrupt section)
4.1.8.2 Timer1
Timer1 is a 16-bit timer/counter and fun ction s just like one of a standard 8051 TMOD.bit5 TMOD.bit4 MODE Description 0 0 0 8-bit timer/counter(TH1) with 5-bit prescalar(TL1). 0 1 1 16-bit timer/counter. 1 0 2 8-bit auto-reload timer/counter(TL1), reload from TH1 at
overflow.
1 1 3 Timer1 halted,
4.1.8.3 Timer2
It’s a 16-bit Timer and SFR T2MOD & T2CON are used to control its operations. It can count up & count down depending on TMOD.bit0 (DCEN). T2 pin is multiplexed through P1.5 and T2EX is multiplexed through P1.6. The operation modes of Timer2 are shown as follows.
SFR 0xc8 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
T2CON TF2 EXF2 RCLK TCLK EXEN2 TR2 C/~T2 CP/~RL2 When C/~T2 bit (T2CON.bit1) is set to 1, it operates as a counter and is triggered by T2 pin.
When EXEN2 bit (T2CON.bit3) is set to 1, a negative edge of T2EX will set EXF2 (T2CON.bit6) to 1 and cause a capture or a reload on Timer2.
SFR 0xc9 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 T2MOD
Mode Description Auto-Reload
Capture
T2OE DCEN
T2MOD.bit0(CP/~RL2=0) 16-bit timer. TL2&TH2 are reloaded from
RCAP2L&RCAP2H when overflow.
T2MOD.bit0(CP/~RL2=1) 16-bit timer. TL2&TH2 are captured to
RCAP2L&RCAP2H when overflow. T2EX (P1.6) triggers the capture operation.
16 / 68
June 10, 2008
Page 17
Baud rate Generator
ClockOut
DownCount
ClockOut Frequency = 58.9 MHz/ (4*(65536-16bit_timer_value))
T2CON.RCLK T2CON.TCLK
T2OE=1 T2 (P1.5) outputs 50/50 duty-cycle clock.
DCEN=1 Timer2 counts down.
As the Baud rate Generator for Serial Ports by setting RCLK&TCLK bits of SFR T2CON.
RCLK TCLK Receiver
0 0 Timer1 Timer1 0 1 Timer1 Timer2 1 0 Timer2 Timer1 1 1 Timer2 Timer2
Its frequency is determined by the overflow rate of Timer2.
Baud rate Generator
IP210T
Data Sheet
Transmitter Baud rate Generator
17 / 68
June 10, 2008
Page 18
IP210T
Data Sheet
4.1.9 CPU Mirror Mode
4.1.9.1 Purpose
It’s used to redirect CPU’s Code Space into XDATA Space (Internal Memory), so that CPU fetches the instructions from internal Memory instead of the external Flash Memory.
4.1.9.2 Action
When ChipConfigure Register_0.bit5 (Mirror_En) is set to 1, CPU runs in Mirror Mode. Before CPU enters Mirror Mode, the code data to be run should be moved to the internal Memory. In Mirror Mode, if the content of Mirror_Address_Register (0x8006) is 0xE0, CPU sees the Internal Memory address 0x0000 as 0xE000 of its Code Space. For example, if CPU fetches an instruction at address 0xE005 of Code Space, it returns the content of address 0x0005 of Internal Memory.
4.1.10 Power Management
4.1.10.1 Idle Mode
When PCON.IDL=1, IP210T enters Idle mode. In idle mode, IP210T’s CPU is idle but all the periph erals remain active. The internal RAM and SFR registers remain uncha nged too. The idle mode can be terminated by any enabled interrupt.
4.1.10.2 Power Do wn Mode
When PCON.PD=1, IP210T will enter power-down mode. The system clock is stopped in this mode. This mode can be wakened up by external enabled interrupt (EX1) with level trigger configuration (TCON.IT0=0 or TCON.IT1=0). The Program Counter, internal RAM and SFR registers retain their values no changed after resume from Power Down mode.
The GPIO1 ~ GPIO3 will be pulled high or low that depends on the setting of P DCO N.PDC af ter ente ring Power Down mode. For example, when PDCON.PDC=0, GPIO0 ~ GPIO3 will be 0xFF.
4.1.11 Watch Dog Timers
There are two Watch Dog Timers employed to protect user programs from unexpectedly shutting down while IP210T has been through severe environmental problems. When user program somehow shuts down or works in a unexpected manner, the overflow of WDTs can reset the system and restart user program.
0xD8
WDTCON
WDTRST WDTEN HWWDT_CLR HWWDT_DIS
4.1.11.1 Watch Dog Timer 1, WDT
0x8E CKCON
WDT0 WDT1
WDT0(CKCON.bit6) & WDT1(CKCON.bit7):Used to select the counter widths of WDT as shown in CKCON definition. WDTRST(WDTCON.bit0): Write 1 to this bit clears WDT to zero, preventing from WDT overflow. WDTEN(WDTCON.bit1): Set this bit to 1 makes WDT counter increas e f o llowing system clock. WDTWCYC: Set value ranging from 1 to 255 inserts the value of wait cycle when counting WDT. For example, if this value is 0, WDT counts up for every system clock. If the value is 1, WDT counts up for every 2 system clock. If the value is 7, WDT counts up for every 8 system clock. And so forth.
18 / 68
June 10, 2008
Page 19
IP210T
Data Sheet
4.1.11.2 Watch Dog Timer 2, HWWDT
This WDT is enabled by default when IP210T’ s po wered on. HWWDT_CLR: Write 1 to this bit and then write 0 to this bit clears HWWDT, preventing from HWWDT overflow. Program should write this bit twice(write 0 and write 1) in a very short time. HWWDT_DIS: Set this bit to 1 stops HWWDT from counting.
19 / 68
June 10, 2008
Page 20
4.2 DMA
4.2.1 Internal memory to internal memory
4.2.1.1 Purpose
This function is used to move an amount of data from one internal Memory location to another.
Internal Memory
Destination Address
Length
Length
Source Address
IP210T
Data Sheet
4.2.1.2 Action
a. Initialize DMA_Source_Address, DMA_Destination_Address and DMA_Length registers. b. Write 0x1 to DMA_COMMAND register to invoke Internal Memory to Internal Memory DMA
operation.
c. IP210T starts this operation. When it’s done, IP210T sets DMA_COMMAND=0 and
StatusRegister.bit2=1.
d. Firmware keeps on polling the content of DMA_COMMAND register. Wh en it becomes 0x0, this
DMA operatio n is finished.
4.2.2 OTP to internal memory
4.2.2.1 Purpose
This function is used to move an amount of data from OTP into internal Memory.
Internal Memory
Destination Address
Length
OTP
Source Address
Length
4.2.2.2 Action
a. Initialize DMA_Source_Address, DMA_Destination_Address and DMA_Length registers. b. Set CPU SFR EA=1 and Ex0=1 to enable external request interrupt so that an interrupt will occur to
bring CPU out of IDLE mode when DMA operation’s done. c. Set Interrupt_EnableRegister.bit2=1 to allow an interrupt caused by DMA operation. d. Write 0x4 to DMA_COMMAND register to tell IP210T an OTP to internal Memory DMA operation will
be started. e. Set PDCON.bit1 (JWP) =1 to not execute Interrupt Vector after f. Set SFR PCON.bit0 (IDL) to 1 to switch CPU to IDLE mode. g. After switching to IDLE mode, IP210T starts this operation.
20 / 68
June 10, 2008
Page 21
h. When this operation is done, IP210T sets StatusRegister.bit2=1 to generate an external request
interrupt to bring CPU back from IDLE mode. IP210T sets DMA_COMMAND to 0x0.
IP210T
Data Sheet
21 / 68
June 10, 2008
Page 22
IP210T
Data Sheet
4.3 Timer/Counter
4.3.1 Purpose
To maintain a real-time counter on IP210T.
Related Registers
Timer Counter Register latch enable Timer Counter Register_0 (LSB) Timer Counter Register_1 Timer Counter Register_2 Timer Counter Register_3 (MSB)
4.3.2 Initialize real-time counter
a. Set CPU’s Timer/Counter2 to 16bit auto-reload mode. The n make Timer/Counter2 run to generate
overflows with fixed time interval. b. Write an initial value to Timer Counter Register, such as 0x0000. c. Timer Counter Register increments every time Timer/Counter2 wraps around from 0xFFFF to
0x0000.
4.3.3 Read real-time counter
a. Write 0x1 to Timer Counter latch enable register to latch real-time counter to Timer Counter
Register. b. Read Timer Counter Registers.
4.3.4 Timer/Counter overflow
When the real-time Ti mer/Counter wraps around from 0xffffffff to 0x00000000, IP210T sets StatusRegister.bit3=1 to notify Firmware (by Polling to StatusRegister or EX0 Interrupt).
22 / 68
June 10, 2008
Page 23
4.4 MAC
4.4.1 TX MAC
4.4.1.1 TX descriptor registers
IP210T provides 4 TX descriptors as follows.
IP210T
Data Sheet
0x8110
TX descriptor 1
(defined in registers)
0x8114
TX descriptor 2
(defined in registers)
0x8118
TX descriptor 3
(defined in registers)
0x811C
TX descriptor 4
(defined in registers)
TX_Buffer_Ptr 1 [13:0]
(For exam ple: 0x2600)
RX_Start_Address (default 0x4000)
TX_Buffer_Ptr 2 [13:0]
(For exam ple: 0x3758)
0x8110
0x8111 0x8112 0x8113
0x0000
0x7FFF
Co n tro l_flag (b[7 :3 ])
and TX_Len_H (b[2:0])
TX_Len_L
TX_ B u ffer_P tr_ H
TX _B u ffer_P tr_ L
Embedded 32K
Bytes SSRAM
0x0000 ~~0x7FFF
Data Memory
Tx- B u ffe r
Data Memory
Receive Buffer
Tx- B u ffe r
Receive Buffer
TX-BufferAddr Pkt-1 Byte-00x2600 Pkt-1 Byte-10x2601 Pkt-1 Byte-20x2602 Pkt-1 Byte-30x2603 Pkt-1 Byte-40x2604
Pkt-1 Byte-760x264C Pkt-1 Byte-770x264D Pkt-1 Byte-780x264E
Pkt-1 Byte End0x264F
TX-BufferAddr Pkt-2 Byte-00x3758 Pkt-2 Byte-10x3759 Pkt-2 Byte-20x375A Pkt-2 Byte-30x375B Pkt-2 Byte-40x375C
Pkt-2 Byte-760x3797 Pkt-2 Byte-770x3798 Pkt-2 Byte-780x3799
Pkt- 2 B y te End0x379A
23 / 68
June 10, 2008
Page 24
IP210T
Data Sheet
4.4.1.2 IP Checksum and CRC32 calculation for a proprietary packet
In some applications, the proprietary packet with special tag may be necessary. Because of the variable length of the tag field, IP210T can’t calculate the IP checksum or CRC excluding the tag field automatically. To solve this problem, IP210T supports a DMA function to calculate IP Checksum and CRC32
4.4.2 RX buffer
RX Buffer is a block of internal 32K SSRAM for MAC to store the received frames. Its area is from the value of RX buffer start address to the end address of internal RAM (16Kbytes). It is a ring buffer. Wh en the frame crosses the boundary of internal RAM, the MAC will automatically wrap around to the start
address of RX Buffer.
4.4.2.1 RX Filter
IP210T supports two RX filter registers, RX_Filter_Registers_0 and RX_Filter_Registers_1. IP210T receives a packet if it meets any one of the conditions turned on in RX_Filter_Registers_0. IP210T receives a packet if it meets all of the conditions turned on in RX_Filter_Registers_1.
24 / 68
June 10, 2008
Page 25
Data Sheet
4.5 EEPROM I/F
4.5.1 Configuration
4.5.1.1 Access through P3[7:6]
IP210T supports access to EEPROM through SCL and SDA pins. If Chip Configure Register_1[4:3] =2’b10(P3_I2C_En=1, P4_I2C_En=0), EEPROM function is enabled and P3.7=SCL & P3.6=SDA.
4.5.1.2 Supported EEPROM types EEPROM types 24C01 24C02 24C04 24C08 24C16
Read Page Max Byte Count Write Page Max Byte Count
4.5.2 Related Registers
EEPROM_Data_Register EEPROM_Addresss_Register EEPROM_ID_Register EEPROM_Command_Register EEPROM_Control_Register
4.5.3 Address of EEPROM EEPROM types 24C01 24C02 24C04 24C08 24C16
EEPROM_Addresss_Register EEPROM_ID_Register.bit0 EEPROM_ID_Register.bit1 EEPROM_ID_Register.bit2 EEPROM_ID_Register.bit[7:3]
32 32 32 32 32 8 8 16 16 16
Address[7:0] Address[7:0] Address[7:0] Address[7:0] Address[7:0] 0 0 Address[8] Address[8] Address[8] 0 0 0 Address[9] Address[9] 0 0 0 0 Address[10] 0 0 0 0 0
IP210T
25 / 68
June 10, 2008
Page 26
IP210T
Data Sheet
4.6 UART
There are two kinds of UARTs in IP210T. One is the standard 8051-built-in UART without FIFO (Serial Port0). Its control registers is in SFR. The other one is 16C650 compatible UART designed with FIFO and can support high-speed data transfer up to 921.6kbps (dete rmined by Divisor Register).
4.6.1 The operation of the UART in 8051
4.6.1.1 Serial Port0
P3.0(RXD) and P3.1(TXD) are used to perform data transfer through Serial Port0. SCON(0x98 ), PCON(0x87).bit7(SMOD) and SBUF(0x99) are SFRs that control its communication operations just like what it’s like in a standard 8051. If needed, IE(0xA8).bit4(ES) is used to activate interrupt.
4.6.1.2 Modes
This Baud rate clock source can be from Timer1 or Timer2 of 805 1 . Like standard 8051, Serial Port0 can support four operation modes as the table shown below. .
SM0 SM1 Mode Function Baud rate
0 0 0 Synchronous
Mode 0 1 1 8bit-UART Variable 1 0 2 9bit-UART Sys_CLK/64 or
1 1 3 9bit-UART Variable
4.6.2 The operation of High Speed UART with FIFO
This High Speed UART is compatible with 16C6 50 UART, which supports full set of MODEM control signals. By setting the Divisor Register, it can support data transfer rate up to 921.6kbps baud rate.
4.6.2.1 Enable High Speed UART
After Chip_Configure_1_Register.bit1(HSP_UART_En) is set to 1, GPIO 2(P2) is switched to act as a high speed UART operations. Its pin ma pping is as follows:
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7
HSRXD HSTXD RTS DTR CTS DSR DCD RI
Sys_CLK/12
Sys_CLK/32
26 / 68
June 10, 2008
Page 27
IP210T
Data Sheet
4.6.2.2 Related Registers’ Briefing (Detailed definition can be found in IO Register Map)
A. Interrupt Enable Register (IER)
When one of bit0-bit4 of this register is set to 1, any related event will set STATUS.bit4
(HighSpeed_UART_Status_change) to 1, enabling the corresponding interrupt source.
B. Interrupt Identification Register (IIR)
When an UART interrupt is issued, this register should be checked to know which event has
occurred.
C. FIFO Control Register (FCR)
Bit0 is used to reset UART Receive module and bit1 is used to reset UAR T T ransmit module. Bit s[7:2] is used to determine the threshold number of bytes in FIFO required to enable the Received Dat a Available interrupt.
D. Line Control Register (LCR)
The line control register allows the specification of the format of the asynchronous data communication used, including the number of bits in a character, stop bit and parity setting. Bit7 is used to control the write action to Divisor register.
E. Modem Control Register (MCR)
The modem control register allows transferring control signals to a modem connected to the UART.
F. Line Status Register (LSR)
This register is used to tell the some status of UART, especially some error or notable event s.
G. Modem Status Register (MSR)
The register displays the current state of the modem control lines
H. UART_RX_FIFO_STATUS
Read this register to get the current number of data received in the RX FIFO.
I. UART_TX_FIFO_STATUS
Read this register to get the max number of data that is allowed to push into TX FIFO before it turns full.
J. UART_Receiver Buffer
IP210T owns 256 bytes of UART Receive FIFO buffer. Read UART_Receiver_Buffer Regi ster to get a byte of received data from Receive FIFO. After a read access to this register, the number of data in FIFO is decreased by one.
K. UART_Transmit Buffer
IP210T owns 256 bytes of UART Transmit FIFO buffer. Write UART_Transmit_Buffer Register to put a byte of data to T ran smit FIFO. After a write access to this register, the number of data in FIFO is increased by one.
L. Divisor
The value of Divisor allows the selection of UART baudrate. Baudrate=(58.9M)/(16*divisor) bps.
27 / 68
June 10, 2008
Page 28
4.7 IP210T OTP ROM
4.7.1 Burning OTP Memory
The following procedures are required to program the OTP memory.
(1) Set Test[1:0] pins to “00”.
(2) Input 6.5V power source to VPP pin.
IP210T
Data Sheet
28 / 68
June 10, 2008
Page 29
IP210T
Data Sheet
4.8 PHY Transceiver Interface
4.8.1 Registers definition
Register Description
0 Control Register 1 Status Register 2 PHY Identifier 1 Register 3 PHY Identifier 2 Register 4 Auto-Negotiation Advertisement Register 5 Auto-Negotiation Link Partner Ability Register 6 Auto-Negotiation Expansion Registers
4.8.2
4.8.3 Register0 : Control Register
Reg.bit Name Description Mode Default
0.[15] Reset 1=PHY reset. This bit is self-clearing. RW/SC 0
0.[14] Loopback 1=Enable loopback. This will loopback TXD to RXD internally
0=Normal operation.
0.[13] Spd_Sel 1=100Mbps 0=10Mbps When Nway is enabled, this bit reflects the result of auto-negotiation. (Read only) When Nway is disabled, this bit can be set by SMI. (Read/Write)
0.[12] Auto Negotiation
Enable
0.[11] Power Down 1=Power down. All functions will be disabled except SMI .
0.[10] Isolate 1 = Electrically isolate the PHY from RMII/SMII
0.[9] Restart Auto
Negotiation
0.[8] Duplex Mode 1=Full duplex operation.
0.[7:0] Reserved 0
1 = Enable auto-negotiation process. 0 = disable auto-negotiation process. This bit can be set through SMI.
0=Normal operation.
PHY is still able to respond to MDC/MDIO. 0 = Normal operation
1=Restart Auto-Negotiation process. 0=Normal operation.
0=Half duplex operation. When Nway is enabled, this bit reflects the result of auto-negotiation. (Read only) When Nway is disabled, this bit can be set through SMI (Read/Write).
When 100FX is enabled, this bit can be set through SMI.
(Read/Write).
RW 0
RW 1
RW 1
RW 0
RW 0
RW/SC RW 0
or 0 for 100FX
0
29 / 68
June 10, 2008
Page 30
Data Sheet
4.8.4 Register1 : S tatus Register
Reg.bit Name Description Mode Default
1.[15] 100Base_T4 0 = no 100Base-T4 capability. RO 0
1.[14] 100Base_TX_FD 1=100Base-TX full duplex capable.
0=not 100Base-TX full duplex capable.
1.[13] 100Base_TX_HD 1=100Base-TX half duplex capable.
0=not 100Base-TX half duplex capable.
1.[12] 10Base_T_FD 1=10Base-TX full duplex capable.
0=not 10Base-TX full duplex capable.
1.[11] 10Base_T_HD 1=10Base-TX half duplex capable.
0=not 10Base-TX half duplex capable.
1.[10:7] Reserved RO 0
1.[6] MF Preamble
Suppression
1.[5] Auto-negotiate
Complete
1.[4] Remote Fault 1=Remote fault condition detected.
1.[3] Auto-Negotiation
Ability
1.[2] Link Status 1=Link has never failed since previous read.
1.[1] Jabber Detect 1=Jabber detected.
1.[0] Extended
Capability
The PHY will accept management frames with preamble suppressed. PHY accepts management frame without preamble. Minimum of 32 preamble bits are required for the first SMI read/write transaction after reset. One idle bit is required between any two management transactions (as defined in IEEE802.3u spec).
1=Auto-negotiation process completed. Reg.4,5 are valid if this bit is set. 0=Auto-negotiation process not completed.
0=No remote fault. In 100FX mode, this bit means the in-band signal Far-End-Fault is detected. Refer to FX MODE section.
1= auto-negotiation capable. (permanently =1) 0=Without auto-negotiation capability.
0=Link has failed since previous read. If link fails, this bit will be set to 0 until bit is read.
0=No Jabber detected. The jabber function is disabled in 100Base-X mode. Jabber is supported only in 10Base-T mode. Jabber occurs when a predefined excessive long packet is detected for 10Base-T. When the duration of TXEN exceeds the jabber timer (21ms), the transmit and loopback functions will be disabled and the COL LED starts blinking. After TXEN goes low for more than 500 ms, the transmitter will be re-enabled and the COL LED stops blinking.
1=Extended register capable. 0=Not extended register capable. (permanently =1)
RO 1
RO 1
RO 1
RO 1
RO 1
RO 0
RO/LH 0
RO 1
RO/LL 0
RO/LH 0
RO 1
IP210T
30 / 68
June 10, 2008
Page 31
IP210T
Data Sheet
4.8.5 Register2 : PHY Identifier 1 Register Reg.bit Name Description Mode Default
2.[15:0] OUI Composed of the 3rd to 18th bits of the Organizationally
Unique Identifier (OUI), respectively.
4.8.6 Register3 : PHY Identifier 2 Register Reg.bit Name Description Mode Default
3.[15:10] OUI Assigned to the 19th through 24th bits of the OUI. RO 000011b
3.[9:4] Model Number Manufacturer's model number 18 h. RO 010000
3.[3:0] Revision Number Manufacturer's revision number 00. RO 0000b
4.8.7 Register4 : Auto-Negotiation Advertisement Register Reg.bit Name Description Mode Default
4.[15] Next Page 0=Next Page disabled. (Permanently =0) RO 0
4.[14] Reserved RO 0
4.[13] Remote Fault 1=Advertises that PHY has detected a remote fault.
0=No remote fault detected.
4.[12] Reserved RO 0 4[11] Asymmetric
Pause
4.[10] Pause 1=Advertises that PHY has flow control capability.
4.[9] 100Base-T4 Technology not supported. (Permanently =0) RO 0
4.[8] 100Base-TX-FD 1=100Base-TX full duplex capable.
4.[7] 100Base-TX 1=100Base-TX half duplex capable.
4.[6] 10Base-T-FD 1=10Base-TX full duplex capable.
4.[5] 10Base-T 1=10Base-TX half duplex capable.
4.[4:0] Selector Field [00001]=IEEE802.3 RO 00001
1=Advertises that PHY support asymmetric p ause operation. 0=Not support asymmetric pause operation.
0=Without flow control capability. In 100FX, this bit is set by FX_PAUSE upon reset.
0=Not 100Base-TX full duplex capable.
0=Not 100Base-TX half duplex capable.
0=Not 10Base-TX full duplex capable.
0=Not 10Base-TX half duplex capable.
RO 0243h
RW 0
RW 0
TP_PA USE Or FX_PA USE
RW 1
RW 1
RW 1
RW 1
b
1
31 / 68
June 10, 2008
Page 32
IP210T
Data Sheet
4.8.8 Register5 : Auto-Negotiation Link Partner Ability Register Reg.bit Name Description Mode Default
5.[15] Next Page 1=Link partner desires Next Page transfer.
0=Link partner does not desire Next Page transfer.
5.[14] Acknowledge 1=Link Partner acknowledges reception of FLP word s.
0=Not acknowledged by Link Partner.
5.[13] Remote Fault 1=Remote Fault indicated by Link Partner.
0=No remote fault indicated by Link Partner.
5.[12] Reserved RO 0
5.[11] Asymmetric
Pause
5.[10] Pause 1=Flo w control sup ported by Link Partner.
5.[9] 100Base-T4 1=100Base-T4 supported by Link Partner.
5.[8] 100Base-TX-FD 1=100Base-TX full duplex supported by Link Partner.
5.[7] 100Base-TX 1=100Base-TX half duplex supported by Link Partner.
5.[6] 10Base-T-FD 1=10Base-TX full duplex supported by Link Partner.
5.[5] 10Base-T 1=10Base-TX half duplex supported by Link Partner.
5.[4:0] Selector Field [00001]=IEEE802.3 RO 00001
1=Link partner support asymmetric p ause operation. 0=Link partner not support symmetric operation. When the auto-negotiation is disabled, this bit is set to 1. After parallel detection, this bit is set to 1.
0=No flow control supported by Link Partner. When the auto-negotiation is disabled, this bit is set to 1. After parallel detection, this bit is set to 1. When in 100FX, this bit is set by FX_PAUSE or SMI..
0=100Base-T4 not supported by Link Partner.
0=100Base-TX full duplex not supported by Link Partner . For 100FX mode, this bit is set when Reg.0.[8]=1. When the auto-negotiation is disabled, this bit is set when Reg.0.[13]=1 and Reg.0.[8]=1.
0=100Base-TX half duplex not supported by Link Partner. For 100FX mode, this bit is set when Reg.0.[8]=0. When the auto-negotiation is disabled, this bit is set when Reg.0.[13]=1 and Reg.0.[8]=0. After parallel detection, this bit is set when the result of auto-negotiation is 100BASE-TX.
0=10Base-TX full duplex not supported by Link Partner. When the auto-negotiation is disabled, this bit is set when Reg.0.[13]=0 and Reg.0.[8]=1.
0=10Base-TX half duplex not supported by Link Partner. When the auto-negotiation disabled, this bit is set when Reg.0.[13]=0,and Reg.0.[8]=0. After parallel detection, this bit is set when the result of auto-negotiation is 10BASE-TX.
RO 0
RO 0
RO 0
RO 0
RO 0
RO 0
RO 0
RO 0
RO 0
RO 0
32 / 68
June 10, 2008
Page 33
Data Sheet
4.8.9 Register6 : Auto-Negotiation Expansion Register Reg.bit Name Description Mode Default
6.[15:5] Reserved RO 0
6.[4] Parallel Detection
Fault
6.[3] Link Partner Next
Page Able
6.[2] Local Next Page
Able
6.[1] Page Received 1= A New Page has been received.
6.[0] Link Partner
Auto-Negotiation Able
1=A fault has been d etected via the Parallel Detection
function.
0=A fault has not been d etected via the Parallel
Detection function.
1= Link Partner is Next Page able. 0= Link Partner is not Next Page able. (permanently=0)
1= IP210T is Next Page able. 0= IP210T is not Next Page able.
0= A New Page has not been received. If Nway is enabled, this bit means:
1= Link Partner is Auto-Negotiation able. 0= Link Partner is not Auto-Negotiation able.
RO/LH 0
RO 0
RO 0
RO/LH 0
0 (Nway) or
1 (100FX )
IP210T
0
33 / 68
June 10, 2008
Page 34
5 Register Description
5.1 Register Address Mapping
Address Register
0x8000 Chip Configure Register_0 0x8001 Chip Configure Register_1 0x8002 CPU Control Register 0x8003 Status Register 0x8004 Interrupt Enable Register 0x8005 SW Reset Register 0x8006 Mirror Address Register 0x800f 0x8010 Timer Counter Register_0 (LSB) 0x8011 0x8012 0x8013 Timer Counter Register_3 (MSB) 0x8014 PAD Control Register 0x8015 PHY Address Register
0x8100 0x8101 0x8102 0x8103 0x8104 0x8110 TX Descriptor 0_0 - TX_buffer_pointer_L 0x811 1 TX Descriptor 0_1 - TX_buffer_pointer_H 0x8112 TX Descriptor 0_2 - Tx_Pkt_Length_L 0x8113 TX Descriptor 0_3 - Contro l_flag and Tx_Pkt_Length_H 0x8114 TX Descriptor 1_0 - TX_buffer_pointer_L 0x8115 TX Descriptor 1_1 - TX_buffer_pointer_H 0x8116 TX Descriptor 1_2 - Tx_Pkt_Length_L 0x8117 TX Descriptor 1_3 - Contro l_flag and Tx_Pkt_Length_H 0x8118 TX Descriptor 2_0 - TX_buffer_pointer_L 0x8119 TX Descriptor 2_1 - TX_buffer_pointer_H 0x811a TX Descriptor 2_2 - Tx_Pkt_Length_L 0x811b TX Descriptor 2_3 - Contro l_flag and Tx_Pkt_Length_H 0x811c TX Descriptor 3_0 - TX_buffer_pointer_L 0x811d TX Descriptor 3_1 - TX_buffer_pointer_H 0x811e TX Descriptor 3_2 - Tx_Pkt_Length_L 0x811f TX Descriptor 3_3 - Control_flag and Tx_Pkt_Length_H 0x8130 RX_Buffer_Start_Address 0x8131 RX_Buffer_Read_Pointer_L
Timer Counter Register latch enable
Timer Counter Register_1 Timer Counter Register_2
MAC_Control_Register_0 MAC_Control_Register_1 MAC_Control_Register_2 Pause-On-Threshold_Register Pause-Off-Threshold_Register
IP210T
Data Sheet
34 / 68
June 10, 2008
Page 35
IP210T
Data Sheet
Address Register
0x8132 RX_Buffer_Read_Pointer_H 0x8133 RX_Buffer_Write_Pointer_L 0x8134 RX_Buffer_Write_Pointer_H 0x8135 RX_Filter_Registers_0 0x8136 RX_Filter_Registers_1 0x8137 Ether_Type_Start_Offset_Register 0x8138 Special_Source_Port_Tag_Type_Register_L 0x8139 Special_Source_Port_Tag_Type_Register_H
0x8200 0x8201 0x8202 0x8203 0x8204 0x8205 0x8206 0x8207 CRC_Result_Register_0 0x8208 CRC_Result_Register_1 0x8209 CRC_Result_Register_2 0x820a CRC_Result_Register_3 0x820b Preset_CRC_Value_Register
0x8310 EEPROM_Data_Register 0x8311 EEPROM_Addresss_Register 0x8312 EEPROM_ID_Register 0x8313 EEPROM_Command_Register 0x8314 EEPROM_Control_Register
0x8320 MD_Control_reg 0x8321 MD_PhyAddress 0x8322 MD_RegAddress 0x8323 MD_Data_Low 0x8324 MD_Data_High
0x8330 My MAC Address Byte 0 (LSB) 0x8331 My MAC Address Byte 1 0x8332 My MAC Address Byte 2 0x8333 My MAC Address Byte 3 0x8334 My MAC Address Byte 4 0x8335 My MAC Address Byte 5 (MSB) 0x8336 My IPV4 Byte 0 (LSB)
DMA_Command_Register DMA_Source_Address_Register_L DMA_Source_Address_Register_H DMA_Destination_Address_Register_L DMA_Destination _Address_Register_H DMA_Length_Register_L DMA_Length_Register_H
35 / 68
June 10, 2008
Page 36
IP210T
Data Sheet
Address Register
0x8337 My IPV4 Byte 1 0x8338 My IPV4 Byte 2 0x8339 My IPV4 Byte 3 (MSB)
0x8350 RMT_MAC Byte 0 (LSB) 0x8351 RMT_MAC Byte 1 0x8352 RMT_MAC Byte 2 0x8353 RMT_MAC Byte 3 0x8354 RMT_MAC Byte 4 0x8355 RMT_MAC Byte 5 (MSB) 0x8356 RMT IPV4 Byte 0 (LSB) 0x8357 RMT IPV4 Byte 1 0x8358 RMT IPV4 Byte 2 0x8359 RMT IPV4 Byte 3 (MSB)
0x8370 ADC Control Register 0x8371 ADC Result Register L 0x8372 ADC Result Register H
0x8400 Chip ID LO 0x8401 Chip ID HI 0x8402 Chip Revision
0x8800 UART Receive Buffer (RO) 0x8801 UART_Transmit Buffer (WO) 0x8802 UART_Interrupt Enable 0x8803 UART_Interrupt Identification (RO) 0x8804 UART_FIFO Control 0x8805 UART_Line Control Register 0x8806 UART_Modem Control 0x8807 UART_Line Status(RO) 0x8808 UART_Modem Status(RO) 0x8809 UART_TX FIFO Status (RO) 0x880a UART_RX FIFO Status (RO)
0x880b
0x880c
UART_Clock Divisor Registers_ L (when the 7 Register is set to ‘1’)
UART_Clock Divisor Registers_ H (when the 7
Register is set to ‘1’)
th
(DLAB) bit of the Line Control
th
(DLAB) bit of the Line Control
36 / 68
June 10, 2008
Page 37
IP210T
Data Sheet
5.2 Register Descriptions
Chip Configure Register_0 (0x8000)
Bit Name Access Description Default
0 Reserved R 0 1 Reserved R 0 3-2 Reserved RW Reserved. Do not change this
configuration.
4 Reserved RW Reserved. Do not change this
configuration.
5 Mirror_En RW Redirect Code Bus to first 8K or 16K
SRAM and the start address is defined in MirrorAddress register. 1: Enable redirect 0: Code Bus to OTP or Flash (defined in bit 0)
6 Link_led_at_clk25_En RW 1: Enable Link LED output
0: CLK25 output
7 Reserved RW 0
01
0
0
0
37 / 68
June 10, 2008
Page 38
IP210T
Data Sheet
Chip Configure Register_1 (0x8001)
Bit Name Access Description Default
0 Reserved RW 0 1 HSP_UAR T_En RW 1: High Speed UART enable
0: GPIO2 2 Reserved RW 0 3 Reserved RW 0 4 P3_I2C_En RW 1: P3 I2C interface enable (P3.7 = SCL,
P3.6 =SDA)
0: GPIO3 bit6 & bit7 5 Reserved RW 0 6 Reserved RO X 7 Reserved RO X
CPU Control Register (0x8002)
Bit Name Access Description Default
0 Write_En RW This bit is used to change this register
bit[7:1] from RO to RW
1 – Enable Write Access to bit[7:1]
0 – RO to bit[7:1] 4-1 OTP_WaitSta t e RW Default is 0x7 011 1 7-5 Reserved
Status register (0x8003)
Bit Name Access Description Default
0 RX_Packet_Done RC H/W sets 1 to inform CPU that one or
more packets are received in RX buffer. 1 TX_Packet_Done RC H/W sets 1 to inform CPU that TX packet
is done. 2 DMA_Access_Done RC H/W sets 1 to indicate that DMA is done. 0 3 Timer_Counter_overflow RC H/W sets 1 to indicate that timer counter
overflow. 4 HighSpeed_UART_Status_
change
5 ADC_Done RC H/W sets 1 to inform CPU that ADC is
6 PHY_Status_change RC H/W sets 1 to indicate that PHY Status
7 Reserved - -
RC H/W sets 1 to indicate that High Speed
UART Status Changed
done
Changed
0
0
0
0
0
0
0
0
0
38 / 68
June 10, 2008
Page 39
IP210T
Data Sheet
Interrupt Enable register (0x8004)
Bit Name Access Description Default
0 RX_Packet_Done_Enable RW 1: enable RX_Packet_Done interrupt
0: disable RX_Packet_Done interrupt 1 TX_Packet_Done_Enable RW 1: enable TX_Packet_Done interrupt
0: disable TX_Packet_Done interrupt 2 DMA_Access_Don_Enable RW 1: enable DMA_Access_Done interrupt
0: disable DMA_Access_Done interrupt 3 Timer_Counter_overflow_E
nable
4 HighSpeed_UART_Status_
Enable
5 ADC_Done_Enable 1: enable ADC_Done interrupt
6 PHY_Status_Enable 1: enable PHY_Status_change interrupt
7
Reserved
RW 1: enable Timer_Counter_overflow
interrupt
0: disable Ti mer_Counter_overflow
interrupt
RW 1: enable HighSpeed_UR_Status_change
interrupt
0: disable HighSpeed_UR_Status_cha nge
interrupt
0: disable ADC_Done interrupt
0: disable PHY_Status_change interrupt
-
-
0
0
0
0
0
0
0
SW Reset Register (0x8005)
Bit Name Access Description Default
0
Reset
RW This bit is used to reset all the peripherals
and registers except ChipConfig, CPU
Control register and bit0/1 of MAC Control
register 0 and CPU
1. Write 0 to this bit is ignored by IP210T.
0
2. Write 1 to this bit will cause IP210T doing reset to all peripherals. This bit will be auto-cleared when reset is done.
7-1 Reserved
Mirror Address Register (0x8006)
Bit Name Access Description Default
7-0
Mirror Start Address
RW This register defines the starting address
bit[15:8] of SRAM code when
00h
8K_Mirror_En=1 or 16K_Mirror_En=1
Timer Counter Register latch enable (0x800f)
Bit Name Access Description Default
0 Timer Count latch enable WO 1: Latch Current Timer Counter Register.
0: No action
0
7-1 Reserved
39 / 68
June 10, 2008
Page 40
IP210T
Data Sheet
Timer Counter Register 4 bytes (0x8013[MSB] ~ 0x8010[LSB])
Bit Name Access Description Default
31-0 Timer Count RW Timer Counter Register is a 32-bit counter
and is incremented upon the overflow of Timer2 (TF2). User can set Timer2 to determine the overflow intervals. Its value wraps around to 0x00 00 00 00 at Timer2's overflow while its previous value is 0xff ff ff ff.
PAD Control Register (0x8014)
Bit Name Access Description Default
1-0 IO_Driving RW 00: 2 mA
01: 4 mA 10: 8 mA 11 12 mA
2 IO_Speed RW 0: Normal
1: Fast
7-3 Reserved
PHY Address Register (0x8015)
Bit Name Access Description Default
4-0 PHY Address RW 1f 11111 7-5 Reserved 0
00 00 00 00h
01
0
40 / 68
June 10, 2008
Page 41
IP210T
Data Sheet
MAC_Control_register_0 (0x8100)
Bit Name Access Description Default
0 Speed100 RW Speed setting bit (This bit is for RMII only):
1-100Mbps 0-10MbpsDriver use it to force the speed of MAC.
1 Duplex_F RW Duplex setting bit:
1- Full duplex 0- Half duplex, Driver use it to force the duplex mode of MAC.
2 TX_Enable RW Enable Transmission function of MAC:
0- disable 1- enable
3 RX_Enable RW Enable Receive function of MAC:
0- disable 1- enable
4 FlowControl_Enable RW 1: Enable Flow Control function of MAC.
In full duplex mode, MAC will act as follows:
a.MAC will issue Pause frame with
b. MAC will send Pause frame with
c. MAC will stop transmitting if MAC
In half duplex mode, MAC will do nothing. 0: Disable FlowControl
5 Boff_16_of f RW This bit will disable maximum 16-retry limit
and do infinite retry when the bit is set to
1.
6 LoopBack RW Enable MII-Internal-LoopBack when the
bit is set to 1.
7 MaxFrameLen RW This bit sets the maximum receive packet
length. 1- 1536 bytes 0- 1522 bytes
0xFFFF when used RX buffer is over Pause-On-Threshold and continue to issue Pause frame with 0xFFFF only if remote node keeps on transmitting.
0x0000 when used RX buffer is under Pause-Off-Threshold.
receive a Pause frame with time > 0 and resume TX if MAC received a Pause frame with 0x0000 frame or timeout which is set by Pause frame with time > 0.
1
1
0
0
0
0
0
1
41 / 68
June 10, 2008
Page 42
IP210T
Data Sheet
MAC_Control_register_1 (0x8101)
Bit Name Access Description Default
0 FCS-append-disable RW 0: TXMAC auto-calculates and
auto-appends 4 bytes CRC at the end of packet.
1: TXMAC do NOT append 4 bytes CRC
at the end of packet.
1 FCS-receive-enable RW 0: RXMAC do NOT receive 4 bytes CRC
into RX-Buffer.
1: RXMAC receive 4 bytes CRC into RX-
Buffer.
2 SourcePortTagInserted_En RW 0: RXMAC will not check if there is a
SourcePortTag inserted right after SA. RXMAC treats the word right after SA as an EtherType.
1: RXMAC will check if there is a
SourcePortTag, which has type value same as the SourcePortTagType register, inse rted right after SA. If yes, RXMAC will skip 4 bytes from SA and treat the subsequent word as EtherType. If not, EtherType is considered right after SA. If SourcePortTagInserted_En="1" and first type != 0x9126(or SourcePortTag type Register), then drop the frame.
4-3 IGMP_Mode_En RW 00 or 11: RXMAC will treat IGMP frame
as normal frame and filter the frame according to RX Filter rules.
01: RXMAC will receive in IGMP frame (IP
frame with IP protocol=2) with DA=Multicast address of range 01-00-5E-00-00-00~~01-00-5E-7F-FF­FF and set the frame type to 1011b (IGMP frame).
10: RXMAC will receive in IGMP frame (IP
frame with IP protocol=2) without DA constraint – Multicast or Unicast and set the frame type in RX buffer to 1011b (IGMP frame)
**IGMP frame is an IP frame with IP
protocol=2
5 Rx_8021X_En RW 0: RXMAC will not receive frame with
Multicast DA = 01-80-C2-00-00-03
1: RXMAC will receive 802.1X frame with
DA=01-80-C2-00-00-03 and set the frame type in RX buffer to 1100b (802.1X frame)
6 Reserved 7 Reset_TXMAC RW When this bit is written to 1, the system
will reset TXMAC and clear following registers.
0
0
0
00
0
0
42 / 68
June 10, 2008
Page 43
IP210T
Data Sheet
1. Tx_Enable (0x8100[2])
2. Boff_16_off (0x8100[5])
3. FCS-append-disable (0x8101[0])
4. Tx Descriptors (0x8110~0x811f)
5. DMA_CMD_mode(0x8200[2:0])
P.S. when 0x 8200[2:0]=101 or 110
6. CRC_Result_Register (0x8207~0x820a)
This bit will be self-cleared after TXMAC reset is done. Writing a “0” to this bit is ignored by H/W.
MAC_Control_register_2 (0x8102)
Bit Name Access Description Default
0 IP_Checksum_Insp RW IP Checksum inspection function
1: enable 0: disable
1 TCP_Checksum_Insp RW TCP Checksum inspection function
1: IP210T drops the incoming packet if its
TCP Checksum has errors
0: disable
2 UDP_Checksum_Insp RW UDP Checksum inspection function
1: IP210T drops the incoming packet if its
UDP Checksum has errors
0: disable
3 ICMP_Checksum_Insp RW ICMP Checksum inspection function
1: IP210T drops the incoming packet if its
ICMP Checksum has errors
0: disable
7-4 Reserved -
Pause -On-Threshold_register (0x8103)
Bit Name Access Description Default
7-0 Pause -On-Threshold RW (Unit is 256 bytes)
Pause-On-Threshold[7:0] = 0x30= 8'd48
---> 48*256bytes = 12K bytes
Pause -Off-Threshold_register (0x8104)
Bit Name Access Description Default
7-0 Pause -Off-Threshold RW (Unit is 256 bytes )
Pause-Off-Threshold[7:0] = 0x18= 8'd24
---> 24*256bytes = 6K bytes
1
1
1
1
30h
18h
43 / 68
June 10, 2008
Page 44
IP210T
Data Sheet
TX Descriptor 0_0 - TX_buffer_pointer_L (0x8110)
Bit Name Access Description Default
7-0 TX_Buffer_Ptr_L RW This field defines TX buffer pointer bit [7:0] 00h
TX Descriptor 0_1 - TX_buffer_pointer_H (0x8111)
Bit Name Access Description Default
7-0 TX_Buffer_Ptr_H RW This field defines TX buffer pointer bit
[13:8]
TX Descriptor 0_2 - Tx_Pkt_Length_L (0x8112)
Bit Name Access Description Default
7-0 TX_Len_L RW This field defines TX frame length bit [7:0] 00h
TX Descriptor 0_3 - Control_flag and Tx_Pkt_Length_H (0x8113)
Bit Name Access Description Default
2-0 TX_Len_H RW This field defines TX frame length bit
[10:8]
5-3 Checksum_Packet_Type RW This field enable packet by packet MAC
checksum insertion action: 000- No IP checksum insertion
requirement 001- IP/TCP IPv4 checksum insertion 010- IP/UDP IPv4 checksum insertion 011- IP/ICMP IPv4 checksum insertion
6 TX_Error RO This bit will be auto-cleared when bit 7,
Start_TX, is written to “1”. This bit is valid only when bit 7, Start_TX, is written to “0”. 0: TX no error 1: TX error such as TxUnd errun, MaxCollision, LateCollision, etc.
7 Start_TX RW The TX MAC will start to send this packet
when this bit is set to “1”. It’s auto-cleared when TX is done. Writing this bit to “0” will be ignored by H/W.
TX Descriptor 1_0 ~ TX Descriptor 1_3 (0x8114 ~ 0x8117) TX Descriptor 2_0 ~ TX Descriptor 2_3 (0x8118 ~ 0x811b) TX Descriptor 3_0 ~ TX Descriptor 3_3 (0x811c ~ 0x811f)
00h
000
000
0
0
44 / 68
June 10, 2008
Page 45
IP210T
Data Sheet
Rx-Buffer-Start-Address (0x8130)
Bit Name Access Description Default
7-0 Rx-Buffer-Start-Address RW This byte defines the high byte of RX
Buffer Start address in internal RAM. The low byte of RX Buffer Start address is always 00h
RX_Buffer_Read_Pointer_L (0x8131)
Bit Name Access Description Default
7-0 Rx-Buffer-Read-Pointer-L RW Rx-Buffer-Read-Pointer Low Byte. It is
maintained by S/W to store the address of the first unread received frame.
RX_Buffer_Read_Pointer_H (0x8132)
Bit Name Access Description Default
7-0 Rx-Buffer-Read-Pointer-H RW Rx-Buffer-Read-Pointer High Byte. It is
maintained by S/W to store the address of the first unread received frame.
40h
00h
40h
RX_Buffer_Write_Pointer_L (0x8133)
Bit Name Access Description Default
7-0 Rx-Buffer-Write-Pointer-L RW Rx-Buffer-Write-Pointer Low Byte. It is
maintained by H/W to store the address of
00h
the incoming frame.
RX_Buffer_Write_Pointer_H (0x8134)
Bit Name Access Description Default
7-0 Rx-Buffer-Write-Pointer-H RW Rx-Buffer-Write-Pointer High Byte. It is
maintained by H/W to store the address of
40h
the incoming frame.
45 / 68
June 10, 2008
Page 46
IP210T
Data Sheet
RX_Filter_registers_0 (0x8135)
Bit Name Access Description Default
0 Rx_My_Mac_En RW 1: MAC will filter out the unicast frame
except its DA equal to MY_MAC_ADDRESS. 0: MAC will filter out all unicast frames. Pause frame will be recognized by the MAC according to the state of Rx_Pause_En.
1 Rx_Mcst_En RW 1: MAC will receive all multicast frame
except BPDU, PAUSE, IGMP and 802.1X frame 0: MAC will filter out all multicast frame except BPDU, PAUSE, IGMP and 802.1X frame.
BPDU and PAUSE frame filters are defined in bit 4 and bit5. IGMP and 802.1X are defined in MAC_Control_register_1, Bit-4-3 and Bit-5.
Note:
DA of BPDU : 01-80-C2-00 -00-00 DA of PAUSE : 01-80-C2-00-00-01 DA of IGMP: 01-00-5E-00-00-00 ~ 01-00-5E-7F-FF-FF DA of 802.1X: 01-80-C2-00-00-03
2 Rx_Bcast_En RW 1: MAC will receive Broadcast frame
0: MAC will filter out Broadcast frame except Broadcast ARP and Broadcast RARP frame.
3 Rx_All_En RW 1: enable MAC to receive all good frame
except Pause packet 0: MAC will receive frame by checking the setting of the other bits of RX_Filter_registers_0 and RX_Filter_registers_1.
4 Rx_Bpdu_En RW 1: MAC will receive BPDU packet
0: MAC will filter out BPDU packet BPDU is a frame with
DA=01-80-C2-00-00-00
5 Rx_Pause_En RW 1: if
MAC_Control_register_0.FlowControl_En able=0, MAC will receive Pause packet. 0: MAC will filter out Pause packet. Pause packet is a frame with DA =01-80-C2-00-00-01 or My_MAC_Address Type = 0x8808 OP Code= 0x0001
1
0
0
0
0
0
46 / 68
June 10, 2008
Page 47
IP210T
Data Sheet
6 Rx_Remote_Mac RW MAC will receive only the frame with
SA=Remote_MAC_Address when this bit set 1. This bit is used to lock remote node’s MAC Address.
7 Rx_CRCErr_En RW 0: MAC will filter out CRC error frame.
1: Enable MAC to receive CRC error frame.
RX_Filter_registers_1 (0x8136)
Bit Name Access Description Default
0 Rx_MyIP_En RW MAC will receive only the frame with
Destination IP = My_IP when this bit is set
1.
1
3-2 Rx_IP_Type_En RW 00 - Receive all EtherType frame except
7-4 Reserved - -
Ether_Type_Start_Offset_Register (0x8137)
Bit Name Access Description Default
7-0 Ether_Type_Start_Offset RW Define the Byte-Offset of EtherType Field
Rx_RemoteIP_En
RW MAC will receive only the frame with
Source IP = Remote_IP when this bit is set 1.
the setting defined in RX_Filter_register_0.Rx_Pause_En
01- Receive EtherType only IPv4(0x800), ARP(0x806), RARP(0x8035). *Notice: (a) If the EtherType is 0x0800 but the subsequent byte is not equal to IPV4 version, the MAC will drop the frame.
(b) If the EtherType is 0x8100 (VLAN
packet), No matter the setting of Rx_IP_Type_En value, The RXMAC will always skip 4 bytes VLAN tagging and treat the subsequent word as EtherType.
from SA-Field of receiving packet The default value is 0. It means EtherT y pe field is right after SA field in the receiving frame. Ex: If Ether_Type_Start_Offset= 0x6, the EtherType field will be located at Byte 18/19 in the receiving frame start the byte count from 0.
0
0
1
0
01
00h
47 / 68
June 10, 2008
Page 48
IP210T
Data Sheet
Special_Source_Port_Tag_Type_Register_L (0x8138)
Bit Name Access Description Default
7-0 Special_Source_Port_Tag_
Type_Register_L
Special_Source_Port_Tag_Type_Register_H (0x8139)
Bit Name Access Description Default
7-0 Special_Source_Port_Tag_
Type_Register_H
RW Source Port Tag Type Value low byte
RW Source Port Tag Type Value high byte
26h
91h
48 / 68
June 10, 2008
Page 49
IP210T
Data Sheet
DMA_Command_Register (0x8200)
Bit Name Access Description Default
2-0 CMD_mode RW 000-No DMA operating or DMA done.
001-Internal Data to Internal Data transfer. 010- Reserved 011- Reserved 100-OTP ROM to Internal Data transfer. 101-Interanl data to CRC32 generation.
The CRC32 result will be calculated by IP210T and be stored in CRC_Result_register (0-3).
110-Interanl data to checksum generation
and insert into checksum fields in IP packet memory pointed by
DMA_Source_Address. 3 Reserved - - 7-4 Packet_Type RW Indicates the packet type when using DMA
to calculate the packet checksum (CMD_mode=110): 0000- no checksum generation needed 0001- IP and TCP (IPv4) 0010- IP and UDP (IPv4) 0011- IP and ICMP (IPv4) Others- no checksum generation needed.
Note: The calculated result is stored in CRC_Result_Register.
DMA_Source_Address_Register_L (0x8201)
Bit Name Access Description Default
7-0 DMA_Source_Address_L RW DMA source address low byte 00h
DMA_Source_Address_Register_H (0x8202)
Bit Name Access Description Default
7-0 DMA_Source_Address_H RW DMA source address high byte 00h
DMA_Destination_Address_Register_L (0x8203)
Bit Name Access Description Default
7-0 DMA_Destination_Address
_L
DMA_Destination_Address_Register_H (0x8204)
Bit Name Access Description Default
7-0 DMA_Destination_Address
_H
RW DMA Destination address low byte
RW DMA Destination address high byte
000
0000
00h
00h
49 / 68
June 10, 2008
Page 50
IP210T
Data Sheet
DMA_Length_Register_L (0x8205)
Bit Name Access Description Default
7-0 DMA_Length_L RW It specifies the low byte of the length of
data for IP checksum or CRC32 calculation. The maximum value of DMA_length is 2047.
DMA_Length_Register_H (0x8206)
Bit Name Access Description Default
7-0 DMA_Length_H RW
CRC_Result_Register(3~0) (0x820a ~ 0x8207)
Bit Name Access Description Default
31-0 CRC_Result RW These registers store the calculatedresult
Preset_CRC_Value_Register (0x820b)
Bit Name Access Description Default
0 Preset_CRC_Value RW Setting this bit to 1 will trigger HW_CRC to
7-1 Reserved
It specifies the high byte of the length of data for IP checksum or CRC32 calculation. The maximum value of DMA_length is 2047.
of CRC32. There are two conditions to set the register to 0xFFFFFFFF: (a) Power on reset (b) Write 1 to Preset_CRC_Value_Register
preset CRC_Result_register(0-3) to 0xFFFFFFFF. This bit will be self-cleared when HW-CRC has done the reset of CRC_Result_register. Writing 0 to this bit is ignored by HW_CRC.
00h
00h
FF FF FF FFh
0
50 / 68
June 10, 2008
Page 51
IP210T
Data Sheet
EEPROM_Data_Register (0x8310)
Bit Name Access Description Default
7-0
EEPROM_Addresss_Register (0x8311)
EEPROM_Data
RW
Bit Name Access Description Default
7-0 EEPROM_Addr RW It defines the address of EEPROM. 00h
EEPROM_ID_Register (0x8312)
Bit Name Access Description Default
EEPROM_ID
2-0
RW
7-3 Reserved
It stores the data to be written to/read from EEPROM.
It defines EEPROM ID or EEPROM address high bits for EEPROM with size over 256 bytes such as 24C16/24C08/24C04. Bit 2 Bit 1 Bit 0 24C01 ID ID ID 24C02 ID ID ID 24C04 ID ID Addr[8] 24C08 ID Addr[9] Addr[8] 24C16 Addr[10] Addr[9] Addr[8]
The ID bit(s) should be filled with 0. For example: 24C16 – bit[2:0] define address[10:8] 24C08 – bit[2] is ID[A2], bit[1:0] define address[9:8]
00h
000
51 / 68
June 10, 2008
Page 52
IP210T
Data Sheet
EEPROM_Command_Register (0x8313)
Bit Name Access Description Default
4-0
5
6 Abort RW If this bit=1, the H/W abort the access
7 Next RW If this bit=1, the H/W is available for the
EEPROM_Control_ Register (0x8314)
Bit Name Access Description Default
0 EE_Clk_Sel RW 0: EEPROM clock rate is 58.9KHz, for
7-1 Reserved .
Byte_count
RW_op
RW Define the access size.
The access size is (Byte_count+1) bytes. In EEPROM writing operation, if the access size over a page (16bytes or 8 bytes which is dependent on EEPROM type), the oversize part will be written to the address starts from the beginning of the page and overwrite the previous data.
RW Define the operation:
0- Write 1- Read
operation defined by RW_op. This bit will be auto-cleared by H/W after a read or write operation.
next read or write operation. This bit will be auto-cleared by H/W after a read or write operation.
normal usage.
1: Speed-up mode, EEPROM clock rate is
5.89MHz. This mode is used for test only.
00000
0
0
0
0
52 / 68
June 10, 2008
Page 53
IP210T
Data Sheet
MD_Control_reg (0x8320)
Bit Name Access Description Default
2-0 MDC_Clock_Select RW 000 – 34ns
001 – 68ns 010 – 136ns 011 – 272ns 100 – 544ns(recommend) 101 – 1088ns
110 – 2176ns 3 Reserved 4 RW_op RW 1: for Read operation
0: for Write operation 5 Preamble_Disable RW 0: Add preamble to the packet
1: Do not add the preamble to the packet. 6 Reserved 7 Start RW Set 1 to start MDC/MDIO operation
Auto-cleared when the operation is
completed.
MD_PhyAddress (0x8321)
Bit Name Access Description Default
4-0 Phy Address RW Phy Address 00000 7-5 Reserved
MD_RegAddress (0x8322)
Bit Name Access Description Default
4-0 Register Address RW Register Address 00000 7-5 Reserved
MD_Data_Low (0x8323)
Bit Name Access Description Default
7-0 MD_Data_Low RW MD_Data[7:0] 00h
MD_Data_High (0x8324)
Bit Name Access Description Default
7-0 MD_Data_High RW MD_Data[15:8] 00h
000
0
0
0
53 / 68
June 10, 2008
Page 54
IP210T
Data Sheet
My MAC Address 6 bytes (0x8335[MSB] ~ 0x8330[LSB])
Bit Name Access Description Default
47-0 My MAC Address RW
My MAC Address [47:0]
My IPv4 Address 4 bytes (0x8339[MSB] ~ 0x8336[LSB])
Bit Name Access Description Default
31-0 My IPv4 Address RW
Remote MAC Address 6 bytes (0x8355[MSB] ~ 0x8350[LSB])
Bit Name Access Description Default
47-0 Remote MAC Address RW
Remote IPv4 Address 4 bytes (0x8359[MSB] ~ 0x8356[LSB])
Bit Name Access Description Default
31-0 Remote IPv4 Address RW
My IPv4 Address [31:0]
Remote MAC Addre s s [47:0]
Remote IPv4 Addres s [31:0]
00 00 00 00 00 00h
00 00 00 00h
00 00 00 00 00 00h
00 00 00 00h
54 / 68
June 10, 2008
Page 55
IP210T
Data Sheet
ADC Control Register 0 (0x8370)
Bit Name Access Description Default
0 ADON RW A/D On bit
1 = A/D converter m odule is enabled and
begin to calibrate
0 = A/D converter m odule is disabled 1 START RW A/D conversion status bit
ADON = 1 :
1 = A/D conversi on in progress
0 = A/D idle
This bit will be auto-cleared when AD is
done 3-2 VRS RW voltage reference select bits
A/D Vref+ A/D Vref­0 0 vdda vssa
0 1 External Vref+ vssa
0
0
1 0 vdda External Vref-
00
1 1 External Vref+ External Vref-
6-4 PA RW Analog channel select bits
0 0 0 = channel 0 (P0)
0 0 1 = channel 1 (P1)
0 1 0 = Reserved
0 1 1 = Reserved
000 1 0 0 = Reserved 1 0 1 = Reserved 1 1 0 = Reserved 1 1 1 = Reserved
7 Calibrated RW Calibration done
1 = A/D converter m odule is calibrated
0 0 = A/D converter m odule is not calibrated
ADC Result Register L (0x8371)
Bit Name Access Description Default
7-0 ADC Result Register L RW ADC Result Register Low byte 00h
ADC Result Register H (0x8372)
Bit Name Access Description Default
7-0 ADC Result Register H RW ADC Result Register High byte 00h
55 / 68
June 10, 2008
Page 56
IP210T
Data Sheet
Chip ID LO (0x8400)
Bit Name Access Description Default
7-0 Chip ID LO RO Chip ID Number Lo w byte 10h
Chip ID HI (0x8401)
Bit Name Access Description Default
7-0 Chip ID HI RO Chip ID Number high byte 02h
Chip Revision (0x8402)
Bit Name Access Description Default
7-0 Chip Revision RO Chip reversion Number 00h
56 / 68
June 10, 2008
Page 57
IP210T
Data Sheet
UART_Receiver Buffer (0x8800)
Bit Name Access Description Default
7-0 UART_Receiver Buffer RO UART Receiver FIFO output. 00h
UART_Transmit Buffer (0x8801)
Bit Name Access Description Default
7-0 UART_Transmit Buffer WO UART Transmit FIFO input.
Interrupt Enable Register IER (0x8802)
This register allows enabling and disabling interrupt generation by the UART
Bit Name Access Description Default
0 Received Data available
interrupt
1 Transmitter Holding
Register empty interrupt
2 Receiver Line Status
Interrupt 3 Reserved RW Reserved. Should be logic ‘0’. 4 Received Data Timeout
interrupt 7-5 Reserved RW Reserved. Should be logic ‘0’.
Interrupt Identification Register IIR (0x8803)
The IIR enables the programmer to retrieve the current highest priority pending interrupt. Bit 0 indicates that an interrupt is pending when it’s logic ‘0’. When it’s ‘1’ – no interrupt is pending. The following table displays the list of possible interrupts along with the bits they enable, priority, and their source and reset control.
RW ‘0’ – disabled
‘1’ – enabled
RW ‘0’ – disabled
‘1’ – enabled
RW ‘0’ – disabled
‘1’ – enabled
RW ‘0’ – disabled
‘1’ – enabled
0
0
0
0
Interrupt Type Interrupt Source Interrupt Reset Control
Bit 3
Bit 2
Bit 1
Priority
0 1 1 1st Receiver Line
Status
0 1 0 2nd Receiver Data
available
1 1 0 2nd Timeout
Indication
Parity, Overrun or Framing errors or Break Interrupt
Reading the Line Status Register
FIFO trigger level reached FIFO drops below trigger
level There’s at least 1 character in the FIFO but no character has been input to the FIFO or read
Reading from the FIFO
(Receiver Buffer
Register) from it for the last 4 Char times.
0 0 1 3rd Transmitter
Holding Register empty
Transmitter Holding Register Empty
Writing to the
Transmitter Holding
Register or reading IIR.
Bits 4 and 5: Logic ‘0’. Bits 6 and 7: Logic ‘1’. Default Value: 0xC1
57 / 68
June 10, 2008
Page 58
IP210T
Data Sheet
FIFO Control Register FCR (0x8804)
The FCR allows the selection of the FIFO trigger level (the number of bytes in FIFO required to enable the Received Data Available interrupt). In addition, the FIFOs can be cleared using this register.
Bit Name Access Description Default
0 Clears the Receiver FIF O RW Writing a ‘1’ to bit 1 clears the Receiver
FIFO and resets its logic.
1 Clears th e Transmitter FIFO RW Writing a ‘1’ to bit 2 clears the Transmitter
FIFO and resets its logic.
7-2 Receiver FIFO Interrupt
trigger level
RW Define the Receiver FIFO Interrupt trigger
level[7:2], Interrupt trigger level[1:0] always equal to 2’b00 Ex :
‘000001’ – 4 bytes ‘010000’ –64 bytes
0
0
010000
58 / 68
June 10, 2008
Page 59
IP210T
Data Sheet
Line Control Register LCR (0x8805)
The line control register allows the designer to define the specification of the asynchronou s da ta communication used. A bit in the register also allows the access to the Divisor Latches, which define the baud rate. Reading from the register is allowed to check the current settings of the communication.
Bit Name Access Description Default
1-0 number of bits in each
character
2 number of generated stop
bits
3 Parity Enable RW ‘0’ – No parity
4 Even Parity select RW ‘0’ – Odd number of ‘1’ is transmitted and
5 Stick Parity bit RW ‘0’ – Stick Parity disabled
6 Break Control bit RW ‘1’ – the serial out is forced into logic ‘0’
7 Divisor Latch Access bit RW ‘1’ – The UART_Clock Divisor Registers is
RW Select number of bits in each character
‘00’ – 5 bits ‘01’ – 6 bits ‘10’ – 7 bits ‘11’ – 8 bits
RW Specify the number of generated stop bits
‘0’ – 1 stop bit ‘1’ – 1.5 stop bits for 5-bit character length selected; 2 bits for others.
Note that the receiver always checks the first stop bit only .
‘1’ – Parity bit is generated on each outgoing character and is checked on each incoming one.
checked in each word (data and parity combined). In other words, if the data has an even number of ‘1’ in it, then the parity bit is ‘1’. ‘1’ – Even number of ‘1’ is transmitted in each word.
‘1’ - If bits 3 and 4 are logic ‘1’, the parity bit is transmitted and checked as logic ‘0’. If bit 3 is ‘1’ and bit 4 is ‘0’ then the parity bit is transmitted and checked as ‘1’.
(break state). ‘0’ – break is disabled (default)
accessible
‘0’ – The UART_Clock Divisor Registers
can’t be accessed (Please refer to UART _Clock Divisor Registers for detail)
11
0
0
0
0
0
0
59 / 68
June 10, 2008
Page 60
IP210T
Data Sheet
Modem Control Register MCR (0x8806)
The modem control register allows transferring control signals to a modem connected to the UART.
Bit Name Access Description Default
0 Data Terminal Ready (DTR)
signal control
1 Request To Send (RTS)
signal control
2 Out1 RW In loopback mode, connected Ring
3 Out2 RW In loopback mode, connected to Data
4 Loopback mode RW ‘0’ – normal operation
5 HW_RTS_Stop_TX_En RW ‘0’ – normal operation
6 HW_TX_Disable RW ‘0’ – normal operation
7 HW_FlowControl_En RW ‘0’ – normal operation
RW ‘0’ – DTR is ‘0’
‘1’ – DTR is ‘1’
RW ‘0’ – RTS is ‘0’
‘1’ – RTS is ‘1’
Indicator (RI) signal input.
Carrier Detect (DCD) input.
‘1’ – loopback mode. When in loopback mode, the Serial Output
Signal (STX_PAD_O) is set to logic ‘1’. The signal of the transmitter shift register is internally connected to the input of the receiver shift register . The following connections are made: DTR Î DSR RTS Î CTS Out1 Î RI Out2 Î DCD
‘1’ –When RTS = 1, the transmitter will stop sending other characters after sending current character.
‘1’ –the transmitter will stop sending other characters after sending current character
‘1’ – enable HW Flow Control, by RTS & CTS
Rx part: when RXFIFO content characters higher than RXFIFO interrupt level (0x8804), the RTS will be pulled high; otherwise RTS will be pulled low. Tx part: If CTS is pulled high, the transmitter will stop sending other characters after sending current ch aracter.
0
0
0
0
0
0
0
0
60 / 68
June 10, 2008
Page 61
IP210T
Data Sheet
Line Status Register LSR (0x8807)
Bit Name Access Description Default
0 Data Ready (DR)
indicator
1 Overrun Error (OE)
indicator
2 Parity Error (PE) indicator RO ‘1’ – At least one character in FIFO has been
3 Framing Error (FE)
indicator
4 Break Interrupt (BI)
indicator
5 Transmit FIFO is empty RO ‘1’ –. IP210T generates Tr ansmitter Holding
6 Transmitter Empty
indicator
RO ‘0’ – No characters in the FIFO
‘1’ – At least one character has been received in the FIFO.
RO ‘1’ – If the FIFO is full and another cha ra cter
has been received in the receiver shift register. If another cha ra cter is ab out to arrive, it will overwrite the data in the shift register but the FIFO will remain intact. The bit is cleared upon reading from the register. IP210T generates Receiver Line Status interrupt when detecting Overrun Error. ‘0’ – No overrun state
detected as having parity error. When this bit is read as '1', all characters in FIFO should be read and dropped. The bit is cleared upon a read from the register. IP210T generates Receiver Line Status interrupt when detecting Parity Error. ‘0’ – No parity erro r in the current character
RO ‘1’ – The received character at the top of the
FIFO did not have a valid stop bit. Of course, generally, it might be that all the following data is corrupt. The bit is cleared upon reading from the register. IP210T generates Receiver Line Status interrupt when detecting Framing Error. ‘0’ – No framing error in the current character
RO ‘1’ –A break condition has been reached in
the current character. The break occurs when the line is held in logic 0 for a time of one character (start bit + data + parity + stop bit). In that case, one zero character enters the FIFO and the UART waits for a valid start bit to receive next character. The bit is cleared upon reading from the register. IP210T generates Receiver Line Status interrupt when detecting a Break Interrupt. ‘0’ – No break condition in the current character
Register Empty interrupt when the transmitter FIFO is empty. The bit is cleared when data is written to the transmitter FIFO. ‘0’ – Otherwise
RO ‘1’ – Both the transmitter FIFO and
transmitter shift register are empty. The bit is cleared when data is being been written to the transmitter FIFO.
0
0
0
0
0
1
1
61 / 68
June 10, 2008
Page 62
IP210T
Data Sheet
‘0’ – Otherwise
7 Reserved RO Reserved
Modem Status Register MSR (0x8808)
The register displays the current state of the modem control lines.
Bit Name Access Description Default
3-0 Reserved RO Reserved 4 CTS input RO CTS input or equals to RT S in loopback
mode.
5 DSR input RO DSR input or equals to DTR in loopback
mode.
6 RI input RO RI input or equals to Out1 in loopback
mode.
7 DCD input RO DCD input or equals to Out2 in loopback
mode.
UART_TX FIFO
Bit Name Access Description Default
7-0 TX_FIFO_CNT RO TX FIFO available space counter FFh
UART_RX FIFO Status (0x880a)
Bit Name Access Description Default
7-0 RX_FIFO_CNT RO RX FIFO occupied space counter 00h
UART_Clock Divisor Registers In addition, there are 2 Clock Divisor registers that together form one 16-bit. The registers can be accessed when the 7 time the above registers UART_Receiver Buffer, UART_Transmit Buffer & UART_Interrupt Enable can’t be accessed.
(Input Clock Speed)/(Divisor Latch value) = 16 x the communication baud rate
UART_Clock Divisor Registers_L (0x880b)
Bit Name Access Description Default
7-0 UART_Clock Divisor
Registers_L
UART_Clock Divisor Registers_H (0x880c)
Bit Name Access Description Default
7-0 UART_Clock Divisor
Registers_H
Status (0x8809)
th
(DLAB) bit of the Line Control Register is set to ‘1’. At this
RW UART_Clock Divisor Registers_low byte.
RW UART_Clock Divisor Registers_high byte.
0
0
0
0
00h
00h
62 / 68
June 10, 2008
Page 63
6 Electrical Characteristics
6.1 Absolute Maximum Rating
Symbol Conditions Minimum Typical Maximum
Supply Volt age 3.0 V 3.3V 3.6V Storage Temp
6.2 Power Dissipation
Operating Condition Power consumption (W)
Unlink 0.386W 100M / active 0.558W 10M / active 0.398W
6.3 DC Characteristic
-55°C
IP210T
Data Sheet
125°C
6.3.1 Operating Condition
Symbol
PVDD 3.3V Supply voltage
Conditions Minimum Typical Maximum
2.5V Supply voltage
3.0 V
2.25V
3.3V
2.5V
3.6V
2.75V CVDD 2.5V Supply voltage 2.25V 2.5V 2.75V AVDD 2.5V Supply voltage 2.25V 2.5V 2.75V ADC_VCC 2.5V Supply voltage 2.25V 2.5V 2.75V VPP 2.5V Supply voltage (normal mode)
6.5V Supply voltage (write mode)
TA Operating Temperature
6.3.2 ADC Operating Condition
Symbol
Conditions Minimum Typical Maximum
2.25V
6.25V 0°C
2.5V
6.5V
2.75V
6.75V
70°C
ADC0 See Note. 0V ADC_VCC ADC1 0V ADC_VCC ADC_REFH 1.8V 2.0V 2.2V ADC_REFL 0.4V 0.5V 0.6V
Note. The ADC input range,0~ADC_VCC, correspond to upper reference voltage, ADC_REFH, which is 4/5*ADC_VCC, and lower reference voltage, ADC_REFL,which is 1/5*ADC_VCC, would convert full range output code. When input is ADC_VCC, ADC convert 01111111, and input is 0V ADC convert
10000000. The output code represents in 2's-complement.
63 / 68
June 10, 2008
Page 64
Data Sheet
6.3.3 Supply Voltage Symbol Specific Name Condition Min Max
VIH Input High Vol. 0.57*PVDD VIL Input Low Vol. 0.35*PVDD VOH Output High Vol. 0.9*PVDD VOL Output Low Vol. 0.1*PVDD
IP210T
64 / 68
June 10, 2008
Page 65
6.4 AC Timing
6.4.1 EEPROM Timing
a.
Symbol Description Min. Typ. Max. Unit
T
SCL
T
SDA to SCL setup time 2 - - ns
sSCL
T
SDA to SCL hold time 0.5 - - ns
hSCL
SCL
SDA
Receive clock period - 20480 - ns
TSCL
ThSCL
sSCL
T
IP210T
Data Sheet
Read data cycle
b.
Symbol Description Min. Typ. Max. Unit
T
SCL
T
SCL falling edge to SDA - - 5200 ns
dSCL
Transmit clock period - 20480 - ns
T
SCL
SCL
TdS C L
SDA
Com and cycle
6.5 Thermal Data
Theta Ja Theta Jc Conditions Units
67.9 15.1 2 Layer PCB
o
C/W
65 / 68
June 10, 2008
Page 66
7 Order Information
Part No. Package Notice
IP210T LF 48-PIN QFN Lead free
IP210T
Data Sheet
66 / 68
June 10, 2008
Page 67
8 Package Detail
Package and Mechanical Specification IP210T-48 PIN (48L QFN(7X7))
IP210T
Data Sheet
67 / 68
June 10, 2008
Page 68
IP210T
Data Sheet
IC Plus Corp. Headquarters Sales Office
10F, No.47, L ane 2, Kwang-Fu Road, Sec. 2, 4F, No. 106, Hsin-Tai-Wu Road, Sec.1, Hsin-Chu City, Taiwan 300, R.O.C. Hsi-Chih, Taipei Hsien, Taiwan 221, R.O.C. TEL : 886-3-575-0275 FAX : 886-3-575-0475 TEL : 886-2-2696-1669 FAX : 886-2-2696-2220 Website : www.icplus.com.tw
68 / 68
June 10, 2008
Loading...