SlideShare a Scribd company logo
IMPLEMENTATION OF AN FPGA BASED VIDEO CAPTURE CARD1PRESENTED BY:                       SHEHRYAR
SEQUENCEProject Aim Spartan 3A Board OverviewAvailable ToolsAdopted PathXilinx Platform StudiosVideo CaptureUniversal Serial BusChallenges2
SEQUENCE(CONTD.)Video CompressionAccelDSPChallengesFuture WorkQuestions3
PROJECT AIMFPGA based video capture card Input from an Analog VGA sourceResolution = 1024x768 pixelsFrame Rate= 30 fpsFormat = RGB (8:8:8)Data Rate = 566 MbpsOutput through a USB 2.0 port Interfacing VGA with USBData Rate = 480 Mbps at hi-speed4
PROJECT AIM                   (CONTD.)Video compressionData Rate reductionMemory reductionCapture and storage of compressed video data on PCStandard video formatPlay back through media playerMajor parts of projectVideo capturingUSB interfacingVideo compression5
 SPARTAN 3A BOARD OVERVIEW6
 SPARTAN 3A BOARD OVERVIEW   (contd.) FMC-Video daughter board7
AVAILABLE TOOLSIntegrated Software EnvironmentXilinx Platform StudiosSystem GeneratorAccelDSP8
ADOPTED PATHXilinx Platform StudiosVideo CapturingUSB InterfaceAccelDSPVideo compression core9
XILINX PLATFORM STUDIOSEmbedded processor systemMicroblazeLibraries and driversIntegration of hardware with software10
XILINX PLATFORM STUDIOS      (CONTD.)11
VIDEO CAPTUREVGA Analog inputRGB Intensity SignalHsync, VsyncIIC  ProgrammingDesired mode and resolutionXPS IIC PCOREDVI input PCOREUnified bus interface12Analog Interface AD9984A
VIDEO CAPTURE13BRAMXPS IIC PCOREIIC  MUXPCA 9546AILMBDLMBMicroblaze ProcessorFPGADigital ReceiverTFP403Processor Local BusDVI-I PortAnalog Interface AD9984ADVI Input PCORE
VIDEO CAPTURE   (CONTD.)DE-Gen PCOREData Enable signal Generated from HSYNC and VSYNC signals combined with front porch and back porch valuesOutput fully captured video signal14
VIDEO CAPTURE		  (CONTD.)15BRAMXPS IIC PCOREIIC  MUXPCA 9546AILMBDLMBMicroblaze ProcessorFPGADigital ReceiverTFP403Processor Local BusDVI-I PortAnalog Interface AD9984ADVI Input PCOREDE-GenOther Cores
UNIVERSAL SERIAL BUSIntroductionSerial Bus4 WiresHost ControlledUSB DevicesUnique Addresses8 EndpointsUSB protocolToken packetData packetStatus packet16
FPGAUNIVERSAL SERIAL BUS      (CONTD.)17Cypress CY7C67300MICROBLAZEUSB ControllerRISC CoreHost Port InterfaceProcessor Local BusILMBDLMBBRAMSIESpartan 3A DSP 3400 BoardUSB PortPCUSB port
CHALLANGESUnderstanding of different languagesHDLC/C++Learning of XPSIntegration of PCOREsDeveloping the driver Integrating software with hardwareDevelopment of USB controllerDifficult as RISC processor is involved18
VIDEO COMPRESSIONWhat is VideoWhat is CompressionNeed for CompressionSpace requirementsStorage constraintsBandwidth requirementsChannel constraints
            VIDEO COMPRESSION	  (CONTD.)Spatial RedundanciesCorrelation between adjacent data pointsIntra –within the frameTemporal RedundanciesCorrelation between different     frames in a videoInter –across the framesuses block-based motion   compensation20
               VIDEO COMPRESSION	      (CONTD.)Three types of framesI frame –key frameP frame –Predicted frameB frame –Bidirectional                       predicted frame21
              VIDEO COMPRESSION        (CONTD.)To encode a frame each operation is performed at macroblock  (MB) level  (n x n block of  pixel. n=16 )Intra coded frame (I): every MB of the frame is coded using spatial redundancyInter coded frame (P): most of the MBs of the frame are coded exploiting temporal redundancy (in the past) Bi-predictive frame (B): most of the MBs of the frame are coded exploiting temporal redundancy in the past and in the futureGroup of Picture (GOP): sequence of pictures between two I-frames22
VIDEO COMPRESSION		 (CONTD.)Exploiting Spatial RedundanciesRGB to YCCChrominance vs luminanceChroma-sub samplingSensation of human eye8x8 BlocksDCT2Frequency DomainReal part of FFTDC and AC coefficients Easy to implement
VIDEO COMPRESSION(CONTD.)Exploiting Spatial RedundanciesZig Zag ScanScan PatternQuantizationQuantization TableQuantization threshold valueTruncation of coefficientsHigh frequency values approaching zero
VIDEOCOMPRESSION(CONTD.)Exploiting Spatial RedundanciesRun Length EncodingConsecutive coefficients with the same valueAssigning number of repetitions of same value  Huffman EncodingOrder of probability of occurrenceHuffman Table25
        VIDEO COMPRESSION(CONTD.)26
VIDEO COMPRESSION		 (CONTD.)Exploiting Temporal RedundanciesMotion EstimationTwo consecutive frames Macroblock comparisonRecovery of motion vectorMotion CompensationFrame segmentationBlock matching Motion vector correction(prediction error)Sending prediction error
VIDEO COMPRESSION(CONTD.)28
VIDEO COMPRESSION	 (CONTD.)
AccelDSPXilinx FPGA tool Transform Matlab syntax to HDLExports the HDL design to System GeneratorBITSTRAEM30
COMPLETE DESIGN IN FPGA31ILMBMicroblaze ProcessorXPS IIC PCOREBRAMDLMBProcessor Local BusDVI-I inDE-GenFrame BufferUSB ControllerVideo Compression
THANKYOU32
QUESTIONS?33

More Related Content

PDF
Sinamics g120 treinamento (en)
PPTX
Plc (introduction and logic)
PPTX
DaVinci DM8168 SuperHD Image Capture Solution
PPTX
Generic Video Adaptation Framework Towards Content – and Context Awareness in...
PDF
VLSI Design for Video Coding 2010th Edition Youn
PDF
VLSI Design for Video Coding 2010th Edition Youn
PDF
Real time image processing in fpga
PDF
VLSI Design for Video Coding 2010th Edition Youn
Sinamics g120 treinamento (en)
Plc (introduction and logic)
DaVinci DM8168 SuperHD Image Capture Solution
Generic Video Adaptation Framework Towards Content – and Context Awareness in...
VLSI Design for Video Coding 2010th Edition Youn
VLSI Design for Video Coding 2010th Edition Youn
Real time image processing in fpga
VLSI Design for Video Coding 2010th Edition Youn

Similar to Fpga video capturing (20)

PDF
VLSI Design for Video Coding 2010th Edition Youn
PDF
VLSI Design for Video Coding 2010th Edition Youn
PPT
H 264 in cuda presentation
PPT
Iain Richardson: An Introduction to Video Compression
PPT
Midtem_19082004
PPT
Introduction to Video Compression Techniques - Anurag Jain
PDF
Wireless PC2TV
PPT
Multi Processor Architecture for image processing
PDF
Transformation and dynamic visualization of images from computer through an F...
PDF
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
PDF
Video decoding: SDI interface implementation &H.264/AVC bitstreamdecoder hard...
PPT
Configurable Video Coding
PPTX
London Video Tech - Adventures in cutting every last millisecond from glass-t...
PDF
Serial parallel dataflow-pipelined processing architecture based accelerator ...
PDF
C44081316
PDF
00364438
PDF
10.1.1.184.6612
PPT
Multiprocessor Architecture for Image Processing
PDF
MM-4092, Optimizing FFMPEG and Handbrake Using OpenCL and Other AMD HW Capabi...
PDF
NTTW4-FFmpeg.pdf
VLSI Design for Video Coding 2010th Edition Youn
VLSI Design for Video Coding 2010th Edition Youn
H 264 in cuda presentation
Iain Richardson: An Introduction to Video Compression
Midtem_19082004
Introduction to Video Compression Techniques - Anurag Jain
Wireless PC2TV
Multi Processor Architecture for image processing
Transformation and dynamic visualization of images from computer through an F...
HARDWARE SOFTWARE CO-SIMULATION OF MOTION ESTIMATION IN H.264 ENCODER
Video decoding: SDI interface implementation &H.264/AVC bitstreamdecoder hard...
Configurable Video Coding
London Video Tech - Adventures in cutting every last millisecond from glass-t...
Serial parallel dataflow-pipelined processing architecture based accelerator ...
C44081316
00364438
10.1.1.184.6612
Multiprocessor Architecture for Image Processing
MM-4092, Optimizing FFMPEG and Handbrake Using OpenCL and Other AMD HW Capabi...
NTTW4-FFmpeg.pdf
Ad

Recently uploaded (20)

PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PPTX
PPH.pptx obstetrics and gynecology in nursing
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
01-Introduction-to-Information-Management.pdf
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
master seminar digital applications in india
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PDF
Complications of Minimal Access Surgery at WLH
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
Sports Quiz easy sports quiz sports quiz
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PPTX
Lesson notes of climatology university.
Microbial diseases, their pathogenesis and prophylaxis
Module 4: Burden of Disease Tutorial Slides S2 2025
VCE English Exam - Section C Student Revision Booklet
Supply Chain Operations Speaking Notes -ICLT Program
PPH.pptx obstetrics and gynecology in nursing
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
01-Introduction-to-Information-Management.pdf
Renaissance Architecture: A Journey from Faith to Humanism
Anesthesia in Laparoscopic Surgery in India
master seminar digital applications in india
Abdominal Access Techniques with Prof. Dr. R K Mishra
102 student loan defaulters named and shamed – Is someone you know on the list?
Complications of Minimal Access Surgery at WLH
TR - Agricultural Crops Production NC III.pdf
Final Presentation General Medicine 03-08-2024.pptx
Sports Quiz easy sports quiz sports quiz
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Lesson notes of climatology university.
Ad

Fpga video capturing

  • 1. IMPLEMENTATION OF AN FPGA BASED VIDEO CAPTURE CARD1PRESENTED BY: SHEHRYAR
  • 2. SEQUENCEProject Aim Spartan 3A Board OverviewAvailable ToolsAdopted PathXilinx Platform StudiosVideo CaptureUniversal Serial BusChallenges2
  • 4. PROJECT AIMFPGA based video capture card Input from an Analog VGA sourceResolution = 1024x768 pixelsFrame Rate= 30 fpsFormat = RGB (8:8:8)Data Rate = 566 MbpsOutput through a USB 2.0 port Interfacing VGA with USBData Rate = 480 Mbps at hi-speed4
  • 5. PROJECT AIM (CONTD.)Video compressionData Rate reductionMemory reductionCapture and storage of compressed video data on PCStandard video formatPlay back through media playerMajor parts of projectVideo capturingUSB interfacingVideo compression5
  • 6. SPARTAN 3A BOARD OVERVIEW6
  • 7. SPARTAN 3A BOARD OVERVIEW (contd.) FMC-Video daughter board7
  • 8. AVAILABLE TOOLSIntegrated Software EnvironmentXilinx Platform StudiosSystem GeneratorAccelDSP8
  • 9. ADOPTED PATHXilinx Platform StudiosVideo CapturingUSB InterfaceAccelDSPVideo compression core9
  • 10. XILINX PLATFORM STUDIOSEmbedded processor systemMicroblazeLibraries and driversIntegration of hardware with software10
  • 12. VIDEO CAPTUREVGA Analog inputRGB Intensity SignalHsync, VsyncIIC ProgrammingDesired mode and resolutionXPS IIC PCOREDVI input PCOREUnified bus interface12Analog Interface AD9984A
  • 13. VIDEO CAPTURE13BRAMXPS IIC PCOREIIC MUXPCA 9546AILMBDLMBMicroblaze ProcessorFPGADigital ReceiverTFP403Processor Local BusDVI-I PortAnalog Interface AD9984ADVI Input PCORE
  • 14. VIDEO CAPTURE (CONTD.)DE-Gen PCOREData Enable signal Generated from HSYNC and VSYNC signals combined with front porch and back porch valuesOutput fully captured video signal14
  • 15. VIDEO CAPTURE (CONTD.)15BRAMXPS IIC PCOREIIC MUXPCA 9546AILMBDLMBMicroblaze ProcessorFPGADigital ReceiverTFP403Processor Local BusDVI-I PortAnalog Interface AD9984ADVI Input PCOREDE-GenOther Cores
  • 16. UNIVERSAL SERIAL BUSIntroductionSerial Bus4 WiresHost ControlledUSB DevicesUnique Addresses8 EndpointsUSB protocolToken packetData packetStatus packet16
  • 17. FPGAUNIVERSAL SERIAL BUS (CONTD.)17Cypress CY7C67300MICROBLAZEUSB ControllerRISC CoreHost Port InterfaceProcessor Local BusILMBDLMBBRAMSIESpartan 3A DSP 3400 BoardUSB PortPCUSB port
  • 18. CHALLANGESUnderstanding of different languagesHDLC/C++Learning of XPSIntegration of PCOREsDeveloping the driver Integrating software with hardwareDevelopment of USB controllerDifficult as RISC processor is involved18
  • 19. VIDEO COMPRESSIONWhat is VideoWhat is CompressionNeed for CompressionSpace requirementsStorage constraintsBandwidth requirementsChannel constraints
  • 20. VIDEO COMPRESSION (CONTD.)Spatial RedundanciesCorrelation between adjacent data pointsIntra –within the frameTemporal RedundanciesCorrelation between different frames in a videoInter –across the framesuses block-based motion compensation20
  • 21. VIDEO COMPRESSION (CONTD.)Three types of framesI frame –key frameP frame –Predicted frameB frame –Bidirectional predicted frame21
  • 22. VIDEO COMPRESSION (CONTD.)To encode a frame each operation is performed at macroblock (MB) level (n x n block of pixel. n=16 )Intra coded frame (I): every MB of the frame is coded using spatial redundancyInter coded frame (P): most of the MBs of the frame are coded exploiting temporal redundancy (in the past) Bi-predictive frame (B): most of the MBs of the frame are coded exploiting temporal redundancy in the past and in the futureGroup of Picture (GOP): sequence of pictures between two I-frames22
  • 23. VIDEO COMPRESSION (CONTD.)Exploiting Spatial RedundanciesRGB to YCCChrominance vs luminanceChroma-sub samplingSensation of human eye8x8 BlocksDCT2Frequency DomainReal part of FFTDC and AC coefficients Easy to implement
  • 24. VIDEO COMPRESSION(CONTD.)Exploiting Spatial RedundanciesZig Zag ScanScan PatternQuantizationQuantization TableQuantization threshold valueTruncation of coefficientsHigh frequency values approaching zero
  • 25. VIDEOCOMPRESSION(CONTD.)Exploiting Spatial RedundanciesRun Length EncodingConsecutive coefficients with the same valueAssigning number of repetitions of same value Huffman EncodingOrder of probability of occurrenceHuffman Table25
  • 26. VIDEO COMPRESSION(CONTD.)26
  • 27. VIDEO COMPRESSION (CONTD.)Exploiting Temporal RedundanciesMotion EstimationTwo consecutive frames Macroblock comparisonRecovery of motion vectorMotion CompensationFrame segmentationBlock matching Motion vector correction(prediction error)Sending prediction error
  • 30. AccelDSPXilinx FPGA tool Transform Matlab syntax to HDLExports the HDL design to System GeneratorBITSTRAEM30
  • 31. COMPLETE DESIGN IN FPGA31ILMBMicroblaze ProcessorXPS IIC PCOREBRAMDLMBProcessor Local BusDVI-I inDE-GenFrame BufferUSB ControllerVideo Compression

Editor's Notes

  • #5: Implementation of an FPGA based video capture card. A video input is to be taken from an analog VGA source i.e. PC . The is video is in RGB format and resolution of 1024x768p with color depth of 24 bit i.e. RGB(8:8:8) at 30 fps the data rate comes out to be 566MbpsWhat is 1024x768 in analog?The output is to be send to a target PC through USB port. the maximum data rate of USB which is at hi-speed is 480 Mbps but the throughput cannot go further than 200Mbps.
  • #6: Hence video compression technique had to be applied to reduce the data rate so that data could be sent over USB The data should be captured by the target PC and should be stored there in some standard video format i.e. AVI, 3GP, ASF, WMV, WMA etc The video should be played back through any standard or custom media player. It is being done on FPGA rather than any other ASIC because of its fast parallel processing capability.
  • #8: FPGA Mezzanine ConnectorsThe FMC-Video daughter board (hereafter referred to as FMC -Video) includes severalvideo interfaces. A DVI connector supports both analog and digital video data. SDTVinput is supported through S-Video and composite inputsThe Digital Visual Interface (DVI) input on this board supports the DVI 1.0 specification forcombined single-link digital and analog video.DDC-EDIDThe DVI input supports identification through the use of an Extended DisplayIdentification Data (EDID) structure available through the Display Data Channel (DDC)interface. This consists of an I2C EEPROM that is powered through the DVI connector andaccessible through the connector. The FMC-Video board also includes the ability to accessthis EEPROM internally for programming it,
  • #9: Verilog/VHDL design in ISE integrated simulation environment:First code had to be written in hardware descriptive language Verilog or VHDLAfter that this hdl code is synthesized into registers and combinational logicThis technique is very difficult to use for this project as very high level of HDL programming is required.Xilinx Platform Studios Microblaze soft processor handling the software portion of the design andDifferent HDL cores handling the hardware portion of the design which are integrated with microblaze through PLB. System Generator Mdl Very basic and limited numbers of blocks are availableAccelDSP Matlab code
  • #10: enables you to design a complete embedded processor system (microblaze) for implementation in aXilinx FPGA device. XPS is used primarily for embedded processor hardware system development.Configuration of the microprocessor, peripherals, and the interconnection of thesecomponents, takes place in XPS.All the tools were studied and it was decided that Xilinx platform studios will be the better option because input and output interfaces will be easy to develop in XPS.Since there are in-built IP cores for different interfaces. But then it was realized that the video compression and USB core was not available free of cost so it had to be developed by some other means. Base platform for video capturing was prepared using XPSFirst study of verilog was started but then it was realized that developing a verilog code for video compression required a very high level of programming.A matlab code will be written in matlab for video compression, implemented in AccelDSP, What are the limitations of matlab code to be implemented on AccelDSP?exported to a system generator as a block , simulate and tested through simulink and then passes to XPS as a peripheral core where it will be attached to microblaze through a bus i.e. PLB or FSL.Difference b/w FSL and PLB?
  • #12: The base platform includes the following Processor IP blocks:• MicroBlaze™ 32-bit Soft Microprocessor• Local Memory Bus (LMB)• LMB Block RAM Controller• Block RAM Block Memory• Processor Local Bus (PLB)• XPS Uartlite• Xilinx Platform Studio (XPS) General Purpose Input/Output (GPIO)• XPS Inter-Integrated Circuit (IIC) Controller• XPS System ACE™ Compact Flash Controller• External Multi-port Memory Controller (MPMC)• MDM MicroBlaze Debug Module• Clock Generator• Processor System Reset
  • #13: Video capturing is capturing of frames from analog VGA signals or digital DVI streams. Capturing images means reading data from the VGA or DVI signal and converting this data into a digital image.The Frame Grabber synchronizes itself with the video source to capture images at the resolution and color depth output by the video source or at the maximum color depth and resolutionsupported by the Frame GrabberIIC Programming for the dvi_in PCOREThe dvi_in PCORE supports multiple modes and video resolutions. The IIC programmingis used to set the VSK into the desired mode and resolution. The IIC programming is nothandled by the dvi_in PCORE. The MicroBlaze processor performs the IIC processing byway of the XPS_IIC PCORE.The dvi_in PCORE brings in the input signals from the input chip, registers the signals,and groups the video signals into a unified bus that can be connected to other EDKPCOREs for processing. A bus interface called DVI_VIDEO_OUT has been defined for the dvi_in PCORE outputs
  • #15: The de_gen PCORE generates a Data Enable signal when the video source is analog. TheData Enable signal indicates when active video is present. It does this by analyzing the input HSYNC and VSYNC signals combined with front porch and back porch values. The MicroBlazeprocessor writes the porch values to the block over the PLB interface. The de_gen PCORE is inactive when the video source is DVI, because the Data Enable signal is already generated by the source. Output is a fully digital signal which can be used by other peripherals for further processing.Software registers are used which read the values of Vsync and Hsync along with data and after calculations by microblaze, write the values of front porch and back porch to block over PLB interface.
  • #16: The video capturing design has been prepared in Xilinx Platform studios.
  • #17: USB as its name would suggest is a serial bus. It uses 4 shielded wires of which two are power (+5v & GND). The remaining two are twisted pair differential data signals. It uses a NRZI (Non Return to Zero Invert) encoding scheme to send data with a sync field to synchronize the host and receiver clocksThe Universal Serial Bus is host controlled. There can only be one host per bus. The specification in itself, does not support any form of multimaster arrangement.Up to 127 devices can be connected to any one USB bus at any one given time. Each USB device has a unique address.USB ProtocolsUnlike RS-232 and similar serial interfaces where the format of data being sent is not defined, USB is made up of several layers of protocolsEach USB transaction consists of a Token Packet (Header defining what it expects to follow), an Data Packet, (Containing the payload) and a Status Packet (Used to acknowledge transactions and to provide a means of error correction)
  • #18: EZ-Host has an HPI interface. The HPI interface provides DMAaccess to the EZ-Host internal memory by an external host, plusa bidirectional mailbox register for supporting high level communicationprotocols. This port is designed to be the primaryhigh-speed connection to a host processor. Complete control ofEZ-Host can be accomplished through this interface via anextensible API and communication protocol.
  • #19: Understanding of different languages i.e. Verilog, VHDL , C/C++,MatlabLate arrival of kit.Working on the interfaces of different kit before arrival of the current kit. Spartan 3E 1600.Learning of different tools i.e. XPS, AccelDSP, System Generator.Developing of a USB controller is very difficult because it has a very complex protocol.Developing some software application on PC which could grab and store data from its USB port.Development of a custom media player which could decompress the data according to our compression technique.Integrating an external RAM i.e. DDR2 in our design, because the size of a frame is too large to be stored with in FPGA.
  • #20: A single uncompressed color image or video frame with a medium resolution of 500 x 500 pixels would require 100 s for transmission over an ISDN (Integrated Services Digital Network) link having a capacity of 64 Kbps.
  • #26: Simplest and earliest data compression scheme developed• Sampled images and audio and video data streams oftencontain sequences of identical bytes• by replacing these sequences with the byte pattern to berepeated and providing the number of its occurrence,data canbe reduced substantially
  • #31: AccelDSP converts Matlab code directly into FPGA with (slight modifications) AccelDSP comes with Accel Ware toolkit.Accel Ware contains IP cores for common dsp algorithmsFloating to Fixed Point ConversionAlgorithm development uses floating-point numbers as they represent infinite precisionFloat ( 32 bits ) & Double ( 64 bits )To realize algorithm in hardware floating-point numbers are not practicalConsumes more hardware resourcesNo. of gates, adder, multiplier etcConvert precise floating-point to less precise fixed-point numbers. Process called quantizationDuring algorithm developed, floating-point numbers are often used because theyrepresent infinite precision. When it comes time to realize the algorithm in hardware,floating-point numbers are often not practical. The solution is to convert very precisefloating-point numbers to less precise fixed-point numbers. In MATLAB, this conversionprocess is called quantization and is done using the quantizer and quantize functionSo this process introduces additional noise called quantization noise into the signal. Determining the optimum no of bits requires that we know the dyanamic range of signal at various stages of design