ES2260102T3 - Dispositvo de control para vehiculo a motor. - Google Patents
Dispositvo de control para vehiculo a motor.Info
- Publication number
- ES2260102T3 ES2260102T3 ES01101520T ES01101520T ES2260102T3 ES 2260102 T3 ES2260102 T3 ES 2260102T3 ES 01101520 T ES01101520 T ES 01101520T ES 01101520 T ES01101520 T ES 01101520T ES 2260102 T3 ES2260102 T3 ES 2260102T3
- Authority
- ES
- Spain
- Prior art keywords
- control device
- unit
- configuration parameters
- input
- external computer
- 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
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/26—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23304—Download program from host
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25431—Dual Port memory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/26—Pc applications
- G05B2219/2637—Vehicle, car, auto, wheelchair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
Abstract
Un dispositivo (110) de control para un motor (105) de un vehículo, que comprende una unidad (130) de memoria para almacenar parámetros de configuración del motor, una unidad (120) de procesamiento para enviar señales de control al motor de acuerdo con los parámetros de configuración, y una unidad (140-150) de entrada/ salida conectable a un ordenador externo (155) con el fin de modificar los parámetros de configuración, incluyendo el dispositivo (110) de control una primera porción (130a) y una segunda porción (130b) de la unidad de memoria, siendo cada porción utilizable alternativamente en estado activo para almacenar una versión actual de los parámetros de configuración, o en estado inactivo para la escritura de una nueva versión de los parámetros de configuración, accediendo la unidad de procesamiento a la porción que está en estado activo, para lectura, y accediendo la unidad de entrada/ salida a la porción que está en estado inactivo, para escritura, y medios (210-240) para conmutarselectivamente una de las porciones al estado activo y la otra de las porciones al estado inactivo; caracterizado porque la primera porción y la segunda porción consisten, respectivamente, en un primer banco (130a) y en un segundo banco (130b) de una sola memoria (130) E2PROM flash de lectura y escritura simultáneas, y porque dicha unidad (130) de memoria está predispuesta para el suministro de una señal de terminación de una operación de escritura a la unidad (140 - 150) de entrada/ salida por una línea dedicada, y la unidad (140-150) de entrada/ salida está predispuesta para aceptar un comando de escritura procedente del ordenador externo (155) solamente si se ha activado la señal de terminación.
Description
Dispositivo de control para vehículo a
motor.
La presente invención se refiere a un
dispositivo de control para un motor de vehículo del tipo definido
en el preámbulo de la reivindicación 1. Un dispositivo de control
de este tipo se describe en el documento
GB-A-2076188.
Los motores de vehículos modernos (por ejemplo,
automóviles) disponen de diversos sistemas electrónicos que
permiten que su actuación sea controlada de la mejor manera posible.
Estos sistemas están controlados por un dispositivo que envía
señales de control correspondientes al motor de acuerdo con los
parámetros de configuración almacenados en memorias no volátiles
del dispositivo de control, las cuales, en el dispositivo conforme
al documento GB-A-2076188, son
memorias RAM.
Durante una operación de calibración del
dispositivo de control, los parámetros de configuración son
corregidos para modificar la actuación del motor; esta operación de
calibración se realiza típicamente en fábrica durante la etapa de
desarrollo del vehículo, o en el taller, para adaptar el
comportamiento del motor a diversas condiciones ambientales o
condiciones de desgaste de los componentes.
La operación de calibración se realiza por lo
general en el campo, mientras el motor está en funcionamiento, con
el fin de comprobar directamente los resultados de las
modificaciones aplicadas. A este efecto, el dispositivo de control
se conecta a un ordenador externo que controla la modificación de
los parámetros de configuración leídos desde la memoria del
dispositivo de control.
Otra solución conocida, para su uso cuando el
dispositivo de control incluye memorias flash E^{2}PROM, consiste
en el uso de una tarjeta de interfaz construida de forma especial
(personalizada), que se conecta al dispositivo de control por medio
de un bus (vía de comunicación) paralelo de alta velocidad; el
ordenador externo se conecta después a la tarjeta de interfaz por
medio de un conector estándar. Durante la operación de calibración,
al menos algo del espacio de memoria del dispositivo de control
(asociado a los parámetros de configuración), es
re-mapeado en una memoria de trabajo (RAM) de la
tarjeta de interfaz. Los parámetros de configuración pueden ser así
modificados directamente por el ordenador externo (por medio de una
conexión estándar), mientras que, al mismo tiempo, son utilizados
por parte del dispositivo de control. Con la terminación de la
operación de calibración, los nuevos parámetros de configuración
son descargados a continuación desde la memoria RAM de la tarjeta
de interfaz hacia la memoria flash del dispositivo de control.
Sin embargo, esta solución es extremadamente
cara debido a los bajos volúmenes de producción de las tarjetas de
configuración, y a la necesidad de incrementar el número de
terminales de conexión externos del dispositivo de control (para
permitir el acceso en tiempo real a los parámetros de configuración
descargados en la RAM de la tarjeta de interfaz). En particular, en
aplicaciones con altas frecuencias operativas, la conexión externa
entre el dispositivo de control y la RAM de la tarjeta de interfaz
ralentiza el acceso a los parámetros de configuración de modo que
el dispositivo de control no puede ser calibrado en el campo con un
comportamiento idéntico a su comportamiento
real.
real.
El objeto de la presente invención consiste en
proporcionar un dispositivo de control mejorado del tipo definido
inicialmente. Para conseguir este objeto, se propone un dispositivo
de control para un motor de un vehículo como el indicado en la
reivindicación primera.
Además, la invención también propone un vehículo
que comprende un dispositivo de control como el reivindicado.
Características y ventajas adicionales de la
solución conforme a la presente invención, se pondrán claramente de
manifiesto a partir de la siguiente descripción de una realización
preferida de la misma, proporcionada a título de ejemplo no
limitativo con referencia a los dibujos anexos, en los que:
La Figura 1 es un diagrama de bloques básico de
un vehículo equipado con el dispositivo de control de la invención,
y
La Figura 2 muestra un detalle de una barra de
cruce interior al dispositivo de control.
Haciendo referencia en particular a la Figura 1,
un vehículo a motor 100 posee un motor 105; la actuación del motor
105 está gestionada por un dispositivo 110 de control (el cual
controla, por ejemplo, la inyección electrónica, el encendido del
motor, y similares).
El dispositivo 110 de control está formado por
varias unidades que están conectadas selectivamente por pares
mediante una unidad 115 de interconexión (barra de cruce). De manera
detallada, una unidad central 120 de proceso (CPU) gestiona la
actuación del dispositivo 110 de control, una memoria 125 de trabajo
(RAM) es utilizada directamente por la CPU 120, y una memoria no
volátil 130 contiene programas y datos para la actuación de la CPU
120.
\newpage
La memoria 130, que se produce en forma
integrada en un único chip de material semiconductor, está
constituida por una memoria flash E^{2}PROM (borrable y
reprogramable por bloques); la memoria flash 130 es una memoria de
lectura y escritura simultáneas, de modo que es posible borrar y
reprogramar un bloque mientras se lee otro bloque.
La memoria flash 130 almacena un programa de
control para la CPU 120 y parámetros de configuración del motor
105, organizados típicamente en vectores y matrices de datos
coherentes, es decir, de datos que se relacionan como conjunto con
el control de una función particular del motor 105. En particular,
el programa (PGM) se almacena en una porción dedicada 130p de la
memoria flash. La memoria flash incluye dos porciones adicionales
130a y 130b; cada porción 130a, 130b se utiliza alternativamente en
estado activo para almacenar una versión actual de los parámetros
de configuración (leídos mediante el programa ejecutado por la CPU
120), o en estado inactivo para la lectura (como se describe con
mayor detalle en lo que sigue) de una nueva versión de los
parámetros de configuración.
Una serie de unidades periféricas 135 están
también conectadas a la barra 115 de cruce; las unidades periféricas
135 consisten, por ejemplo, en actuadores para la regulación del
motor 105, o en sensores para medir los parámetros operativos de
los mismos. Algunas de las unidades periféricas 135 (tal como los
actuadores) poseen registros internos 135r que permiten que su
actuación pueda ser regulada.
El dispositivo 100 de control incluye también
una unidad 140 de calibración (TU) a la que se encuentra asociado
un controlador 145 DMA (direct memory access, acceso de memoria
directo), conectado directamente a la barra 115 de cruce. Se
utiliza una línea dedicada para enviar, desde la memoria flash 130
hasta la unidad 140 de calibración, una señal (ocupado) indicativa
de una operación de escritura en progreso en la memoria flash 130.
La unidad 140 de calibración comunica también con una interfaz 150,
por ejemplo, de tipo JTAG (Joint Test Access Group, Grupo de Acceso
de Prueba Conjunta), utilizada habitualmente para comprobar el
dispositivo 110 de control y para la comprobación periódica de su
funcionalidad. Un ordenador externo, por ejemplo, un ordenador
portátil (laptop) 155, se ha conectado al dispositivo 110 de control
por medio de un cable que termina en un conector PCMCIA insertado
en un puerto correspondiente asociado a la interfaz JTAG 150.
La interfaz JTAG 150 consiste en una unidad
lógica de control que gestiona la transferencia serie de datos con
uno o más registros de desplazamiento. En particular, la interfaz
JTAG proporciona una línea JTDI para recibir un dato (bit) binario
de entrada, una línea JTDO para enviar un bit de salida, una línea
JTTMS para seleccionar un modo de prueba, una línea de
inicialización (reset) JTRST, y una línea JTCLK para enviar una
señal de reloj dedicada. Cuando la interfaz JTAG 150 se activa
mediante la señal de selección JTTMS, después de cada flanco
delantero de la señal de reloj JTCLK, el bit introducido en la
entrada JTD1 es reconocido (referenciado) y, con cada flanco de
salida de la señal de reloj JTCLK, se pone a la salida un bit por la
línea JTDO. De este modo resulta posible, con una serie (un
separador) de pulsos de la señal de reloj JTCLK, enviar al
dispositivo 110 de control una serie (una cadena) de bits que son
cargados, de manera serie, en el registro de desplazamiento de la
interfaz JTAG 150. La comunicación entre el ordenador externo 155 y
el dispositivo 100 de control se gestiona de manera lógica mediante
un protocolo, por ejemplo, de tipo Nexus (definido por el Estándar
IEEE 1149.1).
Tanto la CPU 120 como el controlador DMA 145
operan en modo maestro para controlar el acceso a los recursos de
interconexión de la barra 115 de cruce (dentro de la cual existe un
arbitrador que gestiona mutuamente el acceso exclusivo a los
recursos). Estas unidades (la CPU 120 y el controlador DMA 145)
tienen acceso a un espacio de memoria que es mapeado en todos los
recursos del dispositivo 110 de control (la memoria flash, la
memoria RAM, y los registros internos de las diversas unidades); en
particular, la porción del espacio de memoria que está dedicada a
la versión actual de los parámetros de configuración (el espacio de
datos actual) es utilizado normalmente por la CPU 120, mientras que
la porción de espacio de memoria que está dedicada a la nueva
versión de los parámetros de configuración (espacio de datos que se
modifica), es utilizada normalmente por el controlador DMA 145.
Durante una operación normal del dispositivo 110
de control (durante la cual no está conectado el ordenador externo
155), el programa de control de la CPU tiene acceso a la versión
actual de los parámetros de configuración almacenados en una de las
porciones 130a, 130b de datos que está en estado activo (por
ejemplo, la porción 130a de datos). La CPU controla, por lo tanto,
las unidades periféricas 130 con el fin de enviar las
correspondientes señales de control al motor 105.
Al mismo tiempo, la CPU puede interrogar
(llamar) a las unidades periféricas 135 de manera periódica, por
ejemplo, cada hora, para medir los parámetros operativos del motor
105. Los parámetros operativos leídos, son escritos en la otra
porción de datos de la memoria flash que está en estado inactivo (la
porción 130b en el ejemplo considerado).
Tan pronto como el ordenador externo 155 se
conecta a la interfaz JTAG 150, se envía una señal de interrupción
correspondiente, por ejemplo, a la CPU 120. La CPU interrumpe, en
consecuencia, el almacenaje de los parámetros operativos del motor
en la porción 130b de datos que está en estado inactivo (mientras
que avanza normalmente la lectura de los parámetros de
configuración a partir de la porción 130a que está en estado
activo). El ordenador externo 155 puede cargar así un comando para
leer los parámetros operativos del motor en el registro de
desplazamiento de la interfaz JTAG 150. Este comando leído es
suministrado a continuación a la unidad 140 de calibración, la cual
gestiona la lectura de la porción 130b de datos que está en estado
inactivo, directamente por medio del controlador DMA 145. Los
parámetros de configuración del motor así leídos son suministrados a
continuación al ordenador externo 155 por medio de la interfaz JTAG
150.
Durante una operación de calibración del
dispositivo 110 de control, la versión actual del parámetro de
configuración se descarga en el ordenador externo 155 de una manera
similar desde la porción 130a de datos que está en estado activo.
Los parámetros de configuración son modificados en el ordenador
externo 155. El ordenador externo 155 carga después un comando para
escribir un nuevo parámetro de configuración en el registro de
desplazamiento de la interfaz JTAG 150. El comando escrito es
suministrado a continuación a la unidad 140 de calibración, la cual
gestiona la escritura de la porción 130b de datos que está en estado
inactivo, directamente por medio del controlador DMA 145. En el
transcurso de la operación de escritura del nuevo parámetro de
configuración, la memoria flash 130 activa la señal de ocupada; la
unidad 140 de calibración no acepta por tanto ningún comando
posterior para su escritura en la memoria flash, hasta que la
operación de escritura en curso ha sido completada (señal de
ocupada
cancelada).
cancelada).
Una vez que la actualización de los nuevos
parámetros de configuración, en la porción 130b de datos que está
en estado activo, ha sido completada, el ordenador externo 155 envía
una señal correspondiente de escritura completada a la unidad 140
de calibración (por medio de la interfaz JTAG 150). Según se
describe en detalle más adelante, los estados de las porciones 130a
y 130b de datos son posteriormente invertidos; en el ejemplo
considerado, la porción 130a de datos conmuta al estado inactivo y
la porción 130b de datos conmuta al estado activo. El programa de
gestión de la CPU 120 accede así automáticamente a la nueva versión
de los parámetros de configuración almacenados en la porción 130b
de datos (mientras la otra porción 130a de datos se hace disponible
para la modificación posterior).
El ordenador externo 155 puede cargar también un
comando para leer los registros 135r del registro de desplazamiento
de la interfaz JTAG 150. Este comando de lectura es suministrado a
continuación a la unidad 140 de calibración, la cual gestiona la
lectura de los registros 135b directamente, por medio del
controlador DMA 145. Los valores así leídos son suministrados
entonces al ordenador externo 155 por medio de la interfaz JTAG
150.
Se aplican consideraciones similares si el
dispositivo de control es utilizado en un vehículo de tipo diferente
(por ejemplo, un ciclomotor), o tiene una estructura diferente (por
ejemplo, con varias unidades conectadas en paralelo a un bus), si
el ordenador externo es de un tipo diferente, por ejemplo, de tipo
palmtop (agenda electrónica), si está conectado al dispositivo de
control por medio de un conector de otro tipo (por ejemplo, de tipo
RJ45), o si la comunicación entre el ordenador externo y el
dispositivo de control utiliza un protocolo diferente, y
similares.
Haciendo ahora referencia a la Figura 2, ésta
muestra un detalle de la barra 115 de cruce asociada a un puerto
para conexión a la memoria flash. La barra 115 de cruce incluye un
multiplexor 205 que posee cuatro entradas, cada una de las cuales
está conectada a uno de los otros puertos de conexión de la barra
115 de cruce (asociada a la CPU, la memoria RAM, las unidades
periféricas y el controlador DMA); el multiplexor 205 recibe una
dirección transmitida por la CPU o por el controlador DMA hasta el
puerto de conexión respectivo.
El multiplexor 205 transmite esta dirección
(ADR) como salida dependiendo de una señal de selección (generada
por el arbitrador de la barra 115 de cruce). Un multiplexor
adicional 210, posee tres entradas conectadas, respectivamente, a
una salida del multiplexor 205, a una salida de un sumador 215a, y a
una salida de substractor 215b; la salida de señal por medio del
multiplexor 210 es transferida al puerto para su conexión a la
memoria flash. El sumador 215a y el substractor 215b reciben, en
entradas respectivas, la dirección ADR y un valor de derivación OFS
almacenado en un registro 220; la derivación OFS es igual a la
diferencia entre una primera dirección del espacio de datos que se
está modificando y una primera dirección del espacio de datos
actual.
La dirección ADR se suministra también a una
primera entrada de un comparador 225a; una segunda entrada del
comparador 225a recibe una señal (LMTa) almacenada en un registro
230a. De forma similar, la dirección ADR se suministra a una
primera entrada de un comparador adicional 225b; una segunda entrada
del comparador 225b recibe una señal (LMTb) almacenada en otro
registro 230b. La señal LMTa y la señal LMTb definen los límites
del espacio de datos actual y los límites del espacio de datos que
se está modificando, respectivamente.
El comparador 225a pone a su salida un bit DTa
indicativo del hecho de que la dirección ADR cae dentro de los
límites del espacio de datos actual; el comparador 225b pone en su
salida un bit DTb indicativo del hecho de que la dirección ADR cae
dentro de los limites del espacio de datos que se está modificando.
El bit DTa y el bit DTb son suministrados, respectivamente, a una
primera entrada de una puerta lógica AND 235a y a una primera
entrada de una puerta lógica AND 235b; las puertas AND 235a y 235b
reciben, en segundas entradas respectivas, un indicador SWP para
invertir el mapeo de memoria del espacio de datos actual y del
espacio de datos que está siendo modificado. La puerta AND 235a
pone en su salida un bit Sa y la puerta AND pone en su salida un
bit Sb, y éstas se aplican a entradas de selección respectivas del
multiplexor 210.
Cada vez que una dirección ADR ha de ser
transmitida desde una unidad del dispositivo de control (la CPU, la
memoria RAM, las unidades periféricas, o el controlador DMA), hacia
la memoria flash, este valor se compara mediante los comparadores
225a y 225b, con los límites del espacio de datos actual y con los
límites del espacio de datos que está siendo modificado,
respectivamente. Si la dirección ADR no cae dentro de ninguno de
estos límites (por ejemplo, debido a que se refiere a una
instrucción del programa de control de la CPU), ambos bits DTa y
DTb son cancelados (nivel lógico 0), de modo que ambos bits Sa y Sb
son también cancelados (con independencia del valor del indicador
SWP). La combinación Sa,Sb=0,0 transfiere la dirección ADR como
salida al multiplexor 210 con el fin de acceder a la memoria flash
normalmente.
Si, no obstante, la dirección ADR cae, por
ejemplo, dentro de los límites del espacio de datos actual, el bit
DTa correspondiente se dispone a nivel lógico 1 (mientras que el bit
DTb es cancelado). Con la suposición de que el indicador SWP es
cancelado, los bits Sa,Sb adoptan también el valor 00 en este caso,
de modo que la dirección ADR es transferida como salida al
multiplexor 210 con el fin de acceder a una posición correspondiente
de una predeterminada de las porciones de datos de la memoria flash
(por ejemplo, la primera porción indicada con 130a en la Figura
1).
Si, no obstante, el indicador SWP está activado,
el bit Sa adopta el valor 1. La combinación Sa,Sb=1,0 transfiere el
valor ADR+OFS generado por el sumador 215a como salida, al
multiplexor 210; de este modo, se accede a una posición
correspondiente de la otra porción de datos de la memoria flash (la
porción indicada con 130b en la Figura 1 en el caso en cuestión).
Se aplican consideraciones complementarias si la dirección ADR cae
dentro de los límites del espacio de datos que está siendo
modificado (con la combinación Sa,Sb=0,1 que transfiere el valor
ADR-OFS generado por el substractor 215b como
salida, hasta el multiplexor 210 cuando la dirección ADR cae dentro
de los límites del espacio que esta siendo modificado y SWP=1).
Los registros 220, 230a, 230b y 240 se activan
en respuesta a un comando de inicialización (reset). Cada vez que
la unidad de calibración recibe una señal completa de escritura
desde el ordenador externo, ésta envía una señal de interrupción a
la CPU. La CPU realiza a continuación una rutina de servicio que
invierte el valor del indicador SWP almacenado en el registro 240
(de modo que conmuta los estados de las porciones de datos de la
memoria flash). La señal de interrupción está, con preferencia,
enmascarada por medio del programa de gestión de la CPU durante una
operación de lectura de una estructura de datos coherentes de modo
que sea usada solamente cuando todos los parámetros de
configuración de la estructura hayan sido leídos.
Consideraciones similares se aplican si la barra
de cruce posee una estructura diferente, si las funciones descritas
anteriormente son realizadas por otros componentes de circuito
(posiblemente por fuera de la barra de cruce), y similares.
De forma más general, en la solución conforme a
la presente invención, el dispositivo de control incluye una
primera porción y una segunda porción de la unidad de memoria, cada
una de las cuales puede ser usada alternativamente en un estado
activo para almacenamiento de una versión actual de los parámetros
de configuración, o en un estado inactivo para la escritura de una
nueva versión de los parámetros de configuración, accediendo la
unidad de procesamiento a la porción que está en estado activo,
para lectura, y accediendo la unidad de entrada/ salida a la
porción que está en estado inactivo, para escritura, y medios para
conmutar selectivamente una de las porciones al estado activo, y la
otra de las porciones al estado inactivo.
Esta solución es particularmente económica
puesto que no requiere la provisión de componentes construidos de
forma especial para la operación de calibración. Además, se accede a
los datos de configuración por medio de la CPU directamente en la
memoria flash, incluso durante la operación de calibración; el
comportamiento del dispositivo de control es por consiguiente
sustancialmente idéntico a su comportamiento real, incluso durante
las operaciones de calibración en este campo. Este resultado se
consigue con un incremento despreciable del tamaño de la memoria
flash (puesto que los parámetros de configuración son solamente una
parte muy pequeña de la información almacenada en la misma).
La realización preferida de la presente
invención descrita en lo que antecede, ofrece otras ventajas. En
particular, el uso de dos bancos de una sola memoria flash de
lectura y escritura simultáneas (para almacenar la versión actual y
la nueva versión de los parámetros de configuración), consigue una
estructura particularmente compacta (con una sola memoria y
circuitos de control respectivos).
El uso de un espacio de datos actual y de un
espacio de datos que está siendo modificado, los cuales son mapeados
alternativamente en diferentes porciones de la memoria flash, hace
que el mecanismo de conmutación resulte completamente transparente
para la CPU.
La gestión de la conmutación de los estados de
las porciones de la memoria flash mediante interrupción, es
particularmente rápida y fácil. El enmascaramiento de la señal de
interrupción durante la lectura de una estructura de datos
coherentes asegura también que los parámetros operativos utilizados
por el dispositivo de control sean modificados solamente en
momentos seguros, con el fin de asegurar una actuación correcta del
motor.
La señal de ocupada enviada por la memoria flash
a la unidad de calibración, permite que la actuación del ordenador
externo (rápido) sea sincronizada con la de la memoria flash (lenta)
sin ralentizar la actuación del dispositivo de control de ninguna
manera.
Se aplican consideraciones similares si se
utiliza un mecanismo diferente para mapear la versión actual y la
nueva versión de los parámetros de configuración en las dos
porciones de datos (por ejemplo, enviando simultáneamente cada
dirección a las dos porciones de datos y habilitando una de las
porciones de datos alternativamente por medio del indicador SWP).
La solución de la presente invención puede ser también implementada,
no obstante, con dos memorias flash separadas, con hardware de
conmutación de los estados de las porciones de datos (por medio de
dos señales) sin ningún control del momento de conmutación, estando
el ordenador externo y la memoria flash sincronizados por medio de
un indicador (dentro de la memoria flash) que es indicativo de que
se ha completado la operación de escritura y de que es interrogado
periódicamente por la unidad de calibración, y similar.
La escritura de los parámetros operativos del
motor en la porción de datos que está en estado inactivo, permite
que esta porción de la memoria flash (que normalmente no se utiliza
durante la operación normal del dispositivo de control), sea
utilizada para funciones de diagnóstico o para la recogida de
información durante los ensayos de resistencia.
El hecho de que los registros internos de las
diversas unidades periféricas puedan ser modificados directamente
por el ordenador externo, hace que la estructura sea particularmente
flexible; por ejemplo, esto permite que la actuación de los
actuadores sea regulada de forma muy fácil.
El uso de la interfaz JTAG permite que se
utilicen funciones ya presentes en el dispositivo de control, y no
requiere la adición de nuevos terminales de conexión externos;
además, esto permite que el ordenador externo sea conectado al
dispositivo de control por medio de conectores estándar. La unidad
de calibración con el respectivo controlador DMA, hace que la
escritura de los nuevos parámetros de configuración sea
completamente transparente al ordenador externo; este resultado se
consigue independientemente de la CPU, con una reducción
despreciable de la actuación del dispositivo de control (debida
únicamente a algún conflicto con la CPU para acceder a la barra de
cruce).
Se aplican consideraciones similares si se
utiliza una interfaz de pruebas serie diferente. Alternativamente,
la unidad de calibración no es del tipo maestro, y la escritura de
los nuevos parámetros de configuración en la memoria flash está
controlada directamente por la CPU, el dispositivo de control
proporciona una unidad diferente de entrada/ salida para la
conexión al ordenador externo (con una unidad dedicada y respectivos
terminales de conexión adicionales), y similar.
Naturalmente, con el fin de satisfacer
necesidades eventuales y específicas, un experto en la materia puede
aplicar a la solución descrita anteriormente muchas modificaciones
y variaciones, todas las cuales, no obstante, están incluidas
dentro del alcance de protección de la invención según se define
mediante las reivindicaciones anexas.
Claims (8)
1. Un dispositivo (110) de control para un motor
(105) de un vehículo, que comprende una unidad (130) de memoria
para almacenar parámetros de configuración del motor, una unidad
(120) de procesamiento para enviar señales de control al motor de
acuerdo con los parámetros de configuración, y una unidad
(140-150) de entrada/ salida conectable a un
ordenador externo (155) con el fin de modificar los parámetros de
configuración, incluyendo el dispositivo (110) de control una
primera porción (130a) y una segunda porción (130b) de la unidad de
memoria, siendo cada porción utilizable alternativamente en estado
activo para almacenar una versión actual de los parámetros de
configuración, o en estado inactivo para la escritura de una nueva
versión de los parámetros de configuración, accediendo la unidad de
procesamiento a la porción que está en estado activo, para lectura,
y accediendo la unidad de entrada/ salida a la porción que está en
estado inactivo, para escritura, y medios (210-240)
para conmutar selectivamente una de las porciones al estado activo y
la otra de las porciones al estado inactivo; caracterizado
porque la primera porción y la segunda porción consisten,
respectivamente, en un primer banco (130a) y en un segundo banco
(130b) de una sola memoria (130) E^{2}PROM flash de lectura y
escritura simultáneas, y porque dicha unidad (130) de memoria está
predispuesta para el suministro de una señal de terminación de una
operación de escritura a la unidad (140 - 150) de entrada/ salida
por una línea dedicada, y la unidad (140-150) de
entrada/ salida está predispuesta para aceptar un comando de
escritura procedente del ordenador externo (155) solamente si se ha
activado la señal de terminación.
2. Un dispositivo (110) de control de acuerdo
con la reivindicación 1, en el que la unidad (120) de procesamiento
accede a la versión actual de los parámetros de configuración por
medio de direcciones correspondientes de un primer espacio, y la
unidad (140-150) de entrada/ salida accede a la
nueva versión de los parámetros de configuración por medio de la
dirección correspondiente de un segundo espacio, comprendiendo los
medios (210-240) de conmutación un indicador (240)
del estado de la primera porción (130a) y de la segunda porción
(130b), y medios (210-235) para asociar a cada
dirección del primer espacio y del segundo espacio, una posición
correspondiente de la primera porción o de la segunda porción, de
acuerdo con el indicador de estado.
3. Un dispositivo (110) de control de acuerdo
con la reivindicación 1 o la reivindicación 2, en el que la unidad
(140-150) de entrada/ salida envía una señal de
interrupción a la unidad (120) de procesamiento en respuesta a una
señal de terminación de la escritura de la nueva versión de los
parámetros de configuración por parte del ordenador externo (155),
y la unidad de procesamiento conmuta el indicador de estado (240) en
respuesta a la señal de interrupción.
4. Un dispositivo (110) de control de acuerdo
con la reivindicación 3, en el que los parámetros de configuración
están organizados en estructuras de datos coherentes que no pueden
ser modificadas durante una operación de lectura, estando la señal
de interrupción enmascarada durante una operación de lectura de una
estructura de datos coherentes.
5. Un dispositivo (110) de control de acuerdo
con una cualquiera de las reivindicaciones 1 a 4, que comprende
además medios (140) para escritura de los parámetros operativos del
motor en la porción que esté en estado inactivo, leyendo la unidad
(140-150) de entrada/ salida los parámetros
operativos a partir de la porción que esté en estado inactivo, y
suministrando los parámetros operativos leídos al ordenador externo
(155) en respuesta a una señal de petición correspondiente
procedente del ordenador externo.
6. Un dispositivo (110) de control de acuerdo
con una cualquiera de las reivindicaciones 1 a 5, que comprende
además al menos una unidad periférica (140) para hacer de interfaz
con el motor (105), que tiene una pluralidad de registros internos
(140r), modificando la unidad (140-155) de entrada/
salida los registros en respuesta a una señal de petición
correspondiente procedente del ordenador externo (155).
7. Un dispositivo (110) de control de acuerdo
con una cualquiera de las reivindicaciones 1 a 6, en el que la
unidad (140-150) de entrada/ salida incluye una
interfaz (150)en serie, de prueba, para intercambiar
información con el ordenador externo (155), y una unidad adicional
de procesamiento (140, 145) para acceder a los recursos internos
del dispositivo (110) de control, independientemente de la unidad
(120) de procesamiento.
8. Un vehículo (100) que comprende un motor
(105) y el dispositivo (110) de control de motor de acuerdo con una
cualquiera de las reivindicaciones 1 a 7.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT0000412 | 2000-10-16 | ||
WOPCT/IT00/00412 | 2000-10-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2260102T3 true ES2260102T3 (es) | 2006-11-01 |
Family
ID=11133570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES01101520T Expired - Lifetime ES2260102T3 (es) | 2000-10-16 | 2001-01-24 | Dispositvo de control para vehiculo a motor. |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1201899B1 (es) |
DE (1) | DE60118492T2 (es) |
ES (1) | ES2260102T3 (es) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007041735A (ja) * | 2005-08-01 | 2007-02-15 | Toyota Motor Corp | ロボット制御システム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3018275A1 (de) * | 1980-05-13 | 1981-11-19 | Robert Bosch Gmbh, 7000 Stuttgart | Vorrichtung zur optimierung von daten und/oder programmen fuer programmierte steuergeraete |
US5123397A (en) * | 1988-07-29 | 1992-06-23 | North American Philips Corporation | Vehicle management computer |
WO1991007754A1 (en) * | 1989-11-13 | 1991-05-30 | Cray Research, Inc. | Read-while-write-memory |
US6088264A (en) * | 1998-01-05 | 2000-07-11 | Intel Corporation | Flash memory partitioning for read-while-write operation |
-
2001
- 2001-01-24 ES ES01101520T patent/ES2260102T3/es not_active Expired - Lifetime
- 2001-01-24 DE DE60118492T patent/DE60118492T2/de not_active Expired - Lifetime
- 2001-01-24 EP EP01101520A patent/EP1201899B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP1201899A3 (en) | 2003-11-26 |
EP1201899B1 (en) | 2006-04-05 |
EP1201899A2 (en) | 2002-05-02 |
DE60118492D1 (de) | 2006-05-18 |
DE60118492T2 (de) | 2006-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4158227A (en) | Paged memory mapping with elimination of recurrent decoding | |
KR100805603B1 (ko) | 집적 회로 | |
KR100814247B1 (ko) | 집적 회로 | |
US20170097901A1 (en) | Block or page lock features in serial interface memory | |
US9304943B2 (en) | Processor system and control method thereof | |
KR20080052019A (ko) | 메모리 시스템 및 그것의 데이터 전송 방법 | |
KR20090033539A (ko) | 프로토콜 정의영역을 갖는 멀티포트 반도체 메모리 장치 및그를 채용한 멀티 프로세서 시스템과 멀티포트 반도체메모리 장치의 억세스 방법 | |
KR900008516A (ko) | 버퍼 기억장치 | |
JP2004502224A (ja) | フラッシュブリッジとオートロードとを有する集積回路 | |
KR0142033B1 (ko) | 마이크로 컴퓨터 | |
US6735514B2 (en) | Control device for a vehicle engine | |
ES2260102T3 (es) | Dispositvo de control para vehiculo a motor. | |
KR970067364A (ko) | 멀티모드 캐시 메모리 | |
US5317750A (en) | Microcontroller peripheral expansion bus for access to internal special function registers | |
EP1480224A1 (en) | A semiconductor memory with a multiprotocol serial communication interface | |
JP3681590B2 (ja) | データ処理装置及びデータ処理システム | |
JP4116805B2 (ja) | 内部バス試験装置及び内部バス試験方法 | |
KR20050110006A (ko) | 데이터 프로세싱 시스템의 메모리 관리 | |
KR100261154B1 (ko) | 직접 메모리 액세스 제어 장치 | |
WO2016036281A1 (ru) | Устройство прямого отображения адресов данных | |
US20190371373A1 (en) | Methods and systems for serial memory device control | |
JP5013450B2 (ja) | 半導体集積回路及びシングルチップマイクロコンピュータ | |
US20070220336A1 (en) | System and method for testing an integrated circuit | |
US5793991A (en) | Method of equalizing loads on a computer bus | |
BRPI0105641B1 (pt) | dispositivo de controle para um motor de veículo |