Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
In a simple design , the software definition , like the hardware definition may describe the software for a sing board | usually require extensive documentation detailing every function that the software performs. In a simple design the software definition like the hardware definition may describe the software for a single board. In a more complex design where different software engineers work on different parts of the code for a single board there may be a software definition for each individual engineer s code. In a complex multiprocessor system there may be an overall software document which I consider to be part of the system engineering specification. The software specifications should include the following A statement of the requirements including the requirements definition engineering specifications and hardware definition as appropriate. The communication protocol to any other software whether to another processor or to another piece of the software for this processor. This should include descriptions of buffer interface mechanisms command response protocols semaphore definitions and in short anything to which the complementing code needs to talk. A description of how the design was implemented using flowcharts pseudocode or other methods. Chapter 3 describes these in more detail. Since software can be broken down more flexibly than hardware it is difficult to pin down a single software definition format that works for everybody all the time. The key is to define any interfaces that other engineers need to know about and identify the design details that engineers in the future might need to know. This discussion assumes that the hardware and software are fairly independent. In a simple system like the pool timer that is a good model. The hardware is designed the software is written around that hardware and that is that. While the actual design implementations may proceed in parallel the software engineer basically writes code around the hardware available. In a more complex system the process may be iterative. For example the software and hardware engineers may have a .