- Hardware architecture
In engineering, hardware architecture refers to the the identification of a system's physical components and their interrelationships. This description, often called a hardware design model, allows hardware designers to understand how their components fit into a system architecture and provides software component designers important information needed for software development and integration. Clear definition of a hardware architecture allows the various traditional engineering disciplines (e.g., electrical and mechanical engineering) to work more effectively together to develop and manufacture new machines, devices and components. [cite journal |author=Rai, L. & Kang, S.J. |title=Rule-based modular software and hardware architecture for multi-shaped robots using real-time dynamic behavior identification and selection |journal=Knowledge-Based Systems |volume=21 |issue=4 |pages=273-283 |year=2008|doi=10.1016/j.knosys.2007.05.008]
"Hardware" is also an expression used within the computer engineering industry to explicitly distinguish the (
electronic computer) hardware from the "software" which runs in it. But "hardware," within the automationand software engineeringdisciplines, need not simply be a computer of some sort. A modern automobile runs vastly more "software" than the Apollo spacecraft. Also, modern aircraft cannot function without running tens of millions of computer instructions embedded and distributed throughout the aircraft and resident in both standard computer hardware and in specialized hardward components such as IC wired logic gates, analog and hybrid devices, and other digital components. The need to effectively model how separate physical components combine to form complex systems is important over a wide range of applications, including computers, personal digital assistants (PDAs), cell phones, surgical instrumentation, satellites, and submarines.
Hardware architecture is therefore the representation of an engineered (or "to be engineered") electronic or electromechanical hardware system, and the process and discipline for effectively implementing the
design(s) for such a system. It is generally part of a larger integrated system encompassing information, software, and device prototyping. [cite journal |author=Frampton, K.D., Martin, S.E. & Minor, K. |title=The scaling of acoustic streaming for application in micro-fluidic devices |journal=Applied Acoustics |volume=64 |issue=7 |pages=681-692 |year=2003|doi=10.1016/S0003-682X(03)00005-7]
It is a "representation" because it is used to convey information about the related comprising a hardware system, the relationships among those elements, and the governing those relationships.
It is a "process" because a sequence of steps is prescribed to produce or change the architecture, and/or a design from that architecture, of a hardware system within a
It is a "discipline" because a
bodyof knowledgeis used to inform practitioners as to the most effective way to design the system within a set of constraints.
A hardware architecture is primarily concerned with the internal electrical (and, more rarely, the mechanical) interfaces among the system's components or subsystems, and the interface between the system and its external environment, especially the devices operated by or the electronic displays viewed by a user. (This latter, special interface, is known as the
computer human interface, "AKA" human computer interface, or HCI; formerly called the man-machine interface.) [cite journal |author=Brunelli, C., Garzia, F. & Nurmi, J. |title=A coarse-grain reconfigurable architecture for multimedia applications featuring subword computation capabilities |journal=Journal of Real-Time Image Processing |volume=3 |issue=1-2 |pages=21-32 |year=2008|doi=10.1007/s11554-008-0071-3] Integrated circuit (IC) designers are driving current technologies into innovative approaches for new products. Hence, multiple layers of active devices are being proposed as single chip, opening up opportunities for disruptive microelectronic, optoelectronic, and new microelectromechanical hardware implementation. [cite journal |author=Cale, T.S., Lu, J.-Q. & Gutmann, R.J. |title=Three-dimensional integration in microelectronics: Motivation, processing, and thermomechanical modeling |journal=Chemical Engineering Communications |volume=195 |issue=8 |pages=847-888 |year=2008|doi=10.1080/00986440801930302]
Prior to the advent of digital computers, the electronics and other engineering disciplines used the terms system and hardware as they are still commonly used today. However, with the arrival of digital computers on the scene and the development of software engineering as a separate discipline, it was often necessary to distinguish among engineered "hardware" artifacts, "software" artifacts, and the combined artifacts.
A programmable hardware artifact, or machine, that lacks its software program is impotent; even as a software artifact, or program, is equally impotent unless it can be used to alter the sequential states of a suitable (hardware) machine. However, a hardware machine and its software program can be designed to perform an almost illimitable number of abstract and physical tasks. Within the computer and software engineering disciplines (and, often, other engineering disciplines, such as communications), then, the terms hardware, software, and system came to be used to distinguish among the hardware which could run a
software program, the software program itself, and the hardware device complete with its program, respectively.
The "hardware" engineer or architect deals (more or less) exclusively with the hardware device; the "software" engineer or architect deals (more or less) exclusively with the software program; and the "systems" engineer or
systems architectis responsible for seeing that the software program is capable of properly running within the hardware device, and that the system composed of the two entities is capable of properly interacting with its external environment, especially the user, and performing its intended function.
A hardware architecture, then, is an abstract representation of an electronic and/or an electromechanical device which is capable of running a fixed or changeable program. [cite journal |author=Assif, D., Himel, R. & Grajower, Y. |title=A new electromechanical device to measure the accuracy of interocclusal records |journal=Journal of Prosthetic Dentistry |volume=59 |issue=6 |pages=672-676 |year=1988|pmid=3165452] [cite journal |author=Zimmermann, M., Volden, T., Kirstein, K.-U., Hafizovic, S., Lichtenberg, J., Brand, O. & Hierlemann, A. |title=A CMOS-based integrated-system architecture for a static cantilever array |journal=Sensors and Actuators B: Chemical |volume=131 |issue=1 |pages=254-264 |year=2008|doi=10.1016/j.snb.2007.11.016]
A hardware architecture generally includes some form of analog, digital, or hybrid electronic computer, along with electronic and mechanical sensors and actuators. Hardware architecting may be viewed as a 'partitioning scheme,' or
algorithm, which considers all of the system's present and foreseeable requirements and arranges the necessary hardware components into a workable set of cleanly bounded subsystems with no more parts than are required. That is, it is a partitioning scheme which is exclusive, inclusive, and exhaustive. A major purpose of the partitioning is to arrange the elements in the hardware subsystems so that there is a minimum of electrical connections and electronic communications needed among them. In both software and hardware, a good subsystem tends to be seen as a meaningful "object." Moreover, a clear allocation of user requirements to the architecture (hardware and software) provides an effective basis for validation tests of the user's requirements in the as-built system.
Computer aided manufacturing
Electronic design automation
Elmer FEM solver
Finite element analysis
System on a chip
Very-large-scale integration- VLSI
VHSIC Hardware Description Language- VHDL
Wikimedia Foundation. 2010.