1. What Is Hardware?
In other words, hardware is physical, at least something you can see and touch. It is a material carrier, the material basis. Broadly speaking, humans live on a material basis, and you can refer to everything you can see as hardware. Of course, in a narrow sense, software and hardware generally refer to the electronic field.
Software code is also written by humans. Familiar languages like C, C++, etc., are translated into assembly language through a compiler, and then assembly language is translated into binary machine language through an assembler. The machine language controls the logic gates to perform corresponding actions. I personally feel that without hardware, software has no meaning of existence; hardware is the foundation of everything, which shows how important hardware design is.
However, software and hardware have clear distinctions, at least the work content differs greatly. According to industry descriptions, hardware belongs to the lower layer (commonly referred to as low-level hardware), while software is referred to as the upper layer (software is further divided into: low-level drivers, upper-level business, and application layers, etc.). If you must give an example to illustrate software and hardware, the best example is a human: hardware refers to the human body, while software refers to human thought.
For people outside the electronic field, it is difficult to understand how computers work, how hardware works, and how software works. Even if you know everything is 0 and 1, if you haven’t done related work, you won’t discover the magic within. You just need to know that software drives hardware to work, and what drives it is electrical signals! The electrical signals received by hardware are divided into 0 and 1, and the response speed of hardware is very fast. How fast? For example, the commonly used baud rate in hardware is 115200 bits per second, which means 115200 0s or 1s in one second. The English letter is 8 bits (as seen in the ASCII table, which is taught in college), meaning it can print 14400 letters in one second. You can blink, and over ten thousand letters will come out. Of course, this is just a figurative example.
But in circuit design, 100kHz is considered a relatively slow rate. For example, the refresh rate of a display image is more than 24 times per second, which the human eye cannot perceive. The data amount of 24 frames is enormous; for example, a 1080p30 format output has a total data volume of 1 second = 1920*1080*12*30 = 746496000 0s or 1s, which is 700 million 0s or 1s.
2. What Is Hardware Design?
Generally speaking, hardware design refers to circuit design. This statement is correct because all your work revolves around circuit design, and the ultimate goal is to produce an excellent circuit that can meet various requirements and withstand various tests. However, what we actually require is a product, not just a single board.
There is an article online that explains well: “Hardware design is based on the Product Requirement Specification (PRS) from the product manager, under the requirements of Cost of Goods Sold (COGS), utilizing mature chip solutions or technologies in the industry, to complete hardware products that meet the following requirements within the specified time:
PRS functions (Function)
Performance (Performance)
Power Supply Design (Power Supply)
Power Consumption (Power Consumption)
Thermal/Cooling (Thermal/Cooling)
Noise (Noise)
Signal Integrity (Signal Integrity)
Electromagnetic Radiation (EMC/EMI)
Safety (Safety)
Component Sourcing (Component Sourcing)
Reliability (Reliability)
Design for Test (DFT)
Design for Manufacture (DFM)
And other hardware products that meet the above requirements (Note: these are products, not development boards). It can be seen that a successful hardware design mainly focuses on functionality, which is only a small part of all processes. When starting work, one might think that completing the circuit design for the board means completing 50% of the work, and that achieving the main functions of the PCB means 80% of the work is done. In reality, this is not the case; achieving the main functions of the PCB means not even 30% of the work is completed. Therefore, whether in terms of time or stages, product hardware design is a long process.
Moreover, when you work on product hardware design in a company, you generally refer to mature solutions. The main functionalities of the CPU are ultimately reliant on the chip manufacturer’s provided reference solutions. Generally speaking, to reduce risks, it is mainly completed by referring to the reference designs of the chip manufacturer, which also provides all materials including device packaging, reference designs, simulation models, PCB references, etc. In today’s world, where chip functionalities are increasingly complex, a chip may have hundreds or thousands of pins. For a new project, there is no time to thoroughly understand each pin and the specifics of each input/output and electrical parameters, especially for high-speed designs like DDR3 interfaces, XAUI interfaces, etc. Generally speaking, the reference designs provided by chip manufacturers are their best solutions after development, verification, and testing. In many cases, you must follow the reference designs; otherwise, hardware may have issues, typically related to signal integrity or EMC issues.”
Some may argue that hardware circuit design cannot be called design; it is merely copying mature circuits. Chip manufacturers are providing increasingly comprehensive services, and combined with the technical accumulation of the company, hardware design engineers can conduct circuit design without much thought. It seems that the value of hardware engineers (HWE) is decreasing, as the core functions or technologies of a product generally reside within the IC or FPGA, and HWE usually lacks the capability to conduct core logic design IC design. If we follow this logic, then software design cannot be considered design either, as it is merely copying mature code. How many software developers do not migrate others’ code? To dig deeper, how many software engineers can freely modify uboot, kernel, without searching for C language syntax, without migrating business programs, or without asking for technical support from chip manufacturers?
Even if everything is mature, I have not found any project that is done quickly during the work process. The same set of circuits and codes may work for mature products, but why do new products face issues? In the end, it still falls on hardware design to resolve.
Regarding the above issues, I have also been confused, always feeling that hardware design is no longer challenging; isn’t it just copying reference designs, akin to assembling a computer? Of course, as project experience increases, especially in my current role involving hardware system-level design, I realize that I previously viewed problems only from the perspective of a schematic design engineer, which was always one-sided. As mentioned earlier, a successful hardware design sees functionality as only a small part; other factors and capabilities depend on how many factors an HWE can consider and how deeply they can delve into them, making them an excellent HWE engineer.
Thus, HWE relies on experience, and for companies, training an HWE is costly. Unlike software, where a code error can be fixed in a few minutes, a mistake in hardware design may require a complete redo, delaying the entire project cycle by three weeks or even more than a month. For example, recently encountering issues with a SENSOR producing poor images, with many bright spots, the hardware circuit cannot be bypassed; it relates to layout and wiring, necessitating a board revision.
A viewpoint that needs clarification is that even if one knows nothing, they can still accomplish tasks, but personally, this will lead to a developmental ceiling. In hardware, it is similar to reference circuits; you can use them without understanding how they work. In software, it is like uboot and kernel; you can use them without comprehending them. However, once you understand, it becomes different. When discussing hardware design, everyone thinks it is just circuit design, which seems simple and not challenging. However, in reality, the lower you go, the more difficult it becomes, the greater the responsibility, and the more inter-departmental communication is required. The more you understand, the easier it is to learn, and the further you can go.
3. What Is Hardware Circuit Design?
As the name suggests, hardware circuit design is the design of circuits, and one must be proficient in using Cadence to draw circuits and view PCBs. In hardware design, circuit design is the most important responsibility of HWE. Circuit design tests the basic design skills of HWE, including understanding and flexible application of various hardware components, such as:
CPU
Resistors, capacitors, inductors,
Diodes, transistors,
Protection devices, interface devices,
Logic chips, logical functions,
Small chips
Power supplies
Since I graduated with a major in EMC, I have a deep understanding of the considerations during design. The thirteen aspects of hardware design we discussed above should all be considered during the design process. Currently, various processes in large companies ensure good inter-departmental collaboration during design.
Every company will have its own hardware circuit design specifications, which one needs to review carefully and apply in practice. Hardware circuit design mainly focuses on circuit design, which involves many aspects, and a separate chapter will discuss the design of circuit modules. Hardware circuit design requires sufficient experience and theoretical knowledge.
4. Hardware Design Development Process
Once the hardware department development process is designated, personnel in the hardware department must strictly follow the development process to complete their work. The hardware department development process mainly consists of the following steps:
1) Market Research
For upcoming projects, market research is necessary.
2) Project Initiation
After completing market research, project initiation work is first required.
3) Overall Hardware Design
After project initiation, overall hardware design is needed.
4) Experimentation of Core Components and Detailed Design of Modules
After completing the overall design, experiments on core components are needed, followed by detailed design plans for modules.
5) Circuit, Program, and Enclosure Design
After completing the experiments on core components and detailed design of modules, circuit, program, and enclosure design are conducted according to project specifications.
6) System Integration Testing
After debugging each module, system integration testing can proceed.
7) Internal Review, Project Acceptance
Once system integration testing is completed, the project can undergo internal review and acceptance.
5. What Is a Hardware Engineer?
A hardware engineer is responsible for the hardware design of the entire product.
5.1. Responsibilities of a Hardware Engineer
First, let’s look at the division of labor in large companies as shown in the diagram below, which illustrates the department and position one occupies.
And the research and development process of a hardware product is illustrated in the diagram below:
All positions within the company are equally important.
Although the importance of each team is the same, the research and development team should be more central in product development. R&D personnel can transition to roles in marketing, testing, supply chain, or quality management; however, it is challenging for personnel in marketing or other roles to switch to R&D. Firstly, R&D has a high threshold, and secondly, R&D work has a broad scope of exposure. Among the entire R&D team, hardware engineers play a leading role.
Generally speaking, when we refer to R&D, it is not limited to software and hardware but encompasses the entire project team, including product managers from almost all departments.
A hardware engineer is an important member of the R&D team, and the R&D team for hardware products can be illustrated in the diagram below:
Of course, the diagram above does not fully represent all aspects; for instance, thermal design is also a crucial part. However, it needs to be clarified that within the entire project R&D team, two individuals interact with everyone: one is the project manager, and the other is the hardware engineer. Hardware engineers need to communicate and coordinate with various R&D personnel, which requires them to have a broad knowledge base and strong coordination skills.
The primary responsibilities of a hardware engineer are illustrated in the diagram below:
Hardware engineers can generally be divided into the following four stages:
Junior Hardware Engineer
Completes parts of stages three and four under the guidance of others; this is achievable for fresh graduates within three months of employment.
Ordinary Hardware Engineer
Independently completes stages three and four; typically achievable after 1 to 2 years of work.
Senior Hardware Engineer
Leads the completion of stages three and four and participates in overall design work of stage two.
Expert Hardware Engineer
Leads the completion of stages one and two.
5.2. Timing Control
As a hardware engineer, one is responsible for the entire product development process. Therefore, precise timing control for each period is essential. Projects will have project cycles; although the project manager controls the timing, the specific operations are still handled by the hardware engineer. Since I am only in stage three, I lack a sense of timing for stages one and two. For projects with normal progress:
Schematic and detailed design plan: 5 weeks, including reference design and schematic review.
PCB layout: 4 weeks, including collaborating with structure, adjusting circuits, or re-selecting components.
Board delivery and waiting for return: 2 weeks; these two weeks are the most relaxed, during which BOM uploading must also be completed. Don’t forget this! Look at your own diagrams!
Return board inspection: 1 week; get your board running, able to burn uboot, and ping the network port. Check for soldering issues. Contact structure for machine assembly and check for structural issues.
Driver debugging: 5 weeks, collaborating to complete all low-level function debugging.
Media version: 2 weeks; this is the first complete machine version after driver debugging, prepared for testing.
Signal testing: 3 weeks, collaborating with signal testing personnel to complete signal testing. Meanwhile, prepare boards for business R&D personnel.
Function testing: 2 weeks, collaborating with function testing personnel to complete environmental testing, static electricity surge testing, and other functional tests, including EMC testing, etc.
Bug fixing wait: 2 weeks, to resolve all bugs that have arisen!
Board modification and delivery: 2 weeks.
…
The specific timing will vary with the complexity of the product; the above is just my general understanding of the timing and cannot be generalized.
5.3. The Essential Work of a Hardware Engineer
Goal: Zero defects in products
Process: Design circuits, fix bugs, communicate across departments.
Ability: Mainly focuses on bug-fixing ability.
Result: One word – busy!!!!
5.4. Basic Qualities and Skills Required for Hardware Engineers
Here is the positioning from the Huawei Hardware Engineer Manual, which looks quite good.
6. What Kind of Personality Should a Hardware Engineer Have?
Communication Skills: Must have logic and a comprehensive mindset to communicate well with personnel from other departments; failing to articulate can lead to arguments!
Gentle Personality: Since you will be communicating with all departments, avoid frowning or commanding; an extreme personality can lead to arguments!
Humble and Cautious: Even if you do not adopt others’ opinions, you should listen and then express your own views and reasons; being obstinate can lead to arguments!
Careful and Attentive: Circuit design requires attention to detail, and bug-fixing must be meticulous because once problems arise, the responsibility lies solely with oneself!
Patience: Whether in communication, bug-fixing, or circuit inspection, patience is essential!
Ask When Unsure: If something is unclear, ask, as product development time is limited; it is not possible to have ample time for research!
Responsibility: Be accountable for circuits, products, and bugs!
Distinguish Priorities: When issues arise, focus on how to solve them rather than who is to blame!
Willingness to Learn: Be helpful to others, eager to learn, and possess solid experience and theoretical knowledge!!!
In summary, the above qualities are essential for a hardware engineer; none can be omitted. Those with extreme personalities are unsuitable for hardware development, or even for any R&D roles. Hence, it is common for hardware engineers to transition into product managers, as this position itself demands high standards; good personality traits along with experience and theoretical knowledge will enable continuous improvement.

Disclaimer:This article is reprinted from the internet, and copyright belongs to the original author. If there are any copyright issues, please contact us in a timely manner. Thank you!