Image forming apparatus, and control method and interface apparatus thereof

An image forming apparatus includes a MAC controller that receives a data packet containing print data from a host apparatus via a network, a central processing unit (CPU) that processes the data packet received by the MAC controller, and a printing unit that performs a printing operation on the basis of the print data processed by the CPU, wherein MAC controller selectively transmits the data packet to the CPU depending on whether the data packet received from the host apparatus corresponds to a predetermined receivable protocol type.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority from Korean Patent Application No. 10-2006-0118637, filed on Nov. 28, 2006 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Apparatuses and methods consistent with the present general inventive concept relate to an image forming apparatus, a control method and an interface apparatus thereof, and more particularly, to an image forming apparatus that performs a printing operation for print data obtained from data packets received via a network, and a control method and an interface apparatus thereof.

2. Description of the Related Art

An image forming apparatus such as a network printer receives data packets containing print data from a host apparatus such as a computer system and forms an image on a printing medium such as a paper by performing a print operation for the print data obtained from the received data packets.

Typically, an image forming apparatus that receives the data packets of print data via a network includes a central processing unit (CPU), a random access memory (RAM), a media access control (MAC) controller, an image processing unit, a printing unit, etc. The MAC controller receives the data packets containing the print data from a host apparatus, processes the received print data packets, stores the processed print data packets in the RAM, and interrupts the CPU. When the CPU is interrupted, the CPU performs a data processing corresponding to a protocol of the data packets, such as Transmission Control Protocol/Internet Protocol (TCP/IP). Next, the image processing unit performs an image processing for the print data obtained from the data packets to generate a print image and the printing unit performs a printing operation based on the generated print image.

However, since the MAC controller has to use system resources such as the CPU or a system bus in order to process the received data packets, it is necessary to minimize unnecessary data packets processing in order to improve system performance. The MAC controller may have a function of filtering unicast data packets having an incorrect destination MAC address or preventing certain multicast data packets or broadcast data packets from being received.

However, even when the MAC controller receives unicast data packets having a correct destination MAC address, the MAC controller may have difficulty in properly filtering received data packets to obtain required data packets, since the received unicast data packets are analyzed to be useless or the received multicast data packets or broadcast data packets are needed depending on their upper protocol types.

In this connection, although Korean Patent Publication Number 10-2005-0077229 discloses a MAC controller having an additional function of filtering IP/ARP data packets, the MAC controller of this application has limited applicability to only a particular protocol type of Internet Protocol/Address Resolution Protocol (IP/ARP). In addition, although Korean Patent Publication Number 10-2005-0056109 discloses a technique of detecting data packet congestion and limiting data packet receipt in a particular situation so as to perform a particular operation without any problem, this technique has also a problem in that data packets of an unnecessary protocol type can not be completely filtered.

SUMMARY OF THE INVENTION

The present general inventive concept provides an image forming apparatus which is capable of minimizing a system load by selectively transmitting data packets of print data received according to a protocol type, a control method thereof, and an interface apparatus.

The foregoing and/or other aspects of the present general inventive concept may be achieved by providing an image forming apparatus including an image forming apparatus including a MAC controller to receive a data packet containing print data from a host apparatus via a network, a central processing unit (CPU) to process the data packet received by the MAC controller, and a printing unit to perform a printing operation on the basis of the print data of the data packet processed by the CPU, wherein the MAC controller controls the data receiving unit to selectively transmit a data packet to the CPU depending on whether the data packet received from the host apparatus corresponds to a predetermined receivable protocol type.

The image forming apparatus may further include a main memory used in the processing of the CPU, wherein the MAC controller a memory unit in which the data packet received from the host apparatus is stored and a direct memory access (DMA) unit that reads the data packet stored in the memory unit and transmits the stored data packet to the main memory.

The MAC controller may transmit information related to a protocol type of the transmitted data packet to the main memory.

The receivable protocol type may depend on an Open Systems Interconnection (OSI) reference model.

The MAC controller may be integrally formed on a system-on-a-chip (SOC).

The foregoing and/or other aspects of the present general inventive concept may be achieved by providing a control method of an image forming apparatus including a central processing unit (CPU) that processes a data packet containing print data, and a printing unit that performs a printing operation on the basis of the print data of the data packet processed by the CPU, the control method including receiving the data packet from a host apparatus via a network, parsing the received data packet to determine the protocol type, and selectively transmitting the data packet to the CPU depending on whether the predetermined protocol type corresponds to a predetermined receivable protocol type.

The control method may further include storing the data packet received from the host apparatus, wherein selectively transmitting the data packet includes reading in a direct memory access (DMA) manner the stored data packet which is the receivable protocol type and transmitting the read data packet to a main memory used in the processing by the CPU.

The control method may further include transmitting information related to a protocol type of the transmitted data packet to the CPU.

The predetermined receivable protocol type may depend on an Open Systems Interconnection (OSI) reference model.

The foregoing and/or other aspects of the present general inventive concept may be achieved by providing an interface apparatus of an image forming apparatus that processes a data packet containing print data and performs a printing operation on the basis of the print data, the interface apparatus including an interface unit to receive the data packet from a host apparatus via a network and transmits the received data packet to the image forming apparatus and a controller to selectively transmit the received data packet to the image forming apparatus depending on whether the data packet received by the interface unit corresponds to a predetermined receivable protocol type.

The interface apparatus may include a memory unit to store the received packet and a direct memory access (DMA) unit that reads the stored data packet and transmits print data of the stored data packet to the image forming apparatus.

The controller may delete a stored data packet which does not have the predetermined receivable protocol type from among a plurality of stored data packets to prevent print data of a deleted data packet from being transmitted by the DMA unit.

The controller may delete a received data packet which does not correspond to the predetermined receivable protocol type and the controller otherwise transmits the received data packet to the image forming apparatus.

The foregoing and/or other aspects of the present general inventive concept may be achieved by providing a control method an image forming apparatus including receiving a data packet having print data and a protocol type from a host apparatus, parsing the received data packet to determine the protocol type, selectively transmitting print data of a received data packet to a printing unit of the image forming apparatus depending on whether the determined protocol type corresponds to a predetermined protocol type and printing the print data of the data packet having a determined protocol type which corresponds to the predetermined protocol type.

The control method where the parsing of the data packet may include checking a protocol type identifier or a receive descriptor of the received data packet.

The control method where selectively transmitting print data may be performed by a controller which deletes a received data packet which does not have a protocol type which corresponds to the predetermined protocol type and the controller otherwise transmits print data of an undeleted received data packet to the printing unit.

The foregoing and/or other aspects of the present general inventive concept may also be achieved by providing an image forming apparatus including a data receiving unit to receive a data packet from a host apparatus, a processing unit to parse the received data packet to determine a protocol type and a controller to selectively transmit a data packet to the processor depending on whether the determined protocol type corresponds to a predetermined receivable protocol type.

The image forming apparatus may include a printing unit to print information associated with the data packet transmitted to the processor.

The controller may include a media access controller.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1is a block diagram illustrating a configuration of an image forming apparatus100according to an embodiment of the general inventive concept. An image forming apparatus100, which may be embodied by a network printer or the like, receives print data from a host apparatus100a, such as a computer system, via a network, and performs a printing operation for the received print data.

The image forming apparatus100includes a media access control (MAC) controller110, a read only memory (ROM)120, a random access memory (RAM)130, a central processing unit (CPU)140and a printing unit150, all of which are connected via a system bus. The MAC controller110receives data packets containing the print data from the host apparatus100avia the network. The MAC controller110analyzes the protocol type of the received data packets and interrupts transmission of the data packets having a protocol type other than a predetermined protocol type which is allowed to be received (hereinafter referred to as “receivable protocol type”).

Programs to be executed by the CPU140and setup data are stored in the ROM120. Programs to be executed by the CPU140are loaded via the system bus into the RAM130which operates as a main memory for image forming apparatus100. In addition, data related to performance of the operation of the CPU140and the data packets transmitted by the MAC controller110are stored in the RAM130. The CPU140controls a printing operation by executing at least one of the programs loaded into the RAM130. The printing unit150forms an image on a printing medium such as a paper by performing a printing operation for the print data obtained from the data packets received by MAC controller110and stored in the RAM130under control of the CPU140. The combination of the ROM120, the RAM130, the CPU140and the printing unit150is illustrated as an embodiment of the image forming apparatus of the present general inventive concept.

FIG. 2is a block diagram illustrating the MAC controller110according to an embodiment of the present general inventive concept. The MAC controller110includes a network interface unit111, a MAC functional unit112, a memory unit113, a protocol type setting unit114, a direct memory access (DMA) unit115and a controller116. The combination of the network interface unit111, the MAC functional unit112, the memory unit113and the DMA unit115as illustrated defines an embodiment of a data receiving unit105(hashed line) of the image forming apparatus100of the general inventive concept. The MAC controller110may be a system-on-a-chip (SOC) type device. The MAC controller110is an example of an interface apparatus of the image forming apparatus100of the present general inventive concept.

The network interface unit111receives data packets containing print data from the network. The image forming apparatus100may further include a physical layer interface chip (PHY chip) (not illustrated) that performs a communication operation according to a protocol corresponding to a physical layer of an Open Systems Interconnection (OSI) reference model, and the network interface unit111may receive data packets through communication with the PHY chip. The network interface unit111may employ a Media Independent Interface (“MII”) system for a data transfer rate of 100 Mbps, a Gigabit Media Independent Interface/Reduced Gigabit Media Independent Interface (“GMII/RGMII”) system for a data transfer rate of 1 Gbps, and other known data protocol systems.

The MAC functional unit112, which is a block that performs a typical MAC function, performs operations of preamble/Standard Data Format (SDF) detection, Cyclic Redundancy Check (CRC) check, and other known operations for the data packets of the received print data.

The data packets of the print data processed by the MAC functional unit112are temporarily stored in the memory unit113. The memory unit113may be a RAM.

A receivable protocol type is selected and set in the protocol type setting unit114. Specifically, information corresponding to a selected protocol type for the received data packets is stored in the protocol type setting unit114.

The DMA unit115reads the data packets stored in the memory unit113under control of the controller116and transmits the read data packet to the RAM130(refer toFIG. 1) via the system bus. The DMA unit115generates an interrupt to the CPU140when a data packet is transmitted to the RAM130. In addition, when the DMA unit115transmits a data packet to the RAM130, it transmits information related to the protocol type of the data packet (hereinafter referred to as “protocol type information”).

The controller116parses the data packets of the received print data by referring to the protocol type setting unit114for the selected receivable protocol type for the received print data and controls the DMA unit115to selectively transmit the data packets to the RAM130depending on whether or not the data packets correspond to the selected receivable protocol type.

The CPU140performs a so-called “software protocol stack operation” or “software protocol stack process” on the data packets of the received print data which have been transmitted to the RAM130. Therefore, according to this embodiment, as the MAC controller110interrupts data packets of an unselected protocol type in advance before the data packets of the print data having the selected protocol type are transmitted to the CPU140, overloading of the CPU140and the system bus can be reduced, thereby improving performance of the overall system.

FIG. 3is a flow chart illustrating a process of the image forming apparatus100according to an embodiment of the present general inventive concept. First, the network interface unit111receives the print data packets from a PHY chip at operation S101. The MAC functional unit112then performs the MAC function for the received data packets, and the data packets are temporarily stored in the memory unit113at operation S102.

Next, the controller116parses the received data packets to check the protocol type of the data packets at operation S103. In addition, the controller116checks whether or not the checked protocol type corresponds to a receivable protocol type selected and set in the protocol type setting unit114at operation S104. The following table 1 illustrates an example of the protocol type of the data packets in this embodiment.

In Table 1, the protocol type identifier is a value identifying a protocol type. The controller116parses a frame header of layer 2 and a frame header of layer 3 of the received data packets to determine a protocol type of the data packets.

The protocol type setting unit114includes a plurality of protocol filter setting registers (not illustrated) to set the receivable protocol type. Table 2 illustrates an example of the protocol filter setting registers.

As illustrated in Table 2, a protocol type identifier is stored in the upper 16 bits of each of the protocol filter setting registers and information to determine whether a data is to be received is stored in the lower 16 bits. For example, if a value of a protocol filter setting register is 0′50000001, it means that IPv6 data packets are receivable.

If it is checked at the operation S104that the checked protocol type of the data packets corresponds to a receivable protocol type, the controller116controls the DMA unit115to transmit the data packets and the corresponding protocol type information to the RAM130at operation S105. On the other hand, if it is checked at the operation S104that the checked protocol type of the data packet does not correspond to the set receivable protocol type, at operation S106the controller116deletes the data packet from the memory unit113so that the DMA unit115can not transmit the data packet. After the operations S105and S106are performed, the process returns to operation S101.

When the data packets transmitted by the DMA115are stored in the RAM130, information related to receipt of the data packets may be stored in a pre-assigned address of the RAM130in the form of a descriptor (hereinafter referred to as “receive descriptor”) along with the data packets.

FIG. 4illustrates an example of a receive descriptor (Rx descriptor)200according to an embodiment of the present general inventive concept. The receive descriptor200includes a receive (Rx) buffer pointer201that indicates an address of stored data packets, an ownership bit202that indicates ownership by the CPU140or the DMA unit115, a receive (Rx) status indicator203that indicates a receive status, a receive (Rx) length indicator204that indicates the length of received data, and a protocol type identifier205. The protocol type identifier205is assigned a protocol type information of the data packets transmitted by the DMA unit115.

As described above, the data packets and the corresponding protocol type are stored together in the form of receive descriptor200in the RAM130so that the CPU140may not classify the data packets again when the data packets are processed, thereby reducing a system load on the CPU140.

As apparent from the above description according to the present general inventive concept, a system load can be minimized by selectively transmitting data packets of print data received according to a certain protocol type. That is, by preventing transmission of data packets of an undesired protocol type in advance by means of MAC functional unit112, and not CPU140, overhead loads on the CPU140and the system bus can be reduced, thereby improving overall performance of the system.