In order to address the challenges of cost and efficiency associated with software updates in industrial remote control equipment, this paper proposes a remote loading method for DSP programs based on Ethernet. This approach is designed around the architecture and boot process of a DSP system using the TMS320C6670 as its core. The method leverages the BOOTP protocol over Ethernet UDP to enable efficient and reliable program loading. Practical implementation has demonstrated that this technique offers flexibility and stability, making it an ideal solution for debugging and updating remote control systems.
With the rapid development of science and technology, network communication and DSP technologies have advanced significantly. Many intelligent instruments and industrial remote control devices now connect to the internet, enabling smart management and control. Among these devices, many are based on DSPs, and their program booting remains a critical issue. Traditionally, program loading was done via hardware emulators, but this method suffers from poor portability and difficulty in maintaining and updating the device’s software. As a result, network-based software updates for DSPs have emerged as a more efficient and practical solution.
This paper introduces the fundamental principles of DSP program loading. Using TI’s multi-core DSP, the TMS320C6670, as an example, we implement a program loading technology based on the Ethernet BOOTP protocol. By utilizing network communication, dynamic program loading is achieved, significantly improving software update efficiency.
The basic principle involves using a traditional PC as the download server and the TMS320C6670-based DSP device as the client. Upon startup, the client lacks any network information and relies on TCP/IP protocols such as IP, UDP, and BOOTP to obtain necessary data. The client first acquires network information through the BOOTP protocol and then retrieves the boot program via UDP packets, which it then executes.
The IP protocol operates at the network layer of the TCP/IP stack, while UDP is a connectionless transport layer protocol. In highly reliable local networks, UDP can be used for efficient data transmission without the overhead of the full TCP/IP stack. The BOOTP protocol enables a diskless machine to obtain essential boot information, including its own IP address, the server's IP address, and the program to be loaded.
When the client starts, it broadcasts a BOOTP request to locate the server. The server responds by finding the corresponding entry in its database based on the client’s MAC address and sending back the required information. Once the server has the client’s IP address, it can respond directly without broadcasting. However, if the server is offline or the network is unstable, the client may need to retransmit the request every three seconds. In cases of multiple responses, the client typically accepts the first one and ignores the rest.
The BOOTP packet format includes several key fields, such as opcode/message type, hardware address type, transaction ID, client IP address, and the boot file name. These elements help in matching requests and responses and ensure proper booting.
Ethernet packets include destination and source MAC addresses, IPv4 headers, and UDP segments. The Ethernet boot package format further details how these components interact during the boot process.
The hardware design utilizes the TMS320C6670 DSP chip, which features a built-in Gigabit network coprocessor. This reduces the need for additional peripheral components, requiring only a physical layer chip. The block diagram illustrates the system configuration.
During the download process, the client configures DIP switches to enter Ethernet boot mode. The RBL (ROM BootLoader) initializes the SerDes, SGMII, and PASS interfaces to receive boot packets. It sends Ethernet request packets every three seconds. On the server side, Wireshark captures these packets, showing the periodic broadcast of BOOTP packets. This setup ensures a stable and reliable remote program loading mechanism.
Box Header
Box Header
HuiZhou Antenk Electronics Co., LTD , https://www.atkconn.com