由于SZ1510有多种工作模式,根据系统要求,本设计使SZ1510工作在LVE(Live Video Encoding)实时视频编码模式。在这种模式下,SZ1510可从视频解码器获得实时数字视频数据,然后根据MPEG1/M-JPEG进行压缩并传到主机。具体工作过程是:SZ1510对输入到其内部的CCIR-601数字视频流经过视频预处理、自动裁减、场景变化检测、运动估计、运动补偿、离散余弦变换/反离散余弦变换和可变长编码等处理后,再将生成的MPEG-1视频基本流存储于SDRAM中,然后经过输出端口大小为256字节的FIFO缓冲进行数据输出。正常工作时,FIFO每满一次就产生一个FRDY (FIFO读)中断以通知主机读取FIFO中的数据,并由主机从Data_out寄存器读取数据。之后,当SZ1510发出一个EOD(数据结束)中断时,数据传输结束。
由于复位后内部寄存器的内容是未知的,因此,主机必须进行程序代码的装载,以初始化视频编码核的可编程RAM。SZ1510内部的程序空间是以块(Blank)为单位进行划分的,每块的大小是256字节。用于视频编码核的二进制代码的装载空间为0x000~0x004和0x00c六个块,共1.5k字节代码。具体装载时,先由主机向0x2E寄存器写0x01,以表示外部的SDRAM是1M×16bits;接着由主机向0x0C寄存器写0x03,以使能FIFOReady和End of Data中断;然后由主机向0x11寄存器写0x1,以设定工作模式为内部内存写模式;再由主机向0x10写0x20,以设定SZ1510输出数据的FIFO大小为256字节;最后对每块程序空间进行二进制代码装载,其具体过程如下: