DSP program loading technology based on Ethernet BOOTP protocol

In order to solve the cost and efficiency problems brought by the software update of industrial remote control equipment, based on the structure and program startup of the DSP system with TMS320C6670 as the core, the remote loading method of DSP program based on Ethernet is proposed. The method is mainly based on the broadcast and Ethernet UDP protocol implementation of the BOOTP protocol. Practice shows that the loading technology is flexible and reliable, which facilitates the debugging and updating of the remote control system.

introduction

With the continuous advancement of science and technology, network communication technology and DSP technology are developing rapidly. Many intelligent instrumentation and industrial remote control devices can access the Internet to realize networked and intelligent management and control. Among these devices, there are many DSP-based devices, and the booting of the program code of these devices is an important issue. The traditional DSP device program loading method is completed by a hardware emulator, but in practical industrial applications, this method has the disadvantages that the emulator is not portable and the device software is inconvenient to maintain and update. Therefore, network-based DSP software updates are a good solution.

In this paper, the basic principle of DSP program loading is introduced. Taking TI's multi-core DSP TMS320C6670 as an example, a DSP program loading technology based on Ethernet BOOTP protocol is realized. The dynamic loading of DSP program is realized by network communication, and the software update efficiency is improved.

1 principle

Here, the traditional PC is used as the download server. The DSP device with TMS320C6670 as the core is used as the client. After the client is started, it does not know any network information. It needs to be provided by the related protocols of TCP/IP protocol, such as IP, UDP and BOOTP. Realize the dissemination of information. The client obtains the relevant network information required by the BOOTP protocol, and then obtains the boot program to be executed through the UDP protocol package, and runs it.

1.1 IP protocol and UDP protocol

IP (Internet Protocol) is a network layer protocol in TCP/IP. UDP (User Datagram Protocol) is a connectionless protocol of the TC corpse/IP transport layer. Since the complete TCP/IP protocol will occupy a large amount of system resources, in a highly reliable local area network, data packets can be transmitted using the UDP protocol.

1.2 BOOTP Agreement

When the client starts, you need to obtain three kinds of information from the network: the IP address of the machine, the IP address of the download server, and the running program to be downloaded.

BOOTP (BOOTstrapping Protocol) can get all the information needed for booting for a diskless machine. Before sending a BOOTP request, the BOOTP client neither knows its own IP address nor the IP address of the server, and BOOTP must send the request by broadcast. After receiving the request, the BOOTP server finds the corresponding response entry from the download database according to the Ethernet address, and constitutes a BOOTP response, and then responds. For the server, the IP address of the client is already known at this time, and it can be answered directly without broadcasting.

BOOTP message transaction is a request, responding to a round trip, the transaction is successful or not only the customer knows, so when the server is shut down or the network is not working properly, it will lead to transaction error or message loss, the customer needs to retransmit (every 3 s Pass once). When there are multiple responses (multi-server response or BOOTP response delay), a flag can be set, the client only accepts and processes the first response, and the rest are discarded.

1.3 BOOTP package format

The BOOTP packet format is shown in Figure 1.

Packet opcode/message type: 1=BOOTREQUEST (boot request), 2=BOOTREPLY (boot answer). Hardware address type: 1 = 10M Ethernet. Hardware address length: 6 is 10M Ethernet. Jump points: Used for cross-network booting, used by routers. Transaction ID: A random number used to match reference requests and responses. Number of seconds used by the client to boot: The number of seconds elapsed by the client after the client boots. Client IP Address: The BOOTP client sets this to 0, requiring the server to answer the client's IP address. Your IP address: BOOTP customers set this to 0. Server IP Address: Returned by the server in the boot response. Gateway IP address: Used when booting across networks. Client Hardware Address: The client populates the local MAC address. Server hostname: Used when booting across networks. Boot file name: BOOTP request is set to 0, the server will respond with a specific run program path name populated by BOOTPTAB. Standard Option Field: This field is used by BOOTP customers to obtain a series of standard options from the server, such as network management IP address, gateway IP address, DNS domain name server IP address, client name, and so on.

1.4 Ethernet packet format

The format of the Ethernet request packet is shown in Figure 2.

The DIX Ethernet contains the destination MAC address (generally FF: FF: FF: FF: FF: FF) and the source MAC address (that is, the device's own MAC address). IPV4 contains the version number, length, protocol, checksum, and source address IP and destination address IP (where the IP address is 0.0.0.0). UDP includes source port, destination port, length, and checksum.

The Ethernet boot package format is shown in Figure 3.

2 hardware design

The system uses a multi-core TMS320C6670 DSP chip as the main control chip, which has a built-in Gigabit network coprocessor, so the peripheral circuit only needs to increase the physical layer chip. The block diagram is shown in Figure 4.

3 download implementation process

Client: When the hardware is reset, before the RESET signal rises, configure the DIP switches SW3, SW4, SW5, and SW6 on the development board to determine that the TMS320C6670 chip is the Ethernet boot mode. RBL (ROM BootLoader) configures SerDes, SGMII and PASS are ready to receive boot packets from the Ethernet interface. The RBL configuration send channel sends an Ethernet request packet (sent every 3 s).

The server is the PC end using Wireshark software as the packet capture software, and the Ethernet request packet is broadcast to the server. See Figure 5, which shows that the BOO TP packet is broadcast once every 3 s interval.

Damping and Absorption Capacitors

MKP capacitor


The products have a high share in China, and also used for INDUCTOTHERM,ELECTROTHERM,MEGATHERM,PILLAR,SUPERHEAT,ABP , Mitsubishi electric, Fuji, the United States Yingda equipment and other manufacturers of induction Furnace.


MKP Capacitor,MKP Capacitor 0.15UF,MKP Capacitor 20UF,MKP Capacitors 0.22UF

YANGZHOU POSITIONING TECH CO., LTD. , https://www.cnfudatech.com