FLASH the TMS320C6x DSP Research and Implementation guide
flash memory in the EPROM and EEPROM is developed on the basis of a non-volatile memory, in the brown-out conditions to ensure that data loss can and can not leave the circuit boards or equipment, according to the implementation of erasure and re-programming operation. Because of its simple structure, the maintenance of facilities, access to fast and adaptable to the environment, anti-vibration performance and the advantages of very suitable for embedded systems design and development, and has become a popular digital signal processing system, a basic configuration.
In many dsp applications, power system after the user program needs to be guided from the FLASH memory to run high-speed data storage. This requires use of JTAG interface for debugging an application through add startup code, the generated object file format conversion to enable them to carry out online programmer, documents will be converted to use online program FLASH programmer to programmer in FLASH.
This article will present data to guide the process of moving several methods, including the way data move QDMA methods, CPU direct method of data removal, as well as software-based removal method of data flow. Comparison tests to demonstrate the way the QDMA and software-based data flow method has the advantages of moving. And, according to COFF file format, the preparation of the TI's HEX60 than a more direct conversion tool, which simplifies document conversion steps.
1 of the FLASH ROM application guide
When the DSP application guide from the FLASH ROM, the target board has a self-guided procedures. For example, TMS320C6x1x series, the target board will automatically boot when the system FLASH ROM will be the first 1K of space to copy the contents of the memory chip from the beginning of the address space 0x00, 0x00 Address from start to run. Memory because of the need to move running applications to scale, such as initialization paragraph is often more than 1K size, in order to power on the system to automatically guide the application is running, guidance on the need 1K code including a custom guide code additional code required to initialize and copy the data segment into memory to run.
FLASH ROM data will be copied to IRAM (internal RAM), there are two ways: one is direct memory access (DMA), it is the CPU in the absence of involvement of the complete mapping of the data storage move; the other is move the data directly using CPU. The QDMA is a fast DMA, does not require CPU to participate in data transmission, only to pass on the basis of the information content of the corresponding QDMA register settings can be. Move with CPU data directly in two ways: one is the way water is free, and the other is the way the use of software pipelining.
In the compilation of C6000, the different types of instructions have different implementation of the number of beats. The implementation of the beat in the number of instructions equal to the level required in the implementation of the clock cycle. Used for the storage to read instructions ldw command stw, respectively, from storage to the general register and the data move from the general-purpose registers to move data from memory. Ldw need to read instructions for the implementation of the steps: calculating the address, the address sent to memory, memory access, data sent to CPU, the data write register, that is, the implementation of the beat for 5; and storage instructions stw, the implementation of the beat for 3, need to implement the steps for the first three steps of ldw. Table 1 gives the data before and after removal of software pipelining scheduling interval of the comparison table.
Can be seen from Table 1, FLASH ROM to a move to the IRAM data, it is necessary to read from the FLASH ROM data to the general register (ldw), from the general register will read the IRAM (command stw). Optimization of software pipelining in the past, the need for at least eight instruction cycle. After optimization of the use of software pipelining, in accordance with the characteristics of command, first from 0 to No. 4 this five consecutive instruction cycle can be added to the general register number 5, from 5 to 9 which further five instruction cycles to read the order of General Register 5 of the above-mentioned number of read out to the IRAM. Thus, in 10 instruction cycles, to be completed by the removal of five data, so move down to the two-cycle instruction cycle to improve the operating efficiency of the CPU.
2 QDMA ways and means CPU direct comparison of data move
As the front of the CPU has a direct comparison of two methods of data removal, the following methods and QDMA focused on the CPU based on the water move the way a direct comparison of data to test. The test is carried out in the TMS320C6711 DSP, using the FLASH model SST29LE010. First of all, according to the application programmer to be. Map file to identify the initialization code required to move the size of paragraphs, of which. Text paragraphs 0x8c40 byte,. Const paragraphs 0byte,. Cinit paragraphs 0x24c byte, total removal of 0x23A3 32bit words. QDMA then the use of water ways and means CPU read from the FLASH word 0x23A3 months to the 32bit chip memory. The results of measurement of time as shown in table 2.
Table 2 two way comparison of data move
| Visit to the speed of equipment |
Move the way
| Read setup: 150ns |
Read strobe: 630ns
Read hold: 3ns
| Read setup: 0ns |
Read strobe: 120ns
Read hold: 0ns
|CPU pipeline removal||15573||2390s|
Move size: SIZE = 0 small 3A3 WORD
By the test results we can see that the CPU does not require direct involvement in the way data move the QDMA move more water than the superiority of CPU, removal is fast and simple set up. But the CPU utilization of the water moving the TMS320C6000 DSP compilation of the characteristics of a command-depth analysis of the software pipelining approach, to a large extent to increased CPU utilization, broaden the programming ideas, but also be a good option.
3 the use of power to guide the ISP procedures FLASH programming
3.1 file format conversion
Completed the boot, including. Cmd files in the memory section after the installation and connection settings, using TI's programming tools CCS (Code Composer Studio) to connect the compiler to generate object file (. Out files). However, the. Out the file format is COFF File Format, FLASH does not support this format, so can not directly write to FLASH, it is essential to the. Out files conversion, extract the data part of the formation of data files. Finally, the use of programmer conversion process will have a good programmer data files in the FLASH ROM.
There are two ways COFF format can be converted into data files. One is the use of TI's HEX6x.exe tools, will be generated. Out files into. Hex output file. Since the tool is available to HEX6x.exe programming EPROM's, EPROM programmer with direct programmer. Hex file. FLASH ROM for the in-system programming is generated. Hex file can not be directly used for some procedures have to be prepared. Hex head to remove the files, data files isolated, and finally to the programmer by the FLASH program will eventually programmer to the data files in the FLASH ROM. TI can not the company's tools, and under the COFF file format to extract the data directly. Generate a data file, and then to the FLASH ROM in the programmer.
COFF file is a vector used in the organization can be very flexible arrangement, and the target system code memory. Understanding of COFF file structure, not only to clear. Cmd principle the preparation of documents, and learn to initialize and the distinction between non-initialization paragraph, but also can convert documents to reduce the conversion steps. COFF file format as shown in table 3.
To extract the data that is Taiwan part of Table 3 of paragraph is part of the Row data, which is executable code and initialization code part. First of all, the information in accordance with the first document (document first describes the overall situation of the entire file of information) was the middle of the number of documents, and then head in accordance with paragraph (Section header) information to determine whether the above paragraph for the first initialization. Paragraph because the non-initialized in the program to run until the middle of the distribution, if the first paragraph for the initialization, the initialization section to obtain the location address these paragraphs are from low to high copy of the order of the output file, then by the programmer to the data files. Its processes as shown in Figure 1.
3.2 programmer using ISP technology FLASH
Procedures will be in front of programmer is responsible for the data files generated into the FLASH ROM, using ISP technology, you do not need other programming equipment and the additional programming power program programmer programmer directly through it. Programmer must, in accordance with the procedures used to prepare models FLASH. To SST29LE010 as an example, the software data protection and page write, chip erase, chip testing, such as software models have different instructions and timing, as shown in table 4, the need to inspect the types of chip manuals, programmer in accordance with the completion of the procedures manual .
Table 4 SST29LE010 memory instruction sheet
|Data protection software and page write||5555||AA||2AAA||55||5555||A0||Address||Data|
|Models of software testing chip||5555||AA||2AAA||55||5555||90|
In front of the two nodes, combined with the characteristics of TMS320C6x family of DSP to introduce several types of power to guide the process of moving data, especially the recommendation and comparison of the thinking of software-based CPU data flow and move the way QDMA also introduced the ISP technology guiding power of the basic steps of FLASH programming, and how the COFF object file format will be converted into data files, the programmer for FLASH programmer procedures.
Guide the process from the preparation process will lead to convert the data files for the programmer and then to the final FLASH ROM programmer, it is more cumbersome process. The methods presented in this paper to guide the procedures for the preparation of the ideas to broaden and simplify document conversion steps. Of the actual circuit debugging of the TMS320C6711 DSP experiment to prove that the above method is simple.
Digital Signal Processing Articles
- Based on virtual reality technology, bicycle Roaming System Research and Implementation of
- H. 264 video decoder implementation on the C6416 DSP
- TMS320C6205-based signal acquisition and processing system
- TMS320C6205-based signal acquisition and processing system
- DSP chip in ultrasonic drilling fluid leak detector of
- DSP-based non-invasive variceal pressure measurement system
- Simple DSP-based digital frequency meter
- DSP-controlled power line communications analog front-end interface design
- Multi-DSP system, radar polarized signals collection and two pairs of IQ Division
- CPLD in the DSP System Design
- TMS320VC5416 Parallel bootstrap realization of the ingenious
- Hierarchical structure of high-speed digital signal processing system design and application of
- FLASH the TMS320C6x DSP Research and Implementation guide
- TMS320C6202-based compound of active and passive guided the development of signal processing systems
- DNP3.0 in DSP-based realization of the FTU
- Based on the TMS320C6000 DSP Viterbi optimal design procedure
- TMS320LF2407A in mixed voltage system design
- DSP-based hardware and software online program design and implementation of
- ADSP21161 than phase-based ranging radar tracking control system design
- TMS320C6701-based control of multi-chip AD9852 Interface Circuit Design
Can't Find What You're Looking For?
Rating: Not yet rated