ES2199527T3 - Sistema de tratamiento de datos pseudo lockstep. - Google Patents
Sistema de tratamiento de datos pseudo lockstep.Info
- Publication number
- ES2199527T3 ES2199527T3 ES99306330T ES99306330T ES2199527T3 ES 2199527 T3 ES2199527 T3 ES 2199527T3 ES 99306330 T ES99306330 T ES 99306330T ES 99306330 T ES99306330 T ES 99306330T ES 2199527 T3 ES2199527 T3 ES 2199527T3
- Authority
- ES
- Spain
- Prior art keywords
- clock
- data
- data processing
- common memory
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1695—Error detection or correction of the data by redundancy in hardware which are operating with time diversity
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1675—Temporal synchronisation or re-synchronisation of redundant processing components
- G06F11/1679—Temporal synchronisation or re-synchronisation of redundant processing components at clock signal level
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Hardware Redundancy (AREA)
- Information Transfer Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Un sistema de procesado de datos consta de una memoria común compartida por un primer y un segundo circuito de procesado de datos, en el que cada circuito procesador ejecuta la misma secuencia de pasos operacionales y cada uno está conectado a la memoria común. Un dispositivo de aislamiento conectado entre el primer circuito procesador de datos y la memoria común, restringe el acceso por el primer circuito de procesado a la memoria común, para el acceso de sólo lectura. El primer circuito procesador de datos está configurado para ejecutar cada paso operacional un periodo fijado de tiempo después del segundo circuito de procesado de datos. Un comparador compara las señales de salida de los dos circuitos procesadores con el fin de detectar el funcionamiento fallido, pero, antes de la comparación, las salidas del segundo circuito de procesado de datos se visualizan el periodo fijado de tiempo.
Description
Sistema de tratamiento de datos de pseudo
lockstep.
La presente invención se refiere al campo de los
circuitos digitales que comparten una memoria común en general y a
las disposiciones Lockstep en particular.
Las disposiciones Lockstep tienen aplicación en
áreas que demandan un funcionamiento altamente fiable de los
sistemas de proceso de datos, cuyo término se usa aquí para
incluir circuitos digitales (a los que también se hace referencia
como circuitos lógicos) tales como los circuitos procesadores. El
término "Lockstep" se usa aquí para indicar un sistema en el
que dos circuitos más o menos idénticos marchan "en paralelo"
y su funcionamiento es supervisado (por ejemplo para aumentar la
fiabilidad y para detectar funcionamiento defectuoso). Si el
comportamiento de uno de los circuitos diverge del correspondiente
al otro, entonces ha tenido lugar una falta que puede ser
detectada, permitiendo así tomar acciones correctivas.
El Lockstep se aplica normalmente a circuitos que
están sincronizados con una señal de reloj. De aquí que "en
paso" se use para indicar, en circuitos síncronos,
acontecimientos que tienen lugar dentro del mismo ciclo de señal de
reloj.
Por "marcha en paralelo" se entiende que
cada circuito recibe las mismas entradas en paso y procesa estas
entradas en paso a fin de generar salidas idénticas, también en
paso. En particular, el comportamiento de los dos circuitos
digitales es el mismo cada ciclo de reloj después de la aserción y
desaserción del reinicio, tanto para reinicios de alimentación de
potencia como para reinicios que detienen y vuelven a arrancar el
funcionamiento de proceso.
Una disposición Lockstep incorpora lógica
Lockstep cuya función es mantener los dos circuitos digitales al
paso (o en sincronización) y detectar cualquier discrepancia en su
comportamiento, por ejemplo por comparación de sus salidas. Si se
detecta un fallo, ambos circuitos podrían ser reiniciados y un par
de circuitos lógicos, mantenidos en reserva, iniciados para asumir
el funcionamiento de los circuitos defectuosos.
En la técnica anterior, las disposiciones
Lockstep se han aplicado a pares de circuitos digitales que reciben
entradas idénticas. En las disposiciones Lockstep de la técnica
anterior, a no ser que se produzca un defecto, en cada ciclo de
reloj no existe diferencia en el comportamiento de los
dispositivos de los dos circuitos digitales. En cada ciclo de
reloj, a no ser que se produzca un defecto, las respuestas de los
dispositivos de los dos circuitos digitales a cada combinación de
señales en sus entradas es la misma y los valores en todas las
clavijas de salida (incluyendo las clavijas bidireccionales) de los
dispositivos de los dos circuitos digitales son los mismos.
Hanson (US 5,231,640) describe un par de
procesadores (primario y sombra) que comparten el acceso a una
memoria única, estando facilitado el acceso compartido disponiendo
que el procesador sombra funcione un ciclo de reloj por detrás del
procesador primario.
A fin de evitar los gastos de un conjunto de
memoria separado para cada circuito, los dos circuitos digitales
comparten una memoria común. Sin embargo, mientras un circuito es
capaz de leer a partir de la memoria común y de escribir en ella, el
otro sólo es capaz de leer a partir de la misma. Se requiere una
circuitería especial para realizar la interfaz con la memoria
común, convencionalmente en forma de una memoria intermedia en el
lado de sólo lectura. En disposiciones Lockstep convencionales,
esta circuitería especial se lleva a cabo típicamente utilizando
circuitería ASIC, que sin embargo tiende a ser cara y puede ser
difícil de adquirir.
Utilizando la presente invención, es posible
llevar a cabo una disposición Lockstep usando componentes normales
disponibles comercialmente, por ejemplo, dispositivos de puente
disponibles comercialmente.
La presente invención proporciona un sistema de
proceso de datos que comprende una memoria común (5), un primer y
un segundo circuito procesador de datos (10, 1), cada uno
dispuesto para ejecutar la misma secuencia de pasos de
funcionamiento y cada uno de ellos conectado a la memoria común (5),
un dispositivo de aislamiento (24, 32, 33, 34) conectado entre el
primer circuito procesador de datos (10) y la memoria común (5) y
dispuesto para restringir el acceso por parte del primer circuito
procesador de datos (10) a la memoria común (5) a un acceso de sólo
lectura, en el cual el primer circuito procesador de datos (10)
está dispuesto para ejecutar cada paso de funcionamiento al cabo
de un periodo de tiempo establecido más tarde que el segundo
circuito procesador de datos (1); caracterizado por un primer y un
segundo bus periférico (14, 6), estando dispuesto el segundo bus
periférico (6) para conectar el segundo circuito procesador (1) a
dispositivos adicionales y dispuesto para conectar el primer
circuito procesador (10) a través del primer bus periférico (14) a
los dispositivos adicionales, y un controlador de acceso (15)
dispuesto para introducir un retraso de tiempo en las señales que
pasan de los dispositivos adicionales al primer circuito procesador
(10).
Se describirán a continuación realizaciones de la
presente invención mediante un ejemplo haciendo referencia a las
figuras, en las cuales:
la Figura 1 muestra en forma de diagrama de
bloques una disposición Lockstep con circuitos procesadores
duplicados;
la Figura 2 muestra en forma de diagrama de
bloques una memoria intermedia simple;
la Figura 3 muestra una memoria intermedia con
reloj correspondiente a una primera realización de la
invención;
la Figura 4 muestra una memoria intermedia con
reloj correspondiente a una segunda realización de la
invención;
Haciendo referencia a la Figura 1, vemos una
disposición Lockstep aplicada a dos circuitos procesadores, aquí
designados como lado A y lado B. El circuito del lado A comprende
un procesador 1 conectado a un puente 3 por medio del bus de
procesador 2. Los puentes 3, 12 proporcionan interfaces entre los
diversos buses y componentes de los circuitos procesadores. El
procesador está conectado por medio del bus de procesador 2 y del
puente 3 a una memoria caché 4, a la memoria común 5 y a otra
circuitería (no representada) por medio del bus periférico 6. El
circuito de procesador del lado B comprende en forma similar un
procesador 10 un bus de procesador 11, un puente 12, y una memoria
caché 13. El procesador 10 del lado B accede a la memoria caché 13,
a la memoria común 5 y al bus periférico 14, por medio del bus de
procesador 11 y del puente 12. El bloque 15, que comprende la
lógica de control de acceso Lockstep, se encuentra conectado entre
los buses periféricos 6 en el lado A y 14 en el lado B. El
dispositivo de aislamiento 16 se encuentra situado entre el puente
12 del lado B y la memoria común 5. La lógica Lockstep comprende
además una función de comparación (no representada) para supervisar
las señales generadas por los dos circuitos procesadores, por
ejemplo en alguno o en todos los buses de procesadores 2, 11, en
los buses periféricos 6, 14 y las señales a las memorias caché 4,
13.
La memoria común 5 es legible desde los dos
procesadores 1, 10 de los lados A y B por medio de los puentes 3,
12, pero sólo se puede escribir en ella desde el lado A por medio
del puente 3. Para lograr esta funcionabilidad, se requiere el
dispositivo de aislamiento 16 para las señales de los datos entre
la memoria común 5 y el dispositivo de puente 12 del lado B.
La lógica de control de acceso Lockstep del
bloque 15 controla los accesos al bus periférico 14 del lado B,
pasando los accesos que tienen su origen en la circuitería
periférica (no representada) al circuito procesador del lado B, pero
deteniendo cualquier acceso desde el circuito procesador del lado
A para pasar al lado B. La lógica Lockstep de control de acceso
del bloque 15 evita también el acceso desde el bus periférico 14
del lado B al bus periférico 6 del lado A.
Los circuitos procesadores de los lados A y B
comparten un reloj procesador común que sincroniza las operaciones
de los diversos componentes, es decir, de los procesadores 1, 10,
buses procesadores 2, 11, puentes 3, 12, memorias caché 4, 13,
memoria común 5 y dispositivo de aislamiento 16. De acuerdo con la
presente realización de la invención, los buses periféricos 6, 14
junto con el bloque 15 de lógica Lockstep pueden funcionar con una
frecuencia diferente de la correspondiente a la circuitería de los
procesadores de los lados A y B, es decir, los buses periféricos 6,
14 y la lógica Lockstep 15 comparten un segundo reloj, periférico,
típicamente más lento que el reloj de los procesadores. En tales
casos, las interfaces de bus periférico de los puentes 3, 12
estarán también sincronizadas al reloj periférico más lento. En la
técnica anterior, las señales externas son aplicadas a los
circuitos procesadores de ambos lados al paso, es decir, están
sincronizadas según el reloj periférico o según el reloj de los
procesadores.
En las figuras siguientes se han omitido algunas
de las conexiones representadas en la Figura 1 en aras de la
claridad.
La Figura 2 muestra la circuitería alrededor de
una memoria común 5 con mayor detalle. El puente 3 del lado A, el
puente 12 del lado B y la memoria común 5 están todos
sincronizados al reloj de procesadores por medio de las líneas de
reloj 18. La información de dirección y control es proporcionada a
la memoria común 5 desde el puente 3 del lado A por medio de las
líneas de dirección y control 20. El dispositivo de aislamiento 16
de la Figura 1 comprende la memoria intermedia 24 de tres estados y
la lógica de control 28. Los datos del puente 3 del lado A a la
memoria común 5 y desde la memoria común 5 a ambos puentes 3, 12
de los lados A y B se suministran por medio de las líneas de datos
22 y (al lado B) por medio de la memoria intermedia de tres estados
24.
La memoria intermedia de tres estados 24 está
controlada por medio de las líneas de control 26 por la lógica de
control 28, también sincronizada con el reloj de los procesadores
y a su vez provista de las señales de control del puente 12 del
lado B por medio de las líneas de control 30.
Los buses periféricos 6, 14, comprenden buses
PCI. A modo de ejemplo, los procesadores 1, 10, las memorias caché
4, 12, el dispositivo de aislamiento 16 y la memoria común 5,
pueden funcionar todos ellos a una velocidad de reloj de bus de
procesadores de 100 MHz. Los buses periféricos PCI y el bloque 15 de
lógica Lockstep pueden funcionar a una velocidad de reloj de bus
periférico de 33 MHz (para ser exactos, 100/3 MHz, es decir,
precisamente un tercio ce la velocidad del reloj del bus de
procesadores y síncrona con el reloj de procesadores).
Con una frecuencia de bus tan elevada, las
prestaciones de la interfaz de memoria común y, en particular, las
características de temporización del dispositivo de aislamiento 16
son críticas. Si se usa una memoria intermedia adicional para
aislamiento, entonces el retraso de la memoria intermedia se añade
al tiempo de vuelo de los datos entre la memoria común y el
circuito procesador del lado B, reduciendo de este modo la anchura
de banda de memoria disponible para los circuitos de los lados A y
B. Por ejemplo, si el dispositivo de aislamiento fuera una simple
memoria intermedia, tal como se muestra en la Figura 2, entonces
el retraso en la propagación a través de la memoria intermedia
evitaría que los datos llegaran al lado B dentro de un ciclo de
reloj de bus de procesadores de 100 MHz. Esto se podría resolver
reduciendo la velocidad del reloj para compensar, pero esto daría
lugar a una reducción no deseable en la prestaciones generales del
sistema.
Esto podría evitarse, de acuerdo con una primera
realización de la presente invención, mediante el uso de una etapa
de retraso (por ejemplo una memoria intermedia con reloj), tal
como se muestra en la Figura 3. La Figura 3 muestra una disposición
similar a la de la Figura 2 y a las características de la Figura 3
que son equivalentes a las de la Figura 2 se les ha otorgado el
mismo número de referencia y no se describirán aquí. A diferencia
de la disposición de la Figura 2, las líneas de datos 22 procedentes
de la memoria común 5 a la memoria intermedia de tres estados 24
pasan a través de una memoria intermedia con reloj 32 (por ejemplo
un flip-flop de tipo D) que está también
sincronizada con el reloj de los procesadores por medio de una línea
de reloj 18. Tal como se indica mediante la línea de puntos, la
memoria intermedia con reloj 32 y la memoria intermedia de tres
estados 24 están realmente construidas como un único componente,
por ejemplo una memoria intermedia con reloj de tres estados. La
memoria intermedia con reloj 32 retrasa los datos procedentes de la
memoria común al lado B en un ciclo de reloj de bus de
procesadores. La memoria intermedia con reloj 32 se usa con
requisitos de inicio y de mantenimiento determinados por las
prescripciones de la memoria común 5 y del puente 12 del lado B.
La memoria intermedia con reloj 32 vuelve a temporizar los datos,
pero los presenta a la velocidad original de datos, con lo que se
mantiene la anchura de banda del bus de 100 MHz (es decir, la
velocidad del reloj de los procesadores).
Para compensar los datos que llegan tarde al
puente 12 del lado B, el procesador 10 del lado B y el puente B se
inician (es decir, se separan del reinicio) un ciclo de reloj de
bus de procesadores más tarde que el lado A. Para este fin se
dispone un circuito de reinicio adecuado (no representado), que
comprende por ejemplo una memoria intermedia con reloj para
retrasar la señal de reinicio al lado B en un ciclo de reloj de
procesadores. Esto significa que el lado B no espera los datos de
memoria hasta un ciclo de reloj de procesadores después que el
lado A. El resultado es que el lado A y el lado B desarrollan
funciones idénticas, aunque separadas un ciclo de reloj de los
procesadores.
El resultado de esta diferencia en la sincronía
de los lados A y B da lugar a un modo Pseudo Lockstep. Se entiende
por Pseudo Lockstep que los dispositivos de los lados A y B
reciben las mismas entradas y reaccionan ante ellas de idéntica
manera produciendo idénticas salidas, pero las entradas se aplican
y las salidas se generan por los lados A y B con una separación en
el tiempo equivalente a un número fijo de ciclos de reloj.
De esta forma, de acuerdo con esta realización de
la invención, la lógica Lockstep de la técnica anterior es
reemplazada por una lógica Pseudo Lockstep. La lógica Pseudo
Lockstep compara los datos, dirección y señales de control de los
lados A y B en forma similar a la lógica Lockstep de la técnica
anterior. Sin embargo, antes de la comparación, las señales del
lado A se retrasan en la misma cuantía que la separación en el
tiempo introducida por la memoria intermedia con reloj 32 a las
entradas procedentes de la memoria común 5 al circuito del lado
B.
La lógica de control de acceso Pseudo Lockstep
del bloque 15 controla los accesos al bus periférico 14 del lado B,
pasando los accesos que tienen su origen en la circuitería
periférica (no representada) al circuito de procesador del lado B,
pero deteniendo cualquier acceso desde el circuito de procesador
del lado A al lado B. La lógica de control de acceso Pseudo
Lockstep del bloque 15 también evita el acceso desde el bus
periférico 14 del lado B al bus periférico 6 del lado A. Además, la
lógica Pseudo Lockstep del bloque 15 de acuerdo con la invención
retrasa las entradas de la circuitería periférica (no
representada) al circuito de procesador del lado B en la misma
cuantía de retraso en el tiempo introducido por la memoria
intermedia con reloj 32 para las entradas procedentes de la
memoria común 5 al circuito del lado B.
A continuación se describirá con mayor detalle la
lógica de control de acceso Pseudo Lockstep del bloque 15, de
acuerdo con la presente realización. El aislamiento entre el bus
periférico 14 del lado B y el bus periférico 6 del lado A se logra
por la memoria intermedia 40 y los datos procedentes del bus
periférico 6 del lado A se retrasan antes de alcanzar la memoria
intermedia 40 haciéndolos pasar a través de la memoria intermedia
con reloj 42 que está sincronizada por la señal del reloj de
procesadores. El acceso desde el bus periférico 6 del lado A al bus
periférico 14 del lado B es controlado por la lógica de control 44
(también sincronizada con la señal del reloj de los procesadores)
que controla el funcionamiento de la memoria intermedia 40 por
medio de las líneas de control 46.
Este enfoque, en el cual todas las entradas al
circuito procesador del lado B se deben retrasar en la misma
cuantía (por ejemplo un ciclo de reloj de los procesadores), puede
causar problemas con la interfaz entre el puente 12 del lado B y el
bus periférico si funcionan a distintas velocidades de reloj,
porque esto significaría, para continuar con el ejemplo
anteriormente citado, intentar volver a temporizar el bus PCI de 33
MHz con un reloj de 100 MHz, dando lugar a difíciles problemas de
sincronización.
De acuerdo con una segunda realización preferida
de la presente invención, el retraso en tiempo introducido en los
datos procedentes de la memoria común 5 al lado B se aumenta a 3
ciclos de reloj de los procesadores, igual a un ciclo de reloj de
periféricos (en este caso el bus PCI). Es necesario ahora retrasar
las otras entradas al puente 12 del lado B en un ciclo de reloj de
periféricos, que es mucho más sencillo.
Como se muestra en la Figura 4, la única memoria
intermedia 32 con reloj se sustituye por cierto número de tales
memorias intermedias 32-34 (en este ejemplo 3)
conectadas en serie. Como resultado, los datos a través de la
memoria intermedia 24 se retrasan en cierto número (en este
ejemplo 3) de ciclos de reloj de los procesadores, equivalentes a
uno o más ciclos de reloj de periféricos. Al igual que en la Figura
3, la línea de puntos indica que la memoria intermedia de tres
estados 24 está realizada como parte de las memorias intermedias
con reloj 32-34, es decir, que la memoria intermedia
con reloj 34 y la memoria intermedia de tres estados 24 están
realizadas como una única memoria intermedia con reloj de tres
estados. Esto significa que los datos que llegan al puente 12 del
lado B sufren un retraso de tiempo de uno o más ciclos completos de
reloj de periféricos en comparación con los datos que llegan al
puente del lado A. De nuevo, la desaserción del reinicio del lado
B se retrasa en la cuantía del retraso de tiempo y todas las
entradas al lado B se retrasan en la misma cuantía. La lógica Pseudo
Lockstep de control de accesos del bloque 15 de acuerdo con la
presente realización es esencialmente similar a la anteriormente
descrita con respecto a la primera realización. Por tanto las
características de la Lógica Pseudo Lockstep de la Figura 4 llevan
los mismos números de referencia que las características
equivalentes de la Figura 3. La diferencia importante es que,
mientras la lógica Pseudo Lockstep de la primera realización está
sincronizada con la señal del reloj de procesadores, la Lógica
Pseudo Lockstep de la presente realización está sincronizada a la
señal del reloj de periféricos (en este ejemplo el reloj de 33
MHz).
Al experto en este campo le sería obvio que el
objeto de la invención no se limita a las realizaciones
específicas aquí descritas. Por ejemplo, la presente invención se
aplica igualmente a otras combinaciones de velocidades de reloj de
procesadores y de periféricos. Aunque aquí se ha descrito haciendo
referencia a circuitos de procesadores, la invención se aplica
igualmente a otras clases de circuitos digitales o lógicos,
incluyendo procesadores de señales digitales. Las referencias a la
memoria común incluyen cualesquiera dispositivos de lectura y
escritura, incluyendo registradores y almacenamiento de masas.
Otras formas de etapas de retraso que se pueden usar para llevar a
cabo la invención incluyen líneas de retraso.
Claims (8)
1. Un sistema de proceso de datos que
comprende
una memoria común (5),
un primer y un segundo circuito procesador de
datos (10, 1), cada uno dispuesto para ejecutar la misma secuencia
de pasos de funcionamiento y cada uno de ellos conectado a la
memoria común (5),
un dispositivo de aislamiento (24, 32, 33, 34)
conectado entre el primer circuito de proceso de datos (10) y la
memoria común (5) y dispuesto para restringir el acceso por parte
del primer circuito procesador de datos (10) a la memoria común (5)
a un acceso de sólo lectura,
en el cual el primer circuito procesador de datos
(10) está dispuesto para ejecutar cada paso de funcionamiento al
cabo de un periodo de tiempo establecido más tarde que el segundo
circuito procesador de datos (1);
caracterizado por un primero y un segundo
bus periférico (14, 6), estando dispuesto el segundo bus
periférico (6) para conectar el segundo circuito procesador (1) a
dispositivos adicionales y dispuesto para conectar el primer
circuito procesador (10) a través del primer bus periférico (14) a
los dispositivos adicionales,
y un controlador de acceso (15) dispuesto para
introducir un retraso de tiempo en las señales que pasan de los
dispositivos adicionales al primer circuito procesador (10).
2. El sistema de proceso de datos de la
reivindicación 1, que comprende también un comparador dispuesto
para comparar los funcionamientos de los circuitos procesadores de
datos (1, 10), en el cual el comparador está dispuesto para
compensar el retraso de tiempo entre la ejecución de cada paso de
funcionamiento por el segundo y el primero circuitos procesadores
(1, 10) cuando realiza la comparación.
3. El sistema de proceso de datos de cualquiera
de las reivindicaciones 1 y 2, en el cual todas las entradas
recibidas por el primer circuito procesador de datos (10) son
retrasadas en la duración del periodo de tiempo.
4. El sistema de proceso de datos de la
reivindicación 1, en el cual el controlador de acceso (15) está
dispuesto para evitar la comunicación entre el primero y el segundo
circuitos procesadores (1, 10) por medio de los buses periféricos
(6, 14) y para evitar que señales procedentes del primer circuito
procesador (10) pasen a los dispositivos adicionales.
5. El sistema de proceso de datos de cualquiera
de las reivindicaciones anteriores, en el cual los circuitos
procesadores primero y segundo (1, 10) están conectados a una
señal de primer reloj (18) para su sincronización.
6. El sistema de proceso de datos de la
reivindicación 5, en el cual los buses periféricos (6, 14) y el
controlador de acceso (15) están conectados a una señal de un
segundo reloj para su sincronización y en el cual, en
funcionamiento, la frecuencia de la señal del primer reloj (18) es
más elevada que la frecuencia de la señal del segundo reloj.
7. El sistema de proceso de datos de la
reivindicación 5 ó 6, en el cual el dispositivo de aislamiento
(24, 32, 33, 34) retrasa los datos un número entero de ciclos del
primer reloj.
8. El sistema de proceso de datos de la
reivindicación 7 como subordinada de la reivindicación 6, en el
cual el dispositivo de aislamiento (24, 32, 33, 34) retrasa los
datos en un número entero de ciclos del segundo reloj.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB9817598A GB2340627B (en) | 1998-08-13 | 1998-08-13 | Data processing system |
| GB9817598 | 1998-08-13 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2199527T3 true ES2199527T3 (es) | 2004-02-16 |
Family
ID=10837155
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES99306330T Expired - Lifetime ES2199527T3 (es) | 1998-08-13 | 1999-08-11 | Sistema de tratamiento de datos pseudo lockstep. |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US6519710B1 (es) |
| EP (1) | EP0980040B1 (es) |
| CN (1) | CN1154944C (es) |
| DE (1) | DE69908717T2 (es) |
| ES (1) | ES2199527T3 (es) |
| GB (1) | GB2340627B (es) |
| RU (1) | RU99118019A (es) |
Families Citing this family (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3982353B2 (ja) * | 2002-07-12 | 2007-09-26 | 日本電気株式会社 | フォルトトレラントコンピュータ装置、その再同期化方法及び再同期化プログラム |
| WO2004051907A2 (en) * | 2002-11-27 | 2004-06-17 | The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations | System and method of digital system performance enhancement |
| US7287184B2 (en) * | 2003-09-16 | 2007-10-23 | Rockwell Automation Technologies, Inc. | High speed synchronization in dual-processor safety controller |
| US7590822B1 (en) | 2004-08-06 | 2009-09-15 | Xilinx, Inc. | Tracking an instruction through a processor pipeline |
| US7346759B1 (en) | 2004-08-06 | 2008-03-18 | Xilinx, Inc. | Decoder interface |
| US7590823B1 (en) | 2004-08-06 | 2009-09-15 | Xilinx, Inc. | Method and system for handling an instruction not supported in a coprocessor formed using configurable logic |
| US7546441B1 (en) | 2004-08-06 | 2009-06-09 | Xilinx, Inc. | Coprocessor interface controller |
| US7243212B1 (en) * | 2004-08-06 | 2007-07-10 | Xilinx, Inc. | Processor-controller interface for non-lock step operation |
| EP1807761A1 (de) * | 2004-10-25 | 2007-07-18 | Robert Bosch Gmbh | Verfahren und vorrichtung zur datenverteilung aus wenigstens einer datenquelle in einem mehrprozessorsystem |
| US20070294559A1 (en) * | 2004-10-25 | 2007-12-20 | Thomas Kottke | Method and Device for Delaying Access to Data and/or Instructions of a Multiprocessor System |
| DE102004051952A1 (de) * | 2004-10-25 | 2006-04-27 | Robert Bosch Gmbh | Verfahren zur Datenverteilung und Datenverteilungseinheit in einem Mehrprozessorsystem |
| JP3897046B2 (ja) * | 2005-01-28 | 2007-03-22 | 横河電機株式会社 | 情報処理装置および情報処理方法 |
| US20070038849A1 (en) * | 2005-08-11 | 2007-02-15 | Rajiv Madampath | Computing system and method |
| US20090177866A1 (en) * | 2008-01-08 | 2009-07-09 | Choate Michael L | System and method for functionally redundant computing system having a configurable delay between logically synchronized processors |
| US8819485B2 (en) * | 2012-03-12 | 2014-08-26 | Infineon Technologies Ag | Method and system for fault containment |
| CN102970029A (zh) * | 2012-11-06 | 2013-03-13 | 北京广利核系统工程有限公司 | 一种高安全性数字量信号采集电路 |
| US9912754B2 (en) * | 2015-05-01 | 2018-03-06 | GM Global Technology Operations LLC | Vehicular data isolation device |
| US10002056B2 (en) | 2015-09-15 | 2018-06-19 | Texas Instruments Incorporated | Integrated circuit chip with cores asymmetrically oriented with respect to each other |
| US10740167B2 (en) * | 2016-12-07 | 2020-08-11 | Electronics And Telecommunications Research Institute | Multi-core processor and cache management method thereof |
| CN110175091B (zh) * | 2018-12-11 | 2023-06-23 | 中国航空工业集团公司西安航空计算技术研究所 | 一种Lockstep架构下的节点间信号同步方法、装置及电路 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE2644205A1 (de) * | 1976-09-30 | 1978-04-06 | Agfa Gevaert Ag | Fotografische kamera mit einer digitalen belichtungsregelvorrichtung |
| SE397013B (sv) * | 1976-12-17 | 1977-10-10 | Ellemtel Utvecklings Ab | Sett och anordning for att overfora datainformationer till tva parallellt arbetande datamaskindelar |
| US4358823A (en) * | 1977-03-25 | 1982-11-09 | Trw, Inc. | Double redundant processor |
| US4164787A (en) * | 1977-11-09 | 1979-08-14 | Bell Telephone Laboratories, Incorporated | Multiple microprocessor intercommunication arrangement |
| US4540898A (en) * | 1983-03-07 | 1985-09-10 | Motorola, Inc. | Clocked buffer circuit using a self-bootstrapping transistor |
| US5231640A (en) * | 1990-07-20 | 1993-07-27 | Unisys Corporation | Fault tolerant processor/memory architecture |
| SE9202182D0 (sv) * | 1991-07-18 | 1992-07-16 | Tandem Telecomm Syst | Mirrored memory multi processor system |
| JPH05128080A (ja) * | 1991-10-14 | 1993-05-25 | Mitsubishi Electric Corp | 情報処理装置 |
| US5604754A (en) * | 1995-02-27 | 1997-02-18 | International Business Machines Corporation | Validating the synchronization of lock step operated circuits |
| GB2317032A (en) * | 1996-09-07 | 1998-03-11 | Motorola Gmbh | Microprocessor fail-safe system |
-
1998
- 1998-08-13 GB GB9817598A patent/GB2340627B/en not_active Expired - Fee Related
-
1999
- 1999-08-11 ES ES99306330T patent/ES2199527T3/es not_active Expired - Lifetime
- 1999-08-11 EP EP99306330A patent/EP0980040B1/en not_active Expired - Lifetime
- 1999-08-11 DE DE69908717T patent/DE69908717T2/de not_active Expired - Lifetime
- 1999-08-12 US US09/373,278 patent/US6519710B1/en not_active Expired - Lifetime
- 1999-08-12 RU RU99118019/09A patent/RU99118019A/ru not_active Application Discontinuation
- 1999-08-13 CN CNB991197976A patent/CN1154944C/zh not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| CN1154944C (zh) | 2004-06-23 |
| DE69908717D1 (de) | 2003-07-17 |
| US6519710B1 (en) | 2003-02-11 |
| EP0980040B1 (en) | 2003-06-11 |
| HK1024067A1 (en) | 2000-09-29 |
| EP0980040A2 (en) | 2000-02-16 |
| DE69908717T2 (de) | 2003-12-11 |
| GB9817598D0 (en) | 1998-10-07 |
| CN1248748A (zh) | 2000-03-29 |
| GB2340627A (en) | 2000-02-23 |
| EP0980040A3 (en) | 2000-08-09 |
| GB2340627B (en) | 2000-10-04 |
| RU99118019A (ru) | 2001-08-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2199527T3 (es) | Sistema de tratamiento de datos pseudo lockstep. | |
| US7272681B2 (en) | System having parallel data processors which generate redundant effector date to detect errors | |
| ES2247459T3 (es) | Sistema de computadores tolerante a fallos, metodo para la resincronizacion del mismo y programa para su resincronizacion. | |
| US5834956A (en) | Core clock correction in a 2/N mode clocking scheme | |
| US8898502B2 (en) | Clock domain crossing interface | |
| US8275977B2 (en) | Debug signaling in a multiple processor data processing system | |
| US5654988A (en) | Apparatus for generating a pulse clock signal for a multiple-stage synchronizer | |
| US5802132A (en) | Apparatus for generating bus clock signals with a 1/N characteristic in a 2/N mode clocking scheme | |
| US10999050B1 (en) | Methods and apparatus for data synchronization in systems having multiple clock and reset domains | |
| US5862373A (en) | Pad cells for a 2/N mode clocking scheme | |
| JPH02211509A (ja) | オン・チツプ・フエーズ発生器 | |
| US20100315134A1 (en) | Systems and methods for multi-lane communication busses | |
| US12189444B2 (en) | Reset domain control | |
| JP2005518042A (ja) | クロックの異なるバス間におけるデータ転送 | |
| JPH06161798A (ja) | 情報処理装置 | |
| US5821784A (en) | Method and apparatus for generating 2/N mode bus clock signals | |
| US5826067A (en) | Method and apparatus for preventing logic glitches in a 2/n clocking scheme | |
| EP4047479B1 (en) | Safe-stating a system interconnect within a data processing system | |
| US8890594B1 (en) | System for functional reset across multiple clock domains | |
| EP4383044A1 (en) | Architecture for managing asynchronous resets in a system-on-a-chip | |
| US11644861B2 (en) | Information processing apparatus including function blocks and generation units | |
| KR100579419B1 (ko) | Ddr sdram 데이터 전송을 위한 amba인터페이스 장치 | |
| KR20050092863A (ko) | 리얼 타임 클럭 장치 |