Design and Implementation of an ARM-based ADSL2+ Tester
2026-04-06 04:49:26··#1
Introduction In recent years, Asymmetric Digital Subscriber Line (ADSL) has been widely used worldwide as an ideal solution to the "last mile" problem of the network. In China, ADSL services have become one of the main sources of revenue growth for operators. However, because existing telephone lines are specifically designed for transmitting low-frequency voice signals, they are not conducive to high-frequency signal transmission. Furthermore, the surrounding environment of these lines is harsh and complex, requiring a series of complex tests for both the activation of ADSL services and normal operation and maintenance. Existing testing instruments are mostly foreign brands and expensive, while domestic products generally suffer from limited testing frequency bands and biased test results. Moreover, due to limited core chip processing capabilities, outdated embedded operating systems, and incomplete software package functions, the management of test results is also relatively chaotic. With the continuous expansion of the market, especially after the launch of ADSL2/2+ based on the ITU G.992.3/G.992.5 standards, reasonably priced, fully functional, and easy-to-use testing tools have become an urgent need for broadband operators. Based on the current situation, this paper proposes a novel ADSL2+ tester. Utilizing an ARM9 processor and a Windows CE operating system, it comprehensively improves the product's processing power and reliability. A user-friendly, intuitive interface using an LCD touchscreen allows for network service quality assessment at different locations on the user loop. The system hardware structure, as shown in Figure 1, mainly consists of three parts: an ARM control and processing module, a built-in modem module, and related simulation testing modules. The control and processing module is the core of the tester, responsible for overall system control and related data processing. This instrument requires an LCD display and touchscreen, thus demanding both high-speed data processing capabilities and considerable control power. The system uses an ARM9 series 32-bit microcontroller, the S3C2410X, with a frequency up to 203MHz, capable of easily running operating systems such as WinCE and Linux, and performing relatively complex information processing. Simultaneously, a 5-inch STN LCD screen intuitively displays various test indicators, overcoming the shortcomings of existing testing tools in terms of display quality. Using a touchscreen instead of a keyboard input further enhances its portability. Considering the needs of operating system operation and high-speed data processing, the system uses two 32M SDRAMs, one 32M NAND Flash, and one 2M NOR Flash. The program, operating system, and test data are stored in the NAND Flash, and the system boots from the 16-bit NOR Flash. Built-in Modem Module When testing line transmission performance, the system can directly connect to the central office without a user modem. ADSL/ADSL2/2+ data frames are converted by the built-in modem and sent to the CPU for decoding and analysis. Therefore, selecting a reliable and high-performance modem chip is extremely important. This system uses the BCM6338 chip from Broadcom, based on the latest ADSL2+ standard, suitable for various types of networks such as ADSL/ADSL2/ADSL2+, ensuring the reliability of test results. Analog Test Module Physical layer testing mainly includes voltage, resistance, and capacitance tests, and includes an embedded time-domain reflectometer (TDR) for line fault location. All test functions are implemented on a separate board, with data sent to the CPU for processing and storage via general-purpose I/O ports and A/D conversion ports. The voltage, resistance, and capacitance measurements are calculated after voltage measurement. The S3C2410 integrates an 8-channel 10-bit ADC conversion module. The A/D converter operates in on-chip sampling and hold mode, supports power-down mode, and measures analog input voltages from 0 to 3.3V. In the Windows CE environment, it can convert external analog signals to digital signals. Figure 2 shows a typical voltage measurement application. TEST0/TEST1 are analog voltages to be measured. After being divided by 10, they are connected to a subtraction amplifier and then connected to pin AD6 of the 2410 for signal transmission and filtering. The 10-bit ADC value can be obtained through the device driver. Based on this value, the analog voltage VAD6 of AD6 is calculated as: * 3.3. According to the schematic diagram, the voltage of the external test point TEST0 can be obtained. System Software Design The overall system software structure is shown in Figure 2. The system software was developed using Platform Builder 4.2 and Embedded Visual C++ 4.0 (EVC). Operating System Kernel Choosing a real-time operating system that meets application requirements while offering the best cost-effectiveness is crucial for this development task. Considering factors such as hardware support and ease of secondary development, Microsoft Windows CE was chosen. Customizing and porting the operating system is a vital step in the project. We used the Platform Builder integrated development environment (IDE). After selecting a BSP, and based on project needs and memory limitations, we trimmed the kernel, removed unnecessary system components, and created an operating system image project. Then, we added custom modules to the corresponding Platform Builder project, generating an operating system image. Windows CE's feature catalog is expandable, allowing users to add custom features such as drivers. Platform Builder uses .cec files to create the feature catalog, enabling it to display the feature in the IDE and add it to an operating system. Applications The applications to be developed in this project mainly consist of data processing and display, and system control, developed and debugged using EVC. The main system testing items include physical layer testing and network layer testing. Physical layer testing is used to test the physical layer parameters of ADSL/ADSL2/2+ lines, including ADSL/ADSL2/2+ connection status, connection mode, upstream/downstream rates, noise margin, line attenuation, output power, CRC error rate, HEC error rate, FEC error rate, OCD error rate, NCD error rate, and channel bitmap. After establishing a PPPoE dial-up connection using the instrument's built-in ADSL2+ modem , network layer tests such as Ping, Ipconfig, Tracert, and Route can be performed. While Platform Builder comes with some standard BSPs and general drivers, it cannot meet the requirements of some specialized devices and functions. To facilitate communication and control with the analog testing section and the use of the LCD touchscreen, corresponding interface drivers need to be written, mainly including I/O port drivers with PWM functionality for TDR testing, written in C language. PWM is a method of digitally encoding analog signal levels. Using a high-resolution counter, the duty cycle of a square wave is modulated to encode the level of a specific analog signal. The S3C2410X integrates four timers with PWM functionality. When PWM is needed, the PWM control register can be adjusted via the driver to control the I/O port output of pulses of equal amplitude but different widths to represent the ideal waveform. Conclusion The above design and system programming, after a series of field tests, met the functional design requirements. The system operates well and has successfully completed testing tasks in ADSL/ADSL2/ADSL2+ networks. Its excellent performance has led to successful industrialization, and it is now partially applied in the business operations of major broadband operators.