shiyinjita的个人空间 https://blog.eetop.cn/239461 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

MAX5开发板-笔记

已有 3097 次阅读| 2012-1-16 11:55 |个人分类:quartus

0

在调试触摸电容的时候,发现。

1 : 采用明信片,发现灯不亮

2 : 采用刀片 ,不管横放,还是竖放,当到一定距离后,灯光都会亮

3 : 采用普通的中性笔。放入传感区的时候,先亮后灭。

4 : 手指靠近触摸电容1厘米的距离,就能够感应到。

后来经过查找,找到了触摸电容的原理,原理如下:

Capaclitor sense区时由两个铜片构成的,这两个铜片之间有个固定的电容c,当手指或者其他导体进入这个区域时,会产生了另外的一个电容c,这样把一面连接到FPGA中,就可以检测到引脚的变化。 

此时把电容当做复位按钮,

程序如下

module max5 (

         input clk ,

         output wire led,

         output wire led2  ,

         input user_pb0 ,

         input  user_pb1 ,

         input  cb

                   ) ;

         wire clk1 ;

         altufm_clk altufm_clk_inst ( .oscena(1'b1),.osc(clk1)) ;

     reg [23:0]counter = 24'b1111_0000_0000_0000_0000_0000 ;

     always @(posedge clk1 or negedge cb)

         begin

              if (!cb)

                   counter <= 24'b1111_1111_1111_1111_1111_1111 ;

              else

                   counter <= counter + 1'b1 ;

         end

         assign led = counter[23] ;

         assign led2 = user_pb1 ;

     endmodule

 

其中altufm_clk为altufm_none产生的晶振信号。

在我第一篇ufm笔记中的表格有个错误,其中maxII也有内部晶振。

 

Qsf文件为

set_location_assignment PIN_H5 -to clk

set_location_assignment PIN_R1 -to led

set_location_assignment PIN_P4 -to led2

set_location_assignment PIN_R3 -to user_pb0

set_location_assignment PIN_M9 -to user_pb1

set_location_assignment PIN_C11 -to cb 

有点失落的是以前我一直在用classic约束,如今在11.0上只能用timequest约束,所以熟悉了一下timquest约束。

 

程序下载进MAX5开发板中正常工作。

此时分析资源,以MAX II的EPM570F256C5 和MAX5的5M570ZF256C5 相对比,因为没有MAXII的开发板,不能验证MAX2下是否正常,只能在MAX2下进行功能和时序仿真,在MAX5下进行板级验证。

在MAX2下资源分析

Revision Name : max5

Top-level Entity Name : max5

Family : MAX II

Device : EPM570F256C5

Timing Models : Final

Total logic elements : 48 / 570 ( 8 % )

Total pins : 6 / 160 ( 4 % )

Total virtual pins : 0

UFM blocks : 1 / 1 ( 100 % )

 

MAX5下资源分析

Revision Name : max5

Top-level Entity Name : max5

Family : MAX V

Device : 5M570ZF256C5

Timing Models : Final

Total logic elements : 48 / 570 ( 8 % )

Total pins : 6 / 159 ( 4 % )

Total virtual pins : 0

UFM blocks : 1 / 1 ( 100 % )

由参数可以知道,在相同的程序下,因为MAX2和MAX5的架构是一样的,所以使用的资源是一样的,这完全可以理解和预料。

 

重头戏来了,手册上说MAX5的功耗很低,因此做了功耗分析,果然不是一般的低,在相同程序下

MAX2

Total Thermal Power Dissipation : 104.87 mW

Core Dynamic Thermal Power Dissipation : 0.00 mW

Core Static Thermal Power Dissipation : 98.27 mW

I/O Thermal Power Dissipation : 6.60 mW

而在MAX5 下面

Total Thermal Power Dissipation : 0.07 mW

Core Dynamic Thermal Power Dissipation : 0.00 mW

Core Static Thermal Power Dissipation : 0.04 mW

I/O Thermal Power Dissipation : 0.03 mW

不知道是不是我的操作不对,还是怎么的,得出来的结果竟然差别这么大,不由得怀疑我做错了还是怎么的,希望大家可以和我共同考虑一下,

我的操作步骤是,processing-> powerplay power analyzer tool 然后直接点击 start,得出这个结果来,

 3 : 时序分析

在MAX2下

Clockname:altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc

Frequency :  5.5 MHZ 

MAX5 下

Clockname:altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc

Frequency :  5.5 MHZ

这一点很容易懂,MAX2和MAX5都采用了5.5M

但是时序报告里面由一个很难理解就是

在MAX2下

Fmax Summary  :

FNAX = 112.32MHZ

CLOCK name = altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc

 

在MAX5下

FNAX = 43.31MHZ

CLOCK name = altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc

 

这两个相差很大,

而观察setup和hold时,max2 和MAX5 相差不大,

针对 MAX2

Type  : Setup 'altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc'

Slack : 171.712

TNS   : 0.000

Type  : Hold 'altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc'

Slack : 2.126

TNS   : 0.000

Type  : Minimum Pulse Width 'altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc'

Slack : 90.643

TNS   : 0.000

 

针对MAX5  :

Type  : Setup 'altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc'

Slack : 162.691

TNS   : 0.000

 

Type  : Hold 'altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc'

Slack : 3.376

TNS   : 0.000

 

Type  : Minimum Pulse Width 'altufm_clk_inst|altufm_clk_altufm_none_91r_component|maxii_ufm_block1|osc'

Slack : 90.570

TNS   : 0.000

 这两个结果差不多,因为MAX2和MAX5的建立和保持时间是有区别的。这一点也可以预料到。同时观察LE的配置模式都是normal模式,但是在Fmax Summary  下却完全差别很大,这一点一直思索不通 ,希望大家也可以尝试讨论一下。

 

归纳起来,目前有2点疑问,就是 

1 : 关于功耗,同样的程序下,为什么MAX5下如此之低 ?

2 : 同样的程序,同样的LE工作模式,同样的chipplanner布局布线,为什么MAX2的FMAX比 MAX5高一倍呢?

希望大家可以好好的讨论一下

以上就是MAX5的全部试验,从接收MAX5到现在已经一个月的时间了,在这一个月中,前一段时间是看一些CPLD的资 料,以前从没有看过LE内部的结构,趁着这个机会好好的看了一些LE的结构,以及写了一个简单的实例。这一个月中收获颇大,在这里谢谢电子创新网搞的这个 活动了,希望以后还有这样的活动。


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 2

    好友
  • 1

    获赞
  • 29

    评论
  • 2809

    访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-24 23:46 , Processed in 0.027237 second(s), 14 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部