IP Library Granted Patent US 8,127,070
Granted Patent B2
US 8,127,070 · App. 13/175,481 · Granted Feb 28, 2012

Programmable I/O interface

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,127,070
App. No.
13/175,481
Granted
Feb 28, 2012
Kind
B2
Abstract

The invention provides an architecture and method for implementing a programmable I/O interface. The primary function provides a generic reconfigurable interface for serial communications between a laser printer controller and the print mechanism. The design also supports vertical page synchronization (top of page detection).

Claims (28)

1. A programmable I/O system configured to implement a communication interface between i) a laser printer controller and ii) a print mechanism, the programmable I/O system comprising:

a memory configured to be loaded, during runtime of the laser printer controller and the print mechanism, with executable code for configuring the programmable I/O system to implement the communication interface;

a microcontroller configured to execute, during the runtime of the laser printer controller and the print mechanism, the executable code loaded into the memory; and

a register file in communication with the microcontroller, wherein the register file comprises a timer register, a shared register, an interrupt register, a first-in first-out (FIFO) register, an external input/output (I/O) interface register and an internal I/O interface register,

wherein upon execution of the executable code, the communication interface implemented by the programmable I/O system between the laser printer controller and the print mechanism comprises one or more of

a serial interface, a parallel interface, a serial peripheral interface (SPI), a Synchronous Serial Interface (SSI), a Micro Wire interface, an Inter Integrated Circuit (I2C) interface, a control area network (CAN) interface, a UART interface, an IEEE1284 interface, an LCD interface, a front panel interface, and a MODEM interface.

2. The programmable I/O system of claim 1 , wherein the memory and the microcontroller are included in a same integrate circuit.

3. The programmable I/O system of claim 1 , wherein the register file comprises a dual-ported register file configured to permit the microcontroller to perform a single-cycle read-modify-write access.

4. The programmable I/O system of claim 1 , wherein:

the register configured to increment independently based on a predetermined timebase; and

the timer register is used to generate timing for the communication interface implemented by the programmable I/O system.

5. The programmable I/O system of claim 4 , wherein the shared register is configured to be shared by i) the microcontroller and ii) a main system processor.

6. The programmable I/O system of claim 5 , wherein the interrupt register is configured to provide interrupt-driven status to the main system processor.

7. The programmable I/O system of claim 6 , wherein the FIFO is configured to perform bulk data transfers between the programmable I/O system and a system memory.

8. The programmable I/O system of claim 7 , wherein:

the external I/O interface register is configured to control first electrical signals that are external to the programmable I/O system; and

the first electrical signals are associated with the communication interface implemented by the programmable I/O system.

9. The programmable I/O system of claim 8 , wherein:

the internal I/O interface register is configured to control second electrical signals that are internal to the programmable I/O system; and the second electrical signals are associated with the communication interface implemented by the programmable I/O system.

10. The programmable I/O system of claim 1 , further comprising a run control register configured to enable each of the memory and the microcontroller, wherein the microcontroller is enabled subsequent to the memory being loaded with the executable code.

11. A method for configuring a programmable I/O system to implement a communication interface between i) a laser printer controller and ii) a print mechanism, the method comprising:

during runtime of the laser printer controller and the print mechanism,

loading executable code into a memory, wherein the executable code is for configuring the programmable I/O system to implement the communication interface, and

executing the executable code loaded into the memory,

wherein upon execution of the executable code, the communication interface implemented by the programmable I/O system between the laser printer controller and the print mechanism comprises one or more of

a serial interface, a parallel interface, a serial peripheral interface (SPI), a Synchronous Serial Interface (SSI), a Micro Wire interface, an Inter Integrated Circuit (I2C) interface, a control area network (CAN) interface, a UART interface, an IEEE1284 interface, an LCD interface, a front panel interface, and a modem interface,

wherein the programmable I/O system comprises a register file in communication with the microcontroller, and

wherein the register file comprises a timer register, a shared register, an interrupt register, a first-in first-out (FIFO) register, an external input/output (I/O) interface register and an internal I/O interface register.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053475/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2020
From: MARVELL INTERNATIONAL LTD.
To: CAVIUM INTERNATIONAL
Reel/Frame 052918/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: MARVELL INTERNATIONAL TECHNOLOGY LTD.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 051735/0882 →