NTSC Test Signal Generator
A video test pattern generator will be needed when calibrate or test video equipments. To characterize system performance and understand it quantitative, wave form monitor, vector monitor and related video measurement equipments will be required. Some generic patterns, shch as color bars, cross hatch, dots and full field, are also used for home video creation to calibrate video monitors without any measurement equipment.
This kind of test signal generators for personal use are often found as construction kits, however, most of the kits are designed on cheap analog method and the wave form is not accurate, therefore it cannot be used as a standard signal in fact. I designed and built a digital video test signal generator in order to generate accurate reference signals which can be used for calibration and measurment of video montors and home built video equipments.
Basic Design
Supported test patterns
The test signals used for electronics handiworks are required at least, plus some additional test signals are also implemented. However most test signals are used with wave form monitor, vector monitor, spectrum analyzer and others. An oscilloscope will able to be used instead of the wave form monitor in most case.
Color video signal format
This signal generator uses a three channel DAC to generate Composite video signal (CVBS) and S video signal (Y/C separated) at the same time, left one channel is not used in NTSC format. It is assigned for one of the color components of Y/CB/CR video format. This feature was not planned some years ago, but it has been added when started to draw the schematic this year, because NTSC television system might be obsoleted in the near future. The two different video format, component video and NTSC video, work in exclusive.
Specifications
Used LSIs DAC: MB40988 (Fujitsu)
MCU: ATmega161 (ATMEL)
PLD: XC95108 (Xilinx)
Output terminals CVBS: RCA pin jack
Y/C: 4pin Mini-DIN (S1)
Y/CB/CR: 14pin D type half pitch connector (D2)
Output impedance Video out: 75 ohm
ID out: 10 kohm
NTSC output
D1 output (480i) Timing: SMPTE 170M (RS-170A), Setup=0IRE (NTSC-Japan)
CVBS output: Y=714mV, Sync=-286mV, Burst=286mVp-p
Y/C output: Y=714mV, Sync=-286mV, Burst=286mVp-p
Y/CB/CR output: Y=700mV, Sync=-300mV, CB/CR=±350mV
D2 output (480p) Timing: SMPTE 293M
Y/CB/CR output: Y=700mV, Sync=-300mV, CB/CR=±350mV
Sampling 8bit x 3, 28.63636MHz
Power Supply AC100V 50/60Hz, <5w style="font-weight: bold;">
Hardware
Genarating a video signal
To generate any video signal, generic frame memory architecture will be used at most case. All samples of the video frame are stored into the frame memory and they are read in sequence and fed to video DAC. The difference between video signal generator and PC's video system is: which is stored into the frame memory, whole wave form including blanking/sync pattern or only pixel values in visible area.
The samplig frequency is 4 fsc (approx. 14.3MHz) at least. This is the typical value on the NTSC video system. However when use 4fsc for video measurements, an excellent video filter which has very sharp cut off, flat group delay and aperture effect compensation, is requied. This is very expensive and difficult to obtain. I chose 8 fsc (approx. 28.6MHz) for this project in order to decrease requirement to the post filter, like over sampling technic.
Wave form memory
The frame memory size is number of samples per line * number of lines per frame. In this case, memory size of 1820 * 525 = 1M samples is required for the frame memory, and the samples must be read out in transfer rate of 8fsc (cycle time of 35 nsec) continualy. An SDRAM is the best for shch use. However I have some small junk SRAMs (32 Kbyte) used for cashe memory, and I wanted to use these chips for the frame memory under recycle spirit :-)
To store the test pattern into the small memory, any data compression process is required. I had an eye to a point that the video test signal tend to repeats same line patterns. When store only the line patterns used in the frame and select the required line pattern for each line, the memory size and downloading time will able to be reduced drastically. Ten several line banks will do for the most test patterns except for patterns change vertically, such as picture, monoscope and vertical sweep. Luminance component and chrominance component are separated into two channels. The luma signal has many kind of patterns at vertical blanking area, the chroma signal is fliped every line. The effeciency of compression ratio can be improved when separated the NTSC signal into luma and chroma components. Y/C signal can be generated at the same time.
This compression technic can be applied to only NTSC format because the chroma subcarrier at the PAL system, fh*283.75+25 Hz, slips its SC-H phase in rate of 360 degrees per frame, each chroma line patterns in a frame are not the same. SECAM is out of the question. For these video formats, complete frame memory is needed. Don't ask me :-p
Controller
An Atmel ATmega161 is used as controller. It manages user interface, downloading the wave form data to the line memory and selecting wave form for each line under line sequense list. The line patterns are shrinked to 1/2-1/50 based on its monotony of luma and periodicity of chroma, The shrinked data is stored to a serial EEPROM and expanded at downloading, 59 frames (100 Mbytes) are packed into 40 kbytes. Therefore two compression process are applied and attained the total compression ratio of approx. 1/2500.
Analog Outputs
A three channel DAC is used. One channel is assigned for a luma channel, left two channels are for chroma channels. The reason of two DAC channels are assined to chroma is to support Y/CB/CR component output. Of course NTSC mode and component mode cannot be used at the same time. The DAC outputs are filtered, bufferred and then output. CR components placed at inverting input is to compensate frequency response due to aperture effect.
Contorl Panel
Two digits numeric LEDs indicate the frame pattern currently output and one of two video format incicater at the corresponding connector is lit. The frame pattern is selected with a dial and set by clicking the dial. Numeric LEDs blink during the pattern selection.
This kind of test signal generators for personal use are often found as construction kits, however, most of the kits are designed on cheap analog method and the wave form is not accurate, therefore it cannot be used as a standard signal in fact. I designed and built a digital video test signal generator in order to generate accurate reference signals which can be used for calibration and measurment of video montors and home built video equipments.
Basic Design
Supported test patterns
The test signals used for electronics handiworks are required at least, plus some additional test signals are also implemented. However most test signals are used with wave form monitor, vector monitor, spectrum analyzer and others. An oscilloscope will able to be used instead of the wave form monitor in most case.
Color video signal format
This signal generator uses a three channel DAC to generate Composite video signal (CVBS) and S video signal (Y/C separated) at the same time, left one channel is not used in NTSC format. It is assigned for one of the color components of Y/CB/CR video format. This feature was not planned some years ago, but it has been added when started to draw the schematic this year, because NTSC television system might be obsoleted in the near future. The two different video format, component video and NTSC video, work in exclusive.
Specifications
Used LSIs DAC: MB40988 (Fujitsu)
MCU: ATmega161 (ATMEL)
PLD: XC95108 (Xilinx)
Output terminals CVBS: RCA pin jack
Y/C: 4pin Mini-DIN (S1)
Y/CB/CR: 14pin D type half pitch connector (D2)
Output impedance Video out: 75 ohm
ID out: 10 kohm
NTSC output
D1 output (480i) Timing: SMPTE 170M (RS-170A), Setup=0IRE (NTSC-Japan)
CVBS output: Y=714mV, Sync=-286mV, Burst=286mVp-p
Y/C output: Y=714mV, Sync=-286mV, Burst=286mVp-p
Y/CB/CR output: Y=700mV, Sync=-300mV, CB/CR=±350mV
D2 output (480p) Timing: SMPTE 293M
Y/CB/CR output: Y=700mV, Sync=-300mV, CB/CR=±350mV
Sampling 8bit x 3, 28.63636MHz
Power Supply AC100V 50/60Hz, <5w style="font-weight: bold;">
Hardware
Genarating a video signal
To generate any video signal, generic frame memory architecture will be used at most case. All samples of the video frame are stored into the frame memory and they are read in sequence and fed to video DAC. The difference between video signal generator and PC's video system is: which is stored into the frame memory, whole wave form including blanking/sync pattern or only pixel values in visible area.
The samplig frequency is 4 fsc (approx. 14.3MHz) at least. This is the typical value on the NTSC video system. However when use 4fsc for video measurements, an excellent video filter which has very sharp cut off, flat group delay and aperture effect compensation, is requied. This is very expensive and difficult to obtain. I chose 8 fsc (approx. 28.6MHz) for this project in order to decrease requirement to the post filter, like over sampling technic.
Wave form memory
The frame memory size is number of samples per line * number of lines per frame. In this case, memory size of 1820 * 525 = 1M samples is required for the frame memory, and the samples must be read out in transfer rate of 8fsc (cycle time of 35 nsec) continualy. An SDRAM is the best for shch use. However I have some small junk SRAMs (32 Kbyte) used for cashe memory, and I wanted to use these chips for the frame memory under recycle spirit :-)
To store the test pattern into the small memory, any data compression process is required. I had an eye to a point that the video test signal tend to repeats same line patterns. When store only the line patterns used in the frame and select the required line pattern for each line, the memory size and downloading time will able to be reduced drastically. Ten several line banks will do for the most test patterns except for patterns change vertically, such as picture, monoscope and vertical sweep. Luminance component and chrominance component are separated into two channels. The luma signal has many kind of patterns at vertical blanking area, the chroma signal is fliped every line. The effeciency of compression ratio can be improved when separated the NTSC signal into luma and chroma components. Y/C signal can be generated at the same time.
This compression technic can be applied to only NTSC format because the chroma subcarrier at the PAL system, fh*283.75+25 Hz, slips its SC-H phase in rate of 360 degrees per frame, each chroma line patterns in a frame are not the same. SECAM is out of the question. For these video formats, complete frame memory is needed. Don't ask me :-p
Controller
An Atmel ATmega161 is used as controller. It manages user interface, downloading the wave form data to the line memory and selecting wave form for each line under line sequense list. The line patterns are shrinked to 1/2-1/50 based on its monotony of luma and periodicity of chroma, The shrinked data is stored to a serial EEPROM and expanded at downloading, 59 frames (100 Mbytes) are packed into 40 kbytes. Therefore two compression process are applied and attained the total compression ratio of approx. 1/2500.
Analog Outputs
A three channel DAC is used. One channel is assigned for a luma channel, left two channels are for chroma channels. The reason of two DAC channels are assined to chroma is to support Y/CB/CR component output. Of course NTSC mode and component mode cannot be used at the same time. The DAC outputs are filtered, bufferred and then output. CR components placed at inverting input is to compensate frequency response due to aperture effect.
Contorl Panel
Two digits numeric LEDs indicate the frame pattern currently output and one of two video format incicater at the corresponding connector is lit. The frame pattern is selected with a dial and set by clicking the dial. Numeric LEDs blink during the pattern selection.
NTSC Test Signal Generator
Reviewed by haru
on
May 07, 2009
Rating:
No comments