ES2458101T3 - Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión - Google Patents

Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión Download PDF

Info

Publication number
ES2458101T3
ES2458101T3 ES10158354.0T ES10158354T ES2458101T3 ES 2458101 T3 ES2458101 T3 ES 2458101T3 ES 10158354 T ES10158354 T ES 10158354T ES 2458101 T3 ES2458101 T3 ES 2458101T3
Authority
ES
Spain
Prior art keywords
data
memory device
determination
memory
section
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
Application number
ES10158354.0T
Other languages
English (en)
Inventor
Noboru Asauchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Application granted granted Critical
Publication of ES2458101T3 publication Critical patent/ES2458101T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17513Inner structure
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/1752Mounting within the printer
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/1752Mounting within the printer
    • B41J2/17523Ink connection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17526Electrical contacts to the cartridge
    • B41J2/1753Details of contacts on the cartridge, e.g. protection of contacts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17543Cartridge presence detection or type identification
    • B41J2/17546Cartridge presence detection or type identification electronically
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17553Outer structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • H04L1/0063Single parity check
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Ink Jet (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Un dispositivo de memoria (130) eléctricamente conectable a un circuito anfitrión (40, 50), que comprende: una sección de memoria de datos no volátil (132); una sección de recepción de datos (M15) dispuesta para recibir, desde el circuito anfitrión, datos que incluyen primeros datos para ser escritos en la sección de memoria de datos (132) y segundos datos generados a partir de los primeros datos; una sección de determinación (M19) dispuesta para determinar la consistencia de los datos recibidos por la sección de recepción de datos; y una sección de transmisión de datos (M15) dispuesta para transmitir un resultado de la determinación al circuito anfitrión; en el que la sección de determinación (M19) está dispuesta para determinar si los primeros datos y los segundos datos son consistentes unos con otros, caracterizado porque los segundos datos son datos invertidos de los primeros datos, y durante una operación de escritura desde el circuito anfitrión al dispositivo de memoria (130), la sección de recepción de datos (M15) está dispuesta para recibir en serie desde el circuito anfitrión: datos de identificación que especifican un único dispositivo de memoria de entre una pluralidad de dispositivos de memoria; datos de identificación invertidos; datos de comando de escritura; datos de comando de escritura invertidos; y un primer conjunto de primeros datos y segundos datos de un tamaño prescrito; y a continuación para recibir en incrementos de un único conjunto un segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito, y en el que (i) desde el momento en que comienza la recepción de los datos de identificación hasta el momento en que se completa la recepción del primer conjunto de primeros datos y segundos datos, el circuito de transmisión de datos (M15) está dispuesto para no transmitir el resultado de la determinación mediante la sección de determinación al circuito anfitrión; y el circuito de transmisión de datos (M15) está dispuesto para transmitir el resultado de la determinación mediante la sección de determinación (M19) al circuito anfitrión después de que se completa la recepción del primer conjunto de primeros datos y segundos datos; y (ii) para el segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito, el circuito de transmisión de datos (M15) está dispuesto para transmitir el resultado de la determinación mediante la sección de determinación (M19) al circuito anfitrión cada vez que se completa la recepción de un conjunto de primeros datos y segundos datos.

Description

Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión
La presente invención se refiere a un dispositivo de memoria, a una placa de circuito dotada de un dispositivo de memoria, a un receptáculo de líquido, a un procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y a un sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión.
La presente solicitud reivindica la prioridad basándose en las solicitudes de patente japonesas Nº 2009-088591 presentada el 1 de abril de 2009, y Nº 2010-030856 presentada el 16 de febrero de 2010, a las que se hace referencia para mayor información.
Descripción de la técnica relacionada
Una impresora de inyección de tinta, que es un ejemplo de un dispositivo de inyección de líquido, típicamente tiene uno o más receptáculos de tinta o depósitos de tinta instalados que son receptáculos de líquido extraíbles. Algunos receptáculos de tinta están provistos de dispositivos de memoria. El dispositivo de memoria almacena información de varios tipos, por ejemplo, el nivel de tinta restante o el color de la tinta en el receptáculo de tinta. Una unidad de control provista en la impresora se comunica con el dispositivo de memoria del receptáculo de tinta.
Se hace referencia al documento US 2007/250659 A1 y a los documentos JP-A 2002-370383, JP-A 2004-299405, JP-A 2001-146030, JP-A 6-226989, y JP-A 2003-112431.
El documento US 2007/0250659 A1 describe interfaces eléctricas, esquemas de direccionamiento, y protocolos de comando que permiten comunicaciones con módulos de memoria en dispositivos informáticos tales como dispositivos de impresión y de imagen. Se puede asignar una dirección a los módulos de memoria a través de una serie de tensiones discretas. Puede asignarse una dirección a uno, varios, o todos los módulos de memoria con un único comando, que puede ser un comando de contador incremental, un comando de escritura, un campo de bits expulsables o un comando criptográfico. Los comandos pueden ser transmitidos utilizando un esquema de difusión o un esquema de transacción dividida. El estado de los módulos de memoria puede determinarse muestreando una única señal que puede estar en un nivel de tensión baja alta o intermedia.
Sin embargo, en las técnicas convencionales, no se ha considerado suficientemente el problema de la fiabilidad de la comunicación entre la unidad de control provistos en la impresora y los dispositivos de memoria provistos en los receptáculos de tinta. Por ejemplo, existe el riesgo de que, por motivos como un contacto defectuoso entre las porciones de contacto eléctrico de la impresora y un receptáculo de tinta, pueda producirse una comunicación defectuosa entre la unidad de control provista en la impresora y el dispositivo de memoria del receptáculo de tinta. Si la operación de la unidad de control de impresión continuase sin resolver el problema de la comunicación, existe un riesgo de que se creen problemas como errores en los contenidos de memoria del dispositivo de memoria. Este problema no se limita a los dispositivos de memoria provistos en los receptáculos de tinta, sino que es más bien un problema común a todos los dispositivos de memoria que se conectan eléctricamente a un circuito anfitrión.
Un objeto de la presente invención es proporcionar una tecnología para mejorar la fiabilidad de la comunicación con un circuito anfitrión en un dispositivo de memoria que está eléctricamente conectado al circuito anfitrión.
De acuerdo con un primer aspecto de la invención, se proporciona un dispositivo de memoria de acuerdo con la reivindicación 1.
De acuerdo con un segundo aspecto de la invención, se proporciona un procedimiento para recibir datos de acuerdo con la reivindicación 12.
De acuerdo con un tercer aspecto de la invención, se proporciona un sistema de acuerdo con la reivindicación 13.
A continuación se describe un dispositivo de memoria eléctricamente conectable a un circuito anfitrión. El dispositivo de memoria incluye: una sección de memoria de datos no volátil; una sección de recepción de datos que recibe, del circuito anfitrión, datos que incluyen primeros datos para ser escritos en la sección de memoria de datos y segundos datos generados a partir de los primeros datos; una sección de determinación que determina la consistencia de los datos recibidos por la sección de recepción de datos; y una sección de transmisión de datos que transmite un resultado de la determinación al circuito anfitrión. La sección de determinación determina si los primeros datos y los segundos datos son consistentes unos con otros.
De acuerdo con el dispositivo de memoria, debido a que después de determinar la consistencia de los primeros datos y los segundos datos el resultado de la determinación se transmite al circuito anfitrión, el circuito anfitrión
puede comunicarse con el dispositivo de memoria mientras verifica si hay errores de comunicación. Como resultado, se mejora la fiabilidad de la comunicación entre el circuito anfitrión y el dispositivo de memoria.
Como también se describe más adelante en este documento, los segundos datos son datos invertidos de los primeros datos. Durante una operación de escritura desde el circuito anfitrión al dispositivo de memoria, la sección de recepción de datos recibe en serie desde el circuito anfitrión: datos de identificación que especifican un único dispositivo de memoria de entre una pluralidad de dispositivos de memoria; datos de identificación invertidos; datos de comando de escritura; datos de comando de escritura invertidos; y un primer conjunto de primeros datos y segundos datos de un tamaño prescrito; y a partir de ahí recibe en incrementos de un conjunto único un segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño descrito, donde (i) desde el momento en que comienza la recepción de los datos de identificación hasta el momento en que se completa la recepción del primer conjunto de primeros datos y segundos datos, el circuito de transmisión de datos no transmite el resultado de la determinación mediante la sección de determinación al circuito anfitrión, y el circuito de transmisión de datos transmite el resultado de la determinación mediante la sección de determinación al circuito anfitrión después de que se complete la recepción del primer conjunto de primeros datos y segundos datos; y (ii) para el segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito, el circuito de transmisión de datos transmite el resultado de la determinación mediante la sección de determinación al circuito anfitrión cada vez que se completa la recepción de un conjunto de primeros datos y segundos datos. De acuerdo con esta disposición, cada vez que se recibe un conjunto de primeros datos y segundos datos de tamaño prescrito, el dispositivo de memoria transmite el resultado de la determinación de consistencia para el mismo al circuito anfitrión, y en consecuencia se mejora la fiabilidad de la comunicación entre el circuito anfitrión y el dispositivo de memoria. También, en la parte inicial del proceso de escritura, una vez se inicia la recepción de los datos de identificación, un resultado de la determinación no se transmite al circuito anfitrión hasta que se completa la recepción del primer conjunto de primeros datos y segundos datos, de modo que se reduce el número de veces que se envían los resultados de la determinación desde el dispositivo de memoria hacia el circuito anfitrión, y el proceso de escritura se lleva a cabo de una manera globalmente más eficiente.
En una variante, los primeros datos y los segundos datos incluyen cada uno de ellos un bit de paridad, y la sección de determinación genera un resultado de determinación afirmativo si los primeros y segundos datos tienen una relación mutuamente invertida, y también los primeros y segundos datos carecen de errores de paridad. De acuerdo con esta disposición, la fiabilidad de la comunicación entre el circuito anfitrión y el dispositivo de memoria se mejora aún más.
En otra variante, los primeros y segundos datos tienen un tamaño de datos idéntico. Con esta disposición, se lleva a cabo una determinación de consistencia más precisa por parte del circuito anfitrión.
En una variante más, el dispositivo de memoria puede además incluir una sección de control de lectura/escritura que escribe los primeros datos en la sección de memoria de datos si el resultado de la determinación es afirmativo, y no escribe los primeros datos en la sección de memoria de datos si el resultado de la determinación es negativo. Con esta disposición, en caso de un error de comunicación, los primeros datos no se escribirán en la sección de memoria de datos, evitando así la actualización errónea de la sección de memoria de datos.
En otra variante, los primeros datos y los segundos datos son cada uno señales de n bits donde n es un entero igual
o mayor que 1, y los segundos datos son datos invertidos que invierten cada bit de los primeros datos. Con esta disposición, si debido a un error de comunicación la señal recibida por el dispositivo de memoria es una señal en la que los primeros datos y los segundos datos tienen todos ellos el mismo valor, por ejemplo, se detecta de una manera fiable el error de comunicación.
En otra variante, la sección de recepción de datos recibe en serie los primeros datos y los segundos datos en sincronismo con una señal de reloj suministrada desde el circuito anfitrión, y la sección de transmisión de datos transmite el resultado de la determinación al circuito anfitrión en sincronismo con la señal de reloj en un ciclo de la señal de reloj inmediatamente posterior a un ciclo anterior de la señal de reloj utilizado para recibir un bit de datos final de los primeros datos y los segundos datos. Con esta disposición, el circuito anfitrión reconoce el resultado de la determinación inmediatamente después de que se reciban los primeros datos y los segundos datos. Así, en caso de que el resultado de la determinación sea negativo, medidas como el reenvío de los datos se llevan a cabo rápidamente.
En otra variante más, la sección de determinación hace que el resultado de la determinación sea afirmativo si una salida OR exclusiva de un valor m-ésimo de los primeros datos y un valor m-ésimo de los segundos datos es verdadera para todos los n bits, donde m es un entero de tal modo que 1 <= m <= n, y la sección de determinación hace que el resultado de la determinación sea negativo si la salida OR exclusiva es falsa para uno cualquiera de los n bits. Con esta disposición, la existencia de un error de comunicación se determina fácilmente a través de una operación OR exclusiva.
En otra variante, el entero n es un número par, y la sección de recepción de datos recibe, en sincronismo con una señal de reloj, los n/2 bits superiores de los primeros datos, los n/2 superiores de los segundos datos, los n/2 bits
inferiores de los primeros datos, y los n/2 bits inferiores de los segundos datos, en ese orden, y la sección de transmisión de datos transmite el resultado de la determinación en un ciclo de la señal de reloj inmediatamente después de un ciclo anterior de la señal de reloj utilizado para recibir el bit más bajo de los n/2 bits inferiores de los segundos datos. Con esta disposición, un resultado de la determinación se transmite cada vez que se reciben datos de 2n bits. En consecuencia, como la comunicación tiene lugar a la vez que se identifica la existencia de errores de comunicación en unidades de 2n bits, se mejora la fiabilidad de la comunicación.
En otra variante más, el circuito anfitrión y el dispositivo de memoria se deben conectar eléctricamente a través de terminales del lado del circuito que están eléctricamente conectados al circuito anfitrión, y terminales del lado del dispositivo de memoria que están eléctricamente conectados al dispositivo de memoria. Con esta disposición, se detecta la aparición de errores de comunicación provocados por contacto defectuoso entre los terminales del lado del dispositivo de memoria y los terminales del lado del circuito y, en consecuencia, mejora la fiabilidad de la comunicación entre el circuito anfitrión y el dispositivo de memoria.
La presente invención puede implementarse de diferentes modos, por ejemplo, una placa de circuito conectable a un dispositivo de inyección de líquido; un receptáculo de líquido conectable a un dispositivo de inyección de líquido; un receptáculo de líquido instalable en un dispositivo de inyección de líquido; un procedimiento para aceptar de un circuito anfitrión datos para su escritura a una sección de memoria de datos; un sistema que incluye un circuito anfitrión y un dispositivo de memoria instalable de manera desmontable en el circuito anfitrión; un sistema de inyección de líquido; un programa de ordenador para llevar a cabo las funciones de tales procedimientos o dispositivos; o un medio de grabación que tiene tal programa de ordenador grabado en el mismo.
Breve descripción de las figuras
La fig. 1 ilustra una configuración simplificada de un sistema de impresión;
las figs. 2A y 2B son vistas en perspectiva que representan una configuración de un cartucho de tinta de acuerdo con la realización;
las figs. 3A y 3B representan una configuración de una placa de acuerdo con la realización;
la fig. 4 ilustra una configuración de una unidad de cabezal de impresión;
la fig. 5 es una primera ilustración que representa una configuración eléctrica de una impresora;
la fig. 6 es una segunda ilustración que representa una configuración eléctrica de una impresora;
la fig. 7 representa esquemáticamente un mapa de memoria de áreas de memoria proporcionadas por una matriz de memoria ferroeléctrica de un dispositivo de memoria;
la fig. 8 es un diagrama de flujo que representa una rutina de procesamiento de una operación de lectura desde un dispositivo de memoria de la impresora;
la fig. 9 es un gráfico de temporización que representa esquemáticamente las señales intercambiadas entre un módulo de proceso de comunicación y un circuito de control de memoria durante una operación de lectura desde un dispositivo de memoria;
la fig. 10 es un diagrama de flujo que representa esquemáticamente una rutina de procesamiento de una operación de lectura desde un dispositivo de memoria de la memoria;
la fig. 11 es un diagrama de flujo que representa la rutina de procesamiento de una operación de lectura que tiene lugar en el dispositivo de memoria;
la fig. 12 es un diagrama de flujo que representa la rutina de procesamiento de una operación de escritura a un dispositivo de memoria que tiene lugar en la impresora;
la fig. 13 representa esquemáticamente un mapa de memoria reconocido en la impresora durante una operación de escritura a un dispositivo de memoria;
la fig. 14 es un gráfico de temporización que representa esquemáticamente señales intercambiadas entre un módulo de proceso de comunicación y un circuito de control de memoria durante una operación de escritura a un dispositivo de memoria;
la fig. 15 es un diagrama de flujo que representa la rutina de procesamiento de una operación de escritura en un dispositivo de memoria;
la fig. 16 es un gráfico de temporización que representa esquemáticamente señales intercambiadas entre un módulo de proceso de comunicación y un circuito de control de memoria durante una operación de bloqueo de escritura de un dispositivo de memoria; y
la fig. 17 es un diagrama de flujo que representa las etapas del proceso en una operación de impresión.
Descripción de la realización preferida
A. Realización:
Configuración del sistema de impresión
La fig. 1 es una ilustración que representa una configuración simplificada de un sistema de impresión. El sistema de impresión incluye una impresora 20 provista como el dispositivo de impresión, y un ordenador 90. La impresora 20 está conectada al ordenador 90 a través de un conector 80.
La impresora 20 está dotada de un mecanismo de alimentación de sub-escaneo, un mecanismo de alimentación de escaneo principal, un mecanismo de accionamiento de cabezal, y un controlador principal 40. El mecanismo de alimentación de sub-escaneo tiene un motor de alimentación de papel 22 y un rodillo 26, y transporta papel PA en la dirección de sub-escaneo transmitiendo una rotación del motor de alimentación de papel al rodillo. El mecanismo de alimentación de escaneo principal incluye un motor de carro 32, una polea 38, una correa de accionamiento 36 estirada entre el motor de carro y la polea, y un carril de deslizamiento 34 dispuesto paralelo al eje del rodillo 26. El carril de deslizamiento 34 retiene de manera deslizante un carro 30 que está fijado a la correa de accionamiento 36. La rotación del motor de carro 32 se transmite al carro 30 a través de la correa de accionamiento 36, tras lo cual el carro 30 experimenta un movimiento alternativo en la dirección axial del rodillo 26 (la dirección de escaneo principal) a lo largo del carril de deslizamiento 34. El mecanismo de accionamiento de cabezal incluye una unidad de cabezal de impresión 60 instalada en el carro 30, y está diseñado para accionar un cabezal de impresión e inyectar tinta sobre el papel PA. El controlador principal 40 controla los mecanismos anteriores y lleva a cabo las operaciones de impresión. El controlador principal 40, por ejemplo, recibe un trabajo de impresión de un usuario a través del ordenador 90, y controla los mecanismos anteriores para llevar a cabo la impresión basándose en el contenido del trabajo de impresión recibido. Como se analizará más adelante, una pluralidad de cartuchos de tinta son instalables de manera desmontable en la unidad de cabezal de impresión 60. Específicamente, los cartuchos de tinta para suministrar tinta al cabezal de impresión están dispuestos en la unidad de cabezal de impresión 60 de tal modo que se pueden montar y desmontar a través de una operación de usuario. La impresora 20 también tiene una porción de consola 70 que permite el uso para llevar a cabo varios ajustes de impresora, comprobar el estado de la impresora, etc.
La configuración de la impresora, junto con la configuración de un cartucho de tinta (receptáculo de líquido), se analizará más adelante con referencia a las figs. 2A, 2B, 3A, 3B, y 4. Las figs. 2A y 2B son vistas en perspectiva que representan una configuración de un cartucho de tinta de acuerdo con la realización. Las figs. 3A y 3B son dibujos que representan una configuración de una placa de circuito impreso (en adelante se denomina simplemente placa de circuito) de acuerdo con la invención. La fig. 4 es un dibujo que ilustra una configuración de la unidad de cabezal de impresión 60.
El cartucho de tinta 100 tiene un cuerpo principal 101 para contener la tinta, una placa de circuito 120, y un sensor
110. En la cara de la base del cuerpo principal 101 está provisto un puerto de suministro de tinta 104 que, con el cartucho instalado en la unidad de cabezal de impresión 60, suministra tinta a la unidad de cabezal de impresión 60. Una cámara de tinta 150 para contener la tinta está formada en el cuerpo principal 101. El puerto de suministro de tinta 101 se comunica con la cámara de tinta 150. La abertura 104op del puerto de suministro de tinta 104 está sellada por medio de una lámina 104f. Al instalar el cartucho de tinta 100 en la unidad de cabezal de tinta 60 (fig. 4), la lámina 104f es perforada y una aguja de suministro de tinta 6 se inserta a través del puerto de suministro de tinta 104 (fig. 4). La tinta contenida en la cámara de tinta 150 es suministrada a la impresora 20 a través de la aguja de suministro de tinta 6.
El sensor 110 se fija al interior del cuerpo principal 101. Como se analizará más adelante, el sensor 110 incluye un elemento piezoeléctrico compuesto por un cuerpo piezoeléctrico intercalado entre dos electrodos opuestos, y se utiliza para detectar el nivel de tinta restante. El cuerpo principal 101 incluye una pared frontal 101wf (la pared que queda en la dirección -Y) y una pared de base 101wb (la pared que queda en la dirección +Z). La pared frontal 101wf intersecta (en la presente realización, según un ángulo sustancialmente recto) la pared de base 101wb. La placa de circuito 120 está fijada a la pared frontal 101wf. La superficie exterior de la placa de circuito 120 está provista de terminales 210 a 270.
Están formados dos salientes P1, P2 en la pared frontal 101wf. Estos salientes P1, P2 sobresalen hacia fuera en la dirección -Y. Un orificio 122 y una muesca 121 adaptados para recibir respectivamente estos salientes P1, P2 están formados en la placa de circuito 120 (fig. 3A). El orificio 122 está formado en el centro del borde de la placa de circuito 120 en el lado del puerto de suministro de tinta 104 (el borde en la dirección +Z) de la misma, mientras que
la muesca 121 está formada en el centro del borde de la placa de circuito 120 en el lado opuesto con relación al puerto de suministro de tinta 104 (el borde en la dirección -Z). Con la placa de circuito 120 montada sobre la pared frontal 101wf, los salientes P1, P2 pasan respectivamente a través del orificio 122 y la muesca 121. Durante la producción del cartucho de tinta 100, después de que la placa de circuito 120 se haya montado en la pared frontal 101wf, las puntas de estos salientes P1, P2 se colapsan. La placa de circuito 120 se fija de ese modo a la pared frontal 101wf.
Adicionalmente, está provisto un saliente de acoplamiento 101e en la pared frontal 101wf. Se evita que el cartucho de tinta 100 se separe inadvertidamente del soporte 4 mediante el acoplamiento del saliente de acoplamiento 101e y una abertura de acoplamiento 4e de un soporte 4 (fig. 4).
La configuración de la unidad de cabezal de impresión 60, así como la instalación del cartucho de tinta 100 en la unidad de cabezal de impresión 60, se analiza con referencia a la fig. 4. Como se representa en la fig. 4, la unidad de cabezal de impresión 60 incluye un soporte 4, un mecanismo de conexión 400, un cabezal de impresión 5, y una placa de sub-control 500. En la placa de sub-control 500 hay montado un circuito de carro 50 y un grupo de terminales para la conexión respectiva a través del mecanismo de conexión 400 a los terminales individuales 210 a 270 de la placa de circuito 120 del cartucho de tinta 100. El soporte 4 está diseñado para recibir la instalación de varios cartuchos de tinta 100, y está situado encima del cabezal de impresión 5. El mecanismo de conexión 400 tiene terminales de conexión eléctricamente conductores 410 a 470 provistos para cada uno de los terminales de la placa de circuito 120 y adaptados para proporcionar conexiones eléctricas entre los terminales de la placa de circuito 120 y el cartucho de tinta 100, que se analizará más adelante, y los terminales dispuestos en la placa de sub-control
500. Las agujas de suministro de tinta 6 anteriormente mencionadas para suministrar tinta desde los cartuchos de tinta 100 al cabezal de impresión 5 están situadas en el cabezal de impresión 5. El cabezal de impresión 5 incluye varias boquillas y varios elementos piezoeléctricos, y está adaptado para inyectar pequeñas gotas de tinta desde las boquillas en respuesta a una tensión aplicada a los elementos piezoeléctricos, produciendo así puntos sobre el papel PA. El circuito de carro 50 es un circuito diseñado para llevar a cabo el control en relación con los cartuchos de tinta 100 en conjunto con el controlador principal 40, y en este documento se denomina también como subcontrolador.
El cartucho de tinta 100 se instala en el soporte 4 insertándolo en la dirección hacia adelante del eje Z (la dirección de inserción R) en la fig. 4. El cartucho de tinta 100 se instala así de manera desmontable en la impresora 20. La placa de circuito 120 que está montada sobre el cartucho de tinta 100 se instala en, o se desinstala de, la impresora 20 en conjunto con la instalación o desinstalación del cartucho de tinta 100 por parte del usuario. Cuando se instala el cartucho de tinta 100 en la impresora 20, la placa de circuito 120 se acopla eléctricamente con la impresora 20.
La descripción de la placa de circuito 120 continúa, volviendo a las figs. 3A y 3B. La flecha R de la fig. 3A indica la dirección de inserción del cartucho de tinta 100 que se ha mencionado anteriormente. Como se muestra en la fig. 3B, la placa de circuito 120 está provista de un dispositivo de memoria 130 en su cara posterior, es decir, la cara en el lado posterior de la cara que se conecta con la impresora 20; y está provista de un grupo de terminales compuesto por siete terminales en su cara frontal, es decir, la cara que se conecta con la impresora 20. En la presente realización, el dispositivo de memoria 130 es un dispositivo de memoria de semiconductor que incluye una matriz de células de memoria ferroeléctrica. Esta matriz de células de memoria, que corresponde a la sección de memoria de datos de la presente invención, almacena datos de diferentes tipos en relación con el cartucho de tinta 100 o con la tinta, como el consumo de tinta, color de la tinta, etc. Los datos de consumo de tinta indican, para la tinta contenida en el cartucho de tinta en cuestión, la cantidad total acumulada de tinta consumida en el transcurso de la impresión y en la limpieza del cabezal. Los datos pueden representar la cantidad de tinta per se, o representar la tinta consumida como un porcentaje de una cantidad de referencia que es equivalente a la cantidad de tinta contenida inicialmente en el cartucho de tinta.
Los terminales del lado frontal de la placa de circuito 120 están formados con una forma generalmente rectangular y están situados para formar dos filas aproximadamente ortogonales con relación a la dirección de inserción R. De estas dos filas, la fila situada hacia la dirección de inserción R (el lado del borde distal según la dirección de inserción cuando está insertado), es decir, el lado inferior en la fig. 3A, se denomina fila inferior; y la fila situada hacia el lado opuesto desde la dirección de inserción R, es decir, el lado superior en la fig. 3A, se denomina fila superior. Aquí, el término "inferior" se utiliza por motivos de conveniencia de la descripción en cuanto a las figs. 3A y 3B. Los terminales que forman la fila superior y los terminales que forman la fila inferior están configurados de acuerdo con una disposición denominada escalonada mediante un posicionamiento diferente uno de otro, de modo que los centros de los terminales no están alineados en la dirección de inserción R.
Los terminales que están ordenados para formar la fila superior son, en orden desde la izquierda en la fig. 3A, un terminal de tierra 210 y un terminal de alimentación 220. Los terminales que están ordenados para formar la fila inferior son, en orden desde la izquierda en la fig. 3A, un primer terminal de accionamiento de sensor 230, un terminal de reinicio 240, un terminal de reloj 250, un terminal de datos 260, y un segundo terminal de accionamiento de sensor 270. Los cinco terminales situados cerca del centro en la dirección lateral, es decir, el terminal de tierra 210, el terminal de alimentación 220, el terminal de reinicio 240, el terminal de reloj 250, y el terminal de datos 260, están respectivamente conectados al dispositivo de memoria 130 a través de capas de patrón de circuito (no
mostradas) provistas en las caras frontal y posterior de la placa de circuito 120, y orificios pasantes situados en la placa de circuito 120. Los dos terminales situados en los extremos de la fila inferior, es decir, el primer terminal de accionamiento de sensor 230 y el segundo terminal de accionamiento de sensor 270, están respectivamente conectados a uno y otro de los electrodos del elemento piezoeléctrico incluido en el sensor 110.
Con esta placa de circuito 120, los cinco terminales que se conectan al dispositivo de memoria 130 y los dos terminales que se conectan al sensor 110 están situados próximos entre sí. Por tanto, en el mecanismo de conexión 400 también en el lado de la impresora 20, los terminales 410, 420 y 440 a 460 de conexión que corresponden a los cinco terminales conectados al dispositivo de memoria 130 y los terminales de conexión 430, 470 que corresponden a los dos terminales conectados al sensor 110 están igualmente situados próximos entre sí.
Con el cartucho de tinta 100 fijado en el soporte 4, los terminales de la placa de circuito 120 se conectan eléctricamente a través del contacto con los terminales de conexión 410 a 470 del mecanismo de conexión 400. Además, los terminales de conexión 410 a 470 del mecanismo de conexión 400 se conectan eléctricamente a través del contacto con el grupo de terminales de la placa de sub-control 500; y el grupo de terminales en la placa de subcontrol 500 están en conexión eléctrica con el sub-controlador (circuito de carro 50). Por tanto, cuando el cartucho de tinta 100 se fija en el soporte 4, los terminales 210 a 270 de la placa de circuito 120 están en conexión eléctrica con el sub-controlador 50.
Configuración eléctrica de la impresora
Las figs. 5 y 6 son ilustraciones que representan la configuración eléctrica de la impresora. La ilustración de la fig. 5 está centrada en la totalidad del circuito de control principal 40, el sub-controlador 50, y todos los cartuchos de tinta 100 instalables en la impresora. La fig. 6 representa las características funcionales del circuito de control principal 40 y las características funcionales del sub-controlador 50, que se muestran junto con un único cartucho de tinta 100. El sub-controlador 50 de la presente realización corresponde al circuito anfitrión de la presente invención. En la presente realización, el sub-controlador 50 provisto como circuito anfitrión suministra energía al dispositivo de memoria 130 provisto como sección de memoria de datos, y transmite comandos que indican varios tipos de acceso al dispositivo de memoria 130 para escribir datos en el dispositivo de memoria 130 o leer datos del dispositivo de memoria 130 (se describirá más adelante).
Al dispositivo de memoria 130 de cada cartucho de tinta 100 se le asigna un número ID de 8 bits (información de identificación) diferente de todos los demás. Debido a que, como se muestra en la fig. 5, los dispositivos de memoria 130 de los cartuchos de tinta están conectados en paralelo a las líneas que salen del sub-controlador 50 (es decir, están conectadas como un bus al sub-controlador 50), si se va a llevar a cabo una operación tal como una operación de lectura/escritura por parte del sub-controlador 50 en el dispositivo de memoria 130 de un cartucho de tinta 100 particular, es necesario que el cartucho de tinta particular sea identificado desde el controlador 40 principal y el subcontrolador 50. El número ID se utiliza con este propósito. Este número ID es utilizado por el sub-controlador 50 para especificar un dispositivo de memoria 130 (cartucho de tinta 100) al que se va a acceder.
Las líneas que conectan eléctricamente el sub-controlador 50 con cada cartucho de tinta 100 incluyen las líneas que conectan el sub-controlador 50 con el grupo de terminales de la placa de sub-control 500; los terminales de conexión 410 a 470 del mecanismo de conexión 400; el grupo de terminales en el lado frontal de la placa de circuito 120; y las líneas que conducen desde el grupo de terminales de la placa de circuito 120 al dispositivo de memoria 130 y al sensor 110. Las líneas que conectan eléctricamente el sub-controlador 50 con cada cartucho de tinta 100 incluyen una línea de señal de reinicio LR1, una línea de señal de reloj LC1, una línea de señal de datos LD1, una primera línea de tierra LCS, una primera línea de alimentación LCV, una primera línea de señal de accionamiento de sensor LDSN, y una segunda línea de señal de accionamiento de sensor LDSP.
La línea de señal de reinicio LR1 entre el sub-controlador 50 y el dispositivo de memoria 130 es una línea conductora para enviar una señal de reinicio CRST desde el sub-controlador 50 al dispositivo de memoria 130. La señal de reinicio es una señal mediante la cual el sub-controlador 50 puede poner el circuito de control de memoria 136 (que se analizará más adelante) de un dispositivo de memoria 130 en el estado inicializado, o en un estado de espera en el que puede aceptar acceso. Cuando el sub-controlador 50 presenta una señal de reinicio de bajo nivel a un circuito de control de memoria 136, el circuito de control de memoria 136 entra en el estado inicializado. La línea de señal de reloj LC1 entre el sub-controlador 50 y el dispositivo de memoria 130 es una línea conductora para enviar una señal de reloj CSCK desde el sub-controlador 50 al dispositivo de memoria 130. La línea de señal de datos LD1 entre el sub-controlador 50 y el dispositivo de memoria 130 es una línea conductora para enviar señales de datos CSDA que son intercambiadas entre el sub-controlador 50 al dispositivo de memoria 130. Como se muestra en la fig. 6, en el sub-controlador 50, la línea de señal de datos LD1 está conectada al potencial de tierra CVSS (0 V) a través de una resistencia a masa R1. Como resultado, el potencial de la línea de señal de datos LD1 se mantiene en un nivel bajo, en particular cuando no se están intercambiando señales de datos entre el subcontrolador 50 y el dispositivo de memoria 130. Para conseguir la sincronización entre el sub-controlador 50 y el dispositivo de memoria 130, se transmiten señales de datos y se reciben en sincronización con la señal de reloj mencionada anteriormente. Por ejemplo, el intercambio puede tener lugar de modo que las señales se transmitan o reciban a la vez que se utiliza una subida o bajada de la señal de reloj como temporización de datos válida. Cada
una de estas tres líneas, LR1, LC1, LD1 es una línea que tiene un único final en el sub-controlador 50, y finales ramificados correspondientes en número al número de cartuchos de tinta 100, en el cartucho de tinta 100. Es decir, con relación a las tres líneas LR1, LC1, LD1, la pluralidad de dispositivos de memoria 130 están conectados mediante un bus al sub-controlador 50. La señal de reinicio CRST, la señal de datos CSDA, y la señal de reloj CSCK son todas ellas señales binarias que tienen bien un nivel alto (en la presente realización, un potencial CVDD de 3,3 V) o un nivel bajo (en la presente realización, un potencial CVSS de 0 V). En el presente documento, una señal de nivel alto también está representada por el valor "1", y una señal de nivel bajo también está representada por el valor "0".
La primera línea de tierra LCS es una línea conductora para proporcionar potencial de tierra CVSS al dispositivo de memoria 130, y está eléctricamente conectada al primer dispositivo de memoria 130 a través del terminal de tierra 210 de la placa de circuito 120. La primera línea de tierra LCS es una línea que tiene un único final en el subcontrolador 50, y finales ramificados, correspondientes en número al número de cartuchos de tinta 100, en el cartucho de tinta 100. El potencial de tierra CVSS está conectado al potencial de tierra VSS (= potencial CVSS) suministrado al sub-controlador 50 por el controlador principal 40 a través de una segunda línea de tierra LS, y se establece en un nivel bajo (0 V).
La primera línea de señal de accionamiento de sensor LDSN y la segunda línea de señal de accionamiento de sensor LDSP son líneas conductoras adaptadas para aplicar una tensión de accionamiento al elemento piezoeléctrico del sensor 110, y después de dejar de aplicar la tensión de accionamiento, transmitir al subcontrolador 50 una tensión producida por el efecto piezoeléctrico del elemento piezoeléctrico. La primera línea de señal de accionamiento de sensor LDSN y la segunda línea de señal de accionamiento de sensor LDSP son una pluralidad de líneas que están provistas respectivamente de manera independiente para cada cartucho de tinta 100, y cada una de ellas está eléctricamente conectada en un primer extremo al sub-controlador 50 así como eléctricamente conectada en el otro extremo al primer terminal de accionamiento de sensor 230 y al segundo terminal de accionamiento de sensor 270 de la placa de circuito 120, respectivamente. La primera línea de señal de accionamiento de sensor LDSN está eléctricamente conectada a través del primer terminal de accionamiento de sensor 230 a uno de los electrodos del elemento piezoeléctrico del sensor 110, mientras que la segunda línea de señal de accionamiento de sensor LDSP está eléctricamente conectada a través del segundo terminal de accionamiento de sensor 270 al otro electrodo del elemento piezoeléctrico del sensor 110.
La primera línea de alimentación LCV es a línea conductora para proporcionar la tensión de alimentación de energía CVDD, que representa la tensión de operación del dispositivo de memoria 130, al dispositivo de memoria 130; y está conectada al dispositivo de memoria 130 a través del terminal de alimentación de energía220 de la placa de circuito
120. La primera línea de alimentación LCV es una línea que tiene un único final en el sub-controlador 50, y finales ramificados, correspondientes en número al número de cartuchos de tinta 100, en el cartucho de tinta 100. La tensión de alimentación de energía de nivel alto CVDD utilizada para accionar el dispositivo de memoria 130 utiliza un potencial de aproximadamente 3,3 V frente al potencial de tierra de nivel bajo CVSS (0 V). Por supuesto, dependiendo de factores como la generación de procesador del dispositivo de memoria 130, el nivel de potencial de la tensión de alimentación de energía CVDD puede ser un potencial diferente, como por ejemplo 1,5 o 2,0 V.
En controlador principal 40 y el sub-controlador 5 están eléctricamente conectados por medio de varias líneas. Estas varias líneas incluyen un bus BS, una segunda línea de alimentación de energía LV, una segunda línea de tierra S, y una tercera línea de señal de accionamiento de sensor LDS. El bus BS se utiliza para comunicaciones de datos entre el controlador principal 40 y el sub-controlador 50. La segunda línea de alimentación de energía LV y la segunda línea de tierra LS son líneas conductoras para proporcionar al controlador principal 40 y al sub-controlador 50 respectivamente tensión de alimentación de energía VDD y potencial de tierra VSS. La tensión de alimentación de energía VDD utiliza un potencial del mismo nivel que la tensión de alimentación de energía CVDD proporcionada al dispositivo de memoria 130 mencionado anteriormente, por ejemplo de aproximadamente 3,3 V frente al potencial de tierra VSS y CVSS (0 V). Por supuesto, dependiendo de factores como la generación de procesador de la sección de lógica IC del sub-controlador 50, el nivel de potencial de la tensión de alimentación de energía VDD puede ser un potencial diferente, como 1,5 o 2,0 V por ejemplo. La tercera línea de señal de accionamiento de sensor LDS es una línea conductora para proporcionar una señal de accionamiento de sensor DS (que se describe más adelante) que se aplica en última instancia a cada sensor 110, desde el controlador principal 40 al subcontrolador 50.
El controlador principal 40 está provisto de un circuito de control 48, un circuito de generación de señal de accionamiento 42, y una ROM, RAM, EEPROM o similar (no mostrada). Hay varios programas para controlar la impresora 20 almacenados en la ROM.
El circuito de control 48 es una CPU (Unidad de Procesamiento Central), y lleva a cabo el control de la impresora 20 como un todo conjuntamente con la ROM, RAM, EEPROM u otra memoria. El circuito de control 48 está provisto de los bloques funcionales de un módulo de detección de nivel de tinta restante M1, un módulo de acceso a memoria M2, y un módulo de estimación de consumo de tinta M3.
El módulo de detección de nivel de tinta restante M1 controla el sub-controlador y el circuito de generación de señal
de accionamiento 42, acciona el sensor 110 del cartucho de tinta 100, y decide si la tinta en el cartucho de tinta 100 es igual que un valor prescrito o mayor. A través del sub-controlador 50, el módulo de acceso a memoria M2 accede al dispositivo de memoria 130 del cartucho de tinta 100 y bien lee la información almacenada en el dispositivo de memoria 130, o bien actualiza la información almacenada en el dispositivo de memoria 130. El módulo de estimación de consumo de tinta M3 está diseñado para contar los puntos que se inyectan sobre el papel impreso en conjunto con condiciones de las operaciones de impresión de la impresora 20; y a partir de este valor de recuento y de la cantidad de tinta consumida por cada punto, estima la cantidad de tinta consumida por las operaciones de impresión. La cantidad de tinta consumida en las operaciones de limpieza de cabezales también se estima. Basándose en estas estimaciones, se lleva un recuento del valor acumulativo estimado para el consumo de tinta consumido del cartucho de tinta desde que el cartucho de tinta 100 se instaló por primera vez en la impresora 20.
La EEPROM del controlador principal 40 almacena datos que representan una señal de accionamiento de sensor DS para accionar el sensor. De acuerdo con una instrucción del módulo de detección de nivel de tinta restante M1 del circuito de control 48, el circuito de generación de señal de accionamiento 42 lee de la EEPROM datos que representan una forma de onda para la señal de accionamiento de sensor DS, y genera una señal de accionamiento de sensor DS que tiene la forma de onda deseada. La señal de accionamiento de sensor DS incluye un potencial que es mayor que la tensión de suministro de energía CVDD (en la presente realización, 3,3 V); en la presente realización, por ejemplo, incluye un potencial máximo de aproximadamente 36 V. Específicamente, la señal de accionamiento de sensor DS es una señal de pulsos trapezoidales que tienen una tensión máxima de 36 V.
En la presente realización, el circuito de generación de señal de accionamiento 42 puede además generar una señal de accionamiento de cabezal para su presentación al cabezal de impresión 5. Específicamente, en la presente realización, durante la determinación de la cantidad de tinta restante, el circuito de control 48 indica al circuito de generación de señal de accionamiento 42 que genere una señal de accionamiento de sensor, y durante las operaciones de impresión indica al circuito de generación de señal de accionamiento 42 que genere una señal de accionamiento de cabezal.
En cuanto a la configuración de hardware, el sub-controlador está provisto de un ASIC (CI de Aplicación Específica). El ASIC tiene un módulo de proceso de comunicación 55 y un módulo de proceso de sensor 52 como características funcionales.
El módulo de proceso de comunicación 55 lleva a cabo procesos de comunicación con el dispositivo de memoria 130 de cada uno de los cartuchos de tinta 100 a través de la línea de señal de reinicio LR1, la línea de señal de datos LD1, y la línea de señal de reloj LC1. El módulo de proceso de comunicación 55 también lleva a cabo procesos de comunicación con el controlador principal 40 a través del bus BS. Detectando los potenciales en los terminales prescritos del grupo de terminales de la placa de circuito 120, el módulo de proceso de comunicación 55 es capaz de detectar si la placa de circuito 120 de un cartucho de tinta 100 está eléctricamente conectada a la impresora 20, es decir, si el cartucho de tinta 100 está instalado en la impresora 20. El módulo de proceso de comunicación 55 notifica entonces al controlador principal 40 que ha detectado los cartuchos de tinta 100 instalados. A través de este proceso el controlador principal 40 puede determinar si los cartuchos de tinta 100 están montados en la sección de montaje de cartucho.
Si el controlador principal 40 determina que las placas de circuito 120 están eléctricamente conectadas y que los cartuchos de tinta 100 están instalados en la impresora 20, entonces accede a los dispositivos de memoria 130 de los cartuchos de tinta 100 instalados según una temporización prescrita, a través del módulo de proceso de comunicación 55.
El módulo de proceso de comunicación 55 es un circuito que incluye un circuito lógico compuesto por un ASIC o similar, y que es accionado por la tensión de alimentación de energía VDD (en la presente realización, 3,3 V). En la presente realización, el ASIC está compuesto por un bloque de área de célula de memoria (SRAM 551) y un área de lógica, estando provista el área de lógica de un registro de sensor 552 y un registro de código de error 553. La SRAM 551 es una memoria utilizada para guardar datos temporalmente durante las operaciones del módulo de proceso de comunicación 55, es decir, para guardar temporalmente datos recibidos del controlador principal 40, o datos recibidos de los sensores 110 o de los dispositivos de memoria 130, por ejemplo. Después de encender la impresora 20, en la SRAM 551 se asigna un espacio de memoria suficiente para almacenar datos que corresponden a los datos originales y que corresponden a datos especulares invertidos de los datos originales en el dispositivo de memoria 130 de cada cartucho de tinta 100 (se analiza más adelante); y los datos que se leen de los dispositivos de memoria se almacenan después en este espacio de memoria asignado. Específicamente, en el espacio de memoria en la SRAM 551 hay asignada un área de memoria suficiente para almacenar los datos originales de 16 bits y los datos especulares invertidos de los datos originales de 16 bits, en el mismo número de filas que la matriz de células de memoria de cada dispositivo de memoria 130. Entonces, los datos originales que se leen de la matriz de memoria de cada dispositivo de memoria, junto con los datos especulares invertidos de los mismos, se almacenan en el área de memoria asignada. Los valores que se leen al área de memoria se actualizan posteriormente en conjunto con las operaciones de impresión (en conjunto con la transmisión de datos de escritura desde el controlador principal 40 y la lectura de datos desde los dispositivos de memoria). Los errores de comunicación y los errores de célula de memoria, que se analizan más adelante, que se producen en relación con las filas en el área de memoria
reescribible de cada dispositivo de memoria 130 son escritos en el registro de códigos de error 553.
El registro de sensor 552 es un registro utilizado por el módulo de proceso de sensor 52 para escribir resultados de procesos de escritura de procesos de sensor. Está provisto un módulo de proceso de sensor 552 para cada cartucho de tinta, y se utiliza para grabar los resultados de la determinación del nivel de tinta restante, como se analiza más adelante.
El módulo de proceso de sensor 52 ejecuta un proceso de determinación de nivel de tinta restante utilizando el sensor (proceso de sensor), que se analiza más adelante. El módulo de proceso de sensor 52 incluye un interruptor de conmutación. El interruptor de conmutación se utiliza para presentar una señal de accionamiento de sensor DS suministrada por el circuito de generación de señal de accionamiento 42, al sensor 110 de un único cartucho de tinta 100 que constituye el objetivo del proceso de sensor, llevándose esto a cabo a través bien de la primera línea de señal de accionamiento de sensor LDSN, o bien la segunda línea de señal de accionamiento de sensor LDSP.
A continuación, se describe la configuración eléctrica de los cartuchos de tinta 100. Cada cartucho de tinta 100 tiene como sus elementos eléctricos un dispositivo de memoria 130 y un sensor 110.
El dispositivo de memoria 130 no está diseñado para aceptar la entrada externa de datos de dirección que especifican la dirección de una localización de acceso. El dispositivo de memoria 130 no acepta la entrada directa de datos de dirección; sin embargo, se puede controlar para especificar las células de memoria a las que se accede, en respuesta a una señal de reloj y datos de comando suministrados externamente. El dispositivo de memoria 130 incluye una matriz de células de memoria ferroeléctrica 132 provistas como la sección de memoria de datos; y un circuito de control de memoria 136. Como se indica a través de círculos blancos sobre las líneas discontinuas que representan el dispositivo de memoria 130 en la fig. 6, el dispositivo de memoria 130 está provisto de un terminal de tierra para la conexión eléctrica al terminal de tierra 210 de la placa de circuito 120, un terminal de alimentación para la conexión eléctrica al terminal de alimentación 220, un terminal de reinicio para la conexión eléctrica al terminal de reinicio 240, y un terminal de reloj para la conexión eléctrica al terminal de reloj 250.
La matriz de células de memoria ferroeléctrica 132 es una matriz de células de memoria de semiconductor no volátiles que utiliza elementos de memoria ferroeléctricos y proporciona un área de memoria que tiene una característica de re-escritura de datos.
El circuito de control de memoria 136 está diseñado para controlar las operaciones de lectura y escritura en la matriz de células de memoria ferroeléctrica 132 en respuesta a los datos de comando del sub-controlador 50. El circuito de control de memoria 136 analiza datos de identificación y datos de comando enviados desde el sub-controlador. También, durante una operación de escritura, basándose en los datos de contenido de escritura recibidos del subcontrolador 50, el circuito de control de memoria 136 genera datos de escritura y los escribe en la matriz de células de memoria ferroeléctrica 132. O, durante una operación de lectura, basándose en los datos leídos de la matriz de células de memoria ferroeléctrica 132, el circuito de control de memoria 136 genera datos para la transmisión al subcontrolador 50. Esto se analizará con detalle más adelante.
El circuito de control de memoria 136 está dotado de un módulo comparador de ID M11, un módulo de análisis de comandos M12, un contador de direcciones M13, un módulo de control de lectura/escritura M14, un módulo de envío/recepción de datos M15, un módulo de control de contadores M16, un módulo de generación de datos de copia M17, un módulo de generación de datos invertidos M18, y un módulo de determinación de datos M19. El módulo comparador de ID M11 está diseñado para comparar datos de ID que se suministran desde el subcontrolador 50, y el número ID que está asignado a su propio dispositivo de memoria; y para decidir luego si el objetivo del acceso es el propio dispositivo de memoria. El número ID del dispositivo de memoria está almacenado en las células de memoria que están conectadas a la línea de palabra que se selecciona basándose en la salida del contador de direcciones M13 cuando el acceso desde el sub-controlador 50 se inicia posteriormente a la inicialización del dispositivo de memoria 130. Este número ID se utiliza para distinguir un dispositivo de memoria 130 que constituye el objetivo de acceso desde el sub-controlador 50, de entre los múltiples dispositivos de memoria 130 que están conectados mediante bus al sub-controlador 50. Este número ID puede elegirse de acuerdo con el color de la tinta contenida en el cartucho de tinta 100, por ejemplo. El módulo de análisis de comandos M12 está diseñado para analizar datos de Inicio de Trama (SOF, Start of Frame), datos de Final de Trama (EOF, End of Frame), y datos de comando enviados desde el sub-controlador 50, y para decidir el inicio del acceso y final del acceso desde el subcontrolador 50, así como el tipo de acceso (lectura, escritura, etc.). Cuando se introduce una señal de reinicio de bajo nivel CRST en el dispositivo de memoria 130 de modo que se inicialice el dispositivo de memoria 130, el contador de direcciones M13 reinicia el valor del contador. Durante el reinicio, el valor del contador se ajusta a un valor que selecciona la línea de palabra incluyendo las células de memoria en las que se almacena el número ID. A continuación, basándose en el control del módulo de control de contador M16, se cuenta secuencialmente un número prescrito de pulsos de reloj de entre los pulsos de reloj introducidos en el dispositivo de memoria 130. Cuando se accede a una célula de memoria a través del control por el módulo de control de lectura/escritura M14, el valor de contador del contador de direcciones M13 se emite desde el contador de direcciones M13 a un decodificador de direcciones de la matriz de células de memoria, no mostrado. En consecuencia, se selecciona una fila prescrita (línea de palabra) de la matriz de células de memoria 132 en correspondencia con el valor del contador.
En la presente realización, se selecciona una "fila" por parte del decodificador de direcciones basándose en el valor del contador emitido por el contador de direcciones M13. De acuerdo con el contenido de los datos de comando (indicativos del tipo de acceso) que fue analizado por el módulo de análisis de comandos M12, el módulo de control de lectura/escritura M14 lleva a cabo una operación de escritura por lotes sobre una única fila y una operación de lectura por lotes desde una única fila de la matriz de memoria ferroeléctrica 132 que está conectada a la línea de palabra seleccionada por el contador de direcciones M13. El módulo de control de lectura/escritura M14 está provisto de un registro, no mostrado, y es capaz de almacenar temporalmente datos originales, datos invertidos, y dados especulares, que se analizan más adelante con mayor detalle. El módulo de envío/recepción de datos M15 en sincronía con la señal de reloj CSCK recibe una señal de datos CSDA enviada desde el sub-controlador 50 a través de la línea de señal de datos LD1, o en sincronía con la señal de reloj CSCK envía una señal de datos CSDA a través de la línea de señal de datos LD1. Específicamente, el módulo de envío/recepción de datos M15 establece la dirección de envío/recepción de datos de las señales de datos CSDA intercambiadas entre el dispositivo de memoria 130 y el sub-controlador 50. Después de la inicialización, cuando se inicia el acceso al dispositivo de memoria 130 por el sub-controlador, la dirección de envío/recepción del módulo de envío/recepción de datos M15 se establece en la dirección en la que el dispositivo de memoria 130 recibe señales de datos CSDA enviadas desde el subcontrolador 50, de modo que los datos enviados desde la matriz de células de memoria 132 no es enviada desde el dispositivo de memoria 130 al sub-controlador 50. El módulo de generación de datos de copia M17 está adaptado para copiar datos originales (se analiza más adelante) para generar datos especulares (se analiza más adelante) de igual tamaño que los datos originales. El módulo de generación de datos invertidos M18 está adaptado para invertir el valor de cada bit de los datos originales para generar datos invertidos (se analiza más adelante) de igual tamaño que los datos originales. El módulo de determinación de datos M19 está diseñado para llevar a cabo una comprobación de paridad y una operación OR exclusiva de los datos originales y los datos especulares, analizados más adelante, para determinar la consistencia de los datos. El módulo de control de contadores M16 está dotado de un contador de reloj. Después de que el acceso al dispositivo de memoria 130 por parte del sub-controlador 50 se inicie después de que se inicialice el dispositivo de memoria 130, el módulo de control de contadores M16 cuenta el número de pulsos de reloj de la señal de reloj CSCK introducida en el dispositivo de memoria 130. Después de alcanzarse un valor de contador prescrito, basándose en el resultado del análisis de comandos por el módulo de análisis de comandos M12, el módulo de control de contadores M16 emite una señal de control al contador de direcciones M13 para provocar que el contador de direcciones M13 bien aumente o bien disminuya el valor del contador. El módulo de envío/recepción de datos M15 de la presente realización corresponde a la sección de recepción de datos y a la sección de transmisión de datos de la presente invención.
La fig. 7 es un dibujo que representa esquemáticamente un mapa de memoria de la matriz de memoria ferroeléctrica 132 del dispositivo de memoria 130. En la fig. 7, el mapa de memoria de la matriz de memoria ferroeléctrica 132 está compuesto por múltiples filas, donde cada fila tiene 32 células. A la matriz de células de memoria 132 se accede secuencialmente, por orden de fila seleccionada por el valor indicado por el contador de direcciones. En el mapa de memoria representado en la fig. 7, el orden de acceso secuencial es desde el lado superior al inferior, en unidades de filas. Aquí, por conveniencia, en cualquier fila dada, las células de memoria más hacia el lado izquierdo (el lado D31) se denominan células de orden superior. Para filas diferentes, una fila de orden superior que una fila particular significa una fila en el lado superior (una fila que tiene un número de fila menor) que la fila particular de la fig. 7; y una fila de orden inferior que una fila particular significa una fila en el lado inferior (una fila que tiene un número de fila mayor) que la fila particular de la fig. 7. Como se muestra en el mapa, la matriz de células de memoria 132 tiene un área de información de identificación, un área reescribible, un área de sólo lectura, y un área de control. El área de información de identificación tiene el área de memoria de 32 bits de la Fila A0, y se utiliza para almacenar el número ID mencionado anteriormente. El área reescribible tiene un área de memoria de (m-1) filas, donde m es un número natural, desde la Fila A1 a la Fila Am-1 en la fig. 7. El área reescribible es un área a la que se accede con el propósito de reescribir datos por el sub-controlador 50 de la impresora 20. El área de sólo lectura tiene un área de memoria de (n-m) filas desde las Filas Am hasta An-1. Al área de sólo lectura se accede con el propósito exclusivo de leer datos por parte del sub-controlador de la impresora 20. Se proporciona el área de control como un área de orden inferior del área de sólo lectura. El área de control es un área de memoria para almacenar información de indicador de incremento e información de indicador de bloqueo de escritura, que se analizarán más adelante. Cada fila única de las áreas de almacenamiento del mapa de memoria de la matriz de células de memoria 132 tiene una capacidad de almacenamiento de 32 bits. Una única fila corresponde a una fila seleccionada por el contador de direcciones M13 (es decir, una línea de palabra). Dentro de una única fila, los 16 bits superiores representan un área de datos para almacenar datos originales. Aquí, datos originales hace referencia a datos que son la fuente para los datos invertidos y los datos especulares, que se analizarán más adelante. En el presente documento, el área de datos para almacenar los datos originales se denomina el área de datos originales. Dentro de una única fila, los 16 bits inferiores representan un área de datos para almacenar datos especulares que son una copia de los datos originales que están almacenados en los 16 bits superiores. En este documento, el área de datos para almacenar los datos especulares se denomina área de datos especulares. En la fig. 7, la mitad izquierda representa el área de datos originales, y la mitad derecha representa el área de datos especulares. Dicho del modo opuesto, en la fig. 7 los datos que se almacenan en el área de datos originales en la mitad izquierda son los datos originales, y los datos que se almacenan en el área de datos especulares en el lado derecho son los datos especulares. Bajo circunstancias normales, es decir, en ausencia de ningún error de escritura o células defectuosas en una fila dada, los datos originales y los datos especulares de cada fila tienen contenido idéntico.
En el área de información de identificación y en el área reescribible, los 15 bits superiores del área de datos originales de cada fila se utilizan para almacenar datos reales; mientras que el último bit (el bit decimosexto) se utiliza para almacenar datos de paridad P que están asociados a los datos reales. En la presente realización, los datos reales son datos utilizados por el controlador principal 40 de la impresora 20 para controlar varios aspectos del funcionamiento de la impresora 20 (por ejemplo, operaciones de impresión, control de la interfaz de usuario). En la presente realización, los datos reales incluyen, por ejemplo, datos que representan el nivel de tinta restante, la fecha y hora en que el cartucho de tinte fue puesto por primera vez en servicio, etc. Los 15 bits superiores del área de datos especulares se utilizan para almacenar datos especulares de los datos reales de los datos originales, mientras que el último bit (el bit decimosexto) se utiliza para almacenar datos especulares de los datos de paridad P que están asociados a los datos reales de los datos originales. Los datos de paridad P consisten en un bit redundante que se establece en un valor que puede ser bien "1" o "0", de tal manera que el número de bits de valor "1" en los 16 bits de datos que consisten en los 15 bits superiores y el dato P de paridad siempre es un número impar. El dato P de paridad puede por el contrario ajustarse bien a "1" o a "0" de tal modo que el número de bits de valor "1" en los datos de 16 bits que consisten en los 15 bits superiores y el bit de paridad P es siempre un número par. Los datos de paridad P no deberían interpretarse como limitantes, y podrían utilizarse en su lugar cualquiera de los varios tipos de datos redundantes que proporcionan una redundancia de los datos reales.
De las (n-m) filas del área de sólo lectura, todas las filas excepto la última fila An-1 se utilizan para almacenamiento de datos reales, mientras que la última fila se utiliza para el almacenamiento de datos de paridad. Específicamente, para cada una de las unidades prescritas de datos reales (por ejemplo, unidades de 8 bits o de 16 bits) de las filas excepto la última fila, se asignan datos de paridad de 1 bit a un bit de la última fila. En la fig. 7, las células nombradas como "P" representan las áreas de memoria de 1 bit para almacenar datos de paridad P.
Como se apreciará a partir de la discusión anterior, en el área de información de identificación y en el área reescribible, los datos originales consisten en datos reales y datos de paridad. En el área de sólo lectura, en áreas diferentes de la última fila, los datos originales son datos reales per se. En el área de sólo lectura, en la última fila, los datos originales son datos de paridad.
El área reescribible almacena varios tipos de información, por ejemplo, información acerca del nivel de tinta restante
o información acerca del historial de uso para el cartucho de tinta 100. El número ID (información de identificación, que se elige para cada tipo (color) de cartucho de tinta 100, se almacena en los 8 bits empezando desde la célula delantera en la primera fila delantera (el área de información de identificación de Fila A0) que es seleccionada por el valor inicial del contador de direcciones M13 inmediatamente después que se inicie el acceso al dispositivo de memoria 130. En la fig. 7, el área que almacena el número ID está indicada por un sombreado fino. El resto de células de la Fila A0, es decir, exceptuando las células de bit de paridad de los datos originales y las células que almacenan el número ID, constituyen áreas vacías y almacenan datos fijos que pueden adoptar el valor 0 o 1. Por ejemplo, cuando el número de cartuchos de tinta 100 instalados en la impresora 20 es n, el número ID puede adoptar n tipos de valores que difieren de acuerdo con el tipo de cartucho de tinta 100. La primera fila del área reescribible (Fila A1) almacena un primer valor de recuento de consumo de tinta X (por ejemplo, en 10 bits), y la segunda fila (Fila A2) almacena un segundo valor de recuento de consumo de tinta Y (por ejemplo, en 10 bits). El primer valor de recuento de consumo de tinta X representa información de 10 bits por ejemplo, y es almacenado en las células de los 10 bits inferiores entre los 15 bits exceptuando la célula de información de paridad de la Fila A1. Los 5 bits restantes de la fila A1 constituyen un área vacía que almacena datos fijos, y se envían datos desde la impresora 20 de modo que siempre se almacena "1" en los mismos. En la fig. 7, el área que almacena el primer valor de recuento de consumo de tinta X aparece indicada mediante un sombreado grueso. El segundo valor de recuento de consumo de tinta Y representa información de 10 bits por ejemplo, y se almacena en las células de los 10 bits inferiores de entre los 15 bits exceptuando la célula de información de paridad de la Fila A2. Los 5 bits restantes de la Fila A2 constituyen un área vacía, y se envían datos desde la impresora 20 de modo que siempre se almacena "1" en los mismos. En la fig. 7, el área que almacena el segundo valor de recuento de consumo de tinta Y aparece indicado por medio de un sombreado cruzado. El primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y son valores que representan el consumo total de tinta acumulativo para cada cartucho de tinta 100, obtenido basándose en el consumo de tinta estimado por el módulo de estimación de consumo de tinta M3 de la impresora 20. También se almacena información de final de tinta M en una fila prescrita del área reescribible. La información de final de tinta M pueden ser datos de 2 bits que pueden adoptar uno de entre tres estados "01", "11" o "01", por ejemplo. "01" representa un estado en el que el sensor 110 del cartucho de tinta 100 no ha detectado que el nivel de tinta restante es igual o menor que un primer valor umbral Vref1 (al que en adelante también se denomina como el estado lleno), es decir, que el nivel de tinta restante es mayor que el primer valor umbral Vref1. "10" representa un nivel de tinta restante igual o menor que el primer valor umbral Vref1 y mayor que el nivel de final de tinta (al que en adelante también se denomina como el estado bajo; es decir, primer valor umbral Vref1 > nivel de final de tinta. El hecho de que el nivel de tinta restante sea igual o menor que el primer valor umbral Vref1 es detectado por el sensor 110 del cartucho de tinta 100 en cuestión. "11" representa un nivel de tinta restante en o por debajo del nivel de final de tinta (al que en adelante también se denomina como estado final). El nivel de final de tinta es un nivel de tinta restante en el que, si la impresora 20 continua imprimiendo ininterrumpidamente, aparece el riesgo de que entre aire en la unidad de cabezal de impresión 60 debido al agotamiento de la tinta, por lo que es imperativo sustituir el cartucho de tinta 100. Por ejemplo, el primer valor umbral Vref1 puede establecerse en aproximadamente 1,5 gramos, y el nivel de final de tinta puede establecerse en un
nivel de tinta restante de aproximadamente 0,8 gramos. Los procesos relativos al primer valor de recuento de consumo de tinta X, el segundo valor de recuento de consumo de tinta Y, y la información de final de tinta M se analizarán más adelante.
El área de sólo lectura almacena, por ejemplo, información del fabricante que indica el fabricante del cartucho de tinta 100, la fecha de fabricación del cartucho de tinta, la capacidad del cartucho de tinta 100, el tipo de cartucho de tinta, etc. El área de control almacena información de indicador de incremento e información de bloqueo de escritura.
Está provisto un bit de información de indicador de incremento para cada fila del mapa de memoria. Una fila cuya información de indicador de incremento se establece en "1" representa un área en la que se permite que la fila sea sobrescrita sólo con un valor numérico mayor que el valor numérico ya almacenado en la fila (sobreescritura incremental), pero no se permite que la fila sea sobrescrita con un valor numérico más pequeño que el valor numérico ya almacenado en la fila (sobreescritura decremental). Una fila cuya información de indicador de incremento asociada está establecida en "0" puede ser sobreescrita libremente. La decisión acerca de si permitir sólo sobreescrituras incrementales o permitir sobreescritura libre es tomada por el módulo de control de lectura/escritura M14 del circuito de control de memoria 136, con referencia a la información de indicador de incremento. Específicamente, para la Fila A1 y la Fila A2 que almacenan el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y mencionados anteriormente, la correspondiente información de indicador de incremento se establece en "1". El motivo es que es difícil de imaginar que la actualización del primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y por la impresora 20 tuviera lugar de un modo diferente que en la dirección del aumento. Esto puede reducir la probabilidad de errores de escritura en la Fila A1 y la Fila A2. A partir de ahora en el presente documento, a las áreas de memoria para las cuales, como la Fila A1 y la Fila A2, la correspondiente información de indicador de incremento se establece en "1" también se denominan como áreas de incremento. Sobreescribir en una fila puede ser permitido en los casos en los que la sobreescritura de datos es una sobreescritura incremental realizada en unidades de datos originales de 16 bits en lugar de en unidades de fila. Cuando el nivel de tinta restante, en lugar del consumo de tinta, se guarda en una fila de la memoria, esta fila puede ser controlada por un valor de indicador que indica si se permite sólo sobreescritura decremental o si se permite sobreescritura libre.
Está provisto un bit de información de indicador de bloqueo de escritura para cada fila en el área de información de identificación, el área reescribible, y el área de sólo lectura. Una fila cuya información de indicador de bloqueo de escritura está establecida en "1" representa un área que no se permite reescribir mediante acceso externo. Una fila cuya información de indicador de bloqueo de escritura está establecida en "0" representa un área que se permite rescribir mediante acceso externo. La decisión acerca de si permitir sobreescritura es tomada por el módulo de control de lectura/escritura M14 del circuito de control de memoria 136, con referencia a la información de indicador de bloqueo de escritura. Para el área reescribible, es decir, las Filas A1 a Am-1, la información de indicador de bloqueo de escritura se establece en "0" en la fábrica antes de su envío, para permitir el borrado y/o la rescritura de datos por el módulo de proceso de comunicación 55 de la impresora 20. Por otro lado, para el área de información de identificación, es decir, la Fila A0, y para el área de sólo lectura, es decir, las Filas Am a An-1, la información de indicador de bloqueo de escritura se establece en "1" en la fábrica antes de su envío, para prohibir el borrado y/o la rescritura de datos por el módulo de proceso de comunicación 55 de la impresora 20. Tales áreas de memoria para las cuales la información de indicador de bloqueo de escritura se establece en "1" son también denominadas como áreas con escritura bloqueada.
El sensor 110, que no se representa con detalle en los dibujos, está dotado de una cavidad (porción de resonancia) que define parte del canal de flujo de tinta cerca de la sección de suministro de tinta; una placa oscilante que forma parte de la pared de la cavidad; y un elemento piezoeléctrico dispuesto sobre la placa oscilante. El módulo de proceso de sensor 52 de la impresora 20 puede aplicar una señal de accionamiento de sensor DS al elemento piezoeléctrico a través de los terminales de accionamiento de sensor 230, 270, e inducir de ese modo la oscilación de la placa oscilante a través del elemento piezoeléctrico. Entonces, recibiendo del elemento piezoeléctrico una señal de respuesta RS que tiene la frecuencia de la vibración residual de la placa oscilante, el módulo de proceso de sensor 52 puede detectar si hay presencia o ausencia de tinta en la cavidad. Específicamente, si la tinta contenida en el cuerpo principal 101 se consume de modo que el estado del interior de la cavidad cambia desde un estado lleno de tinta a un estado lleno de aire, la frecuencia de la vibración residual de la placa oscilante cambia. Este cambio de frecuencia se refleja en un cambio de frecuencia de la señal de respuesta RS. Midiendo la frecuencia de la señal de respuesta RS, el módulo de proceso de sensor 52 puede detectar si hay presencia o ausencia de tinta en la cavidad. La detección de que hay "ausencia" de tinta en la cavidad significa que el nivel de tinta restante contenido en el cuerpo principal 101 es igual o menor que el primer valor umbral Vref1 (esto corresponde a la cantidad de tinta restante corriente abajo de la cavidad). Detectar que hay "presencia" de tinta en la cavidad significa que el nivel de tinta restante contenida en el cuerpo principal 101 es mayor que el primer nivel umbral Vref1.
Operación de lectura del dispositivo de memoria
La fig. 8 es un diagrama de flujo que representa una rutina de procesamiento de una operación de lectura del dispositivo de memoria 130, ejecutada por el sub-controlador 50 de la impresora 20. La fig. 9 es un diagrama de temporización que representa esquemáticamente señales intercambiadas entre el módulo de proceso de
comunicación 55 de la impresora 20 y el circuito de control de memoria 136 del dispositivo de memoria 130 durante una operación de lectura desde el dispositivo de memoria 130. En la fig. 9, se representa un ejemplo de una tensión de alimentación de energía CVDD, una señal de reinicio CRST, una señal de reloj CSCK, y una señal de datos CSDA. La tensión de alimentación de energía CVDD es una señal que aparece en la primera línea de alimentación de energía LCV que conecta el sub-controlador 50 y el dispositivo de memoria 130, y es suministrada al dispositivo de memoria 130 por el sub-controlador 50. La señal de reinicio CRST es una señal que aparece en la línea de señal de reinicio LR1 que conecta el sub-controlador 50 y el dispositivo de memoria 130, y es suministrada al dispositivo de memoria 130 por el sub-controlador 50. La señal de reloj CSCK es una señal que aparece en la línea de señal de reloj LC1 que conecta el sub-controlador 50 y el dispositivo de memoria 130, y es suministrada al dispositivo de memoria 130 por el sub-controlador 50. La señal de datos CSDA es una señal que aparece en la línea de señal de datos LD1 que conecta el sub-controlador 50 y el dispositivo de memoria 130. En la fig. 9, también se indica la dirección de los datos de la señal de datos CSDA. Las flechas que apuntan hacia la derecha representan la dirección en la que el sub-controlador 50 está en el lado de envío y el dispositivo de memoria 130 está en el lado de recepción. Las flechas que apuntan hacia la izquierda representan la dirección en la que el sub-controlador 50 está en el lado de recepción y el dispositivo de memoria 130 está en el lado de envío. En la presente realización, el dispositivo de memoria 130 envía y recibe datos de manera síncrona con la subida de la señal de reloj CSCK que le presenta el sub-controlador 50. El envío y recepción de datos tiene lugar cuando la señal de reloj CSCK sube y el nivel de la señal de datos en el terminal de datos del dispositivo de memoria 130 tiene un valor válido para el envío o recepción de datos. La fig. 10 es un diagrama de flujo que representa esquemáticamente la rutina de procesamiento de una operación ejecutada por el circuito de control de memoria 136 en el lado de memoria.
El controlador principal 40 de la impresora 20, a través del bus BS, envía al sub-controlador 50 un comando de Lectura que ordena que se lleve a cabo una operación de lectura del dispositivo de memoria 130 del cartucho de tinta 100. El módulo de proceso de comunicación 55 suministra la tensión de alimentación de energía CVDD a cada uno de los cartuchos de tinta 100 a través de la primera línea de alimentación de energía LCV. Específicamente, se suministra una tensión de operación al dispositivo de memoria 130 de cada uno de los cartuchos de tinta 100, poniendo así el dispositivo de memoria 130 en el estado operativo. Después de suministrar la tensión de alimentación de energía CVDD, se suministra una señal de reinicio de bajo nivel para inicializar los dispositivos de memoria 130. Como la señal de reinicio permanece en un nivel bajo desde el momento en que terminó el acceso anterior, está en un nivel bajo incluso antes de que se suministre la tensión de alimentación de energía al dispositivo de memoria 130. Cuando el módulo de proceso de comunicación 55 del sub-controlador recibe el comando de Lectura, comienza la operación de lectura representada en el diagrama de la fig. 8.
Cuando comienza la operación de lectura, el módulo de proceso de comunicación 55 realiza una transición de la señal de reinicio CRST desde el nivel bajo al nivel alto, y transmite una señal de reloj CSCK de una frecuencia prescrita (fig. 9). Cuando la señal de reinicio CRST sube desde el nivel bajo al nivel alto, el dispositivo de memoria 130 entra en un estado de espera para aceptar una señal de datos CSDA del módulo de proceso de comunicación
55.
El módulo de proceso de comunicación 55 primero transmite datos de SOF (Inicio de Trama) como una señal de datos CSDA (fig. 8: Etapa S102, fig. 9). Los datos de SOF son una señal de datos de 8 bits que tiene una forma de onda prescrita, y transmitida en sincronismo con la señal de reloj CSCK. El propósito de transmitir el SOF es notificar al dispositivo de memoria 130 el inicio de la comunicación.
Después de los datos de SOF, el módulo de proceso de comunicación 55 envía un código de operación. Un código de operación es una secuencia de datos de identificación y datos de comando. Los datos de comando son datos para indicar un tipo particular de acceso (por ejemplo, una operación de lectura o escritura) al dispositivo de memoria 130. El módulo de proceso de comunicación 55 envía datos de identificación como una señal de datos CSDA (fig. 8: Etapa S104). Los datos de identificación son información de identificación que especifican el dispositivo de memoria 130 de un cartucho de tinta 100 que es el objetivo de una operación de lectura, e incluyen datos de identificación de 8 bits y datos de identificación invertidos de 8 bits (fig. 9). Aquí, los datos invertidos son datos del mismo tamaño (mismo número de bits) que los datos originales, pero en los datos el valor de cada bit de los datos originales está invertido. Por ejemplo, si un valor m-ésimo (m es un número natural) de los datos originales es un "1", en los datos invertidos, el valor m-ésimo se convierte en un "0"; y si un valor m-ésimo de los datos originales es un "0", en los datos invertidos, el valor m-ésimo se convierte en un "1". En adelante, cuando los datos originales se denoten mediante el símbolo A, los datos invertidos de los mismos se denotan mediante un / (barra inclinada) precedente, es decir, /A. Por ejemplo, para los datos originales A = (01001001), los datos invertidos /A = (10110110). Los datos de identificación invertidos son generados por el controlador principal 40 o el módulo de proceso de comunicación 55 basándose en los datos de identificación. Al duplicar los datos de identificación de este modo, se puede evitar una operación indeseada del dispositivo de memoria 130 de un cartucho de tinta 100 que no es el objetivo de la operación.
Después de los datos de identificación, el módulo de proceso de comunicación 55 envía datos de comando como una señal de datos CSDA (fig. 8: Etapa S106). Los datos de comando incluyen datos de comando originales de 8 bits y datos de comando invertidos de 8 bits (fig. 9). Aquí, como la operación es una operación de lectura desde el dispositivo de memoria 130 al sub-controlador 50, los datos de comando enviados en la operación son un comando
que indica una operación de lectura (comando de Lectura). En los datos de comando originales CM, de los 8 bits, los 4 bits superiores y los 4 bits inferiores tienen una relación invertida unos en relación con otros. Por ejemplo, si los 4 bits superiores de los datos de comando originales CM son "0110", los 4 bits inferiores de los datos de comando originales CM son "1001", y los datos de comando invertidos /CM son "10010110". Los datos de comando invertidos son generados por el controlador principal 40 o el módulo de proceso de comunicación 55 basándose en los datos de comando originales. Proporcionando tal redundancia de datos de comando, se puede evitar una operación errónea del dispositivo de memoria 130.
En sincronización con la siguiente subida de la señal de reloj CSCK que sigue al final de la transmisión de los datos de comando, comienza la recepción de los datos de lectura enviados desde el dispositivo de memoria 130. El módulo de proceso de comunicación 55 recibe datos de lectura que incluyen datos que se leen desde una fila del dispositivo de memoria 130. Para analizar con mayor detalle, el módulo de proceso de comunicación 55 recibe una unidad de datos de lectura equivalentes a 8 bits x 8 bits = 64 bit, haciéndolo secuencialmente un bit cada vez en sincronismo con la subida de la señal de reloj CSCK (fig. 8: Etapa S108, fig. 9). La unidad de 64 bits de datos de lectura consiste en los 8 bits superiores de los datos originales UDn (n es un número natural); los 8 bits superiores de los datos originales invertidos /UDn que representan datos invertidos de los 8 bits superiores de los datos originales UDn; los 8 bits inferiores de los datos originales LDn; los 8 bits inferiores invertidos de los datos originales /LDn que representan datos invertidos de los 8 bits inferiores de los datos originales LDn; los 8 bits superiores de los datos especulares Udn que representan datos especulares de los 8 bits superiores de los datos originales UDn; los 8 bits superiores de los datos especulares invertidos /Udn que representan los 8 bits superiores de los datos originales invertidos Udn; los 8 bits; los 8 bits inferiores de los datos especulares Ldn que representan datos especulares de los 8 bits inferiores de los datos originales LDn; y los 8 bits inferiores de los datos especulares invertidos /Ldn que representan los 8 bits inferiores de los datos originales invertidos Ldn (fig. 9).
Los datos de 16 bits que tienen los 8 bits superiores de los datos originales UDn como sus bits superiores y los 8 bits inferiores de los datos originales LDn como sus datos inferiores son también denominados como los datos originales Dn. Los datos de 16 bits que tienen los 8 bits superiores de los datos originales invertidos /UDn como sus bits superiores y los 8 bits inferiores de los datos originales invertidos /LDn como sus bits inferiores también son denominados como los datos invertidos /Dn. Los datos de 16 bits que tienen los 8 bits superiores de los datos especulares Udn como sus bits superiores y los 8 bits inferiores de los datos especulares Ldn como sus bits inferiores también son denominados como datos especulares dn. Los datos de 16 bits que tienen los 8 bits superiores de los datos especulares invertidos /Udn como sus bits superiores y los 8 bits inferiores de los datos especulares invertidos /Ldn como sus bits inferiores también son denominados como los datos especulares invertidos /dn. Esto es, la unidad de datos de lectura se puede decir que representa datos compuestos por datos originales Dn, datos invertidos /Dn, datos especulares dn, y datos especulares invertidos /dn. En última instancia, repitiendo la recepción de unidades de datos de lectura n veces, el módulo de proceso de comunicación 55 del subcontrolador 50 recibe todos los datos que se deben leer (se analizará más adelante). Cabe destacar que los datos originales Dn y los datos especulares dn se leen desde la matriz de células de memoria 132 mientras que los datos invertidos /Dn y los datos especulares invertidos /dn son generados a partir de los datos originales Dn y los datos especulares dn por parte del módulo de generación de datos invertidos M18.
Cuando se recibe una unidad de datos de lectura, el módulo de proceso de comunicación 55 almacena temporalmente la unidad de datos de lectura en un registro (no mostrado) y ejecuta el proceso que se describe a continuación. En primer lugar, desde la unidad de datos de lectura, el módulo de proceso de comunicación 55 decide si el OR exclusivo de un valor m-ésimo de los datos originales Dn y un valor m-ésimo de los datos especulares invertidos /dn es verdadero "1" para todos los valores de m (1 ≤ m ≤ 16) (fig. 8: Etapa S110). En general, la salida de un circuito OR exclusivo es verdadera "1" si las dos entradas tienen valores diferentes, y es falsa "0" si las dos entradas tienen un valor idéntico. Si la salida de la operación OR exclusiva es verdadera para los 16 bits, es decir, si 1111111111111111 = FFFF en notación hexadecimal (fig. 8: Etapa S110: SI), el módulo de proceso de comunicación 55 decide que el estado de la comunicación y las células de memoria que se han leído son normales, y almacena los datos originales Dn y los datos especulares invertidos /dn en un área de memoria asignada (analizado anteriormente) de la SRAM 551 (fig. 8: Etapa S120).
Si, por otro lado, la salida de la operación OR exclusiva es falsa "0" para cualquiera de los 16 bits, es decir, si no es FFFF (fig. 8: Etapa S110: NO), el módulo de proceso de comunicación 55 decide si el OR exclusivo de un valor mésimo de los datos originales Dn y un valor m-ésimo de los datos invertidos /Dn es verdadero "1" para todos los valores de m (1 ≤ m ≤ 16) (fig. 8: Etapa S112). Si la salida de la operación OR exclusiva es FFFF (fig. 8: Etapa S112: SÍ), el módulo de proceso de comunicación 55 decide si el OR exclusivo de un valor m-ésimo de los datos especulares dn y un valor m-ésimo de los datos especulares invertidos /dn es verdadero "1", para todos los valores de m (1 ≤ m ≤ 16) (Etapa S114). Si los resultados de la operación OR exclusiva para todos los valores m-ésimos de los datos originales Dn y todos los valores m-ésimos de los datos invertidos /Dn no son FFFF (fig. 8: Etapa S112: NO), o si los resultados del OR exclusivo para todos los valores m-ésimos de los datos especulares dn y todos los valores m-ésimos de los datos especulares invertidos /dn no son FFFF (fig. 8: Etapa S114: NO), el módulo de proceso de comunicación 55 decide que hay un error de comunicación, y almacena los datos originales Dn y los datos especulares invertidos /dn en un área de memoria asignada en la SRAM 551, así como guarda un código de error de comunicación prescrito que indica el error de comunicación al registro de códigos de error 553 en el módulo
de proceso de comunicación 55 (fig. 8: Etapa S118), luego lleva a cabo un proceso de error prescrito (Etapa S124) y termina la operación de lectura. El registro de códigos de error 553 puede también almacenar información incluida que indica si el error de comunicación se produjo en la comunicación de los datos originales desde el dispositivo de memoria (corresponde al NO de S112) o si el error de comunicación se produjo en la comunicación de los datos especulares desde el dispositivo de memoria (corresponde al NO de S114). El proceso de error prescrito puede implicar notificar al controlador principal 40 el error de comunicación, o que cese la operación de lectura, por ejemplo. El proceso de error prescrito también puede omitirse. Al hacer referencia al código de error de comunicación almacenado en la SRAM 551, el controlador principal 40 reconoce que se ha producido un error de comunicación. Si el controlador principal 40 reconoce además si el error de comunicación se ha producido en los datos originales o en los datos especulares, los datos en los que no se ha producido ningún error de comunicación pueden utilizarse para procesos ejecutados por el controlador principal 40.
Si los resultados de la operación OR exclusiva para todos los valores m-ésimos de los datos originales Dn y todos los valores m-ésimos de los datos invertidos /Dn son FFFF (fig. 8: Etapa S112: SÍ), y los resultados del OR exclusivo para todos los valores m-ésimos de los datos especulares dn y todos los valores m-ésimos de los datos especulares invertidos /dn son FFFF (fig. 8: Etapa S114: SÍ), existe una alta probabilidad de que los datos que se almacenaron en el área de datos originales del dispositivo de memoria 130 y los datos que se almacenaron en el área de datos especulares no sean consistentes; por tanto, el módulo de proceso de comunicación 55 decide que se ha producido un error de célula de memoria en el dispositivo de memoria 130, y entonces almacena los datos originales Dn y los datos especulares invertidos /dn en un área de memoria asignada en la SRAM 551, así como almacena un código de error de comunicación prescrito que indica el error de célula al registro de códigos de error 553 en el módulo de proceso de comunicación 55 (fig. 8: Etapa S116). Un error de célula es un problema por el cual, bien en una célula de memoria que almacena datos originales que constituyen el objetivo de la operación o una célula de memoria que almacena datos especulares que constituyen el objetivo de la operación, la célula de memoria per se resulta dañada de modo que la información guardada ya no puede guardarse correctamente.
Una vez se ejecuta la Etapa S120 o la Etapa S116, el módulo de proceso de comunicación 55 decide si se leen todos los datos que constituyen el objetivo de la operación de lectura (fig. 8: Etapa S122). Si todos los datos que han de leerse son leídos (fig. 8: Etapa S122: SÍ), el módulo de proceso de comunicación 55 termina la operación de lectura. Una vez el módulo de proceso de comunicación 55 termina la operación de lectura según se representa en la fig. 9, hace pasar la señal de reinicio CRST desde el nivel alto al nivel bajo, y deja de suministrar la señal de reloj CSCK. Una vez el módulo de proceso de comunicación 55 deja de suministrar la señal de reloj CSCK, deja entonces de suministrar la tensión de alimentación de energía CVDD. Si no todos los datos que han de leerse se han leído aún (fig. 8: Etapa S122: NO), el módulo de proceso de comunicación 55 vuelve a la Etapa S108 y repite el proceso analizado anteriormente para la siguiente unidad de datos leídos. Por ejemplo, una vez se lleva a cabo el proceso anterior para la primera unidad de datos de lectura D1, /D1, d1, /d1, se lleva entonces a cabo el proceso anterior para la segunda unidad de datos de lectura D2, /D2, d2, /d2. En la presente realización, una vez se ha completado la lectura de la Fila A1, tiene lugar la lectura de la Fila A2. Se repiten las operaciones de lectura hasta que se ha leído la información de las filas que almacenan la información que el controlador principal 40 pretende leer.
La discusión pasa ahora al procesamiento que tiene lugar en el dispositivo de memoria 130 (procesamiento del dispositivo de memoria) en respuesta a una operación de lectura desde el dispositivo de memoria 130 en el módulo de proceso de comunicación 55 descrita anteriormente. Como el procesamiento ejecutado en el dispositivo de memoria 130 es el mismo hasta la etapa de la recepción del código de operación y la etapa de analizar los datos de comando (tipo de acceso), la discusión no se limita a operaciones de lectura e incluye otros procesos (por ejemplo, operaciones de escritura) también. El dispositivo de memoria 130 recibe la entrada de tensión de alimentación de energía CVDD desde el sub-controlador 50 y es activado. El dispositivo de memoria 130 entonces se inicializa en respuesta a la entrada de una señal de reinicio de bajo nivel CRST. Después de recibir el suministro de la tensión de alimentación de energía CVDD, como la señal de reinicio CRST es baja (fig. 9), el dispositivo de memoria 130 entra en el estado inicializado e inicia el procesamiento del lado del dispositivo de memoria.
Después de llevarse a cabo la inicialización del dispositivo de memoria 130, el contador de direcciones M13 se establece en su valor inicial en el momento de la inicialización, y los varios registros se reinician a sus valores iniciales también. Además, el módulo de envío/recepción de datos M15 del dispositivo de memoria 130 establece la dirección de envío/recepción para los datos intercambiados a través del terminal de datos en la dirección en la cual el dispositivo de memoria 130 recibe datos del sub-controlador 50. El módulo de control de lectura/escritura M14 establece la dirección de transferencia de datos con relación a la matriz de memoria 132 en la dirección de lectura de datos.
Como se representa en la fig. 10, una vez se inicia el procesamiento en el dispositivo de memoria, el circuito de control de memoria 136 del dispositivo de memoria 130 recibe datos SOF como una señal de datos CSDA (fig. 10: Etapa S210). Después de los datos SOF, el circuito de control de memoria 136 recibe datos de identificación (fig. 10: Etapa S210). Una vez se han recibido los datos de identificación, el módulo comparador de ID M11 determina si los datos de identificación recibidos son correctos (Etapa S225). Específicamente, para los datos de identificación y los datos de identificación invertidos incluidos en los datos de identificación recibidos, el módulo comparador de ID M11 toma el OR exclusivo un bit cada vez, y determina si todos los valores de salida del OR exclusivo son 1. Es decir,
determina si hay algún error de comunicación en los datos de identificación recibidos. Si no hay errores de comunicación, se considera que los datos de identificación recibidos son correctos, mientras que si se encuentran errores de comunicación, se considera que los datos de identificación recibidos no son correctos. En caso de que el módulo comparador de ID M11 decida que los datos de identificación recibidos no son correctos (fig. 10: Etapa S225: NO), termina sin que continúe el procesamiento.
Si, por otro lado, el módulo comparador de ID M11 decide que los datos de identificación recibidos son correctos (Etapa S225: SÍ), entonces decide si el número ID (información de identificación) que se asigna al propio dispositivo de memoria 130 concuerda con los datos de identificación recibidos (fig. 10: Etapa S230). En este momento, como el contador de direcciones M13 está seleccionando la Fila A0 en la inicialización, el módulo de control de lectura/escritura M14 lee el número ID (información de identificación) que está almacenado en la Fila A0. El módulo comparador de ID M11 acepta entonces el número ID (información de identificación) que se asigna al dispositivo de memoria en la primera fila (fig.7: Fila A0) del área de memoria leída por el módulo de control de lectura/escritura M14, y compara bit a bit el número ID (información de identificación) asignado al dispositivo de memoria con los datos de identificación contenidos en los datos de identificación que se han enviado desde el módulo de proceso de comunicación 55. Si el número ID (información de identificación) asignado al dispositivo de memoria y los datos de identificación recibidos no concuerdan, el módulo comparador de ID M11 decide que el número ID (información de identificación) asignado al dispositivo de memoria y los datos de identificación recibidos no concuerdan.
Si el módulo comparador de ID M11 decide que el número ID (información de identificación) asignado al dispositivo de memoria no concuerda con los datos de identificación recibidos (fig. 10: Etapa S230: NO), el circuito de control de memoria 136 termina sin continuar el procesamiento. Si el módulo comparador de ID M11 decide que el número ID (información de identificación) asignado al dispositivo de memoria concuerda con los datos de identificación recibidos (fig. 10: Etapa S230: SÍ), el circuito de control de memoria 136 recibe los datos de comando que se transmiten como una señal de datos CSDA a continuación de los datos de identificación (fig. 10: Etapa S240). Una vez se reciben los datos de comando, el módulo de análisis de comandos M12 del circuito de control de memoria 136 primero determina si los datos de comando recibidos son correctos (Etapa S245). Específicamente, el módulo de análisis de comandos M12 decide si los 4 bits superiores y los 4 bits inferiores de los datos de comando originales contenidos en los datos de comando recibidos son datos invertidos unos de otros. El módulo de análisis de comandos M12 además decide si los 4 bits superiores y los 4 bits inferiores de los datos de comando invertidos contenidos en los datos de comando recibidos son datos invertidos unos de otros. El módulo de análisis de comandos M12 también toma el un bit de OR exclusivo a la vez para los datos de comando originales y los datos de comando invertidos, y decide si todos los valores de salida del OR exclusivo son 1. Si se determina que los 4 bits superiores y los 4 bits inferiores de los datos de comando originales contenidos en los datos de comando recibidos son datos invertidos unos de otros, se determina que los 4 bits superiores y los 4 bits inferiores de los datos de comando invertidos contenidos en los datos de comando recibidos son datos invertidos unos de otros, y se obtiene un resultado OR exclusivo de 1 para todos los bits de los datos de comando originales y los datos de comando invertidos, el módulo de análisis de comandos M12 decide que los datos de comando recibidos son correctos (carece de errores de comunicación). Si, por otro lado, se determina que los 4 bits superiores y los 4 bits inferiores de los datos de comando originales contenidos en los datos de comando recibidos no son datos invertidos unos de otros, o se determina que los 4 bits superiores y los 4 bits inferiores de los datos de comando invertidos contenidos en los datos de comando recibidos no son datos invertidos unos de otros, o el resultado del OR exclusivo no es 1 para cualquier bit de los datos de comando originales y los datos de comando invertidos, el módulo de análisis de comandos M12 decide que los datos de comando recibidos no son correctos (contienen errores de comunicación).
En caso de una decisión en el sentido de que los datos de comando no son correctos (Etapa S245: NO), el circuito de control de memoria 136 termina el procesamiento. Si, por otro lado, se decide que los datos de comando son correctos (Etapa S245: SÍ), el módulo de análisis de comandos M12 del circuito de control de memoria 136 analiza el comando recibido y determina el tipo de acceso (fig. 10: Etapa S250). Aquí, posibles tipos de datos de comando incluyen al menos un comando de Escritura, un comando de Lectura, y un comando de Bloqueo de Escritura. Un comando de Escritura es un comando que ordena la escritura de datos en la matriz de memoria ferroeléctrica 132. Un comando de Lectura es un comando que ordena que se lean datos de la matriz de memoria ferroeléctrica 132. Un comando de Bloqueo de Escritura es un comando que ordena que se ejecute una operación de bloqueo de escritura, que se analizad más adelante, en el dispositivo de memoria; el comando ordena que se escriba en el área de control un indicador de Bloqueo de Escritura que indica que una fila específica de la matriz de células de memoria ferroeléctrica 132 es una fila de escritura prohibida, para prohibir operaciones de escritura en la fila desde el módulo de proceso de comunicación 55.
Si el comando dirigido al dispositivo de memoria 130 no corresponde a cualquiera de los tipos de comando anteriores, el módulo de análisis de comandos M12 decide que los datos de comando no son analizables. Si el módulo de análisis de comandos M12 decide que los datos de comando no son analizables, el circuito de control de memoria 136 procede a terminar, y no hace nada (no mostrado).
Si el módulo de análisis de comandos M12 decide que el comando indicado por los datos de comando es un comando de Lectura, el circuito de control de memoria 136 ejecuta una operación de lectura en el dispositivo de memoria (fig. 10: Etapa S260). Si el módulo de análisis de comandos M12 decide que el comando indicado por los
datos de comando es un comando de Escritura, el circuito de control de memoria 136 ejecuta una operación de escritura en el dispositivo de memoria (fig. 10: Etapa S280). Si el módulo de análisis de comandos M12 decide que el comando indicado por los datos de comando es un comando de Bloqueo de Escritura, el circuito de control de memoria 136 ejecuta una operación de bloqueo de escritura en el dispositivo de memoria (fig. 10: Etapa S270). Si se está llevando a cabo una operación de lectura en la impresora 20 mostrada en la fig. 8 por parte del módulo de procesamiento 55, el circuito de control de memoria 136 recibe un comando de Lectura como datos de comando; y siempre que no se produzca un error de comunicación, el módulo de análisis de comandos M12 decide que el comando indicado por los datos de comando es un comando de Lectura, y el circuito de control de memoria 136 ejecuta la operación de lectura en el dispositivo de memoria. Las etapas del diagrama de flujo representado en la fig. 10 pueden ser ejecutadas en un orden diferente o en paralelo, siempre que no se produzcan conflictos en el proceso. Por ejemplo, el circuito de control de memoria 136 puede decidir si los datos de identificación son correctos después de confirmar una concordancia entre los datos de identificación almacenados en el dispositivo de memoria y los datos de identificación suministrados desde el módulo de proceso de comunicación 55; o puede decidir si los datos de identificación son correctos mientras recibe los datos de comando en un proceso paralelo.
La fig. 11 es un diagrama de flujo que representa la rutina de procesamiento de una operación de lectura (fig. 10: Etapa S260) en el dispositivo de memoria. El módulo de control de lectura/escritura M14 del circuito de control de memoria 136 lee datos de la matriz de células de memoria ferroeléctrica 132 de acuerdo con la dirección seleccionada por la salida del contador de direcciones M13, y los envía como una señal de datos CSDA al módulo de proceso de comunicación 55. Después de que se ha recibido el código de operación, si el comando indicado por los datos de comando es un comando de Lectura, el módulo de envío/recepción de datos M15 establece la dirección de envío/recepción de los datos que han de ser intercambiados a través del terminal de datos en la dirección de envío de datos del dispositivo de memoria 130 del sub-controlador 50. Además, si el comando indicado por los datos de comando es un comando de lectura, el módulo de control de contador M16 suministra una señal de control al contador de direcciones M13 especificando la Fila A1 como la fila inicial que se va a leer. Entonces, basándose en la dirección especificada por el valor de recuento del contador de direcciones M13, el módulo de control de lectura/escritura M14 lee datos a un registro, no mostrado, desde la matriz de memoria ferroeléctrica 132 en incrementos de 1 fila (32 bits) (fig. 11: Etapa S2602). La primera fila que se lee es la Fila A1 que se muestra en la fig.
7.
De los 32 bits que se leyeron al registro, el módulo de envío/recepción de datos M15 primero selecciona los 8 bits superiores como los 8 bits superiores de los datos originales UDn mencionados anteriormente, y los envía al subcontrolador 50 (fig. 11: Etapa S2604). A continuación, el módulo de generación de datos invertidos M18 invierte cada bit de los 8 bits superiores de los datos originales UDn para generar los 8 bits superiores de los datos originales invertidos /UDn. El módulo de envío/recepción de datos M15 envía entonces los 8 bits superiores de los datos originales invertidos generados /UDn al sub-controlador 50 (fig. 11: Etapa S2606). A continuación, de los 32 bits que se leyeron al registro, el módulo de envío/recepción de datos M15 selecciona los 8 bits de los bits 9º hasta 16º como los 8 bits inferiores de los datos originales LDn mencionados previamente, y los envía al sub-controlador 50 (fig. 11: Etapa 2608). Entonces, el módulo de generación de datos invertidos M18 invierte cada bit de los 8 bits inferiores de los datos originales LDn para generar los 8 bits inferiores de los datos originales invertidos /LDn. El módulo de envío/recepción de datos M15 envía entonces los 8 bits inferiores de los datos originales invertidos generados /LDn al sub-controlador (fig. 11: Etapa S2610). A continuación, de los 32 bits que se leyeron al registro, el módulo de envío/recepción de datos M15 selecciona los 8 bits de los bits 17º a 24º como los 8 bits superiores de datos especulares Udn mencionados anteriormente, y los envía al sub-controlador 50 (fig. 11: Etapa S2612). Entonces, el módulo de generación de datos invertidos M18 invierte cada bit de los 8 bits superiores de los datos especulares Udn para generar los 8 bits superiores de los datos especulares invertidos /Udn. El módulo de envío/recepción de datos M15 envía entonces los 8 bits superiores de datos especulares invertidos generados /Udn al sub-controlador 50 (fig. 11: Etapa S2614). A continuación, de los 32 bits que se leyeron al registro, el módulo de envío/recepción de datos M15 selecciona los 8 bits de los bits 25º a 32º como los 8 bits inferiores de datos especulares Ldn mencionados anteriormente, y los envía al sub-controlador 50 (fig. 11: Etapa S2616). Entonces, el módulo de generación de datos invertidos M18 invierte cada bit de los 8 bits inferiores de los datos especulares Ldn para generar los 8 bits inferiores de los datos especulares invertidos /Ldn. El módulo de envío/recepción de datos M15 envía entonces los 8 bits inferiores de datos especulares invertidos generados /Ldn al sub-controlador 50 (fig. 11: Etapa S2618).
Después de que el envío de los 32 bits que se leen al registro ha finalizado, si la transmisión de todos los datos que el sub-controlador 50 requiere leer no ha terminado (fig. 11: Etapa S2620: NO), el circuito de control de memoria 136 vuelve a la Etapa S2602, y repite el proceso de las Etapas S2602 a S2618 para los datos de la siguiente fila (32 bits) de la matriz de memoria ferroeléctrica 132. Una vez ha terminado la transmisión de todos los datos, el circuito de control de memoria 136 termina el proceso.
En caso de que el módulo comparador de ID M1 o el módulo de análisis de comandos M12 determine que los datos de ID o los datos de comando CM incluyen un error de comunicación, y en consecuencia el circuito de control de memoria 136 termina el procesamiento sin ningún proceso significativo, el dispositivo de memoria 130 no transmite ningún dato durante el período de transmisión de datos de lectura. Como se ha descrito anteriormente, la línea de señal de datos LD1 se mantiene en un nivel bajo por la resistencia R1 del sub-controlador cuando no hay
transmisión de datos entre el sub-controlador 50 y el dispositivo de memoria 130. Entonces el módulo de proceso de comunicación 55 recibe datos de bajo nivel durante todo el período para recibir los datos originales Dn y los datos invertidos /Dn, de modo que la decisión de la Etapa S112 de la fig. 8 es NO, y el módulo de proceso de comunicación 55 decide que se ha producido un error de comunicación. A lo largo de la operación de lectura descrita anteriormente, los datos originales Dn y los datos especulares invertidos /dn se almacenan en la SRAM 551. Si se produce un error, se almacena un error de comunicación o de célula en el registro de códigos de error 553 del módulo de proceso de comunicación 55. Los datos originales Dn y los datos especulares invertidos /dn, así como cualquier código de error de comunicación o de célula, almacenados en el modulo de proceso de comunicación 55 son recuperados por el controlador principal 40. Para los datos originales Dn y los datos especulares invertidos /dn sin ningún código de error asociado, el controlador principal 40 utiliza los datos originales Dn para llevar a cabo un proceso de control prescrito (por ejemplo, comprobar el nivel de tinta restante o notificar al usuario el nivel de tinta restante). En el caso de datos originales Dn y datos especulares invertidos /dn con un código de error de comunicación asociado, el controlador principal 40 lleva a cabo un proceso de respuesta de error de comunicación, por ejemplo, mostrando en el panel de visualización de la porción de consola 70 un mensaje que indica al usuario que vuelva a comprobar la instalación del cartucho de tinta 100. O, en el caso de que los datos originales Dn y los datos especulares invertidos /dn tengan un código de error asociado, el controlador principal 40 lleva a cabo una comprobación de paridad de los datos originales Dn y los datos especulares invertidos /dn, para lo cual se diagnostica el error de célula. Como se ha mencionado anteriormente, los datos originales Dn y los datos especulares invertidos /dn incluyen datos reales y datos de paridad (fig. 7). El controlador principal 40 selecciona los datos, de los datos originales Dn y los datos invertidos /dn con el error de célula asociado, en los que los 15 bits de datos reales y el bit de paridad tienen consistencia, y los utiliza para llevar a cabo un proceso de control prescrito. Si como resultado de la comprobación de paridad de los datos originales Dn y los datos especulares invertidos /dn con el error de célula asociados, se determina que tanto los datos originales Dn como los datos especulares invertidos /dn tienen un error de paridad, o si ambos presentan consistencia de paridad, se muestra un mensaje que alerta al usuario de que hay un error de memoria del cartucho de tinta 100 sobre el panel de visualización de la porción de consola 70. También, cuando la lectura del dispositivo de memoria 130 se lleva a cabo con el objetivo de verificar el resultado de escritura de los datos escritos en el dispositivo de memoria 130, los datos de escritura que se mantienen por el controlador principal 40 pueden compararse con los datos originales Dn y los datos especulares invertidos /dn que tienen el error de célula asociado, para determinar si los datos son correctos. En la presente realización, en la etapa S2602, los datos almacenados en una fila se leen de la matriz de células de memoria 132, pero la lectura de datos de la matriz de células de memoria 132 no tiene que tener lugar en unidades de una fila, siempre y cuando que después de la recepción de los datos de comando, los datos se puedan enviar en sincronización con la señal de reloj proporcionada al dispositivo de memoria 130, en orden desde la Etapa S2604 a la Etapa S2618.
Operación de escritura en el dispositivo de memoria
La fig. 12 es un diagrama de flujo que representa la rutina de procesamiento de una operación de escritura en el dispositivo de memoria 130, ejecutada por el sub-controlador 50 en la impresora 20. La fig. 13 es un dibujo que representa esquemáticamente un mapa de memoria del dispositivo de memoria 130 reconocido por el controlador principal 40 de la impresora 20 durante una operación de escritura en el dispositivo de memoria 130. La fig. 14 es un gráfico de temporización que representa esquemáticamente las señales intercambiadas entre el módulo de proceso de comunicación 55 de la impresora 20 y el circuito de control de memoria 136 del dispositivo de memoria 130 durante una operación de escritura en el dispositivo de memoria 130. En la fig. 14, como en la FIG. 9, se muestran la tensión de alimentación de energía CVDD, la señal de reinicio CRST, la señal de reloj CSCK, la señal de datos CSDA, y la dirección de datos. La fig. 15 es un diagrama de flujo que representa la rutina de procesamiento de una operación de escritura ejecutada por el circuito de control de memoria 136 del dispositivo de memoria 130.
A través del bus BS, el controlador principal 40 de la impresora 20 escribe en la SRAM 551 en el sub-controlador 50, los datos que deben escribirse en el dispositivo de memoria 130 de un cartucho de tinta particular 100. Específicamente, estos datos se escriben en unas filas de escritura objetivo que son asignadas en la SRAM 551 para la escritura de datos originales correspondientes a la matriz de células de memoria ferroeléctrica 132 del dispositivo de memoria 130. Durante una operación de escritura, el controlador principal 40 reconoce que el dispositivo de memoria 130 es una memoria en la cual una fila es igual que 16 bits. Por tanto, los datos que se van a escribir en el dispositivo de memoria 130 se dividen en unidades de 16 bits, donde de cada unidad de 16 bits los 15 bits superiores son datos reales y el bit inferior son datos de paridad. El dato de paridad también puede ser generado por el controlador principal 40, añadido a los datos reales de los 15 bits superiores, y escrito en la SRAM 551 como datos de 16 bits en total. Alternativamente, los datos de paridad también pueden ser generados por el sub-controlador 50, y añadidos cada vez que se escriben datos de 15 bits en la SRAM 551 por parte del controlador principal 40. El controlador principal 40 transmite entonces al sub-controlador 50 a través del bus un comando de Escritura ordenando que se notifique al dispositivo de memoria 130 donde se va a realizar la escritura, y que los datos que se escriben en la SRAM 551 se escriban en el dispositivo de memoria 130 objetivo de la operación de escritura. Cuando recibe el comando de Escritura, el sub-controlador 50 suministra a cada cartucho de tinta 100 la tensión de alimentación de energía CVDD a través de la primera línea de alimentación de energía LCV, poniendo el dispositivo de memoria 130 de cada cartucho de tinta 100 en el estado operable. Después de que la tensión de alimentación de energía CVDD ha sido suministrada por el sub-controlador 50, se suministra una señal de reinicio de
bajo nivel CRST por parte del sub-controlador 50 y se inicializan los dispositivos de memoria 130. Como la señal de reinicio permanece en un nivel bajo desde el momento en que terminó el acceso anterior, está en un nivel bajo incluso antes de que se suministre la tensión de alimentación de energía CVDD a los dispositivos de memoria 130. El módulo de proceso de comunicación 55 del sub-controlador 50 inicia entonces la operación de escritura mostrada en el diagrama de flujo de la fig. 12.
Durante las operaciones de escritura, el módulo de proceso de comunicación 55 reconoce el mapa de memoria representado en la fig. 13 como el mapa de memoria del dispositivo de memoria 130. Es decir, durante las operaciones de escritura, en el mapa de memoria real correspondiente a la matriz de memoria ferroeléctrica real (fig. 7), el módulo de proceso de comunicación 55 reconoce sólo la presencia del bloque que almacena los datos originales (el bloque de la izquierda en la fig. 7), y no reconoce la presencia del bloque que almacena datos especulares. El módulo de proceso de comunicación 55 reconoce que múltiples filas, cada una de las cuales consistente en un área de memoria que contiene 16 bits por fila, están ordenadas en el bloque que almacena los datos originales.
Cuando comienza la operación de escritura, el módulo de proceso de comunicación 55 realiza una transición de la señal de reinicio CRST desde un nivel bajo a un nivel alto, y transmite una señal de reloj CSCK de una frecuencia prescrita (fig. 14). Cuando la señal de reinicio CRST pasa del nivel bajo al nivel alto, el circuito de control de memoria 136 del dispositivo de memoria 130 entra en un estado de espera para aceptar una señal de datos CSDA del módulo de proceso de comunicación 55.
Como en la operación de lectura descrita anteriormente, el módulo de proceso de comunicación 55 transmite datos SOF como una señal de datos CSDA (fig. 12: Etapa S302, fig. 14). Como en la operación de lectura descrita anteriormente, después de los datos SOF, el módulo de proceso de comunicación 55 envía datos de identificación como una señal de datos CSDA (fig. 12: Etapa S304, fig. 14). Después de los datos de identificación, el módulo de proceso de comunicación 55 envía datos de comando como una señal de datos CSDA (fig. 14: Etapa S306, fig. 14). Los datos de comando enviados en la presente operación son un comando de Escritura que indica una operación de escritura.
En sincronización con la siguiente subida de la señal de reloj CSCK después del final de la transmisión de los datos de comando, el módulo de proceso de comunicación 55 envía los datos de escritura de modo que el circuito de control de memoria 136 del dispositivo de memoria 130 reciba los datos un bit cada vez. Los datos de escritura se envían por orden de fila comenzando por los datos que se van a escribir en la Fila A1. Específicamente, el módulo de proceso de comunicación 55 envía secuencialmente datos de escritura unitarios equivalentes a 8 bits x 4 = 32 bits (fig. 14). Una unidad de 32 bits de datos de escritura incluye los 8 bits superiores de los datos originales UDn; los 8 bits superiores de los datos originales invertidos /UDn que representan datos invertidos de los 8 bits superiores de los datos originales UDn; los 8 bits inferiores de los datos originales LDn; y los 8 bits inferiores de los datos originales invertidos /LDn que representan datos invertidos de los 8 bits inferiores de los datos originales LDn (fig. 14). El módulo de proceso de comunicación 55 envía el total de 32 bits en el orden de 8 bits superiores de los datos originales UDn, 8 bits superiores de los datos originales invertidos /UDn, 8 bits inferiores de los datos originales LDn, y 8 bits inferiores de los datos originales invertidos /LDn (Etapas S308 a S314).
En sincronización con la siguiente subida de la señal de reloj CSCK después del final de la transmisión de una unidad de datos de escritura, el módulo de proceso de comunicación 55 recibe una señal de respuesta de 1 bit (bien un "1" o un "0") desde el circuito de control de memoria 136 (fig. 12: Etapa S316, fig. 14). Una señal de respuesta de "1" (nivel alto) (en adelante también denominada señal de respuesta OK) es una señal que indica que se recibió una unidad de datos de escritura correctamente en el dispositivo de memoria 130, mientras que una señal de respuesta de "0" (nivel bajo) (en adelante también denominada señal de respuesta NG) es una señal que indica que una unidad de datos de escritura no pudo recibirse correctamente en el dispositivo de memoria 130. El motivo para adoptar una señal de respuesta OK de nivel alto en la señal de respuesta es que, como se ha mencionado anteriormente, la línea de señal de datos LD1 está conectada al potencial de nivel bajo a través de la resistencia a masa R1. Esto evita que una señal de respuesta OK de nivel alto sea introducida erróneamente en el módulo de proceso de comunicación 55 debido a un error de comunicación provocado, por ejemplo, por un contacto defectuoso entre el terminal de datos 260 y el terminal 460 del mecanismo de conexión 400.
Si la señal de respuesta recibida no es afirmativa (fig. 12: Etapa S318: NO), es decir, si la señal de respuesta recibida es una señal de respuesta NG, el módulo de proceso de comunicación 55 lleva a cabo un proceso de error prescrito (fig. 12: Etapa S320), y termina la operación de escritura. El proceso de error puede implicar, por ejemplo, intentar reenviar la misma unidad de datos de escritura, y si como resultado de un cierto número de reintentos sólo se obtiene una señal de respuesta NG, notificar el error al controlador principal 40. El controlador principal 40 mostraría entonces a través del panel de visualización de la porción de consola 70 un mensaje requiriendo al usuario que vuelva a comprobar la instalación del cartucho de tinta 100, por ejemplo.
Si, por otro lado, la señal de respuesta es afirmativa (fig. 12: Etapa S318: SÍ), es decir, si se recibe una señal de respuesta OK, el módulo de proceso de comunicación 55 decide si se han enviado todos los datos a escribir en el dispositivo de memoria 130 (fig. 12: Etapa 322). Si se han enviado todos los datos a escribir (fig. 12: Etapa S322:
SÍ), el módulo de proceso de comunicación 55 envía datos de EOF (Fin de Trama) al dispositivo de memoria 130 (fig. 12: Etapa S324), y termina la operación de escritura. Una vez el módulo de proceso de comunicación 55 termina el proceso de escritura según se representa en la fig. 14, modifica el nivel de la señal de reinicio CRST desde el nivel alto al nivel bajo, y deja de suministrar la señal de reloj CSCK. Los datos de EOF pueden ser datos de 8 bits, por ejemplo, y pueden ser bien datos significativos o bien datos ficticios. Si no se han enviado todos los datos a escribir (fig. 12: Etapa S322: NO), el módulo de proceso de comunicación 55 vuelve a la Etapa S308 y repite el proceso descrito anteriormente para la siguiente unidad de datos de escritura. Por ejemplo, una vez se ha llevado a cabo el proceso anterior para la primera unidad de datos de escritura UD1, /UD1, LD1, /LD1, el módulo de proceso de comunicación 55 lleva a cabo el proceso anterior para la segunda unidad de datos de escritura UD2, /UD2, LD2, /LD2, por ejemplo.
La discusión pasa ahora al procesamiento que tiene lugar en el dispositivo de memoria 130 (procesamiento del dispositivo de memoria) en respuesta a una operación de escritura en el dispositivo de memoria 130 en el lado de la impresora 20 descrita anteriormente. El procesamiento del dispositivo de memoria en respuesta a la operación de escritura es el mismo que durante una operación de lectura desde S210 hasta S250 en la fig. 10. En el caso de una operación de escritura, en la etapa S240 de la fig. 10 el circuito de control de memoria 136 del dispositivo de memoria 130 recibe un comando de Escritura. En consecuencia, el circuito de control de memoria 136 que ha recibido el comando de Escritura ejecuta la operación de escritura del dispositivo de memoria en la Etapa S280 (fig. 10).
La fig. 15 es un diagrama de flujo que representa las etapas del proceso de una operación de escritura en el dispositivo de memoria. Después de que se reciba un código de operación, si los datos de comando son un comando de Escritura, entonces del mismo modo que en la operación de lectura, el módulo de control de contador M16 controla el valor de recuento del reloj del contador de direcciones M13 para especificar la Fila A1 como la fila inicial en la que se va a escribir. Entonces, basándose en la dirección especificada por el valor de recuento del contador de direcciones M13, el módulo de control de lectura/escritura M14 ejecuta la operación de escritura. Específicamente, cuando se inicia la operación de escritura, el módulo de envío/recepción de datos M15 del circuito de control de memoria 136, en sincronización con la subida de la señal de reloj CSCK, recibe secuencialmente señales (1' o 0) que aparecen en la línea de señal de datos LD1 después de los datos de comando, y almacena secuencialmente éstas en el registro. Como resultado, el módulo de envío/recepción de datos M15 recibe secuencialmente los datos de escritura de 32 bits, es decir, los 8 bits superiores de los datos originales UDn, los 8 bits superiores de los datos originales invertidos /UDn, los 8 bits inferiores de los datos originales LDn, y los 8 bits inferiores de los datos originales invertidos /LDn (fig. 15: Etapas S2802 a S2808). Después de completar la Etapa S2808, el módulo de envío/recepción de datos M15 cambia la dirección de envío/recepción a la dirección de envío desde el dispositivo de memoria 130 al sub-controlador 50, y envía al sub-controlador 50 una señal de respuesta (bien una señal de respuesta NG o una señal de respuesta OK, como se analizó anteriormente) desde el dispositivo de memoria 130.
Cuando se recibe una unidad de los datos de escritura de 32 bits, el módulo de determinación de datos M19 decide si el OR exclusivo de un valor m-ésimo de los datos originales Dn y un valor m-ésimo de los datos especulares invertidos /dn es verdadero "1” o no para todos los valores de m (1 ≤ m ≤ 16), es decir, si es o no FFFF (fig. 15: Etapa S2810). Los datos originales Dn a los que se hace referencia aquí son datos de 16 bits en los que los 8 bits superiores de los datos originales recibidos en la Etapa S2802 anteriormente mencionada constituyen los bits superiores, y los 8 bits inferiores de los datos originales LDn recibidos en la Etapa S2806 anteriormente mencionada constituyen los bits inferiores. Los datos invertidos /Dn a los que se hace referencia aquí son datos de 16 bits en los que los 8 bits superiores de los datos originales invertidos /UDn recibidos en la Etapa S2804 anteriormente mencionada constituyen los bits superiores, y los 8 bits inferiores de los datos originales invertidos /LDn recibidos en la Etapa S2808 anteriormente mencionada constituyen los bits inferiores.
Si la salida de la operación OR exclusiva (resultado de la determinación por el módulo de determinación de datos M19) es falsa "0" para cualquiera de los 16 bits, es decir, si no es FFFF (fig. 15: Etapa S2810: NO), el módulo de envío/recepción de datos M15 envía una señal de respuesta NG (nivel bajo) al módulo de proceso de comunicación 55 del sub-controlador (fig. 15: Etapa S2812). Como la línea de señal de datos LD1 se mantiene a un nivel bajo mediante la resistencia a masa R1 del sub-controlador 50 cuando no hay transmisión de datos por la línea, es permisible que el módulo de envío/recepción de datos M15 no envíe ninguna señal al módulo de proceso de comunicación 55 del sub-controlador 50, en lugar de enviar una señal de respuesta NG. En este caso, el módulo de proceso de comunicación 55 también reconoce el estado de nivel bajo de la línea de señal de datos LD1 como una señal de respuesta NG. En consecuencia, esto es sustancialmente equivalente al caso en el que realmente se devuelve una señal de respuesta NG. Una vez se ha enviado la señal de respuesta NG, la operación de escritura en el dispositivo de memoria termina (terminación anómala).
Si, por otro lado, la salida de la operación OR exclusiva (resultado de la determinación por el módulo de determinación de datos M19) es afirmativa (verdadera "1") para todos los 16 bits, es decir, si es FFFF (fig. 15: Etapa S2810: SÍ), el módulo de determinación de datos M19 lleva a cabo una comprobación de paridad de los datos originales Dn de 16 bits y determina la consistencia de los datos (fig. 15: Etapa S2813). Si el resultado de la comprobación de paridad es que los datos carecen de consistencia (fig. 15: Etapa S2813: NO), el módulo de
envío/recepción de datos M15 envía una señal de respuesta NG (nivel bajo) al módulo de proceso de comunicación 55 del sub-controlador 50 (fig. 15: Etapa S2812). Como la línea de señal de datos LD1 se mantiene a un nivel bajo mediante la resistencia a masa R1 del sub-controlador 50 cuando no hay transmisión de datos por la línea, es permisible que el módulo de envío/recepción de datos M15 no envíe ninguna señal al módulo de proceso de comunicación 55 del sub-controlador 50, enviando así sustancialmente una señal de respuesta NG. Una vez se envía la señal de respuesta NG, la operación de escritura en el dispositivo de memoria termina (terminación anómala). Si, por otro lado, el resultado de la comprobación de paridad es que los datos tienen consistencia (fig. 15:Etapa S2813: SÍ), el módulo de envío/recepción de datos M15 envía una señal de respuesta OK (nivel alto) a través del terminal de datos al módulo de proceso de comunicación 55 sub-controlador 50 (fig. 15: Etapa S2814).
La señal de respuesta (bien una señal de respuesta NG o una señal de respuesta OK) se transmite en sincronización con la siguiente subida de la señal de reloj CSCK después de la recepción de una unidad de los datos de escritura de 32 bits (fig. 14). Específicamente, después de que el dispositivo de memoria 130 ha recibido una unidad de los datos de escritura de 32 bits en sincronización con una señal de reloj enviada desde el sub-controlador 50, el dispositivo de memoria 130 envía una señal de respuesta al sub-controlador 50 en sincronización con la siguiente señal de reloj enviada desde el sub-controlador 50. En caso de que el módulo comparador de ID M11 o el módulo de análisis de comandos M12 determinen que los datos ID o los datos de comando CM incluyen un error de comunicación, y en consecuencia el circuito de control de memoria 136 termine la operación sin ningún proceso significativo, el dispositivo de memoria 130 no transmite ningún dato durante el período de transmisión de señal de respuesta. Como se ha descrito previamente, la línea de señal de datos LD1 se mantiene a un nivel bajo gracias a la resistencia R1 del sub-controlador 50 cuando no hay transmisión de datos entre el sub-controlador 50 y el dispositivo de memoria 130. Cuando el módulo de proceso de comunicación 55 detecta un nivel bajo en la línea de señal de datos LD1 durante el período de transmisión de señal de respuesta, el módulo de proceso de comunicación 55 decide que se transmita una señal NG y se produce un error de comunicación. En otras palabras, la transmisión de la señal NG en el paso S2812 se lleva a cabo cuando se detecta alguna inconsistencia en los datos de identificación
o en los datos de comando.
Si se envía una señal de respuesta OK, el módulo de generación de datos de copia M17 del circuito de control de memoria 136 genera datos especulares dn que son una copia de los datos originales de 16 bits (fig. 15: Etapa S2816). Específicamente, además del registro para recibir los datos originales Dn, el circuito de control de memoria 136 está provisto de un registro de 16 bits para almacenar datos especulares dn, y el módulo de generación de datos de copia M17 copia los datos originales Dn para generar los datos especulares dn.
A continuación, el módulo de control de lectura/escritura M14 lee los datos previamente almacenados del área de memoria donde se va a realizar la escritura (área de memoria objetivo para la escritura) de los datos originales Dn y los datos especulares dn, después de lo cual el módulo de determinación de datos M19 lleva a cabo una comprobación de paridad de los datos previamente almacenados que se han leído (fig. 15: Etapa S2818). El área de memoria objetivo para la escritura para una operación de escritura de una única tanda es igual a una única fila en el mapa de memoria de la fig. 7. Como se muestra en la fig. 7, los 16 bits superiores del área de memoria objetivo para la escritura (un área equivalente a una fila) constituyen un área de datos originales para escribir datos originales Dn, mientras que los datos de paridad P se almacenan en el último bit del área de datos originales. Los 16 bits inferiores del área de memoria objetivo para la escritura (un área equivalente a una fila) constituyen un área de datos especulares para escribir datos especulares dn, mientras que al igual que en el área de datos originales, se almacenan los datos de paridad P en el último bit del área de datos especulares. En la Etapa S2818, se lleva a cabo una comprobación de paridad respectivamente para los datos previamente almacenados que se han almacenado en el área de datos original del área de memoria objetivo para la escritura, junto con los datos previamente almacenados que se han almacenado en el área de datos especulares.
Una vez se termina la comprobación de paridad, el módulo de control de lectura/escritura M14 lleva a cabo la escritura de datos en el área de memoria objetivo para la escritura (fig. 15: Etapa S2820). Aquí, si no se detecta ningún error de paridad ni en los datos previamente almacenados del área de datos originales ni en los datos previamente almacenados del área de datos especulares del área de memoria objetivo para la escritura, el módulo de control de lectura/escritura M14 escribe los datos originales que se recibieron en las Etapas S2802, S2806 en el área de datos originales, y escribe los datos especulares que se generaron en la Etapa S2816 en el área de datos de espejo, respectivamente. Si, por otro lado, se detecta un error de paridad en los datos previamente almacenados del área de datos originales del área de memoria objetivo para la escritura, pero no se detecta ningún error de paridad en los datos previamente almacenados del área de datos especulares del área de memoria objetivo para la escritura, el módulo de control de lectura/escritura M14 escribe los datos previamente almacenados, en lugar de los datos originales recibidos Dn, en el área de datos originales, y escribe los datos especulares que son generados en la Etapa S2816 en el área de datos especulares, respectivamente. Si no se detecta ningún error de paridad en los datos previamente almacenados del área de datos originales del área de memoria objetivo para la escritura, pero se detecta un error de paridad en los datos previamente almacenados del área de datos especulares del área de memoria objetivo para la escritura, el módulo de control de lectura/escritura M14 escribe los datos originales que se recibieron en las Etapas S2802, S2806 en el área de datos originales, y escribe los datos previamente almacenados en el área de datos especulares, respectivamente. Si se detecta un error de paridad tanto en los datos previamente almacenados del área de datos originales como en los datos previamente almacenados del área de datos
especulares del área de memoria objetivo para la escritura, el módulo de control de lectura/escritura M14 reescribe los datos previamente almacenados tanto en el área de datos originales como en el área de datos especulares. Esto es, para un área de memoria en la que se encuentra un error de paridad, el módulo de control de lectura/escritura M14 lleva a cabo una reescritura de los datos previamente almacenados, y para un área de memoria en la que no se encuentra ningún error de paridad, llevará a cabo una actualización de los datos.
Cuando se lleva a cabo la escritura de datos a un área de memoria objetivo para la escritura, el módulo de análisis de comandos M12 del circuito de control de memoria 136 decide si se han recibido todos los datos para la escritura (fig. 15: Etapa S2822). El módulo de análisis de comandos M12 puede decidir que todos los datos para la escritura se han recibido cuando recibe datos EOF. Alternativamente, puede decidir que todos los datos para la escritura se han recibido cuando detecta que la señal de reinicio CRST ha pasado del nivel alto al nivel bajo. Si todos los datos para la escritura se han recibido (fig. 15: Etapa S2822: SÍ), el circuito de control de memoria 136 termina la operación de escritura. Si no se han recibido todos los datos para la escritura el circuito de control de memoria 136 vuelve a la Etapa S2802 y repite el proceso descrito anteriormente para la siguiente unidad de datos de escritura. Por ejemplo, una vez se recibe la primera unidad de datos de escritura D1 y /D1 y se lleva a cabo el proceso anterior, a continuación, se recibe la siguiente unidad de datos de escritura D1 y /D2 y se lleva a cabo el proceso anterior. En la presente realización, como el contador de direcciones M13 especifica direcciones de palabra secuencialmente, después de la Fila A1 las operaciones de escritura tienen lugar en orden de la Fila A1, Fila A3... También, después de la transmisión de una señal de respuesta OK (Etapa S2814), para recibir la siguiente unidad de datos de escritura, el módulo de recepción/envío de datos M15 establece la dirección de envío/recepción para los datos intercambiados a través del terminal de datos en la dirección en la cual el dispositivo de memoria 130 recibe datos del sub-controlador 50. Las etapas del diagrama de flujo mostrado en la fig. 15 pueden ejecutarse en un orden diferente o en paralelo, siempre que ello no cree conflictos. Por ejemplo, el circuito de control de memoria 136 puede generar datos especulares antes de enviar una señal de OK, o puede generar los datos especulares a la vez que lleva a cabo la comprobación de paridad de los datos previamente almacenados en una operación en paralelo.
Como se describió anteriormente, durante una operación de escritura (fig. 14), los datos de identificación ID, los datos de identificación invertidos /ID, los datos de comando de escritura CM, los datos de comando de escritura invertidos /CM, y un conjunto de datos de escritura D1 y de datos de escritura invertidos /D1 de un tamaño prescrito son transmitidos en este orden desde el módulo de proceso de comunicación 55 al dispositivo de memoria 130; después de lo cual el segundo y subsiguientes conjuntos de datos de escritura Dn y datos de escritura invertidos /Dn son transmitidos repetitivamente, un conjunto cada vez. En el ejemplo de la fig. 14, el tamaño de datos de un conjunto de datos de escritura Dn y datos de escritura invertidos /Dn es 32 bits; sin embargo, en lugar de ello se pueden establecer algunos otros tamaños de datos. Desde el momento en que comienza la recepción de datos de identificación ID hasta que se termina la recepción del primer conjunto de datos de escritura D1 y datos de escritura invertidos /D1, el circuito de control de memoria 136 del dispositivo de memoria 130 no envía ninguna señal de respuesta OK o NG indicativa de un resultado de determinación de consistencia para los datos recibidos al módulo de proceso de comunicación 55, sino que envía una señal de respuesta OK o NG indicativa del resultado de la determinación de consistencia al módulo de proceso de comunicación 55 sólo después de que se termine la recepción del primer conjunto de datos de escritura D1 y datos de escritura invertidos /D1. Igualmente, con relación al segundo y subsiguientes conjuntos de datos de escritura Dn y datos de escritura invertidos /Dn, una señal de respuesta OK o NG indicativa del resultado de la determinación para cada conjunto es enviada desde el circuito de control de memoria 136 al módulo de proceso de comunicación 55 cada vez que se completa la recepción del conjunto. De este modo, cada vez que se recibe un conjunto de datos de escritura Dn y de datos de escritura invertidos /Dn de un tamaño prescrito, se envía una señal de respuesta OK o NG indicativa del resultado de la determinación de consistencia para el conjunto al módulo de proceso de comunicación 55, de modo que se mejora la fiabilidad de las comunicaciones entre el módulo de proceso de comunicación 55 y el dispositivo de memoria 130.
En la fase inicial de una operación de escritura, desde el momento en que comienza la recepción de datos de identificación ID hasta que se termina la recepción del primer conjunto de datos de escritura D1 y datos de escritura invertidos /D1, no se envía ningún resultado de determinación de consistencia de datos al módulo de proceso de comunicación 55, y por tanto se reduce el número de veces que se envían los resultados de la determinación desde el dispositivo de memoria 130 al módulo de proceso de comunicación 55, y la operación de escritura en conjunto se lleva a cabo de manera eficiente. Además, en operaciones de escritura, la consistencia de los datos de identificación ID y de los datos de identificación invertidos /ID, y la consistencia de los datos de comando de escritura CM y de los datos de comando de escritura invertidos /CM, se determinan como en las operaciones de lectura (véanse las Etapas S220 a S245 de la fig. 10). Si los datos de identificación ID y/o los datos de comando de escritura CM no tienen consistencia, el circuito de control de memoria 136 termina el proceso sin llevar a cabo la escritura de los datos recibidos en la matriz de células de memoria 132. En este caso, durante el período de transmisión de la señal de respuesta inicial (el período que sigue a la transmisión de los datos UD1, /UD1, LD1, /LD1), no se envía ninguna señal de respuesta OK desde el dispositivo de memoria 130 al módulo de proceso de comunicación 55 y se envía una señal de respuesta NG al módulo de proceso de comunicación 55, de modo que el módulo de proceso de comunicación 55 reconoce que se ha producido algún tipo de error. Aunque la dirección de la transmisión de datos no cambia durante el tiempo en que se envía la señal de respuesta (señal de respuesta OK/NG), en la práctica preferente los cambios en la dirección de la transmisión de datos deberían ser tan infrecuentes como sea posible debido a la posibilidad de que se produzca una colisión en el bus. En la presente realización, a través de una
disposición mediante la cual en la fase inicial de una operación de escritura no se envía ningún resultado de determinación de consistencia de datos al módulo de proceso de comunicación 55 desde el momento en que comienza la recepción de los datos de identificación ID hasta que se termina la recepción del primer conjunto de datos de escritura D1 y datos de escritura invertidos /D1, se minimiza la frecuencia de cambio de la dirección de transmisión de datos, y se mejora la velocidad y fiabilidad de la comunicación.
Además, como se representa en la fig. 15, se generan resultados de determinación de consistencia afirmativos sólo cuando los datos de escritura Dn y los datos de escritura invertidos /Dn tienen una relación mutuamente invertida y no se detectan errores de paridad en los respectivos conjuntos de datos. Al llevar a cabo una determinación de consistencia de este modo, es posible mejorar aún más la fiabilidad de las comunicaciones. Es decir, supongamos que un bit de los datos de escritura Dn y un bit de los datos de escritura invertidos /Dn contiene cada uno un error en la misma posición de bit, de modo que el resultado de la determinación indica que los datos de escritura Dn y los datos de escritura invertidos /Dn tienen consistencia. Sin embargo, en tal caso, como los errores se identifican en las respectivas comprobaciones de paridad, es posible evitar que se escriban los datos erróneos.
Como se apreciará de la discusión anterior, en la presente realización, los datos originales Dn corresponden a los primeros datos en la presente invención, y los datos invertidos /Dn corresponden a los segundos datos en la presente invención. La transmisión de señales de respuesta (señales de respuesta OK y señales de respuesta NG) corresponde al elemento de transmitir el resultado de la determinación en la presente invención.
Operación de bloqueo de escritura del dispositivo de memoria
La fig. 16 es un diagrama de temporización que representa esquemáticamente las señales intercambiadas entre el módulo de proceso de comunicación 55 de la impresora 20 y el circuito de control de memoria 136 del dispositivo de memoria 130 durante una operación de bloqueo de escritura del dispositivo de memoria. La operación de bloqueo de escritura es un proceso mediante el cual alguna porción del área de memoria reescribible en el mapa de memoria (fig. 7) de la matriz de memoria ferroeléctrica 132 se cambia a un área de bloqueo de escritura, en unidades de fila. Una fila cambiada a un área de bloqueo de escritura ya no puede ser reescrita a través del acceso desde un dispositivo externo (por ejemplo, el módulo de proceso de comunicación 55 del sub-controlador 50).
Al igual que en la operación de lectura y la operación de escritura analizadas anteriormente, el módulo de proceso de comunicación 55 primero envía datos SOF como una señal de datos CSDA (fig. 16). Al igual que en la operación de lectura y la operación de escritura analizadas anteriormente, después de los datos SOF, el módulo de proceso de comunicación 55 envía los datos de identificación como una señal de datos CSDA (fig. 16). Después de los datos de identificación, el módulo de proceso de comunicación 55 envía los datos de comando como una señal de datos CSDA (fig. 16). Los datos de comando enviados en este proceso constituyen un comando de Bloqueo de Escritura que representa una operación de bloqueo de escritura. En sincronización con la siguiente subida de la señal de reloj CSCK después de la finalización de la transmisión de los datos de comando, el módulo de proceso de comunicación 55 envía datos de dirección de objetivo de bloqueo de escritura AD y datos de dirección de objetivo de bloqueo de escritura invertidos /AD de tal modo que el circuito de control de memoria 136 del dispositivo de memoria 130 recibe los datos un bit cada vez en sincronización con la señal de reloj (fig. 16). Los datos de dirección de objetivo de bloqueo de escritura AD están compuestos por datos de 8 bits, por ejemplo, e identifican una fila que se va a cambiar de un área con escritura permitida a un área con escritura bloqueada. Los datos de dirección de objetivo de bloqueo de escritura invertidos /AD son datos de 8 bits obtenidos invirtiendo el valor de cada bit de los datos de dirección de objetivo de bloqueo de escritura AD.
En sincronización con la siguiente subida de la señal de reloj CSCK después de terminar la transmisión de los datos de dirección de objetivo de bloqueo de escritura AD y los datos de dirección de objetivo de bloqueo de escritura invertidos /AD, el módulo de proceso de comunicación 55 recibe una señal de respuesta de 1 bit (bien un "1" o un "0") desde el dispositivo de memoria 130 (fig. 16). Al igual que en las operaciones de escritura, una señal de respuesta de nivel alto (señal de respuesta OK) es una señal que indica que los datos de dirección de objetivo de bloqueo de escritura AD y los datos de dirección de objetivo de bloqueo de escritura invertidos /AD se reciben correctamente en el dispositivo de memoria 130, mientras que una señal de respuesta de nivel bajo (señal de respuesta NG) es una señal que indica que los datos de dirección de objetivo de bloqueo de escritura AD y los datos de dirección de objetivo de bloqueo de escritura invertidos /AD no se reciben correctamente en el dispositivo de memoria 130.
Si la señal de respuesta recibida es una señal de respuesta NG, el módulo de proceso de comunicación 55 lleva a cabo un proceso de error prescrito y termina la operación de bloqueo de escritura. El proceso de error es un proceso idéntico al proceso de error que tiene lugar cuando se recibe una señal de respuesta NG en la operación de escritura descrita anteriormente, por ejemplo. Por otro lado, si la señal de respuesta recibida es una señal de respuesta OK, el módulo de proceso de comunicación 55 envía datos de EOF (Fin de Trama) al dispositivo de memoria 130 y termina el proceso (fig. 16).
La discusión pasa ahora al procesamiento que tiene lugar en el dispositivo de memoria 130 (procesamiento de dispositivo de memoria) en respuesta a la operación de boqueo de escritura en el dispositivo de memoria 130 en la
impresora 20 analizado anteriormente. El procesamiento del dispositivo de memoria en respuesta a la operación de bloqueo de escritura se describe en la fig. 10. En el caso de la operación de bloqueo de escritura, en la Etapa S240 de la fig. 10 el circuito de control de memoria 136 del dispositivo de memoria 130 recibe un comando de bloqueo de Escritura. Consecuentemente, el circuito de control de memoria 136 que ha recibido el comando de Bloqueo de Escritura ejecuta una operación de bloqueo de escritura de la Etapa S270 (fig. 10).
Cuando la operación de bloqueo de escritura comienza, el módulo M14 de control de lectura/escritura del circuito de control de memoria 136, en sincronización con la subida de la señal de reloj CSCK, recibe secuencialmente señales (1 o 0) que aparecen en la línea de la señal de datos LD1 después de los datos de comando, y las almacena secuencialmente en el registro. Como resultado, el circuito de control de memoria 136 recibe secuencialmente los datos de dirección de objetivo de bloqueo de escritura AD y los datos de dirección de objetivo de bloqueo de escritura invertidos /AD.
El módulo de determinación de datos M19 decide si la salida de una operación OR exclusiva para los datos de dirección de objetivo de bloqueo de escritura recibidos AD y los datos de dirección de objetivo de bloqueo de escritura invertidos /AD recibidos es verdadera o no para los 8 bits de estos datos, es decir, si es 11111111 (FF) o no. Si se descubre que la salida de la operación OR exclusiva no es FF, el módulo de envío/recepción de datos M15 envía una señal de respuesta NG (nivel bajo) al módulo de proceso de comunicación 55 del sub-controlador 50. Una vez se envía la señal de respuesta NG, termina la operación de bloqueo de escritura en el dispositivo de memoria (terminación anómala).
Si, por otro lado, la salida de la operación OR exclusiva es verdadera "1" para los 8 bits, es decir, si es FF, el módulo de control de lectura/escritura M14 cambia la fila del área reescribible identificada por los datos de dirección de objetivo de bloqueo de escritura AD del área de control a un área de bloqueo de escritura. Específicamente, después de recibir el código de operación, si el tipo de acceso es bloqueo de escritura, el módulo de control de contador M16 establece el valor del contador del contador de direcciones M13 para seleccionar la fila delantera del área de control. El recuento avanza entonces para seleccionar una fila que incluye una célula que almacena un indicador para los datos de dirección de objetivo de bloqueo de escritura AD en el área de control. Después de que se selecciona la fila que incluye una célula que almacena un indicador para los datos de dirección de objetivo de bloqueo de escritura por parte del contador de direcciones M13 como la fila objetivo para la operación de escritura, el módulo de control de lectura/escritura M14 actualiza la fila de modo que la información de indicador de la célula correspondiente a los datos de dirección de objetivo de bloqueo de escritura AD cambia de "0" a "1". El módulo de control de lectura/escritura M14 actualiza la célula del área de control que almacena el indicador para la fila del área reescribible identificada por los datos de dirección de objetivo de bloqueo de escritura AD, cambiando así la fila del área reescribible identificada por los datos de dirección de objetivo de bloqueo de escritura AD a un área de bloqueo de escritura, y termina la operación de bloqueo de escritura. Específicamente, el módulo de control de lectura/escritura M14 cambia la información del indicador de bloqueo de escritura correspondiente a la fila identificada por los datos de dirección de objetivo de bloqueo de escritura AD de "0" a "1".
Operación de impresión de la impresora
En vista de los procesos relativos a los dispositivos de memoria 130 analizados anteriormente, la discusión pasa ahora a la operación de impresión de la impresora 20. La fig. 17 es un diagrama de flujo que representa las etapas de proceso en una operación de impresión que es ejecutada principalmente por el controlador principal 40. Por conveniencia de la descripción, la siguiente discusión de la operación de impresión se centra en un único cartucho de tinta 100, aunque en la práctica real se llevan a cabo los mismos procesos para cada cartucho de tinta 100 instalado en la impresora 20.
La operación de impresión es iniciada cuando el controlador principal 40 recibe una solicitud de impresión del usuario a través del ordenador 90 o de la porción de consola 70 (fig. 17: Etapa S502). Cuando se recibe una solicitud de impresión, el controlador principal 40 ejecuta la operación de lectura desde el dispositivo de memoria 130 descrito anteriormente, y lee información sobre tinta del dispositivo de memoria 130 del cartucho de tinta 100 (fig. 17: Etapa S504). La información sobre tinta leída incluye al menos el primer valor de recuento de consumo de tinta X, el segundo valor de recuento de consumo de tinta Y, e información de final de tinta M.
Cuando el controlador principal 40 lee la información sobre tinta, decide si el valor de la información de final de tinta M indica bien el estado lleno, el estado bajo, o el estado final mencionado anteriormente (fig. 17: Etapa S506). Si el controlador principal 40 decide que la información de final de tinta M indica el estado final (fig. 17: Etapa S506: E), lleva a cabo una alerta de final de tinta dirigida al usuario (fig. 17: Etapa S508). La alerta de final de tinta puede implicar, por ejemplo, mostrar sobre el panel de visualización de la porción de consola 70 un mensaje que indica al usuario que sustituya el cartucho de tinta 100.
Si el controlador principal 40 decide que la información de final de tinta M indica el estado bajo (fig. 17: Etapa S506: L), decide si el valor de la diferencia (X-Y) entre el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y es igual o mayor que un segundo valor umbral Vref2 (fig. 17: Etapa S510). Como se analizará más adelante, la fila que almacena el segundo valor de recuento de consumo de tinta Y en el dispositivo
de memoria 130 es bloqueada para escritura en el punto en que se detectó el final de tinta, de modo que el segundo valor de recuento de consumo de tinta Y no se actualizará. Si el valor de (X-Y) es igual o mayor que el segundo valor umbral Vref2 (fig. 17: Etapa S510: SÍ), el controlador principal 40 actualiza el valor de la información de final de tinta M del dispositivo de memoria 130 al estado final (fig. 17: Etapa S512). Específicamente, el controlador principal 40 ejecuta la operación de escritura en el dispositivo de memoria 130 analizada anteriormente, y actualiza el valor de la información de final de tinta M a "11". Después de actualizar el valor de la información de final de tinta M, el controlador principal 40 lleva a cabo la notificación de final de tinta descrita anteriormente (fig. 17: Etapa S508).
Por otro lado, si el controlador principal 40 decide que la información de final de tinta M indica el estado lleno (fig. 17: Etapa S506: F) o que el valor de (X-Y) es menor que el segundo valor umbral Vref2 (fig. 17: Etapa S510: NO), lleva a cabo una cantidad predeterminada de impresión del trabajo de impresión solicitado por la solicitud de impresión (fig. 17: Etapa S514).
Una vez se lleva a cabo la cantidad de impresión predeterminada, el controlador principal 40 calcula un nuevo valor de recuento de consumo de tinta (fig. 17: Etapa S516). Específicamente, basándose en los detalles de ejecución de la cantidad predeterminada de impresión, el controlador principal 40 estima la cantidad de tinta consumida en el transcurso de la cantidad predeterminada de impresión. El controlador principal 40 añade entonces un valor de recuento, equivalente a la cantidad de tinta consumida estimada, al primer valor de recuento de consumo de tinta X que se leyó del dispositivo de memoria 130 en la Etapa S504, para llegar a un nuevo valor de recuento de consumo de tinta.
Una vez se calcula el nuevo valor de recuento de consumo de tinta, el controlador principal 40 acciona el sensor 110 (fig. 17: Etapa S518). Basándose en el resultado de accionar el sensor 110, el controlador principal 40 decide si el nivel de tinta restante en el cartucho de tinta 100 es igual o mayor que el primer valor umbral Vref1 (es decir, lleno) o menor que el primer valor umbral Vref1 (es decir, bajo) (fig. 17: Etapa S520).
Si se determina que el nivel de tinta restante en el cartucho de tinta 100 es igual o mayor que el primer valor umbral Vref1 (fig. 17: Etapa S520: F), el controlador principal 40 actualizará el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y que se guardan en el dispositivo de memoria 130, al nuevo valor de recuento de consumo de tinta que se calculó en la Etapa S516 (fig. 17: Etapa S522). Específicamente, el controlador principal 40 ejecuta la operación de escritura analizada anteriormente, accediendo al dispositivo de memoria 130 y sobreescribiendo el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y con el nuevo valor de recuento de consumo de tinta. Como resultado, el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y serán el mismo.
Por otro lado, si se determina que el nivel de tinta restante en el cartucho de tinta 100 es menor que el primer valor umbral Vref1 (fig. 17: Etapa S520: L), el controlador principal 40 verifica si el área de memoria que almacena el segundo valor de recuento de consumo de tinta Y (fig. 7: Fila A2 del mapa de memoria) es un área de bloqueo de escritura (es decir, con referencia al indicador de bloqueo de escritura almacenado en un área de memoria de la SRAM 551 que corresponde al área de control del dispositivo de memoria 130); y en caso de que se descubra que no es un área bloqueo de escritura, lleva a cabo una operación de bloqueo del segundo valor de recuento de consumo de tinta para colocar un bloqueo de escritura en la fila que almacena el segundo valor de recuento de consumo de tinta Y (fig. 17: Etapa S524). La operación de bloqueo del segundo valor de recuento de consumo de tinta se lleva a cabo utilizando la operación de bloqueo de escritura del dispositivo de memoria 130 descrita anteriormente. Una vez se lleva a cabo la operación de bloqueo del segundo valor de recuento de consumo de tinta, el valor del segundo valor de recuento de consumo de tinta Y en el dispositivo de memoria 130 ya no es modificable. En consecuencia, el valor del segundo valor de recuento de consumo de tinta Y en el dispositivo de memoria 130 se mantendrá en el valor de recuento de consumo de tinta obtenido justo antes del momento en que primero se detectó que el nivel de tinta restante es menor que el primer valor umbral Vref1, a través del accionamiento del sensor 110.
Cuando se completa la operación de bloqueo del segundo valor de recuento de consumo de tinta, el controlador principal 40 ejecuta la operación de escritura analizada anteriormente sobre el primer valor de recuento de consumo de tinta X en el dispositivo de memoria 130, actualizándolo así al nuevo valor de recuento de consumo de tinta que se calculó en la Etapa S516 (fig. 17: Etapa S526). En este momento, debido al bloqueo de escritura, el segundo valor de recuento de consumo de tinta no se actualiza.
Cuando el primer valor de recuento de consumo de tinta X es actualizado, el controlador principal 40 decide si el valor de la diferencia (X-Y) entre el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y es igual o mayor que un segundo valor umbral Vref2 (fig. 17: Etapa S528). Aquí, el primer valor de recuento de consumo de tinta X es el valor que se actualizó en la Etapa S526. Mientras tanto, el segundo valor de recuento de consumo de tinta Y es el más nuevo del valor que se leyó en la Etapa S504 o los valores que se actualizaron en la Etapa S522. Si la diferencia (X-Y) es igual o mayor que el segundo valor umbral Vref2 (fig. 17: Etapa S528: SÍ), el controlador principal 40 actualiza el valor de la información de final de tinta M del dispositivo de memoria 130 al estado final (Etapa S512), y lleva a cabo la alerta de final de tinta analizada anteriormente (fig. 17: Etapa S508).
Después de que el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y se actualizan en la Etapa S522, o si en la Etapa S528 se descubre que el valor de (X-Y) es menor que el segundo valor umbral Vref2 (fig. 17: Etapa S528: NO), el controlador principal 40 decide si el trabajo de impresión basado en la solicitud de impresión está completado (fig. 17: Etapa S530). Si el trabajo de impresión está completado (fig. 17: Etapa S530: SÍ), la operación de impresión termina. Si el trabajo de impresión no está completado, el sistema vuelve a la Etapa S514, y se lleva de nuevo a cabo una cantidad de impresión predeterminada.
De acuerdo con la presente realización analizada anteriormente, durante una operación de escritura en el dispositivo de memoria 130, el dispositivo de memoria 130 verifica la consistencia de los datos originales Dn que se van a escribir en la matriz de células de memoria 132 y los datos invertidos /Dn, y para cada 16 bits de datos originales Dn transmite una señal de respuesta indicando si hay consistencia. Como resultado, se mejora la fiabilidad de la comunicación entre el sub-controlador 50 y el dispositivo 130 de memoria 130. Si los datos originales Dn y los datos invertidos /Dn no tienen consistencia, el dispositivo de memoria 130 no escribe los datos originales Dn en la matriz de memoria ferroeléctrica 132, de modo que se evita la actualización errónea de la matriz de memoria ferroeléctrica
132. Además, durante las operación de escritura en el dispositivo de memoria 130, como los datos originales Dn y los datos invertidos /Dn tienen una relación de bits invertidos unos con respecto a otros, si por ejemplo se encuentra un error de comunicación de modo que sólo aparece un nivel bajo o un nivel alto en la línea de señal de datos LD1 debido a una falta de contacto entre el terminal de datos 260 del cartucho de tinta 100 y el terminal correspondiente en la impresora 20, se detecta el error de comunicación de un modo fiable. Además, debido a que la consistencia (presencia o ausencia de errores de comunicación) de los datos originales Dn y los datos invertidos /Dn es determinada a través de una operación OR exclusiva llevada a cabo sobre cada bit de los datos originales Dn y los datos invertidos /Dn, se consigue fácilmente una detección de errores de comunicación altamente fiable.
Además, de acuerdo con la presente realización, durante una operación de lectura del dispositivo de memoria 130 los datos originales Dn, junto con los datos invertidos /Dn que son de igual tamaño que los datos originales Dn pero con cada bit invertido, son enviados desde el dispositivo de memoria 130 al sub-controlador 50. En el subcontrolador 50, la presencia o ausencia de errores de comunicación se determina entonces comprobando la consistencia de los datos originales Dn y los datos invertidos /Dn. Como resultado, se mejora la fiabilidad de la comunicación entre el sub-controlador 50 y el dispositivo de memoria 130. En consecuencia, problemas como el funcionamiento erróneo de la impresora 20 se mantienen en el mínimo. Además, durante las operaciones de lectura del dispositivo de memoria 130, debido a que los datos originales Dn y los datos invertidos /Dn tienen una relación de bits invertidos unos con relación a otros, si por ejemplo se encuentra un error de comunicación de modo que sólo aparece un nivel bajo o un nivel alto en la línea de señal de datos LD1 debido a un defecto de contacto entre el terminal de datos 260 del cartucho de tinta 100 y el correspondiente terminal de la impresora 20, el error de comunicación es detectado de un modo fiable. Además, durante las operaciones de lectura del dispositivo de memoria 130, como el dispositivo de memoria 130 envía al sub-controlador 50 datos especulares dn que son sustancialmente idénticos a los datos originales Dn, y datos especulares invertidos /dn que son sustancialmente idénticos a los datos invertidos /Dn, incluso si los datos originales Dn y los datos invertidos /Dn no tienen consistencia debido a un error de comunicación, por ejemplo, siempre que los datos especulares dn y los datos especulares invertidos /dn tengan consistencia, el procesamiento puede continuar en la impresora 20 utilizando bien los datos especulares dn o los datos especulares invertidos /dn, mejorando así la robustez del sistema con relación a errores de comunicación. Además, en el dispositivo de memoria 130, se almacenan los datos de espejo dn junto con los datos originales Dn en la matriz de memoria ferroeléctrica 132, y ambos son enviados a la impresora 20. Como resultado, incluso si se produce un error de célula bien en el área de datos originales o en el área de datos especulares de la matriz de memoria ferroeléctrica 132, el funcionamiento normal puede continuar en la impresora 20, utilizando los datos almacenados en el área en la que no se produjo el error de célula. Así se mejora la robustez del sistema con relación a errores de célula, reduciendo drásticamente la tasa de fallos del dispositivo de memoria
130.
Además, cuando la impresora 20 de la presente realización recibe los datos originales Dn, los datos invertidos /Dn, los datos especulares dn, y los datos especulares invertidos /dn, en primer lugar lleva a cabo una comprobación de consistencia de los datos originales Dn y de los datos especulares invertidos /dn; y si no tienen consistencia, comprueba la consistencia de los datos originales Dn y los datos invertidos /Dn, y la consistencia de los datos especulares dn y los datos especulares invertidos /dn. Entonces, si los datos originales Dn y los datos especulares invertidos /dn no tienen consistencia, pero los datos originales Dn y los datos invertidos /Dn tienen consistencia y los datos especulares dn y los datos especulares invertidos /dn tienen consistencia, determina que se produce un error de célula. Si los datos originales Dn y los datos especulares invertidos /dn no tienen consistencia, y además los datos originales Dn y los datos invertidos /Dn no tienen consistencia o los datos especulares dn y los datos especulares invertidos /dn no tienen consistencia, determina que se produce un error de comunicación. Haciendo eso la impresora 20 puede determinar correctamente el tipo de error, y llevar a cabo el procesamiento adecuado de acuerdo con el tipo de error.
Además, en la presente realización, en el mapa de memoria de la matriz de memoria ferroeléctrica 132 (fig. 7), se almacenan datos reales y datos de paridad en el área de datos originales, y también se almacenan datos reales y datos de paridad en el área de datos especulares. Durante una operación de lectura desde el área reescribible, los
datos reales (15 bits superiores) y los datos de paridad (1 bit inferior) almacenados en el área de datos originales son enviados desde el dispositivo de memoria 130 al sub-controlador 50, y los datos reales (15 bits superiores) y los datos de paridad (1 bit inferior) almacenados en el área de datos especulares son enviados desde el dispositivo de memoria 130 al sub-controlador 50. Consecuentemente, cuando la impresora 20 recibe estos datos lleva a cabo entonces una comprobación de paridad de los datos reales que se almacenaron en el área de datos originales, y lleva a cabo una comprobación de paridad de los datos reales que se almacenaron en el área de datos especulares. Incluso si se produce un error de paridad bien en los datos reales que se almacenaron en el área de datos originales
o en los datos reales que se almacenaron en el área de datos especulares, el controlador principal 40 puede continuar con el funcionamiento normal utilizando el conjunto de datos reales en los que no se produce ningún error de paridad. Como resultado, se puede mejorar la robustez del sistema frente a errores de comunicación y errores de célula.
En las operaciones de escritura de la presente realización, para datos previamente almacenados en un área de objetivo de escritura, el dispositivo de memoria 130 lleva a cabo una comprobación de paridad de los 16 bits almacenados en el área de los datos originales y los 16 bits almacenados en el área de los datos especulares, respectivamente. Como resultado, en un área donde se detecta un error de paridad, se reescriben los datos previamente almacenados; mientras que en un área en la que no se detecta ningún error de paridad, se escriben nuevos datos. Como un área en la que se detecta un error de paridad se puede suponer que tiene un problema con una célula de memoria, la comprobación de paridad también puede interpretarse como un medio para detectar un problema de área de memoria. Como resultado, la actualización de datos no se lleva a cabo en un área en la que se produce un problema, de modo que se pueden evitar las dificultades inesperadas que pueden surgir de actualizar datos en un área que tiene un problema. Además, en una célula que está experimentando un error de célula, reescribiendo los datos previamente almacenados en un área en la que se detecta un error de paridad, se puede evitar el cambio de datos debido a un defecto de retención de los datos. Un defecto de retención de los datos se refiere a un defecto por el que el valor de los datos guardados en una célula de memoria cambia debido a la disipación gradual de la carga. Si debido a un defecto de retención de datos, cambian los datos en un área en la que se supone que se ha producido un error de célula, puede producirse consistencia de la paridad por casualidad, lo que implica un riesgo de que no se detecte correctamente el error de célula.
Además, en la impresora 20 de acuerdo con la presente realización, si a través del accionamiento del sensor 110 se determina que el nivel de tinta restante del cartucho de tinta 100 es menor que el primer valor umbral Vref1, se lleva a cabo una solicitud de prohibición (operación de bloqueo de escritura) para el área de memoria del dispositivo de memoria 130 que almacena el segundo valor de recuento de consumo de tinta Y, de modo que el segundo valor de recuento de consumo de tinta Y no se actualizará. Como resultado, después de emitirse la solicitud de prohibición, el dispositivo de memoria 130 ya no acepta solicitudes para actualizar el segundo valor de recuento de consumo de tinta Y. Como resultado, el segundo valor de recuento de consumo de tinta Y se mantiene en el valor de recuento de consumo de tinta obtenido justo antes del momento en que el sensor detectó que el nivel de tinta restante era más bajo que el primer valor umbral Vref1. Se evita así que el segundo valor de recuento de consumo de tinta Y sea actualizado erróneamente. Además, como el primer valor de recuento de consumo de tinta X continua siendo actualizado incluso después de que se suspenda la actualización del segundo valor de recuento de consumo de tinta Y, el nivel de consumo de tinta se reconoce de manera precisa a partir del valor (X-Y) incluso después de que el sensor 110 detecte que el nivel de tinta restante es más bajo que el primer valor umbral Vref1. Como resultado, se determina un punto de final de tinta con una buena precisión, haciendo posible que la tinta contenida en el cartucho de tinta 100 se utilice hasta el final sin ningún desperdicio.
B. Realizaciones modificadas
Realización modificada 1
En la realización anterior, se utilizan los datos invertidos /Dn como un ejemplo de "los datos generados basándose en los datos originales Dn", pero ello no implica ninguna limitación. Por ejemplo, un valor obtenido a través de la adición de un valor determinado a los datos originales Dn, un valor obtenido a través de la resta de un valor determinado, un valor obtenido a través de la multiplicación por un valor determinado, o similares, también se podrían utilizar como datos para comprobar la consistencia con los datos originales Dn. En general, es suficiente que los datos originales Dn y los datos generados a partir de los datos originales Dn tengan una correlación prescrita de manera que se pueda determinar la presencia o ausencia de esta correlación prescrita entre los datos originales Dn y los datos generados a partir de los datos originales Dn. En una realización práctica preferida, los datos originales Dn y los datos generados a partir de los datos originales Dn tienen un tamaño de datos idéntico.
Realización modificada 2
En la operación de escritura de la realización precedente, datos de 32 bits compuestos por los 8 bits superiores de los datos originales UDn, los 8 bits superiores de los datos especulares invertidos /Udn, los 8 bits inferiores de los datos originales LDn, y los 8 bits inferiores de los datos especulares invertidos /Ldn son transmitidos en ese orden desde el sub-controlador 50 al dispositivo de memoria 130; sin embargo, el orden de transmisión puede modificarse según se desee, y es aceptable transmitir primero 16 bits de los datos originales Dn1, seguido de la transmisión de
16 bits datos invertidos /Dn. Además, los datos invertidos pueden ser enviados primero, y los datos originales ser enviados después.
Realización modificada 3
En la operación de escritura de la realización precedente, 32 bits de datos originales y datos invertidos se emplean como una única unidad de datos, y cada vez que se finaliza la transmisión de una unidad de datos desde el subcontrolador 50 al dispositivo de memoria, se devuelve una señal de respuesta desde el dispositivo de memoria al sub-controlador 50; sin embargo, la longitud de datos de la unidad de datos puede ser modificada según se desee, y una única unidad de datos puede incluir 64 bits de datos originales y datos invertidos, o una única unidad de datos puede incluir 16 bits de datos originales y datos invertidos.
Realización modificada 4
En la realización precedente, el sub-controlador 50 de la impresora 20 es utilizado como circuito anfitrión; sin embargo, cualquier circuito, como un ordenador, puede utilizarse como circuito anfitrión. En la realización precedente, el dispositivo de memoria 130 de un cartucho de tinta 100 se utiliza como el dispositivo de memoria, pero puede utilizarse cualquier dispositivo de memoria no volátil. En este caso, la invención puede ser implementada de manera eficiente en una disposición mediante la cual el circuito anfitrión y el dispositivo de memoria estén eléctricamente conectados a través de terminales del circuito que están eléctricamente conectados al circuito anfitrión, y terminales del dispositivo de memoria que están eléctricamente conectados al dispositivo de memoria y que son conectables, de manera desconectable, a los terminales del circuito. Al hacer eso, se pueden detectar errores de comunicación que surjan de un contacto defectuoso entre los terminales del dispositivo de memoria y los terminales del circuito, y se mejora la fiabilidad de la comunicación entre el circuito anfitrión y el dispositivo de memoria.
Realización modificada 5
En la realización precedente, la matriz de memoria ferroeléctrica 132 está provista tanto de un área de datos originales como de un área de datos especulares; sin embargo, sólo unos datos originales serían suficientes. En este caso, el circuito de control de memoria 136 puede estar provisto de una sección de generación de datos de copia de lectura adaptada para copiar datos almacenados en el área de datos originales para generar los datos especulares dn (datos de copia), y de una sección de generación de datos invertidos adaptada para invertir cada bit de los datos almacenados en el área de datos originales para generar datos invertidos /Dn y datos especulares invertidos /dn. Entonces, durante la operación de lectura en el dispositivo de memoria 130, el módulo de envío/recepción de datos M15 del circuito de control de memoria 136 envía los datos que se almacenan en el área de datos originales como datos originales Dn al sub-controlador 50; y envía al sub-controlador 50 los datos especulares dn, los datos invertidos /Dn, y los datos especulares invertidos /dn que son generados a partir de los datos originales Dn. El módulo de envío/recepción de datos M15, después de almacenar los datos leídos del área de datos originales en un registro, puede enviarlos como datos originales, y luego enviar otros datos almacenados en el registro como datos especulares.
Realización modificada 6
En la realización precedente, la matriz de memoria ferroeléctrica 132 tiene un área de datos originales y un área de datos especulares; sin embargo, la matriz de memoria ferroeléctrica 132 puede en lugar de ello tener un área de datos originales y un área de datos invertidos. En este caso, el módulo de control de lectura/escritura M14 escribe los datos originales Dn en el área de datos originales, y escribe los datos invertidos /Dn en el área de datos invertidos. Durante las operaciones de lectura, el módulo de envío/recepción de datos M15 del circuito de control de memoria 136 envía al sub-controlador 50 como datos originales Dn los datos almacenados en el área de datos originales, y como datos invertidos /Dn los datos almacenados en el área de datos invertidos; y envía al subcontrolador 50 como datos especulares dn los datos que son leídos de esta misma área de datos originales, y como datos especulares invertidos /dn los datos que son leídos de esta misma área de datos invertidos. También en este caso, el circuito anfitrión es capaz de detectar errores de comunicación a través de operaciones OR exclusivas. Es posible detectar la aparición de errores de célula de memoria llevando a cabo una comprobación de paridad.
Realización modificada 7
En la realización precedente, la matriz de memoria ferroeléctrica 132 tiene un área de datos originales y un área de datos especulares; sin embargo, la matriz de memoria ferroeléctrica 132 puede en cambio tener un área de datos originales para almacenar datos originales Dn, y un área de datos invertidos para almacenar datos invertidos /Dn de los datos originales Dn, un área de datos especulares para almacenar datos especulares dn de los datos originales Dn, y un área de datos especulares invertidos para almacenar datos especulres invertidos /dn que son datos invertidos de los datos especulares dn. En este caso, el módulo de control de lectura/escritura M14 y el módulo de envío/recepción de datos M15 del circuito de control de memoria 136 leen los datos almacenados y los transmiten.
Realización modificada 8
En la operación de lectura de la realización precedente, los datos originales Dn, los datos invertidos /Dn, los datos especulares dn, y los datos especulares invertidos /dn son transmitidos desde el dispositivo de memoria 130 al subcontrolador 50; sin embargo, sería suficiente transmitir los datos originales Dn y los datos invertidos /Dn solamente, omitiendo la transmisión de los datos especulres dn y los datos especulres invertidos /dn. Alternativamente, sería suficiente transmitir los datos originales Dn y los datos especulares dn solamente, omitiendo la transmisión de los datos invertidos /Dn y los datos especulares invertidos /dn.
Realización modificada 9
En la operación de escritura de la realización precedente, tanto los datos reales como los datos de paridad para su almacenamiento en el mapa de memoria de la matriz de memoria ferroeléctrica 132 son generados en la impresora 20 y transmitidos al dispositivo de memoria 130. Como alternativa, es permisible que la impresora 20 genere sólo los datos reales y los transmita al dispositivo de memoria 130, mientras que los datos de paridad se generan en el dispositivo de memoria 130. En este caso, el circuito de control de memoria 136 puede estar provisto de un módulo de adquisición de paridad para generar datos de paridad de 1 bit que concuerden con los 15 bits de datos reales enviados desde la impresora 20.
Realización modificada 10
En la operación de escritura de la realización precedente, el dispositivo de memoria 130 lleva a cabo la reescritura de los datos previamente almacenados en áreas en las que se detectan errores de paridad, pero una posible alternativa sería no escribir datos en áreas en las que se detectan errores de paridad.
Realización modificada 11
En la realización precedente, la matriz de memoria ferroeléctrica 132 del dispositivo de memoria 130 almacena un primer valor de recuento de consumo de tinta X y un segundo valor de recuento de consumo de tinta Y que representan la cantidad de consumo de tinta; sin embargo, la información de nivel restante que representa el nivel de tinta restante también puede ser almacenada. En este caso, el valor inicial de la información de nivel restante representa la cantidad de tinta que llena el cartucho de tinta 100. Durante las operaciones de impresión, la impresora 20 sobrescribe la información de nivel restante almacenada en la matriz de memoria ferroeléctrica 132 con información de nivel restante en la dirección de disminución del nivel restante, de acuerdo con la cantidad de tinta consumida en la impresión. En este caso, es preferible que el área de memoria que almacena la información de nivel restante se establezca en un área decremental. Un área decremental hace referencia a un área que sólo permite la sobrescritura de valores numéricos en sentido decreciente, y no permite la sobrescritura de valores numéricos en sentido creciente. Al igual que el área incremental de la realización, tal área decremental preferentemente se establece escribiendo información de indicador de decremento en el área de sólo lectura.
Realización modificada 12
En la realización precedente, el segundo valor de recuento de consumo de tinta Y y el primer valor de recuento de consumo de tinta X se almacenan respectivamente en la matriz de memoria ferroeléctrica 132, y se determina el final de tinta basándose en la diferencia entre el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y. Alternativamente, puede almacenarse solamente el segundo valor de recuento de consumo de tinta Y en la matriz de memoria ferroeléctrica 132. En este caso, los procesos tendrían lugar del mismo modo que en la realización, pero estando el primer valor de recuento de consumo de tinta X almacenado en la memoria no volátil provista en la impresora 20.
Realización modificada 13
Aunque la realización precedente utiliza una impresora y cartuchos de tinta de formato de inyección de tinta, también sería aceptable emplear un aparato de inyección de líquido adaptado para inyectar o expulsar un líquido diferente de tinta, y receptáculos de líquido para suministrar el líquido al aparato de inyección de líquido. En este documento, se utiliza el término líquido para incluir un cuerpo en estado líquido que contiene partículas de un material funcional dispersado en un medio; o un cuerpo en estado gel o un estado fluido similar. Por ejemplo, se puede emplear un aparato de inyección de líquido adaptado para inyectar un líquido que contiene un material de electrodo, una materia colorante, u otra materia en forma dispersada o disuelta, que se utilice en la fabricación de pantallas de cristal líquido, pantallas EL (electroluminiscencia), pantallas de emisión de campo, o filtros de color; un aparato de inyección de líquido adaptado para inyectar sustancias bio-orgánicas utilizadas en la fabricación de biochips; o un aparato de inyección de líquido adaptado para inyectar un líquido como un espécimen utilizado como una pipeta de precisión. Ejemplos adicionales son un aparato de inyección de líquido para la inyección de precisión en un instrumento de precisión como un reloj o una cámara; un aparato de inyección de líquido adaptado para inyectar una solución de una resina de curado con radiación ultravioleta u otra resina transparente sobre un sustrato para la formación de una microlente semi-esférica (lente óptica) para su uso en un componente de comunicación óptica etc.;
o un aparato de inyección de líquido adaptado para inyectar una solución de ataque ácido o alcalino para llevar a cabo el grabado de una placa de circuito, etc.; así como receptáculos de líquido adaptados para suministrar líquido a estos tipos de aparatos de inyección de líquido. La presente invención puede ser implementada en uno cualquiera de los tipos de dispositivos de inyección y receptáculos de líquido anteriores. No se impone ninguna limitación al formato de impresoras de inyección de tinta, y también se podrían emplear una impresora láser y un cartucho de tóner para la impresión con material de impresión tal como tóner.
Realización modificada 14
Algunas de las disposiciones que se implementan a través de hardware en la realización precedente pueden implementarse en cambio a través de software, e inversamente algunas de las disposiciones que se implementan a través de software pueden en su lugar implementarse en cambio a través de hardware.
Realización modificada 15
En la realización precedente, se emplea un sensor 110 que utiliza un elemento piezoeléctrico, pero sería posible por ejemplo utilizar en cambio un dispositivo oscilador tal como un circuito oscilador diseñado para devolver constantemente una señal de respuesta cuya frecuencia indique que hay tinta presente; o emplear un procesador tal como una CPU o un ASIC, o un CI más simple, para llevar a cabo intercambios con el sub-controlador 50. La presente invención también se puede implementar en un cartucho de tinta 100 de un tipo que no tenga sensor, y que sólo tenga un dispositivo de memoria.
Realización modificada 16
En la realización precedente, un único depósito constituye un único cartucho de tinta, pero en lugar de ello una pluralidad de depósitos de tinta puede constituir un único cartucho de tinta.
Realización modificada 17
En la realización precedente, la unidad de suministro de líquido es un cartucho de tinta a cuyo cuerpo de receptáculo está fijada la placa, y la placa así unida al cuerpo de receptáculo está instalada en el soporte provisto en la unidad de cabezal de impresión; sin embargo, la unidad de suministro de líquido que implementa la presente invención puede en cambio ser un cartucho de tinta de un diseño en el que una cubierta a la que está fijada la placa, y un cuerpo de receptáculo que contiene el líquido, están instalados por separado en el soporte. En una realización ejemplar, después de que la cubierta que tiene la placa fijada a la misma se inserta e instala en el soporte en una dirección de inserción prescrita, el cuerpo de receptáculo es entonces instalado en el soporte. En este caso, puede utilizarse una disposición por medio de la cual sólo el cuerpo de receptáculo de tinta es sustituido cuando se agota la tinta del interior del cuerpo de receptáculo, y la información de consumo de tinta (el primer valor de recuento de consumo de tinta X y el segundo valor de recuento de consumo de tinta Y) guardada en el dispositivo de memoria 130 es reiniciada conjuntamente con la sustitución.
Realización modificada 18
En la realización precedente, la unidad de suministro de líquido está instalada en el soporte de la unidad de cabezal de impresión y suministra tinta directamente al cabezal de impresión desde la porción de suministro de tinta; sin embargo, en otra posible disposición, la unidad de suministro de líquido puede estar instalada en una ubicación dentro del aparato de inyección de tinta situada lejos del cabezal, y la tinta puede ser suministrada al cabezal a través de un tubo que conecta la unidad de suministro de líquido con la porción de suministro de tinta.
Realización modificada 19
En la realización precedente, el dispositivo de memoria 130 se describe como un dispositivo de memoria de semiconductor dotado de una matriz de células de memoria ferroeléctrica 132, pero no se limita al mismo y puede en su lugar ser un dispositivo de memoria de semiconductor que no utiliza células de memoria ferroeléctrica (por ejemplo, EEPROM o memoria flash). También se pueden utilizar otros dispositivos de memoria diferentes de dispositivos de memoria de semiconductor.
Realización modificada 20
En la realización precedente, el controlador principal 40 y el módulo de proceso de comunicación 55 son disposiciones separadas, pero en su lugar pueden implementarse como un controlador integrado.
Realización modificada 21
En la realización precedente, en el transcurso de las comunicaciones entre el dispositivo de memoria 130 y el subcontrolador 50, el dispositivo de memoria 130 recibe una señal de reinicio CRST desde el sub-controlador 50; sin embargo, se puede omitir el elemento de suministrar una señal de reinicio CRST. En este caso, el terminal de reinicio 240 del dispositivo de memoria 130, el terminal 440 de la impresora 20 correspondiente al terminal de reinicio 240, y la línea de señal de reinicio LR1 se podrían eliminar. En este caso, la inicialización del dispositivo de memoria 130 puede tener lugar de manera autónoma cuando al dispositivo de memoria 130 se le suministre la
5 tensión de alimentación de energía CVDD y arranque, por ejemplo. Al inicializarse en el arranque, el dispositivo de memoria 130 puede luego operar en respuesta a la señal de reloj CSCK y a las señales de datos CSDA recibidas del sub-controlador 50, del mismo modo que en la realización.
Realización modificada 22
10 En la realización precedente, el circuito de control de memoria 136 del dispositivo de memoria 130 incluye el módulo M11 comparador de ID, el módulo de análisis de comandos M12, y el módulo de determinación de datos M19. Sin embargo, el módulo comparador de ID M11, el módulo de análisis de comandos M12, y el módulo de determinación de datos M19 pueden implementarse como respectivos circuitos de hardware separados. Alternativamente, una
15 parte o la totalidad de estos módulos pueden implementarse como circuitería de hardware común.
Aunque la presente invención se muestra en este documento en cuanto a una realización preferida y realizaciones modificadas de la misma, la presente invención no se limita a la realización y las realizaciones modificadas de este documento, y puede implementarse de varias otras formas sin apartarse del ámbito de las siguientes
20 reivindicaciones.

Claims (13)

  1. REIVINDICACIONES
    1. Un dispositivo de memoria (130) eléctricamente conectable a un circuito anfitrión (40, 50), que comprende:
    una sección de memoria de datos no volátil (132);
    una sección de recepción de datos (M15) dispuesta para recibir, desde el circuito anfitrión, datos que incluyen primeros datos para ser escritos en la sección de memoria de datos (132) y segundos datos generados a partir de los primeros datos;
    una sección de determinación (M19) dispuesta para determinar la consistencia de los datos recibidos por la sección de recepción de datos; y
    una sección de transmisión de datos (M15) dispuesta para transmitir un resultado de la determinación al circuito anfitrión;
    en el que la sección de determinación (M19) está dispuesta para determinar si los primeros datos y los segundos datos son consistentes unos con otros,
    caracterizado porque
    los segundos datos son datos invertidos de los primeros datos, y durante una operación de escritura desde el circuito anfitrión al dispositivo de memoria (130), la sección de recepción de datos (M15) está dispuesta para recibir en serie desde el circuito anfitrión: datos de identificación que especifican un único dispositivo de memoria de entre una pluralidad de dispositivos de memoria; datos de identificación invertidos; datos de comando de escritura; datos de comando de escritura invertidos; y un primer conjunto de primeros datos y segundos datos de un tamaño prescrito; y a continuación para recibir en incrementos de un único conjunto un segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito,
    y en el que
    (i)
    desde el momento en que comienza la recepción de los datos de identificación hasta el momento en que se completa la recepción del primer conjunto de primeros datos y segundos datos, el circuito de transmisión de datos (M15) está dispuesto para no transmitir el resultado de la determinación mediante la sección de determinación al circuito anfitrión; y el circuito de transmisión de datos (M15) está dispuesto para transmitir el resultado de la determinación mediante la sección de determinación (M19) al circuito anfitrión después de que se completa la recepción del primer conjunto de primeros datos y segundos datos; y
    (ii)
    para el segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito, el circuito de transmisión de datos (M15) está dispuesto para transmitir el resultado de la determinación mediante la sección de determinación (M19) al circuito anfitrión cada vez que se completa la recepción de un conjunto de primeros datos y segundos datos.
  2. 2. El dispositivo de memoria según la reivindicación 1, en el que
    los primeros datos y los segundos datos incluyen cada uno un bit de paridad, y
    la sección de determinación (M19) está dispuesta para generar un resultado de determinación afirmativo si los primeros y segundos datos tienen una relación mutuamente invertida, y también los primeros y segundos datos carecen de errores de paridad.
  3. 3.
    El dispositivo de memoria según la reivindicación 1, en el que los primeros y segundos datos tienen un tamaño de datos idéntico.
  4. 4.
    El dispositivo de memoria según la reivindicación 3, que además comprende
    una sección de control de lectura/escritura (M14) dispuesta para escribir los primeros datos en la sección de memoria de datos (132) si el resultado de la determinación es afirmativo, y dispuesta para no escribir los primeros datos en la sección de memoria de datos si el resultado de la determinación es negativo.
  5. 5.
    El dispositivo de memoria según la reivindicación 3 o la reivindicación 4, en el que
    los primeros datos y los segundos datos son cada uno señales de n bits donde n es un entero igual o mayor que 1, y
    los segundos datos son datos invertidos correspondientes a una inversión de cada bit de los primeros datos.
  6. 6. El dispositivo de memoria según la reivindicación 5, en el que
    la sección de recepción de datos (M15) está dispuesta para recibir en serie los primeros datos y los segundos datos en sincronismo con una señal de reloj suministrada desde el circuito anfitrión, y
    la sección de transmisión de datos está dispuesta para trasmitir el resultado de la determinación al circuito anfitrión en sincronismo con la señal de reloj en un ciclo de la señal de reloj inmediatamente después de un ciclo previo de la señal de reloj utilizado para recibir un bit de datos final de los primeros datos y los segundos datos.
  7. 7. El dispositivo de memoria según la reivindicación 5, en el que
    la sección de determinación (M19) está dispuesta para hacer que el resultado de la determinación sea afirmativo si una salida de un OR exclusivo de un valor m-ésimo de los primeros datos y un valor m-ésimo de los segundos datos es verdadero para todos los n bits donde m es un entero tal que 1≤m≤n, y
    la sección de determinación (M19) está dispuesta para hacer que el resultado de la determinación sea negativo si la salida del OR exclusivo es falso para uno cualquiera de los n bits.
  8. 8. El dispositivo de memoria según la reivindicación 5, en el que
    el entero n es un número par
    la sección de recepción de datos (M15) está dispuesta para recibir, en sincronismo con una señal de reloj, unos n/2 bits superiores de los primeros datos, unos n/2 bits superiores de los segundos datos, unos n/2 bits inferiores de los primeros datos, y unos n/2 bits inferiores de los segundos datos, en ese orden, y
    la sección de transmisión de datos (M15) está dispuesta para transmitir el resultado de la determinación en un ciclo de la señal de reloj inmediatamente después de un ciclo previo de la señal de reloj utilizado para recibir el bit más bajo de los n/2 bits inferiores de los segundos datos.
  9. 9.
    El dispositivo de memoria según una cualquiera de las reivindicaciones 3 a 8, donde
    el circuito anfitrión y el dispositivo de memoria (130) deben ser eléctricamente conectados mediante terminales del lado del circuito que están eléctricamente conectados al circuito anfitrión, y terminales del lado del dispositivo de memoria que están eléctricamente conectados al dispositivo de memoria.
  10. 10.
    Una placa de circuito conectable a un aparato de inyección de líquido, en la que la placa de circuito comprende un dispositivo según cualquiera de las reivindicaciones anteriores.
  11. 11.
    Un receptáculo de líquido instalable en un aparato de inyección de líquido, en el que el receptáculo de líquido comprende un dispositivo de memoria según una cualquiera de las reivindicaciones 1 a 9.
  12. 12.
    Un procedimiento para recibir datos para ser escritos en una sección de memoria de datos no volátil desde un circuito anfitrión, que comprende las etapas de:
    recibir datos que incluyen primeros datos para ser escritos en la sección de memoria de datos desde el circuito anfitrión;
    recibir segundos datos generados a partir de los primeros datos;
    determinar la consistencia de los primeros datos y los segundos datos; y
    transmitir un resultado de la determinación al circuito anfitrión,
    caracterizado porque
    los segundos datos son datos invertidos de los primeros datos, y durante una operación de escritura desde el circuito anfitrión al dispositivo de memoria (130), la sección de recepción de datos (M15) recibe en serie desde el circuito anfitrión: datos de identificación que especifican un único dispositivo de memoria de entre una pluralidad de dispositivos de memoria; datos de identificación invertidos; datos de comando de escritura; datos de comando de escritura invertidos; y un primer conjunto de primeros datos y segundos datos de un tamaño prescrito; y a continuación recibe en incrementos de un único conjunto un segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito,
    y en el que (i) desde el momento en que comienza la recepción de los datos de identificación hasta el momento en que se completa la recepción del primer conjunto de primeros datos y segundos datos, el circuito de transmisión de datos (M15) no transmite el resultado de la determinación mediante la sección de determinación al circuito anfitrión; y el circuito de transmisión de datos (M15) transmite el resultado de la determinación mediante la sección de
    5 determinación (M19) al circuito anfitrión después de que haya terminado la recepción del primer conjunto de primeros datos y segundos datos; y
    (ii) para el segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito, el circuito de transmisión de datos (M15) transmite el resultado de la determinación mediante la sección de determinación
    10 (M19) al circuito anfitrión cada vez que se completa la recepción de un conjunto de primeros datos y segundos datos.
  13. 13. Un sistema que comprende un circuito anfitrión (40, 50), y un dispositivo de memoria (130) instalable de manera desmontable en el circuito anfitrión, en el que
    15 el dispositivo de memoria incluye una sección de memoria de datos no volátil (132),
    el circuito anfitrión incluye:
    20 una primera sección de generación de datos dispuesta para generar primeros datos para ser escritos en la sección de memoria de datos; y
    una segunda sección de generación de datos dispuesta para generar segundos datos a partir de los primeros datos;
    25 el dispositivo de memoria (130) además incluye:
    una sección de recepción de datos (M15) dispuesta para recibir datos que incluyen los primeros datos y los segundos datos desde el circuito anfitrión;
    30 una sección de determinación (M19) dispuesta para determinar la consistencia de los datos recibidos por la sección de determinación de datos; y
    una sección de transmisión de datos (M15) dispuesta para transmitir un resultado de la determinación al circuito anfitrión,
    35 en el que la sección de determinación (M10) está dispuesta para determinar si los primeros datos y los segundos datos son consistentes unos con otros,
    caracterizado porque
    40 los segundos datos son datos invertidos de los primeros datos, y durante una operación de escritura desde el circuito anfitrión al dispositivo de memoria (130), la sección de recepción de datos (M15) está dispuesta para recibir en serie desde el circuito anfitrión: datos de identificación que especifican un único dispositivo de memoria de entre una pluralidad de dispositivos de memoria; datos de identificación invertidos; datos de comando de escritura; datos
    45 de comando de escritura invertidos; y un primer conjunto de primeros datos y segundos datos de un tamaño prescrito; y a continuación para recibir en incrementos de un único conjunto un segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito,
    y en el que 50
    (i) desde el momento en que comienza la recepción de los datos de identificación hasta el momento en que se completa la recepción del primer conjunto de primeros datos y segundos datos, el circuito de transmisión de datos (M15) está dispuesto para no transmitir el resultado de la determinación mediante la sección de determinación al circuito anfitrión; y el circuito de transmisión de datos (M15) está dispuesto para transmitir el resultado de la
    55 determinación mediante la sección de determinación (M19) al circuito anfitrión después de que se complete la recepción del primer conjunto de primeros datos y segundos datos; y
    (ii) para el segundo y subsiguientes conjuntos de primeros datos y segundos datos del tamaño prescrito, el circuito de transmisión de datos (M15) está dispuesto para transmitir el resultado de la determinación mediante la sección de
    60 determinación (M19) al circuito anfitrión cada vez que se completa la recepción de un conjunto de primeros datos y segundos datos.
ES10158354.0T 2009-04-01 2010-03-30 Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión Active ES2458101T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009088591 2009-04-01
JP2009088591 2009-04-01
JP2010030856A JP5482275B2 (ja) 2009-04-01 2010-02-16 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
JP2010030856 2010-02-16

Publications (1)

Publication Number Publication Date
ES2458101T3 true ES2458101T3 (es) 2014-04-29

Family

ID=42315371

Family Applications (2)

Application Number Title Priority Date Filing Date
ES13170430.6T Active ES2562927T3 (es) 2009-04-01 2010-03-30 Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión
ES10158354.0T Active ES2458101T3 (es) 2009-04-01 2010-03-30 Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES13170430.6T Active ES2562927T3 (es) 2009-04-01 2010-03-30 Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión

Country Status (7)

Country Link
US (1) US8291154B2 (es)
EP (2) EP2237161B1 (es)
JP (1) JP5482275B2 (es)
CN (2) CN101898455B (es)
ES (2) ES2562927T3 (es)
PL (2) PL2237161T3 (es)
PT (2) PT2237161E (es)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5482275B2 (ja) 2009-04-01 2014-05-07 セイコーエプソン株式会社 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
EP2237163B1 (en) * 2009-04-01 2013-05-01 Seiko Epson Corporation System having a plurality of memory devices and data transfer method for the same
JP5556371B2 (ja) 2010-05-25 2014-07-23 セイコーエプソン株式会社 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
TWI446351B (zh) * 2010-05-27 2014-07-21 Wistron Corp 資料寫入方法與電腦系統
JP5609490B2 (ja) 2010-09-27 2014-10-22 セイコーエプソン株式会社 記憶装置、ホスト装置、回路基板、液体容器及びシステム
JP5672927B2 (ja) 2010-10-08 2015-02-18 セイコーエプソン株式会社 記憶装置、ホスト装置、回路基板、液体容器及びシステム
JP5621496B2 (ja) 2010-10-15 2014-11-12 セイコーエプソン株式会社 記憶装置、回路基板、液体容器及びシステム
US20120117136A1 (en) * 2010-11-04 2012-05-10 Toshio Hayakawa Data verification algorithm for RF receivers
JP5790119B2 (ja) * 2011-04-22 2015-10-07 セイコーエプソン株式会社 記憶装置、ホスト装置、回路基板、液体容器及びシステム
US8801161B2 (en) 2011-07-27 2014-08-12 Brother Kogyo Kabushiki Kaisha Liquid cartridge, image recording device, and substrate
JP5804182B2 (ja) * 2011-07-28 2015-11-04 ブラザー工業株式会社 液体カートリッジ及び画像記録装置
US8924611B2 (en) 2012-06-26 2014-12-30 Intel Corporation Providing a serial protocol for a bidirectional serial interconnect
JP6455168B2 (ja) * 2015-01-16 2019-01-23 株式会社デンソー メモリ装置システム
JP6543994B2 (ja) 2015-03-27 2019-07-17 セイコーエプソン株式会社 印刷装置
WO2017095739A1 (en) * 2015-11-30 2017-06-08 Hubbell Incorporated Interrupt exception window protocol on a data communication bus and methods and apparatuses for using same
CA3126606C (en) 2019-02-06 2023-08-29 Hewlett-Packard Development Company, L.P. Integrated circuits including customization bits
TWI688955B (zh) * 2019-03-20 2020-03-21 點序科技股份有限公司 記憶體裝置以及記憶體的存取方法
US11535038B1 (en) 2021-12-28 2022-12-27 Seiko Epson Corporation Board, liquid accommodation container, and printing system

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0268642A (ja) 1988-09-05 1990-03-08 Fujitsu Ltd メモリ誤り検出方式
JPH036141A (ja) * 1989-06-01 1991-01-11 Nec Corp フェイルセーフ遠方制御方式
JPH06204989A (ja) * 1992-12-28 1994-07-22 Mitsubishi Electric Corp データ通信装置
JP3143539B2 (ja) 1993-02-03 2001-03-07 キヤノン株式会社 インク残量検知方法およびその装置ならびにインクジェット記録装置
JP3318789B2 (ja) 1993-04-13 2002-08-26 ソニー株式会社 デジタルデータ伝送方法
JP2891090B2 (ja) * 1994-02-18 1999-05-17 ブラザー工業株式会社 印字装置
WO1996005061A1 (en) * 1994-08-09 1996-02-22 Encad, Inc. Printer ink cartridge
JPH10247899A (ja) 1997-03-04 1998-09-14 Hitachi Ltd シリアル伝送方法及びその同期誤り検出方法
US6264301B1 (en) * 1998-05-11 2001-07-24 Hewlett-Packard Company Method and apparatus for identifying parameters in a replaceable printing component
CN101125487B (zh) * 1998-05-25 2011-01-12 精工爱普生株式会社 墨盒再生装置及其操作方法
US6496729B2 (en) * 1998-10-28 2002-12-17 Medtronic, Inc. Power consumption reduction in medical devices employing multiple supply voltages and clock frequency control
MY138350A (en) * 1998-11-02 2009-05-29 Seiko Epson Corp Ink cartridge and printer using the same
US6148354A (en) * 1999-04-05 2000-11-14 M-Systems Flash Disk Pioneers Ltd. Architecture for a universal serial bus-based PC flash disk
JP2001146031A (ja) 1999-05-20 2001-05-29 Seiko Epson Corp 液体容器
US6760119B1 (en) * 1999-05-25 2004-07-06 Silverbrook Research Pty Ltd Relay device
JP2001096869A (ja) * 1999-10-04 2001-04-10 Seiko Epson Corp 記録装置、半導体装置および記録ヘッド装置
JP4081963B2 (ja) * 2000-06-30 2008-04-30 セイコーエプソン株式会社 記憶装置および記憶装置に対するアクセス方法
JP4123739B2 (ja) * 2001-06-19 2008-07-23 セイコーエプソン株式会社 印刷記録材容器の識別システムおよび識別方法
US6915444B2 (en) * 2001-09-12 2005-07-05 Rockwell Automation Technologies, Inc. Network independent safety protocol for industrial controller using data manipulation techniques
JP4022805B2 (ja) 2001-10-05 2007-12-19 セイコーエプソン株式会社 インクジェット式プリンタのインク残量検出装置及び検出方法
MXPA02011493A (es) 2001-11-28 2005-02-17 Seiko Epson Corp Comunicacion sin contacto entre el dispositivo y el cartucho que contiene componente consumible.
JP4374834B2 (ja) 2002-08-12 2009-12-02 セイコーエプソン株式会社 カートリッジおよび記録装置
TW591393B (en) * 2003-01-22 2004-06-11 Fujitsu Ltd Memory controller
US7203885B2 (en) * 2003-09-30 2007-04-10 Rockwell Automation Technologies, Inc. Safety protocol for industrial controller
JP2005212381A (ja) * 2004-01-30 2005-08-11 Seiko Epson Corp 印刷装置および印刷装置の制御方法
US7738137B2 (en) 2004-03-23 2010-06-15 Lexmark International, Inc. Inkjet print head synchronous serial output for data integrity
JP4066980B2 (ja) 2004-06-22 2008-03-26 セイコーエプソン株式会社 印刷記録材容器
KR100632952B1 (ko) * 2004-09-30 2006-10-11 삼성전자주식회사 정전으로 인한 프로그램 페일의 유무를 판별할 수 있는방법 및 장치
US8521970B2 (en) * 2006-04-19 2013-08-27 Lexmark International, Inc. Addressing, command protocol, and electrical interface for non-volatile memories utilized in recording usage counts
JP2007052714A (ja) * 2005-08-19 2007-03-01 Fuji Xerox Co Ltd 情報処理システム
JP2007122011A (ja) 2005-09-27 2007-05-17 Seiko Epson Corp 品質未確認の消耗品カートリッジを検出する画像形成装置及びその消耗品カートリッジ
US8892963B2 (en) * 2005-11-10 2014-11-18 Advanced Micro Devices, Inc. Error detection in high-speed asymmetric interfaces utilizing dedicated interface lines
JP4602246B2 (ja) * 2005-12-28 2010-12-22 株式会社東芝 半導体集積回路
JP5028577B2 (ja) * 2007-02-19 2012-09-19 株式会社メガチップス メモリ制御方法およびメモリシステム
US7886197B2 (en) * 2007-06-14 2011-02-08 Xerox Corporation Systems and methods for protecting device from change due to quality of replaceable components
US8128186B2 (en) 2007-07-27 2012-03-06 Hewlett-Packard Development Company, L.P. Non-volatile memory data integrity validation
JP2009049642A (ja) * 2007-08-17 2009-03-05 Omron Corp 伝送システム
KR101393622B1 (ko) * 2007-08-30 2014-05-13 삼성전자주식회사 멀티 비트 플래시 메모리 장치를 포함하는 시스템 및그것의 데이터 처리 방법
JP4875580B2 (ja) 2007-09-27 2012-02-15 京セラ株式会社 電子機器及び電子機器のセキュリティロック方法
JP2009259225A (ja) 2008-03-18 2009-11-05 Seiko Epson Corp 液体収容体
JP5141606B2 (ja) * 2008-03-26 2013-02-13 セイコーエプソン株式会社 印刷装置
JP4399015B2 (ja) * 2008-04-30 2010-01-13 株式会社東芝 データ変換装置、情報記録装置、誤り検出装置、データ変換方法および誤り検出方法
JP5151777B2 (ja) 2008-07-30 2013-02-27 株式会社Sumco シリコンエピタキシャルウェーハの製造方法およびシリコンエピタキシャルウェーハ
CN101856912B (zh) * 2009-04-01 2013-05-22 精工爱普生株式会社 存储装置和包括能够与主机电路电连接的存储装置的系统
JP5482275B2 (ja) 2009-04-01 2014-05-07 セイコーエプソン株式会社 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム

Also Published As

Publication number Publication date
CN101898455B (zh) 2014-06-18
US20100257305A1 (en) 2010-10-07
PT2237161E (pt) 2014-03-06
CN104015493A (zh) 2014-09-03
EP2637106B1 (en) 2016-01-06
PT2637106E (pt) 2016-03-18
ES2562927T3 (es) 2016-03-09
PL2237161T3 (pl) 2014-06-30
PL2637106T3 (pl) 2016-06-30
EP2237161A1 (en) 2010-10-06
US8291154B2 (en) 2012-10-16
EP2637106A1 (en) 2013-09-11
CN104015493B (zh) 2016-04-06
CN101898455A (zh) 2010-12-01
JP2010257446A (ja) 2010-11-11
JP5482275B2 (ja) 2014-05-07
EP2237161B1 (en) 2014-01-22

Similar Documents

Publication Publication Date Title
ES2458101T3 (es) Dispositivo de memoria, placa de circuito, receptáculo de líquido, procedimiento para aceptar de un circuito anfitrión datos para escribir en una sección de memoria de datos, y sistema que incluye un dispositivo de memoria eléctricamente conectable a un circuito anfitrión
EP2237163B1 (en) System having a plurality of memory devices and data transfer method for the same
US8782326B2 (en) Memory device and system including a memory device electronically connectable to a host circuit
US8215734B2 (en) Liquid consuming system, liquid consuming apparatus, liquid supply unit, and method of supervising a remaining amount of liquid contained in a liquid supply unit
JP5556371B2 (ja) 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
JP5445072B2 (ja) 複数の記憶装置を備えるシステム及びそのためのデータ転送方法
JP5445073B2 (ja) 複数の記憶装置を備えるシステム及びそのためのデータ転送方法
US8230163B2 (en) Memory device, host circuit, circuit board, liquid receptacle, method of transmitting data stored in a nonvolatile data memory section to a host circuit, and system including a host circuit and a memory device detachably attachable to the host circuit
JPH11314375A (ja) インクカートリッジのインク残量検出装置
US8627190B2 (en) Memory device, circuit board, liquid receptacle, method of controlling a nonvolatile data memory section, and system including a memory device detachably connectable to a host circuit
JP2007193417A (ja) シーケンシャルアクセスメモリ
US20150212957A1 (en) Supply Assembly Of Imaging Device, Chip Thereon, And Method For Updating Slave Address
JP5716798B2 (ja) 記憶装置、液体容器、及び、システム
JP5471167B2 (ja) 記憶装置、及び、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム
JP2006297943A (ja) プリンタ、プリンタシステム及びプリンタにおけるエラー検出方法