1 / 59

Final Year Project 2008-2009

Final Year Project 2008-2009. A CMOS imager with compact digital pixel sensor (BA1-08) Supervisor: Dr. Amine Bermak Group Members: Chang Kwok Hung 06239718 Kwok Kam Kin 06092639 Kwan Tsz Chun 06130704. Outline. Aim of our project Introduction Pixel Sensor Huffman encoding system

adamdaniel
Download Presentation

Final Year Project 2008-2009

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Final Year Project 2008-2009 A CMOS imager with compact digital pixel sensor (BA1-08) Supervisor: Dr. Amine Bermak Group Members: Chang Kwok Hung 06239718 Kwok Kam Kin 06092639 Kwan Tsz Chun 06130704

  2. Outline • Aim of our project • Introduction • Pixel Sensor • Huffman encoding system • Control system • Performance • Q&A

  3. Aims of our project • Aims: • To design a compact digital pixel sensor using effective compression scheme based on Different Pulse Code Modulation processing • To implement Huffman encoding scheme in order to provide further compression on the differential signal output

  4. Aims of our project • Why is image compression important? • Minimize storage size • Minimize silicon area of the chip • Speed enhancement

  5. Aim of our project • The advantages of a single chip imager: • Low noise • Low power consumption • Total cost is low

  6. Aim of our project • Comparison between CDD and CMOS Imager

  7. Introduction • Categories of CMOS Image Sensors • Passive Pixel Sensor (PPS) • Active Pixel Sensor (APS) • Digital Pixel Sensor (DPS)

  8. Introduction • Passive Pixel Sensor (PPS) High Fill factor Signal-to-noise ratio (SNR) is poor Shared analog to digital convertor (ADC). Row select Column bus

  9. Introduction • Active Pixel Sensor (APS) Signal amplifier is included Larger SNR Lower fill factor Shared ADC Vdd Row select Reset Column bus Simple amplifier

  10. Introduction • Digital Pixel Sensor (DPS) ADC is installed in each pixel. SNR is larger Speed is higher Vdd Column bus Row select Reset Vref ADC

  11. Row Select ADC Column select Introduction • Comparison between APS and DPS Pixel 1 Pixel 2 Pixel 3 Pixel 4 Pixel 1 Row Select Pixel 2 Pixel 3 Pixel 4 Column select Pixel select Analog to digital conversion Signal read

  12. Differential Pulse Code Modulation

  13. Differential Pulse Code Modulation • By utilizing the difference between the sample values of 2 successive pixels, the number of bits of memory can be reduced • As the degree of redundancy is particularly high in normal images, DPCM can effectively decrease the size of the on-chip memory

  14. Differential Pulse Code Modulation

  15. Differential Pulse Code Modulation

  16. Pixel Sensor • Photodiode • Comparator • Reconfigurable 5-bits up/down counter

  17. Photodiode • A photodiode is a reversed-bias diode with internal capacitance • Current flows with different magnitudes according to the illumination

  18. Pixel Sensor • Block diagram

  19. Discharge time • The discharge time depends on the illumination

  20. Reconfigurable up/down counter • Count up when receiving a pulse from the current pixel • Count down when receiving a pulse from the neighbor pixel

  21. Reconfigurable up/down counter

  22. Reconfigurable up/down counter • Timing Diagram:

  23. Potential Problems • Overflow problem • Crashes of input pulses

  24. Overflow handling • Overflow is a serious problem as it affects the data recovery in the external environment • Solution: • Stop counting up when the memory is 01111 • Stop counting down when the memory is 10000

  25. Crashes of input pulses handling • When pulses from the current pixel and the neighbor pixel received at the same time, the counter cannot work • Solution • Add a buffer to delay one of the pulses • Cancelling each other

  26. Huffman encoding system Huffman coding A variable-length encoding scheme. Lossless compression Length of the codeword depends on the occurrence of the sample value An example of Huffman coding (http://skylondaworks.com/sc_huff.htm)

  27. Codeword Assignment Average Length=3.59 -28.2% from DPCM values

  28. Performance is content dependent 8x8 BITMAP (Color not in scale) DPCM ±15 DPCM ±4 185 200 184 180 Huffman codeword length= 8 Resultant size=(8x8-1)x8= 504bits Huffman codeword length= 5 Resultant size=(8x8-1)x5= 315 bits

  29. Example of Huffman codeword 0 2 7 14 11111011010010100100 MCU Serial link

  30. Codeword Tree

  31. Implementation • Combinational logic • Input: DPCM values from the pixel grid • Output: Huffman codeword and its length Pixel grid CONTROL

  32. Methodology • K-map • Common term discovery • Solution minimization • NAND-NOR combination

  33. Methodology – K-Map K-map of CW5

  34. Methodology – Common Terms

  35. Methodology – NAND-NOR Combination

  36. Summary- Huffman encoder • Convert DPCM value to Huffman codeword • 18 common terms • Implementation done by 428 gates

  37. Control System • It consists of 3 parts • Interface • 8-bit Shift Register • 4-bit Counter • 14-bit Counter • Row Decoder • Column Multiplexer

  38. Control System

  39. Control System Control logic Delay path Hand shake protocol interface

  40. Control Logic • Async with data link • Hand shake protocol communication Delay counter 14-bit pixel counter

  41. Interface • Synchronous to datalink • Send request to control logic • Serve MCU request • It consists of 2 main elements • 8-bit Shift Register for huffman code stream • 4-bit Counter for code length

  42. MCU request

  43. Control System Wait if: Delay counter do not finish counting or 14-bit counter reach the top or 4-bit length counter finish counting

  44. Receive codeword signal from Hoffman encoder Transfer the received signal to MCU 8-bit Shift Register

  45. 4-bit Counter Keeps tracking the length of the codeword from the Hoffman encoder It is 4 bits since the maximum length of the codeword is 8 When the counter value reached zero, shift register is acknowledged to get the new branch of data.

  46. 14-bit Counter • Control the row decoder and column multiplexer to select the right piece of pixel. • The 7 less significant bits are connected to column multiplexer while the 7 more significant bits are connected to row decoder.

  47. Row Decoder • Responsible for selecting the right row of pixel. • 7 to 128 decoder is required since there are 128 rows of pixel.

  48. Row Decoder 1 to 2 decoder

  49. Column Multiplexer • Responsible for selecting the right column of pixel. • 640 to 5 multiplexer is required since there are 128 columns of pixel and each pixel give out 5bits of signal.

  50. Column Multiplexer 2 to 1 multiplexer

More Related