Do you have a question about the ADM5120 and is the answer not in the manual?
Questions and answers
Summary of Contents for ADMtek ADM5120
Page 1
ADM5120 HOME GATEWAY CONTROLLER Datasheet Version 1.13 ADMtek com.tw Information in this document is provided in connection with ADMtek products. ADMtek may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked “reserved” or “undefined”. ADMtek...
Page 2
Chapter 3 Function Description Chapter 4. Register Description Chapter 5 Electrical Packaging Chapter 6. Packaging Customer Support ADMtek Incorporated, 2F, No.2, Li-Hsin Rd., Science-based Industrial Park, Hsinchu, 300, Taiwan, R.O.C. Sales Information Tel + 886-3-5788879 Fax + 886-3-5788871 ADM5120 V1.13...
05 June 2003 13 June 2003 08 October 2003 29 October ADM5120 Version Change First release of ADM5120 3.4, 4.5, 4.6, 4.7, 4.8 and 5.3 sections added. Updated pin numbers. 1.11 Updated Table for Clock Speeds 1.12 2.2.5 Memory Bus : A[2] 2.2.10 PCI added CLK I/P...
ADM5120 is a high performance, highly integrated, and highly flexible SOC (System- On-Chip) that facilitates the functionalities of SOHO/SME Gateway, NAT Router, Print Server, WLAN Access Point, and VPN Gateway. ADM5120 enables the sharing of IP- based broadband services throughout the home/office using wired/wireless computers, entertainment equipment, printers, and other intelligent devices.
GMAC multi-port 10/100 10/100 memory controller auto auto MDIX MDIX Figure 1-1 ADM5120 Block Diagram Advance High performance Bus Address Latch Enable Auto-Negotiation Advanced Peripheral Bus Advanced System Bus Application Specific Integrated Circuit BroadCast Back Pressure Bridge Protocol Data Unit...
Page 15
ADM5120 FIFO GPIO GPIOL GPIOM GPSI INTC INTX JTAG MDIO MDIX MIPS NRZI PQFP RISC RXDV SYSC ADMtek Inc. Flow Control First-In-First-Out Ground General Purpose I/O GPIO of groupL GPIO of groupM General Purpose Serial Interface Head-on-Line Interrupt Control Registers...
ADM5120 Pin Description by Function ADM5120 pins are categorized into one of the following groups: Section 2.2.1 Network Media Connection Section 2.2.2 Clock for Network Section 2.2.3 LED Section 2.2.4 GMII/MII Management Section 2.2.5 Memory Bus Section 2.2.6 SDRAM Control Signals Section 2.2.7 UART...
ADM5120 Pin Name BGA Ball LED0[2:0] A14, E13, B14 Note: Registers, not hardware pins, control the LED display. There are 3 LEDs per port, and they can be programmed to any state, the programming information can be found in Table 2-1 below.
Page 27
ADM5120 Pin Name BGA Ball CSX0# INTX0 CSX_1# INTX1# ADMtek Inc. PQFP Pin# Type Descriptions Interface Description if low, then wait until WAIT# go high External chip select, active low, available if en_csx_intx enable in the switch control register GPIO_config2...
ADM5120 Chapter 3 Function Description System 3.1.1 Frequency The system clock frequency of ADM5120 is programmable as follows 00: 175MHz (Default) 01: 200MHz 1x: Reserved The number is set by the pull up or pull down of A[4:3]. This clock is for the MIPS, major switch cores, and SDRAM access.
ADM5120 3.2.1 PHY Overview The ADM5120 is an embedded 5 ports Ethernet PHY device. It is capable of operating at either 10Mbps or 100Mbps. The PHY is associated with the Physical Layer of the OSI model. The PHY performs functions between the Medium Dependent Interface (MDI) and the internal MAC of switch.
ADM5120 interference. The adaptive equalizer function conditions the incoming 100Base-T receive signal to compensate for this distortion. Transceivers that utilize an analog methodology to equalize are subject to system noise degrading their performance while a digital methodology provides better noise immunity but with the tradeoff of high power consumption.
5. The packets from CPU 3.3.3 Routing When a packet comes from portA, ADM5120 will compare its destination MAC address with the MAC address in the MAC address lookup table. If the address is the same and port number is portA means that the packet is a local packet, then it is discarded. If the address is the same but port numbers are different, the packet is a unicast packet, and will be forwarded to the assigned port.
ADM5120 does not do the flow control to CPU, mean – never send the flow control packets to CPU port, so the firmware needs to monitor the buffer status to prevent the packet lost.
CPU traffic (mostly they are this bandwidth is charged.) 3.3.10 VLAN ADM5120 supports 7 port-grouping VLAN. Each of thr VLAN will be treated as the isolated ports. ADM5120 provides the VLAN MAC address function, if the packet is assigned with the VLAN address as its destination MAC address, then this packet will be forwarded to the CPU via DMA.
64K- bit/ 128K /256K /512K/ 1M/ 4M/ 10M. In a fixed period, ADM5120 will count the per port RX and TX byte number, and compare with the bandwidth control threshold. If it is over this threshold, ADM5120 will turn on the proprietary scheme to control the RX/TX behavior.
ADM5120 – Buffer1 has length information, if packet size is larger than buffer1 size, then get the rest of the data from buffer2. – Buffer address must be valid when a descriptor belongs to a switch, the switch engine will not check the address status.
Page 37
ADM5120 Control Own bit: • – If 0, the descriptor belongs to CPU. – If 1, the descriptor is released to WAN MAC or LAN SW, which means it can store the incoming packet based on the buffer address. If this is done, change the bit to 0.
ADM5120 USB 1.1 Host Controller 3.4.1 Block Diagram The following block diagram describes the functional blocks of the ADMtek USB 1.1 Host controller. Figure 3-1 Block Diagram of ADMtek USB 1.1 Host controller 3.4.2 System bus interface This block provides the USB Host controller with the connection to the AHB bus interface.
ADM5120 status. The operational register also provides the interface for the local host to transfer the data for control and interrupt endpoint. 3.4.4 SIE The SIE handles the link layer protocol of USB. It includes the following items Identify the USB SYNC field...
ADM5120 Description 31-27 Reserved 26-16 Maximum packet size The maximum data that can transmit/receive in one USB transaction. Format This bit indicates that this packet is for isochronous. 1: The data in this descriptor is for isochronous transfer. 0: The data in this descriptor is for general data transfer.
Page 41
ADM5120 DWORD 0 – Status Description OWNER Descriptor ownership bit – set to 0 when the host owns the descriptor, set to 1 by host to tell the USB Host controller owns the descriptor, the controller will clear this bit when reception has done.
ADM5120 DWORD 1 – Data Buffer Pointer Description 31-0 Starting address of the data buffer This field indicates the starting address of the data buffer. Data buffer may be aligned on any byte. When an OUT or SETUP packet has been transmitted, this field will be updated as the next start address of the data buffer.
ADM5120 If a USB zero length packet is received, then the received data length will be zero, and this buffer is retired due to short packet received. DM A Descr iptor Chain Head pkt A I SO (512B) USB bus SOF send by host ADMtek Inc.
Page 44
ADM5120 For Interrupt IN/OUT transactions, each ED just contains one valid TD. Since the Interrupt transaction is periodic, two parameters are defined in TD by software to guide hardware for doing Interrupt transfer, they are Frame Number and Interrupt service period.
ADM5120 Interrupt IN/OUT Transaction DMA Descriptor Chain Prior ED PKT A (32B) PKT C (16B) Current Frame Number ADMtek Inc. INT IN ED #1 INT OUT ED #2 MPS 64Byte MPS 32Byte TD Tail TD Tail TD Head TD Head ED descr.
Page 47
ADM5120 Memory mapping notes • There are two banks for SDRAM and Flash. • The two banks of SDRAM are the same size. control register, Base+1C, bit[2:0] • For SRAM SRAM_0, the bank0of NOR flash, boot flash – the address is fixed at 0x1FC0_0000 and the maximum size is 4M-byte.
ADM5120 System and Interrupt Registers 4.2.1 Interrupt Control Register Map Offset Address Base + 00 Base + 04 Base + 08 Base + 0c Base + 10 Base + 14 Base + 18 Base + 1c Base + 20 Base + 24 Note: Base = 0x1220_0000 4.2.2.
ADM5120 4.2.9 FIQ_status, offset: 0x18 Bits Type Name FIQ_status[9:0] 31:10 Reserved 4.2.10 IRQ_test_source, offset: 0x1c Bits Type Name IRQ_test_source[9 31:10 Reserved 4.2.11 IRQ_source_sel, offset: 0x20 Bits Type Name IRQ_source_selec tion 31:1 Reserved 4.2.12 INT_level, offset: 0x24 Bits Type Name Reserved...
ADM5120 TOS_map1 Custom_pri1 Custom_pri2 Reserved Empty_cnt Port_cnt_sel Port_cnt Int_st Int_mask GPIO_conf0 GPIO_conf2 Watchdog0 Watchdog1 Swap_in Swap_out send_Hbaddr send_Lbaddr receive_Hbaddr receive_Lbaddr send_Hwaddr send_Lwaddr receive_Hwaddr Receive_Lwaddr Timer_int Timer Reserved Reserved port0_LED port1_LED port2_LED port3_LED port4_LED Note: Although some registers may be marked with a certain type, it may be possible that some bits in this register are different.
ADM5120 D_bist_fail L_bist_fail MC_bist_fail AT_bist_fail Dcache_D_test_fail Bit 5 and Bit 4 are respectively for the upper and lower Dcache_T_test_fail the memory of D-cache tag Icache_D_test_fail Bit 8 and Bit 7 are respectively for the upper and lower Icache_T_test_fail the memory of I-cache tag...
ADM5120 4.4.12 Port_conf1, offset 0x2c Bits Type Name Dis_Learn 11:6 blocking_state 17:12 RW blocking_mode 19:18 Reserved 25:20 RW Port_age 31:26 RW SA_secured 4.4.13 Port_conf2, offset 0x30 Bits Type Name GMII_AN force_MIIport_spd force_MIIport_dpx force_MIIport_FC Force MII port 802.3x flow control ON if AN monitor ADMtek Inc.
ADM5120 sel_info 4.4.45 Int_st, offset 0xB0 Note: All bits are “write 1 clear” Bits Type Name send_H_done send_L_done rx_H_done rx_L_done H_Descriptor_full The descriptor, “high priority receive”, are full L_Descriptor_ful the descriptor, “normal priority receive”, are full port0_que_full port1_que_full port2_que_full port3_que_full...
ADM5120 4.4.62 Timer, offset 0xF4 Bits Type Name 15:0 timer timer_en 31:17 Reserved 4.4.63 Reserved, offset 0xF8 Bits Type Name 31:0 Reserved 4.4.64 Reserved, offset 0xFc Bits Type Name 31:0 Reserved 4.4.65 port0_LED, offset 0x100 Bits Type Name p0_LED0 p0_LED1...
ADM5120 USB Control Status Registers Description Host processors can only access USB 1.1 host/device controller registers with double word (32 bits) reads or writes on double word boundaries. 4.6.1 General Control , offset 0x00 Bits Type Name R/W HOST_EN R/W SW_INT_REQ...
ADM5120 4.6.11 RH descriptor, offset 0x74 Bits Type Name RO NUM_PORT R/W PSM R/W NPS R/W OCPM R/W NOCP 15:12 RO Reserved 23:16 R/W PPCM ADMtek Inc. Description Power Switch Mode This bit is used to specify how the power switching of the Root Hub ports is controlled.
Page 79
ADM5120 Bits Type Name R/W LPS R/W OCI R/W LPSC R/W OCIC R/W DRWE R/W CRWE 31:30 RO Reserved ADMtek Inc. Description is configured to global switching mode (PSM =0), this field is not valid. bit 0: Reserv ed bit 1: Ganged-power mask on Port #1...
ADM5120 4.6.12 Port x status, offset 0x78 Bits Type Name R/W CCS R/W PES R/W PSS ADMtek Inc. Description Current connect status (read)This bit reflects the current state of the downstream port. 0 = no device connected 1 = device connected (write)ClearPortEnable The HCD writes a 1 to this bit to clear the PES.
Page 81
ADM5120 Bits Type Name R/W POCI R/W PRS RO Reserved R/W PPS ADMtek Inc. Description this write does not set PSS; instead it sets CSC. This informs the driver that it attempted to suspend a disconnected port. (read) PortOverCurrentIndicator This bit is only valid when the Root Hub is configured in such a way that overcurrent conditions are reported on a per-port basis.
Page 82
ADM5120 Bits Type Name R/W LSDV 15:10 RO Reserved R/W CSC R/W PESC R/W PSSC ADMtek Inc. Description 0 = port power is off 1 = port power is on (write) SetPortPower The HCD writes a 1 to set the PPS bit. Writing a 0 has no effect.
ADM5120 Offset FF4h FF8h FFCh 4.7.2 MPMC Control register, offset 000h Bit # Type Name 31:4 Reserved 4.7.3 MPMC Status register, offset 004h Bit # Type Name ADMtek Inc. Register MPMCPCellID0 MPMCPCellID1 MPMCPCellID2 MPMCPCellID3 Descriptions MPMC Enable: indicates if the PrimeCell MPMC is enabled or disabled.
ADM5120 Bit # Type Name SREFACKA 31:3 Reserved 4.7.4 MPMC Config register, offset 008h Bit # Type Name Reserved 31:9 Reserved 4.7.5 MPMC Dynamic Control register, offset 020h Bit # Type Name ADMtek Inc. Descriptions memory controller enters the low-power or disabled...
ADM5120 Bit # Type Name MPMCSREFREQ (SR) Reserved 12:9 Reserved 31:14 Reserved 4.7.6 MPMC Dynamic Refresh register, offset 024h Bit # Type Name 10:0 REFRESH 3:11 Reserved 4.7.7 MPMC Dynamic RP register, offset 030h Bit # Type Name 31:4 Reserved Note: The delay is in MPMCCLK cycles.
ADM5120 4.7.8 MPMC Dynamic RAS register, offset 034h Bit # Type Name R/W tRAS 31:4 Reserved Note: The delay is in MPMCCLK cycles. 4.7.9 MPMC Dynamic SREX register, offset 038h Bit # Type Name tSREX 31:4 Reserved Note: The delay is in MPMCCLK cycles.
ADM5120 4.7.13 MPMC Dynamic RC register, offset 048h Bit # Type Name 31:5 Reserved Note: The delay is in MPMCCLK cycles. 4.7.14 MPMC Dynamic RFC register, offset 04Ch Bit # Type Name tRFC 31:5 Reserved Note: The delay is in MPMCCLK cycles.
ADM5120 Bit # Type Name 31:4 Reserved Note: The delay is in MPMCCLK cycles. 4.7.18 MPMC Static Extended Wait register, offset 080h Bit # Type Name EXTENDEDWAIT External wait time out: 31:10 Reserved Note: The delay is in HCLK cycles.
ADM5120 Bit # Type Name Reserved Reserved 29:28 R/W 31:30 Reserved ADMtek Inc. Descriptions 101 = 11-bit 110 = reserved 111 = reserved Read undefined, must be written as zeros. Number of banks: 0 = two banks (reset value on nPOR) 1 = four banks.
Page 92
ADM5120 Register Description ADMtek Inc. 4-45...
ADM5120 4.7.20 MPMC Dynamic Ras Cas[0,1,2,3] register Note: offset = 200h, 220h, 240h is for SMC_CSZ0, SMC_CSZ1, and SMC_CSZ2 respectively Bit # Type Name Reserved 31:10 Reserved Note: The RAS to CAS latency (RAS) and CAS latency (CAS) are both defined in MPMCCLK cycles.
ADM5120 Bit # Type Name 18:9 Reserved 31:21 Reserved Note: Synchronous burst mode memory devices are not supported. 4.7.22 MPMC Static Wait Wen [0,1,2,3] register Note: offset = 200h, 220h, 240h is for SMC_CSZ0, SMC_CSZ1, and SMC_CSZ2 respectively Bit #...
ADM5120 Note: The delay is WAITOEN x tHCLK. 4.7.24 MPMC Static Wait Rd [0,1,2,3] register Note: offset = 200h, 220h, 240h is for SMC_CSZ0, SMC_CSZ1, and SMC_CSZ2 respectively Bit # Type Name WAITRD 31:5 Reserved Note: For non-sequential reads, the wait state time is (WAITRD+1) x tHCLK.
ADM5120 Bit # Type Name 31:5 Reserved Note: The wait state time for write accesses after the first read is WAITWR x tHCLK. 4.7.27 MPMC Static Wait Turn [0,1,2,3] register Note: offset = 200h, 220h, 240h is for SMC_CSZ0, SMC_CSZ1, and SMC_CSZ2...
ADM5120 4.7.30 MPMC PeriphID5-7 register, offset FD4h, FD8h, FDCh Bit # Type Name 31:0 Reserved 4.7.31 Conceptual MPMC Peripheral ID register Bit # Type Name 11:0 Part number 19:12 R Designer 23:20 R Revision 31:24 R Configuration Note: The four eight-bit peripheral identification registers are described in the following sections: MPMCPeriphID0 register MPMCPeriphID1 registers on next page.
ADM5120 4.7.35 MPMC PeriphID3 register, offset FECh Bit # Type Name Configuration Configuration Configuration Configuration 31:8 Reserved Note: The MPMCPeriphID2 register is hard-coded and the fields within the register determine the reset value. 4.7.36 MPMC PrimeCellID register, offset 00h Bit #...
ADM5120 4.7.38 MPMC PCellID1 register, offset FF4h Bit # Type Name 31:8 Reserved 4.7.39 MPMCPCellID2 register, offset FF8h Bit # Type Name 31:8 Reserved 4.7.40 MPMCPCellID3 register, offset FFCh Bit # Type Name 31:8 Reserved UART Registers 4.8.1 Remap and Pause Controller Registers...
ADM5120 4.8.3 UART receive status register/error clear register, offset 04h Bit # Type Name Reserved 4.8.4 UART line control register, high byte, offset 08h Bit # Type Name ADMtek Inc. Descriptions Framing Error (FE): When this bit is set to 1, it indicates that the received character did not have a valid stop bit.
ADM5120 Bit # Type Name STP2 WLEN Reserved 4.8.5 UART line control register, middle byte, offset 0ch Bit # Type Name BAUD DIVMS 4.8.6 UART line control register, low byte, offset 10h Bit # Type Name BAUD DIVLS Note: The baud rate divisor is calculated as follow:...
ADM5120 Bit # Type Name RTIE Reserved 4.8.8 UART flag register (UARTFR), offset 18h Bit # Type Name ADMtek Inc. Descriptions Modem status change when one of the following events occurs: (1) 0 → 1 (2) 1 → 0 Receive interrupt enable: If this bit is set to 1, the receive interrupt is enabled.
Page 103
ADM5120 Bit # Type Name BUSY RXFE TXFF RXFF TXFE ADMtek Inc. Descriptions (nUARTDSR) modem status input. That is , the bit is 1 when the modem status input is 0. This bit is the complement of the UART data carrier detect (nUARTDCD) modem status input.
ADM5120 4.8.9 UARTIIR/UARTICR, offset 1ch Bit # Type Name RTIS Reserved UARTICR ADMtek Inc. Descriptions This bit is set to 1 if the UARTRTINTR modem status interrupt is asserted. This bit is set to 1 if the UARTRTINTR receive interrupt is asserted.
ADM5120 Chapter 5 Electrical Specification Absolute Maximum Ratings Supply Voltage (Vcc) Input Voltage Output Voltage Storage Temperature Ambient Temperature ESD Protection DC Specifications Parameter Description Supply Voltage Supply Voltage (I / O) Power Supply Power Supply (I / O) Input LOW Voltage...
ADM5120 5.3 AC Timing 5.3.1 SDRAM interface (Unit: ns, Min: best case, Max: worst case) Signal Name clock cycle time command/address setup delay time in precharge stage command/address hold delay time in precharge stage command/address setup delay time in active stage...
ADM5120 Active Com m and SCLK SDC_CSZ[0] SDC_RASZ SDC_CASZ SDC_W EZ XA[14:0] ADMtek Inc. addr Figure 5-2 Active Command Electrical Specification Tas Tah...
ADM5120 5.3.2 Memory Bus Read Timing ROM/FLASH/External Memory: Two wait state Read Timing CLK_OUT ADDR[19:0] DATA[31:0] F_CSX_N F_OE_N ROM/FLASH/External Memory: Two Output enable delay state Read Timing CLK_OUT ADDR[19:0] DATA[31:0] F_CSX_N F_OE_N Notes: T is the period of CLK_OUT (11.5ns/87.5Mhz)
ADM5120 5.3.3 Memory Bus Write Timing ROM/FLASH/External Memory: Zero Wait state Timing CLK_OUT ADDR[19:0] DATA[31:0] F_CSX_N WE_N ROM/FLASH/External Memory: Two Wait state WriteTiming CLK_OUT ADDR[19:0] DATA[31:0] F_CSX_N WE_N ROM/FLASH/External Memory: Two Write enable delay state WriteTiming CLK_OUT ADDR[19:0] DATA[31:0] F_CSX_N WE_N Notes: T is the period of CLK_OUT (11.5ns/87.5Mhz)
Need help?
Do you have a question about the ADM5120 and is the answer not in the manual?
Questions and answers