stringtranslate.com

Reloj en tiempo real

Reloj en tiempo real Dallas Semiconductor DS1287 fabricado en 1988
Tipos de módulos RTC para aficionados disponibles comercialmente en China

Un reloj de tiempo real ( RTC ) es un dispositivo electrónico (normalmente en forma de circuito integrado ) que mide el paso del tiempo.

Aunque el término a menudo se refiere a dispositivos en computadoras personales , servidores y sistemas integrados , los RTC están presentes en casi cualquier dispositivo electrónico que necesite mantener la hora exacta del día .

Terminología

El término reloj en tiempo real se utiliza para evitar confusiones con los relojes de hardware ordinarios que son sólo señales que gobiernan la electrónica digital y no cuentan el tiempo en unidades humanas. RTC no debe confundirse con la computación en tiempo real , que comparte su acrónimo de tres letras pero no se relaciona directamente con la hora del día.

Objetivo

Aunque se puede controlar el tiempo sin un RTC, [1] usarlo tiene beneficios:

Un receptor GPS puede acortar su tiempo de inicio comparando la hora actual, según su RTC, con la hora en la que tuvo una señal válida por última vez. [3] Si han pasado menos de unas pocas horas, entonces las efemérides anteriores todavía se pueden utilizar.

Algunas placas base se fabrican sin RTC. Se puede omitir el RTC por deseo de ahorrar dinero o reducir posibles fuentes de fallas de hardware.

Fuente de alimentación

Batería de litio dentro del IC del reloj en tiempo real

Los RTC suelen tener una fuente de energía alternativa, por lo que pueden seguir manteniendo el tiempo mientras la fuente de energía principal está apagada o no está disponible. Esta fuente alternativa de energía es normalmente una batería de litio en los sistemas más antiguos, pero algunos sistemas más nuevos usan un supercondensador , [4] [5] porque son recargables y se pueden soldar . La fuente de alimentación alternativa también puede suministrar energía a la RAM respaldada por batería . [6]

Momento

La mayoría de los RTC utilizan un oscilador de cristal , [7] [8] pero algunos tienen la opción de utilizar la frecuencia de la línea eléctrica . [9] La frecuencia del cristal suele ser de 32,768 kHz, [7] la misma frecuencia utilizada en los relojes de cuarzo . Al ser exactamente de 2 a 15 ciclos por segundo, es una velocidad conveniente para usar con circuitos contadores binarios simples. La baja frecuencia ahorra energía y se mantiene por encima del rango de audición humana . El diapasón de cuarzo de estos cristales no cambia mucho de tamaño con la temperatura, por lo que la temperatura no cambia mucho su frecuencia.

Algunos RTC utilizan un resonador micromecánico en el chip de silicio del RTC. Esto reduce el tamaño y el costo de un RTC al reducir su número de piezas. Los resonadores micromecánicos son mucho más sensibles a la temperatura que los resonadores de cuarzo. Entonces, estos compensan los cambios de temperatura mediante un termómetro electrónico y una lógica electrónica. [10]

Las especificaciones típicas de precisión de RTC de cristal son de ±100 a ±20 partes por millón (8,6 a 1,7 segundos por día), pero hay disponibles circuitos integrados de RTC con temperatura compensada con una precisión de menos de 5 partes por millón. [11] [12] En términos prácticos, esto es lo suficientemente bueno para realizar la navegación celeste , la tarea clásica de un cronómetro . En 2011, estuvieron disponibles relojes atómicos a escala de chip . Aunque son mucho más caros y consumen mucha energía (120 mW frente a <1 μW), mantienen el tiempo dentro de las 50 partes por billón (5 × 10-11 ) . [13]

Ejemplos

Reloj en tiempo real de Dallas Semiconductor (DS1387) desde una PC más antigua. Esta versión también contiene una SRAM respaldada por batería.
Chip Dallas DS1307 RTC en paquete DIP-8

Muchos fabricantes de circuitos integrados fabrican RTC, incluidos Epson , Intersil , IDT , Maxim , NXP Semiconductors , Texas Instruments , STMicroelectronics y Ricoh . Un RTC común utilizado en computadoras de placa única es el Maxim Integrated DS1307.

El RTC fue introducido en PC compatibles por IBM PC/AT en 1984, que utilizaba un RTC Motorola MC146818. [14] [15] Más tarde, Dallas Semiconductor fabricó RTC compatibles, que a menudo se usaban en computadoras personales más antiguas y se encuentran fácilmente en las placas base debido a su distintiva tapa negra de batería y su logotipo serigrafiado . Para el PC RTC está disponible una interfaz CMOS estándar. [dieciséis]

En los sistemas informáticos más nuevos, el RTC está integrado en el chip Southbridge . [17] [18]

Algunos microcontroladores tienen incorporado un reloj en tiempo real, generalmente solo los que tienen muchas otras características y periféricos .

RTC basados ​​en radio

Algunas computadoras modernas reciben información del reloj por radio digital y la utilizan para promover estándares horarios. Hay dos métodos comunes: la mayoría de los protocolos de telefonía móvil (por ejemplo, LTE ) proporcionan directamente la hora local actual. Si hay una radio por Internet disponible, una computadora puede usar el protocolo de hora de la red . Los ordenadores utilizados como servidores de hora local utilizan ocasionalmente GPS [19] o transmisiones de radio de frecuencia ultrabaja transmitidas por una organización nacional de normalización (es decir, un radioreloj [20] ).

RTC basados ​​en software

El siguiente sistema es bien conocido por los programadores de sistemas integrados , quienes a veces deben construir RTC en sistemas que carecen de ellos. La mayoría de las computadoras tienen uno o más temporizadores de hardware que utilizan señales de sincronización de cristales de cuarzo o resonadores cerámicos . Estos tienen una sincronización absoluta inexacta (más de 100 partes por millón) que, sin embargo, es muy repetible (a menudo menos de 1 ppm). El software puede hacer los cálculos para convertirlos en RTC precisos. El temporizador de hardware puede producir una interrupción periódica, por ejemplo, 50  Hz , para imitar un RTC histórico (ver más abajo). Sin embargo, utiliza matemáticas para ajustar la cadena de distribución con precisión:

tiempo = tiempo + tasa.

Cuando la variable "tiempo" excede una constante, generalmente una potencia de dos, el tiempo nominal calculado del reloj (por ejemplo, 1/50 de segundo) se resta del "tiempo" y se invoca el software de la cadena de sincronización del reloj para contar fracciones de segundos, segundos, etc. Con variables de 32 bits para tiempo y velocidad, la resolución matemática de "velocidad" puede exceder una parte por mil millones. El reloj sigue siendo preciso porque ocasionalmente se salta una fracción de segundo o se incrementa en dos fracciones. El pequeño salto (" jitter ") es imperceptible para casi todos los usos reales de un RTC.

La complejidad de este sistema es determinar el valor instantáneo corregido de la variable "tasa". El sistema más simple rastrea el tiempo RTC y el tiempo de referencia entre dos configuraciones del reloj y divide el tiempo de referencia por el tiempo RTC para encontrar la "tasa". La hora de Internet suele tener una precisión de menos de 20 milisegundos, por lo que 8000 o más segundos (2,2 horas o más) de separación entre configuraciones generalmente pueden dividir los cuarenta milisegundos (o menos) de error en menos de 5 partes por millón para obtener una precisión similar a un cronómetro. exactitud. La principal complejidad de este sistema es convertir fechas y horas en segundos, pero los métodos son bien conocidos. [21]

Si el RTC funciona cuando una unidad está apagada, normalmente funcionará a dos velocidades, una cuando la unidad está encendida y otra cuando está apagada. Esto se debe a que la temperatura y el voltaje de la fuente de alimentación en cada estado son consistentes. Para ajustarse a estos estados, el software calcula dos tasas. Primero, el software registra la hora RTC, la hora de referencia, los segundos de encendido y los segundos de apagado para los dos intervalos entre las últimas tres veces que se configura el reloj. Con esto, puede medir la precisión de los dos intervalos, y cada intervalo tiene una distribución diferente de segundos de encendido y apagado. La matemática de tasas resuelve dos ecuaciones lineales para calcular dos tasas, una para encendido y otra para apagado.

Otro enfoque mide la temperatura del oscilador con un termómetro electrónico (por ejemplo, un termistor y un convertidor analógico a digital ) y utiliza un polinomio para calcular la "velocidad" aproximadamente una vez por minuto. Estos requieren una calibración que mida la frecuencia a varias temperaturas y luego una regresión lineal para encontrar la ecuación de temperatura. Los cristales de cuarzo más comunes en un sistema son los cristales cortados SC y sus tasas de variación de temperatura se pueden caracterizar con un polinomio de tercer grado. Entonces, para calibrarlos, se mide la frecuencia a cuatro temperaturas. Los cristales de estilo diapasón comunes que se usan en relojes y muchos componentes RTC tienen ecuaciones de temperatura parabólicas (segundo grado) y se pueden calibrar con solo 3 mediciones. Los osciladores MEMS varían, desde polinomios de tercer grado a quinto grado, dependiendo de su diseño mecánico, por lo que necesitan de cuatro a seis mediciones de calibración. Algo como este enfoque podría usarse en circuitos integrados RTC comerciales, pero los métodos reales de fabricación eficiente de alta velocidad son propietarios.

RTC históricos

Algunos diseños de computadoras , como los IBM System/360 más pequeños , [22] PDP-8 [23] y Novas , utilizaban un reloj en tiempo real que era preciso, simple y de bajo costo. En Europa, América del Norte y algunas otras redes, la frecuencia de la red eléctrica de CA se ajusta a la precisión de frecuencia a largo plazo de los estándares nacionales. En esas redes, los relojes que funcionan con corriente alterna pueden mantener la hora perfecta sin necesidad de ajustes. Estos relojes no son prácticos en ordenadores portátiles o en redes (por ejemplo, en el sur de Asia) que no regulan la frecuencia de la red eléctrica de CA.

Las fuentes de alimentación de estas computadoras utilizan un transformador o un divisor de resistencia para producir una onda sinusoidal con voltajes lógicos. Esta señal está condicionada por un detector de cruce por cero, ya sea mediante un amplificador lineal , o un disparador Schmitt . El resultado es una onda cuadrada con flancos únicos y rápidos en la frecuencia de la red. Esta señal lógica desencadena una interrupción. El software de manejo de interrupciones generalmente cuenta ciclos, segundos, etc. De esta manera, puede proporcionar un reloj y un calendario completos. En IBM 360, la interrupción actualiza un recuento de microsegundos de 64 bits utilizado por el software de sistemas estandarizados. El error de fluctuación del reloj es la mitad si el reloj se interrumpe en cada cruce por cero, en lugar de en cada ciclo.

El reloj también solía formar la base de las cadenas de sincronización del software de las computadoras; por ejemplo, normalmente era el temporizador utilizado para cambiar de tarea en un sistema operativo. Los temporizadores de conteo utilizados en las computadoras modernas brindan características similares con menor precisión y pueden atribuir sus requisitos a este tipo de reloj. (Por ejemplo, en el PDP-8, el reloj de red, modelo DK8EA, fue el primero, y luego fue seguido por un reloj de cristal, DK8EC.)

Se debe configurar un reloj basado en software cada vez que se enciende la computadora. Originalmente esto lo hacían operadores de computadoras. Cuando Internet se volvió algo común, se utilizaron protocolos horarios de red para configurar automáticamente relojes de este tipo.

Ver también

Referencias

  1. ^ Ala-Paavola, Jaakko (16 de enero de 2000). "Proyecto de código fuente de reloj en tiempo real basado en interrupciones de software para microcontrolador PIC". Archivado desde el original el 17 de julio de 2007 . Consultado el 23 de agosto de 2007 .
  2. ^ Habilitación de la función de cronometraje y prolongación de la vida útil de la batería en sistemas de baja potencia, NXP Semiconductors, 2011
  3. ^ US 5893044  Aparato de reloj en tiempo real para adquisición rápida o señales de GPS
  4. ^ El nuevo reloj en tiempo real PCF2123 establece un nuevo récord en eficiencia energética, futuro
  5. ^ Nota de aplicación 3816, Maxim/Dallas Semiconductor, 2006
  6. ^ Torres, Gabriel (24 de noviembre de 2004). "Introducción y Batería de Litio". Reemplazo de la batería de la placa base . hardwaresecrets.com. Archivado desde el original el 24 de diciembre de 2013 . Consultado el 20 de junio de 2013 .
  7. ^ ab Nota de aplicación 10337 , ST Microelectronics, 2004, p. 2
  8. ^ Nota de aplicación U-502, Texas Instruments, 2004, p. 13
  9. ^ Nota de aplicación de 1994, Maxim/Dallas Semiconductor, 2003
  10. ^ "Maxim DS3231m" (PDF) . Maxim Inc. Consultado el 26 de marzo de 2019 .
  11. ^ "Relojes en tiempo real de alta precisión". Semiconductores Maxim . Consultado el 20 de octubre de 2017 .
  12. ^ Ahogarse, Dan (3 de febrero de 2017). "Comparación RTC".
  13. ^ "Reloj atómico a escala de chip". Microsemi . Consultado el 20 de octubre de 2017 .
  14. ^ "Reloj en tiempo real/Información de RAM del semiconductor de óxido metálico complementario (RT/CMOS)". Referencia técnica de IBM PC AT (PDF) . Corporación Internacional de Máquinas de Negocios. 1984. pág. Placa base 1–45.
  15. ^ MC146818A RELOJ EN TIEMPO REAL MÁS RAM (RTC) (PDF) . Motorola Inc. 1984.
  16. ^ "CMOS RTC - Memoria y reloj en tiempo real (puertos 70h y 71h) :: HelpPC 2.10 - Utilidad de referencia rápida :: NetCore2K.net". ayudapc.netcore2k.net .
  17. ^ "Especificaciones del puente sur ULi M1573". AMDboard.com . Consultado el 23 de agosto de 2007 .
  18. ^ Conjunto de datos PCISET 82430FX
  19. ^ "Sincronización del reloj GPS". Orolia. 9 de diciembre de 2020 . Consultado el 6 de enero de 2021 .
  20. ^ "Producto: Radio reloj USB". Meinburgo . Consultado el 20 de octubre de 2017 .
  21. ^ "Aplicaciones de calendario". Observatorio Naval de Estados Unidos . Nosotros marina de guerra. Archivado desde el original el 4 de abril de 2016 . Consultado el 7 de noviembre de 2019 .
  22. ^ IBM (septiembre de 1968), Principios de funcionamiento de IBM System/360 (PDF) , octava edición, A22-6821-7Revisado por IBM (12 de mayo de 1970), ibid. , GN22-0354e IBM (8 de junio de 1970), ibid. , GN22-0361
  23. ^ Digital Equipment Corp. "Manual de computadoras pequeñas PDP-8 / E, 19" (PDF) . Investigación Gibson. págs. 7-25, el DK8EA . Consultado el 12 de noviembre de 2016 .

enlaces externos