SPRUJ28E November 2021 – September 2024 AM68 , AM68A , TDA4AL-Q1 , TDA4VE-Q1 , TDA4VL-Q1
The edge enhancer filter works on a 5 × 5 HPF filter (M) with programmable coefficients. The filter is symmetric as such only 3 × 3 coefficients are programmable.
Here, M is a 5 × 5 matrix with programmable coefficients specified by VISS_FCP_EE_YEE_COEF_Ri_Cj (i and j are 0, 1, or 2). The shift value (shfHPF) is specified by VISS_FCP_EE_YEE_SHIFT[5-0] YEE_SHIFT.
The HPF value is shrink by a threshold value, thresholdHPF (u6 = 10), specified by VISS_FCP_EE_YEE_E_THR register, and clipped to signed 14 bits to get the index for the LUT. The MSB 12 bits of the index are used for the LUT address (4k locations) whereas the LSB 2 bits acts as weight to the linear interpolation logic.
The edge enhancement intensity is looked up from the LUT, where A is the MSB 12 bits of the index.
The 5 × 5 HPF filter is not fully programmable, rather only the top left quadrant is programmable coefficients. The rest of the kernel is symmetric along the y and the x axis.
Figure 6-118 below depicts how the kernels are implemented, with the kernel locations marked inside the boxes. The green color shows the kernels that are programmable.
The border conditions are handled by data duplication on each of the borders when the desired pixel go out of range.
The output of the LUT is the final output of the edge enhancer filter.