En ingeniería, la arquitectura de hardware se refiere a la identificación de los componentes físicos de un sistema y sus interrelaciones. Esta descripción, a menudo denominada modelo de diseño de hardware , permite a los diseñadores de hardware comprender cómo encajan sus componentes en una arquitectura de sistema y proporciona a los diseñadores de componentes de software información importante necesaria para el desarrollo y la integración de software. Una definición clara de una arquitectura de hardware permite que las diversas disciplinas de ingeniería tradicionales (por ejemplo, ingeniería eléctrica y mecánica) trabajen juntas de manera más eficaz para desarrollar y fabricar nuevas máquinas, dispositivos y componentes. [1]
El término hardware también se utiliza en el ámbito de la ingeniería informática para distinguir explícitamente el hardware (de una computadora electrónica ) del software que se ejecuta en ella. Pero el hardware, dentro de las disciplinas de automatización e ingeniería de software , no tiene por qué ser simplemente una computadora de algún tipo. Un automóvil moderno ejecuta mucho más software que la nave espacial Apolo. Además, los aviones modernos no pueden funcionar sin ejecutar decenas de millones de instrucciones informáticas integradas y distribuidas por todo el avión y residentes tanto en el hardware informático estándar como en componentes de hardware especializados, como puertas lógicas cableadas con circuitos integrados, dispositivos analógicos e híbridos y otros componentes digitales. La necesidad de modelar de manera efectiva cómo se combinan los componentes físicos separados para formar sistemas complejos es importante en una amplia gama de aplicaciones, incluidas las computadoras, los asistentes digitales personales (PDA), los teléfonos celulares, la instrumentación quirúrgica, los satélites y los submarinos.
La arquitectura de hardware es la representación de un sistema de hardware electrónico o electromecánico diseñado (o que se diseñará ) y el proceso y la disciplina para implementar eficazmente el diseño de dicho sistema. Generalmente es parte de un sistema integrado más grande que abarca información , software y prototipos de dispositivos . [2]
Es una representación porque se utiliza para transmitir información sobre los elementos relacionados que componen un sistema de hardware, las relaciones entre esos elementos y las reglas que rigen esas relaciones.
Es un proceso porque se prescribe una secuencia de pasos para producir o cambiar la arquitectura, y/o un diseño a partir de esa arquitectura, de un sistema de hardware dentro de un conjunto de restricciones.
Es una disciplina porque se utiliza un conjunto de conocimientos para informar a los profesionales sobre la forma más eficaz de diseñar el sistema dentro de un conjunto de restricciones.
Una arquitectura de hardware se ocupa principalmente de las interfaces eléctricas internas (y, más raramente, mecánicas ) entre los componentes o subsistemas del sistema , y la interfaz entre el sistema y su entorno externo, especialmente los dispositivos operados por o las pantallas electrónicas vistas por un usuario . (Esta última interfaz especial se conoce como la interfaz hombre-máquina , también conocida como interfaz hombre-máquina o HCI ). [3] Los diseñadores de circuitos integrados (CI) están impulsando las tecnologías actuales hacia enfoques innovadores para nuevos productos. Por lo tanto, se están proponiendo múltiples capas de dispositivos activos como un solo chip, lo que abre oportunidades para la implementación disruptiva de hardware microelectrónico, optoelectrónico y microelectromecánico nuevo. [4] [5]
Antes de la llegada de las computadoras digitales, la electrónica y otras disciplinas de ingeniería utilizaban los términos sistema y hardware tal como se utilizan hoy en día. Sin embargo, con la llegada de las computadoras digitales y el desarrollo de la ingeniería de software como disciplina independiente, a menudo era necesario distinguir entre artefactos de hardware diseñados, artefactos de software y artefactos combinados.
Un artefacto de hardware programable , o máquina, que carece de su programa informático es impotente; así como un artefacto de software, o programa, es igualmente impotente a menos que pueda usarse para alterar los estados secuenciales de una máquina (de hardware) adecuada. Sin embargo, una máquina de hardware y su programación pueden diseñarse para realizar un número casi ilimitado de tareas abstractas y físicas. Dentro de las disciplinas de ingeniería informática y de software (y, a menudo, otras disciplinas de ingeniería, como las comunicaciones), entonces, los términos hardware, software y sistema pasaron a distinguir entre el hardware que ejecuta un programa informático , el software y el dispositivo de hardware completo con su programa.
Un hardware puede ser controlado desde un software con la ayuda de un dispositivo intermedio llamado controlador de hardware, este controlador de hardware puede usarse para realizar varias tareas automatizadas desde el hardware, generalmente el controlador de hardware consta de pines GPIO (entrada y salida de propósito general), el comportamiento de estos pines controlado por la pieza de código. [6]
El ingeniero o arquitecto de hardware se ocupa (más o menos) exclusivamente del dispositivo de hardware; el ingeniero o arquitecto de software se ocupa (más o menos) exclusivamente del programa; y el ingeniero o arquitecto de sistemas es responsable de ver que la programación sea capaz de ejecutarse correctamente dentro del dispositivo de hardware, y que el sistema compuesto por las dos entidades sea capaz de interactuar correctamente con su entorno externo, especialmente el usuario, y realizar su función prevista.
Una arquitectura de hardware es entonces una representación abstracta de un dispositivo electrónico o electromecánico capaz de ejecutar un programa fijo o modificable. [7] [8]
Una arquitectura de hardware generalmente incluye alguna forma de computadora electrónica analógica, digital o híbrida , junto con sensores y actuadores electrónicos y mecánicos. El diseño de hardware puede verse como un " esquema de partición " o algoritmo , que considera todos los requisitos presentes y previsibles del sistema y organiza los componentes de hardware necesarios en un conjunto funcional de subsistemas claramente delimitados sin más partes de las requeridas. Es decir, es un esquema de partición que es exclusivo, inclusivo y exhaustivo . Un propósito principal de la partición es organizar los elementos en los subsistemas de hardware de modo que haya un mínimo de conexiones eléctricas y comunicaciones electrónicas necesarias entre ellos. Tanto en software como en hardware, un buen subsistema tiende a verse como un " objeto " significativo. Además, una asignación clara de los requisitos del usuario a la arquitectura (hardware y software) proporciona una base eficaz para las pruebas de validación de los requisitos del usuario en el sistema tal como está construido.
{{cite journal}}
: CS1 maint: varios nombres: lista de autores ( enlace ){{cite journal}}
: CS1 maint: varios nombres: lista de autores ( enlace ){{cite journal}}
: CS1 maint: varios nombres: lista de autores ( enlace ){{cite journal}}
: CS1 maint: varios nombres: lista de autores ( enlace ){{cite journal}}
: CS1 maint: varios nombres: lista de autores ( enlace ){{cite journal}}
: CS1 maint: varios nombres: lista de autores ( enlace )