This disclosure relates in general to multiplexers and, but not by way of limitation, to image sensors with multiplexed readouts of pixel lines for imaging array.
Pixel voltages are read from a CMOS image sensor (CIS) row-by-row by multiplexing the row into a serial signal. Pixel voltages are pre-processed serially by a number of analog circuits, which is less than the number of pixels in an array of the CIS. Additionally, the pre-processed analog voltages are further processed by a single analog device such as an analog to digital converter (ADC). Multiplexers are used to combine the many signals into a single serial stream or couple many signals to a common point.
Noise patterns noticeable in a picture reduce perceived image quality. A designer of CIS tries to reduce not only the noise of the pictures, but also the perceived image quality, as judged by the human viewer. For example, a picture in which the upper-half has some amount of visible random noise and the lower-part has less noise is perceived as having less quality that one where the noise is spread uniformly over the entire picture.
Another example of reduced image quality is fixed pattern noise (FPN)—if two picture sequences exhibit the same noise root mean square (RMS), but the noise is in fixed locations in one, and in varying locations (from image to image) in the other. The picture sequence with the FPN will be perceived as considerably worse. CIS designers use techniques to minimize the FPN. In some cases, the noise RMS is even increased purposefully to decrease FPN to assure that the image would exhibit less fixed pattern characteristics.
One of the sources of FPN in conventional systems occurs as a result of the analog multiplexing of column voltages read from the image array. This FPN is forwarded to analog processing units such as a Track&Hold circuit, for example, which then process the column voltages. A similar problem occurs when the output of the Track&Hold circuits are forwarded to a further analog processing unit like an analog to digital converter (ADC). As there are typically more columns in an imaging array than there are analog processing units, analog multiplexers are used to serially present the voltages of several columns to a single analog processing unit. The noise which occurs as a result of the switching between multiplexer inputs is of fixed pattern characteristics, and typically appears as vertical stripes of varying noise levels in the image.
In conventional systems, the switching method in the analog multiplexer generates a varying switching noise. When the inputs are scanned sequentially, a varying number of switches need to be toggled as the analog multiplexer couples its inputs to the output. This noise can be seen in the image.
The present disclosure is described in conjunction with the appended figures:
In the appended figures, similar components and/or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label by a dash and a second label that distinguishes among the similar components. If only the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label.
The ensuing description provides preferred exemplary embodiment(s) only, and is not intended to limit the scope, applicability or configuration of the disclosure. Rather, the ensuing description of the preferred exemplary embodiment(s) will provide those skilled in the art with an enabling description for implementing a preferred exemplary embodiment. It being understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope as set forth in the appended claims.
Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits may be shown in block diagrams in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.
Also, it is noted that the embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed, but could have additional steps not included in the figure. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination corresponds to a return of the function to the calling function or the main function.
Moreover, as disclosed herein, the term “storage medium” may represent one or more devices for storing data, including read only memory (ROM), random access memory (RAM), magnetic RAM, core memory, magnetic disk storage mediums, optical storage mediums, flash memory devices and/or other machine readable mediums for storing information. The term “machine-readable medium” includes, but is not limited to portable or fixed storage devices, optical storage devices, wireless channels and various other mediums capable of storing, containing or carrying instruction(s) and/or data.
Furthermore, embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine readable medium such as storage medium. A processor(s) may perform the necessary tasks. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc.
Switching of circuits coupled to an imaging array can cause noise in a resulting image produced by the imaging array. In one embodiment, an analog multiplexer for use with the sequential readout of array voltages in circuits such as CMOS image sensors is disclosed. The architecture of the new multiplexer assures a constant number of switching when the array is scanned sequentially, thus eliminating an artifact whereas the read columns exhibit a horizontal sequence of noise levels.
Referring initially to
The imagining array 104 is exposed to a scene to capture an image in columns and rows. In this embodiment, the image in parallel to four different analog processing paths. A multiplexer 108 in each analog processing path serializes the fraction of the image into a single signal before passing to the analog processing unit 112. Certain image and signal enhancements are performed in the analog processing unit 112.
This embodiment only has a single analog-to-digital converter (ADC) 116 to process information from all analog processing paths. Another multiplexer 108 is positioned between the four analog processing units 112 and the ADC to combine the four signals into a single signal. The multiplexer is controlled such that imaging array 104 is spooled out a row or column at a time. Once in the digital domain after the ADC 116, further processing is performed in the digital image processor 120.
With reference to
Referring next to
With reference to
The 32 inputs are wired to eight 4-input sub-multiplexers 300-307. The outputs from those eight 4-input sub-multiplexers 300-307 are wired to two 4-input sub-multiplexers 310, 311. Lastly, the outputs of the two sub-multiplexers 310, 311 are wired to a 2-input sub-multiplexer 320. Regardless of level, each 4-input sub-multiplexer 300-307, 310, 311 comprises four switches, which are designated a, b, c, and d. The switches are typically implemented by n-type or p-type transistors, or a combination of n-type and p-type transistor pairs.
The following Table I shows the switches are closed or turned “on” for each multiplexer to couple a particular input to the output for input 8 through input 23. Table I shows switches to close for sequentially scanning through input 8 and ending with input 23, but could be extrapolated for the whole 32 to 1 multiplexer. The “switching” column shows the number of switches for closing when changing from the last input to the present input. Opening of switches may also create noise, but those effects are not discussed in detail. The same problems from closing differing amounts of switches is found in this conventional switching circuit 350.
When the scan of inputs advances from input 8 to input 9, for example, a single sub-multiplexer 302 is affected. Specifically, switch a opens and switch b closes. The same number of switch changes will happen when stepping from input 9 to 10 and from input 10 to 11. However, when stepping from input 11 to 12, there is switching noise from two sub-multiplexers 303, 310. When stepping from input 15 to 16, three switches will switch on in three different sub-multiplex ers 304, 311, 320. As can be further observed from Table I, switching noise is caused by one, two or three switches closing. In general, the number of switches which change from off to on (and from on to off) varies from 1 to n in conventional systems, where n is the number of hierarchy levels of sub-multiplexers used.
In general reference to
Referring next to
This embodiment has three levels where there are eight sub-multiplexers 400-407 in the first layer, four sub-multiplexers 410-413 in the second layer and one sub-multiplexer 420 in the third layer. Other embodiments could have far more inputs into the switching circuitry 208, as may be required by the particular application. The select lines for each sub-multiplexer are individually manipulated in this embodiment.
With reference to
In this embodiment, the number of switches changing state is fixed at two openings and two closing, and no fixed pattern noise is introduced. Generally, the number of layers is equal to the number of switch openings or closings between each sequential input. Although, some embodiments contemplate sequential use of the inputs, other embodiments could select the inputs in non-sequential fashion so long as the switch openings and/or closings is the same when going from selecting one input to selecting another.
Referring next to
With reference to
Other embodiments could have any number of layers of sub-multiplexers from one level to any practical maximum. Additionally, the whole analog multiplexer could be of any size, even though the discussed embodiments are 32 to 1. The sub-multiplexers could have any number of inputs in various embodiments, for example, 4, 8, 16, 32, 64, 128, 256, etc. Even though these various number of inputs are a number that is a power of two, the number of inputs could be any integer greater than one in other embodiments.
While the principles of the disclosure have been described above in connection with specific apparatuses and methods, it is to be clearly understood that this description is made only by way of example and not as limitation on the scope of the invention.
This application claims the benefit of and is a non-provisional of U.S. Provisional Application Ser. No. 60/649,904 filed on Feb. 3, 2005, which is assigned to the assigner hereof and hereby expressly incorporated by reference in its entirety for all purposes.
Number | Date | Country | |
---|---|---|---|
60649904 | Feb 2005 | US |