RGB 转 YUV 算法
`timescale 1ns / 1ps
/*
RGB 转 YUV 算法
计算公式:
Y = 0.183R + 0.614G + 0.062B + 16;
CB = -0.101R - 0.338G + 0.439B + 128;
CR = 0.439R - 0.399G - 0.040B + 128;
其中,时序在计算过程中完全没有用到
输入到输出有三个 clock 的时延。
第一级流水线计算所有乘法;
第二级流水线计算所有加法,把正的和负的分开进行加法;
第三级流水线计算最终的和,若为负数取 0;
*/
module rgb_to_ycbcr(
input clk,
input [7:0] i_r_8b,
input [7:0] i_g_8b,
input [7:0] i_b_8b,
input i_h_sync,
input i_v_sync,
input i_data_en,
output [7:0] o_y_8b,
output [7:0] o_cb_8b,
output [7:0] o_cr_8b,
output o_h_sync,