Application of S3C2410X in Wireless Broadband Communication Network

Publisher:心灵舞者Latest update time:2012-06-29 Source: 21ic Keywords:S3C2410X Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

1 Introduction to Wireless Broadband Communications

Since the IEEE802 working group formulated the 802-11 wireless LAN standard in 1997, wireless broadband communication based on WLAN technology has developed rapidly. In the short six-year development process, WLAN technology has continued to develop and mature, and 802.11b/a/g protocols have been launched. The wireless LAN based on the 802.11b protocol works in the 2.4GHz frequency band and adopts CCK modulation technology. The maximum data transmission rate can reach 11Mbps. The wireless LAN based on the 802.11a protocol works in the 5GHz frequency band and adopts OFDM modulation technology. The data transmission rate can be as high as 54Mbps. The 802.116 protocol combines the advantages of 802.1h and 802.11b, works in the 2.4GHz frequency band, adopts OFDM modulation technology, and has the same rate as the 802.11a standard. In order to solve the compatibility problem of communication equipment between three wireless networks with the same standards. Several companies have provided IEEE802.11a/b/g dual-band multi-mode solutions. The 802.11e and 802.1¨ standards are about to be released. These two standards will respectively solve the two prominent problems of WI-N: QoS and network security. Intel has successfully applied Centrino technology to notebooks, and people can easily access the Internet through wireless broadband through WLAN technology. However, people's application of WLAN technology is not limited to the wireless networking of general PCs or notebooks. The integration of WLAN technology in embedded systems to achieve wireless broadband communication has become a hot spot for future applications. For example, a home wireless network composed of wireless digital set-top boxes, computers, wireless gateways, etc., embedded handheld mobile terminals and industrial control field wireless devices. In recent years, the performance of embedded microprocessors has been greatly improved. Wireless broadband communication modules based on embedded systems can not only realize data transmission, but also meet people's needs for multimedia communication. Here, a microprocessor S3C2410X based on the ARM920T core is used to build an embedded system to complete the function of wireless broadband communication.

2 S3C2410X embedded processor

S3C2410 is a 16/32-bit RISC embedded microprocessor based on the ARM9201\' core recently launched by Samsung Electronics Co., Ltd. of South Korea. This processor is mainly aimed at handheld devices and cost-effective and low-power applications. Figure 1 is the structural block diagram of ABN1920T, and Figure 2 is the functional block diagram of the resources integrated outside the core of S3C2410X [1].

The ARM920T core consists of three parts: ARM9TDMI, memory management unit MMU and cache. Among them, MMU can manage virtual memory, and the cache consists of independent 16KB address and 16KB data cache. ARM920T has two internal coprocessors: CPl4 and CPl5. CPl4 is used for debugging control, and CPl5 is used for storage system control and test control. S3C2410X integrates an LCD controller (supports STN and TFT LCD screens with touch screens), SDRAM controller, 3-channel UABT, 4-channel DMA, 4 timers with PWM function and an internal clock, and 8-channel 10-bit ADC. S3C2410 also has many rich external interfaces, such as touch screen interface, I2C bus interface, male bus interface, two USB host interfaces, one USB device interface, two SPI interfaces, SD interface and MMC card interface. In terms of clock, S3C2410X also has outstanding features. The chip integrates an RTC with calendar function and a chip clock generator with PLL (MPLL and UPLL). MPLL generates the master clock, which can make the processor work at a maximum frequency of 203MHz. This working frequency enables the processor to easily run WinCE, Linux and other operating systems and perform more complex information processing. UPLL generates the clock to realize the master-slave USB function.

S3C2410X divides the system's storage space into 8 banks, each bank is 128M bytes, a total of 1G bytes. The starting addresses of bsnk0 to bank5 are fixed and are used for ROM or SRAM. Bank6 and bank7 are used for ROM, SRAM or SDRAM. These two banks are programmable and have the same size. The starting address of bank7 is the ending address of bank6, which is flexible and variable. The access cycle of all memory blocks is programmable, and the external Wait extends the access cycle. S3C2410X uses 8 general chip select lines nGCS[7:0] to select 8 bank areas. [page]

S3C2410X supports NAND flash Boot 10ad. NAND flash has the characteristics of large capacity and more competitive price than NOR flash. The system uses NAND flash and SDRAM combination to obtain very high cost performance. S3C2410X has three boot modes, which are selected by OM[l:0] pin: 00, the processor boots from NAND flash; 01, boots from 16-bit wide ROM; 10, boots from 32-bit wide ROM. Users put the boofload code and operating system image in the external NAND flash and use NAND flash boot. When the processor is powered on and reset, the bootload code is automatically loaded into the internal 4KB SRAM (the SRAM is located at the starting address space 0x00000000) through the built-in NAND flash access control interface and runs. The bootoad program running in the boot SRAM loads the operating system image into SDRAM, and then the operating system can run in SDRAM. After the boot is completed, the 4KB boot SRAM can be used for other purposes. If booted from other methods, the boot ROM will be located at the starting address space Ox00000000 in the memory, and the processor will run the boot program directly on the ROM. For example, the 4KB boot SRAM is located at the memory address 0x40000000.

S3C2410X uses independent power supply for each component in the chip: the core is powered by 1.8V; the memory unit is powered by 3.3V independently. For general $DRAM, 3.3V can be used; for mobile SDRAM, VDD can be 1.8/2.5V, VDDQ can be 3.0/3.3V; I/O uses independent 3.3V power supply [1].

Figure 2

3 System hardware platform

An embedded system platform is constructed by using the excellent core performance and rich external interfaces of S3C2410X for embedded wireless broadband communication. Figure 3 is the hardware block diagram of the system.

In this embedded hardware platform, the main CPU is S3C2410X from SAMSUNG. The NAND flash memory used as boot is SmartMedia card from SAMSUNG. Depending on the capacity requirements in the application, K9S1208VOM with a capacity of 64MB or K9D1G08 with a capacity of 128MB can be selected.

SmartMedia card provides a very high cost-effectiveness for large-capacity solid-state storage. It is automatically programmed according to pages, each page size is 528 bytes, and the typical programming time is 2001.ts; erasure is performed according to blocks, each block size is 16K bytes, and the typical erasure time is 2ms. It takes 50ns to read a single data in a page. SmartMedia card has only 22 pins in total, 8 I/0 lines, read and write control lines and power lines. The I/0 port is a multiplexed port for address, command input and data output input. SmartMedia card also provides ECC error correction code to realize bad block detection and real-time mapping, so it has up to 100,000 programming/erasing cycles and data retention for up to 10 years. S3C2410X has a special NAND flash memory interface, so SmartMedia card is directly connected to this interface in hardware. In this platform, SmartMedia card can be used to load operating system images and large-capacity data storage.

SDRAM is used to run the operating system and cache various data. Products from manufacturers such as Samsung and Hyundai can be used. Here, K4S561632C from SAMSUNG is used. It is a 4Mx16bitx4bank synchronous DRAM with a capacity of 32MB. Two K4S561632Cs are used to achieve bit expansion, making the data bus width 32bit and the total capacity 64MB. Its address space is mapped to bank6 of S3C2410.

NOR FLASH uses AMD's AM29LV800B, with a capacity of 1MB. Its operating voltage can be between 2.7V and 3.6V, and its access time is 70ns. It can be used as boot RON[Flash. Unlike other Flash, it has a flexible page structure, one 16K byte page, two 8K byte pages, one 32K byte page and L5 64K byte pages. As for its read, write and erase operations, it is no different from general linear flash. Here, AMD flash is mainly used for early debugging and downloading of operating systems.

Because S3C2410X itself does not have a PCMCIA interface, in order to connect a wireless network card with a PCMCIA interface, a dedicated chip must be used as a transfer. Here, the [SA-TO-PC-Card controller produced by Intel - PD6710 is used. PD6710 can control a PC-Card slot and is compatible with PC card standards, PCMCDk2.1 and JEIDA4,1. PD6710 uses effective power and mixed voltage technology to reduce system power consumption. At the same time, the chip has soft control suspend mode and hardware super suspend mode to achieve low power control. The chip uses a register group compatible with 82365SL, with 5 programmable storage areas and two programmable I/O areas. The PD6710 uses an 8-bit or 16-bit ISA-like system bus (a 16-bit system bus is used here) for connecting to the S3C2410X, and an 8-bit or 16-bit PC card bus interface for connecting to the wireless network card. The wireless network card is the 802.11b standard, which is the most widely used standard, and all major companies provide ready-made drivers for their products. With the widespread use of USB interfaces, there are already wireless network cards with USB interfaces in the market. S3C2410X integrates a USB host interface and can be directly connected to wireless network cards with USB interfaces. If you want to use a wireless network card with a CF card interface, you only need to find a CF-PCMCIA adapter to complete the transfer. [page]

In this platform, the CS8900 network card chip is used to achieve the connection with Ethernet, and the FPGA uses the SpartanXL series products of Xilinx. According to the functional requirements, the XCS40XL model can be selected to make the number of available gates up to 40K. The RAM in the SpartanXL series devices can be used to realize high-speed FIFO or use its flexible programmability to serve as a general interface between this platform and other external functional modules. For example, when multimedia data processing is required, a DSP can be added to complete it, so that S3C2410X can realize high-speed FIFO and DSP data exchange through FPGA.

As for the design of the human-machine interface, the author uses a 3.5-inch TFT LCD with a touch screen from SAMSUNG. The input is a soft keyboard commonly used in PDAs.

4 Software platform and system development

S3C2410X integrates a memory management unit, so it can be embedded in a variety of mainstream operating systems, including Windo~\'s CE, Linux, VxWorks, etc. In this system, Windows CE embedded operating system is selected. For application developers who are already familiar with the Windows environment, Windows CE provides a friendly and familiar development environment? Such as Microsoft Win32APl, ActiveX controls, message queues, COM interfaces, ATL and MFC, and many successful Windows programs can be ported to Windows CE, greatly improving development efficiency. Windows CE embedded operating system can provide users with a familiar and easy-to-operate GUI.

The WinCE development platform consists of two parts: Platform Builder and software development kit SDK (Embedded Visual C++ and Embedded Visual Basic). Platform Builder is used to customize the operating system, while SDK is used to develop applications. The entire Windows CE system consists of three parts: application, WinCE components and OEM layer. The OEM layer interface includes OEM adaptation layer, local driver and stream interface driver. The steps to customize the operating system are as follows: (1) Write the board support package BSP (including OEM adaptation layer OAL and hardware driver); (2) Cut and configure the various components of the operating system and modify the corresponding configuration files; (3) Compile Kemal, components and BSP to generate the operating system image file; (4) Download the image file to the target device for debugging. After customizing the operating system, export the SDK in PlatformBuilder and you can develop applications for the platform in the Embedded Visual C++ or Embedded Visual Basic environment [2].

After the operating system is customized, it needs to be downloaded to the target device. The commonly used methods are as follows: download through the JTAC interface, EBOOT download, USB download, and serial port download. The latter three download methods require that the corresponding monitoring program be downloaded to nash through the JTAC interface first, and then the CPU starts from Flash. Because the S3C2410X integrates a USB interface, it is particularly convenient to download through USB in the absence of Ethernet, and the download speed is much faster than serial port download. In actual system development, the USB monitoring program is programmed into the AMD flash memory using the JTAC debugger, and then the S3C2410X boots from the AMD flash memory. The host runs the DNW program provided by SAMSUNG, uses the serial port for information exchange, downloads the BootLoader and operating system image to SDRAM through USB, and then downloads a NAND flash memory write program to SDRAM through USB and runs it, writing the BootLoader and operating system image to SDRAM.

The system image is written to the SmartMedia card. After the download is complete, change the boot method to let the S3C2410X boot from the SmartMedia card, and the operating system can run on the platform.

Once the operating system is loaded, the wireless network card driver and corresponding applications can be installed through Microsoft ActiveSvnc. In order to avoid reinstalling the wireless network card driver after power failure, the driver can be directly packaged in the operating system. In order to avoid resetting the IP address every time the computer is turned on, a block device is used for permanent registry storage. In the specific implementation, WinCE provides the RegCopyFile function to save the registry information and the RegRestoreFile function to load the registry information. If there is a DHCP server in a wireless broadband network, then this embedded system can obtain an IP address dynamically through DHCP, solving the problem of setting the IP address without a human-machine interface, because WinCE integrates the TCP/IP protocol! Therefore, various wireless network applications can be developed directly using the Socket interface provided by the operating system [3].

5 Applications

The wireless broadband communication module based on S3C2410X can be widely used in various mobile terminals in WLAN network to realize data and multimedia transmission. Figure 4 is a schematic diagram of the application of this module in WLAN. AP is a wireless access point, and MT is a field wireless communication mobile terminal based on S3C2410X. They communicate wirelessly through 802.11b protocol. DS is a distributed system, and AP communicates through it. Generally, AP is connected to a wired network, so that MT can not only communicate with each other, but also realize data transmission with the wired network.

This embedded module integrates rich interfaces, which can not only realize the seamless connection between wired network and wireless network, but also realize wireless monitoring of images if a CCD camera and a DSP processing module are added. At present, this module has been applied in field bus wireless communication.

Keywords:S3C2410X Reference address:Application of S3C2410X in Wireless Broadband Communication Network

Previous article:Interface Design between S3C44B0X and C54X DSP
Next article:Red light therapy device control system based on STM32

Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号