ES2320806T3 - Procedimiento y dispositivo para determinar un estado de inicio en un sistema de ordenador con al menos, dos unidades de ejecucion, a traves del marcado de registros. - Google Patents
Procedimiento y dispositivo para determinar un estado de inicio en un sistema de ordenador con al menos, dos unidades de ejecucion, a traves del marcado de registros. Download PDFInfo
- Publication number
- ES2320806T3 ES2320806T3 ES06777942T ES06777942T ES2320806T3 ES 2320806 T3 ES2320806 T3 ES 2320806T3 ES 06777942 T ES06777942 T ES 06777942T ES 06777942 T ES06777942 T ES 06777942T ES 2320806 T3 ES2320806 T3 ES 2320806T3
- Authority
- ES
- Spain
- Prior art keywords
- mode
- memory
- internal
- start state
- comparison
- 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.)
- Active
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/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
-
- 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/845—Systems in which the redundancy can be transformed in increased performance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Procedimiento para la determinación de un estado de inicio en un sistema de ordenador con, al menos, dos unidades de ejecución (C100, C310, C320, C410, C420), en el cual se conmuta entre un modo de rendimiento y un modo de comparación, y en la conmutación del modo de rendimiento al modo de comparación se genera un mismo estado de inicio interno de las unidades de ejecución (C100, C310, C320, C410, C420) para el modo de comparación, caracterizado porque las memorias, o las áreas de memoria (C101, C102, C104, C311, C321, C411, C421), de las unidades de ejecución (C100, C310, C320, C410, C420) que, potencialmente, deben ser adaptadas para el estado interno de inicio, son provistas de una identificación que indica si los datos y/o las órdenes en estas memorias, o en estas áreas de memoria, (C101, C102, C104, C311, C321, C411, C421) deben ser adaptadas o no deben ser adaptadas para el estado de inicio.
Description
Procedimiento y dispositivo para determinar un
estado de inicio en un sistema de ordenador con, al menos, dos
unidades de ejecución, a través del marcado de registros.
La presente invención parte de un procedimiento
y un dispositivo para conmutar entre, al menos, dos modos de
funcionamiento de un microprocesador con, al menos, dos unidades de
ejecución de segmentos de programa acorde al término genérico de
las reivindicaciones independientes.
Fallas transientes, originadas por partículas
alfa o radiación cósmica, son un problema creciente para circuitos
integrados. Debido a los tamaños cada vez más menguantes en la
estructura, tensiones decrecientes y mayores frecuencias, se
incrementa la probabilidad de que una punta de tensión, originada
por partículas alfa o radiación cósmica, falsifique un valor lógico
en un circuito integrado. Como consecuencia, se puede obtener un
resultado de cálculo falso. Por ello, en sistemas en los cuales es
relevante la seguridad, deben detectarse de manera confiable dichas
fallas.
En el caso de sistemas en los cuales es
relevante la seguridad, por ejemplo, un sistema de regulación ABS
en un vehículo, en el cual deben detectarse de manera segura los
funcionamientos fallidos de la electrónica, usualmente se prevén
redundancias para el reconocimiento de fallas, precisamente en los
dispositivos de mando correspondientes de tales sistemas. Por
ejemplo, en sistemas ABS conocidos, está duplicado el
microcontrolador completo, asimismo, todas las funciones ABS se
calculan de manera redundante y se verifica su coincidencia. Si se
presenta una discrepancia en los resultados se apaga el sistema
ABS.
Este tipo de unidades de procesador también se
conocen como arquitecturas dual-core o
multi-core (doble núcleo o
multi-núcleo). Los diferentes core ejecutan el mismo
segmento de programa, de manera redundante y sincronizada, y los
resultados de ambos core son comparados. En la comparación, que
verifica su coincidencia, se reconoce una falla. En adelante, esta
configuración se denomina modo de comparación. Las arquitecturas
dual-core o multi-core también se
implementan en otras aplicaciones, también para incrementar la
potencia, es decir, para un incremento del rendimiento. Ambos core
ejecutan diferentes segmentos de programa, por lo cual se puede
obtener un incremento de la potencia, en comparación con el modo de
comparación o un sistema single core. Esta configuración se
denomina modo de potencia o modo de rendimiento. En
caracterizaciones especiales con los mismos core, este sistema
también se denomina sistema multiprocesador simétrico (SMP). Una
ampliación de estos sistemas es una conmutación mediante software
entre estos dos modos, mediante un acceso a una dirección especial,
y dispositivos de hardware especializados. En el modo de
comparación, se comparan entre sí las señales de salida de los
core. En el modo de rendimiento, ambos core trabajan como un sistema
multiprocesador simétrico (SMP) y ejecutan diferentes programas,
segmentos de programa u órdenes.
Por la memoria US 6615366 B1 ya se conoce un
ordenador multiprocesador que presenta un modo de comparación y un
modo de rendimiento.
En los microprocesadores descritos en el estado
de la técnica, antes de conmutar del modo de rendimiento al modo de
comparación, se deben adaptar los estados internos (registros,
pipelines, etc.) de las unidades de ejecución. En el caso de una
unidad de ejecución con muchos registros, esto puede demandar
relativamente mucho tiempo de cálculo y prolongar un cambio de modo
del modo de rendimiento al modo de comparación. El procedimiento
usual para la adaptación de los estados de las unidades de ejecución
consiste en que todos los registros en las unidades de ejecución se
lleven al valor cero o que su contenido se marque como no
válido.
La tarea de la invención es acortar este cambio
del modo de rendimiento al modo de comparación. Los ejemplos de
ejecución aquí descritos presentan la ventaja, respecto del estado
actual de la técnica, de que posibilitan una conmutación más rápida
entre el modo de rendimiento y el modo de comparación, dado que,
mediante el procedimiento acorde a la invención, los registros de
las unidades de ejecución pueden ser inicializadas rápidamente,
según el modo que integran.
Se aspira a un procedimiento para determinar un
estado de inicio en un sistema de ordenador con, al menos, dos
unidades de ejecución, en el cual se conmuta entre un modo de
rendimiento y un modo de comparación y en la conmutación del modo
de rendimiento al modo de comparación se genera un mismo estado de
inicio interno de las unidades de ejecución para el modo de
comparación, caracterizado porque las memorias, o las áreas
de memoria internas que, potencialmente, deben ser adaptadas para
el estado de inicio, son provistas de una identificación que indica
si los datos y/o las órdenes en estas memorias, o en estas áreas de
memoria, deben ser adaptadas o no deben ser adaptadas para el
estado de inicio. Ventajosamente, en el estado de inicio, al menos
una memoria, o área de memoria, de la unidad de ejecución
respectiva, es ocupada con, al menos, un valor predeterminable, si
la identificación así lo indica. Ventajosamente, el estado de inicio
generado por una primera unidad de ejecución es copiado en un área
de memoria, y una segunda unidad de ejecución adopta este estado de
inicio generado de esta área de memoria, si la identificación lo
indica. Ventajosamente, el estado de inicio generado por una
primera unidad de ejecución es copiado por una segunda unidad de
ejecución a través de un canal de comunicación especial en, al
menos, una memoria, o un área de memoria, si la identificación lo
indica. Es ventajoso prever una memoria inicial, o un área de
memoria inicial, e indicar en ella cuál de las memorias o áreas de
memoria deben ser adaptadas para el estado de inicio. Es ventajoso
prever un registro o un juego de registros, e indicar, en él, cuál
de las memorias o áreas de memoria deben ser adaptadas para el
estado de inicio. Es ventajoso prever una memoria o un área de
memoria inicial, e indicar, en ella, cuál de las memorias o áreas
de memoria no deben ser adaptadas para el estado de inicio. Es
ventajoso prever un registro o un juego de registros, e indicar, en
él, cuál de las memorias o áreas de memoria no deben ser adaptadas
para el estado de inicio. Se aspira a un dispositivo para
determinar un estado de inicio en un sistema de ordenador que
contiene, al menos, dos unidades de ejecución, en el cual se
conmuta entre un modo de rendimiento y un modo de comparación, y en
la conmutación del modo de rendimiento al modo de comparación se
genera un mismo estado de inicio interno de las unidades de
ejecución para el modo de comparación, caracterizado porque
contiene, al menos, una memoria, o área de memoria, asignada a una
unidad de ejecución, acondicionadas de modo tal que ésta, si debe
ser potencialmente adaptada para el estado de inicio, puede estar
provista de una identificación que indica si los datos y/o las
órdenes en estas memorias, o en estas áreas de memoria, deben ser
adaptadas o no deben ser adaptadas para el estado de inicio. En el
caso de la memoria o área de memoria, se trata, ventajosamente, de
un registro. Es ventajoso prever una memoria inicial o un área de
memoria inicial, acondicionada de modo tal que en ella se indique
cuál de las memorias o áreas de memoria deben ser adaptadas para el
estado de inicio. Es ventajoso prever un registro o un juego de
registros, acondicionado de modo tal que en él se indique cuál de
las memorias, o áreas de memoria, deben ser adaptadas para el estado
de inicio. Es ventajoso prever una memoria inicial o un área de
memoria inicial, acondicionada de modo tal que en ella se indique
cuál de las memorias, o áreas de memoria, no deben ser adaptadas
para el estado de inicio. Es ventajoso prever un registro o un
juego de registros, acondicionado de modo tal que en él se indique
cuál de las memorias, o áreas de memoria, no deben ser adaptadas
para el estado de inicio.
Otras ventajas y acondicionamientos ventajosos
se desprenden de las características de las reivindicaciones, así
como de la descripción.
La figura 1 muestra la construcción general de
un procesador con dos unidades de ejecución y una unidad de
comparación.
La figura 2 muestra una posible construcción de
una unidad de ejecución, con dos juegos diferentes de registro y la
lógica de procesamiento.
La figura 3 muestra una posible construcción de
una unidad de ejecución con dos grupos diferentes de registro y la
lógica de procesamiento. Los juegos de registro están, a su vez,
subdivididos en dos grupos diferentes.
La figura 4 muestra dos unidades de ejecución
con sus registros internos, una memoria intermedia y una
comunicación entre las unidades de ejecución para la transmisión de
estados internos.
La figura 5 muestra dos unidades de ejecución
con sus registros internos y una memoria intermedia para la
lectura de los estados internos para el estado de inicio del modo de
comparación.
La figura 6 muestra la construcción de un
registro con datos de uso y de control.
La figura 7 muestra un multiprocesador con dos
unidades de ejecución, así como los registros internos de las
unidades de ejecución.
La figura 8 muestra un multiprocesador con dos
unidades de ejecución, sus registros internos así como un registro
especial.
Algunas unidades en las figuras poseen el mismo
número, pero están identificadas, adicionalmente, con a o b. Si se
indica el número sin el agregado de a o b, se hace referencia a una
de las unidades presentes pero a ninguna instancia especial. Si
sólo se hace referencia a una instancia determinada de una unidad,
se le agrega siempre la identificación a o b al número.
Como unidad de ejecución, se puede indicar, en
adelante, tanto un procesador, un core, una CPU, como así también
una FPU (floating point unit, o unidad de punto flotante), un DSP
(procesador de señales digital), un procesador core o una ALU
(unidad lógica aritmética).
En la figura 1 está representado un sistema de
procesador C1000, que puede conmutar entre un modo de comparación y
un modo de rendimiento, que consiste en dos unidades de ejecución
C100a y C100b. En un ejemplo de ejecución preferido, las unidades
de ejecución son idénticas. Ambas unidades de ejecución C100a y
C100b poseen, respectivamente, una interfaz C110a o C110b para el
bus de sistema, a través de la cual se lleva a cabo el acceso, por
ejemplo, a medios de almacenamiento como, por ejemplo, RAM, ROM,
Flash o a unidades periféricas. Si el sistema de procesador C1000
se encuentra en el modo de comparación, las señales de salida de las
unidades de ejecución C100a, C100b son comparadas entre si a través
de la unidad C120. Esta comparación se lleva a cabo,
preferentemente, de manera sincronizada o con un desplazamiento
fijo de frecuencia, esto significa que en cada paso las señales de
salida de, al menos, dos unidades de ejecución C100a, C100b son
comparadas por la unidad C120. Si existe una diferencia entre las
señales comparadas, entonces se genera una señal de falla por parte
de la unidad C120. Opcionalmente, también pueden compararse las
señales de entrada de las unidades de ejecución C100a y C100b. Si
el sistema de procesador C1000 se encuentra en el modo de
rendimiento, la unidad de comparación C120 no está activa y no se
genera una señal de falla en el caso de diferencias en las señales
de salida. La desactivación de la unidad de comparación puede
realizarse de diferentes maneras: No se lleva a cabo una
comparación por parte de la unidad C120. No se aplican señales para
la comparación en la unidad C120. Se lleva a cabo una comparación
por parte de la unidad C120, pero el resultado es ignorado.
En el cambio del modo de rendimiento al modo de
comparación se debe asegurar que el estado interno de ambas
unidades de ejecución C100a y C100b sea idéntico al iniciar el modo
de comparación, es decir, en el momento en el cual se activa el
comparador C120. En adelante denominaremos estado de inicio al
estado del comienzo del modo de comparación, a partir del cual se
inician los cálculos en el modo de comparación. Es necesario que
los estados en las unidades de ejecución sean idénticos para que, en
el caso libre de fallas, en ningún momento presenten diferencias
las señales comparadas por C120 en el modo de comparación.
Diferentes estados de las unidades de ejecución en el modo de
comparación, en general, provocarán que se genere una señal de
salida diferente. Estas señales de salida diferentes serían
detectadas como fallas por parte del comparador, aunque se trate de
las mismas señales de entrada y no se haya presentado ninguna falla
detectable en el procesamiento.
Una manera de alcanzar el mismo estado en ambas
unidades de ejecución a comienzos del modo de comparación, es
marcar como no válidos todos los registros internos en las unidades
de ejecución. Pero esta posibilidad de marcas no existe en todos
los registros. Éstos deben ser llevados entonces a un valor
definido, idéntico en ambas unidades de ejecución.
En un primer modo de ejecución, representado en
la figura 2, se describe una conmutación entre dos juegos de
registro. En la figura 2 se describe una posible implementación de
la unidad de ejecución C100. Contiene, al menos, dos diferentes
grupos de registros C101 y C102, y una lógica interna C103. El grupo
de registros C101 puede ser marcado como no válido. Esto significa
que la lógica interna C103 de la unidad de ejecución reconoce, al
acceder a un registro marcado como no válido de este grupo, que el
contenido para este registro debe ser determinado nuevamente; por
ejemplo, recargando desde la RAM, ROM, Flash o a través de un nuevo
cálculo. Los registros del otro grupo C102 siempre tienen un
contenido válido. Los registros de trabajo de una unidad de
ejecución pertenecen, por ejemplo, a este grupo.
Como ya hemos mencionado, si se lleva a cabo un
cambio del modo de rendimiento al modo de comparación, estos
registros, de C101 y C102, en ambas unidades de ejecución C100,
deben ser idénticos.
No es necesario para los grupos de registro
C101, C102 que esta condición esté vigente desde el momento de la
conmutación del modo de rendimiento al modo de comparación, pero sí
a más tardar en el primer acceso de lectura a dos registros
idénticos en las unidades de ejecución C100, tras conmutar al modo
de comparación. Un procedimiento usual consiste en asignarles a
tiempo, a todos los registros del grupo C102, un valor fijo, antes
de la conmutación al modo de comparación. Independientemente de
ello, en una conmutación al modo de comparación, los registros del
grupo C101 son marcados como no válidos.
Si una unidad de ejecución C100 está constituida
como en la figura 3, acorde a C100c, en cada una de las unidades
de ejecución, este procedimiento puede acelerarse implementado dos
juegos de registro C101a, C 102a y C101b, C102b. En lugar de
adaptar los registros antes, durante o después de la conmutación, se
utilizan diferentes registros en el modo de rendimiento y en el
modo de comparación. En el modo de comparación se utilizan los
registros del grupo C101a y C102a, mientras que en el modo de
rendimiento se utilizan los registros del grupo C101b y C102b.
Entre estos juegos de registro se conmuta en el momento de la
conmutación al modo de comparación o al modo de rendimiento. Si
para el registro 101a y 102a se ha asegurado que el contenido es
idéntico, por ejemplo, mediante una correspondiente inicialización
al encender el procesador, entonces estos registros también
permanecen iguales durante el funcionamiento en ambas unidades de
ejecución. De este modo, en una conmutación del modo de rendimiento
al modo de comparación, no es necesario efectuar una adaptación de
los contenidos de los registros, dado que en el modo de comparación
se accede siempre solamente a los registros idénticos entre ambas
unidades de ejecución C100a y C100b y que sólo pueden ser descritas
en el modo de comparación.
Otra posibilidad de aceleración del proceso de
conmutación, del modo de rendimiento al modo de comparación, se
muestra en la figura 4. Ella consiste en copiar el estado interno
C104d o C 104e, respectivamente, de una unidad de ejecución C 100d,
C 100e, a otra unidad de ejecución C100d o C100e. Durante el
funcionamiento, en una conmutación del modo de rendimiento al modo
de comparación, usualmente estará disponible una unidad de
ejecución antes que la otra unidad de ejecución para una
conmutación. Si los registros internos de una unidad de ejecución
(C104d, en el caso de C100d, y C104e, en el caso de C100e), que está
disponible antes, son inicializados a los valores requeridos por el
modo de comparación, entonces el estado interno de una segunda
unidad de ejecución, temporalmente posterior, puede ser adaptado,
adoptando el estado de la primera unidad de ejecución. Si, por
ejemplo, la unidad de ejecución C100d ya está disponible antes que
la unidad de ejecución C100e para una conmutación, entonces,
durante la conmutación se copia el estado de C104d a C104e.
Este copiado del estado interno puede llevarse a
cabo utilizando directamente una comunicación C300 entre ambas
unidades de ejecución, a través de la cual se copia el estado
interno. De modo alternativo, el estado puede ser copiado de una
primera unidad de ejecución temporalmente anterior a una memoria
intermedia (de conexión rápida) C200 desde la cual una segunda
unidad de ejecución, temporalmente posterior, adopta el estado del
registro interno.
En otro modo de ejecución, representado en la
figura 5, se describe la inicialización de los estados internos
para el modo de comparación, copiando los contenidos de los
registros de un área de memoria con conexión rápida. Se presupone,
en este caso, que al iniciar el modo de rendimiento el estado
interno C104f, C104g de las, al menos, dos unidades de ejecución
C100f, C100g, siempre se lleva exactamente a un valor definido.
Este valor está almacenado en una memoria C400, que posee una
conexión lo más rápida posible a las unidades de ejecución C100f,
C100g y, con ello, a los registros C104f, C104g. Esta memoria es,
preferentemente, no volátil. Pero también es posible una memoria
volátil, si durante la inicialización del sistema multiprocesador,
el estado de inicialización almacenado en la memoria para el modo
de rendimiento o bien es copiado desde una memoria no volátil, es
recibido de una fuente de datos externa, o es generado por el
sistema de multiprocesador. Para la conmutación del modo de
rendimiento al modo de comparación, se escribe el estado de
inicialización, almacenado en la memoria C400, para el modo de
comparación, en el registro C104f, C104g de las, al menos, dos
unidades de ejecución C100f, C100g, que deben ser accionadas en el
modo de comparación.
En otro modo de ejecución, se marcan estados
parciales que no deben ser adaptados durante una conmutación al
modo de comparación, entre las unidades de ejecución. No siempre es
necesario adaptar todos los registros de las unidades de ejecución
durante una conmutación del modo de rendimiento al modo de
comparación. Para que en el modo de comparación no se reconozca
equivocadamente una falla, sólo deben ser adaptados aquellos
registros de una unidad de ejecución con los registros de una
segunda unidad de ejecución, que se utilicen realmente en el modo
de comparación. Este es el caso, sobre todo, en el caso de
arquitecturas que prevén una gran cantidad de registros en las
unidades de ejecución, o bien, puede ser tenido en cuenta en el
desarrollo de software como condición secundaria. En cualquier caso
puede ser determinada la cantidad de registros utilizada en un modo
de comparación. En el caso de que no se utilicen todos, no es
necesario adaptar todos los registros, sino sólo los utilizados.
Por ello se propone prever bits adicionales en cada registro. En
estos bits se puede codificar si el contenido de este registro debe
ser adaptado o no al correspondiente registro de las otras unidades
de ejecución durante la conmutación de un modo de rendimiento a un
modo de comparación. De modo alternativo, puede existir un registro
especial cuyo contenido defina qué registro de una unidad de
ejecución debe ser adaptado al registro correspondiente de las
demás unidades de ejecución. La adaptación misma puede llevarse a
cabo independientemente de las marcaciones a través de los
procedimientos conocidos o presentados aquí.
La figura 7 muestra un sistema de procesador
C300 con múltiples unidades de ejecución C310, C320 con sus
registros C311, C321. Cada registro de C311, C321 consiste en n
bits (n > 1) con datos de uso (representado en la figura 6
C2010). Adicionalmente a cada uno de estos n bits, se agregan m Bits
(m >= 1) con datos de control (representado en la figura 6
C2000). En estos bits "m" está codificado si se lleva a cabo
una adaptación durante el cambio al modo de comparación. Si los
bits de control consisten, en el caso más simple, en un solo bit,
un valor cero significa, por ejemplo, que debe no llevarse a cabo
una adaptación, y un valor de uno, que se debe llevar a cabo una
adaptación. La evaluación de estos bits se lleva a cabo durante la
conmutación del modo de rendimiento al modo de comparación.
La figura 8 muestra otro modo de ejecución de la
invención con un sistema de procesador C400, que comprende unidades
de ejecución C410, C420 con sus registros C411, C422. El sistema de
procesador C400 contiene, adicionalmente un registro C430. El
contenido de este registro C430 define cuales registros de C411,
C421 de las unidades de ejecución C410, C420 deben ser adaptados en
el caso de un cambio al modo de comparación. Por ejemplo, el
registro C430 puede ser realizado de tal manera que, para cada
registro potencialmente adaptable de C411, C421, esté previsto un
bit en C430. Si está puesto el bit correspondiente, debe adaptarse
el registro correspondiente, si el bit no está puesto, no debe
adaptarse el registro correspondiente. La evaluación de este
registro se lleva a cabo durante la conmutación del modo de
rendimiento al modo de comparación. En otro modo de ejecución, no
representado en una figura, no se prevé un registro central C430,
como representado en la figura 8, sino que se prevé un registro en
cada unidad de ejecución que percibe la tarea del registro C430.
Esto significa que en este registro se codifica cuál de los
registros de la unidad de ejecución deben ser adaptados a los
registros de, al menos, una segunda unidad de ejecución, durante la
conmutación del modo de rendimiento. Pero en el caso de una
conmutación de un modo de rendimiento a un modo de comparación se
debe asegurar entonces que los contenidos de este registro especial
sean idénticos en todas las unidades de ejecución por
sincronizar.
Claims (14)
1. Procedimiento para la determinación de un
estado de inicio en un sistema de ordenador con, al menos, dos
unidades de ejecución (C100, C310, C320, C410, C420), en el cual se
conmuta entre un modo de rendimiento y un modo de comparación, y en
la conmutación del modo de rendimiento al modo de comparación se
genera un mismo estado de inicio interno de las unidades de
ejecución (C100, C310, C320, C410, C420) para el modo de
comparación, caracterizado porque las memorias, o las áreas
de memoria (C101, C102, C104, C311, C321, C411, C421), de las
unidades de ejecución (C100, C310, C320, C410, C420) que,
potencialmente, deben ser adaptadas para el estado interno de
inicio, son provistas de una identificación que indica si los datos
y/o las órdenes en estas memorias, o en estas áreas de memoria,
(C101, C102, C104, C311, C321, C411, C421) deben ser adaptadas o no
deben ser adaptadas para el estado de inicio.
2. Procedimiento acorde a la reivindicación 1,
caracterizado porque para el estado de inicio, al menos una
memoria, o área de memoria (C101, C102, C104, C311, C321, C411,
C421), de la unidad de ejecución respectiva (C100, C310, C320,
C410, C420), es ocupada con, al menos, un valor predeterminable si
la identificación así lo indica.
3. Procedimiento acorde a la reivindicación 1,
caracterizado porque el estado de inicio generado por una
primera unidad de ejecución (C100, C310, C320, C410, C420) es
copiado en un área de memoria, y una segunda unidad de ejecución
(C100, C310, C320, C410, C420) adopta este estado de inicio,
generado de esta área de memoria, si la identificación lo
indica.
4. Procedimiento acorde a la reivindicación 1,
caracterizado porque el estado de inicio generado por una
primera unidad de ejecución (C100, C310, C320, C410, C420) es
copiado por una segunda unidad de ejecución (C100, C310, C320,
C410, C420) a través de un canal de comunicación especial en, al
menos, una memoria, o un área de memoria, interna (C101, C102,
C104, C311, C321, C411, C421) si la identificación lo indica.
5. Procedimiento acorde a la reivindicación 1,
caracterizado porque está prevista una memoria inicial o un
área de memoria inicial, y en ella se indica cuál de las memorias, o
áreas de memoria, internas (C101, C102, C104, C311, C321, C411,
C421) deben ser adaptadas para el estado de inicio.
6. Procedimiento acorde a la reivindicación 1,
caracterizado porque está previsto un registro o un juego de
registros y en él se indica cuál de las memorias, o áreas de
memoria, internas (C101, C102, C104, C311, C321, C411, C421) deben
ser adaptadas para el estado de inicio.
7. Procedimiento acorde a la reivindicación 1,
caracterizado porque está prevista una memoria inicial o un
área de memoria inicial, y en ella se indica cuál de las memorias, o
áreas de memoria, internas (C101, C102, C104, C311, C321, C411,
C421) no deben ser adaptadas para el estado de inicio.
8. Procedimiento acorde a la reivindicación 1,
caracterizado porque está previsto un registro o un juego de
registros y en él se indica cuál de las memorias, o áreas de
memoria, internas (C101, C102, C104, C311, C321, C411, C421) no
deben ser adaptadas para el estado de inicio.
9. Dispositivo para la determinación de un
estado de inicio en un sistema de ordenador con, al menos, dos
unidades de ejecución (C100, C310, C320, C410, C420), en el cual se
conmuta entre un modo de rendimiento y un modo de comparación, y en
la conmutación del modo de rendimiento al modo de comparación se
genera un mismo estado de inicio interno de las unidades de
ejecución para el modo de comparación, caracterizado porque
en las unidades de ejecución (C100, C310, C320, C410, C420) se
encuentra, al menos, una memoria, o área de memoria, interna (C101,
C102, C104, C311, C321, C411, C421), acondicionadas de modo tal que
ésta, si debe ser potencialmente adaptada para el estado de inicio,
es provista de una identificación que indica si los datos y/o las
órdenes en estas memorias, o en estas áreas de memoria, internas
(C101, C102, C104, C311, C321, C411, C421) deben ser adaptadas o no
deben ser adaptadas para el estado de inicio.
10. Dispositivo acorde a la reivindicación 9,
caracterizado porque, en el caso de la memoria, o área de
memoria, interna (C101, C102, C104, C311, C321, C411, C421), se
trata de, al menos, un registro.
11. Dispositivo acorde a la reivindicación 9,
caracterizado porque contiene una memoria inicial o un área
de memoria inicial, configurada de modo tal que en ella se indica
cuál de las memorias, o áreas de memoria, internas (C101, C102,
C104, C311, C321, C411, C421) deben ser adaptadas para el estado de
inicio.
12. Dispositivo acorde a la reivindicación 9,
caracterizado porque contiene un registro o un juego de
registros, configurado de modo tal que en él se indica cuál de las
memorias, o áreas de memoria, internas (C101, C102, C104, C311,
C321, C411, C421) deben ser adaptadas para el estado de inicio.
13. Dispositivo acorde a la reivindicación 9,
caracterizado porque contiene una memoria inicial o un área
de memoria inicial, configurada de modo tal que en ella se indica
cuál de las memorias, o áreas de memoria, internas (C101, C102,
C104, C311, C321, C411, C421) no deben ser adaptadas para el estado
de inicio.
14. Dispositivo acorde a la reivindicación 9,
caracterizado porque contiene un registro o un juego de
registros, configurado de modo tal que en él se indica cuál de las
memorias, o áreas de memoria, internas (C101, C102, C104, C311,
C321, C411, C421) no deben ser adaptadas para el estado de
inicio.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102005037226A DE102005037226A1 (de) | 2005-08-08 | 2005-08-08 | Verfahren und Vorrichtung zur Festlegung eines Startzustandes bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten durch markieren von Registern |
| DE102005037226 | 2005-08-08 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2320806T3 true ES2320806T3 (es) | 2009-05-28 |
Family
ID=37605812
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES06777942T Active ES2320806T3 (es) | 2005-08-08 | 2006-07-25 | Procedimiento y dispositivo para determinar un estado de inicio en un sistema de ordenador con al menos, dos unidades de ejecucion, a traves del marcado de registros. |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US20100011183A1 (es) |
| EP (1) | EP1915686B1 (es) |
| JP (1) | JP2009505179A (es) |
| CN (1) | CN101243405A (es) |
| AT (1) | ATE425493T1 (es) |
| DE (2) | DE102005037226A1 (es) |
| ES (1) | ES2320806T3 (es) |
| WO (1) | WO2007017371A2 (es) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5507830B2 (ja) * | 2008-11-04 | 2014-05-28 | ルネサスエレクトロニクス株式会社 | マイクロコントローラ及び自動車制御装置 |
| JP2010198131A (ja) * | 2009-02-23 | 2010-09-09 | Renesas Electronics Corp | プロセッサシステム、及びプロセッサシステムの動作モード切り替え方法 |
| US10158873B2 (en) | 2011-11-30 | 2018-12-18 | Qualcomm Incorporated | Depth component removal for multiview video coding (MVC) compatible three-dimensional video coding (3DVC) |
| CN106502811B (zh) * | 2016-10-12 | 2020-03-24 | 北京精密机电控制设备研究所 | 一种1553b总线通信故障处理方法 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5953742A (en) * | 1996-07-01 | 1999-09-14 | Sun Microsystems, Inc. | Memory management in fault tolerant computer systems utilizing a first and second recording mechanism and a reintegration mechanism |
| US6272616B1 (en) * | 1998-06-17 | 2001-08-07 | Agere Systems Guardian Corp. | Method and apparatus for executing multiple instruction streams in a digital processor with multiple data paths |
| JP2000181738A (ja) * | 1998-12-18 | 2000-06-30 | Fujitsu Ltd | 二重化システム及びメモリ制御方法 |
| US6615366B1 (en) * | 1999-12-21 | 2003-09-02 | Intel Corporation | Microprocessor with dual execution core operable in high reliability mode |
| US6640313B1 (en) * | 1999-12-21 | 2003-10-28 | Intel Corporation | Microprocessor with high-reliability operating mode |
| US6772368B2 (en) * | 2000-12-11 | 2004-08-03 | International Business Machines Corporation | Multiprocessor with pair-wise high reliability mode, and method therefore |
| US7085959B2 (en) * | 2002-07-03 | 2006-08-01 | Hewlett-Packard Development Company, L.P. | Method and apparatus for recovery from loss of lock step |
| US20070277023A1 (en) * | 2003-06-24 | 2007-11-29 | Reinhard Weiberle | Method For Switching Over Between At Least Two Operating Modes Of A Processor Unit, As Well Corresponding Processor Unit |
| EP1812857B1 (de) * | 2004-10-25 | 2008-09-03 | Robert Bosch Gmbh | Vorrichtung und verfahren zur modusumschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten |
-
2005
- 2005-08-08 DE DE102005037226A patent/DE102005037226A1/de not_active Withdrawn
-
2006
- 2006-07-25 ES ES06777942T patent/ES2320806T3/es active Active
- 2006-07-25 US US11/990,233 patent/US20100011183A1/en not_active Abandoned
- 2006-07-25 CN CNA2006800295016A patent/CN101243405A/zh active Pending
- 2006-07-25 JP JP2008525517A patent/JP2009505179A/ja active Pending
- 2006-07-25 EP EP06777942A patent/EP1915686B1/de not_active Not-in-force
- 2006-07-25 AT AT06777942T patent/ATE425493T1/de not_active IP Right Cessation
- 2006-07-25 WO PCT/EP2006/064607 patent/WO2007017371A2/de not_active Ceased
- 2006-07-25 DE DE502006003116T patent/DE502006003116D1/de active Active
Also Published As
| Publication number | Publication date |
|---|---|
| DE502006003116D1 (de) | 2009-04-23 |
| ATE425493T1 (de) | 2009-03-15 |
| DE102005037226A1 (de) | 2007-02-15 |
| EP1915686A2 (de) | 2008-04-30 |
| WO2007017371A3 (de) | 2007-04-26 |
| WO2007017371A2 (de) | 2007-02-15 |
| CN101243405A (zh) | 2008-08-13 |
| JP2009505179A (ja) | 2009-02-05 |
| EP1915686B1 (de) | 2009-03-11 |
| US20100011183A1 (en) | 2010-01-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7665811B2 (ja) | 作業負荷の繰り返し冗長化 | |
| US8560761B2 (en) | Memory resource management for a flash aware kernel | |
| US8458393B2 (en) | Flash memory and operating system kernel | |
| US8745311B2 (en) | Flash memory usability enhancements in main memory application | |
| US6820177B2 (en) | Protected configuration space in a protected environment | |
| US20140229661A1 (en) | Operating system based dram and flash management | |
| ES2666580T3 (es) | Método de envío de datos, método de recepción de datos y dispositivo de almacenamiento | |
| KR100327854B1 (ko) | 캐시메모리시스템 | |
| KR900016868A (ko) | 캐시용 고장진단 모드 | |
| BR9911409A (pt) | Sistema virtual para armazenamento de dados (vds) | |
| US20090150645A1 (en) | Data processing apparatus and address space protection method | |
| US20030065909A1 (en) | Deferral of dependent loads until after execution of colliding stores | |
| CN103635877A (zh) | 乱序处理器中的分支目标存储与检索 | |
| US8019946B2 (en) | Method and system for securing instruction caches using cache line locking | |
| DE69901255D1 (de) | Mehrprozessorsystem brücke mit zugriffskontrollierung | |
| CN1097781C (zh) | 后台操作模式下透明操作的数据处理器及其实现的方法 | |
| US20070282967A1 (en) | Method and system of a persistent memory | |
| JP2006091972A (ja) | バスシステム及び半導体集積回路 | |
| US7185148B2 (en) | Read access and storage circuitry read allocation applicable to a cache | |
| ES2320806T3 (es) | Procedimiento y dispositivo para determinar un estado de inicio en un sistema de ordenador con al menos, dos unidades de ejecucion, a traves del marcado de registros. | |
| JP2010079765A (ja) | 情報処理装置 | |
| CN110574343A (zh) | 用于保护车辆安全系统的操作系统的方法和半导体电路 | |
| US20050060602A1 (en) | Memory system with error detection device | |
| US6813191B2 (en) | Microcomputer with nonvolatile memory protected against false erasing or writing | |
| JP6632416B2 (ja) | 共有メモリ制御回路及び共有メモリ制御方法 |