机载数字视频记录系统的软、硬件设计
主机访问SZ1510是通过PLX9030进行的。对PLX9030中寄存器的访问通常是按内存方式进行的,其方法是常规段加偏移方式。不过,它的寄存器访问总线宽度有的是16bits(如0x4c),有的是32bits(如0x50),具体可参考有关文献(5)。
3.1 硬件初始化
对系统硬件的初始化主要是初始化PLX9030和SZ1510。PLX9030的初始化比较简单,一是使能中断,向寄存器0x4c中写入0x0041,二是对PLX9030的Local bus进行软复位,即先将寄存器0x50的第30位置1,再将其置0。
SZ1510的初始化过程如下:
(1)向中断使能寄存器写入0x40,以使能Ready中断;
(2)等待SZ1510的Ready中断;
(3)等到Ready中断后,向SZ1510的0x1E寄存器写入0x0A,设置它内部的DSP时钟为94.5MHz;
(4)向0x013寄存器写入0x55,对SZ1510进行软复位;
(5) 向中断使能寄存器0x0C写入0x40?使能Ready中断;
(6) 等候RDY中断;
(7) 待Ready中断后对SAA7113进行初始化;
(8) 对SZ1510进行软复位,即向0x0B寄存器写入0x55,同时向0x0C寄存器写入0x40;
(9) 等待Ready中断,等到后向SZ1510的内部DSP装载二进制代码;
(10)进行SZ1510内部视频压缩核的二进制代码装载。
3.2 SZ1510二进制代码的装载
SZ1510 内部有一段程序空间,可用来装载二进制代码。这段空间以块(Blank)为单位,每块的大小是256字节。
用于视频编码核的二进制代码的装载空间为0x000~0x004和0x00c等六个块,共1.5k字节代码。具体装载的步骤如下:
(1) 向0x2E寄存器写0x01,表示外部的SDRAM是1M×16bits;
(2) 向0x0C寄存器写0x03,使能FIFO Ready 和 End of Data中断;
(3) 向0x11寄存器写0x1,设定工作模式为内部内存写模式;
(4)向0x10写0x20,设定SZ1510?下转第10页?(上接第6页)输出数据的FIFO大小为256字节;
(5)对每块程序空间进行二进制代码装载,具体过程如下:
●向0x08寄存器写0x04,发送开始命令;
●等待Ready中断,清除Ready中断;
●向Data in寄存器0x01写256个字节;
●等待End of Data中断,然后清除中断;
(6)查程序空间的代码是否装载完毕,如没有,回到(5)继续装载。
3.3 SZ1510视频数据的获取
SZ1510内部有一个256字节的FIFO。一旦该FIFO满,即产生一个FIFO Ready中断,以通知主机读取FIFO中的数据,然后通过256次读Data out寄存器来完成数据传输。
4 注意事项
SZ1510芯片的PLL PCB设计
《机载数字视频记录系统的软、硬件设计(第2页)》