Traditional Culture Encyclopedia - Traditional stories - How to develop digital signal processing engineers?

How to develop digital signal processing engineers?

Embedded engineer with poor user expression in Zhihu.

60 people agreed

Talk about my understanding.

(a) written in the front

When I was a sophomore, I taught myself TI's digital signal processor and did several small projects, but there was always a bottleneck. I thought the water was too deep here, and I wanted to engage in DSP development for life. So I applied for a school's navigation college and chose a tutor for underwater communication technology. After so many years, I also have my own understanding. There are people in the industry living all over the world more or less, so I would like to give some suggestions to the subject, hoping to help.

(2) Is there really a "DSP engineer"?

First of all, it should be clear that digital signal processing is a very, very basic subject. As for the name of digital signal processing engineer, I personally think it is not appropriate and the scope is too wide. For the time being, it should be understood as a person who uses digital signal processing knowledge to solve problems. Digital signal processing has to be re-studied (supplemented with knowledge) at the postgraduate level. Based on adaptive signal and random signal, wavelet, Hilbert and other processing methods are added. In addition, you will find that calculus in college can no longer meet the needs of subsequent study, so you should continue to study mathematics. Here, you will find that the learning of digital signal processing (undergraduate stage) is only the tip of the iceberg, because it is really simple to learn deterministic signals and linear time-invariant systems in undergraduate stage, but there are not so many uncertainties and coincidences in real life, especially in the communication industry where the subject is located. Therefore, I personally feel that as a "digital signal processing engineer", it is definitely unqualified to limit his theory to determining signals and linear time-invariant systems! It is recommended here to take the postgraduate entrance examination and get into a good school. The purpose of postgraduate entrance examination is very clear. First, you can learn math English well through postgraduate entrance examination. Second, you can continue your studies. After all, the mentor is an insider, and the mentor's network helps you to further screen the people you contact. Third, you can continue to study and really lay a good foundation in this area. Some people say that I can work in the society and then study by myself. What I want to say is that self-study is indeed an ability, but can you guarantee that you will find the job you want to do? Your development direction must conform to the development direction of the company. What are the independent ingredients here? And society is more impetuous than campus, which will interfere with your efficiency more or less. If you really like this industry, is it every two years? Besides, truly capable people will not be stumped by exams. As a matter of fact, I decided to quit after working for a year.

With a theoretical foundation, you can choose a direction on this basis, and each direction has its own supporting theory. For example, image processing, video processing, audio processing, biomedicine or underwater communication are all based on the theoretical basis of digital signal processing, and then their own knowledge is derived. So I don't think it should be called a digital signal processing engineer, but an engineer in a specific direction, such as an image processing engineer and an audio processing engineer. The subject can be studied in a specific direction, and each direction has high research value. Even if you apply for a job in a company, the salary is very high.

(3) Digital signal processing and digital signal processor are both called DSP.

Someone mentioned embedded DSP chip, not to be confused with digital signal processing. It is not a patent of digital signal processing. Although they are all called digital signal processors, they have both origins and differences. DSP chip belongs to the embedded category, and its driving development mode and thinking are the same as those of general single chip microcomputer. However, it is suitable for arithmetic signal processing in hardware structure and provides more humanized and convenient engineering functions in peripherals. Generally, you can see that DSP devices are also widely used in the control field to run algorithms in the control field. If you really want to be a so-called digital signal processing engineer, the main job you should do is professional algorithms oriented to professional fields. Configuring DSP devices should be something that embedded engineers should do, but then again, if you want to deal with this DSP processor frequently, you should also be proficient. Similarly, FPGA is the same. When DSP can't meet the engineering requirements, FPGA can solve it. As the solution of this scheme, the unique parallel mechanism of FPGA has great advantages (for example, I won't drag on professional vocabulary, but in layman's terms, we are doing underwater wireless communication, the modulation signal is made by DSP, and the carrier wave has harmonic interference, which can be completely ignored on land. However, underwater, we need to consider the threat of interference signals in this frequency band to some marine life, so we need to purify the carrier signal, that is, use digital methods, but the calculation of the algorithm increases, and the speed can not go up, which leads to communication failure, so we changed to an FPGA. Don't think that FPGA is better than DSP, but it is not. Use a mousetrap to catch mice, use a kitchen knife to cut vegetables, and use whatever you want. However, the principle of the algorithm in DSP and FPGA is the same, but the language needs to be changed, and the core of the algorithm remains unchanged. As a digital signal processing engineer, shouldn't you master the executors or carriers of these algorithms? You can't say that my algorithm works well, and it will be OK after being verified by MATLAB. The actual situation may not be so smooth after transplantation. You need to consider the instruction cycle, memory, timing and so on of these actuators, or translate them in their special language, so you have to learn more than expected. You have martial arts, martial arts, and the same moves. You can use a knife or sword. Knives and swords are just tools. DSP and FPGA MCU are weapons. To be a Jianghu person, you must know how to use a sword. As the saying goes, people are not easily distinguished before they are punished. You need to invest a lot. Maybe your friend started saving money to buy a house, put on big-name clothes and buy expensive cosmetics for female tickets after graduation. When you changed your mobile phone for thousands of dollars, you were still so poor. Don't lose heart. You will be a faithful wife.

Just want to emphasize that you need kung fu in it, and kung fu is time, energy, money and your heart. Fast can be fast, so can you. There is no difference at all. Signal processing gives you this chance, because no one can be fast.

(4) Learning suggestions

As for suggestions on topics, I suggest that it is very important to learn math well. As you can see when you start the course of signal processing, you need to be patient to understand all the mathematical derivation and proof in this process, so you need a good mathematical foundation. Only by establishing this kind of thinking can you really understand this subject, otherwise you will recite formulas and it will be very painful for you to do problems. It is not difficult for you to have so many theorems, but to solve problems, because these seemingly complicated theorems make the problems simple. As long as you read it carefully, you will find that these theorems are really amazing. In addition, it is recommended to take postgraduate entrance examinations. As the saying goes, the master leads the door and the practice is in the individual. If we want to enter this door, we must have such a relationship. We should keep in touch with people in this industry. You can tell at a glance what software they are using and how much they have learned. You also know where you are and what you should learn. It can be said that when I graduated with a master's degree, I worked as an undergraduate for two years. Maybe I just graduated with a master's degree and lack some workplace experience. I still need to adapt to the social environment rather than the undergraduate course, but will it be the same after ten years? Who cares about the extra two years of experience and who laid the foundation? Don't underestimate these three years. You can only build a tall building if you lay a good foundation at a young age, so don't worry. If the subject has no plans to take the postgraduate entrance examination, the undergraduate course also has a way out. At present, signal processing technology is developing continuously, but only those are classic. Algorithms commonly used in general engineering are packaged into function libraries by downstream companies (Texas Instruments, ADI, etc.). ), and their universality is friendly. Some netizens' open source algorithms can also be obtained on the website, so it is no problem to understand the functions and applicable input and output of these classical algorithms in general projects. For example, the basic algorithms of DSP, digital image processing and audio processing of Texas Instruments can be directly transferred into the library, and the floating-point and fixed-point libraries are separated. The development process does not need to know how the algorithm is implemented at all, just pay attention to memory allocation and library configuration. I think that if you can understand the function, applicable conditions, input and output of signal processing after graduation, it will be enough to find a good job, and then you will make great progress through study and engineering expansion.

(5) Educational suggestions

In addition, I would like to add that the recruitment of FAE by TI Company is already a master's degree, let alone research and development. If you want to go to a big company without a degree, you can't get in. The same five years of work experience, the gold content must be different. A few years before graduation, you can kneel in a big company. With the support of big company background, you will be very open in this industry in the future. In a small company, you often hear that this manager used to work in XXX Niubi Company (probably a small role in soy sauce). So, don't be a frog in the well, just look at the present, look at the long term and make a good plan. People with an annual salary of 20W are considered as low-income people in the signal processing industry. Some people generally believe that it costs money to earn money after graduating from undergraduate courses and spend money on master's degrees. Please correct this mentality and don't make money to study for a master's degree. After undergraduate education, especially engineering, you can make money. As long as you are strong enough to do private work, a project will earn tens of thousands of dollars, plus hard scholarships and tutoring fees, as well as symbolic teaching assistant fees. How can the income be less? It's just that people engaged in this kind of industry are very low-key and don't care much about the quality of food, clothing, housing and transportation, but this does not mean "poverty".

There are many roads suitable for undergraduate graduates, and even choosing these roads is more advantageous than taking this road for graduate students. For example, in CS industry, you can get started quickly and earn a lot, especially those who can work in an outsourcing company for several years, which is more popular. It is purely a fight for work experience and work intensity. Finally, it can be concluded that if this industry needs a strong theoretical background, postgraduate entrance examination is the most suitable, and if this industry is highly engineering, it is suitable for early work. For example, communication major, control major, visual processing major, artificial intelligence and so on all need strong theoretical support and study, so postgraduate entrance examination is the most suitable; For example, developing software such as C++ and Java is very practical and engineering. The earlier you start, the more projects you do, the better. Off-topic, I suggest that undergraduate graduates consider the road of C++. This old major may not be as good as today's Java and Android, but if they can become hardcore players of multithreading programming within ten years, it is still very promising.

To sum up, in the signal processing industry, graduate students have advantages in background, platform and foundation. So I suggest going further and studying for a master's degree or even a doctor's degree as the starting point of my career path.