社区导航

 
楼主: EEWORLD社区

你问我答,【夏宇闻老师专栏】与你一起探讨FPGA设计!

  [复制链接]

17

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-13 12:22:38 | 显示全部楼层

回复 楼主 EEWORLD社区 的帖子

有一个串并转换的程序,仿真延时很大,影响其他模块的显示效果,不知道应该怎样去掉延时,能不能帮忙看一下? library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity chuanbing is port(data:in std_logic;--输入的m序列 rst1:in std_logic;--yibu qingling clk:in std_logic; qout:out std_logic_vector(3 downto 0));--输出的分组序列 end chuanbing; architecture bhv of chuanbing is signal dout:std_logic_vector(3 downto 0); begin process(rst1,clk) is variable count:integer:=0; begin if rst1='1' then qout<="0000"; count:=0; elsif clk'event and clk='1' then case count is when 3=>dout(0)<=data; qout<=dout; count:=0; when others => dout(0)<=data; count:=count+1; for i in 3 downto 1 loop dout(i)<=dout(i-1); end loop; end case; end if; end process; end bhv;

回复 支持 反对

使用道具 举报

753

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

荣誉会员勋章

发表于 2011-5-15 00:11:29 | 显示全部楼层
原帖由 dongfengxiao 于 2011-5-12 22:19 发表 夏老师您好,fpga设计中提到的布局布线约束是指什么呢,是时序约束么


布局布线约束: 不仅仅是时序约束,还包括位置约束,比如您想把哪几个模块放在一起、或者放在芯片的某个位置,都可以约束。
学习的乐趣在于分享。

回复 支持 反对

使用道具 举报

191

TA的帖子

3

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2011-5-15 08:52:54 | 显示全部楼层

??

如何进行!!

回复 支持 反对

使用道具 举报

2万

TA的帖子

61

TA的资源

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

发表于 2011-5-15 10:20:51 | 显示全部楼层

回复 383楼 xclfang 的帖子

跟帖即可
Mouser新用户大礼包:购物晒单5折返E金币!速来!

2017,加油!继续为中国电子行业做出小小的贡献吧!
QQ 1206973913

回复 支持 反对

使用道具 举报

2

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-16 15:30:55 | 显示全部楼层

夏老师 帮忙 关于FPGA lcd显示的问题


回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-17 10:46:21 | 显示全部楼层

回复 382楼 tx_xy 的帖子

若广义地理解约束,则除了模块位置外,还应该有综合后的逻辑面积和功率消耗等约束。但是对于初学者而言,通常一般情况下考虑的约束只是指时序约束。

回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-17 10:58:01 | 显示全部楼层

原帖由 十一月下雨 于 2011-5-13 12:22 发表 有一个串并转换的程序,仿真延时很大,影响其他模块的显示效果,不知道应该怎样去掉延时,能不能帮忙看一下? library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity chuanbing is p ...

做布局布线后的仿真有时需要比较长的时间。所以应该尽量通过行为模型逐块调试可综合模块。综合后的模块调试通过后,仍旧可以用它的行为模型配合其他行为模块,继续调试尚未完工的可综合后模块。这样可以加块可综合模块组的总调试时间。


回复 支持 反对

使用道具 举报

17

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-17 14:50:42 | 显示全部楼层

回复 387楼 夏宇闻 的帖子

哦,之前没有试过这个办法,谢谢夏老师!

回复 支持 反对

使用道具 举报

11

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-17 22:12:37 | 显示全部楼层

关于时序逻辑电路

夏老师你好,我刚初学FPGA。现在需要设计一个两层的时序发生电路,不知道这应该怎么做呢。我很茫然,也不知道怎么找相关材料~~~~

回复 支持 反对

使用道具 举报

2

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-18 09:38:10 | 显示全部楼层
夏老师你好。我想问一问FPGA的引脚的驱动能力问题?每个引脚最大可以驱动多少MA的电流呢?长时间工作会不会损坏引脚?有时贪图方便,经常直接一脚接LED的正极,一脚接LED的负极,这样是不是不好?

回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-18 17:23:27 | 显示全部楼层

原帖由 zhangzhuo 于 2011-5-16 15:30 发表 关于FPGA lcd显示的问题 http://bbs.eeworld.com.cn/viewthread.php?tid=291371&extra=page%3D1&frombbs=1

 

使用不同类型的LCD显示器其显示译码逻辑和驱动电路是很不相同的,很难用简单的解释说清楚。总之设计者应根据显示需求的不同,并且考虑电路成本,选择不同的LCD显示器。确定LCD显示器件后,应先仔细读懂说明书,正确连接,才能编写逻辑,把系统输出的信息数据或者图象数据,按照设计要求,在LCD器件上正确地显示。


回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-18 18:25:19 | 显示全部楼层

原帖由 jessica4869 于 2011-5-17 22:12 发表 夏老师你好,我刚初学FPGA。现在需要设计一个两层的时序发生电路,不知道这应该怎么做呢。我很茫然,也不知道怎么找相关材料~~~~

 

什么叫做两层的时序发生器?我不知道。

在时序电路设计前,您必须先搞清楚输入信号是什么,状态机应设立几个状态,状态如何分配,对状态机产生的输出控制信号的波形有什么要求(即时序电路的输出波形)。关于时序电路,任何一本数字电路设计的书中都有概念性的介绍。 具体的设计方法必须经过大量的设计实践后才能彻底搞明白。


回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-18 18:37:01 | 显示全部楼层

原帖由 windyboy47 于 2011-5-18 09:38 发表 夏老师你好。我想问一问FPGA的引脚的驱动能力问题?每个引脚最大可以驱动多少MA的电流呢?长时间工作会不会损坏引脚?有时贪图方便,经常直接一脚接LED的正极,一脚接LED的负极,这样是不是不好?

一般情况下FPGA的输出只能提供CMOS电平,不是电流,所以当用FPGA的输出驱动电流比较大的器件时,必须使用FPGA的引脚中的集电极开路的输出引脚,并连接FPGA外部的正电源和串联电阻,形成被驱动器件的供电回路。


回复 支持 反对

使用道具 举报

3

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-18 22:36:12 | 显示全部楼层

回复 380楼 夏宇闻 的帖子

谢谢夏老师

回复 支持 反对

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-20 20:48:19 | 显示全部楼层

问问题

我认为有时候一些模块没有用到,比如在解码时,某时刻10个模块中用了2个,其余的模块都在等控制信号,没有在计算。是不是可以把另外的时钟信号停掉,需要用时在打开时钟信号,这样能不能起到节电的效果?效果明显吗?这样有什么不好的地方?

回复 支持 反对

使用道具 举报

41

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-22 00:05:20 | 显示全部楼层

您好,夏老师、

 

 

 

我用ISE调用FIR IP核设计了一个模块,并编译了仿真库,同时使用modelsim仿真该模块,将仿真库已经编译映射到modelsim中,modelsim启动时的参数文件modelsim.ini也已修改,但是在跑仿真时fir IP那块总是报错,提示为实例化IP中的大量模块时失败,设计单元没有被找到。不清楚是什么原因,是不是我的XILINX的仿真库里缺少FIR的IP核的元件导致了此问题呢?

[ 本帖最后由 stevenkean 于 2011-5-22 11:15 编辑 ]

回复 支持 反对

使用道具 举报

2万

TA的帖子

61

TA的资源

管理员

Rank: 13Rank: 13Rank: 13Rank: 13

发表于 2011-5-22 10:51:12 | 显示全部楼层
夏老师,有个网友单独发帖提问的,请帮忙看看:

MAX 7000 器件问题
http://bbs.eeworld.com.cn/thread-291758-1-1.html
Mouser新用户大礼包:购物晒单5折返E金币!速来!

2017,加油!继续为中国电子行业做出小小的贡献吧!
QQ 1206973913

回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-24 17:49:48 | 显示全部楼层

原帖由 chat1 于 2011-5-20 20:48 发表 我认为有时候一些模块没有用到,比如在解码时,某时刻10个模块中用了2个,其余的模块都在等控制信号,没有在计算。是不是可以把另外的时钟信号停掉,需要用时在打开时钟信号,这样能不能起到节电的效果?效果明显吗? ...

 

您的想法就是第一代ASIC低功耗设计的多种方法之一,叫做门控时钟(clock gating),即把暂时不需要的时钟暂停,待需要时再开启,可以显著节省用电,但必须注意时钟恢复和时钟一致性问题所造成的bug,所以使用该设计方法时必须十分小心。在用FPGA设计时,应尽量使用设计工具支持的降低功耗的优化手段,自己设想的方法不一定能得到自动综合工具的支持。


回复 支持 反对

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2011-5-24 18:08:25 | 显示全部楼层

原帖由 stevenkean 于 2011-5-22 00:05 发表 您好,夏老师、       我用ISE调用FIR IP核设计了一个模块,并编译了仿真库,同时使用modelsim仿真该模块,将仿真库已经编译映射到modelsim中,modelsim启动时的参数文件modelsim.ini也已修改, ...

 

您必须在ISE上查看一下所用的参数化模块(core)是需要购买的还是可以免费使用,另外modelsim.ini文件中必须包括已选定FPGA芯片的基本元件和宏单元仿真模型的搜寻路径。关于仿真库的路径您可以从ISE的安装目录中寻找,但最好还是在ISE中选定FPGA型号后,从ISE启动ModelSim后,自动生成的ModelSim.ini文件中拷贝,并逐一核对库的具体位置中是否有相关模型。若根据自动生成ModelSim.ini文件中的路径,ModelSim不能搜寻到某个IP的仿真模型,原因之一很可能ISE综合工具并不支持该IP,您也许需要花钱购买。


回复 支持 反对

使用道具 举报

12

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2011-5-25 14:10:56 | 显示全部楼层
谢谢夏老师

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-7-22 02:54 , Processed in 0.562598 second(s), 13 queries , Redis On.

快速回复 返回顶部 返回列表