CDL Modules
Data Structures | Enumerations
teletext.h File Reference

Data Structures

struct  t_teletext_timings
 
struct  t_teletext_character
 
struct  t_teletext_rom_access
 
struct  t_teletext_pixels
 

Enumerations

enum  t_teletext_vertical_interpolation {
  tvi_all_scanlines,
  tvi_even_scanlines,
  tvi_odd_scanlines
}
 

Data Structure Documentation

struct t_teletext_timings
Data Fields
bit end_of_scanline

Asserted if end of scanline

bit first_scanline_of_row

Asserted if first scanline of row; not required if module's internal timing is trusted

t_teletext_vertical_interpolation interpolate_vertical

Asserted if vertical interpolation is desired

bit restart_frame

Asserted if restarting the frame (resets all teletext character state)

bit smoothe

Asserted if interpolation is desired

struct t_teletext_character
Data Fields
bit[7] character
bit valid
struct t_teletext_rom_access
Data Fields
bit[7] address
bit select
struct t_teletext_pixels
Data Fields
bit[12] blue
bit[12] green
bit last_scanline

Asserted with a pixel to indicate it is on the last scanline of the row

bit[12] red
bit valid

Asserted to indicate that the red, green and blue are valid; asserted three ticks after a valid character in

Enumeration Type Documentation

Enumerator
tvi_all_scanlines 

For twenty scanline output characters

tvi_even_scanlines 

Only output scanlines 0, 2, 4, ... 18 - for even interlace fields, or for 10-scanline displays

tvi_odd_scanlines 

For twenty scanline output characters, but only outputing scanlines 1, 3, 5, ... 19 - for odd interlace fields

Modules

module teletext ( clock  clk,
input bit  reset_n,
input t_teletext_character  character,
input t_teletext_timings  timings,
output t_teletext_rom_access  rom_access,
input bit  rom_data[45],
output t_teletext_pixels  pixels 
)
Parameters
[in]clkCharacter clock
[in]characterParallel character data in, with valid signal
[in]timingsTimings for the scanline, row, etc
[out]rom_accessTeletext ROM access
[in]rom_dataTeletext ROM data, valid in cycle after rom_access
[out]pixelsOutput pixels, two clock ticks delayed from clk in