如图5(b),当CEU送来命令DT=01时,即为观测命令。观测作业的格式如:00表示无作业待机、01表示观测指令、10表示CCD标定、JT=11表示自测;mode是当前观测模式标志,001表示爆发模式、010表示活动区模式、100表示宁静模式;Observ_Num是连续观测同一种模式的次数标志。
(1)作业类型寄存器(JOB):标识系统工作内容(作业类型),如CCD标定、观测、自测试等;(2)模式寄存器(MODE):标识观测的模式,爆发模式、活动区模式、宁静模式;(3)观测次数寄存器(OBSN):用于保存一次作业的观测次数;(4)宁静态的观测次数寄存器(RESTN):只用于宁静模式的观测,当为宁静态模式时,用它来标志3min观测的次数;(5)帧计数器(FRMN):用于计数爆发模式、活动区模式及宁静模式下的前24帧图像,以便用于高位清零信号生成和地址高位生成;(6)SW电路控制寄存器(SWCTRL):控制多路开关的切换;(7)reset寄存器(FRST):用于DSP控制FPGA中INT单元的时序逻辑复位,每次观测结束,必须复位一次;(8)清零标识寄存器(ZERO):由DSP根据FRMN的值修改它,以实现高位的清零任务;(9)分量寄存器(COMPO):由DSP根据FRMN的值修改它,以实现高位地址的形成;(10)作业结束寄存器(END):当一个作业结束时,用次寄存器进行标志,以便将程序的PC跳到作业检查入口;(11)数据状态寄存器(DAST):DSP存储区数据状态标识:没有数据、爆发模式的待处理数据、活动区模式的待处理数据、宁静模式的待处理数据、宁静模式处理好数据及待送出数据等。DSP根据数据状态和观测模式,可以进行相应的处理;(12)相关数据状态(CORR):标识相关运算用的数据的状态。
2.3.2 DSP的存储器空间分配
DSP的SYSCON寄存器的15~12位(MSIZE),可以设置以MS0~MS3作为片选信号时,每个分组的空间大小。其公式为:MSIZE=log2(块大小)-13;取每个块的大小为16MB,因此MSIZE=1011。
·片内空间:0000,0000H~0007,FFFFH;
·MS0——数据空间:0040,0000H~13F,FFFFH;数据是倒序放置的,最后一个单元放第一个数据;其中:
SQa:40,0000~5F,FFFF SQb:60,0000~7F,FFFF
SUa:80,0000~9F,FFFF SUb:a0,0000~bF,FFFF
SVa:c0,0000~dF,FFFF SVb:e0,0000~fF,FFFF
Rest2m:100,0000~11F,FFFF unused:120,0000~13F,FFFF
·MS1——SRAM空间:140,0000H~23F,FFFFH;
·MS2——CCD参数:240,0000H~33F,FFFFH;放置暗流、偏置和平场图像3帧2048×1024图像;
·MS3——未使用:340,0000H~43F,FFFFH;
·未分组空间:4040,0000~FFFF,FFFF所有存储器映射的寄存器。
2.3.3 DSP的软件结构
DSP的主程序框架如图6。系统初始化后,进行作业查询,根据查询结果,进行相应的处理任务(CCD标定、自测试、观测)。图6中仅以观测作业为例进行说明。进入观测后,首先由DSP对积分单元作相应的设置,设置完成后,积分器开始单独地积分工作;DSP接着查询本次观测是否结束,若结束回到作业查询,否则判断存储器中数据的状态,根据数据状态,进行相应的处理;处理就绪的数据根据FLAG0的标志,可以向压缩单元传送数据。三种模式下的图像处理程序流图如图7,图7中ccdst( )是图像辐射标定子程序,format()是格式化子程序,内插运算采用线性内插方法,相关运算采用FFT和逆FFT方法。 |