Hardware architecture
From Wikipedia, the free encyclopedia
Hardware architecture refers to the subject in engineering related to the development towards new hardware design and equipment representation. This representation provides important support through the process of manufacturing and hardware implementation. Therefore, helping in physical integration and analysis of electrical and mechanical systems, such as necessary for manufacturing new machine, devices and components.[1]
Hardware is also an expression used within the computer engineering to explicitly distinguish the (electronic computer) hardware from the software which runs in it. But hardware, within the automation and software engineering disciplines, need not simply be a computer of some sort. A modern automobile runs vastly more software than the Apollo spacecraft. Similarly, most part of the current aircrafts cannot function without running tens of millions of instructions which are coded through hardware programming techniques, being integrated through VHDL IC wired logic gates. Hardware can also represent the physical elements of an analog or hybrid device, ranging from distinct pieces inside a computers, handhelds, cell phones, satellites, submarines, or surgical instrumentation tools.
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.[2]
It is a representation because it is used to convey information about the related elements comprising a hardware system, the relationships among those elements, and the rules 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 set of constraints.
It is a discipline because a body of knowledge is 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.)[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.[4]
[edit] Background
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 architect is 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.[5][6]
It is generally some form of analog, digital, or hybrid electronic computer and/or its electronic and mechanical accessories. A good architecture may be viewed as a 'partitioning scheme,' or algorithm, which partitions all of the system's present and foreseeable requirements into a workable set of cleanly bounded subsystems with nothing left over. 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) communications needed among them. In both software and hardware, a good subsystem tends to be seen to be a meaningful "object." Moreover, a good architecture provides for an easy mapping to the user's requirements and the validation tests of the user's requirements. If everyone, which is directly involved through the development process, agrees to follow the same standard procedure, it results in a good hardware specification from every least element to every requirement and test.
[edit] References
- ^ Rai, L. & Kang, S.J. (2008). "Rule-based modular software and hardware architecture for multi-shaped robots using real-time dynamic behavior identification and selection". Knowledge-Based Systems 21 (4): 273-283. doi:.
- ^ Frampton, K.D., Martin, S.E. & Minor, K. (2003). "The scaling of acoustic streaming for application in micro-fluidic devices". Applied Acoustics 64 (7): 681-692. doi:.
- ^ Brunelli, C., Garzia, F. & Nurmi, J. (2008). "A coarse-grain reconfigurable architecture for multimedia applications featuring subword computation capabilities". Journal of Real-Time Image Processing 3 (1-2): 21-32. doi:.
- ^ Cale, T.S., Lu, J.-Q. & Gutmann, R.J. (2008). "Three-dimensional integration in microelectronics: Motivation, processing, and thermomechanical modeling". Chemical Engineering Communications 195 (8): 847-888. doi:.
- ^ Assif, D., Himel, R. & Grajower, Y. (1988). "A new electromechanical device to measure the accuracy of interocclusal records". Journal of Prosthetic Dentistry 59 (6): 672-676. PMID 3165452.
- ^ Zimmermann, M., Volden, T., Kirstein, K.-U., Hafizovic, S., Lichtenberg, J., Brand, O. & Hierlemann, A. (2008). "A CMOS-based integrated-system architecture for a static cantilever array". Sensors and Actuators B: Chemical 131 (1): 254-264. doi:.

