SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Videodecoding:SDIinterfaceimplementation&
H.264/AVCbitstreamdecoderhardwarearchitecturedesignand
implementation
Student Name: Mr. Vicheka PHOR
Department: CAMSI
School supervisor: Mr. Jacques JORDA
Advisor: Mr. Phillip WEISSFLOCH
Academic year: 2013-2014
05/09/2014
I. Objectives
II. SDI video interface implementation
II.1 Tri-Rate SDI PHY IP Pass-through sample design
II.2 SDI video interface implementation on LT-125 board
III. H.264/AVC bitstream decoder hardware architecture design and
implementation
III.1 H.264/AVC data stream structure
III.2 H.264/AVC bitstream decoder hardware architecture
III.3 FLC, Exp-Golomb, CAVLD decoding
III.4 Development progress
III.5 Tools used in the FPGA development flow design
III.6 Simulation and results
IV. Conclusion
2
OUTLINE
3
 SDI (Serial Digital Interface) video interface implementation:
 implementation of a Lattice tri-rate SDI PHY IP core on a Lattice FPGA
of the Enciris LT-125 board
 H.264/AVC bitstream decoder hardware architecture design and
implementation
I. Objectives
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
4
 Objective:
 3G/HD/SD SDI video input functionality on LT-125 board
 What was done:
 Use of Lattice tri-rate SDI PHY IP core
 Study of the Lattice tri-rate SDI PHY IP Pass-through demo
 Adding of several blocks: Sync-signals, sdi_422to444, and YCrCb to
RGB converter block
II. SDI video interface implementation
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
5
II.1 Tri-Rate SDI PHY IP Pass-through sample design
Number of registers: 834 / 71952 (1 %)
Number of SLICEs: 896 / 46008 (2 %)
Number of LUT4s: 1425 / 92016 (2 %)
Lattice FPGA_LFE3-95E-7FN1156CES
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
6
II.2 SDI video interface implementation
Lattice FPGA_LFE3-150EA-6FN1156C
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
7
III. H.264/AVC bitstream decoder hardware architecture
design and implementation
 Objective:
 develop a custom H.264 bitstream decoder for Enciris encoder
(high bit rate: 50 Mbit/s; 1080p30)
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
8
III.1 H.264/AVC data stream structure
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
9
III.2 H.264/AVC bitstream decoder hardware architecture
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
10
III.3 FLC, Exp-Golomb, CAVLD decoding
FLC (5 bits)
code_num Codeword
0 00000
1 00001
2 00010
3 00011
4 00100
5 00101
6 00110
7 00111
8 01000
... ...
CAVLC
Exp-Golomb
code_num Codeword
0 1
1 010
2 011
3 00100
4 00101
5 00110
6 00111
7 0001000
8 0001001
... ...
000010001110010111101101
16 coefficients  24 bits
000010001110010111101101
24 bits 16 coefficients CAVLD
CAVLC/CAVCD :
different sets of variable-length
codes are chosen depending on
the statistics of recently-coded
coefficients
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
11
III.4 Development progress
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
12
III.5 Tools used in the FPGA development flow design
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
13
III.6 Simulation and results
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
14
Example of a video H.264 test file used in the simulations in ActiveHDL
III.6 Simulation and results
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
15
III.6 Simulation and results
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
16
Trace file created by
JM ITU-T C codeSimulation results for SPS layer in Active HDL
III.6 Simulation and results
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
17
Trace file created by
AtiveHDL
Trace file created by
JM ITU-T C code
III.6 Simulation and results
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
18
Number of registers: 468 / 115296 (0 %)
Number of SLICEs: 535 / 74520 (1 %)
Number of LUT4s: 852 / 149040 (1 %)
Lattice FPGA_LFE3-150EA-6FN1156C
Design can run on the maximum
frequency of 198.334 MHz with
the clock constraint of 150 MHz
III.6 Simulation and results
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
19
IV. Conclusion
 Accomplished the first task on the implementation of a Lattice tri-rate SDI
PHY IP core on the Enciris LT-125 board, provided an SMPTE 3G/HD/SD
SDI video input functionality on the board.
 Because of lacking time and because of the complexity of CAVLD
decoding, we can at the present manage to design the bitstream decoder
which can decode the SPS, PPS, Slice header, and Macroblock header layer
of the bitstream and which can run on the Lattice FPGA device - LFE3-
150EA-6FN1156C with the maximum frequency of 198.334 MHz where
the clock constraint is 150 MHz.
I II III IV
II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
THANKS FOR YOUR ATTENTION
ANNEXE
SERDES
IPexpress - SERDES
IPexpress - Tri-rate SDI IP Core
YCbCr 422 vs 444 sample
422 444
 : Y
 : Cb
 : Cr
RGB to YCbCr
Flow of bitstream implementation
Introduction to FPGA Hardware Concepts (FPGA Module)
LUT
A lookup table (LUT) is used to transform the input data into a more desirable output format.
A lookup table (LUT) is a fast way to realize a complex function in digital logic. The address is
the function input, and the value at that address is the function output. The advantage is that
computing the function only takes a single memory lookup regardless of the complexity of the
function, so is very fast. The disadvantage is that it takes memory, especially if you need high
resolution for the function input.
For example, SIN is often implemented as a table lookup. If 10 bit angles are good enough
resolution, then the whole function can be implemented as a lookup table with 1024 entries.
(Actually in the case of SIN, only 1/4 cycle is stored then negated or indexed backwards
depending on the actual quadrant, but that is a aside specific to SIN).
The function input can also be a combination of different input variables with the result
expressed as a single integer. For example, a 4 x 4 bit multiply can be implemented as a lookup
table of 256 values. The 8-bit table address can be the two 4-bit input values concatenated.
The look-up-table (LUT)
• Building the PFU from the inside out…
– Nearly all FPGAs are based on a Look-Up-Table plus Register. Most are a LUT4. Aka
LUT4+REG.
– A 4-input LUT is just a 16-bit ROM, with 4 ‘address’ bits (ABCD) and a ‘data’ bit (F).
– By programming the ROM, any 4 input logic functions can be formed.
• Or it can be a simple ROM.
q0
q2
q1
q3
LUTMemory
q4
q6
q5
q7
q8
q10
q9
q11
q12
q14
q13
q15
A B
C
D
F
(‘q’ values are programmable
SRAM memory bits that are
determined through the design
synthesis process)
Building ‘Slices’
Each Slice consists of:
 Two 4-Input LUTs
 Two Registers
 Arithmetic Logic circuits
 Circuitry to support simple
RAM mode
Slice Inputs:
 LUT Inputs: A, B, C, D
 Multi-Purpose Inputs: M
 Fast Carry Input: FCI
 Register Control Inputs:
CLK, CE, LSR
Slice Outputs:
 LUT Outputs: F
 Register Outputs: Q
 Wide Function Outputs:
OFX
 Fast Carry Output: FCO
Pairs of LUT+REG are grouped together with extra RAM/Ripple logic to form SLICEs.
H.264/AVC bitstream decoder hardware architecture
(0) nC
CAVLD decoding
Node-Leaf method algorithm
CAVLD decoding
(0) nC
Step (1) to (6)
Step (1) to (6)
File .264 Analyse
File .264 Analyse
Lattice FPGA LFE3-150EA-6FN1156C
Simulation results of block SPS in ActiveHDL

Weitere ähnliche Inhalte

Was ist angesagt?

h.264 video compression standard.
h.264 video compression standard.h.264 video compression standard.
h.264 video compression standard.
Videoguy
 

Was ist angesagt? (20)

CodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introductionCodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
 
Designing an 4K/UHD1 HDR OB Truck as 12G-SDI or IP-based
Designing an 4K/UHD1 HDR OB Truck as 12G-SDI or IP-basedDesigning an 4K/UHD1 HDR OB Truck as 12G-SDI or IP-based
Designing an 4K/UHD1 HDR OB Truck as 12G-SDI or IP-based
 
A short history of video coding
A short history of video codingA short history of video coding
A short history of video coding
 
h.264 video compression standard.
h.264 video compression standard.h.264 video compression standard.
h.264 video compression standard.
 
NAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesNAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutes
 
HEVC Definitions and high-level syntax
HEVC Definitions and high-level syntaxHEVC Definitions and high-level syntax
HEVC Definitions and high-level syntax
 
H.263 Video Codec
H.263 Video CodecH.263 Video Codec
H.263 Video Codec
 
Tech talk with lampro mellon an open source solution for accelerating verific...
Tech talk with lampro mellon an open source solution for accelerating verific...Tech talk with lampro mellon an open source solution for accelerating verific...
Tech talk with lampro mellon an open source solution for accelerating verific...
 
Ice
IceIce
Ice
 
Plug and Play Using Prefix Delegation Mechanism
Plug and Play Using Prefix Delegation MechanismPlug and Play Using Prefix Delegation Mechanism
Plug and Play Using Prefix Delegation Mechanism
 
Klessydra-T: Designing Configurable Vector Co-Processors for Multi-Threaded E...
Klessydra-T: Designing Configurable Vector Co-Processors for Multi-Threaded E...Klessydra-T: Designing Configurable Vector Co-Processors for Multi-Threaded E...
Klessydra-T: Designing Configurable Vector Co-Processors for Multi-Threaded E...
 
Reverse Engineering of Rocket Chip
Reverse Engineering of Rocket ChipReverse Engineering of Rocket Chip
Reverse Engineering of Rocket Chip
 
Bitmovin AV1/VVC Presentation_Streaming Media East by Christian Feldmann
Bitmovin AV1/VVC Presentation_Streaming Media East by Christian FeldmannBitmovin AV1/VVC Presentation_Streaming Media East by Christian Feldmann
Bitmovin AV1/VVC Presentation_Streaming Media East by Christian Feldmann
 
Andes RISC-V processor solutions
Andes RISC-V processor solutionsAndes RISC-V processor solutions
Andes RISC-V processor solutions
 
Video Compression, Part 3-Section 2, Some Standard Video Codecs
Video Compression, Part 3-Section 2, Some Standard Video CodecsVideo Compression, Part 3-Section 2, Some Standard Video Codecs
Video Compression, Part 3-Section 2, Some Standard Video Codecs
 
An Overview of High Efficiency Video Codec HEVC (H.265)
An Overview of High Efficiency Video Codec HEVC (H.265)An Overview of High Efficiency Video Codec HEVC (H.265)
An Overview of High Efficiency Video Codec HEVC (H.265)
 
NAT64 en LACNIC 18: Experimentos con NAT64 sin estado
NAT64 en LACNIC 18: Experimentos con NAT64 sin estadoNAT64 en LACNIC 18: Experimentos con NAT64 sin estado
NAT64 en LACNIC 18: Experimentos con NAT64 sin estado
 
SDI to IP 2110 Transition Part 2
SDI to IP 2110 Transition Part 2SDI to IP 2110 Transition Part 2
SDI to IP 2110 Transition Part 2
 
DPDK Summit 2015 - Intel - Keith Wiles
DPDK Summit 2015 - Intel - Keith WilesDPDK Summit 2015 - Intel - Keith Wiles
DPDK Summit 2015 - Intel - Keith Wiles
 
Cisco usNIC: how it works, how it is used in Open MPI
Cisco usNIC: how it works, how it is used in Open MPICisco usNIC: how it works, how it is used in Open MPI
Cisco usNIC: how it works, how it is used in Open MPI
 

Ähnlich wie Video decoding: SDI interface implementation &H.264/AVC bitstreamdecoder hardware architecture design and implementation

Resume_DigitalIC_1
Resume_DigitalIC_1Resume_DigitalIC_1
Resume_DigitalIC_1
Eunice Chen
 
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linaro
 
FPGA in outer space seminar report
FPGA in outer space seminar reportFPGA in outer space seminar report
FPGA in outer space seminar report
rahul kumar verma
 

Ähnlich wie Video decoding: SDI interface implementation &H.264/AVC bitstreamdecoder hardware architecture design and implementation (20)

NetFlow Monitoring for Cyber Threat Defense
NetFlow Monitoring for Cyber Threat DefenseNetFlow Monitoring for Cyber Threat Defense
NetFlow Monitoring for Cyber Threat Defense
 
Resume_DigitalIC_1
Resume_DigitalIC_1Resume_DigitalIC_1
Resume_DigitalIC_1
 
06 tk 1073 network layer
06   tk 1073 network layer06   tk 1073 network layer
06 tk 1073 network layer
 
Upgrade Your Broadcast System to PCIe Gen2
Upgrade Your Broadcast System to PCIe Gen2Upgrade Your Broadcast System to PCIe Gen2
Upgrade Your Broadcast System to PCIe Gen2
 
Getting started with IPv6
Getting started with IPv6Getting started with IPv6
Getting started with IPv6
 
2014/09/02 Cisco UCS HPC @ ANL
2014/09/02 Cisco UCS HPC @ ANL2014/09/02 Cisco UCS HPC @ ANL
2014/09/02 Cisco UCS HPC @ ANL
 
Altera Cyclone IV FPGA Customer Presentation
Altera Cyclone IV FPGA Customer PresentationAltera Cyclone IV FPGA Customer Presentation
Altera Cyclone IV FPGA Customer Presentation
 
How to configure flexible netflow export on cisco routers
How to configure flexible netflow export on cisco routersHow to configure flexible netflow export on cisco routers
How to configure flexible netflow export on cisco routers
 
Introduction to EDA Tools
Introduction to EDA ToolsIntroduction to EDA Tools
Introduction to EDA Tools
 
Ip interfaces by faststream technologies
Ip interfaces by faststream technologiesIp interfaces by faststream technologies
Ip interfaces by faststream technologies
 
Krupesh_Resume
Krupesh_ResumeKrupesh_Resume
Krupesh_Resume
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
 
Module 06 (1).pdf
Module 06 (1).pdfModule 06 (1).pdf
Module 06 (1).pdf
 
Asterisk Complete Training
Asterisk Complete TrainingAsterisk Complete Training
Asterisk Complete Training
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SPKrzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
 
PLNOG 13: P. Kupisiewicz, O. Pelerin: Make IOS-XE Troubleshooting Easy – Pack...
PLNOG 13: P. Kupisiewicz, O. Pelerin: Make IOS-XE Troubleshooting Easy – Pack...PLNOG 13: P. Kupisiewicz, O. Pelerin: Make IOS-XE Troubleshooting Easy – Pack...
PLNOG 13: P. Kupisiewicz, O. Pelerin: Make IOS-XE Troubleshooting Easy – Pack...
 
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
 
FPGA in outer space seminar report
FPGA in outer space seminar reportFPGA in outer space seminar report
FPGA in outer space seminar report
 
FROM FPGA TO ASIC IMPLEMENTATION OF AN OPENRISC BASED SOC FOR VOIP APPLICATION
FROM FPGA TO ASIC IMPLEMENTATION OF AN OPENRISC BASED SOC FOR VOIP APPLICATIONFROM FPGA TO ASIC IMPLEMENTATION OF AN OPENRISC BASED SOC FOR VOIP APPLICATION
FROM FPGA TO ASIC IMPLEMENTATION OF AN OPENRISC BASED SOC FOR VOIP APPLICATION
 

Kürzlich hochgeladen

CHEAP Call Girls in Mayapuri (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Mayapuri  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Mayapuri  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Mayapuri (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
amitlee9823
 
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
amitlee9823
 
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
motiram463
 
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
drmarathore
 
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Kürzlich hochgeladen (20)

Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
 
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
 
CHEAP Call Girls in Mayapuri (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Mayapuri  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Mayapuri  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Mayapuri (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...
 
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
 
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Dharwad 7001035870 Whatsapp Number, 24/07 Booking
 
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
(👉Ridhima)👉VIP Model Call Girls Mulund ( Mumbai) Call ON 9967824496 Starting ...
 
Top Rated Pune Call Girls Ravet ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Ravet ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Ravet ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Ravet ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
 
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
Abort pregnancy in research centre+966_505195917 abortion pills in Kuwait cyt...
 
Top Rated Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
Top Rated  Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...Top Rated  Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
Top Rated Pune Call Girls Shirwal ⟟ 6297143586 ⟟ Call Me For Genuine Sex Ser...
 
Call Girls in Vashi Escorts Services - 7738631006
Call Girls in Vashi Escorts Services - 7738631006Call Girls in Vashi Escorts Services - 7738631006
Call Girls in Vashi Escorts Services - 7738631006
 
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
 
Book Paid Lohegaon Call Girls Pune 8250192130Low Budget Full Independent High...
Book Paid Lohegaon Call Girls Pune 8250192130Low Budget Full Independent High...Book Paid Lohegaon Call Girls Pune 8250192130Low Budget Full Independent High...
Book Paid Lohegaon Call Girls Pune 8250192130Low Budget Full Independent High...
 
Develop Keyboard Skill.pptx er power point
Develop Keyboard Skill.pptx er power pointDevelop Keyboard Skill.pptx er power point
Develop Keyboard Skill.pptx er power point
 
Call Girls Kothrud Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Kothrud Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Kothrud Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Kothrud Call Me 7737669865 Budget Friendly No Advance Booking
 
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
 
Introduction-to-4x4-SRAM-Memory-Block.pptx
Introduction-to-4x4-SRAM-Memory-Block.pptxIntroduction-to-4x4-SRAM-Memory-Block.pptx
Introduction-to-4x4-SRAM-Memory-Block.pptx
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
Call Now ≽ 9953056974 ≼🔝 Call Girls In Yusuf Sarai ≼🔝 Delhi door step delevry≼🔝
 

Video decoding: SDI interface implementation &H.264/AVC bitstreamdecoder hardware architecture design and implementation

  • 1. Videodecoding:SDIinterfaceimplementation& H.264/AVCbitstreamdecoderhardwarearchitecturedesignand implementation Student Name: Mr. Vicheka PHOR Department: CAMSI School supervisor: Mr. Jacques JORDA Advisor: Mr. Phillip WEISSFLOCH Academic year: 2013-2014 05/09/2014
  • 2. I. Objectives II. SDI video interface implementation II.1 Tri-Rate SDI PHY IP Pass-through sample design II.2 SDI video interface implementation on LT-125 board III. H.264/AVC bitstream decoder hardware architecture design and implementation III.1 H.264/AVC data stream structure III.2 H.264/AVC bitstream decoder hardware architecture III.3 FLC, Exp-Golomb, CAVLD decoding III.4 Development progress III.5 Tools used in the FPGA development flow design III.6 Simulation and results IV. Conclusion 2 OUTLINE
  • 3. 3  SDI (Serial Digital Interface) video interface implementation:  implementation of a Lattice tri-rate SDI PHY IP core on a Lattice FPGA of the Enciris LT-125 board  H.264/AVC bitstream decoder hardware architecture design and implementation I. Objectives I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 4. 4  Objective:  3G/HD/SD SDI video input functionality on LT-125 board  What was done:  Use of Lattice tri-rate SDI PHY IP core  Study of the Lattice tri-rate SDI PHY IP Pass-through demo  Adding of several blocks: Sync-signals, sdi_422to444, and YCrCb to RGB converter block II. SDI video interface implementation I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 5. 5 II.1 Tri-Rate SDI PHY IP Pass-through sample design Number of registers: 834 / 71952 (1 %) Number of SLICEs: 896 / 46008 (2 %) Number of LUT4s: 1425 / 92016 (2 %) Lattice FPGA_LFE3-95E-7FN1156CES I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 6. 6 II.2 SDI video interface implementation Lattice FPGA_LFE3-150EA-6FN1156C I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 7. 7 III. H.264/AVC bitstream decoder hardware architecture design and implementation  Objective:  develop a custom H.264 bitstream decoder for Enciris encoder (high bit rate: 50 Mbit/s; 1080p30) I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 8. 8 III.1 H.264/AVC data stream structure I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 9. 9 III.2 H.264/AVC bitstream decoder hardware architecture I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 10. 10 III.3 FLC, Exp-Golomb, CAVLD decoding FLC (5 bits) code_num Codeword 0 00000 1 00001 2 00010 3 00011 4 00100 5 00101 6 00110 7 00111 8 01000 ... ... CAVLC Exp-Golomb code_num Codeword 0 1 1 010 2 011 3 00100 4 00101 5 00110 6 00111 7 0001000 8 0001001 ... ... 000010001110010111101101 16 coefficients  24 bits 000010001110010111101101 24 bits 16 coefficients CAVLD CAVLC/CAVCD : different sets of variable-length codes are chosen depending on the statistics of recently-coded coefficients I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 11. 11 III.4 Development progress I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 12. 12 III.5 Tools used in the FPGA development flow design I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 13. 13 III.6 Simulation and results I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 14. 14 Example of a video H.264 test file used in the simulations in ActiveHDL III.6 Simulation and results I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 15. 15 III.6 Simulation and results I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 16. 16 Trace file created by JM ITU-T C codeSimulation results for SPS layer in Active HDL III.6 Simulation and results I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 17. 17 Trace file created by AtiveHDL Trace file created by JM ITU-T C code III.6 Simulation and results I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 18. 18 Number of registers: 468 / 115296 (0 %) Number of SLICEs: 535 / 74520 (1 %) Number of LUT4s: 852 / 149040 (1 %) Lattice FPGA_LFE3-150EA-6FN1156C Design can run on the maximum frequency of 198.334 MHz with the clock constraint of 150 MHz III.6 Simulation and results I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 19. 19 IV. Conclusion  Accomplished the first task on the implementation of a Lattice tri-rate SDI PHY IP core on the Enciris LT-125 board, provided an SMPTE 3G/HD/SD SDI video input functionality on the board.  Because of lacking time and because of the complexity of CAVLD decoding, we can at the present manage to design the bitstream decoder which can decode the SPS, PPS, Slice header, and Macroblock header layer of the bitstream and which can run on the Lattice FPGA device - LFE3- 150EA-6FN1156C with the maximum frequency of 198.334 MHz where the clock constraint is 150 MHz. I II III IV II.1 II.2 III.1 III.2 III.3 III.4 III.5 III.6
  • 20. THANKS FOR YOUR ATTENTION
  • 24. IPexpress - Tri-rate SDI IP Core
  • 25. YCbCr 422 vs 444 sample 422 444  : Y  : Cb  : Cr
  • 27. Flow of bitstream implementation
  • 28. Introduction to FPGA Hardware Concepts (FPGA Module)
  • 29. LUT A lookup table (LUT) is used to transform the input data into a more desirable output format. A lookup table (LUT) is a fast way to realize a complex function in digital logic. The address is the function input, and the value at that address is the function output. The advantage is that computing the function only takes a single memory lookup regardless of the complexity of the function, so is very fast. The disadvantage is that it takes memory, especially if you need high resolution for the function input. For example, SIN is often implemented as a table lookup. If 10 bit angles are good enough resolution, then the whole function can be implemented as a lookup table with 1024 entries. (Actually in the case of SIN, only 1/4 cycle is stored then negated or indexed backwards depending on the actual quadrant, but that is a aside specific to SIN). The function input can also be a combination of different input variables with the result expressed as a single integer. For example, a 4 x 4 bit multiply can be implemented as a lookup table of 256 values. The 8-bit table address can be the two 4-bit input values concatenated.
  • 30. The look-up-table (LUT) • Building the PFU from the inside out… – Nearly all FPGAs are based on a Look-Up-Table plus Register. Most are a LUT4. Aka LUT4+REG. – A 4-input LUT is just a 16-bit ROM, with 4 ‘address’ bits (ABCD) and a ‘data’ bit (F). – By programming the ROM, any 4 input logic functions can be formed. • Or it can be a simple ROM. q0 q2 q1 q3 LUTMemory q4 q6 q5 q7 q8 q10 q9 q11 q12 q14 q13 q15 A B C D F (‘q’ values are programmable SRAM memory bits that are determined through the design synthesis process)
  • 31. Building ‘Slices’ Each Slice consists of:  Two 4-Input LUTs  Two Registers  Arithmetic Logic circuits  Circuitry to support simple RAM mode Slice Inputs:  LUT Inputs: A, B, C, D  Multi-Purpose Inputs: M  Fast Carry Input: FCI  Register Control Inputs: CLK, CE, LSR Slice Outputs:  LUT Outputs: F  Register Outputs: Q  Wide Function Outputs: OFX  Fast Carry Output: FCO Pairs of LUT+REG are grouped together with extra RAM/Ripple logic to form SLICEs.
  • 32. H.264/AVC bitstream decoder hardware architecture
  • 37. Step (1) to (6)
  • 38. Step (1) to (6)
  • 42. Simulation results of block SPS in ActiveHDL