tag 标签: sfr

相关博文
  • 热度 7
    2022-9-25 20:48
    9863 次阅读|
    0 个评论
    提到摄像头测试,很多人都会给出不同的方法,行业规范的ISO12233最为常用,通过实际Chart在对应焦距拍出的图像,我们能精确的分辨出整个模组在水平或者竖直方向的分辨率,而且对于摄像头而言也可以通过计算像高来判定各个场的S方向和T方向的分辨率(不一定用如下图,一般各家会特殊定制自己产品的Chart)。 这不得不提到一个概念,线对数----lp/mm,每1mm长度内有多少线对。理解起来就是,判断摄像头的清晰程度就看其能分辨出最小的尺度,其实可以和人眼的视力表类比,我们看很小的E来分辨开口方向,其实就是分辨三根横线的间距最小能被看清。 回归到MTF概念上来,总结为: 对于非相干系统,某个视场点的PSF强度的傅里叶变化为OTF,OTF取模为MTF。(PSF就是点扩散函数)。 我们可以对图像某个场进行分析,其PSF就像是一座小山,对其做二维FFT再取模后归一化,就可以沿着顶部到底部会有X和Y两个方向的数值,所以可以扩展到XY平面360度方向都会有不同的数值,而工程上简化一些就取了两个方向(子午和弧矢)的数值,并且沿着山脊逐一读出MTF值。 也就是说MTF就是两个方向S和T方向的PSF扩散函数的取模值。 我们知道PSF的算法有FFT和Huygens两种,后者慢但更准。这两种都可以认为是衍射算法。而Geometric MTF的意思是,认为当系统像差较大的情况下,衍射效应带来的PSF会被几何像差覆盖掉,可以认为几何光点列图就是PSF。 对于工程而言,MTF算起来还是比较慢的,所以我们引入了SFR计算方法, 我们通过不断调整正弦标靶的空间频率,就可以把SFR曲线上的各个点都测算出来。 SFR就是工程用简化版本的MTF计算方式。后来总结总结要另开一贴,专门记录下SFR的计算方式。
  • 热度 13
    2011-5-9 16:22
    2219 次阅读|
    0 个评论
    国产FPGA试用手记续(外扩SFR使用)            题记:本以为这个国产FPGA的就此夭折,没想到权衡之后,在性能打些折扣的情况下还是重新捡起来了。从刚接触这个器件的时候特权同学就很关心它的硬核可扩展性,Avalone接口用上手了,当然很希望这个51硬核也能够提供类似的强大扩展接口。不过话说回来,毕竟是个8位的核,再强大也不到哪去,但在花了点心思琢磨了这个小玩意的扩展方式后,多少觉得还是有点花头的。           SFR,即特殊功能寄存器。SFR是8051单片机内部用于访问控制各种片上集成外设的主要寄存器,如常见的IO口(P0/P1/P2/P3)读写、IO中断配置、定时器配置、串口外设等。因此,对一般用户而言,玩转8051就是玩转SFR的过程。一般的单芯片8051单片机的SFR接口不对外开放,除了部分寄存器内部使用外,余下地址空间保留。而Astro器件的这颗8051硬核将空置的SFR地址空间开放给用户,提供了专门的对外接口时序。           特权同学将关于Astro器件SFR相关的特性整理如下: ●  可寻址空间0x80~0xff。 ●  部分地址空间已被8051内部使用。 ●  16个地址空间(能被8整除的地址如0x80、0x88、0x90、…0xf8等)可位寻址。 ●  最多支持49个8051核外可用SFRs,除核内已占用的地址,余下地址空间均为用户可用的核外SFRs。 ●  外部SFR接口含有等待状态寄存器(主要由sfack信号控制实现),允许8051内核与较慢的外设连接。 ●  外部SFR读写时序如图1所示。 图1            为了简单的评估8051硬核的SFR扩展功能的性能,特权同学做了一些测试。   测试1:SFR可用性测试          简单的用逻辑模拟一个SFR可访问的外部寄存器,该寄存器只使用低四位,对应控制4个外部LED的亮暗。以此验证核外SFR的可用性。            对于8051硬核而言,如果开启核外SFR功能,提供了如下接口(与前面给出的波形图对应): // External Special Function Registers interface output sfrdatao;   //8051写数据 output sfraddr;   //8051访问地址 input sfrdatai;       //8051读数据 output sfrwe;       //8051写SFR使能信号,高电平有效 output sfroe;       //8051读SFR使能信号,高电平有效          SFR从机的逻辑接口代码如下: reg ledr;  //LED指示灯对应的SFR   always @(posedge clk_50m or negedge rst_n) begin     if(!rst_n) ledr = 4'h0;     else if(sfrwe (sfraddr == 7'h78)) ledr = sfrdatao ; //8051往地址为0xf8的SFR写数据,将数据锁存到ledr寄存器中 end   assign {led3,led2,led1,led0} = ledr;          软件编程时,需要在工程中做一个新的sfr定义: //自定义SFR sfr LED = 0xf8;   //低4bit控制LED亮暗          编写函数实现SFR控制的流水灯: void main(void) {     while(1)     {         LED = 0x1;         delay(500);         LED = 0x2;         delay(500);         LED = 0x4;         delay(500);         LED = 0x8;         delay(500);     } }            实验结果证明功能可行,达到预期。这个SFR功能的使用还是蛮简单的。            为了验证写功能,基本思路是想针对板载4个按键做一个SFR寄存器,专供8051内核读取当前按键值,然后把该值分别赋给4个LED(在前面测试的基础上执行)。添加的逻辑代码: reg keyr;   always @(posedge clk_50m or negedge rst_n) begin     if(!rst_n) keyr = 4'hz;     else if(sfroe (sfraddr == 7'h79)) keyr = {key4,key3,key2,key1}; //8051从地址为0xf9的SFR读出数据     else keyr = 4'hz; end   assign sfrdatai = keyr;            读时序这个时钟clkcpu应该是8051工作的指令时钟,即8051外部输入时钟的12分频。这个时序图好像不太准确,实际读或写选通高脉冲不会保持一整个指令周期。特权同学测试下来发现用50MHz时钟做从接口,早一个时钟或是晚一个时钟周期送数据都无法使8051读走数据,只有上面给出的代码下时钟送数据才能正常保证8051锁存数据。也就是说,数据必须在读选通期间都保持稳定,早一个时钟周期撤销或是晚一个时钟周期撤销都不行。因此,为了延长数据有效长度,改进如下: reg keyr; reg keyrden;   always @(posedge clk_50m or negedge rst_n) begin     if(!rst_n) keyrden = 1'b0;     else if(sfroe (sfraddr == 7'h79)) keyrden = 1'b1;     else keyrden = 1'b0; end   always @(posedge clk_50m or negedge rst_n) begin     if(!rst_n) keyr = 4'hz;     else if(keyrden || (sfroe (sfraddr == 7'h79))) keyr = {key4,key3,key2,key1};    //8051从地址为0xf9的SFR读出数据     else keyr = 4'hz; end   assign sfrdatai = keyr;          软件编程也很简单: //自定义SFR sfr LED = 0xf8;   //低4bit控制LED亮暗 sfr KEY = 0xf9;   //低4bit对应当前按键值   void main(void) {     while(1)     {         LED = KEY;     } }   测试2:SFR性能测试          与《国产FPGA试用手记二(51硬核性能测试)》做了类似的测试,验证LED寄存器拉高拉低的速度,和之前的结果一样。也就是说,核外的SFR在不使用等待功能的情况下与核内SFR的操作速度是一样的。   测试3:SFR等待功能验证          在50MHz的clkcpu下,没有等待时(即assign sfrack = 1'b1;),不断的对核外SFR写使能情况可以得到如图2所示的使能信号波形。两次上升沿之间240ns即一个指令周期(12个50MHz时钟周期),而读使能信号有效高脉冲为160ns,即8个时钟周期。 图2          Datasheet中标明的sfrack信号其实无法直接从例化的51硬核中找到接口,于是特权同学干脆直接生成的IP核例化文件中把它手动引出来了,在自定义逻辑中对这个信号做了一些测试,也发现了该信号的使用方法。            代码如下: reg sfcnt;     //延时等待计数器,以50MHz为时钟单位计数 wire sfrack;        //SFR 读写等待信号   always @(posedge clk_50m or negedge rst_n) begin     if(!rst_n) sfcnt = 8'd0;     else if(sfrwe) sfcnt = sfcnt+1'b1;     else sfcnt = 8'd0; end   assign sfrack = (sfcnt == 0) | (sfcnt 8'd23); //等待n个指令周期,则sftcnt要大于(n*12-1)            该代码实现在sfrwe即SFR寄存器写选通信号到来后,用计数器sfcnt进行计数,然后相应的对需要延时等待的8051指令周期数通过控制sfrack为低电平实现。            分别设置了sfcnt8’d16、sfcnt8’d24、sfcnt8’d23得到sfrwe的波形如图3、图4、图5所示。 图3 图4 图5            由此可见,这里延时等待的时间必须刚好是指令周期。即系统指令周期为20ns*12=240ns,那么我们外部计数周期也是20ns的情况下,一般取等待时钟数为12的倍数即可。否则就会出现图3和图4的“毛刺”,其中原因特权同学不好妄下定论,恐怕和器件本身的内部处理机制有关。   本系列博文: 试用手记:为国产FPGA正名(一) 试用手记:为国产FPGA正名(二,51硬核性能测试) 试用手记:为国产FPGA正名(三,存储器) 试用手记:为国产FPGA正名(四,时序工具) 试用手记:为国产FPGA正名(五,外扩SFR使用) 为国产FPGA正名(六,完结篇)
相关资源
  • 所需E币: 4
    时间: 2019-12-25 21:14
    大小: 13KB
    上传者: 238112554_qq
    将C向MCU(俗称单片机)8051上的移植始于80年代的中后期。客观上讲,C向8051MCU移植的难点不少。……
  • 所需E币: 5
    时间: 2019-12-25 00:16
    大小: 106.5KB
    上传者: givh79_163.com
    列举了80C51特殊功能寄存器地址80C51特殊功能寄存器地址表|SFR|MSB位地址/位定义LSB|字节地址|B|F7|F6|F5|F4|F3|F2|F1|F0|F0H|||||||||||||ACC|E7|E6|E5|E4|E3|E2|E1|E0|E0H|||||||||||||PSW|D7|D6|D5|D4|D3|D2|D1|D0|D0H|||CY|AC|F0|RS1|RS0|OV|F1|P|||IP|BF|BE|BD|BC|BB|BA|B9|B8|B8H|||—|—|—|PS|PT1|PX1|PT0|PX0|||P3|B7|B6|B5|B4|B3|B2|B1|B0|B0H|||P3.7|P3.6|P3.5|P3.4|P3.3|P3.2|P3.1|P3.0|||IE|AF|AE|AD|AC|AB|AA|A9|A8|A8H|||EA|—|—|ES|ET1|EX1|ET0|EX0|||P2|A7|A6|A5|A4|A3|A2|A1|A0|A0H|||P2.7|P2.6|P2.5|P2.4|P2.3|P2.2|P2.1|P2.0|||SBUF|||||||||(99H)||SCON|9F|9E|9D|9C|9B|9A|99|98|98H|||SM0|SM1|SM2|REN|TB8|RB8|TI|RI|……
  • 所需E币: 5
    时间: 2019-12-24 17:56
    大小: 87.05KB
    上传者: 微风DS
    摘要:本文描述硬件和固件设置位I/ORAM中的ECK_DIS和/或设置位特殊功能的安全注册的Teridian的单站点和多相电度表(SFR)区域时必须采取的防范措施ICs。此外,这篇文章讨论了擦除方法和编程时ECK_DIS位的flash和/或安全的位被设置。71M65XXEnergyMeterICsAMaximIntegratedProductsBrandAPPLICATIONNOTEAN_65XX_005NOVEMBER201071M65XXPrecautionsforSettingECK_DISandSECUREBitsThisdocumentdescribeshardwareandfirmwareprecautionsthathavetobetakenwhensettingtheECK_DISbitinI/ORAMand/orwhensettingtheSECUREbitintheSFRareaofthe71M651Xand71M652XEnergyMeterchipfamily.Inaddition,methodsaredescribedforerasingandreprogr……