CDL Modules
Files
bbc_vidproc

Files

file  bbc_vidproc.cdl
 BBC microcomputer video ULA CDL implementation.
 

Detailed Description

Modules

module bbc_vidproc::bbc_vidproc ( clock  clk_cpu,
clock  clk_2MHz_video,
input bit  reset_n,
input bit  chip_select_n,
input bit  address,
input bit  cpu_data_in[8],
input bit  pixel_data_in[8],
input bit  disen,
input bit  invert_n,
input bit  cursor,
input bit  saa5050_red[6],
input bit  saa5050_green[6],
input bit  saa5050_blue[6],
output bit  crtc_clock_enable,
output bit  red[8],
output bit  green[8],
output bit  blue[8],
output t_bbc_pixels_per_clock  pixels_valid_per_clock 
)
Parameters
[in]clk_cpu2MHz bus clock
[in]clk_2MHz_video2MHz video
[in]reset_nNot present on the chip, but required for the model - power up reset
[in]chip_select_nActive low chip select
[in]addressValid with chip select
[in]cpu_data_inData in (from CPU)
[in]pixel_data_inData in (from SRAM)
[in]disenAsserted by CRTC if black output required (e.g. during sync)
[in]invert_nAsserted (low) if the output should be inverted (post-disen probably)
[in]cursorAsserted for first character of a cursor
[in]saa5050_red3 pixels in at 2MHz, red component, from teletext
[in]saa5050_green3 pixels in at 2MHz, green component, from teletext
[in]saa5050_blue3 pixels out at 2MHz, blue component, from teletext
[out]crtc_clock_enableHigh for 2MHz, toggles for 1MHz - the 'character clock' - used also to determine when the shift register is loaded
[out]red8 pixels out at 2MHz, red component
[out]green8 pixels out at 2MHz, green component
[out]blue8 pixels out at 2MHz, blue component