Final Year Project 2008-2009
description
Transcript of Final Year Project 2008-2009
![Page 1: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/1.jpg)
Final Year Project 2008-Final Year Project 2008-20092009A 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
![Page 2: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/2.jpg)
OutlineOutlineAim of our projectIntroductionPixel SensorHuffman encoding systemControl systemPerformanceQ&A
![Page 3: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/3.jpg)
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
Aims of our projectAims of our project
![Page 4: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/4.jpg)
Aims of our projectAims of our project Why is image compression
important? Minimize storage size Minimize silicon area of the chip Speed enhancement
![Page 5: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/5.jpg)
Aim of our projectAim of our projectThe advantages of a single chip
imager:◦Low noise◦Low power consumption◦Total cost is low
![Page 6: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/6.jpg)
Aim of our projectAim of our projectComparison between CDD and CMOS
Imager CCD CMOS
Power consumptionhighe
rlower
Size largersmalle
r
Image's qualityhighe
rlower
Multiple functions on chip
No Yes
![Page 7: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/7.jpg)
IntroductionIntroductionCategories of CMOS Image
Sensors◦Passive Pixel Sensor (PPS)◦Active Pixel Sensor (APS)◦Digital Pixel Sensor (DPS)
![Page 8: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/8.jpg)
IntroductionIntroductionPassive Pixel Sensor (PPS)
Column busRow select 1. High Fill factor
2. Signal-to-noise ratio (SNR) is poor
3. Shared analog to digital convertor (ADC).
![Page 9: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/9.jpg)
IntroductionIntroductionActive Pixel Sensor (APS)
Column bus
Row selectVdd
Reset
Simple amplifier
1. Signal amplifier is included
2. Larger SNR3. Lower fill factor4. Shared ADC
![Page 10: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/10.jpg)
IntroductionIntroductionDigital Pixel Sensor (DPS)
Vdd
Reset
Row select
Column bus
Vref ADC
1. ADC is installed in each pixel.
2. SNR is larger3. Speed is higher
![Page 11: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/11.jpg)
IntroductionIntroductionComparison between APS and DPS
Row Select
Column selectADC
Row Select
Column select
Pixel 1
Pixel 2
Pixel 3
Pixel 4
Pixel 1
Pixel 2
Pixel 3
Pixel 4
Pixel select Analog to digital conversion Signal read
![Page 12: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/12.jpg)
Differential Pulse Code Differential Pulse Code ModulationModulation
![Page 13: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/13.jpg)
Differential Pulse Code Differential Pulse Code ModulationModulationBy 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
![Page 14: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/14.jpg)
Differential Pulse Code Differential Pulse Code ModulationModulation
![Page 15: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/15.jpg)
Differential Pulse Code Differential Pulse Code ModulationModulation
![Page 16: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/16.jpg)
Pixel SensorPixel SensorPhotodiodeComparatorReconfigurable 5-bits up/down
counter
![Page 17: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/17.jpg)
PhotodiodePhotodiodeA photodiode is a reversed-bias
diode with internal capacitanceCurrent flows with different
magnitudes according to the illumination
![Page 18: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/18.jpg)
Pixel SensorPixel SensorBlock diagram
![Page 19: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/19.jpg)
Discharge timeDischarge timeThe discharge time depends on
the illumination
![Page 20: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/20.jpg)
Reconfigurable up/down Reconfigurable up/down countercounterCount up when receiving a pulse
from the current pixelCount down when receiving a
pulse from the neighbor pixel
![Page 21: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/21.jpg)
Reconfigurable up/down Reconfigurable up/down countercounter
![Page 22: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/22.jpg)
Reconfigurable up/down Reconfigurable up/down countercounterTiming Diagram:
![Page 23: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/23.jpg)
Potential ProblemsPotential ProblemsOverflow problemCrashes of input pulses
![Page 24: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/24.jpg)
Overflow handlingOverflow handlingOverflow is a serious problem as
it affects the data recovery in the external environment
Solution:Stop counting up when the
memory is 01111Stop counting down when the
memory is 10000
![Page 25: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/25.jpg)
Crashes of input pulses Crashes of input pulses handlinghandlingWhen pulses from the current
pixel and the neighbor pixel received at the same time, the counter cannot work
SolutionAdd a buffer to delay one of the
pulsesCancelling each other
![Page 26: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/26.jpg)
Huffman encoding systemHuffman encoding systemHuffman 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)
SYMBOL
Probability 1
Codeword 1
Probability 2
Codeword 2
1 0.125 [1 0 1] 0.93 [0]
2 0.125 [1 0 0] 0.02 [1 0 0]
3 0.125 [1 1 1] 0.0125 [1 1 1]
4 0.125 [1 1 0] 0.01 [1 1 0 0]
5 0.125 [0 0 1] 0.01 [1 0 1 1]
6 0.125 [0 0 0] 0.01 [1 0 1 0]
7 0.125 [0 1 1] 0.005 [1 1 0 1 0]
8 0.125 [0 1 0] 0.0025 [1 1 0 1 1]
Average Length
3 1.185
![Page 27: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/27.jpg)
Probability
Codeword
Probability Codeword
-16 0.00188
00100000
00.302 11
-15 0.00198
00100001
10.16743 0111
-14 0.0023
1000010 20.07111 0100
-13 0.00247
1000011 30.02435 0000
-12 0.00282
1011010 40.01263 01011
-11 0.0034
0010001 50.00866 00010
-10 0.00383
100000 60.00693 10010
-9 0.00442 100011 7 0.00546 001011
-8 0.00525 101111 8 0.0046 101110
-7 0.00617 001010 9 0.00386 100010
-6 0.00721 10011 10 0.00316 0010011
-5 0.00925 00011 11 0.00279 1011011
-4 0.01262 01010 12 0.00233 1011001
-3 0.02361 1010 13 0.00206 1011000
-2 0.06795 0011 14 0.00204 00100101
-1 0.16504 0110 15 0.00171 00100100
Average Length=3.59
-28.2% from DPCM values
Codeword AssignmentCodeword Assignment
![Page 28: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/28.jpg)
Performance is content Performance is content dependentdependent
200185 184 180DPCM±15
DPCM±4
8x8 BITMAP(Color not in scale)
Huffman codeword length= 8Resultant size=(8x8-1)x8= 504bits
Huffman codeword length= 5Resultant size=(8x8-1)x5= 315 bits
![Page 29: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/29.jpg)
Example of Huffman Example of Huffman codewordcodeword
Serial link
11111011010010100100
0 2 7 14
![Page 30: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/30.jpg)
Codeword TreeCodeword Tree
![Page 31: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/31.jpg)
ImplementationImplementationCombinational logicInput: DPCM values from the
pixel gridOutput: Huffman codeword and
its length
Pixel grid CONTROL
![Page 32: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/32.jpg)
MethodologyMethodology
K-mapCommon term discoverySolution minimizationNAND-NOR combination
![Page 33: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/33.jpg)
Methodology – K-MapMethodology – K-Map
K-map of CW5
![Page 34: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/34.jpg)
Methodology – Common Methodology – Common TermsTerms
CW5= (A’B’C’) + (B’C’D’) + (B’D’E) + (AB’E) + (ABCE’) + (BDE’) + (BCD) + (CDE’)
=B’(C’(A’+D’) + E(D’+A)) + BC(D+AE’) + DE’(B+C)
![Page 35: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/35.jpg)
Methodology – NAND-NOR Methodology – NAND-NOR CombinationCombination
![Page 36: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/36.jpg)
Summary- Huffman Summary- Huffman encoderencoderConvert DPCM value to Huffman
codeword18 common termsImplementation done by 428
gates
![Page 37: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/37.jpg)
Control SystemControl SystemIt consists of 3 parts
◦Interface 8-bit Shift Register 4-bit Counter 14-bit Counter
◦Row Decoder◦Column Multiplexer
![Page 38: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/38.jpg)
Control SystemControl System
![Page 39: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/39.jpg)
Control SystemControl System
Delay path
Control logic
interface
Hand shake
protocol
![Page 40: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/40.jpg)
Control LogicControl LogicAsync with data linkHand shake protocol
communication14-bit pixel
counter
Delay counter
![Page 41: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/41.jpg)
InterfaceInterfaceSynchronous to datalinkSend request to control logicServe MCU requestIt consists of 2 main elements
◦8-bit Shift Register for huffman code stream
◦4-bit Counter for code length
![Page 42: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/42.jpg)
MCU request
![Page 43: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/43.jpg)
Control SystemControl System
Wait if:Delay counter do not finish counting or14-bit counter reach the top or4-bit length counter finish counting
![Page 44: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/44.jpg)
8-bit Shift Register8-bit Shift Register1. Receive codeword
signal from Hoffman encoder
2. Transfer the received signal to MCU
![Page 45: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/45.jpg)
4-bit Counter4-bit Counter
1. Keeps tracking the length of the codeword from the Hoffman encoder
2. It is 4 bits since the maximum length of the codeword is 8
3. When the counter value reached zero, shift register is acknowledged to get the new branch of data.
![Page 46: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/46.jpg)
14-bit Counter14-bit CounterControl 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.
![Page 47: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/47.jpg)
Row DecoderRow Decoder
1.Responsible for selecting the right row of pixel.
2.7 to 128 decoder is required since there are 128 rows of pixel.
![Page 48: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/48.jpg)
Row DecoderRow Decoder1 to 2 decoder
![Page 49: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/49.jpg)
Column MultiplexerColumn Multiplexer
1.Responsible for selecting the right column of pixel.
2.640 to 5 multiplexer is required since there are 128 columns of pixel and each pixel give out 5bits of signal.
![Page 50: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/50.jpg)
Column MultiplexerColumn Multiplexer
2 to 1 multiplexer
![Page 51: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/51.jpg)
PerformancePerformance
![Page 52: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/52.jpg)
Performance - SimulationPerformance - Simulation
![Page 53: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/53.jpg)
Performance - SimulationPerformance - Simulation
![Page 54: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/54.jpg)
Performance - Power Performance - Power consumption consumption Current waveform of the pixel
sensor
![Page 55: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/55.jpg)
Performance - Fill factorPerformance - Fill factorThe fill factor of the imager is
about 12 %
![Page 56: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/56.jpg)
Performance - Post layout Performance - Post layout sim.sim.
![Page 57: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/57.jpg)
Compression performanceCompression performanceImage Size ORIGINAL DPCM ONLY
(-37.5%)DPCM with Huffman Coding(-55%)
1x1 1 bytes 5 bits (-3 bits)
3.6 bits (-4.4 bits)
128x128 16k bytes 10k bytes(-6kB)
7.2k bytes (-8.8kB)
640x480(VGA)
300k bytes 187.5k bytes (-112.5kB)
135k bytes (-165kB)
1280x720(HD 720)
900k bytes 562.5k bytes(-337.5kB)
405k bytes (-495kB)
Actual compression rate varies from 0% to 75% , depend on the actual content of the image.
![Page 58: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/58.jpg)
Performance-Huffman Performance-Huffman encoderencoderMaximum switching Delay= 2.4ns Maximum possible operation frequency =410MHz
![Page 59: Final Year Project 2008-2009](https://reader037.fdocuments.in/reader037/viewer/2022110213/56814e7b550346895dbc17c8/html5/thumbnails/59.jpg)
Q&AQ&AFurther explanation